KR100909025B1 - 복수의 프로세서에 의한 메모리 공유 방법 및 메모리 공유구조를 가지는 휴대형 단말기 - Google Patents

복수의 프로세서에 의한 메모리 공유 방법 및 메모리 공유구조를 가지는 휴대형 단말기 Download PDF

Info

Publication number
KR100909025B1
KR100909025B1 KR1020070016459A KR20070016459A KR100909025B1 KR 100909025 B1 KR100909025 B1 KR 100909025B1 KR 1020070016459 A KR1020070016459 A KR 1020070016459A KR 20070016459 A KR20070016459 A KR 20070016459A KR 100909025 B1 KR100909025 B1 KR 100909025B1
Authority
KR
South Korea
Prior art keywords
memory
raw data
additional
processor
stored
Prior art date
Application number
KR1020070016459A
Other languages
English (en)
Other versions
KR20080076484A (ko
Inventor
박승규
Original Assignee
엠텍비젼 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엠텍비젼 주식회사 filed Critical 엠텍비젼 주식회사
Priority to KR1020070016459A priority Critical patent/KR100909025B1/ko
Publication of KR20080076484A publication Critical patent/KR20080076484A/ko
Application granted granted Critical
Publication of KR100909025B1 publication Critical patent/KR100909025B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/167Interprocessor communication using a common memory, e.g. mailbox
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Image Processing (AREA)

Abstract

복수의 프로세서에 의한 메모리 공유 방법 및 메모리 공유 구조를 가지는 휴대형 단말기가 개시된다. 본 발명의 바람직한 일 실시예에 따르면, 미리 설정된 일정한 기준으로 분할된 원시 데이터가 각각 저장되는 메모리부와 메인 프로세서와 부가 프로세서를 포함하는 제어부와 분할된 원시 데이터가 프로세서들에서 의해 각각 처리될 수 있도록 메모리부와 프로세서들이 서로 연결되도록 하는 스케쥴러를 포함하는 것을 특징으로 하는 휴대형 단말기가 제공된다
본 발명에 따르면, 메모리 및 복수의 제어부 간의 정보 전달 과정에서 높은 동작 주파수를 사용하거나 버스의 대역폭을 확장하지 않고도 처리 능력(processing power)의 약화나 병목 현상을 제거할 수 있는 장점이 있다.
메모리, 프로세서, 제어부, 공유, 버스, 스케쥴러

Description

복수의 프로세서에 의한 메모리 공유 방법 및 메모리 공유 구조를 가지는 휴대형 단말기{Method for sharing memory by a plurality of processors and portable terminal having structure of memory share}
도 1은 종래의 카메라 기능을 구비한 이동 통신 단말기의 블록 구성도.
도 2는 종래의 복수의 프로세서와 메모리간의 결합 구조를 예시한 도면.
도 3는 본 발명의 바람직한 일 실시예에 따른 복수의 프로세서와 메모리간의 결합 구조를 예시한 도면.
도 4는 본 발명의 바람직한 일 실시예에 따른 복수의 프로세서와 메모리간의 결합 구조에 의한 데이터의 처리 과정을 순차적으로 예시한 도면.
본 발명은 본 발명은 휴대형 단말기에 관한 것으로, 특히 복수의 프로세서가 구비된 휴대형 단말기에 관한 것이다.
휴대형 단말기는 게임, 이동 통신 등의 기능을 수행하기 위하여 작은 크기로 형성되어 사용자의 휴대를 용이하게 한 전자 장치를 의미한다.
휴대형 단말기에는 이동 통신 단말기, 개인 휴대 단말기(PDA : Personal Digital Assistant), 휴대형 멀티미디어 단말기(PMP : Portable Multimedia Player) 등이 있을 수 있다.
이중 이동 통신 단말기는 본질적으로 이동 중인 사용자가 원격지의 수신자와 전화 통화를 가능하도록 구현된 장치이다.
그러나, 과학 기술의 발전으로 인해, 최근의 이동 통신 단말기는 전화 통화 기능, 단문 메시지 송수신 기능, 주소록 관리 기능 등의 본질적 기능 외에 카메라 기능, 멀티미디어 데이터 재생 기능 등의 부가적 기능을 더 구비하고 있다.
도 1은 종래의 카메라 기능을 구비한 이동 통신 단말기의 블록 구성도이다.
도 1을 참조하면, 카메라 기능을 구비한 이동 통신 단말기(100)는 고주파 처리부(110), A/D 변환부(115), D/A 변환부(120), 제어부(125), 전원부(130), 키 입력부(135), 메모리부(140), 표시부(145), 카메라(150) 및 영상 처리부(155)를 포함하여 구성된다.
고주파 처리부(110)는 안테나를 통해 수신되거나 안테나를 통해 송신되는 고주파 신호를 처리한다.
A/D 변환부(115)는 고주파 처리부(110)로부터 출력되는 아날로그 신호를 디지털 신호로 변환하여 제어부(125)로 전송한다.
D/A 변환부(120)는 제어부(125)로부터 출력되는 디지털 신호를 아날로그 신호로 변환하여 고주파 처리부(110)로 전송한다.
제어부(125)는 이동 통신 단말기(100)의 전반적인 동작을 제어한다. 제어부(125)는 CPU(Central Processing Unit) 또는 마이크로 컨트롤러(Micro-Controller)를 포함할 수 있다.
전원부(130)는 이동 통신 단말기(100)가 동작하는데 필요한 전원을 공급하는 수단으로, 전원부(130)는 외부 전원 소스(source)와 결합되거나 배터리(battery) 등과 결합될 수 있다.
키 입력부(135)는 이동 통신 단말기(100)의 각종 기능 설정, 다이얼링 등을 수행하기 위한 키 데이터를 생성하여 제어부(125)로 전달한다.
메모리부(140)는 이동 통신 단말기(100)의 운용 프로그램, 각종 데이터 등을 저장한다. 메모리부(140)는 플래시 메모리(Flash Memory) 또는 EEPROM(Electrically Erasable Programmable Read Only Memory) 등으로 구성될 수 있다.
표시부(145)는 이동 통신 단말기(100)의 동작 상태, 카메라(150)를 통해 쵤영된 외부 영상 등을 표시한다.
카메라(150)는 외부 영상(피사체)를 촬영하고, 영상 처리부(155)는 카메라(150)에 의해 촬영된 외부 영상을 처리한다.
영상 처리부(155)는 색 보간, 감마 보정, 화질 보정, JPEG 부호화 등의 기능을 수행한다.
상술한 바와 같이, 카메라 기능을 구비한 이동 통신 단말기(100)는 복수의 프로세서(즉, 메인 제어부와 부가 기능 수행을 위한 하나 이상의 부가 제어부)를 구비한다. 즉, 이동 통신 단말기(100)의 전체적인 기능을 제어하기 위한 제어부(125)와 카메라 기능을 제어하기 위한 영상 처리부(155)가 포함된다.
부가 제어부의 형태는 휴대형 단말기에 어떤 부가 기능이 구비되는지에 따라 상이할 수 있다. 예를 들어, 카메라 기능 수행을 위한 부가 제어부는 JPEG 부호화(encoding), JPEG 복호화(decoding) 등의 기능을 수행할 수 있고, 동영상 재생 기능을 수행하기 위한 부가 제어부는 비디오 파일(예를 들어, MPEG4, DIVX, H.264)의 부호화, 복호화 등을 수행할 수 있고, 음악 파일 재생 기능을 수행하기 위한 부가 제어부는 음악 파일의 부호화, 복호화 등을 수행할 수 있다. 물론, 상술한 다양한 기능을 통합적으로 수행할 수 있는 부가 제어부도 존재할 수 있다.
그러나, 종래의 메인 제어부와 부가 제어부는 메모리와의 관계에서 직렬적 구조로 형성되어 있어 메시지 전달 과정에서 처리 능력(processing power)의 약화나 병목 현상이 생길 수 있는 문제점이 있다.
특히 예를 들어, 영상 데이터의 처리의 경우 고화질의 디지털 영상 매체들이 발전하면서 고화질을 포함하는 다양한 영상 크기를 처리하는 멀티미디어 프로세서가 요구되고 있다.
그러나, 이러한 데이터량이 커질수록 같은 시간에 처리해야 할 데이터량은 많아져 SoC 내부 버스의 대역폭이 증가하게 되는 문제점이 있다.
이러한 문제점을 해결하기 위해 높은 동작 주파수를 사용하거나, 버스의 대역폭을 확장하는 방법을 사용하고 있으나, 높은 동작 주파수를 사용하는 경우 SoC 구현을 위한 공정 및 설계상에서 많은 제약이 있는 문제점이 있다.
또한, 버스의 대역폭을 증가하는 경우 한 번에 많은 데이터를 내보내더라도 메모리의 대역폭이 확장된 대역폭의 크기를 지원하지 않는 경우 앞서 살펴본 바와 같이 처리 능력(processing power)의 약화나 병목 현상이 생길 수 있는 문제점이 있다.
따라서, 상술한 문제점들을 해결하기 위한 본 발명의 목적은 메모리 및 복수의 제어부간의 정보 전달 과정에서 처리 능력(processing power)의 약화나 병목 현상을 제거할 수 있는 복수의 프로세서에 의한 메모리 공유 방법 및 메모리 공유 구조를 가지는 휴대형 단말기를 제공하는 것이다.
본 발명의 또 다른 목적은 높은 동작 주파수를 사용하거나 버스의 대역폭을 확장하지 않고도 처리 능력(processing power)의 약화나 병목 현상을 제거할 수 있는 복수의 프로세서에 의한 메모리 공유 방법 및 메모리 공유 구조를 가지는 휴대형 단말기를 제공하는 것이다.
본 발명의 또 다른 목적들은 이하의 실시예에 대한 설명을 통해 쉽게 이해될 수 있을 것이다.
상기한 바와 같은 목적을 달성하기 위해, 본 발명의 일 측면에 따르면 휴대형 단말기가 제공된다.
본 발명의 바람직한 일 실시예에 따르면, 휴대형 단말기에 있어서, 미리 설정된 일정한 기준으로 분할된 원시 데이터가 각각 저장되는 메모리부; 메인 프로세서와 부가 프로세서를 포함하는 제어부; 상기 분할된 원시 데이터가 상기 프로세서들에서 의해 각각 처리될 수 있도록 상기 메모리부와 상기 프로세서들이 서로 연결되도록 하는 스케쥴러(scheduler)를 포함하는 것을 특징으로 하는 휴대형 단말기가 제공된다.
상기 메인 프로세서는 상기 부가 프로세서에서 각각 처리된 원시 데이터를 하나의 데이터로 상기 메모리부에 저장할 수 있다.
그리고, 상기 메모리부는 상기 분할된 원시 데이터가 저장되는 부가 메모리와 상기 처리된 원시 데이터가 저장되는 메인 메모리를 포함할 수 있으며, 상기 분할된 원시 데이터는 상기 부가 메모리의 일정한 저장 영역에 각각 저장될 수 있다.
또한, 상기 부가 메모리는 복수개이고, 상기 분할된 원시 데이터는 상기 복수개의 부가 메모리에 각각 저장될 수 있다.
또한, 상기 부가 메모리는 SRAM(Static Random Access Memory)이고, 상기 메인 메모리는 SDRAM(Synchronous Dynamic Random Access Memory)일 수 있다.
상기 메인 프로세서는 상기 스케쥴러에 상기 메모리부와 상기 프로세서들이 연결되도록 하는 제어 신호를 전송하고, 상기 스케쥴러는 상기 수신된 제어 신호에 따라 상기 메모리부와 상기 프로세서들이 서로 각각 연결되도록 할 수 있다.
상기 원시 데이터는 영상 데이터이고, 상기 미리 설정된 일정한 기준으로 분할된 데이터는 프레임 데이터일 수 있다.
상기 메모리부와 상기 프로세서들이 서로 각각 연결되는 버스들의 집합인 매트릭스를 더 포함할 수 있다.
본 발명의 다른 측면에 의하면, 복수의 프로세서에 의한 메모리 공유 방법이 제공된다.
본 발명의 바람직한 일 실시예에 따르면, 복수의 프로세서에 의한 메모리 공유 방법에 있어서, 메인 프로세서가 상기 메모리부에 저장된 원시 데이터의 처리 명령을 부가 프로세서로 전달하는 단계-상기 원시 데이터는 미리 설정된 일정한 기준으로 분할되어 각각 메모리부에 저장되고, 상기 처리 명령은 상기 원시 데이터의 처리 유형에 대한 지시 정보, 상기 원시 데이터의 저장 위치를 포함함-; 상기 부가 프로세서는 상기 메모리부에 접속하여 상기 저장 위치의 상기 원시 데이터를 독출하는 단계; 및 상기 독출된 원시 데이터를 상기 지시 정보에 상응하도록 처리하는 단계를 실행하되, 상기 메인 프로세서는 상기 부가 프로세서가 상기 분할된 원시 데이터를 모두 처리하고, 상기 처리된 원시 데이터를 상기 메모리부에 저장할 수 있도록 상기 부가 프로세서와 상기 메모리부의 연결을 제어하는 것을 특징으로 하는 복수의 프로세서에 의한 메모리 공유 방법이 제공된다.
상기 메모리부는 상기 분할된 원시 데이터가 저장되는 부가 메모리와 상기 처리된 원시 데이터가 저장되는 메인 메모리를 포함할 수 있다.
그리고, 상기 분할된 원시 데이터는 상기 부가 메모리의 일정한 저장 영역에 각각 저장될 수 있으며, 상기 부가 메모리는 복수개이고, 상기 분할된 원시 데이터 는 상기 복수개의 부가 메모리에 각각 저장될 수 있다.
상기 부가 메모리는 SRAM(Static Random Access Memory)이고, 상기 메인 메모리는 SDRAM(Synchronous Dynamic Random Access Memory)일 수 있다.
상기 원시 데이터는 영상 데이터이고, 상기 미리 설정된 일정한 기준으로 분할된 데이터는 프레임 데이터일 수 있다.
본 발명의 다른 측면에 의하면, 복수의 프로세서에 의한 메모리 공유 방법을 구현하기 위한 프로그램을 기록한 기록매체가 제공된다.
본 발명의 바람직한 일 실시예에 따르면, 복수의 프로세서에 의한 메모리 공유 방법을 수행하기 위해 휴대형 단말기에 의해 실행될 수 있는 명령어들의 프로그램이 유형적으로 구현되어 있으며, 상기 휴대형 단말기에 의해 판독될 수 있는 프로그램을 기록한 기록매체에 있어서, 메인 프로세서가 상기 메모리부에 저장된 원시 데이터의 처리 명령을 부가 프로세서로 전달하는 단계-상기 원시 데이터는 미리 설정된 일정한 기준으로 분할되어 각각 메모리부에 저장되고, 상기 처리 명령은 상기 원시 데이터의 처리 유형에 대한 지시 정보, 상기 원시 데이터의 저장 위치를 포함함-; 상기 부가 프로세서는 상기 메모리부에 접속하여 상기 저장 위치의 상기 원시 데이터를 독출하는 단계; 및 상기 독출된 원시 데이터를 상기 지시 정보에 상응하도록 처리하는 단계를 실행하되, 상기 메인 프로세서는 상기 부가 프로세서가 상기 분할된 원시 데이터를 모두 처리하고, 상기 처리된 원시 데이터를 상기 메모리부에 저장할 수 있도록 상기 부가 프로세서와 상기 메모리부의 연결을 제어하는 것을 특징으로 하는 복수의 프로세서에 의한 메모리 공유 방법을 구현하기 위한 프로그램을 기록한 기록매체가 제공된다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
제1, 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.
일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 대응하는 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
먼저 도 2는 종래의 복수의 프로세서와 메모리 간의 결합 구조를 예시한 도면이다.
도 2를 참조하면, 종래의 복수의 프로세서와 메모리 간의 결합 구조는 메인 프로세서(200), 부가 프로세서 1(210), 부가 프로세서 2(220) 및 부가 프로세서 3(230)을 포함할 수 있으며, 하나의 메인 메모리(250)에 버스(bus) (240)를 통해 결합한다.
이러한 하나의 메인 메모리(250)에 복수의 프로세서가 결합하는 것은 하나의 버스를 통해 메인 프로세서(200)와 메인 메모리(200)만이 결합되고 메인 프로세서(200)와 부가 프로세서 각각을 버스(240)를 통해 연결하여 결합하는 방법이 가능하다.
또한, 하나의 메인 메모리(250)에 메인 프로세서(200)를 포함하는 복수의 프로세서가 모두 버스(240)를 통해 결합하고 메인 프로세서(200)의 제어를 통해 접근이 허용된 부가 프로세서만이 메인 메모리(250)에 접근할 수 있도록 할 수 있다.
이러한 각각의 복수의 프로세서 중 메인 프로세서(200)는 디지털 장치의 본래의 기능 예를 들면, 휴대 단말기의 경우 음성 통화의 기능을 제어하는 메인 제어 부에 해당하며, 부가 프로세서 1(210), 부가 프로세서 2(220) 및 부가 프로세서 3(230)은 휴대 단말기의 부가 기능들을 제어하는 부가 제어부에 해당한다.
이러한 메인 제어부와 부가 제어부를 포함하여 제어부를 구성하게 되며, 부가 프로세서들은 예를 들면, 디지털 처리 장치의 입력을 제어하는 센서 프로세서, 이미지 센서를 제어하는 이미지 센서 프로세서, 동영상 데이터의 압축 및 재생을 제어하는 MPEG 코덱 프로세서 등이 가능하나 이에 한정되는 것은 아니다.
종래의 이러한 하나의 메인 메모리(250)와 복수의 프로세서(200, 210, 220, 230)가 각각 결합하는 경우 메인 프로세서(200)의 제어를 통해 각각의 부가 프로세서(210, 220, 230)들이 메인 메모리(250)에 접근할 수 있게 된다.
그러나 앞서 살펴본 바와 같이, 처리해야 할 데이터량이 증가함에 따라 메인 메모리(250)의 대역폭을 증가시키거나 처리를 위한 동작 주파수를 증가시키지 않는 경우 데이터량의 증가에 의한 병목 현상이 발생하게 된다.
또한, 부가 기능을 제어하기 위한 부가 프로세서(210, 220, 230) 중 하나의 프로세서에서의 처리가 늦어짐에 따라 다른 부가 프로세서 뿐만 아니라 메인 프로세서(200)의 동작까지 느려지게 될 것은 자명하다.
그러나 도 3에 도시된 바와 같이 원시 데이터를 미리 설정된 일정한 기준으로 분할하여 메인 메모리(250) 외의 복수의 부가 메모리(310, 320 및 330)에 각각 저장하고, 각각의 프로세서(200, 210, 220, 및 230)가 메인 메모리(250)를 포함하는 각각의 부가 메모리(310, 320 및 330)와 서로 연결되어 분할된 원시 데이터를 각각 처리하는 경우 데이터량이 증가하더라도 각각의 프로세서(200, 210, 220, 및 230)가 독립적으로 데이터를 처리하게 되어 메인 프로세서(200)를 포함하는 각각의 프로세서의 동작이 느려지지 않게 된다.
이러한 각각의 프로세서의 동작이 느려지지 않게 하면서도 데이터를 처리할 수 있는 본 발명에 의한 복수의 프로세서와 복수의 메모리간의 결합 구조를 도 3을 참조하여 보다 상세하게 살펴보기로 한다.
도 3는 본 발명의 바람직한 일 실시예에 따른 복수의 프로세서와 메모리간의 결합 구조를 예시한 도면이다.
먼저 도 3에 도시된 바와 같이, 본 발명의 바람직한 일 실시예에 따른 복수의 프로세서와 메모리간의 결합에서는 본래의 메인 메모리(250)와 별도로 데이터를 미리 설정된 일정한 기준으로 분할하여 각각 저장하는 복수의 부가 메모리(310, 320 및 330)를 더 포함한다.
이러한 복수의 부가 메모리(310, 320 및 330)의 개수는 적어도 부가 프로세서(210, 220 및 230)의 개수만큼 포함할 수 있으나 이에 한정되는 것은 아니다.
또한, 부가 프로세서의 개수는 전술한 도 2에서와 같이 3개의 부가 프로세서(210, 220 및 230)만을 도시하였으나 부가 프로세서의 개수는 디지털 처리 장치의 부가 기능에 따라 적어도 하나 이상일 수 있음은 자명하다.
한편, 이러한 복수의 메모리 중 메인 메모리는 SDRAM(Synchronous Dynamic Random Access Memory)이고, 부가 메모리는 SRAM(Static Random Access Memory)일 수 있으나 이에 한정되는 것은 아니다.
메인 메모리(250)를 포함하는 복수의 메모리와 복수의 프로세서는 각각 서로 연결되며 이러한 프로세서와 메모리의 연결은 버스(bus)에 의해 이루어지며, 복수의 연결을 위한 그물망의 버스의 구조를 매트릭스(matrix) (300)라 칭하기로 한다.
복수의 메모리와 복수의 프로세서는 서로 매트릭스를 통해 각각 연결되어 있으나, 하나의 프로세서는 메인 메모리(250)를 포함하는 하나의 메모리에만 접근할 수 있도록 하기 위해 스케쥴러(scheduler)(340)에 의해 매트릭스(300)는 제어된다.
이러한 스케쥴러(340)의 매트릭스(300)의 제어는 메인 프로세서(200)로부터 제어 신호를 수신하여 수행될 수 있다.
한편, 미리 설정된 일정한 기준으로 데이터를 분할하여 각각의 복수의 부가 메모리(310, 320 및 330)에 저장하는 것은 예를 들면, 영상 데이터의 경우 영상 데이터를 구성하는 복수의 프레임(frame) 데이터별로 영상 데이터를 분할하여 각각의 프레임을 각각의 부가 메모리에 저장할 수 있다.
예를 들어, 영상 데이터가 프레임 1, 2, 3으로 구성된 경우 프레임 데이터 1은 부가 메모리 1(310)에, 프레임 데이터 2는 부가 메모리 2(320)에, 프레임 데이터 3은 부가 메모리 3(330)에 각각 저장하는 것이다.
이러한 영상 데이터는 각각의 프로세서에서 처리되기 전의 원시 데이터로서 각각의 프로세서에서의 처리가 완료되면 처리된 데이터는 메인 메모리(250)에 저장된다.
한편, 도 3에서는 원시 데이터가 분할되어 각각 저장되는 부가 메모리를 별도의 메모리(310, 320 및 330)로 도시하였으나, 하나의 메모리에 각각 저장 영역을 달리하여 분할된 원시 데이터가 각각 저장되도록 하는 것도 가능함은 자명하다.
또한, 메인 메모리(250)와 부가 메모리를 하나의 메모리를 구성하여 메인 메모리(250)와 부가 메모리에 각각 저장되는 데이터를 저장 영역을 구분하여 저장되도록 하는 것도 가능하다.
예를 들어, 메모리부에 하나의 메모리만을 포함하는 경우 처리된 원시 데이터가 저장되는 메인 저장 영역과 분할된 원시 데이터가 각각 저장되는 부가 저장 영역을 포함하여 메모리부를 구성할 수 있다.
또한, 메모리부에 복수의 메모리를 포함하는 경우, 처리된 원시 데이터가 저장되는 메인 메모리를 별개의 하나의 메모리로 구성하고, 분할된 원시 데이터가 각각 저장되는 부가 메모리를 하나의 메모리로 구성하되, 부가 메모리의 저장 영역을 구분하여 각각의 프로세서가 연결될 수 있도록 하는 것도 가능하다.
이러한 복수의 프로세서와 메모리간의 결합 구조를 참조하여 도 4에 예시된 복수의 프로세서와 메모리간의 결합 구조에 의한 데이터의 처리 과정을 살펴보기로 한다.
도 4는 본 발명의 바람직한 일 실시예에 따른 복수의 프로세서와 메모리간의 결합 구조에 의한 데이터의 처리 과정을 순차적으로 예시한 도면이다.
도 4는 영상 데이터를 구성하는 복수의 프레임별로 영상 데이터를 분할하여 각각의 프레임 데이터를 각각의 부가 메모리(310, 320 및 330)에 저장한 경우를 예시한 도면이다.
먼저 도 4에 도시된 바와 같이, 영상 데이터가 프레임 데이터 1, 2, 3으로 구성된 경우 프레임 데이터 1은 부가 메모리 1(310)에, 프레임 데이터 2는 부가 메모리 2(320)에, 프레임 데이터 3은 부가 메모리 3(330)에 각각 저장된다.
그리고 각각의 부가 프로세서는 서로 독립적으로 동작할 수 있으므로 단계 400에서와 같이 부가 프로세서 1(210)은 부가 메모리 1(310)에 접근할 수 있게 하여 프레임 데이터 1을 처리하고, 부가 프로세서 2(220)는 부가 메모리 2(320)에 접근하여 프레임 데이터 2를, 부가 프로세서 3(230)은 부가 메모리 3(330)에 접근하여 프레임 데이터 3을 처리할 수 있도록 하는 것이다.
물론, 예를 들어 부가 프로세서 2(220)가 영상 데이터의 프레임 데이터의 처리와 무관한 부가 프로세서인 경우라면 부가 프로세서 2(220)는 부가 메모리 2(320)에 접근하지 않도록 할 수 있다.
이러한 각각의 프레임 데이터에 대한 각각의 부가 프로세서에서의 처리가 완료되면 이번에는 단계 402에서와 같이 부가 프로세서 1(210)에는 프레임 데이터 2가 저장된 부가 메모리 2(320)에 접근할 수 있게 하고, 부가 프로세서 2(220)는 프레임 데이터 3이 저장된 부가 메모리 3(330)에, 부가 프로세서 3(230)은 프레임 데이터 1이 저장된 부가 메모리 1(310)에 접근할 수 있도록 하여 각각 프레임 데이터를 처리하도록 한다.
그리고 다시 단계 404에서와 같이 부가 프로세서 1(210)에는 프레임 데이터 3이 저장된 부가 메모리 3(330)에 접근할 수 있게 하고, 부가 프로세서 2(220)는 프레임 데이터 1이 저장된 부가 메모리 1(310)에, 부가 프로세서 3(230)은 프레임 데이터 2가 저장된 부가 메모리 2(320)에 접근할 수 있도록 하여 매트릭스(300) 내 의 버스가 연결되도록 하여 각각 프레임 데이터를 처리하도록 한다.
이러한 과정을 순차적으로 반복하고 각각의 부가 프로세서들에서 처리된 프레임 데이터를 메인 프로세서(200)를 통해 결합하거나 또는 메인 프로세서에 의한 별도의 처리가 필요없는 경우 메인 메모리(250)에 저장하게 되면 최종적으로 영상 데이터에 대한 처리가 완료되게 된다.
이상에서는 일반적으로 프레임 데이터 별로 구성되는 영상 데이터를 기준으로 설명하였으나 다른 데이터 예를 들면 음성 데이터의 경우에도 미리 설정된 기준 예를 들어 재생 시간 단위로 분할하여 각각의 메모리에 저장되도록 할 수 있음은 자명하다.
상기한 본 발명의 바람직한 실시예는 예시의 목적을 위해 개시된 것이고, 본 발명에 대해 통상의 지식을 가진 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경, 부가가 가능할 것이며, 이러한 수정, 변경 및 부가는 하기의 특허청구범위에 속하는 것으로 보아야 할 것이다.
이상에서 설명한 바와 같이, 본 발명에 의한 복수의 프로세서에 의한 메모리 공유 방법 및 메모리 공유 구조를 가지는 휴대형 단말기에 의하면, 메모리 및 복수의 제어부간의 정보 전달 과정에서 처리 능력(processing power)의 약화나 병목 현상을 제거할 수 있는 장점이 있다.
또한, 높은 동작 주파수를 사용하거나 버스의 대역폭을 확장하지 않고도 처리 능력(processing power)의 약화나 병목 현상을 제거할 수 있는 장점이 있다.

Claims (18)

  1. 휴대형 단말기에 있어서,
    미리 설정된 일정한 기준으로 분할된 원시 데이터가 각각 저장되는 메모리부;
    메인 프로세서와 부가 프로세서를 포함하는 제어부;
    상기 분할된 원시 데이터가 상기 프로세서들에서 의해 각각 처리될 수 있도록 상기 메모리부와 상기 프로세서들이 서로 연결되도록 하는 스케쥴러(scheduler)를 포함하되,
    상기 메인 프로세서는 상기 부가 프로세서에서 각각 처리된 원시 데이터를 하나의 데이터로 상기 메모리부에 저장하고,
    상기 메모리부는 상기 분할된 원시 데이터가 저장되는 부가 메모리와 상기 처리된 원시 데이터가 저장되는 메인 메모리를 포함하며,
    상기 메인 메모리는 SDRAM(Synchronous Dynamic Random Access Memory)인 것을 특징으로 하는 휴대형 단말기.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서,
    상기 분할된 원시 데이터는 상기 부가 메모리의 일정한 저장 영역에 각각 저장되는 것을 특징으로 하는 휴대형 단말기.
  5. 제1항에 있어서,
    상기 부가 메모리는 복수개이고, 상기 분할된 원시 데이터는 상기 복수개의 부가 메모리에 각각 저장되는 것을 특징으로 하는 휴대형 단말기.
  6. 제1항에 있어서,
    상기 부가 메모리는 SRAM(Static Random Access Memory)인 것을 특징으로 하는 휴대형 단말기.
  7. 삭제
  8. 제1항에 있어서,
    상기 메인 프로세서는 상기 스케쥴러에 상기 메모리부와 상기 프로세서들이 연결되도록 하는 제어 신호를 전송하고,
    상기 스케쥴러는 상기 수신된 제어 신호에 따라 상기 메모리부와 상기 프로세서들이 서로 각각 연결되도록 하는 것을 특징으로 하는 휴대형 단말기.
  9. 제1항에 있어서,
    상기 원시 데이터는 영상 데이터이고, 상기 미리 설정된 일정한 기준으로 분할된 데이터는 프레임 데이터인 것을 특징으로 하는 휴대형 단말기.
  10. 제1항에 있어서,
    상기 메모리부와 상기 프로세서들이 서로 각각 연결되는 버스들의 집합인 매트릭스를 더 포함하는 것을 특징으로 하는 휴대형 단말기.
  11. 복수의 프로세서에 의한 메모리 공유 방법에 있어서,
    메인 프로세서가 메모리부에 저장된 원시 데이터의 처리 명령을 부가 프로세서로 전달하는 단계-상기 원시 데이터는 미리 설정된 일정한 기준으로 분할되어 각각 메모리부에 저장되고, 상기 처리 명령은 상기 원시 데이터의 처리 유형에 대한 지시 정보, 상기 원시 데이터의 저장 위치를 포함함-;
    상기 부가 프로세서는 상기 메모리부에 접속하여 상기 저장 위치의 상기 원시 데이터를 독출하는 단계; 및
    상기 독출된 원시 데이터를 상기 지시 정보에 상응하도록 처리하는 단계를 실행하되,
    상기 메인 프로세서는 상기 부가 프로세서가 상기 분할된 원시 데이터를 모두 처리하고, 상기 처리된 원시 데이터를 상기 메모리부에 저장할 수 있도록 상기 부가 프로세서와 상기 메모리부의 연결을 제어하고,
    상기 메모리부는 상기 분할된 원시 데이터가 저장되는 부가 메모리와 상기 처리된 원시 데이터가 저장되는 메인 메모리를 포함하며,
    상기 메인 메모리는 SDRAM(Synchronous Dynamic Random Access Memory)인 것을 특징으로 하는 복수의 프로세서에 의한 메모리 공유 방법.
  12. 삭제
  13. 제11항에 있어서,
    상기 분할된 원시 데이터는 상기 부가 메모리의 일정한 저장 영역에 각각 저장되는 것을 특징으로 하는 복수의 프로세서에 의한 메모리 공유 방법.
  14. 제11항에 있어서,
    상기 부가 메모리는 복수개이고, 상기 분할된 원시 데이터는 상기 복수개의 부가 메모리에 각각 저장되는 것을 특징으로 하는 복수의 프로세서에 의한 메모리 공유 방법.
  15. 제11항에 있어서,
    상기 부가 메모리는 SRAM(Static Random Access Memory)인 것을 특징으로 하는 복수의 프로세서에 의한 메모리 공유 방법.
  16. 삭제
  17. 제11항에 있어서,
    상기 원시 데이터는 영상 데이터이고, 상기 미리 설정된 일정한 기준으로 분할된 데이터는 프레임 데이터인 것을 특징으로 하는 복수의 프로세서에 의한 메모리 공유 방법.
  18. 복수의 프로세서에 의한 메모리 공유 방법을 수행하기 위해 휴대형 단말기에 의해 실행될 수 있는 명령어들의 프로그램이 유형적으로 구현되어 있으며, 상기 휴대형 단말기에 의해 판독될 수 있는 프로그램을 기록한 기록매체에 있어서,
    메인 프로세서가 메모리부에 저장된 원시 데이터의 처리 명령을 부가 프로세서로 전달하는 단계-상기 원시 데이터는 미리 설정된 일정한 기준으로 분할되어 각각 메모리부에 저장되고, 상기 처리 명령은 상기 원시 데이터의 처리 유형에 대한 지시 정보, 상기 원시 데이터의 저장 위치를 포함함-;
    상기 부가 프로세서는 상기 메모리부에 접속하여 상기 저장 위치의 상기 원시 데이터를 독출하는 단계; 및
    상기 독출된 원시 데이터를 상기 지시 정보에 상응하도록 처리하는 단계를 실행하되,
    상기 메인 프로세서는 상기 부가 프로세서가 상기 분할된 원시 데이터를 모두 처리하고, 상기 처리된 원시 데이터를 상기 메모리부에 저장할 수 있도록 상기 부가 프로세서와 상기 메모리부의 연결을 제어하고,
    상기 메모리부는 상기 분할된 원시 데이터가 저장되는 부가 메모리와 상기 처리된 원시 데이터가 저장되는 메인 메모리를 포함하며,
    상기 메인 메모리는 SDRAM(Synchronous Dynamic Random Access Memory)인 것을 특징으로 하는 복수의 프로세서에 의한 메모리 공유 방법을 구현하기 위한 프로그램을 기록한 기록매체.
KR1020070016459A 2007-02-16 2007-02-16 복수의 프로세서에 의한 메모리 공유 방법 및 메모리 공유구조를 가지는 휴대형 단말기 KR100909025B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070016459A KR100909025B1 (ko) 2007-02-16 2007-02-16 복수의 프로세서에 의한 메모리 공유 방법 및 메모리 공유구조를 가지는 휴대형 단말기

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070016459A KR100909025B1 (ko) 2007-02-16 2007-02-16 복수의 프로세서에 의한 메모리 공유 방법 및 메모리 공유구조를 가지는 휴대형 단말기

Publications (2)

Publication Number Publication Date
KR20080076484A KR20080076484A (ko) 2008-08-20
KR100909025B1 true KR100909025B1 (ko) 2009-07-22

Family

ID=39879728

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070016459A KR100909025B1 (ko) 2007-02-16 2007-02-16 복수의 프로세서에 의한 메모리 공유 방법 및 메모리 공유구조를 가지는 휴대형 단말기

Country Status (1)

Country Link
KR (1) KR100909025B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101003102B1 (ko) 2008-09-24 2010-12-21 한국전자통신연구원 멀티 프로세싱 유닛에 대한 메모리 매핑방법, 및 장치

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR960014828B1 (ko) * 1994-02-25 1996-10-21 주식회사 삼보컴퓨터 컴퓨터 시스템의 에스램(sram) 공유장치
KR20060134555A (ko) * 2005-06-23 2006-12-28 엠텍비젼 주식회사 복수의 프로세서에 의한 메모리 공유 방법 및 장치
KR20070000655A (ko) * 2005-06-28 2007-01-03 엠텍비젼 주식회사 복수 경로를 통한 메모리 공유 방법 및 장치
KR20070068050A (ko) * 2005-12-26 2007-06-29 엠텍비젼 주식회사 휴대형 단말기 및 휴대형 단말기에서의 공유 메모리 제어방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR960014828B1 (ko) * 1994-02-25 1996-10-21 주식회사 삼보컴퓨터 컴퓨터 시스템의 에스램(sram) 공유장치
KR20060134555A (ko) * 2005-06-23 2006-12-28 엠텍비젼 주식회사 복수의 프로세서에 의한 메모리 공유 방법 및 장치
KR20070000655A (ko) * 2005-06-28 2007-01-03 엠텍비젼 주식회사 복수 경로를 통한 메모리 공유 방법 및 장치
KR20070068050A (ko) * 2005-12-26 2007-06-29 엠텍비젼 주식회사 휴대형 단말기 및 휴대형 단말기에서의 공유 메모리 제어방법

Also Published As

Publication number Publication date
KR20080076484A (ko) 2008-08-20

Similar Documents

Publication Publication Date Title
KR100591371B1 (ko) 공유 메모리의 분할 영역 크기 가변 방법 및 공유 메모리를가지는 휴대형 단말기
US20200322618A1 (en) Image processor, image processing system including image processor, system-on-chip including image processing system, and method of operating image processing system
US20090254713A1 (en) Access control to partitioned blocks in shared memory
US8464006B2 (en) Method and apparatus for data transmission between processors using memory remapping
WO2023226845A1 (zh) 图像数据传输方法、装置和电子设备
KR100663380B1 (ko) 촬상 장치 및 영상 신호 생성 방법
KR100728650B1 (ko) 복수 경로를 통한 다중 분할된 메모리 공유 방법 및 장치
KR100731969B1 (ko) 복수 경로를 통한 메모리 공유 방법 및 장치
KR100736902B1 (ko) 복수의 프로세서에 의한 메모리 공유 방법 및 장치
KR100909025B1 (ko) 복수의 프로세서에 의한 메모리 공유 방법 및 메모리 공유구조를 가지는 휴대형 단말기
US20090043970A1 (en) Device having shared memory and method for providing access status information by shared memory
KR100592106B1 (ko) 개별 메모리 접근 허용 방법 및 장치
US20080158364A1 (en) Image Processing Device and Data Processing Method
US20220417542A1 (en) Image processing device, image processing system including image processing device, system-on-chip including image processing system, and method of operating image processing system
KR100746364B1 (ko) 메모리 공유 방법 및 장치
KR101064878B1 (ko) 복수의 프로세서에 의한 메모리 공유 방법 및 메모리 공유구조를 가지는 휴대형 단말기
KR100658588B1 (ko) 메모리 공유 시스템 및 그 방법
JP2003177958A (ja) 特殊メモリデバイス
US20050125733A1 (en) Method and apparatus for multimedia display in a mobile device
KR100592109B1 (ko) 공유 메모리의 분할 영역의 다중 억세스 제어 방법 및 공유메모리를 가지는 휴대형 단말기
KR100710626B1 (ko) 데이터 버스 확장 구조를 갖는 디지털 처리 장치 및 그방법
KR100658591B1 (ko) 공유 메모리를 이용한 디스플레이 제어 방법 및 장치
JP6785009B2 (ja) 通信装置、及び、通信装置の制御方法
KR100759865B1 (ko) 독립 동작 가능한 부가 제어부를 구비한 사용자 단말기 및메모리 공유 방법
KR100719808B1 (ko) 메모리 공유 방법 및 메모리 공유 구조를 가지는 휴대용단말기

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130626

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140701

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20150629

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20160630

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20180627

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20190625

Year of fee payment: 11