KR100874169B1 - Dual port memory for direct transfer of commands between processors and method for performing them - Google Patents
Dual port memory for direct transfer of commands between processors and method for performing them Download PDFInfo
- Publication number
- KR100874169B1 KR100874169B1 KR1020070011144A KR20070011144A KR100874169B1 KR 100874169 B1 KR100874169 B1 KR 100874169B1 KR 1020070011144 A KR1020070011144 A KR 1020070011144A KR 20070011144 A KR20070011144 A KR 20070011144A KR 100874169 B1 KR100874169 B1 KR 100874169B1
- Authority
- KR
- South Korea
- Prior art keywords
- processor
- command
- address
- control signal
- shared memory
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1652—Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
- G06F13/1663—Access to shared memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
Abstract
프로세서간 커맨드를 직접 전달하는 듀얼 포트 메모리 및 이를 수행하기 위한 방법에 관한 것이다. 본 발명은 공유 메모리 영역을 가지는 메모리 어레이; 제1 프로세서로부터 제1 포트를 통해 제공된 어드레스 및 제어신호에 기초하여 상기 공유 메모리 영역에 대해 기입 또는 독출 동작을 수행하는 제1 메모리 인터페이스; 제2 프로세서로부터 제2 포트를 통해 제공된 어드레스 및 제어신호에 기초하여 상기 공유 메모리 영역에 기입 또는 독출 동작을 수행하는 제2 메모리 인터페이스; 및 상기 제1 프로세서 및 상기 제2 프로세서 중 어느 하나의 프로세서가 상기 제1 메모리 인터페이스 및 제2 메모리 인터페이스 중 어느 하나를 통해 출력하는 커맨드를 상대 프로세서로 직접 전달하는 커맨드 전달 처리부를 포함할 수 있다. 본 발명에 따르면, 듀얼 포트 메모리 시스템에서 프로세서 사이에 권한 획득 없이 커맨드를 전달할 수 있는 장점이 있다. A dual port memory for directly transferring processor-to-processor commands and a method for performing the same. The present invention provides a memory array having a shared memory area; A first memory interface configured to perform a write or read operation on the shared memory area based on an address and a control signal provided through a first port from a first processor; A second memory interface configured to perform a write or read operation on the shared memory area based on an address and a control signal provided from a second processor through a second port; And a command transfer processor configured to directly transfer a command output by any one of the first processor and the second processor through one of the first memory interface and the second memory interface to the counterpart processor. According to the present invention, there is an advantage in that a command can be transferred between processors in a dual port memory system without obtaining authority.
Description
도 1은 종래기술에 따른 듀얼 포트 메모리 시스템의 블록도. 1 is a block diagram of a dual port memory system according to the prior art.
도 2는 일반적인 세마포 처리부의 블록도. 2 is a block diagram of a general semaphore processing unit.
도 3은 종래기술에 따른 제1 프로세서에서 제2 프로세서로의 커맨드 전달 과정을 도시한 순서도. 3 is a flowchart illustrating a command transfer process from a first processor to a second processor according to the prior art.
도 4는 본 발명의 바람직한 일 실시예에 따른 듀얼 포트 메모리 시스템의 블록도. 4 is a block diagram of a dual port memory system in accordance with a preferred embodiment of the present invention.
도 5는 본 발명의 바람직한 일 실시예에 따른 커맨드 전달 처리부의 상세 구성을 도시한 블록도. 5 is a block diagram showing a detailed configuration of a command delivery processing unit according to an embodiment of the present invention.
도 6은 본 발명에 따른 프로세서의 커맨드 전달 과정을 도시한 순서도. 6 is a flowchart illustrating a command transfer process of a processor according to the present invention.
도 7은 본 발명에 따른 커맨드 전달 처리부의 커맨드 전달 및 프로세서의 커맨드 실행 과정의 순서도.7 is a flowchart illustrating a command delivery process of a command transfer processing unit and a command execution process of a processor according to the present invention.
본 발명은 프로세서간 커맨드를 직접 전달하는 듀얼 포트 메모리 및 이를 수행하기 위한 방법에 관한 것으로서, 보다 상세하게는 각 프로세서가 공유 메모리 영역을 사용하기 위한 권한 획득 없이 서로 커맨드를 전달할 수 있는 듀얼 포트 메모리 및 시스템에 관한 것이다. The present invention relates to a dual port memory for directly transferring commands between processors and a method for performing the same. More particularly, the present invention relates to a dual port memory capable of transferring commands to each processor without obtaining permission to use a shared memory area. It is about the system.
최근 들어 휴대폰 및 PDA(Personal Digital Assistant) 등과 같은 휴대용 단말기는 음성통화와 같은 이동통신 기능 이외에도 디지털 카메라, 화상전화, 멀티미디어 데이터의 재생 등과 같은 다양한 부가기능을 포함하고 있다.Recently, portable terminals such as mobile phones and PDAs (Personal Digital Assistants) include various additional functions such as digital cameras, video phones, and multimedia data playback in addition to mobile communication functions such as voice calls.
휴대용 단말기는 상기와 같은 이동 통신 본래의 기능을 처리하는 모뎀 프로세서와 다양한 응용프로그램을 처리하기 위한 응용 프로세서가 구비된다.The portable terminal is provided with a modem processor for processing the original functions of the mobile communication and an application processor for processing various applications.
또한, 일반적으로 두 개의 프로세서를 가지는 휴대용 단말기에서는 두 개의 프로세서간의 데이터 송수신을 고속으로 수행함으로써 시스템의 처리 성능을 향상시키고, 메모리의 실장 면적을 줄이기 위해 듀얼 포트 메모리(dual port memory, 특히 듀얼 포트 SDRAM)가 사용된다. In addition, in general, a portable terminal having two processors performs data transmission and reception between the two processors at a high speed, thereby improving the processing performance of the system and reducing the memory footprint of the dual port memory (particularly dual port SDRAM). ) Is used.
즉, 두 개의 프로세서가 듀얼 포트 메모리를 사용하게 되면 각각의 프로세서가 자신의 포트를 사용하여 공유 메모리 영역에 액세스하여 데이터를 읽고 쓸 수 있기 때문에 두 개의 프로세서가 각각 서로 다른 메모리에 연결되어 호스트 프로세서간 인터페이스(Host Porcessor Interface: HPI)를 통해 처리 데이터를 송수신 하는 경우보다 데이터의 전송 및 처리 속도가 더 빠르고 이로 인해 시스템의 전체적인 성능이 향상된다.In other words, when two processors use dual port memory, each processor can use its own port to access the shared memory area to read and write data, so that the two processors are connected to different memory to each other. Sending and receiving processing data through the host porcessor interface (HPI) is faster and speeds up the data transfer, which improves the overall performance of the system.
도 1은 종래기술에 따른 듀얼 포트 메모리 시스템의 블록도를 도시한 도면이 다. 1 is a block diagram of a dual port memory system according to the prior art.
도 1을 참조하면, 각 프로세서(100,104)는 각 외부 버스 인터페이스(102,106)를 통해 듀얼 포트 메모리(듀얼 포트 SDRAM: Dual Port Synchronous Dynamic Random Access Memory, 108)에 연결된다.Referring to FIG. 1, each
듀얼 포트 SDRAM(108)은 두 개의 프로세서가 공동으로 액세스(access)하여 기입 또는 독출 작업을 수행하는 공유 메모리 영역을 포함한다.The dual port SDRAM 108 includes a shared memory area in which two processors jointly access and perform a write or read operation.
각 프로세서(100,104)는 공유 메모리 영역에 액세스하고자 하는 경우, 듀얼 포트 SDRAM(108)로부터 권한을 획득한 후에 공유 메모리 영역에 액세스한다. Each
듀얼 포트 SDRAM(108)는 공유 메모리 영역에 대한 각 프로세서의 상호 배타적(mutual exclusive) 액세스를 보장하고 각 프로세서간의 동기화된 작업을 보장하기 위해 세마포 처리부(semaphore, 110)를 이용한다.The dual port SDRAM 108 utilizes a
도 2는 일반적인 세마포 처리부의 블록도로서, 도 2에 도시된 바와 같이, 일반적인 세마포 처리부(110)는 제1 세마포 요청 레지스터(200), 제2 세마포 요청 레지스터(202), 상태 제어부(204), 제1 세마포 레지스터(206) 및 제2 세마포 레지스터(208)로 구성된다. FIG. 2 is a block diagram of a general semaphore processing unit. As shown in FIG. 2, the general
제1 세마포 요청 레지스터(200)에는 제1 프로세서(100)의 액세스 권한 요청이 있는 경우에 권한 요청을 위한 데이터(DQ1, 예를 들어, 논리값 '0')가 기입되며, 제2 세마포 요청 레지스터(202)에는 제2 프로세서(104)의 권한 요청에 따른 데이터(DQ2)가 기입된다. In the first
상태 제어부(204)는 상기와 같이 각 프로세서(100,104)로부터 액세스 권한 요청이 있는 경우, 요청된 공유 메모리 영역의 상태를 판단하며, 판단된 상태에 따른 데이터를 각 프로세서에 상응하는 제1 세마포 레지스터(206) 또는 제2 세마포 레지스터(208)에 제공한다. When there is a request for access right from each
예를 들어, 제1 프로세서(100)의 권한 요청 시 공유 메모리 영역의 사용이 가능한 경우에는 상태 제어부(204)는 제1 세마포 레지스터(206)에 논리값 '0'이 기입되도록 하며, 사용이 불가능한 경우에는 논리값 '1'이 기입되도록 한다.For example, when the shared memory area is available when the authority request of the
제1 프로세서(100)는 제1 세마포 레지스터(206)에서 기입된 데이터를 독출하여 권한이 획득되었는지를 확인하며, 제2 프로세서(104)는 제2 세마포 레지스터(208)로부터 독출된 데이터를 통해 권한 획득 여부를 확인하게 된다. The
이처럼 세마포 처리부(110)는 소정의 공유 메모리 영역에 대한 액세스 가능 여부(권한 획득 여부)를 소정의 공유 메모리 영역의 현재의 상태에 따라 이진 논리값(예를 들면, '0' 또는 '1')을 이용하여 각 프로세서(100,104)에게 상호 배타적으로 제공함으로써 소정의 공유 메모리 영역에 각각의 프로세서가 상호 배타적으로 액세스하도록 한다. As such, the
그러나 종래에는 제1 프로세서(100)와 제2 프로세서(104)가 듀얼 포트 메모리(108)를 통해 연결되기 때문에 각 프로세서(100,104) 사이에 커맨드를 전달하는 경우에도 액세스 권한을 획득해야 하는 문제점이 있었다.However, in the related art, since the
도 3은 종래기술에 따른 커맨드 전달 과정을 도시한 도면으로서, 제1 프로세서(100)가 제2 프로세서(104)로 커맨드를 전달하는 과정을 도시한 도면이다. 3 is a diagram illustrating a command transfer process according to the related art, in which the
도 3을 참조하면, 제1 프로세서(100)가 제2 프로세서(104)로 커맨드를 전달 하고자 하는 경우, 제1 프로세서(100)는 세마포 처리부(110)의 제1 세마포 요청 레지스터(200)에 권한 획득을 위한 데이터를 기입한다(단계 300). Referring to FIG. 3, when the
이후, 제1 프로세서(100)는 상태 제어부(204)의 제어에 따라 제1 세마포 레지스터(206)에 제공된 데이터를 독출한다(단계 302). Thereafter, the
독출된 데이터를 통해 권한이 획득되었는지 여부를 판단하며(단계 304), 권한이 획득된 경우에 제1 프로세서(100)는 듀얼 포트 메모리(108)의 공유 메모리 영역에 제2 프로세서(104)에 전달할 제1 커맨드를 기입한다(단계 306).It is determined whether the authority is acquired through the read data (step 304), and if the authority is obtained, the
커맨드가 기입된 후 제2 프로세서(104)는 단계 200 내지 204와 같은 권한 획득 과정을 수행하며(단계 308), 공유 메모리 영역으로의 액세스 권한이 획득된 후에 공유 메모리 영역에서 제1 커맨드를 독출한다(단계 310). After the command is written, the
상기와 같이, 종래기술에 따른 듀얼 포트 메모리 시스템은 각 프로세서(100,104)가 필요한 명령을 실행하기 위한 경우뿐만 아니라 상대 프로세서에 커맨드를 전달하는 경우에도 권한 획득을 요구하기 때문에 커맨드 전달이 지연되며, 커맨드 전달 시간동안 다른 프로세서가 공유 메모리 영역을 사용하지 못하는 문제점이 있었다.As described above, the dual port memory system according to the related art delays command transfer because the
본 발명에서는 상기한 바와 같은 종래기술의 문제점을 해결하기 위해, 듀얼 포트 메모리 시스템에서 각 프로세서 사이에 세마포 처리부로부터 권한 획득없이 직접적으로 커맨드를 전달할 수 있는 프로세서간 커맨드를 직접 전달하는 듀얼 포트 메모리 및 이를 수행하기 위한 방법에 관한 것이다.In the present invention, in order to solve the problems of the prior art as described above, in a dual port memory system, a dual port memory for directly transferring commands between processors that can directly transfer commands from the semaphore processor without obtaining permission from each processor and the same. It relates to a method for carrying out.
상기한 바와 같은 목적을 달성하기 위해, 본 발명의 바람직한 일 실시예에 따르면, 공유 메모리 영역을 가지는 메모리 어레이; 제1 프로세서로부터 제1 포트를 통해 제공된 어드레스 및 제어신호에 기초하여 상기 공유 메모리 영역에 대해 기입 또는 독출 동작을 수행하는 제1 메모리 인터페이스; 제2 프로세서로부터 제2 포트를 통해 제공된 어드레스 및 제어신호에 기초하여 상기 공유 메모리 영역에 기입 또는 독출 동작을 수행하는 제2 메모리 인터페이스; 및 상기 제1 프로세서 및 상기 제2 프로세서 중 어느 하나의 프로세서가 상기 제1 메모리 인터페이스 및 제2 메모리 인터페이스 중 어느 하나를 통해 출력하는 커맨드를 상대 프로세서로 직접 전달하는 커맨드 전달 처리부를 포함하는 것을 특징으로 하는 듀얼 포트 메모리가 제공된다.In order to achieve the above object, according to a preferred embodiment of the present invention, a memory array having a shared memory region; A first memory interface configured to perform a write or read operation on the shared memory area based on an address and a control signal provided through a first port from a first processor; A second memory interface configured to perform a write or read operation on the shared memory area based on an address and a control signal provided from a second processor through a second port; And a command transfer processor configured to directly transfer a command output by any one of the first processor and the second processor through one of the first memory interface and the second memory interface to a counterpart processor. Dual port memory is provided.
본 발명의 다른 측면에 따르면, 제1 프로세서; 제2 프로세서; 및 공유 메모리 영역을 가지는 메모리 어레이와, 제1 프로세서로부터 제1 포트를 통해 제공된 어드레스 및 제어신호에 기초하여 상기 공유 메모리 영역에 대해 기입 또는 독출 동작을 수행하는 제1 메모리 인터페이스와, 제2 프로세서로부터 제2 포트를 통해 제공된 어드레스 및 제어신호에 기초하여 상기 공유 메모리 영역에 기입 또는 독출 동작을 수행하는 제2 메모리 인터페이스와, 상기 제1 프로세서 및 상기 제2 프로세서 중 어느 하나의 프로세서에서 상기 제1 메모리 인터페이스 및 제2 메모리 인터페이스 중 어느 하나를 통해 출력하는 커맨드를 상대 프로세서로 직접 전달하는 커맨드 전달 처리부를 포함하는 것을 특징으로 하는 듀얼 포트 메모리 시스템이 제공 된다.According to another aspect of the invention, the first processor; A second processor; A memory array having a shared memory area, a first memory interface configured to perform a write or read operation on the shared memory area based on an address and a control signal provided through a first port from the first processor, and from the second processor; A second memory interface configured to perform a write or read operation in the shared memory area based on an address and a control signal provided through a second port; and the first memory in any one of the first processor and the second processor. A dual port memory system is provided that includes a command transfer processor for directly transferring a command output through one of an interface and a second memory interface to a counterpart processor.
본 발명의 다른 측면에 따르면, 제1 외부 버스 인터페이스를 통해 제1 프로세서와 연결되며, 제2 외부 버스 인터페이스를 통해 제2 프로세서에 연결되는 듀얼 포트 메모리에서 커맨드 전달을 처리하는 방법으로서, (a) 상기 제1 프로세서로부터 커맨드 직접 전달을 위한 어드레스, 제어신호 및 커맨드 데이터를 수신하는 단계-상기 어드레스는 커맨드 직접 전달을 위한 커맨드 전달 처리부에 상응하는 어드레스임-; (b) 상기 어드레스 및 제어신호를 디코딩하여 상기 커맨드 데이터를 상기 커맨드 전달 처리부에 기입하는 단계; (c) 상기 커맨드 데이터의 기입에 따른 인터럽트 신호를 상기 제2 프로세서로 출력하는 단계; 및 (d) 상기 인터럽트 신호를 수신한 제2 프로세서로부터 수신된 상기 커맨드 전달 처리부 어드레스 및 제어신호에 따라 상기 커맨드 데이터를 상기 제2 프로세서로 출력하는 단계를 포함하는 것을 특징으로 하는 커맨드 전달 처리 방법이 제공된다.According to another aspect of the invention, a method for processing command transfer in a dual port memory coupled to a first processor via a first external bus interface and coupled to a second processor via a second external bus interface, comprising: (a) Receiving an address, a control signal, and command data for direct command transfer from the first processor, wherein the address is an address corresponding to a command transfer processor for direct command transfer; (b) decoding the address and control signal and writing the command data to the command transfer processor; (c) outputting an interrupt signal according to the writing of the command data to the second processor; And (d) outputting the command data to the second processor according to the command transfer processor address and the control signal received from the second processor receiving the interrupt signal. Is provided.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. As the invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. In describing the drawings, similar reference numerals are used for similar elements.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. Terms such as first, second, A, and B may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component. The term and / or includes a combination of a plurality of related items or any item of a plurality of related items.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. When a component is referred to as being "connected" or "connected" to another component, it may be directly connected to or connected to that other component, but it may be understood that other components may be present in between. Should be. On the other hand, when a component is said to be "directly connected" or "directly connected" to another component, it should be understood that there is no other component in between.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise" or "have" are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art, and shall not be construed in ideal or excessively formal meanings unless expressly defined in this application. Do not.
이하, 본 발명의 바람직한 실시예를 첨부한 도면들을 참조하여 상세히 설명하기로 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면 번호에 상관없이 동일한 수단에 대해서는 동일한 참조 번호를 사용하기로 한다. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following description of the present invention, the same reference numerals will be used for the same means regardless of the reference numerals in order to facilitate the overall understanding.
도 4는 본 발명의 바람직한 일 실시예에 따른 듀얼 포트 메모리 시스템의 블록도이다. 4 is a block diagram of a dual port memory system according to an exemplary embodiment of the present invention.
도 4에 도시된 바와 같이, 본 발명에 따른 듀얼 포트 메모리 시스템은 제1 프로세서(400), 제1 외부 버스 인터페이스(402, External Bus Interface: EBI), 제2 프로세서(404), 제2 외부 버스 인터페이스(406) 및 듀얼 포트 메모리(408)를 포함할 수 있다. As shown in FIG. 4, the dual port memory system according to the present invention includes a
제1 및 제2 프로세서(400,404)는 명령을 해독하고 실행하는 단위로서, 제1 프로세서(400)는 핸드폰과 같은 휴대용 단말기에 사용되는 모뎀 프로세서가 될 수 있고, 제2 프로세서(404)는 휴대용 단말기에서 사용되는 비디오 프로세서, 멀티미디어 프로세서 등과 같은 응용프로그램을 수행하기 위한 응용 프로세서가 될 수 있다.The first and
제1 외부 버스 인터페이스(402) 및 제2 외부 버스 인터페이스(406)는 일종의 메모리 컨트롤러(memory controller) 역할을 수행한다. 본 발명에 따른 듀얼 포트 메모리(408)는 SDRAM으로 구성될 수 있으며, 이에 따라 제1 및 제2 외부 버스 인터페이스(402,406)는 SDRAM(Synchronous DRAM)의 외부 버스 인터페이스가 사용될 수 있다. The first
이하 본 발명의 일 실시예에서는 제1 외부 버스 인터페이스(402) 및 제2 외부 버스 인터페이스(406)는 SDRAM 외부 버스 인터페이스인 것으로 설명하나 반드시 이에 한정되는 것은 아니다.Hereinafter, in an embodiment of the present invention, the first
듀얼 포트 메모리(408)는 제1 포트(410)를 통해 제1 외부 버스 인터페이스(402)를 가지는 제1 프로세서(400)와 연결되고, 제2 포트(412)를 통해 제2 외부 버스 인터페이스(406)를 가지는 제2 프로세서(404)와 연결된다.The
도 4에 도시된 바와 같이, 본 발명에 따른 듀얼 포트 메모리(408)는 제1 메모리 인터페이스(414), 제2 메모리 인터페이스(416), 메모리 어레이(418), 세마포 처리부(420) 및 커맨드 전달 처리부(422)를 포함할 수 있다. As shown in FIG. 4, the
제1 메모리 인터페이스(414)는 SDRAM 메모리 인터페이스로 구성될 수 있다. 제1 메모리 인터페이스(414)는 제1 포트(410)를 통하여 제1 프로세서(400)로부터 어드레스 제어신호(CTR1) 및 데이터(DQ1)를 입력 받고, 어드레스(ADD1)를 로우 어드레스와 컬럼 어드레스로 디코딩한 후 디코딩된 어드레스에 기초하여 소정의 동작 타이밍에 따라 데이터(DQ1)를 메모리 어레이(210)로부터 독출(read)하거나 메모리 어레이(210)에 기입(write)한다.The
상기 기입 및 독출은 제1 프로세서(400)에서 제공하는 클럭 신호에 동기되어 이루어질 수 있다. The writing and reading may be performed in synchronization with a clock signal provided by the
이를 위해 제1 메모리 인터페이스(414)는 일반적인 SDRAM 인터페이스에서 사용되는 제어신호 디코더(미도시), 로우 디코더(Row decoder) (미도시), 컬럼 디코더(Column decoder)(미도시) 및 입출력 버퍼(미도시) 등을 포함할 수 있다.To this end, the
제2 메모리 인터페이스(416)는 SDRAM 메모리 인터페이스로 구성될 수 있다. 제2 포트(412)를 통하여 제2 프로세서(404)로부터 어드레스(ADD2), 제어신호(CTR2) 및 데이터(DQ2)를 입력 받고, 어드레스(ADD2)를 로우 어드레스와 컬럼 어드레스로 디코딩한 후 동작 타이밍에 따라 데이터(DQ2)를 메모리 어레이(418)로부터 독출하거나 메모리 어레이(418)에 기입한다.The
제2 메모리 인터페이스(416)는 수신된 어드레스 및 제어신호에 상응하는 제어신호 디코더(미도시), 로우 디코더(미도시), 컬럼 디코더(미도시) 및 입출력 버퍼(미도시) 등이 포함할 수 있다.The
메모리 어레이(418)는 DRAM의 단위 메모리 셀 구조를 가지고 제1 프로세서(400)가 전용하는 제1 메모리 영역(424), 각 프로세서가 공유하는 공유 메모리 영역(426) 및 제2 프로세서(404)가 전용하는 제2 메모리 영역(428)를 포함할 수 있다. 각 메모리 영역(424 내지 428) 각각은 소정 크기를 가지는 뱅크(bank) 단위로 형성될 수 있다. 또한 하나의 뱅크 내에서 소정 크기를 가지는 블록(block) 단위로 각각의 공유 메모리 영역이 구성될 수도 있다. The
도 4에서는 듀얼 포트 메모리 시스템에서는 하나의 공유 메모리 영역(426)이 존재하는 것으로 도시하였으나, 이에 한정되지 않으며, 더 많은 수의 공유 메모리 영역이 마련될 수도 있다는 점은 당업자에게 있어 자명할 것이다. 4 illustrates that one shared
또한, 상기에서는 본 발명에 따른 듀얼 포트 메모리에 2개의 프로세서가 연결되는 것으로 설명하였으나, 이에 한정되지 않으며 그 이상의 프로세서가 연결되는 경우에도 본 발명에 적용될 수 있을 것이다. In addition, in the above description, two processors are connected to the dual port memory according to the present invention. However, the present invention is not limited thereto and may be applied to the present invention even when more processors are connected.
세마포 처리부(420)는 공유 메모리 영역(426)에 대한 상호 배타적 액세스를 제어한다. The
세마포 처리부(420)는 각 프로세서에 대응하며, 권한 요청에 관한 데이터를 저장하는 세마포 요청 레지스터를 구비하고 있어 권한 획득을 위한 데이터(예를 들어, 논리값 '0)를 각 프로세서(400,404)에 상응하는 세마포 요청 레지스터에 저장한다. The
세마포 처리부(420)는 권한 획득을 위한 데이터가 세마포 요청 레지스터에 저장된 경우, 제1 프로세서가 요청한 공유 메모리 영역의 사용 여부에 관한 정보를 세마포 레지스터에 기입한다. When the data for acquiring the authority is stored in the semaphore request register, the
여기서, 공유 메모리 영역(426)에 액세스가 가능한 경우에는 세마포 레지스터에 논리값 '0'이 액세스가 불가능한 경우에는 논리값 '1'이 저장될 수 있다.Here, when the shared
본 발명의 바람직한 일 실시예에 따르면, 개별 포트(410,412)에 연결되는 제1 프로세서(400) 및 제2 프로세서(404) 각각은 커맨드 전달 처리부(422)를 통해 세마포 처리부(420)로부터의 권한 획득 여부에 관계 없이 상대 프로세서에 커맨드를 전달할 수 있다. According to an exemplary embodiment of the present invention, each of the
여기서 커맨드는 듀얼 포트 메모리(408)에 연결된 프로세서 중 하나가 공유 메모리 영역(426)에 액세스 하여 소정 작업을 실행하도록 하는 작업 실행 정보일 수 있다.The command may be task execution information for allowing one of the processors connected to the
예를 들어, 제1 프로세서(400)가 메인 프로세서이고, 제2 프로세서(404)가 멀티미디어 프로세서인 경우, 제1 프로세서(400)가 제2 프로세서(404)로 전달하는 커맨드는 사용자의 요청 또는 미리 설정된 알고리즘에 따른 '음원 재생 실행 정보' 일 수 있다. For example, when the
본 발명에 따르면, 제1 또는 제2 프로세서(400,404)가 상대 프로세서로 소정의 커맨드를 전달하는 경우, 커맨드를 전달하고자 하는 프로세서는 커맨드 직접 전달을 위한 어드레스(ADD1,ADD2), 제어신호(CTR1,CTR2) 및 커맨드 데이터(DQ1,DQ2)를 출력한다. According to the present invention, when the first or
도 4에서 전달될 커맨드는 각각 제1 커맨드(Command1) 및 제2 커맨드(Command2)로 표시하며, 제1 커맨드는 제1 프로세서의 데이터 전달 라인에 해당하는 제1 데이터 버스, 제2 커맨드는 제2 프로세서의 데이터 전달 라인에 해당하는 제2 데이터 버스를 통해 상대 프로세서로 전달될 수 있다. In FIG. 4, the command to be transmitted is represented by a first command Command1 and a second command Command2, respectively, where the first command corresponds to a first data bus corresponding to a data transfer line of the first processor, and the second command corresponds to a second command. The data may be transferred to the counterpart processor through a second data bus corresponding to the data transfer line of the processor.
이때, 각 프로세서가 전달하는 커맨드는 커맨드 전달 처리부의 미리 설정된 레지스터에 저장될 수 있다. In this case, the command delivered by each processor may be stored in a preset register of the command transfer processor.
여기서 커맨드 직접 전달을 위한 어드레스는 커맨드 전달 처리부(422)의 어드레스(미리 설정된 레지스터에 상응하는 어드레스)이다. 일반적으로 공유 메모리 영역(426) 최상위 로우 어드레스가 세마포 처리부(420)의 어드레스로 할당된다는 점에서 커맨드 전달 처리부(422)의 어드레스는 공유 메모리 영역(426)에 대한 상위 로우 어드레스(예를 들어, 최상위 로우 어드레스의 다음 비트)로 할당될 수 있다.. The address for direct command transfer is an address (address corresponding to a preset register) of the
그러나 반드시 이에 한정되지 않으며 듀얼 포트 메모리(408)가 구분할 수 있다면 커맨드 전달 처리부(422)의 어드레스는 다양하게 할당될 수 있을 것이다. However, the present invention is not limited thereto, and if the
한편, 커맨드 직접 전달을 위한 제어신호는 커맨드 전달 처리부(422)를 활성화하고 출력된 커맨드 데이터(Command1,CMD)를 커맨드 전달 처리부(422)에 기입하기 위한 제어신호(예를 들어, 쓰기 제어 신호, /WE)일 수 있다. The control signal for direct command transfer may include a control signal (eg, a write control signal, for activating the
예를 들어, 제1 프로세서(400)가 제2 프로세서(404)로 소정 커맨드(제1 커맨드)를 전달하는 경우, 제1 메모리 인터페이스(414)는 수신된 어드레스 및 제어신호를 디코딩한 후에 커맨드 전달 처리부(422)에 인에이블 신호를 출력하여 수신된 제1 커맨드가 커맨드 전달 처리부(422)에 기입되도록 한다. For example, when the
이때, 제1 메모리 인터페이스(414)는 디코딩된 어드레스가 커맨드 전달 처리부(422)의 어드레스이므로 세마포 처리부(420)에 의한 권한 획득 과정이 이루어지지 않도록 한다. At this time, since the decoded address is the address of the
한편, 커맨드 전달 처리부(422)에 제1 커맨드를 기입하기 위한 인에이블 신호가 수신되는 경우, 커맨드 전달 처리부(422)는 인터럽트 신호(제1 인터럽트 신호)를 출력할 수 있다.On the other hand, when the enable signal for writing the first command is received in the
제2 프로세서(404)는 제1 인터럽트 신호가 수신되는 경우, 제1 프로세서(400)로부터 커맨드 전달이 있음을 인지하고, 제2 외부 버스 인터페이스(406)를 통해 커맨드 전달 처리부(422)의 어드레스 및 제1 커맨드 독출을 위한 제어신호를 출력한다. When the first interrupt signal is received, the
이에 따라 제2 프로세서(404)는 커맨드 전달 처리부(422)로부터 제1 커맨드 를 독출하여 제1 커맨드에 상응하는 작업을 실행하게 된다. Accordingly, the
이와 같은 과정은 제2 프로세서(404)에서 제1 프로세서(400)로 커맨드를 전달하는 경우에도 동일하게 적용될 수 있다. The same process may be applied to the case where the command is transmitted from the
본 발명에 따르면, 제1 프로세서(400) 및 제2 프로세서(404) 사이에 커맨드를 전달하는 동안 각 프로세서(400,404)가 듀얼 포트 메모리(408)로부터 권한을 획득하지 않아도 되므로 커맨드 전달을 효율적으로 수행할 수 있도록 한다. According to the present invention, command transfer is efficiently performed since each
하기에서는 도 5를 참조하여 본 발명에 따른 커맨드 전달 처리부(422)에 대해 상세하게 살펴본다. Hereinafter, the
도 5는 본 발명의 바람직한 일 실시예에 따른 커맨드 전달 처리부의 상세 구성을 도시한 블록도이다. 5 is a block diagram showing a detailed configuration of a command delivery processing unit according to an embodiment of the present invention.
도 5에 도시된 바와 같이, 본 발명에 따른 커맨드 전달 처리부는 제1 커맨드 레지스터(500), 제2 커맨드 레지스터(502), 제1 버퍼(504), 제2 버퍼(506), 제3 버퍼(508) 및 제4 버퍼(510)를 포함할 수 있다. As shown in FIG. 5, the command transfer processing unit according to the present invention includes a
제1 커맨드 레지스터(500)에는 제1 프로세서(400)에서 출력한 제1 커맨드가 기입된다. The first command output from the
제1 메모리 인터페이스(414)가 수신하는 제어신호(CTR1)에 의해 제1 커맨드 레지스터(500)에 인에이블 신호가 입력되며, 이를 통해 제1 커맨드가 제1 커맨드 레지스터(500)에 기입된다. The enable signal is input to the
한편, 인에이블 신호에 따라 제1 인터럽트 신호(Interrup1)가 생성되어 제2 프로세서(404)측으로 출력될 수 있다. Meanwhile, the first interrupt signal Interrup1 may be generated according to the enable signal and output to the
제1 커맨드 레지스터(500)에 기입된 제1 커맨드는 제2 프로세서(404)에 대응하는 제1 버퍼(504)에 임시 저장된다. The first command written in the
제2 프로세서(404)는 제1 커맨드 레지스터(500)에 제1 커맨드가 기입되는 경우에 제1 인터럽트 신호를 수신하며, 제1 인터럽트 신호에 따라 커맨드 전달 처리부(422)의 어드레스 및 제어신호를 생성하여 제1 버퍼(504)에 임시 저장된 제1 커맨드를 독출할 수 있다. The
제2 커맨드 레지스터(502)에는 제2 프로세서(404)에서 출력한 제2 커맨드가 기입된다. The second command output from the
상기한 바와 같이, 제2 커맨드의 저장은 인에이블 신호에 따라 이루어질 수 있으며, 제2 커맨드가 제2 커맨드 레지스터(502)에 기입되는 경우 제1 프로세서(400)측으로 커맨드 전달에 따른 제2 인터럽트 신호(Interrupt2)가 출력된다. As described above, the storing of the second command may be performed according to the enable signal, and when the second command is written in the
제2 커맨드는 제1 프로세서(400)에 대응하는 제2 버퍼(506)에 임시 저장된다. 제1 프로세서(400)는 상기한 제2 인터럽트 신호를 통해 제2 버퍼(506)에 임시 저장된 데이터를 독출할 수 있다. The second command is temporarily stored in the
제2 커맨드가 독출된 후에 제1 프로세서(400)는 독출된 제2 커맨드의 실행을 위해, 듀얼 포트 메모리(408)로부터 액세스 권한을 요청하며, 액세스 권한이 획득된 경우에 어드레스 및 제어신호를 듀얼 포트 메모리(408)로 출력하게 된다. After the second command is read, the
한편, 제2 프로세서(404)는 제1 버퍼(504)에 임시 저장된 제1 커맨드를 독출한 후에 상기한 제1 프로세서(400)와 동일한 과정을 수행한다. Meanwhile, the
본 발명에 따르면, 제1 프로세서(400)의 제1 커맨드, 제2 프로세서(404)의 제2 커맨드를 상대 프로세서에 전달함에 있어 듀얼 포트 메모리(408)로부터 권한 획득이 필요없기 때문에 커맨드 전달을 신속하게 수행할 수 있다. According to the present invention, in order to transfer the first command of the
한편, 본 발명의 바람직한 일 실시예에 따르면, 커맨드 전달 처리부(422)는 제1 커맨드 레지스터(500)에 연결되는 제3 버퍼(508) 및 제2 커맨드 레지스터(502)에 연결되는 제4 버퍼(510)를 포함할 수 있다. Meanwhile, according to an exemplary embodiment of the present invention, the
인에이블 신호에 의해 제1 커맨드 레지스터(500)에 제1 커맨드가 기입되는 경우, 제1 커맨드는 제3 버퍼(508)에 임시 저장된다. When the first command is written to the
제1 프로세서(400)는 상기한 제1 인터럽트 신호가 수신되는 경우, 제3 버퍼(508)로부터 제1 커맨드를 독출하게 된다. When the first interrupt signal is received, the
한편, 인에이블 신호에 의해 제2 커맨드 레지스터(502)에 제2 커맨드가 기입되는 경우, 제2 커맨드는 제4 버퍼(510)에 임시 저장된다. On the other hand, when the second command is written in the
제2 프로세서(404)는 상기한 제2 인터럽트 신호가 수신되는 경우, 제4 버퍼(510)로부터 제2 커맨드를 독출하게 된다. When the second interrupt signal is received, the
듀얼 포트 메모리(408)에 연결된 프로세서 중 하나가 복수의 태스크가 실행되는 멀티 태스크 환경에서 소정 작업을 실행하는 경우, 각 태스크에서 처리되는 작업을 확인해야 할 필요가 있다.When one of the processors connected to the
이는 제1 태스크가 제2 프로세서(404)로 소정의 커맨드를 전달하고, 이에 따라 공유 메모리 영역에 커맨드에 상응하는 데이터가 기입 또는 독출되었는데, 제2 태스크가 제1 태스크의 커맨드 전달을 인지하지 못하는 경우 제2 태스크가 동일한 공유 메모리 영역에 동일한 작업을 수행함으로써 오류가 발생할 수 있기 때문이다. This means that the first task transfers a predetermined command to the
본 발명에 따르면, 커맨드 전달 처리부(422)가 상대 프로세서의 커맨드뿐만 아니라 자신의 커맨드까지 다시 전달하기 때문에 각 프로세서(400,404)의 작업 오류를 방지할 수 있다. According to the present invention, since the command
도 6은 본 발명에 따른 프로세서의 커맨드 전달 과정을 도시한 순서도이다. 6 is a flowchart illustrating a command transfer process of a processor according to the present invention.
도 6은 제1 프로세서(400)가 제2 프로세서(404)로 커맨드를 전달하고, 제2 프로세서(404)로부터 커맨드를 수신하여 소정 작업을 실행하는 과정을 도시한 것이다. FIG. 6 illustrates a process in which the
도 6을 참조하면, 제1 프로세서에 이벤트가 발생하는 경우(단계 600), 해당 이벤트에 상응하는 커맨드(제1 커맨드)가 제2 프로세서(404)로 전달해야 하는 커맨드인지 여부를 판단한다. Referring to FIG. 6, when an event occurs in the first processor (step 600), it is determined whether a command (first command) corresponding to the event is a command to be transmitted to the
여기서, 이벤트는 사용자의 요청 또는 미리 설정된 알고리즘에 따른 특정 작업 실행을 위한 이벤트일 수 있으며, 예를 들어, 음원 재생 요청 신호일 수 있다. 또한, 이벤트에 상응하는 커맨드는 해당 작업 실행 정보로서, 예를 들어, 음원 재생을 위한 음원 재생 작업 정보일 수 있다. Here, the event may be an event for executing a specific task according to a user's request or a preset algorithm, and may be, for example, a sound source reproduction request signal. In addition, the command corresponding to the event may be corresponding task execution information, for example, sound source reproduction task information for sound source reproduction.
제1 프로세서(400)는 제1 커맨드가 제2 프로세서(404)로 전달해야 하는 커맨드인지 여부를 판단한다(단계 602). The
제2 프로세서(404)로 전달해야 하는 커맨드인 경우, 제1 프로세서(400)는 커맨드 전달 처리부의 어드레스를 추출하고(단계 604), 제1 커맨드 전달을 위한 어드레스, 제어신호 및 데이터를 출력한다(단계 606).In the case of a command to be delivered to the
상기한 바와 같이, 어드레스는 커맨드 전달 처리부(422)의 어드레스이며, 제 어신호는 커맨드 전달 처리부(422)에 제1 커맨드를 기입하기 위한 신호이며, 데이터는 제1 커맨드일 수 있다.As described above, the address may be an address of the
단계 606에서 생성된 어드레스 및 제어신호를 통해 제1 커맨드가 제2 프로세서(404)로 직접 전달될 수 있다. The first command may be directly transmitted to the
한편, 제1 프로세서(400)가 제2 프로세서(404)로부터 제2 커맨드 전달에 따른 인터럽트 신호를 수신하는 경우(단계 608), 제1 프로세서(400)는 이전 작업을 중지하고(단계 610), 제2 커맨드에 상응하는 작업을 실행하게 된다(단계 612). On the other hand, when the
도 7은 본 발명에 따른 커맨드 전달 처리부의 커맨드 전달 및 프로세서의 커맨드 실행 과정의 순서도로서, 제1 프로세서(400)가 제1 커맨드를 전달하는 과정을 도시한 것이다.7 is a flowchart illustrating a command delivery process and a command execution process of a processor in the command transfer processing unit according to the present invention, and illustrates a process in which the
도 7을 참조하면, 제1 프로세서(400)가 제1 커맨드 전달을 위한 어드레스, 제어신호 및 데이터를 출력하는 경우, 커맨드 전달 처리부(422)는 제1 메모리 인터페이스(414)로부터 인에이블 신호를 수신한다(단계 700). Referring to FIG. 7, when the
인에이블 신호 수신 시 커맨드 전달 처리부(422)는 제2 프로세서(404) 측으로 인터럽트 신호를 출력한다(단계 702).Upon receiving the enable signal, the
한편, 상기한 인에이블 신호에 따라 제1 커맨드 레지스터(500)에는 제1 커맨드가 기입된다(단계 704). On the other hand, the first command is written to the
본 발명에 따르면, 제1 커맨드 레지스터(500)에 기입된 제1 커맨드는 제2 프로세서(404)에 대응하는 제2 버퍼(506)에 임시 저장되며(단계 706), 이와 동시에 제1 프로세서(400)에 대응하는 제3 버퍼(508)에 입력된다(단계 708).According to the present invention, the first command written in the
한편, 단계 710 내지 단계 716은 제2 프로세서(404)에서 수행되는 과정으로서, 제2 프로세서(404)는 상기한 인터럽트 신호를 수신하는 경우, 제2 버퍼(504)에 입력된 제1 커맨드를 독출하기 위한 어드레스 및 제어신호를 출력한다(단계 710). Meanwhile, steps 710 to 716 are processes performed by the
여기서 제1 커맨드 독출을 위한 어드레스는 커맨드 전달 처리부(422)의 어드레스일 수 있으며, 제어신호는 제2 버퍼(504)에 입력된 제1 커맨드를 독출하기 위한 제어신호이다. The address for reading the first command may be an address of the
제1 커맨드를 수신하는 경우, 제2 프로세서(404)는 제1 커맨드 실행을 위해 듀얼 포트 메모리(408) 측으로 권한 획득을 위한 어드레스, 제어신호 및 데이터를 출력한다(단계 712).Upon receiving the first command, the
여기서 어드레스는 공유 메모리 영역 액세스를 위한 세마포 처리부(420)에 상응하는 어드레스이며, 제어신호는 세마포 처리부(420)의 세마포 요청 레지스터에 권한 획득을 위한 데이터를 기입 또는 독출하기 위한 신호에 해당한다. The address is an address corresponding to the
제2 프로세서(404)는 세마포 처리부(420)의 세마포 레지스터로부터 독출된 정보를 통해 권한이 획득되었는지 여부를 판단하며(단계 714), 권한이 획득되는 경우 공유 메모리 영역에 액세스하여 제1 커맨드를 실행하게 된다(단계 716)The
상기한 본 발명의 바람직한 실시예는 예시의 목적을 위해 개시된 것이고, 본 발명에 대해 통상의 지식을 가진 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경, 부가가 가능할 것이며, 이러한 수정, 변경 및 부가는 하기의 특허청구범위에 속하는 것으로 보아야 할 것이다. Preferred embodiments of the present invention described above are disclosed for purposes of illustration, and those skilled in the art will be able to make various modifications, changes, and additions within the spirit and scope of the present invention. Additions should be considered to be within the scope of the following claims.
이상에서 설명한 바와 같이, 본 발명에 따르면 듀얼 포트 메모리에 연결되는 프로세서 사이에 권한 획득 없이 커맨드를 전달할 수 있어 프로세서의 듀얼 포트 메모리 점유 시간을 감소시킬 수 있는 장점이 있다. As described above, according to the present invention, a command can be transferred between processors connected to the dual port memory without obtaining a privilege, thereby reducing the dual port memory occupancy time of the processor.
또한 본 발명에 따르면, 각 프로세서가 상대 프로세서에 전달한 커맨드를 다시 확인함으로써 작업 실행의 오류를 방지할 수 있는 장점이 있다.In addition, according to the present invention, there is an advantage that can prevent the error of the job execution by re-checking the command transmitted to each processor by the processor.
Claims (18)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070011144A KR100874169B1 (en) | 2007-02-02 | 2007-02-02 | Dual port memory for direct transfer of commands between processors and method for performing them |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070011144A KR100874169B1 (en) | 2007-02-02 | 2007-02-02 | Dual port memory for direct transfer of commands between processors and method for performing them |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20080072412A KR20080072412A (en) | 2008-08-06 |
KR100874169B1 true KR100874169B1 (en) | 2008-12-15 |
Family
ID=39882748
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070011144A KR100874169B1 (en) | 2007-02-02 | 2007-02-02 | Dual port memory for direct transfer of commands between processors and method for performing them |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100874169B1 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101110550B1 (en) * | 2009-04-08 | 2012-02-08 | 한양대학교 산학협력단 | Processor, Multi-processor System And Method For Controlling Access Authority For Shared Memory In Multi-processor System |
KR101137297B1 (en) * | 2010-04-09 | 2012-04-19 | 삼성전자주식회사 | Mobile storage control method |
US8918594B2 (en) * | 2010-11-16 | 2014-12-23 | Micron Technology, Inc. | Multi-interface memory with access control |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040268088A1 (en) | 2003-06-30 | 2004-12-30 | Lippincott Louis A. | Controlling memory access devices in a data driven architecture mesh array |
JP2006350622A (en) | 2005-06-15 | 2006-12-28 | Seiko Epson Corp | Multiprocessor system |
-
2007
- 2007-02-02 KR KR1020070011144A patent/KR100874169B1/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040268088A1 (en) | 2003-06-30 | 2004-12-30 | Lippincott Louis A. | Controlling memory access devices in a data driven architecture mesh array |
JP2006350622A (en) | 2005-06-15 | 2006-12-28 | Seiko Epson Corp | Multiprocessor system |
Also Published As
Publication number | Publication date |
---|---|
KR20080072412A (en) | 2008-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2003076654A (en) | Data transfer system between memories of dsps | |
US20080189479A1 (en) | Device, system and method for controlling memory operations | |
JP4560498B2 (en) | Arbitration scheme for shared memory devices | |
KR100874169B1 (en) | Dual port memory for direct transfer of commands between processors and method for performing them | |
KR101103619B1 (en) | Multi-port memory system and access control method thereof | |
KR101110550B1 (en) | Processor, Multi-processor System And Method For Controlling Access Authority For Shared Memory In Multi-processor System | |
US5537609A (en) | Mini cache operational module for enhancement to general cache | |
KR100886179B1 (en) | Method for Handling Access Right Acquisition in Dual Port Memory and Apparatus therefore | |
KR100877972B1 (en) | Dual Port Memory for directly transferring data between processors and Method thereof | |
KR20080046065A (en) | Dual port memory having access control device for shared memory, multi-processor system having access control device for shared memory and method for controlling access for shared memory | |
KR100872196B1 (en) | Memory system and method of controlling access of dual port memory using the memory system | |
US20140250285A1 (en) | Inter-domain memory copy method and apparatus | |
KR100863541B1 (en) | Synchronization Control Device, Dual Port Memory Having Synchornization Control Device and Method for Controlling Synchonization in Dual Port Memory | |
CN115033520A (en) | IIC data transmission method and device, single chip microcomputer equipment and storage medium | |
US20050135402A1 (en) | Data transfer apparatus | |
KR20040045446A (en) | Interfacing processors with external memory supporting burst mode | |
CN107025190B (en) | System and method of operation thereof | |
KR100816038B1 (en) | Method for accessing shared memory in multi-processor system | |
KR100827720B1 (en) | Dual Port Memory having Access Control Device, Memory System Having the Same and Access Control Method for Dual Port Memory | |
US20040034748A1 (en) | Memory device containing arbiter performing arbitration for bus access right | |
KR100879567B1 (en) | Dual Port Memory for directly transferring data between processors using first-in first-out and memory system thereof | |
KR100813133B1 (en) | Dual port memory apparatus, memory system and method for adaptive using shared memory area of dual port memory apparatus | |
KR100816009B1 (en) | Method for accessing shared memory in dual port memory system, and recorded medium for performing method for accessing shared memory in dual port memory system | |
JPH0351943A (en) | Sharing system for high/low speed bus lines | |
KR100217743B1 (en) | Common memory interface apparatus and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
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: 20121011 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20131127 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20151127 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20171128 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20181126 Year of fee payment: 11 |
|
FPAY | Annual fee payment |
Payment date: 20191125 Year of fee payment: 12 |