KR100827720B1 - Dual Port Memory having Access Control Device, Memory System Having the Same and Access Control Method for Dual Port Memory - Google Patents
Dual Port Memory having Access Control Device, Memory System Having the Same and Access Control Method for Dual Port Memory Download PDFInfo
- Publication number
- KR100827720B1 KR100827720B1 KR1020060100400A KR20060100400A KR100827720B1 KR 100827720 B1 KR100827720 B1 KR 100827720B1 KR 1020060100400 A KR1020060100400 A KR 1020060100400A KR 20060100400 A KR20060100400 A KR 20060100400A KR 100827720 B1 KR100827720 B1 KR 100827720B1
- Authority
- KR
- South Korea
- Prior art keywords
- access
- processor
- signal
- shared memory
- memory area
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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/163—Interprocessor communication
- G06F15/167—Interprocessor communication using a common memory, e.g. mailbox
-
- 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/468—Specific access rights for resources, e.g. using capability register
-
- 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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Multi Processors (AREA)
Abstract
공유 메모리 영역의 액세스 속도를 향상시킬 수 있는 접근제어 장치를 가지는 듀얼 포트 메모리 및 듀얼 포트 메모리의 접근 제어 방법이 개시된다. 메모리 어레이는 제1 및 제2 프로세서가 액세스하는 적어도 하나의 공유 메모리 영역을 가진다. 제1 메모리 인터페이스는 제1 프로세서로부터 제공된 어드레스 및 제어신호에 기초하여 적어도 하나의 공유 메모리 영역에 읽기 또는 쓰기 동작을 수행하고, 제2 메모리 인터페이스는 제2 프로세서로부터 제공된 어드레스 및 제어신호에 기초하여 적어도 하나의 공유 메모리 영역에 읽기 또는 쓰기 동작을 수행한다. 그리고, 접근 제어 장치는 적어도 하나의 공유 메모리 영역 각각에 대한 제1 프로세서 및 제2 프로세서 각각의 액세스 상태를 각 프로세서별로 저장하고 저장된 액세스 상태에 기초하여 제1 및 제2 프로세서에 대한 액세스 허용 신호를 제공하고 제1 및 제2 프로세서에게 저장된 액세스 상태를 제공한다. 따라서, 듀얼 포트 메모리의 공유 메모리 영역에 대한 복수의 프로세서의 액세스 속도를 향상시킬 수 있다.Disclosed are a dual port memory and an access control method of a dual port memory having an access control device capable of improving an access speed of a shared memory area. The memory array has at least one shared memory area accessed by the first and second processors. The first memory interface performs a read or write operation on at least one shared memory area based on an address and a control signal provided from the first processor, and the second memory interface uses at least one address based on an address and a control signal provided from the second processor. Read or write to one shared memory area. The access control device stores the access state of each of the first processor and the second processor for each of the at least one shared memory area for each processor, and provides access permission signals to the first and second processors based on the stored access state. Provide the stored access state to the first and second processors. Thus, the access speed of a plurality of processors to the shared memory area of the dual port memory can be improved.
Description
도 1은 두 개의 프로세서들에 의해 액세스되는 종래의 듀얼 포트 메모리를 나타내는 개념도이다.1 is a conceptual diagram illustrating a conventional dual port memory accessed by two processors.
도 2는 본 발명의 일실시예에 따른 접근 제어 장치를 가지는 듀얼 포트 메모리의 구성을 나타내는 블록도이다.2 is a block diagram illustrating a configuration of a dual port memory having an access control device according to an embodiment of the present invention.
도 3은 도 2에 도시된 접근 제어 장치의 상세한 구성을 나타내는 블록도이다.3 is a block diagram illustrating a detailed configuration of the access control device shown in FIG. 2.
도 4a 및 4b는 도 3에 도시된 신호변환부의 상세한 구성을 나타내는 블록도 및 신호변환부의 출력을 나타내는 타이밍도이다.4A and 4B are block diagrams showing the detailed configuration of the signal converter shown in FIG. 3 and timing diagrams showing the output of the signal converter.
도 5는 본 발명의 일실시예에 따른 듀얼 포트 메모리의 접근 제어 방법을 나타내는 흐름도이다.5 is a flowchart illustrating a method for controlling access of a dual port memory according to an embodiment of the present invention.
<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>
200 : 메모리 셀 어레이 210 : 제1 메모리 인터페이스200: memory cell array 210: first memory interface
230 : 제2 메모리 인터페이스 300 : 접근 제어 장치230: second memory interface 300: access control device
310 : 세마포 제어부 330 : 인터럽트 제어부310: semaphore control unit 330: interrupt control unit
331 : 액세스 권한 제어부331: access authority control unit
333 : 제1 인터럽트 마스크 레지스터333: first interrupt mask register
335 : 제2 인터럽트 마스크 레지스터335: second interrupt mask register
337 : 제1 인터럽트 상태 레지스터337: first interrupt status register
339 : 제2 인터럽트 상태 레지스터339: second interrupt status register
341 : 제1 인터럽트 제어 레지스터341: first interrupt control register
343 : 제2 인터럽트 제어 레지스터343: second interrupt control register
350 : 신호 변환부350: signal conversion unit
본 발명은 듀얼 포트 메모리 장치에 관한 것으로, 더욱 상세하게는 휴대용 단말기에 적용할 수 있는 접근제어 장치를 가지는 듀얼포트 메모리에 관한 것이다.The present invention relates to a dual port memory device, and more particularly, to a dual port memory having an access control device applicable to a portable terminal.
최근 들어 이동통신 단말 및 PDA(Personal Digital Assistant) 등과 같은 휴대용 단말기는 음성통화와 같은 무선통신 기능 이외에도 디지털 카메라, 화상통신, 멀티미디어 데이터 재생 등과 같은 다양한 부가기능을 포함하고 있다.Recently, portable terminals such as mobile communication terminals and PDAs (Personal Digital Assistants) include various additional functions such as digital cameras, video communication, and multimedia data reproduction in addition to wireless communication functions such as voice calls.
휴대용 단말기는 상기와 같은 무선통신 및 다양한 부가기능을 처리하기 위해 베이스밴드 프로세서(baseband processor), 어플리케이션 프로세서(application processor) 등과 같은 적어도 하나 이상의 프로세서를 구비하고 있다.The portable terminal includes at least one processor such as a baseband processor, an application processor, and the like to process the wireless communication and various additional functions.
그리고 상기와 같이 적어도 하나 이상의 프로세서가 구비된 휴대용 단말기에서는 각각의 프로세서의 데이터 처리 속도 및 메모리의 실장 면적을 줄이기 위해 듀얼 포트 메모리(dual port memory)가 사용된다.In the portable terminal provided with at least one processor as described above, dual port memory is used to reduce the data processing speed of each processor and the mounting area of the memory.
즉, 두 개의 프로세서가 듀얼 포트 메모리를 사용하게 되면 각 프로세서가 자신의 포트를 사용하여 메모리 영역에 접근하여 데이터를 읽고 쓸 수 있기 때문에 두 개의 프로세서가 각각 서로 다른 메모리에 연결되어 호스트 프로세서간 인터페이스(Host Porcessor Interface: HPI)를 통해 처리 데이터를 주고 받는 경우보다 데이터의 전송 및 처리 속도가 더 빠르고 이로 인해 시스템의 전체적인 성능이 향상된다.In other words, when two processors use dual port memory, each processor can access its memory area using its own port to read and write data, so that the two processors are connected to different memory, so that the interface between host processors ( Data transfer and processing is faster than processing data sent and received through the Host Porcessor Interface (HPI), which improves the overall performance of the system.
그러나, 상기와 같이 두 개의 프로세서가 듀얼 포트 메모리를 사용하는 경우 각 프로세서가 자신의 포트를 통해 동시에 동일한 메모리 영역에 액세스하게 되면 충돌이 발생하게 되어 두 개의 프로세서가 모두 메모리에 액세스할 수 없게 되므로 전체적인 시스템의 성능이 떨어지게 된다. However, as described above, when two processors use dual port memory, if each processor accesses the same memory area through its port at the same time, a collision occurs and both processors cannot access the memory. The performance of the system will be reduced.
또한, 두 개의 프로세서 중에서 하나의 프로세서가 메모리 영역에 액세스하여 데이터를 읽거나 쓰고 있는 도중에 다른 프로세서가 동일한 메모리 영역에 액세스하여 데이터를 읽거나 쓰게 되면 메모리 영역에 저장된 데이터가 부정확하게 되어 프로세서의 처리 과정 또는 처리 결과에 오류가 발생할 수 있다. In addition, if one of the two processors accesses the memory area and reads or writes data, and another processor accesses the same memory area to read or write data, the data stored in the memory area becomes inaccurate. Or an error may occur in the processing result.
따라서, 적어도 하나 이상의 프로세서가 듀얼 포트 메모리를 사용하는 경우에는 듀얼 포트 메모리에 대한 각 프로세서 간의 액세스를 제어하는 장치가 필요하다.Accordingly, when at least one processor uses dual port memory, an apparatus for controlling access between the respective processors to the dual port memory is required.
도 1은 두 개의 프로세서들에 의해 액세스되는 종래의 듀얼 포트 메모리를 나타내는 개념도이다.1 is a conceptual diagram illustrating a conventional dual port memory accessed by two processors.
도 1을 참조하면, 종래의 듀얼 포트 메모리(50)는 메모리 영역(10), 제1 메모리 인터페이스(20), 제2 메모리 인터페이스(30) 및 액세스 제어부(40)로 구성된다.Referring to FIG. 1, a conventional
메모리 영역(10)은 일반적으로 메모리 셀의 집적도가 좋은 DRAM 셀 어레이로 구성된다. 듀얼 포트 메모리(50)는 SDRAM 듀얼 포트 메모리가 될 수 있으며, 이 경우 메모리 영역은 복수의 뱅크(bank)로 구성될 수 있고, 복수의 뱅크 전체 또는 복수의 뱅크 중 일부의 뱅크는 제1 프로세서(60) 및 제2 프로세서(80)에게 공유될 수 있다.The
제1 메모리 인터페이스(20)는 제1 프로세서(60)로부터 제1 외부 버스 인터페이스(External Bus Interface: EBI)(70)를 통해 어드레스(address), 제어 신호, 클럭 및 데이터를 입력받고, 읽기, 쓰기 및 리프레쉬(refresh) 등의 동작 타이밍에 따라 메모리 영역(10)과 데이터의 입출력을 수행한다. 제1 메모리 인터페이스(20)는 명령 디코더(command decoder), 로우 디코더(row decoder), 컬럼 디코더(column decoder) 및 입출력 버퍼 등을 포함한다.The
제2 메모리 인터페이스(30)는 제2 프로세서(80)로부터 제2 외부 버스 인터페이스(90)를 통해 어드레스, 제어 신호, 클럭 및 데이터를 입력받고, 읽기, 쓰기 및 리프레쉬 등의 동작 타이밍에 따라 메모리 영역(10)과 데이터의 입출력을 수행한다. 제2 메모리 인터페이스(30)는 명령 디코더, 로우 디코더, 컬럼 디코더 및 입출 력 버퍼 등을 포함한다.The
액세스 제어부(40)는 액세스 허용 신호(READY)를 통해 제1 프로세서(60) 및 제2 프로세서(80)에게 공유 메모리 영역에 대한 액세스 권한을 알려준다.The
예를 들면, 액세스 제어부(40)는 제1 프로세서(60) 및 제2 프로세서(80) 중 어느 하나의 프로세서로부터 소정의 공유 메모리 영역에 대한 액세스 요청을 받고 요청받은 공유 메모리 영역이 다른 프로세서에 의해 액세스되지 않은 경우에는 액세스 허용 신호(READY)를 활성화시킴으로써 해당 영역에 대한 액세스가 가능하도록 한다.For example, the
또한, 액세스 제어부(40)는 제1 프로세서(60) 및 제2 프로세서(80) 중 어느 하나의 프로세서로부터 소정의 공유 메모리 영역에 대한 액세스 요청을 받고 요청받은 공유 메모리 영역이 이미 다른 프로세서에 의해 액세스 되어 사용되고 있는 경우에는 액세스 허용 신호(READY)를 비활성화시킴으로써 해당 공유 영역에 대한 액세스를 차단한다. 그리고, 상기 해당 공유 영역에 액세스한 프로세서가 작업을 종료하면 액세스 허용 신호(READY)를 활성화시킴으로써 액세스 대기 중인 프로세서가 액세스 할 수 있도록 한다.In addition, the
도 1에 도시된 바와 같은 종래의 듀얼 포트 메모리(50)에서는 제1 프로세서(60) 및 제2 프로세서(80)에 의해 공유되는 공유 메모리 영역이 복수인 경우, 복수의 공유 메모리 영역에 대한 액세스 상태가 각각 다른 경우에도 액세스 허용 신호(READY)에 의해서만 액세스 상태를 표시하기 때문에 액세스를 요청한 프로세서가 각 공유영역에 대한 액세스 상태를 한번에 알 수 없다는 단점이 있다.In the conventional
예를 들면, 메모리 영역(10)에 4개의 공유 메모리 영역이 있고, 그 중 2개의 메모리 영역을 제1 프로세서(60)가 액세스하여 사용하고 있는 도중에 제2 프로세서(80)가 제1 프로세서(60)가 사용중인 2개의 메모리 영역을 포함하여 3개의 메모리 영역에 대해 액세스 요청을 한 경우, 액세스 제어부(40)는 제1 프로세서(60)가 사용중인 2개의 공유 메모리 영역이 액세스 가능한 상태가 될 때마다 액세스 허용 신호(READY)를 활성화시키고 제2 프로세서(80)는 액세스 허용 신호(READY)가 활성화될 때마다 액세스 제어부(40)를 통해 액세스 상태를 확인하기 때문에 과도한 액세스 확인으로 인하여 제2 프로세서(80)의 처리 속도가 저하된다.For example, there are four shared memory areas in the
따라서, 본 발명의 제1 목적은 공유 메모리 영역의 액세스 속도를 향상시킬 수 있는 접근제어 장치를 가지는 듀얼 포트 메모리를 제공하는 것이다.Accordingly, a first object of the present invention is to provide a dual port memory having an access control device capable of improving the access speed of the shared memory area.
또한, 본 발명의 제2 목적은 상기 듀얼 포트 메모리를 가지는 메모리 시스템을 제공하는 것이다.It is also a second object of the present invention to provide a memory system having the dual port memory.
또한, 본 발명의 제3 목적은 공유 메모리 영역의 액세스 속도를 향상시킬 수 있는 듀얼 포트 메모리의 접근 제어 방법을 제공하는 것이다.In addition, a third object of the present invention is to provide a method for controlling access of a dual port memory capable of improving an access speed of a shared memory area.
상술한 본 발명의 제1 목적을 달성하기 위한 본 발명의 일측면에 따른 접근제어 장치를 가지는 듀얼 포트 메모리는 제1 및 제2 프로세서가 액세스하는 적어도 하나의 공유 메모리 영역을 가지는 메모리 어레이와, 상기 제1 프로세서로부터 제공된 어드레스 및 제어신호에 기초하여 상기 적어도 하나의 공유 메모리 영역에 읽 기 또는 쓰기 동작을 수행하는 제1 메모리 인터페이스와, 상기 제2 프로세서로부터 제공된 어드레스 및 제어신호에 기초하여 상기 적어도 하나의 공유 메모리 영역에 읽기 또는 쓰기 동작을 수행하는 제2 메모리 인터페이스 및 상기 적어도 하나의 공유 메모리 영역 각각에 대한 상기 제1 프로세서 및 제2 프로세서 각각의 액세스 상태를 각 프로세서별로 저장하고 상기 저장된 액세스 상태에 기초하여 상기 제1 및 제2 프로세서에 대한 액세스 허용 신호를 제공하고, 상기 제1 및 제2 프로세서에게 상기 저장된 액세스 상태를 제공하는 접근 제어 장치를 포함한다. 상기 접근 제어 장치는 상기 적어도 하나의 공유 메모리 영역에 대해 상기 제1 및 제2 프로세서 중 적어도 하나의 프로세서로부터 상기 제1 및 제2 메모리 인터페이스 중 상기 적어도 하나의 프로세서에 상응하는 메모리 인터페이스를 통해 액세스 요청 신호를 제공 받고 상기 액세스 요청된 공유 메모리 영역의 현재의 액세스 유무에 따라 세마포 신호를 출력하는 세마포 제어부 및 상기 세마포 신호와 마스크 신호를 마스크 연산하여 소정의 공유 메모리 영역에 대한 액세스를 차단하고, 상기 마스크 연산한 결과를 액세스 상태로 저장하고, 상기 액세스 상태에 기초하여 상기 제1 및 제2 프로세서에 상기 액세스 허용 신호를 제공하는 인터럽트 제어부를 포함할 수 있다. 상기 세마포 제어부는 상기 요청된 공유 메모리 영역에 상기 제1 및 제2 프로세서 중 어느 프로세서도 액세스를 하지 않으면 액세스가 가능함을 나타내는 세마포 신호를 출력하고, 상기 요청된 공유 메모리 영역에 액세스 중인 프로세서가 존재하면 액세스가 가능하지 않음을 나타내는 세마포 신호를 출력할 수 있다. 상기 인터럽트 제어부는 상기 마스크 신호를 저장하기 위한 마스크 레지스터와, 상기 액세스 상태를 저장하기 위한 상태 레지스터 및 상기 마스크 연산을 수행하고 상기 마스크 연산을 수행한 결과를 액세스 권한 신호로 출력하는 액세스 권한 제어부를 포함할 수 있다. 상기 인터럽트 제어부는 변환 제어 신호를 저장하기 위한 제어 레지스터를 더 포함할 수 있다. 상기 인터럽트 제어부는 상기 변환 제어 신호에 상응하여 상기 액세스 권한 신호를 변환하여 상기 액세스 허용 신호로 출력하는 신호 변환부를 더 포함할 수 있다. 상기 접근 제어 장치는 상기 적어도 하나의 공유 메모리 영역에 대해 상기 제1 및 제2 프로세서 중 적어도 하나의 프로세서로부터 상기 제1 및 제2 메모리 인터페이스 중 상기 적어도 하나의 프로세서에 상응하는 메모리 인터페이스를 통해 액세스 요청 신호를 제공받고 상기 액세스 요청된 공유 메모리 영역의 현재의 액세스 유무에 따라 세마포 신호를 출력하는 세마포 제어부 및 상기 세마포 제어부로부터 제공된 세마포 신호를 상기 제1 프로세서 및 제2 프로세서의 각각의 액세스 상태로 저장하고 상기 저장된 액세스 상태에 기초하여 상기 제1 및 제2 프로세서에 대한 액세스 허용 신호를 제공하고, 상기 제1 및 제2 프로세서에게 상기 저장된 액세스 상태를 제공하는 인터럽트 제어부를 포함할 수 있다. 상기 메모리 어레이는 DRAM 셀 구조를 가질 수 있다. 상기 듀얼 포트 메모리는 SDRAM 듀얼 포트 메모리가 될 수 있다.A dual port memory having an access control device according to an aspect of the present invention for achieving the first object of the present invention described above comprises a memory array having at least one shared memory area accessed by the first and second processors, and A first memory interface configured to perform a read or write operation on the at least one shared memory area based on an address and a control signal provided from a first processor, and the at least one based on an address and a control signal provided from the second processor A second memory interface for performing a read or write operation in a shared memory area of the processor and an access state of each of the first processor and the second processor for each of the at least one shared memory area, for each processor, and store the access state in the stored access state Based on the first and second processors Provide access permission signal, and a control access device that provides access to the stored state to the first and second processors. The access control device requests access to the at least one shared memory area from at least one of the first and second processors through a memory interface corresponding to the at least one processor of the first and second memory interfaces. A semaphore control unit which receives a signal and outputs a semaphore signal according to whether the shared memory area is currently accessed, and masks the semaphore signal and a mask signal to block access to a predetermined shared memory area, and the mask And an interrupt controller configured to store the result of the operation in an access state and provide the access permission signal to the first and second processors based on the access state. The semaphore control unit outputs a semaphore signal indicating that access is possible if none of the first and second processors have access to the requested shared memory area, and if there is a processor that is accessing the requested shared memory area. A semaphore signal may be output indicating that access is not possible. The interrupt controller includes a mask register for storing the mask signal, a status register for storing the access state, and an access authority controller for performing the mask operation and outputting a result of performing the mask operation as an access right signal. can do. The interrupt controller may further include a control register for storing the conversion control signal. The interrupt controller may further include a signal converter configured to convert the access right signal according to the conversion control signal and output the converted access permission signal as the access permission signal. The access control device requests access to the at least one shared memory area from at least one of the first and second processors through a memory interface corresponding to the at least one processor of the first and second memory interfaces. A semaphore control unit for receiving a signal and outputting a semaphore signal according to whether there is a current access of the shared memory area requested for access, and storing the semaphore signal provided from the semaphore control unit as the respective access states of the first processor and the second processor; And an interrupt controller configured to provide an access permission signal to the first and second processors based on the stored access state, and to provide the stored access state to the first and second processors. The memory array may have a DRAM cell structure. The dual port memory may be an SDRAM dual port memory.
상술한 본 발명의 제1 목적을 달성하기 위한 본 발명의 다른 측면에 따른 접근제어 장치를 가지는 듀얼 포트 메모리는 제1 및 제2 프로세서가 공동으로 액세스 하는 제1 공유 메모리 및 제2 공유 메모리 영역을 포함하는 메모리 어레이와, 상기 제1 프로세서로부터 제공된 어드레스 및 제어신호에 기초하여 상기 제1 및 제2 공 유 메모리 영역 중 적어도 하나의 공유 메모리 영역에 읽기 또는 쓰기 동작을 수행하는 제1 메모리 인터페이스와, 상기 제2 프로세서로부터 제공된 어드레스 및 제어신호에 기초하여 상기 제1 및 제2 공유 메모리 영역 중 적어도 하나의 공유 메모리 영역에 읽기 또는 쓰기 동작을 수행하는 제2 메모리 인터페이스 및 상기 제1 및 제2 공유 메모리 영역에 대한 상기 제1 프로세서의 액세스 상태 및 상기 제2 프로세서의 액세스 상태를 각각 저장하고 상기 제1 프로세서 및 제2 프로세서의 요청시 상기 저장된 액세스 상태를 제공하는 접근 제어 장치를 포함한다.A dual port memory having an access control device according to another aspect of the present invention for achieving the first object of the present invention described above is a first shared memory and a second shared memory region that are jointly accessed by the first and second processors. A first memory interface configured to perform a read or write operation on at least one shared memory area of the first and second shared memory areas based on an address and a control signal provided from the first processor; A second memory interface and a first and second shared memory configured to perform a read or write operation on at least one shared memory area of the first and second shared memory areas based on an address and a control signal provided from the second processor; The access state of the first processor and the access state of the second processor to an area, respectively. Store and includes an access control device for providing access to the stored state upon request of the first processor and the second processor.
상술한 본 발명의 제2 목적을 달성하기 위한 본 발명의 일측면에 따른 듀얼 포트 메모리를 가지는 메모리 시스템은 제1 프로세서와, 제2 프로세서 및 상기 제1 및 제2 프로세서가 공동으로 액세스하는 적어도 하나의 공유 메모리 영역을 가지는 메모리 어레이와, 상기 제1 프로세서로부터 제공된 어드레스 및 제어신호에 기초하여 상기 두 개 이상의 메모리 영역 중 적어도 하나의 메모리 영역에 읽기 또는 쓰기 동작을 수행하는 제1 메모리 인터페이스와, 상기 제2 프로세서로부터 제공된 어드레스 및 제어신호에 기초하여 상기 두 개 이상의 메모리 영역 중 적어도 하나의 메모리 영역에 읽기 또는 쓰기 동작을 수행하는 제2 메모리 인터페이스 및 상기 적어도 하나의 공유 메모리 영역 각각에 대한 상기 제1 프로세서 및 제2 프로세서 각각의 액세스 상태를 각 프로세서별로 저장하고 상기 저장된 액세스 상태에 기초하여 상기 제1 및 제2 프로세서에 대한 액세스 허용 신호를 제공하고, 상기 제1 및 제2 프로세서에게 상기 저장된 액세스 상태를 제공하는 접근 제어 장치를 가지는 듀얼 포트 메모리를 포함한다. 상기 제1 프로세서는 베이스 밴드 프로세서이고, 상 기 제2 프로세서는 응용프로그램을 수행하는 프로세서가 될 수 있다. According to an aspect of the present invention, there is provided a memory system having a dual port memory, including: a first processor, a second processor, and at least one of which the first and second processors collectively access; A memory array having a shared memory area of the first memory interface, a first memory interface configured to perform a read or write operation on at least one of the two or more memory areas based on an address and a control signal provided from the first processor; A second memory interface for performing a read or write operation on at least one of the two or more memory areas based on an address and a control signal provided from a second processor, and the first for each of the at least one shared memory area Access status of each processor and the second processor. A dual port memory having an access control device storing for each processor and providing an access permission signal to the first and second processors based on the stored access state and providing the stored access state to the first and second processors It includes. The first processor may be a baseband processor, and the second processor may be a processor that executes an application program.
상술한 본 발명의 제3 목적을 달성하기 위한 본 발명의 일측면에 따른 듀얼 포트 메모리의 접근 제어 방법은 적어도 하나의 공유 메모리 영역에 대한 복수의 프로세서 각각의 액세스 상태를 각 프로세서별로 저장하는 단계와, 상기 저장된 액세스 상태에 기초하여 상기 복수의 프로세서에 대한 액세스 허용 신호를 제공하는 단계 및 상기 복수의 프로세서에게 상기 저장된 액세스 상태를 제공하는 단계를 포함한다. 상기 복수의 프로세서 각각의 액세스 상태를 각 프로세서별로 저장하는 단계는 상기 적어도 하나의 공유 메모리 영역에 대한 액세스 요청이 발생되면 상기 적어도 하나의 공유 메모리 영역의 액세스 상태에 따라 세마포 신호를 출력하는 단계와, 상기 세마포 신호와 마스크 신호의 마스크 연산을 수행하는 단계 및 상기 마스크 연산을 수행한 결과를 액세스 상태로서 저장하는 단계를 포함할 수 있다. 상기 세마포 신호를 출력하는 단계는 상기 액세스가 요청된 공유 메모리 영역에 복수의 프로세서 중 어느 프로세서도 액세스를 하지 않으면 액세스가 가능함을 나타내는 세마포 신호를 출력하고, 상기 요청된 공유 메모리 영역에 액세스 중인 프로세서가 존재하면 액세스가 가능하지 않음을 나타내는 세마포 신호를 출력할 수 있다. 상기 마스크 신호는 소정의 공유 메모리 영역에 대한 액세스를 차단하기 위한 신호일 수 있다. 상기 액세스 허용 신호를 제공하는 단계는 상기 마스크 연산을 수행한 결과에 기초하여 액세스 권한 신호를 출력하는 단계 및 기저장된 변환 제어 신호에 상응하여 상기 액세스 권한 신호를 변환하여 액세스 허용 신호를 출력하는 단계를 포함할 수 있다.According to an aspect of the present invention, there is provided a method for controlling access of a dual port memory, including: storing access states of a plurality of processors for at least one shared memory area for each processor; Providing an access grant signal to the plurality of processors based on the stored access state and providing the stored access state to the plurality of processors. The storing of the access state of each of the plurality of processors for each processor may include: outputting a semaphore signal according to an access state of the at least one shared memory area when an access request for the at least one shared memory area is generated; Performing a mask operation on the semaphore signal and the mask signal, and storing the result of the mask operation as an access state. The outputting of the semaphore signal may include outputting a semaphore signal indicating that access is possible to a shared memory region in which the access is requested unless any one of a plurality of processors accesses the shared memory region. If present, a semaphore signal may be output indicating that access is not possible. The mask signal may be a signal for blocking access to a predetermined shared memory area. The providing of the access permission signal may include outputting an access right signal based on a result of performing the mask operation and converting the access right signal according to a pre-stored conversion control signal to output an access permission signal. It may include.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. 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 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. Terms such as first and second 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 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.
도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.In describing the drawings, similar reference numerals are used for similar components.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 이하, 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다. Hereinafter, with reference to the accompanying drawings, it will be described in detail a preferred embodiment of the present invention. Hereinafter, the same reference numerals are used for the same components in the drawings, and duplicate descriptions of the same components are omitted.
도 2는 본 발명의 일실시예에 따른 접근 제어 장치를 가지는 듀얼 포트 메모리의 구성을 나타내는 블록도이다.2 is a block diagram illustrating a configuration of a dual port memory having an access control device according to an embodiment of the present invention.
도 2를 참조하면, 본 발명의 일실시에에 따른 듀얼 포트 메모리(400)는 메모리 셀 어레이(200), 제1 메모리 인터페이스(210), 제2 메모리 인터페이스(230) 및 접근 제어 장치(300)를 포함한다. 2, a
듀얼 포트 메모리(400)는 제1 포트(110)를 통해 제1 외부 버스 인터페이스(External Bus Interface: EBI)(70)를 가지는 제1 프로세서(60)와 연결되고, 제2 포트(130)를 통해 제2 외부 버스 인터페이스(90)를 가지는 제2 프로세서(80)와 연결된다. The
제1 프로세서(60)는 핸드폰과 같은 휴대용 단말기에 사용되는 베이스 밴드 프로세서가 될 수 있고, 제2 프로세서(80)는 각각 휴대용 단말기에서 사용되는 비디오 프로세서, 멀티미디어 프로세서 등과 같은 응용프로그램을 수행하기 위한 프로세서가 될 수 있다.The
제1 프로세서(60)는 듀얼 포트 메모리(400)의 제1 포트(110)를 통하여 어드레스(ADD1), 복수의 제어신호들(CTR1) 및 클럭(CLK1)을 듀얼 포트 메모리(400)에 제공하고, 듀얼 포트 메모리는 제1 포트(110) 및 제1 외부 버스 인터페이스(70)를 사용하여 제1 프로세서(60)와 데이터(DQ1)의 입출력을 수행한다.The
또한, 제2 프로세서(80)는 듀얼 포트 메모리(400)의 제2 포트(130)를 통하여 어드레스(ADD2), 복수의 제어신호들(CTR2) 및 클럭(CLK2)을 듀얼 포트 메모리(400)에 제공하고, 듀얼 포트 메모리(400)는 제2 포트(130) 및 제2 외부 버스 인터페이스(90)를 사용하여 제2 프로세서(80)와 데이터(DQ2)의 입출력을 수행한다.In addition, the
제1 외부 버스 인터페이스(70) 및 제2 외부 버스 인터페이스(90)는 일종의 메모리 컨트롤러(memory controller) 역할을 수행하며 SDRAM(Synchronous DRAM) 또는 PSRAM(Pseudo SRAM)의 외부 버스 인터페이스가 사용될 수 있다. 이하 본 발명의 일실시예에서는 제1 외부 버스 인터페이스(70) 및 제2 외부 버스 인터페이스(90)는 SDRAM 외부 버스 인터페이스인 것으로 가정한다.The first
메모리 셀 어레이(200)는 DRAM의 단위 메모리 셀 구조를 가지고 복수의 공유 메모리 영역(240 내지 270)을 포함한다. 복수의 공유 메모리 영역(240 내지 270) 각각은 소정 크기의 뱅크(Bank) 단위로 형성될 수 있다. 또한, 하나의 뱅크내에서 소정 크기를 갖는 블록(block) 단위로 복수의 공유 메모리 영역(240 내지 270)이 구성될 수도 있다. 또한, 메모리 셀 어레이(200)는 제1 프로세서(60) 및 제2 프로세서(80)가 각각 독립적으로 액세스할 수 있는 복수의 전유 메모리 영역(미도시)을 포함할 수도 있다.The
제1 메모리 인터페이스(210)는 SDRAM 메모리 인터페이스로 구성되고, 제1 포트(110)를 통하여 제1 프로세서(60)로부터 어드레스(ADD1), 제어신호(CTR1), 클럭(CLK1) 및 데이터(DQ1)를 입력받고 어드레스(ADD1)를 로우 어드레스와 컬럼 어드레스로 디코딩한 후 디코딩된 어드레스(I_AD1)를 메모리 셀 어레이(200)로 출력하고 메모리 셀 어레이(200)의 읽기, 쓰기 및 리프레쉬 등의 동작 타이밍에 따라 데이터(I_DQ1)를 메모리 셀 어레이(200)로부터 독출하거나 메모리 셀 어레이(200)에 기록한다.The
이를 위해 제1 메모리 인터페이스(210)는 일반적인 SDRAM 인터페이스에서 사용되는 명령 디코더(Command decoder)(미도시), 로우 디코더(Row decoder) (미도시), 컬럼 디코더(Column decoder) (미도시) 및 입출력 버퍼(미도시) 등을 포함할 수 있다.To this end, the
제2 메모리 인터페이스(230)는 SDRAM 메모리 인터페이스로 구성되고, 제2 포트(130)를 통하여 제2 프로세서(80)로부터 어드레스(ADD2), 제어신호(CTR2), 클럭(CLK2) 및 데이터(DQ2)를 입력받고 어드레스(ADD2)를 로우 어드레스와 컬럼 어드레스로 디코딩한 후 디코딩된 어드레스(I_AD2)를 메모리 셀 어레이(200)로 출력하고 메모리 셀 어레이(200)의 읽기, 쓰기 및 리프레쉬 등의 동작 타이밍에 따라 데이터(I_DQ2)를 메모리 셀 어레이(200)로부터 독출하거나 메모리 셀 어레이(200)에 기록한다.The
이를 위해 제2 메모리 인터페이스(230)는 일반적인 SDRAM 인터페이스에서 사용되는 명령 디코더(미도시), 로우 디코더(미도시), 컬럼 디코더(미도시) 및 입출력 버퍼(미도시) 등을 포함할 수 있다.To this end, the
접근 제어 장치(300)는 복수의 공유 메모리 영역(240 내지 270)에 대한 제1 프로세서(60) 및 제2 프로세서(80)의 액세스 허용 신호(READY1 및 READY2)를 출력한다.The
또한, 접근 제어 장치(300)는 사용자의 설정에 기초하여 액세스 권한을 표시하는 액세스 허용 신호(READY1 및 READY2)의 출력 형식을 변환하고, 소정의 공유 메모리 영역에 대해 마스크를 설정함으로써 마스크가 설정된 소정의 공유 메모리 영역에 대한 제1 프로세서(60) 및 제2 프로세서(80)의 액세스를 차단한다.In addition, the
도 3은 도 2에 도시된 접근 제어 장치의 상세한 구성을 나타내는 블록도이다.3 is a block diagram illustrating a detailed configuration of the access control device shown in FIG. 2.
도 3을 참조하면, 접근 제어 장치(300)는 크게 세마포 제어부(310) 및 인터럽트 제어부(330)를 포함한다.Referring to FIG. 3, the
세마포 제어부(310)는 제1 프로세서(60) 및 제2 프로세서(80) 중 어느 하나의 프로세서로부터 소정의 공유 메모리 영역에 대한 액세스 요청 신호(REQ1, REQ2)를 입력받고 액세스가 요청된 공유 메모리 영역에 대한 현재의 액세스 여부에 따라 세마포 신호(SMP)를 출력한다.The
여기서, 제1 프로세서(60)는 제1 메모리 인터페이스(210)를 통해 액세스 요 청 신호(REQ1)를 전송하고, 제2 프로세서(80)는 제2 메모리 인터페이스(230)를 통해 액세스 요청 신호(REQ2)를 전송한다.Here, the
액세스 요청 신호(REQ1, REQ2)는 논리값 '0' 또는 '1'을 가질 수 있으며, 제1 프로세서(60) 및 제2 프로세서(80)가 소정의 공유 메모리 영역에 대해 액세스 요청을 하는 경우에는 액세스 요청 신호는 논리값 '0'이 될 수 있고, 제1 프로세서(60) 및 제2 프로세서(80)가 소정의 공유 메모리 영역에서 작업을 마친 경우에는 액세스 요청 신호는 논리값 '1'이 될 수 있다.The access request signals REQ1 and REQ2 may have a logic value of '0' or '1', and when the
또한, 본 발명의 다른 실시예에서는 소정의 공유 메모리 영역에 대해 액세스 요청을 하는 경우에는 액세스 요청 신호는 논리값 '1'이 되고, 제1 프로세서(60) 및 제2 프로세서(80)가 소정의 공유 메모리 영역에서 작업을 마친 경우에는 액세스 요청 신호는 논리값 '0'이 되도록 액세스 요청 신호(REQ1, REQ2)를 구성할 수도 있다.In addition, in another embodiment of the present invention, when an access request is made for a predetermined shared memory area, the access request signal has a logic value of '1', and the
세마포 제어부(310)는 제1 프로세서(60) 및 제2 프로세서(80)로부터 소정 공유 메모리 영역에 대한 액세스 요청시 논리값 '0'을 입력받고, 요청된 소정 공유 메모리 영역의 현재의 액세스 상태에 따라 액세스가 가능한 경우는 논리값 '0'을 세마포 신호(SMP)로 출력하고, 액세스가 가능하지 않은 경우는 논리값 '1'을 세마포 신호(SMP)로 출력한다.The
예를 들어, 세마포 제어부(310)는 제1 공유 메모리 영역(240)에 대해 제1 프로세서(60) 및 제2 프로세서(80) 중 어느 프로세서도 액세스를 하지 않은 경우에는 제1 공유 메모리 영역(240)에 대한 제1 프로세서(60) 및 제2 프로세서(80)의 세마 포 신호(SMP)로 각각 논리값 '1'을 출력한다. 그리고, 제1 프로세서(60)가 제1 공유 메모리 영역(240)에 대해 액세스를 요청하기 위해 논리값 '0'을 입력하면, 제1 공유 메모리 영역(240)에 대한 제1 프로세서(60)의 세마포 신호(SMP)로 논리값 '0'을 출력하고, 제2 프로세서(80)의 세마포 신호(SMP)로 논리값 '1'을 출력한다.For example, the
그리고 상기와 같은 제1 프로세서(60)가 제1 공유 메모리 영역(240)에 액세스 하여 읽기 또는 쓰기를 수행하는 도중에 제2 프로세서(80)가 제1 공유 메모리 영역(240)에 액세스를 요청하기 위해 논리값 '0'을 입력하게 되면 세마포 제어부(310)는 제1 공유 메모리 영역(240)이 현재 제1 프로세서(60)에 의해 액세스 되고 있기 때문에 제1 프로세서(60)의 세마포 신호(SMP)는 논리값 '0'을 출력하고, 제2 프로세서(80)의 세마포 신호(SMP)는 논리값 '1'을 출력한다. In addition, while the
이후 제1 프로세서(60)가 제1 메모리 공유 영역(240)에서 작업을 종료하고, 작업 종료를 표시하는 논리값 '1'을 입력하게 되면 세마포 제어부(310)는 제1 프로세서(60)의 세마포 신호(SMP)는 논리값 '1'을 출력하고, 제2 프로세서(80)의 세마포 신호(SMP)는 논리값 '0'을 출력함으로써 제2 프로세서(80)가 제1 공유 메모리 영역(240)에 액세스 할 수 있도록 한다.Subsequently, when the
인터럽트 제어부(330)는 도 3에 도시된 바와 같이 액세스 권한 제어부(331), 제1 인터럽트 마스크 레지스터(333), 제2 인터럽트 마스크 레지스터(335), 제1 인터럽트 상태 레지스터(337), 제2 인터럽트 상태 레지스터(339), 제1 인터럽트 제어 레지스터(341), 제2 인터럽트 제어 레지스터(343) 및 신호 변환부(350)를 포함할 수 있다.As illustrated in FIG. 3, the interrupt
액세스 권한 제어부(331)는 제1 인터럽트 마스크 레지스터(333) 및 제2 인터럽트 마스크 레지스터(335)에 저장된 마스크 신호(MASK1, MASK2)와 세마포 제어부(310)에서 출력된 세마포 신호(SMP)를 기초로 소정 공유 메모리 영역(240 내지 270)에 대한 제1 프로세서(60) 및 제2 프로세서(80)의 액세스를 차단한다.The access
제1 인터럽트 마스크 레지스터(333)는 소정 공유 메모리 영역에 대한 제1 프로세서(60)의 액세스를 차단하기 위해 사용자로부터 제공된 마스크 신호(MASK1)가 저장되고, 제2 인터럽트 마스크 레지스터(335)는 소정 공유 메모리 영역에 대한 제2 프로세서(80)의 액세스를 차단하기 위해 사용자로부터 제공된 마스크 신호(MASK2)가 저장된다.The first interrupt mask register 333 stores a mask signal MASK1 provided from a user to block access of the
제1 인터럽트 마스크 레지스터(333) 및 제2 인터럽트 마스크 레지스터(335)에 저장된 마스크 신호(MASK1, MASK2)들은 동일할 수도 있고 상이할 수도 있다. 즉, 제1 프로세서(60) 및 제2 프로세서(80)에 대해 액세스가 차단된 공유 메모리 영역(240 내지 270)은 동일할 수도 있고 상이할 수도 있다.The mask signals MASK1 and MASK2 stored in the first interrupt
액세스 권한 제어부(331)는 제1 인터럽트 마스크 레지스터(333) 및 제2 인터럽트 마스트 레지스터(335)에 저장된 마스크 신호(MASK1, MASK2)와 세마포 제어부(310)에서 출력된 세마포 신호(SMP)와 마스크 연산을 수행함으로써, 소정 공유 메모리 영역(240 내지 270)에 대한 제1 프로세서(60) 및/또는 제2 프로세서(80)의 액세스를 차단할 수 있다. The access
예를 들어, 제1 공유 메모리 영역(240)에 대해 제1 프로세서(60)의 액세스를 차단하고자 하는 경우, 제1 인터럽트 마스크 레지스터(333)에 저장된 마스크 신 호(MASK1) 중에서 제1 공유 메모리 영역(240)에 해당하는 마스크 비트를 논리값'0'으로 저장하고, 제1 인터럽트 마스크 레지스터(240)의 제2 내지 제4 공유 메모리 영역(250 내지 270)에 대한 마스크 신호(MASK1)를 논리값 '1'로 저장한 후, 세마포 제어부(310)에서 출력된 제1 공유 메모리 영역(240)에 대한 세마포 신호(SMP)와 논리곱 하여 항상 논리값 '0'이 출력되도록 함으로써 세마포 신호(SMP)에 상관없이 제1 공유 메모리 영역(240)에 대한 액세스를 차단할 수 있다.For example, when the
또는, 제1 공유 메모리 영역(240)에 대한 마스크 신호(MASK1)를 제1 인터럽트 마스크 레지스터(333)의 해당 비트에 논리값 '1'로 저장하고, 제1 인터럽트 마스크 레지스터(333)의 제2 내지 제4 공유 메모리 영역(250 내지 270)에 대한 마스크 신호(MASK1)를 논리값 '0'으로 저장한 후, 세마포 제어부(310)에서 출력된 제1 공유 메모리 영역(240)에 대한 세마포 신호(SMP)와 논리합 하여 항상 '1'이 출력되도록 함으로써 세마포 신호(SMP)에 상관없이 제1 공유 메모리 영역(240)에 대한 액세스를 차단할 수 있다.Alternatively, the mask signal MASK1 for the first shared
또한, 액세스 권한 제어부(331)는 세마포 제어부(310)로부터 출력된 세마포 신호(SMP)와 제1 인터럽트 마스크 레지스터(333) 및 제2 인터럽트 마스크 레지스터(335)에 저장된 마스크 신호(MASK1, MASK2)를 마스크 연산한 결과인 액세스 상태 신호(STE1, STE2)를 제1 인터럽트 상태 레지스터(337) 및 제2 인터럽트 상태 레지스터(339)에 각각 저장한다.In addition, the access
즉, 액세스 권한 제어부(331)는 제1 프로세서(60)의 액세스 상태에 해당하는 세마포 신호(SMP)와 제1 인터럽트 마스크 레지스터(333)에 저장된 마스크 신 호(MASK1)를 마스크 연산한 결과인 액세스 상태 신호(STE1)를 제1 인터럽트 상태 레지스터(337)에 저장하고, 제1 프로세서(80)의 액세스 상태에 해당하는 세마포 신호(SMP)와 제2 인터럽트 마스크 레지스터(335)에 저장된 마스크 신호(MASK2)를 마스크 연산한 결과인 액세스 상태 신호(STE2)를 제2 인터럽트 상태 레지스터(339)에 저장한다.That is, the access
그리고, 액세스 권한 제어부(331)는 제1 프로세서(60) 및/또는 제2 프로세서(80)가 제1 내지 제4 공유 메모리 영역(240 내지 270)에 대한 액세스 상태를 요청하면 제1 인터럽트 상태 레지스터(337) 및/또는 제2 인터럽트 상태 레지스터(339)에 저장된 액세스 상태 신호(STE1, STE2)를 제공함으로써 제1 프로세서(60) 및/또는 제2 프로세서(80)가 제1 내지 제4 공유 메모리 영역(240 내지 270)에 대한 액세스 상태를 파악할 수 있도록 한다.When the
또한, 액세스 권한 제어부(331)는 세마포 제어부(310)에서 출력된 세마포 신호(SMP)에 기초하여 제1 내지 제4 공유 메모리 영역(240 내지 270)에 대한 제1 프로세서(60) 및 제2 프로세서(80)의 액세스 권한 나타내는 액세스 권한 신호(ACC1, ACC2) 및 액세스 권한 신호를 변환하기 위한 액세스 변환 제어 신호(AMC1, AMC2) 를 출력한다.In addition, the access
예를 들어, 제1 프로세서(60)가 제1 공유 메모리 영역(240)에서 읽기 또는 쓰기 작업을 수행하고 있는 도중 제2 프로세서(80)가 제1 공유 메모리 영역(240)에 대해 액세스를 요청하게 되면 액세스 권한 제어부(331)는 제2 프로세서(80)가 제1 공유 메모리 영역(240)에 액세스할 수 없음을 나타내는 액세스 권한 신호(ACC2)를 출력한다.For example, while the
또한, 액세스 권한 제어부(331)는 제1 인터럽트 제어 레지스터(341) 또는 제2 인터럽트 제어 레지스터(343)로부터 액세스 변환 제어 신호(AMC1, AMC2)를 각각 수신하고 신호 변환부(350)에 제공함으로써 액세스 변환 제어 신호(AMC1, AMC2)에 상응하여 액세스 권한 신호(ACC1, ACC2)의 형태가 변환될 수 있도록 한다.In addition, the access
제1 인터럽트 제어 레지스터(341) 및 제2 인터럽트 제어 레지스터(343)에는 액세스 권한 제어부(331)로부터 출력된 액세스 권한 신호(ACC1, ACC2)를 변경하기 위한 액세스 변환 제어 신호(AMC1, AMC2)가 각각 저장된다.In the first interrupt control register 341 and the second interrupt control register 343, access conversion control signals AMC1 and AMC2 for changing the access right signals ACC1 and ACC2 output from the access
제1 인터럽트 제어 레지스터(341) 및 제2 인터럽트 제어 레지스터(343)에 저장된 액세스 변환 제어 신호(AMC1, AMC2)는 동일할 수도 있고, 서로 상이할 수도 있다. 즉, 신호 변환부(350)에서 제1 프로세서(60) 및 제2 프로세서(80)로 각각 출력되는 액세스 허용 신호(READY1, READY2)의 출력 형식은 서로 동일할 수도 있고, 서로 상이할 수도 있다.The access conversion control signals AMC1 and AMC2 stored in the first interrupt control register 341 and the second interrupt control register 343 may be the same or may be different from each other. That is, output formats of the access permission signals READY1 and READY2 output from the
신호 변환부(350)는 액세스 권한 제어부(331)로부터 액세스 변환 제어 신호(AMC1, AMC2) 및 액세스 권한 신호(ACC1, ACC2)를 입력 받고 액세스 변환 제어 신호(AMC1, AMC2)에 상응하여 액세스 권한 신호(ACC1, ACC2)를 액세스 허용 신호(READY1, READY2)로 그대로 출력하거나 변환된 액세스 권한 신호를 액세스 허용 신호(READY1, READY2)로 출력한다.The
본 발명의 다른 실시예에서는 제1 인터럽트 마스크 레지스터(333) 및 제2 인터럽트 마스크 레지스터(335)가 하나의 마스크 레지스터로 구현될 수도 있고, 제1 인터럽트 상태 레지스터(337) 및 제2 인터럽트 상태 레지스터(339)가 하나의 상태 레지스터로 구현될 수도 있다. 또한, 제1 인터럽트 제어 레지스터(341) 및 제2 인터럽트 제어 레지스터(343)가 하나의 제어 레지스터로 구현될 수도 있다.In another embodiment of the present invention, the first interrupt
또한, 본 발명의 다른 실시예에서 인터럽트 제어부(330)는 액세스 권한 제어부(331), 제1 인터럽트 마스크 레지스터(333), 제2 인터럽트 마스크 레지스터(335), 제1 인터럽트 상태 레지스터(337) 및 제2 인터럽트 상태 레지스터(339)를 포함할 수도 있고, 액세스 권한 제어부(331), 제1 인터럽트 상태 레지스터(337), 제2 인터럽트 상태 레지스터(339), 제1 인터럽트 제어 레지스터(341), 제2 인터럽트 제어 레지스터(343) 및 신호 변환부(350)를 포함할 수도 있다.Further, in another embodiment of the present invention, the interrupt
또한, 본 발명의 또 다른 실시예에서는 인터럽트 제어부(330)를 액세스 권한 제어부(331), 제1 인터럽트 상태 레지스터(337) 및 제2 인터럽트 상태 레지스터(339)만으로 구성함으로써 접근 제어 장치(300)가 제1 프로세서(60) 및 제2 프로세서(80)에 액세스 상태 신호(STE1, STE2) 및 액세스 허용 신호(READY1, READY2)만을 제공하도록 구현할 수도 있다.In addition, in another embodiment of the present invention, the
도 4a는 도 3에 도시된 신호 변환부의 상세한 구성을 나타내는 블록도이고, 도 4b는 도 3에 도시된 신호 변환부의 출력을 나타내는 타이밍도이다.4A is a block diagram illustrating a detailed configuration of the signal converter shown in FIG. 3, and FIG. 4B is a timing diagram illustrating an output of the signal converter shown in FIG. 3.
도 4a 및 4b를 참조하면, 신호 변환부(350)는 인버터(351, 352), 지연회로(353, 354), 에지검출회로(355, 356) 및 멀티플렉서(357, 358)를 포함하여 구성된다. 4A and 4B, the
인버터(351, 352)는 액세스 권한 제어부(331)로부터 제공된 액세스 권한 신 호(ACC1, ACC2)를 반전시켜 반전된 액세스 권한 제어 신호(I_ACC1, I_ACC2)를 출력하고, 지연회로(353, 354)는 액세스 권한 신호(ACC1, ACC2)를 기설정된 소정 시간(또는 클럭)만큼 지연시킨 후 지연된 액세스 권한 신호(D_ACC1, D_ACC2)를 출력한다. 에지검출회로(355, 356)는 액세스 권한 신호가 로우 레벨에서 하이 레벨로 또는 하이 레벨에서 로우 레벨로 천이시 이를 검출하여 펄스 형태의 액세스 권한 신호(P_ACC1, P_ACC2)를 출력한다.The
멀티플렉서(357, 358)는 액세스 권한 신호(ACC1, ACC2), 인버트된 액세스 권한 신호(I_ACC1, I_ACC2), 지연된 액세스 권한 신호(D_ACC1, D_ACC2) 및 펄스 형태의 액세스 권한 신호(P_ACC1, P_ACC2)를 입력받고 액세스 권한 제어부(331)에서 제공된 액세스 변환 제어 신호(AMC1, AMC2)에 상응하여 입력된 네 개의 신호중 하나를 선택하여 액세스 허용 신호(READY1, READY2)로 출력한다.The
도 4a와 같이 본 발명의 일실시예에 따른 접근 제어 장치를 가지는 듀얼 포트 메모리에서는 제1 인터럽트 제어 레지스터(341) 및 제2 인터럽트 제어 레지스터(343)에 액세스 변환 제어 신호(AMC1, AMC2)를 저장하고, 액세스 권한 제어부(331)에서 출력된 액세스 권한 신호(ACC1, ACC2)를 액세스 변환 제어 신호(AMC1, AMC2)에 따라 그대로 출력하거나 변환하여 출력함으로써 사용자의 의도에 맞게 액세스 허용 신호(READY1, READY2)를 출력할 수 있다.In the dual port memory having the access control device according to an embodiment of the present invention as shown in FIG. 4A, the access conversion control signals AMC1 and AMC2 are stored in the first interrupt control register 341 and the second interrupt
도 5는 본 발명의 일실시예에 따른 듀얼 포트 메모리의 접근 제어 방법을 나타내는 흐름도를 나타낸다.5 is a flowchart illustrating an access control method of a dual port memory according to an embodiment of the present invention.
도 5를 참조하면 먼저, 세마포 제어부(310)는 제1 프로세서(60) 및 제2 프로 세서(80) 중 어느 하나의 프로세서로부터 제1 내지 제4 공유 메모리 영역(240 내지 270) 중 적어도 하나의 공유 메모리 영역에 대한 액세스 요청을 기다리고(단계 501), 소정의 공유 메모리 영역에 대한 액세스 요청이 발생되면 상기 소정의 공유 메모리 영역의 액세스 상태에 따라 세마포 신호(SMP)를 출력한다(단계 503).Referring to FIG. 5, first, the
예를 들어, 제2 프로세서(80)가 제2 공유 메모리 영역(250)에 액세스 하여 읽기 또는 쓰기 작업을 수행하는 도중에 제1 프로세서(60)가 제1 공유 메모리 영역(240)에 대한 액세스를 요청하면, 세마포 제어부(310)는 제1 프로세서(60)에 대해 제1 내지 제4 공유 메모리 영역(240 내지 270)에 대한 각각의 세마포 신호(SMP)로서 논리값 '0', '1', '1', '1'를 출력하고, 동시에 제2 프로세서(80)에 대해 제1 내지 제4 공유 메모리 영역(240 내지 270)에 대한 각각의 세마포 신호로서 논리값 '1', '0', '1', '1'를 출력한다.For example, while the
여기서, 논리값 '0'은 액세스가 가능함을 나타내고, 논리값 '1'은 엑세스가 가능하지 않음을 나타낸다. 즉, 세마포 제어부(310)는 제1 공유 메모리 영역(240)에 대해 제1 프로세서(60)가 액세스 할 수 있음을 나타내는 논리값 '0'을 제1 프로세서(60)의 제1 공유 메모리 영역(240)에 대한 세마포 신호로 출력한다. Here, the logical value '0' indicates that access is possible, and the logical value '1' indicates that access is not possible. That is, the
다른 예를 들면, 제2 프로세서(80)가 제2 공유 메모리 영역(250)에 액세스 하여 읽기 또는 쓰기 작업을 수행하는 도중 제1 프로세서(60)가 제2 공유 메모리 영역(250)에 대한 액세스를 요청하면, 세마포 제어부(310)는 제1 프로세서(60)에 대해 제1 내지 제4 공유 메모리 영역(240 내지 270)에 대한 각각의 세마포 신호(SMP)로서 논리값 '1', '1', '1', '1'를 출력하고, 동시에 제2 프로세서(80)에 대해 제1 내지 제4 공유 메모리 영역(240 내지 270)에 대한 각각의 세마포 신호로서 논리값 '1', '0', '1', '1'을 출력한다. In another example, while the
즉, 세마포 제어부는 제2 공유 메모리 영역에 대해 제1 프로세서(60)가 액세스 할 수 없음을 나타내는 논리값 '1'을 제1 프로세서(60)의 제2 공유 메모리 영역(250)에 대한 세마포 신호로 출력한다.That is, the semaphore control unit may set a logic value '1' indicating that the
다음으로 액세스 권한 제어부(331)는 세마포 제어부(310)에서 출력된 세마포 신호(SMP)와 제1 인터럽트 마스크 레지스터(333) 및 제2 인터럽트 마스크 레지스터(335)에 저장된 각각의 마스크 신호(MASK1, MASK2) 비트를 마스크 연산한다(단계 507).Next, the access
예를 들어, 세마포 제어부(310)에서 출력된 제2 프로세서(80)에 대한 제1 내지 제4 공유 메모리 영역(240 내지 270)의 세마포 신호(SMP)가 논리값 '1', '0', '1', '1'이고, 제2 인터럽트 마스크 레지스터(335)에 마스크 신호(MASK2)로 논리값 '0', '1', '0', '0'이 저장된 경우, 액세스 권한 제어부(331)는 세마포 신호(SMP) '1', '0', '1', '1'과 제2 인터럽트 마스크 레지스터에 저장된 마스크 신호(MASK2) 논리값 '0', '1', '0', '0'의 각각의 비트를 논리합 연산하여 '1', '1', '1', '1'을 얻는다. 여기서, 논리값 '0'은 액세스가 가능함을 나타내고, 논리값 '1'은 액세스가 가능하지 않음을 나타낸다.For example, the semaphore signal SMP of the first to fourth shared
즉, 세마포 제어부(310)에서 제2 공유 메모리 영역(250)에 대한 제2 프로세서(80)의 액세스가 가능함을 나타내는 세마포 신호로 논리값 '0'이 출력되었음에도 불구하고, 세마포 신호인 논리값 '0' 과 마스크 비트 '1'의 논리합 연산을 통해 액 세스 권한 신호로 논리값 '1'을 출력함으로써 제2 공유 메모리 영역(250)에 대한 제2 프로세서(80)의 액세스를 차단할 수 있다.That is, even though the
액세스 권한 제어부(331)는 단계 507에서 마스크 연산한 결과를 제1 인터럽트 상태 레지스터(337) 및 제2 인터럽트 상태 레지스터(339)에 각각 저장함으로써 제1 인터럽트 상태 레지스터(337) 및 제2 인터럽트 상태 레지스터(339)를 갱신하고(단계 509), 단계 507에서 마스크 연산한 결과를 액세스 권한 신호(ACC1, ACC2)로 출력한다(단계 511).The access
즉, 액세스 권한 제어부(331)는 제1 프로세서(60)의 액세스 상태에 해당하는 세마포 신호(SMP)와 제1 인터럽트 마스크 레지스터(333)에 저장된 마스크 신호(MASK1)를 마스크 연산한 결과를 제1 인터럽트 상태 레지스터(337)에 저장하고, 제1 프로세서(80)의 액세스 상태에 해당하는 세마포 신호(SMP)와 제2 인터럽트 마스크 레지스터(335)에 저장된 마스크 신호(MASK2)를 마스크 연산한 결과를 제2 인터럽트 상태 레지스터(339)에 저장한다.That is, the access
이후, 신호 변환부(345)는 액세스 권한 제어부(331)로부터 액세스 권한 신호(ACC1, ACC2)와, 액세스 변환 제어 신호(AMC1, AMC2)를 입력받고, 액세스 변환 제어 신호(AMC1, AMC2)에 따라 제1 프로세서(60) 및 제2 프로세서(80)의 액세스 권한 신호(ACC1, ACC2)를 변환한 후(단계 513), 액세스 권한 신호 또는 변환된 액세스 권한 신호를 액세스 허용 신호(READY1, READY2)로 제1 프로세서(60) 및 제2 프로세서(80)에 제공한다(단계 515).Thereafter, the signal conversion unit 345 receives the access right signals ACC1 and ACC2 and the access conversion control signals AMC1 and AMC2 from the access
그리고, 액세스 권한 제어부(331)는 제1 프로세서(60) 및/또는 제2 프로세 서(80)로부터 액세스 상태에 대한 요청 여부를 판단하고(단계 517), 액세스 상태에 대한 요청이 있는 것으로 판단되면, 제1 프로세서(60) 및/또는 제2 프로세서(80)에 제1 인터럽트 상태 레지스터(337) 및/또는 제2 인터럽트 상태 레지스터(339)에 저장된 액세스 상태 신호(STE1, STE2)를 제공한다(단계 519).In addition, the access
그리고, 액세스 권한 제어부(331)는 제1 프로세서(60) 및/또는 제2 프로세서(80)의 액세스 상태에 변화가 있는지를 판단하고(단계 521), 변화가 있는 것으로 판단되면 단계 503으로 되돌아가서 이후의 단계들을 순차적으로 수행한다.Then, the access
단계 521에서 판단결과, 액세스 상태에 변화가 없는 것으로 판단되면 액세스 권한 제어부(331)는 접근 제어 과정의 종료에 해당하는 제어 신호가 입력되었는지를 판단하고(단계 523), 접근 제어 과정의 종료에 해당하는 제어 신호가 입력된 것으로 판단되면 접근 제어 과정을 종료하고, 접근 제어 과정의 종료에 해당하는 제어 신호가 입력되지 않은 것으로 판단되면 단계 501으로 되돌아가서 이후의 단계들을 순차적으로 수행한다.If it is determined in
본 발명의 다른 실시예에서는 도 5에 도시된 듀얼 포트 메모리의 접근 제어 방법의 흐름도에서 마스크 연산 수행 단계(단계 507), 액세스 권한 신호 출력 단계(단계 511) 및 액세스 권한 신호 변환 단계(단계 513)는 생략될 수도 있다.In another embodiment of the present invention, in the flowchart of the access control method of the dual port memory shown in FIG. 5, a mask operation performing step (step 507), an access right signal output step (step 511), and an access right signal conversion step (step 513) are performed. May be omitted.
상기와 같은 접근 제어 장치를 가지는 듀얼 포트 메모리 및 듀얼 포트 메모리의 접근 제어 방법에 따르면, 접근 제어 장치는 공유 메모리 영역에 대한 복수의 프로세서 각각의 액세스 상태를 저장하고, 프로세서의 요청시 저장된 액세스 상태 를 제공한다. 또한, 접근 제어 장치는 마스크 연산을 통해 소정의 공유 메모리 영역에 대한 프로세서의 액세스를 차단하고, 액세스 허용 신호를 다양하게 변환하여 출력한다.According to an access control method of a dual port memory and a dual port memory having the access control device as described above, the access control device stores the access state of each of the plurality of processors to the shared memory area, and stores the stored access state at the request of the processor. to provide. In addition, the access control device blocks a processor's access to a predetermined shared memory area through a mask operation, and converts and outputs an access permission signal in various ways.
따라서, 상기와 같은 접근 제어 장치를 가지는 듀얼 포트 메모리를 핸드폰과 같은 휴대용 단말기에 적용함으로써 듀얼 포트 메모리의 공유 메모리 영역에 대한 복수의 프로세서의 액세스 속도를 향상시킬 수 있고, 사용자의 설정에 따라 소정의 공유 메모리 영역에 대한 액세스를 차단할 수 있다. 또한, 설계자의 의도에 맞게 액세스 허용 신호를 변화시킬 수 있다. Therefore, by applying the dual port memory having the access control device as described above to a portable terminal such as a mobile phone, it is possible to improve the access speed of a plurality of processors to the shared memory area of the dual port memory, and according to the user's setting You can block access to shared memory areas. It is also possible to change the access permission signal to suit the designer's intention.
이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although described with reference to the embodiments above, those skilled in the art will understand that the present invention can be variously modified and changed without departing from the spirit and scope of the invention as set forth in the claims below. Could be.
Claims (17)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060100400A KR100827720B1 (en) | 2006-10-16 | 2006-10-16 | Dual Port Memory having Access Control Device, Memory System Having the Same and Access Control Method for Dual Port Memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060100400A KR100827720B1 (en) | 2006-10-16 | 2006-10-16 | Dual Port Memory having Access Control Device, Memory System Having the Same and Access Control Method for Dual Port Memory |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20080034313A KR20080034313A (en) | 2008-04-21 |
KR100827720B1 true KR100827720B1 (en) | 2008-05-07 |
Family
ID=39573799
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060100400A KR100827720B1 (en) | 2006-10-16 | 2006-10-16 | Dual Port Memory having Access Control Device, Memory System Having the Same and Access Control Method for Dual Port Memory |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100827720B1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101647818B1 (en) | 2010-04-13 | 2016-08-12 | 삼성전자주식회사 | Apparatus for routing data between multicore and method thereof |
KR102102335B1 (en) * | 2018-02-06 | 2020-04-20 | 엘에스일렉트릭(주) | Dual memory structure and method for processing message of PLC using thereof |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020058322A (en) * | 2000-12-29 | 2002-07-12 | 엘지전자 주식회사 | Operating Method of Processor Using Dual Port Memory |
JP2002312234A (en) | 2001-04-17 | 2002-10-25 | Yaskawa Electric Corp | Dual port memory system |
JP2003167752A (en) | 2001-11-29 | 2003-06-13 | Nec Yonezawa Ltd | Program update system, program update method and program update program |
JP2003280980A (en) | 2002-03-20 | 2003-10-03 | Matsushita Electric Ind Co Ltd | Shared memory exclusive control device and shared memory exclusive control method |
US20030204665A1 (en) | 2002-04-26 | 2003-10-30 | Jain Raj Kumar | High performance architecture with shared memory |
US6684305B1 (en) | 2001-04-24 | 2004-01-27 | Advanced Micro Devices, Inc. | Multiprocessor system implementing virtual memory using a shared memory, and a page replacement method for maintaining paged memory coherence |
-
2006
- 2006-10-16 KR KR1020060100400A patent/KR100827720B1/en active IP Right Grant
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020058322A (en) * | 2000-12-29 | 2002-07-12 | 엘지전자 주식회사 | Operating Method of Processor Using Dual Port Memory |
JP2002312234A (en) | 2001-04-17 | 2002-10-25 | Yaskawa Electric Corp | Dual port memory system |
US6684305B1 (en) | 2001-04-24 | 2004-01-27 | Advanced Micro Devices, Inc. | Multiprocessor system implementing virtual memory using a shared memory, and a page replacement method for maintaining paged memory coherence |
JP2003167752A (en) | 2001-11-29 | 2003-06-13 | Nec Yonezawa Ltd | Program update system, program update method and program update program |
JP2003280980A (en) | 2002-03-20 | 2003-10-03 | Matsushita Electric Ind Co Ltd | Shared memory exclusive control device and shared memory exclusive control method |
US20030204665A1 (en) | 2002-04-26 | 2003-10-30 | Jain Raj Kumar | High performance architecture with shared memory |
Also Published As
Publication number | Publication date |
---|---|
KR20080034313A (en) | 2008-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7349285B2 (en) | Dual port memory unit using a single port memory core | |
US7127563B2 (en) | Shared memory architecture | |
US7650453B2 (en) | Information processing apparatus having multiple processing units sharing multiple resources | |
EP3082048B1 (en) | Memory configured to provide simultaneous read/write access to multiple banks | |
US20140047197A1 (en) | Multiport memory emulation using single-port memory devices | |
JPH07182870A (en) | Synchronous random access memory | |
JP4827399B2 (en) | Semiconductor memory device | |
KR100827720B1 (en) | Dual Port Memory having Access Control Device, Memory System Having the Same and Access Control Method for Dual Port Memory | |
KR101110550B1 (en) | Processor, Multi-processor System And Method For Controlling Access Authority For Shared Memory In Multi-processor System | |
JP2008140078A (en) | Bus bridge device, information processor, and data transfer control method | |
KR100872196B1 (en) | Memory system and method of controlling access of dual port memory using the memory system | |
US6442645B1 (en) | Pre-decode conditional command generation for reduced SDRAM cycle latency | |
CN112100098B (en) | DDR control system and DDR memory system | |
KR100874169B1 (en) | Dual port memory for direct transfer of commands between processors and method for performing them | |
US8971145B2 (en) | Synchronous multiple port memory with asynchronous ports | |
JPWO2006132006A1 (en) | Memory control device and memory control method | |
US7224622B2 (en) | Method for writing data into memory and the control device | |
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 | |
KR100886179B1 (en) | Method for Handling Access Right Acquisition in Dual Port Memory and Apparatus therefore | |
KR100863541B1 (en) | Synchronization Control Device, Dual Port Memory Having Synchornization Control Device and Method for Controlling Synchonization in Dual Port Memory | |
US8074096B2 (en) | Semiconductor integrated circuit, memory system, memory controller and memory control method | |
KR100877972B1 (en) | Dual Port Memory for directly transferring data between processors and Method thereof | |
JPH05151769A (en) | Multi port memory | |
KR100816038B1 (en) | Method for accessing shared memory in multi-processor system | |
KR100813133B1 (en) | Dual port memory apparatus, memory system and method for adaptive using shared memory area of dual port memory apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment | ||
FPAY | Annual fee payment | ||
FPAY | Annual fee payment |
Payment date: 20170329 Year of fee payment: 10 |