KR101065585B1 - Dynamic memory controller, multi-media application processorMAP apparatus comprising the same controller, and method of accessing the same dynamic memory - Google Patents

Dynamic memory controller, multi-media application processorMAP apparatus comprising the same controller, and method of accessing the same dynamic memory Download PDF

Info

Publication number
KR101065585B1
KR101065585B1 KR1020080022143A KR20080022143A KR101065585B1 KR 101065585 B1 KR101065585 B1 KR 101065585B1 KR 1020080022143 A KR1020080022143 A KR 1020080022143A KR 20080022143 A KR20080022143 A KR 20080022143A KR 101065585 B1 KR101065585 B1 KR 101065585B1
Authority
KR
South Korea
Prior art keywords
port
dynamic memory
command
output
access
Prior art date
Application number
KR1020080022143A
Other languages
Korean (ko)
Other versions
KR20090097004A (en
Inventor
김종운
Original Assignee
주식회사 코아로직
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 코아로직 filed Critical 주식회사 코아로직
Priority to KR1020080022143A priority Critical patent/KR101065585B1/en
Publication of KR20090097004A publication Critical patent/KR20090097004A/en
Application granted granted Critical
Publication of KR101065585B1 publication Critical patent/KR101065585B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1684Details of memory controller using multiple buses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/34Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes

Abstract

본 발명은 멀티 포트를 통한 동적 메모리로 액세스를 효율적으로 이루어지도록 제어하는 동적 메모리 컨트롤러 및 그 컨트롤러를 포함하는 멀티미디어 어플리케이션 프로세서(MAP) 장치, 및 그 동적 메모리 액세스 방법을 제공한다. 그 동적 메모리 컨트롤러는 데이터 버스에 멀티 포트를 통해 연결된 적어도 2개 이상의 데이터 슬레이브 인터페이스(data slave I/F)를 구비한 인터페이스부(date I/F unit); 및 상기 멀티 포트의 각 포트가 상기 동적 메모리의 각각 다른 뱅크(bank)로 액세스할 수 있도록 상기 인터페이스부 및 동적 메모리(Dynamic RAM: DRAM) 사이에 연결되어 액트(act), 데이터 입출력, 및 프리-차지(pre) 명령을 통해 상기 동적 메모리로의 데이터 입출력을 제어하는 입출력 제어부;를 포함하고, 상기 입출력 제어부는 상기 멀티 포트 중 제1 포트가 액세스 중에 다른 포트들에 대한 액트(act) 명령을 상기 동적 메모리에 인가함으로써, 상기 제1 포트의 액세스 종료 전에도 상기 다른 포트들이 상기 동적 메모리로 액세스할 수 있도록 한다.

Figure R1020080022143

The present invention provides a dynamic memory controller and a multimedia application processor (MAP) device including the controller, and a dynamic memory access method for controlling access to dynamic memory through a multi-port efficiently. The dynamic memory controller includes an interface unit (date I / F unit) having at least two or more data slave I / Fs connected to the data bus through multiple ports; And connected between the interface unit and dynamic RAM (DRAM) so that each port of the multi-port can access a different bank of the dynamic memory. And an input / output controller configured to control data input / output to the dynamic memory through a pre command, wherein the input / output controller is configured to issue an act command to other ports while a first port of the multi-port is being accessed. Applying to dynamic memory allows the other ports to access the dynamic memory even before the access of the first port is terminated.

Figure R1020080022143

Description

동적 메모리 컨트롤러 및 그 컨트롤러를 포함하는 멀티미디어 어플리케이션 프로세서(MAP) 장치, 및 그 동적 메모리 액세스 방법{Dynamic memory controller, multi-media application processor(MAP) apparatus comprising the same controller, and method of accessing the same dynamic memory}Dynamic memory controller, multi-media application processor (MAP) apparatus comprising the same controller, and method of accessing the same dynamic memory }

본 발명의 컴퓨터 프로세서 장치에 관한 것으로, 특히 멀티 포트가 동적 메모리로 액세스할 수 있도록 제어하는 동적 메모리 컨트롤러 및 그 컨트롤러를 포함한 멀티미디어 어플리케이션 프로세서(MAP) 장치에 관한 것이다.The present invention relates to a computer processor device of the present invention, and more particularly, to a dynamic memory controller for controlling access to a dynamic memory and a multimedia application processor (MAP) device including the controller.

일반적으로 동적 메모리, 즉 DRAM(Dydamic Random Access Memory)은 컴퓨터의 주기억장치로 사용되며, 그 고속동작의 성능에 관한 개발이 꾸준히 이루어지고 있다. 그러나 DRAM의 동작속도는 최근 그 성능이 더욱 개선되고 있는 프로세서의 동작속도를 따라가지 못하고 있는 실정이다. 이 때문에 DRAM의 액세스 시간과 사이클 타임이 컴퓨터 시스템의 성능을 가로막고 있다.In general, dynamic memory, that is, DRAM (Dydamic Random Access Memory) is used as a main memory of the computer, the development of the performance of its high-speed operation is steadily made. However, the operation speed of the DRAM does not keep up with the operation speed of the processor, the performance of which is being improved further. For this reason, DRAM access and cycle times are hindering the performance of computer systems.

최근에는 이 DRAM을 고속으로 동작하는 프로세서에 사용할 수 있도록, 클록신호에 동기하여 동작하는 동기식 DRAM, 즉 SDRAM(Synchronous DRAM)을 컴퓨터에 사용하는 경향이 주류를 이루고 있다. 또한, 이러한 SDRAM의 사용과 함께 멀티미디 어 어플리케이션 프로세서(MAP) 장치나 복잡한 SoC(System on Chip)에서는 싱글 포트(single-port)보다는 멀티 포트(multi-port)를 사용하고 있다. 이는 마스터 블록에서 SDRAM를 억세스할 때 데이터 버스의 활용성(bus utilization)을 높이기 위함이다.Recently, the trend is to use synchronous DRAMs, ie, synchronous DRAMs (SDRAMs), which operate in synchronization with clock signals, for computers so that the DRAMs can be used in processors operating at high speeds. In addition, with the use of SDRAM, multimedia application processor (MAP) devices or complex System on Chip (SoC) devices are using multi-port rather than single-port. This is to increase the bus utilization of the data bus when accessing the SDRAM from the master block.

한편, SDRAM은 뱅크 단위로 이루어지고 이러한 SDRAM의 각각의 뱅크로 멀티 포트의 각 포트가 액세스하여 데이터를 입출력하게 된다. 각 포트의 SDRAM로의 액세스는 SDRAM 컨트롤러가 제어하게 한다. 현재 하나의 뱅크로 임의의 어떤 포트가 액세스 중인 경우에는 다른 포트가 액세스를 할 수 없고, 액세스 중인 포트에 대한 입출력 작업이 모두 수행되어야 다음 포트가 액세스할 수 있었다. On the other hand, the SDRAM is formed in banks, and each bank of the multi-port accesses each bank of the SDRAM to input and output data. Each port's access to SDRAM is controlled by the SDRAM controller. If any port is currently being accessed by one bank, no other port can access it, and all the I / O operations for the port being accessed must be performed before the next port can be accessed.

일반적으로 SDRAM 컨트롤러에 의한 SDRAM으로의 데이터 입출력은 클록 신호에 동기된 데이터 입출력 신호들에 의해 이루어진다. 즉, 액트(act), 데이터 입출력 명령, 및 프리-차지(pre) 명령을 통해 이루어진다. 종래에는 현재 액세스 중인 포트에 대하여 프리-차지 명령이 수행되어야 다음 포트에 대한 액트 명령이 이루어지는 식으로 동작하였다. 여기서, 액트 명령은 해당 포트로 액세스의 시작을 알리는 신호에 해당하고, 데이터 입출력 명령은 해당 포트의 데이터가 동적 메모리로 읽기나 쓰기 등을 통해 실제로 입출력되도록 하는 신호에 해당하며, 프리-차지 명령은 해당 포트에 대한 입출력 동작이 완료되었음을 알리는 신호에 해당한다.In general, data input / output to the SDRAM by the SDRAM controller is performed by data input / output signals synchronized with a clock signal. That is, through an act, a data input / output instruction, and a pre-charge instruction. In the related art, a pre-charge command must be performed on a port currently being accessed to perform an act command on the next port. Here, the act command corresponds to a signal indicating the start of access to the corresponding port, and the data input / output command corresponds to a signal for actually inputting / outputting the data of the corresponding port by reading or writing to the dynamic memory, and the pre-charge command Corresponds to the signal indicating that the input / output operation for the port has been completed.

그에 따라, 현재, 실질적으로 데이터가 입출력되는 데이터 입출력 명령 이후의 액트 명령을 기다리는 시간이 낭비되는 측면이 있다. 그에 따라, SDRAM로의 멀티 포트를 통한 액세스를 최대한으로 활용하지 못하고 있는 실정이고, 또한 그 결 과로 프로세서와의 원활한 소통도 여전히 미진한 실정이다.Accordingly, there is a current aspect in which time for waiting for an act instruction after a data input / output instruction to which data is actually input / output is wasted. As a result, access to SDRAM is not fully utilized, and as a result, communication with the processor is still insufficient.

따라서, 본 발명이 이루고자 하는 과제는 멀티 포트를 통한 동적 메모리로 액세스를 효율적으로 이루어지도록 제어하는 동적 메모리 컨트롤러 및 그 컨트롤러를 포함하는 멀티미디어 어플리케이션 프로세서(MAP) 장치, 및 그 동적 메모리 액세스 방법을 제공하는 데에 있다.Accordingly, an object of the present invention is to provide a dynamic memory controller and a multimedia application processor (MAP) device including the controller, and a dynamic memory access method for controlling access to dynamic memory through a multi-port efficiently. There is.

상기 과제를 달성하기 위하여, 본 발명은 데이터 버스에 멀티 포트를 통해 연결된 적어도 2개 이상의 데이터 슬레이브 인터페이스(data slave I/F)를 구비한 인터페이스부(date I/F unit); 및 상기 멀티 포트의 각 포트가 상기 동적 메모리의 각각 다른 뱅크(bank)로 액세스할 수 있도록 상기 인터페이스부 및 동적 메모리(Dynamic RAM: DRAM) 사이에 연결되어 액트(act), 데이터 입출력, 및 프리-차지(pre) 명령을 통해 상기 동적 메모리로의 데이터 입출력을 제어하는 입출력 제어부;를 포함하고, 상기 입출력 제어부는 상기 멀티 포트 중 제1 포트가 액세스 중에 다른 포트들에 대한 액트(act) 명령을 상기 동적 메모리에 인가함으로써, 상기 제1 포트의 액세스 종료 전에도 상기 다른 포트들이 상기 동적 메모리로 액세스할 수 있도록 하는 것을 특징으로 하는 동적 메모리 컨트롤러를 제공한다.In order to achieve the above object, the present invention provides an interface unit having at least two or more data slave I / F (data slave I / F) connected to the data bus via a multi-port (date I / F unit); And connected between the interface unit and dynamic RAM (DRAM) so that each port of the multi-port can access a different bank of the dynamic memory. And an input / output controller configured to control data input / output to the dynamic memory through a pre command, wherein the input / output controller is configured to issue an act command to other ports while a first port of the multi-port is being accessed. And applying to dynamic memory to allow the other ports to access the dynamic memory even before access of the first port is terminated.

본 발명에 있어서, 상기 동적 메모리에는 동기식 동적 메모리(Synchronous DRAM: SDRAM), 2배속 동기식 동적 메모리(Double Date Rate-SDRAM: DDR-SDRAM), 2배속 동기식 동적 메모리2(Double Date Rate2-SDRAM: DDR2-SDRAM), 2배속 동기식 동적 메모리3(Double Date Rate3-SDRAM: DDR3-SDRAM) 등의 모든 동적 메모리가 해당 될 수 있다.In the present invention, the dynamic memory includes a synchronous dynamic memory (SDRAM), a double speed synchronous dynamic memory (Double Date Rate-SDRAM: DDR-SDRAM), a double speed synchronous dynamic memory (Double Date Rate 2-SDRAM: DDR2). SDRAM), and double dynamic synchronous dynamic memory 3 (Double Date Rate 3 -SDRAM: DDR3-SDRAM) can be any of these.

또한, 동적 메모리 컨트롤러는, 상기 인터페이스부 및 입출력 제어부 사이에 연결되어 상기 데이터 슬레이브 인터페이스를 상기 입출력 제어부로 선택적으로 연결시키는 중재(Arbitration) 장치를 포함할 수도 있다.In addition, the dynamic memory controller may include an arbitration device connected between the interface unit and the input / output controller to selectively connect the data slave interface to the input / output controller.

본 발명에 있어서, 상기 데이터 버스는 AHB(Advanced High performance Bus)일 수 있고, 상기 입출력 제어부는 상기 AHB로부터 명령에 따라 동적 메모리의 시작 어드레스 및 어드레스 증가분을 결정하는 매핑 컨트롤부(address mapping controll unit), 상기 매핑 컨트롤부에서 결정된 어드레스와 어드레스 증가분을 상기 동적 메모리 명령 형식에 맞도록 변환하는 어드레스 매핑부(row/column address mapping unit), 및 상기 멀티 포트를 상기 동적 메모리로 액세스시키기 위한 상기 액트(act), 데이터 입출력 및 프리-차지(pre) 명령 신호를 구비한 데이터 입출력 신호를 생성시키는 스테이트 머신부(state machine unit)을 포함할 수 있다.In an embodiment of the present invention, the data bus may be an advanced high performance bus (AHB), and the input / output controller may determine an address mapping control unit for determining a start address and an address increment of a dynamic memory according to a command from the AHB. A row / column address mapping unit for converting the address and the address increment determined by the mapping controller to match the dynamic memory command format, and the act for accessing the multiport to the dynamic memory. And a state machine unit for generating a data input / output signal having a data input / output signal and a pre-charge command signal.

본 발명에 있어서, 상기 멀티 포트 중 2개의 포트가 상기 동적 메모리로 액세스를 시도 중인 경우에, 액세스 중인 상기 제1 포트에 대한 프리-차지 명령 수행 전에 제2 포트에 대한 액트 명령을 상기 동적 메모리로 인가될 수 있다. 예컨대, 데이터 입출력을 위한 제어 신호는 상기 제1 포트에 대한 액트 명령, 상기 제1 포트에 대한 데이터 입출력 명령, 제2 포트에 대한 액트 명령, 상기 제2 포트에 대한 데이터 입출력 명령, 상기 제1 포트에 대한 프리-차지 명령 및 상기 제2 포트에 대한 프리-차지 명령 순으로 인가될 수 있다.In the present invention, when two of the multi-ports are attempting to access the dynamic memory, the act instruction for the second port to the dynamic memory before performing the pre-charge command for the first port being accessed. Can be applied. For example, a control signal for data input / output may include an act command for the first port, a data input / output command for the first port, an act command for the second port, a data input / output command for the second port, and the first port. The pre-charge command for the second port and the pre-charge command for the second port.

본 발명에 있어서, 상기 멀티 포트 중 3개 이상의 포트가 상기 동적 메모리로 액세스를 시도 중인 경우에, 데이터 입출력을 위한 제어 신호는 액세스 중인 상기 제1 포트에 대한 프리-차지 명령 수행 전에 제2 포트에 대한 액트 명령, 상기 제2 포트에 대한 프리-차지 명령 수행 전에 제3 포트에 대한 액트 명령, 및 제n 포트에 대한 프리-차지 명령 수행 전에 제n+1 포트에 대한 액트 명령 순으로 인가될 수도 있다. 한편, 상기 데이터 입출력 명령은 데이터의 크기에 따라 상기 프리-차지 명령들 사이에 선택적으로 인가될 수 있다.In the present invention, when three or more ports of the multi-ports are attempting to access the dynamic memory, the control signal for data input / output is transmitted to the second port before performing the pre-charge command for the first port being accessed. May be applied in the order of the act command for the second port, the act command for the third port before performing the pre-charge command for the second port, and the act instruction for the n + 1 port before performing the pre-charge command for the n-th port. have. Meanwhile, the data input / output command may be selectively applied between the pre-charge commands according to the size of data.

본 발명은 또한 상기 과제를 달성하기 위하여, 코어 프로세서를 구비한 프로세서부; 동적 메모리를 구비한 메모리부; 제1 항의 동적 메모리 컨트롤러를 구비한 컨트롤러부; 및 상기 컨트롤러부의 각 구성요소들과 상기 프로세서부의 각 구성요소들을 연결시키는 데이터 버스;를 포함하는 하는 멀티미디어 어플리케이션 프로세서(MAP) 장치를 제공한다.The present invention also provides a processor unit having a core processor to achieve the above object; A memory unit having a dynamic memory; A controller unit having a dynamic memory controller of claim 1; And a data bus connecting each component of the controller unit and each component of the processor unit.

본 발명에 있어서, 상기 멀티 포트 중 2개의 포트가 상기 동적 메모리로 액세스를 시도 중인 경우에, 액세스 중인 상기 제1 포트에 대한 프리-차지 명령 수행 전에 제2 포트에 대한 액트 명령이 인가될 수 있으며, 또한, 상기 멀티 포트 중 3개 이상의 포트가 상기 동적 메모리로 액세스를 시도 중인 경우에는, 데이터 입출력을 위한 제어 신호는 액세스 중인 상기 제1 포트에 대한 프리-차지 명령 수행 전에 상기 제2 포트에 대하여 액트 명령, 상기 제2 포트에 대한 프리-차지 명령 수행 전에 제3 포트에 대한 액트 명령, 및 제n 포트에 대한 프리-차지 명령 수행 전에 제n+1 포트에 대한 액트 명령 순으로 인가될 수 있다. In the present invention, when two of the multi-ports are attempting to access the dynamic memory, an act command for the second port may be authorized before performing the pre-charge command for the first port being accessed. In addition, when three or more ports of the multi-ports are attempting to access the dynamic memory, a control signal for data input / output may be applied to the second port before performing a pre-charge command on the first port being accessed. It may be applied in order of an act command, an act command for a third port before performing a pre-charge command for the second port, and an act command for an n + 1 port before performing a pre-charge command for the n-th port. .

더 나아가 본 발명은 상기 과제를 달성하기 위하여, 데이터 버스에 연결된 멀티 포트의 각 포트가 동적 메모리의 각각 다른 뱅크로 데이터를 입출력시키는 방법에 있어서, 상기 동적 메모리로 상기 멀티 포트 중 제1 포트에 대해 액트(act) 명령을 인가하는 단계; 상기 액트 명령 후에 상기 동적 메모리로 상기 제1 포트에 대한 데이터 입출력 명령을 인가하는 단계; 및 데이터 입출력이 종료되면 상기 동적 메모리로 상기 제1 포트에 대한 프리-차지 명령을 인가하는 단계;를 포함하고, 상기 프리-차지 명령 전에 다른 포트에 대하여 상기 동적 메모리로 다른 포트에 대한 액트 명령을 인가함으로써, 상기 제1 포트의 액세스 중에 상기 다른 포트가 상기 동적 메모리로 액세스할 수 있도록 하는 것을 특징으로 하는 데이터 입출력 방법을 제공한다.Furthermore, in order to achieve the above object, the present invention provides a method for inputting / outputting data into different banks of dynamic memory in which each port of a multi-port connected to a data bus is provided. Applying an act command; Applying a data input / output command for the first port to the dynamic memory after the act command; And applying a pre-charge command for the first port to the dynamic memory when data input / output is terminated, and before the pre-charge command, execute an act command for another port to the dynamic memory for the other port. The data input / output method according to claim 1, wherein the other port is accessible to the dynamic memory during the access of the first port.

본 발명에 있어서, 데이터 입출력 방법은 상기 멀티 포트 중 2개의 포트가 상기 동적 메모리로 액세스를 시도 중인 경우에, 상기 제1 포트에 대한 데이터 입출력 명령 및 프리-차지 명령 단계 사이에 제2 포트에 대한 액트 명령을 인가하는 단계, 및 상기 제2 포트에 대한 데이터 입출력 명령을 인가하는 단계를 포함하고, 상기 제1 포트에 대한 프리-차지 명령 후에 제2 포트에 대한 프리-차지 명령을 인가하는 단계를 포함할 수 있다.According to the present invention, the data input / output method includes a method for a second port between a data input / output command and a pre-charge command step for the first port when two ports of the multi ports are attempting to access the dynamic memory. Applying an act command, and applying a data input / output command for the second port, and applying a pre-charge command for the second port after the pre-charge command for the first port. It may include.

또한, 데이터 입출력 방법은, 상기 멀티 포트 중 3개 이상의 포트가 상기 동적 메모리로 액세스를 시도 중인 경우에, 상기 제1 포트에 대한 프리-차지 명령을 인가하는 단계 전에 제2 포트에 대하여 액트 명령을 인가하는 단계, 상기 제2 포트에 대한 프리-차지 명령을 인가하는 단계 전에 제3 포트에 대한 액트 명령을 인가 하는 단계, 및 제n 포트에 대한 프리-차지 명령 수행 전에 제n+1 포트에 대한 액트 명령을 인가하는 단계를 포함할 수 있다.In addition, the data input / output method may, when three or more of the multi-ports are attempting to access the dynamic memory, issue an act command to the second port before applying the pre-charge command to the first port. Authorizing, acting on a third port prior to issuing a pre-charge command for the second port, and performing a pre-charge command on the nth port before performing an n + 1 port. And may apply the act command.

본 발명에 따른 동적 메모리 컨트롤러 및 그 동적 메모리 액세스 방법은 어떤 임의의 포트가 동적 메모리를 액세스하는 중에도 다른 포트로 미리 액트 명령을 인가함으로써, 종래 액세스 중인 포트에 대한 프리 차지 명령 때까지 기다림으로써 발생했던 시간 낭비를 현저히 감소시킬 수 있다.The dynamic memory controller and its dynamic memory access method according to the present invention have been generated by waiting for a precharge command for a port being accessed by issuing an Act command to another port in advance even while any arbitrary port is accessing the dynamic memory. The waste of time can be significantly reduced.

그에 따라, 본 발명의 동적 메모리 컨트롤러 및 그 동적 메모리 액세스 방법은 동적 메모리 활용, 액세스 시간 단축 및 프로세서와의 원활한 소통을 가능하게 함으로써, 멀티미디어 어플리케이션 프로세서를 비롯한 동적 메모리를 이용하는 여러 어플리케이션 프로세서에 유용하게 활용될 수 있다.Accordingly, the dynamic memory controller and the dynamic memory access method of the present invention can be utilized in various application processors using dynamic memory, including multimedia application processor, by enabling dynamic memory utilization, shortening the access time, and smooth communication with the processor. Can be.

이하에서는 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다. 이하의 설명에서 어떤 구성 요소가 다른 구성 요소에 연결된다고 기술될 때, 이는 다른 구성 요소와 바로 연결될 수도 있지만, 그 사이에 제3의 구성 요소가 개재될 수도 있다. 또한, 도면에서 각 구성 요소의 구조나 크기는 설명의 편의 및 명확성을 위하여 과장되었고, 설명과 관계없는 부분은 생략되었다. 도면상에서 동일 부호는 동일한 요소를 지칭한다. 한편, 사용되는 용어들은 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following description, when a component is described as being connected to another component, it may be directly connected to another component, but a third component may be interposed therebetween. In addition, in the drawings, the structure or size of each component is exaggerated for convenience and clarity of explanation, and parts irrelevant to the description are omitted. Like numbers refer to like elements in the figures. It is to be understood that the terminology used is for the purpose of describing the present invention only and is not used to limit the scope of the present invention.

도 1은 본 발명의 일 실시예에 따른 동적 메모리 컨트롤러 구조에 대한 개략적인 블럭도이다.1 is a schematic block diagram of a dynamic memory controller structure according to an embodiment of the present invention.

도 1을 참조하면, 본 실시예에 따른 동적 메모리 컨트롤러(100)는 인터페이스부(date I/F unit, 110) 및 입출력 제어부(130), 및 중재(Arbitration) 장치(120)를 포함한다. 여기서, 인터페이스부(110)는 적어도 2개 이상의 데이터 슬레이브 인터페이스(data slave I/F)를 구비하고, 입출력 제어부(130)는 동적 메모리(300)로의 데이터 입출력을 제어하며, 중재 장치는 입출력 제어부(130)와 인터페이스부(110) 사이를 연결한다.Referring to FIG. 1, the dynamic memory controller 100 according to the present exemplary embodiment includes an interface unit (date I / F unit) 110, an input / output controller 130, and an arbitration device 120. Here, the interface unit 110 includes at least two data slave I / Fs, the input / output controller 130 controls data input / output to the dynamic memory 300, and the mediation apparatus includes an input / output controller ( The connection between the 130 and the interface unit 110.

좀더 상세히 설명하면, 인터페이스부(110)는 2개 이상의 슬레이브 인터페이스(112)로 구성되어 데이터 버스(200), 예컨대 AHB(Advanced High performance Bus)에 멀티 포트를 통해 연결된다. 즉, 인터페이스부(110)는 멀티 포트 인터페이스이다. 한편, 인터페이스부(110)에는 레지스터로 연결된 레지스트 슬레이브 인터페이스(114)도 포함한다. 이러한 레지스트 슬레이브 인터페이스(114)는 AHB(200)에서 오는 레지스터 액세스 명령을 수신한다. 여기서, 데이터 버스로 AHB를 예로 들었으나, 데이터 버스가 AHB에만 한정되는 것은 아니다. 즉, 멀티 포트를 통해 연결될 수 있는 모든 종류의 데이터 버스가 본 실시예에 사용될 수 있다.In more detail, the interface unit 110 is composed of two or more slave interfaces 112 and connected to the data bus 200, for example, an advanced high performance bus (AHB) through a multi-port. In other words, the interface unit 110 is a multi-port interface. Meanwhile, the interface unit 110 also includes a resist slave interface 114 connected by a register. This resist slave interface 114 receives a register access command from the AHB 200. Here, the AHB is taken as an example of the data bus, but the data bus is not limited to the AHB. That is, all kinds of data buses that can be connected through multi-ports can be used in this embodiment.

인터페이스부(110)의 각 슬레이브 인터페이스(112)는 AHB(200)에서 오는 데이터 액세스 명령을 수신하여 동적 메모리, 예컨대 SDRAM(300)으로 액세스한다. 한편, SDRAM(300)으로 액세스는 동시적인 액세스가 아니라, 선택적인 액세스이다. 이러한 선택적 액세스를 위한 장치가 중재 장치(120)이다. 중재 장치(120)는 다중 포 트, 즉 다수의 슬레이브 인터페이스를 통해 입력된 데이터 액세스 명령 중 하나의 슬레이브 인터페이스의 액세스 명령만을 선택하여 다음 처리부, 즉 입출력 제어부(130)로 전달한다.Each slave interface 112 of the interface unit 110 receives a data access command from the AHB 200 and accesses the dynamic memory, such as the SDRAM 300. On the other hand, access to SDRAM 300 is a selective access, not a concurrent access. The device for such selective access is the arbitration device 120. The arbitration apparatus 120 selects only an access command of one slave interface among multiple ports, that is, data access commands input through a plurality of slave interfaces, and transmits the selected command to the next processor, that is, the input / output controller 130.

입출력 제어부(130)는 어드레스 매핑 컨트롤부(address mapping controll unit, 132), 어드레스 매핑부(address mapping unit, 134) 및 스테이트 머신(state machine, 136)을 포함한다. 이러한 입출력 제어부(130)는 슬레이브 인터페이스(112)으로부터 데이터 액세스 명령을 전달받아 SDRAM(300)으로의 실제적인 데이터 입출력을 제어하게 된다.The input / output controller 130 includes an address mapping control unit 132, an address mapping unit 134, and a state machine 136. The input / output controller 130 receives a data access command from the slave interface 112 to control actual data input / output to the SDRAM 300.

입출력 제어부(130)의 각 구성부분의 기능을 간단히 설명하면,Briefly explaining the functions of the respective components of the input and output control unit 130,

어드레스 매핑 컨트롤부(132)는 전달된 데이터 액세스 명령에 따라 적절하게 메모리, 즉 SDRAM의 시작 어드레스 및 어드레스 증가분을 결정한다. 또한, 어드레스 매핑부(134)는 어드레스 매핑 컨트롤부(132)에서 결정된 어드레스와 어드레스 증가분을 SDRAM(300) 데이터 입출력 명령 형식에 맞도록 변환한다. 한편, 스테이트 머신(136)은 입출력 제어부(130)의 최종 출력단으로서, 실제적인 SDRAM 데이터 입출력 명령어를 생성하여, SDRAM으로 데이터 입출력을 제어하게 된다. 예컨대, 데이터 입출력 명령어는 액트 명령, 읽기나 쓰기 등의 데이터 입출력 명령,및 프리-차지 명령이 있다.The address mapping controller 132 appropriately determines the start address and address increment of the memory, that is, the SDRAM, in accordance with the transferred data access command. In addition, the address mapping unit 134 converts the address and the address increment determined by the address mapping control unit 132 to conform to the SDRAM 300 data input / output command format. On the other hand, the state machine 136 is a final output terminal of the input / output control unit 130, generates an actual SDRAM data input and output command, and controls the data input and output to the SDRAM. For example, data input / output instructions include act instructions, data input / output instructions such as read or write, and pre-charge instructions.

한편, 동적 메모리 컨트롤러(100) 내부에 배치된 플레쉬 카운터(reflesh counter, 140)는 동적 메모리를 계속적 리플레쉬하는 기능을 한다. 리드 버퍼(read buffer, 150)는 SDRAM으로부터 출력된 데이터를 임시적으로 저장하여 어드레스 매 핑 컨트롤부(132)로 전달하는 기능을 한다.Meanwhile, the flash counter 140 disposed in the dynamic memory controller 100 continuously refreshes the dynamic memory. The read buffer 150 temporarily stores data output from the SDRAM and transfers the data to the address mapping control unit 132.

본 실시예의 동적 메모리 컨트롤러(1000)는 종래와 다르게 데이터 입출력 명령을 SDRAM(300)으로 인가함으로써, 멀티 포트가 빠르게 SDRAM(300)으로 액세스할 수 있도록 한다. 즉, SDRAM의 경우, 멀티 포트가 서로 다른 뱅크로 액세스를 시도하는 경우, 액트 명령은 현재 액세스 중인 포트에 대한 프리-차지 명령에 제한받지 않는다. 따라서, 액세스 중인 포트, 예컨대 제1 포트에 대한 프리-차지 명령을 받기 전에 다른 포트, 예컨대 제2 포트에 대한 액트 명령을 SDRAM으로 인가할 수 있다. 그에 따라, 제1 포트가 SDRAM에 액세스 중인 경우에도 제2 포트가 SDRAM으로 액세스하도록 할 수 있다. 물론, 제2 포트에 의한 데이터의 입출력은 액세스 중인 제1 포트에 의한 실질적인 데이터 입출력이 수행된 이후에 가능하다. 그러나, 제1 포트의 프리-차지 명령 전에 제2 포트에 대한 액트 명령이 인가되고 제1 포트의 데이터 입출력 후에 바로 제2 포트에 대한 데이터 입출력이 수행됨으로써, 종래에 비해 멀티 포트, 즉 슬레이브 인터페이스들이 매우 빠르게 SDRAM으로의 액세스할 수 있다.Unlike the conventional method, the dynamic memory controller 1000 applies a data input / output command to the SDRAM 300 so that the multi-port can quickly access the SDRAM 300. That is, in the case of SDRAM, when multiple ports attempt to access different banks, the act command is not limited to the pre-charge command for the port currently being accessed. Thus, an act command for another port, for example a second port, may be applied to the SDRAM before receiving a pre-charge command for the port being accessed, for example the first port. Accordingly, even if the first port is accessing the SDRAM, the second port can be accessed to the SDRAM. Of course, input / output of data by the second port is possible after substantial data input / output by the first port being accessed is performed. However, the act command for the second port is applied before the pre-charge command of the first port and the data input / output for the second port is performed immediately after the data input / output of the first port. Very fast access to SDRAM.

멀티 포트가 SDRAM으로 액세스하는 과정에 대한 설명은 도 2 및 3에 대한 설명부분에서 타이밍도를 통해 좀더 자세히 설명한다.A description of the process of accessing the SDRAM to the SDRAM will be described in more detail through a timing diagram in the description of FIGS. 2 and 3.

본 실시예에서는 SDRAM을 예를 들어 설명하였지만, 동적 메모리, 즉 2배속 동기식 동적 메모리(Double Date Rate-SDRAM: DDR-SDRAM), 2배속 동기식 동적 메모리2(Double Date Rate2-SDRAM: DDR2-SDRAM), 2배속 동기식 동적 메모리3(Double Date Rate3-SDRAM: DDR3-SDRAM) 등의 모든 동적 메모리에 본 실시예의 동적 메모리 컨트롤러가 적용될 수 있음은 물론이다.In the present embodiment, the SDRAM has been described as an example, but dynamic memory, that is, double date synchronous dynamic memory (Double Date Rate-SDRAM: DDR-SDRAM), double speed synchronous dynamic memory 2 (Double Date Rate 2-SDRAM: DDR2-SDRAM) Of course, the dynamic memory controller of the present embodiment can be applied to all dynamic memories such as double speed synchronous dynamic memory 3 (Double Date Rate 3-SDRAM).

도 2는 도 1의 동적 메모리 컨트롤러를 통해 2개의 포트가 동적 메모리로 액세스하는 타이밍도이다.FIG. 2 is a timing diagram in which two ports access dynamic memory through the dynamic memory controller of FIG. 1.

도 2를 참조하면, 포트 0, 즉 제1 포트가 동적 메모리로 액세스하여 데이터를 쓰고 있는 중에, 포트 1, 즉 제2 포트에 대한 액트 명령(ACT B1)이 인가된다. 또한, 제1 포트에 대한 실질적인 데이터 쓰기가 끝난 뒤에 바로 제2 포트에 대한 쓰기 명령(WR_CMD B1)이 인가되어 데이터 쓰기가 진행된다. 그 다음 제1 포트에 대한 프리-차지 명령(PRE B0)가 인가되고, 제2 포트에 대한 데이터 쓰기가 끝나면 제2 포트에 대한 프리-차지 명령(PRE B1)이 인가되어 제2 포트에 대한 SDRAM으로의 데이터 입출력이 종료된다.Referring to FIG. 2, while the port 0, that is, the first port is accessing and writing data to the dynamic memory, an act command ACT B1 is applied to the port 1, the second port. In addition, a write command WR_CMD B1 for the second port is applied immediately after the actual writing of the data to the first port is completed, and data writing is performed. Then, the pre-charge command PRE B0 is applied to the first port, and when the writing of data to the second port is finished, the pre-charge command PRE B1 is applied to the second port so that the SDRAM for the second port is applied. I / O to the data is terminated.

종래에는 제2 포트에 대한 액트 명령이 제1 포트에 대한 프리-차지 명령 후에 인가되었기 때문에 클록 타이밍 T8 이후에나 제2 포트에 대한 액세스가 가능하고, 실질적이 데이터 쓰기는 그 후에 이루어졌다. 그러나, 본 실시예의 동적 메모리 컨트롤러를 이용하여 액세스하는 경우, 클록 타이밍 T3 이후부터 제2 포트에 대한 액트 명령이 인가됨으로써, 제1 포트에 대한 실질적인 데이터 쓰기가 종료된 뒤 바로 제2 포트에 대한 데이터 쓰기가 진행될 수 있다. 따라서, 제1 포트에 대한 데이터 쓰기 이후의 프리-차지에 대한 명령까지의 시간 및 그 후 제2 포트에 대한 액트 명령까지의 시간이 단축될 수 있다.Conventionally, since the act command for the second port was issued after the pre-charge command for the first port, access is possible after the clock timing T8 or the second port, and the data write was subsequently made. However, when accessing using the dynamic memory controller of the present embodiment, the act command for the second port is applied after the clock timing T3, so that the data for the second port immediately after the write of the actual data to the first port is finished. Writing can proceed. Thus, the time until the command for pre-charge after writing data to the first port and then the time until the act command for the second port can be shortened.

도면상, 제2 포트에 대한 액트 명령이 제1 포트 데이터 쓰기 명령(WR_CMD B0) 바로 다음 클록에 되시되었지만, 제1 포트의 데이터 쓰기 진행 중이면 어떤 클 록에 와도 상관없다. 또한, 제2 포트에 대한 데이터 쓰기 명령(WR_CMD B1)도 제1 포트에 대한 쓰기 종료 후의 어느 클록에 와도 상관없다. 다만, 제2 포트에 대한 액세스가 되도록 빨리 이루어지기 위해서, 제1 포트에 대한 데이터 쓰기 종료 후의 바로 다다음 클록에 제2 포트에 대한 데이터 쓰기 명령이 인가되는 것이 바람직하다. 결론적으로, 액세스 중인 포트에 대한 프리-차지 명령 전에 어느 클록에서도 다른 포트에 대한 액트 명령 및 데이터 쓰기 명령이 인가될 수 있다. 다만, 데이터 쓰기 명령은 전술한 바와 같이 액세스 중 포트에 대한 실질적인 데이터 쓰기가 종료된 후에만 인가될 수 있다. 지금까지 데이터 쓰기에 대한 것만 설명하였지만, 데이터 읽기도 동일한 원리가 적용될 수 있음은 물론이다.In the figure, the act command for the second port is written to the clock immediately after the first port data write command WR_CMD B0, but it may be in any clock if data write in progress of the first port is in progress. Further, the data write command WR_CMD B1 for the second port may also be at any clock after the end of writing to the first port. However, in order to make access to the second port as fast as possible, it is preferable that a data write command for the second port is applied to the next clock immediately after the end of the data write for the first port. In conclusion, an Act command and a Data Write command for another port may be authorized at any clock before the pre-charge command for the port being accessed. However, as described above, the data write command may be applied only after the actual data write to the port is terminated during the access. Although only the data writing is described so far, the same principle can be applied to data reading.

도 3은 도 1의 동적 메모리 컨트롤러를 통해 3개의 포트가 동적 메모리로 액세스하는 타이밍도이다.3 is a timing diagram in which three ports access dynamic memory through the dynamic memory controller of FIG. 1.

도 3을 참조하면, 포트 0, 즉 제1 포트에 대한 데이터 쓰기 명령 후에 포트 1, 즉 제2 포트에 대한 액트 명령이 인가되고, 제1 포트에 대한 데이터 쓰기 종료 후 바로 제2 포트에 대한 데이터 쓰기 명령이 인가되며, 그 다음에 제1 포트에 대한 프리-차지 명령이 인가된다. 한편, 제1 포트에 대한 프리-차지 명령 후에 바로 포트 2, 즉 제3 포트에 대한 액트 명령이 인가되며, 제2 포트에 대한 데이터 쓰기가 종료되면, 제3 포트에 대한 데이터 쓰기 명령이 인가되고 그 다음에 제2 포트에 대한 프리-차지 명령이 인가된다. 최종적으로 제3 포트에 대한 데이터 쓰기가 종료되면 제3 포트에 대한 프리-차지 명령이 인가된다.Referring to FIG. 3, after a data write command for port 0, that is, a first port, an act command for port 1, that is, a second port, is applied, and data for the second port immediately after completion of data write for the first port. A write command is authorized, followed by a pre-charge command for the first port. On the other hand, immediately after the pre-charge command for the first port, an act command for port 2, that is, a third port, is applied, and when data writing to the second port ends, a data write command for the third port is applied. Then a pre-charge command for the second port is applied. Finally, when data writing to the third port is terminated, a pre-charge command for the third port is applied.

도면상의 타이밍도는 3개의 포트가 동적 메모리로 액세스를 하는 경우를 예 를 들었지만, 그 이상의 포트가 액세스를 시도하는 경우에도 동일한 순서로 데이터 입출력 명령이 인가될 수 있다. 즉, 제2 포트에 대한 프리-차지 명령(PRE B1) 후에 제4 포트에 대한 액트 명령이 인가되고, 제3 포트에 대한 데이터 쓰기가 종료되면 제4 포트에 대한 데이터 쓰기 명령이 인가되는 식으로 계속적인 동적 메모리 액세스가 가능하다.Although the timing diagram in the figure illustrates a case where three ports access dynamic memory, data input / output commands may be applied in the same order even when more ports attempt access. That is, an act command for the fourth port is applied after the pre-charge command PRE B1 for the second port, and a data write command for the fourth port is applied when data writing to the third port is terminated. Continuous dynamic memory access is possible.

한편, 이러한 3개 이상의 멀티 포트의 액세스 동작이 도시된 타이밍도에 한정되는 것은 아니다. 즉, 현재 액세스 중인 포트에 대한 프리-차지 명령 전에 다음 액세스할 포트에 대한 액트 명령 및 데이터 쓰기 명령이 어떤 클록에도 위치할 수 있음은 물론이다. 다만, 전술한 대로 데이터 쓰기 명령은 액세스 중인 포트의 실질적인 데이터 쓰기가 종료된 후에 가능함으로, 차기 액세스 포트에 대한 데이터 쓰기 명령은 액세스 중인 포트의 데이터 쓰기가 종료된 바로 다다음 클록에 위치하는 것이 바람직하다.Meanwhile, such three or more multi-port access operations are not limited to the illustrated timing diagram. That is, the act command and the data write command for the next port to be accessed may be located at any clock before the pre-charge command for the port currently being accessed. However, as described above, the data write command is possible after the actual data write of the accessing port is finished. Therefore, the data write command for the next access port is preferably located at the next clock immediately after the data write of the accessing port is finished. Do.

지금까지, 클록 타이밍도를 통해 설명한 바와 같이, 본 실시예의 동적 메모리 컨트롤러는 액세스 중인 포트에 대한 프리-차지 명령 전에 다른 포트에 대한 액트 명령 또는 데이터 쓰기 명령을 인가함으로써, 멀티 포트의 각각의 슬레이브 인터페이스들이 빠르게 동적 메모리로 액세스할 수 있도록 한다. 따라서, 멀티 포트를 통해 SDRAM으로 액세스하는 멀티미디어 어플리케이션 프로세서(MAP) 장치나 복잡한 SoC(System on Chip) 시스템 등의 모든 컴퓨터 프로세서 장치 또는 시스템에서, 본 실시예의 동적 메모리 컨트롤러는 데이터 버스의 활용성(bus utilization)을 높일 수 있고, 또한 고속의 프로세서와의 원활한 소통을 가능케 한다.Up to now, as explained through the clock timing diagram, the dynamic memory controller of this embodiment applies each of the slave interfaces of the multi-port by applying an Act command or a data write command to another port before the pre-charge command to the port being accessed. To allow them to access dynamic memory quickly. Thus, in any computer processor device or system, such as a multimedia application processor (MAP) device or a complex System on Chip (SoC) system, that accesses SDRAM through multiple ports, the dynamic memory controller of the present embodiment may utilize the data bus. utilization, and also enables smooth communication with high speed processors.

도 4는 본 발명의 다른 실시예에 따른 도 1의 동적 메모리 컨트롤러를 포함한 멀티미디어 어플리케이션 프로세서 장치에 대한 블럭도이다.4 is a block diagram of a multimedia application processor device including the dynamic memory controller of FIG. 1 according to another embodiment of the present invention.

도 4를 참조하면, 본 실시예의 멀티미디어 어플리케이션 프로세서(Multi-media Application Processor: MAP) 장치는 코어 프로세서(CPU, 4100), DMA(Direct Memory Access: 4200) 등을 구비한 프로세서부(4000), 동적 메모리(2100), 낸드 플래시(2200) 등을 구비한 메모리부(2000) 및 동적 메모리 컨트롤러(100), 낸드 플래드 메모리 컨트롤러(200) 등을 구비한 컨트롤러부(1000) 및 컨트롤러부(1000)의 각 구성요소들과 프로세서부(4000)의 각 구성요소들을 연결시키는 데이터 버스(3000)를 포함한다.Referring to FIG. 4, the multimedia application processor (MAP) device of the present embodiment may include a processor unit 4000 including a core processor (CPU) 4100, a direct memory access (DMA) 4200, and the like. The memory unit 2000 including the memory 2100, the NAND flash 2200, and the like, and the controller unit 1000 and the controller unit 1000 including the dynamic memory controller 100 and the NAND flash memory controller 200. It includes a data bus 3000 that connects each component of the and the components of the processor 4000.

데이터 버스(3000), 예컨대 AHB는 멀티 포트를 통해 컨트롤러부(1000)의 각 구성요소들과 연결되며, 또한 컨트롤러부(1000) 내의 각 구성요소들 각각으로도 멀티 포트를 통해 연결된다. 예컨대, 동적 메모리 컨트롤러(100) 내의 다수의 슬레이브 인터페이스와 멀티 포트를 통해 연결된다. 한편, 데이터 버스(3000)가 전술한 바와 같이 AHB에 한정되는 것은 아니다.The data bus 3000, for example, AHB, is connected to each component of the controller unit 1000 through a multi-port, and is also connected to each of the components in the controller unit 1000 through a multi-port. For example, a plurality of slave interfaces in the dynamic memory controller 100 are connected through a multi port. On the other hand, the data bus 3000 is not limited to the AHB as described above.

본 실시예의 멀티미디어 어플리케이션 프로세서 장치의 동적 메모리 컨트롤러(100)는 도 1에서 설명한 구조를 가지고 동적 메모리(2100), 예컨대 SDRAM으로 슬레이브 인터페이스의 각 포트를 액세스시킨다. 동적 메모리 컨트롤러(100)가 각 포트를 SDRAM으로 액세스시키는 방법은 도 2 및 도 3에서 설명한 바와 같다. 한편, 여기서의 동적 메모리도 SDRAM에 한정되는 것이 아니라, 2배속 동기식 동적 메모리(Double Date Rate-SDRAM: DDR-SDRAM), 2배속 동기식 동적 메모리2(Double Date Rate2-SDRAM: DDR2-SDRAM), 2배속 동기식 동적 메모리3(Double Date Rate3-SDRAM: DDR3-SDRAM) 등의 멀티 포트를 사용하는 모든 동적 메모리가 해당된다.The dynamic memory controller 100 of the multimedia application processor device of the present embodiment has the structure described with reference to FIG. 1 to access each port of the slave interface to the dynamic memory 2100, for example, SDRAM. The dynamic memory controller 100 accesses each port to the SDRAM as described with reference to FIGS. 2 and 3. Meanwhile, the dynamic memory here is not limited to SDRAM, but double-speed synchronous dynamic memory (Double Date Rate-SDRAM: DDR-SDRAM), double-speed synchronous dynamic memory 2 (Double Date Rate2-SDRAM: DDR2-SDRAM), 2 Any dynamic memory using multiple ports, such as Double Date Rate 3-SDRAM (DDR3-SDRAM) is applicable.

따라서, 본 실시예의 멀티미디어 어플리케이션 프로세서 장치는 SDRAM과 같은 동적 메모리를 주메모리로 이용하고 또한, 전술한 동적 메모리 컨트롤러(100)를 통해 그 동적 메모리로 액세스를 제어한다. 그에 따라, 본 실시예의 멀티미디어 어플리케이션 프로세서 장치는 코어 프로세서(4100) 또는 멀티 미디어에 관계된 각종 주변 장치 등과 동적 메모리 사이에 데이터 전송을 멀티 포트를 통해 고속으로 원활하게 수행할 수 있다.Therefore, the multimedia application processor device of the present embodiment uses a dynamic memory such as SDRAM as the main memory and controls access to the dynamic memory through the dynamic memory controller 100 described above. Accordingly, the multimedia application processor device of the present embodiment can smoothly and efficiently transmit data between the core processor 4100 or various peripheral devices related to the multimedia and the like through dynamic ports.

도 5a는 본 발명의 또 다른 실시예에 따른 2개 포트가 동적 메모리로 액세스하는 과정을 보여주는 흐름도이다.5A is a flowchart illustrating a process in which two ports access dynamic memory according to another embodiment of the present invention.

도 5a를 참조하면, 본 실시예는 먼저, 제1 포트에 대한 액트 명령을 동적 메모리로 인가하고(S100), 다음 제1 포트에 대한 데이터 입출력 명령, 예컨대 쓰기 또는 읽기 명령을 동적 메모리로 인가한다(S110). 다음, 제1 포트에 대한 프리-차지 명령 전에 제2 포트에 대한 액트 명령을 인가하고(S120), 제1 포트에 대한 데이터 입출력이 끝나면 제2 포트에 대한 데이터 입출력 명령을 동적 메모리로 인가한다(S130).Referring to FIG. 5A, the present embodiment first applies an act command for a first port to a dynamic memory (S100), and then applies a data input / output command, for example, a write or read command, for a next port to a dynamic memory. (S110). Next, an act command for the second port is applied before the pre-charge command for the first port (S120), and when data input / output for the first port is completed, the data input / output command for the second port is applied to the dynamic memory ( S130).

그 후, 제1 포트에 대한 프리-차지 명령을 인가하고(S140), 계속해서 제2 포트에 대한 데이터 입출력이 종료되면, 제2 포트에 대한 프리-차지 명령을 최종적으로 동적 메모리로 인가함으로써(S150), 제1 및 제2 포트에 대한 동적 메모리 액세스가 종료된다.Thereafter, a pre-charge command for the first port is applied (S140), and when data input / output for the second port is terminated, the pre-charge command for the second port is finally applied to the dynamic memory ( S150), dynamic memory access to the first and second ports is terminated.

본 실시예의 2개의 포트를 통한 동적 메모리 액세스 방법은 액세스 중인 제1 포트에 대한 프리-차지 명령이 인가되기 전에 제2 포트에 대한 액트 명령이 미리 동적 메모리로 인가됨으로써, 종래의 제1 포트에 대한 프리-차지 명령을 기다리면서 낭비했던 액세스 시간을 획기적으로 감소시킬 수 있다.In the dynamic memory access method through the two ports of the present embodiment, the act command for the second port is previously applied to the dynamic memory before the pre-charge command for the first port being accessed is applied, so that The waste of access time wasted while waiting for the pre-charge command.

도 5b는 도 5a의 2개의 포트를 N개로 확장한 경우에 N개의 포트가 동적 메모리로 액세스하는 과정을 보여주는 흐름도이다.FIG. 5B is a flowchart illustrating a process in which N ports access dynamic memory when two ports of FIG. 5A are expanded to N ports.

도 5b를 참조하면, 본 실시예의 액세스 방법은 포트를 3개 이상으로 확대한 경우로, 기본 원리는 도 5a와 유사하다. 좀더 상세히 설명하면, N이 1인 경우, 제1 포트에 대한 프리-차지 명령을 동적 메모리로 인가하는 과정(S240)까지는 앞서, 도 5a의 과정과 동일하다. 그러나 액세스를 시도하는 포트가 더 늘어난 경우, N+1 포트, 즉 제2 포트가 최종 액세스를 시도하는 포트인가를 판단한 후(S250), 만약 액세스를 시도하는 다음 포트, 즉 제3 포트가 있는 경우, 즉 제1 포트에 대한 프리-차지 명령 후에 제3 포트에 대한 액트 명령이 수행된다(S220). Referring to FIG. 5B, the access method of the present embodiment is a case where the port is expanded to three or more, and the basic principle is similar to that of FIG. 5A. In more detail, when N is 1, the process of applying a pre-charge command for the first port to the dynamic memory (S240) is the same as the process of FIG. 5A. However, if more ports are attempted to access, after determining whether the N + 1 port, that is, the second port is the port to which the last access is attempted (S250), and if there is a next port to access, that is, a third port That is, the act command for the third port is performed after the pre-charge command for the first port (S220).

이러한 과정은 최종 포트가 나타날 때까지 계속되고, 만약 N+1 포트가 최종 포트인 경우, N+1에 대한 프리-차지 명령이 동적 메모리로 인가됨으로써(S260), 모든 포트에 대한 액세스 과정은 종료된다.This process continues until the last port appears, and if the N + 1 port is the last port, the pre-charge command for N + 1 is applied to the dynamic memory (S260), thereby completing the access process for all ports. do.

본 실시예의 동적 메모리 액세스 방법은 3개 이상의 멀티 포트가 동적 메모리 컨트롤러를 통해 동적 메모리로 액세스하는 하나의 예시를 보여주고 있는 것이다. 따라서, 액세스 중인 포트에 대한 프리-차지 명령이 인가되기 전에 다른 포트에 대한 액트 명령이 동적 메모리로 인가되기만 한다면, 본 실시예와 다른 순서를 통해 여러 포트가 동적 메모리로 액세스할 수 있음은 물론이다.The dynamic memory access method of this embodiment shows an example in which three or more multi-ports access dynamic memory through a dynamic memory controller. Therefore, as long as the act instruction for the other port is applied to the dynamic memory before the pre-charge instruction for the port being accessed is granted, the various ports can access the dynamic memory through a different order from the present embodiment. .

본 실시예의 동적 메모리 액세스 방법은 액세스를 시도하는 멀티 포트가 3개 이상인 경우에도 포트가 2개일 때 동일한 방법으로 동적 메모리에 고속으로 액세스할 수 있음을 보여주며, 또한 3개 이상일 때, 동적 메모리로의 액세스 시간을 더욱 감축시킬 수 있음을 알 수 있다.The dynamic memory access method of this embodiment shows that even when there are three or more multi-ports attempting to access, the dynamic memory can be accessed at high speed in the same manner when two ports are used. It can be seen that it is possible to further reduce the access time of.

지금까지, 본 발명을 도면에 표시된 실시예를 참고로 설명하였으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.So far, the present invention has been described with reference to the embodiments shown in the drawings, which are merely exemplary, and those skilled in the art will understand that various modifications and equivalent other embodiments are possible therefrom. . Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.

도 1은 본 발명의 일 실시예에 따른 동적 메모리 컨트롤러 구조에 대한 개략적인 블럭도이다.1 is a schematic block diagram of a dynamic memory controller structure according to an embodiment of the present invention.

도 2는 도 1의 동적 메모리 컨트롤러를 통해 2개의 포트가 동적 메모리로 액세스하는 타이밍도이다.FIG. 2 is a timing diagram in which two ports access dynamic memory through the dynamic memory controller of FIG. 1.

도 3은 도 1의 동적 메모리 컨트롤러를 통해 3개의 포트가 동적 메모리로 액세스하는 타이밍도이다.3 is a timing diagram in which three ports access dynamic memory through the dynamic memory controller of FIG. 1.

도 4는 본 발명의 다른 실시예에 따른 도 1의 동적 메모리 컨트롤러를 포함한 멀티미디어 어플리케이션 프로세서 장치에 대한 블럭도이다.4 is a block diagram of a multimedia application processor device including the dynamic memory controller of FIG. 1 according to another embodiment of the present invention.

도 5a는 본 발명의 또 다른 실시예에 따른 2개 포트가 동적 메모리로 액세스하는 과정을 보여주는 흐름도이다.5A is a flowchart illustrating a process in which two ports access dynamic memory according to another embodiment of the present invention.

도 5b는 도 5a의 2개의 포트를 N개로 확장한 경우에 N개의 포트가 동적 메모리로 액세스하는 과정을 보여주는 흐름도이다.FIG. 5B is a flowchart illustrating a process in which N ports access dynamic memory when two ports of FIG. 5A are expanded to N ports.

Claims (17)

데이터 버스에 멀티 포트를 통해 연결된 적어도 2개의 데이터 슬레이브 인터페이스(data slave I/F)를 구비한 인터페이스부(date I/F unit); 및An interface unit (date I / F unit) having at least two data slave I / Fs connected to the data bus via multiple ports; And 상기 멀티 포트의 각 포트가 동적 메모리의 각각 다른 뱅크(bank)로 액세스할 수 있도록 상기 인터페이스부 및 동적 메모리(Dynamic RAM: DRAM) 사이에 연결되어, 액트(act), 데이터 입출력, 및 프리-차지(pre) 명령을 통해 상기 동적 메모리로의 데이터 입출력을 제어하는 입출력 제어부;를 포함하고,Connected between the interface unit and dynamic RAM (DRAM) to allow each port of the multi-port to access a different bank of dynamic memory, And an input / output controller configured to control data input / output to the dynamic memory through an act, data input / output, and pre-charge command. 상기 입출력 제어부는 상기 멀티 포트 중 제1 포트가 상기 동적 메모리의 제1 뱅크에 액세스 중에 다른 포트들에 대한 액트(act) 명령을 상기 동적 메모리에 인가함으로써, 상기 제1 포트의 액세스 종료 전에도 상기 다른 포트들이 상기 동적 메모리의 다른 뱅크에 액세스할 수 있도록 하는 것을 특징으로 하는 동적 메모리 컨트롤러.The input / output controller may include a first port of the multiports in a first bank of the dynamic memory. Applying an act instruction to other dynamic ports during access to the dynamic memory, thereby allowing the other ports to access another bank of the dynamic memory even before the access of the first port is terminated controller. 제1 항에 있어서,The method according to claim 1, 상기 동적 메모리는 동기식 동적 메모리(Synchronous DRAM: SDRAM), 2배속 동기식 동적 메모리(Double Date Rate-SDRAM: DDR-SDRAM), 2배속 동기식 동적 메모리2(Double Date Rate2-SDRAM: DDR2-SDRAM), 2배속 동기식 동적 메모리3(Double Date Rate3-SDRAM: DDR3-SDRAM) 중 적어도 어느 하나인 것을 특징으로 하는 동적 메모리 컨트롤러.The dynamic memory may be a synchronous dynamic memory (SDRAM), a double speed synchronous dynamic memory (Double Date Rate-SDRAM: DDR-SDRAM), a double speed synchronous dynamic memory (Double Date Rate 2-SDRAM: DDR2-SDRAM), 2 A dynamic memory controller, characterized in that at least one of double speed synchronous dynamic memory 3 (Double Date Rate 3-SDRAM). 제1 항에 있어서,The method according to claim 1, 동적 메모리 컨트롤러는,Dynamic memory controller, 상기 인터페이스부 및 입출력 제어부 사이에 연결되어 상기 데이터 슬레이브 인터페이스를 상기 입출력 제어부로 선택적으로 연결시키는 중재(Arbitration) 장치를 더 포함하는 것을 특징으로 하는 동적 메모리 컨트롤러.And an arbitration device connected between the interface unit and the input / output control unit to selectively connect the data slave interface to the input / output control unit. 제1 항에 있어서,The method according to claim 1, 상기 데이터 버스는 AHB(Advanced High performance Bus)이고,The data bus is an AHB (Advanced High performance Bus), 상기 입출력 제어부는 상기 AHB로부터 명령에 따라 동적 메모리의 시작 어드레스 및 어드레스 증가분을 결정하는 어드레스 매핑 컨트롤부(address mapping control unit), 상기 어드레스 매핑 컨트롤부에서 결정된 어드레스와 어드레스 증가분을 상기 동적 메모리 명령 형식에 맞도록 변환하는 어드레스 매핑부(address mapping unit), 및 상기 멀티 포트를 상기 동적 메모리로 액세스시키기 위한 상기 액트(act), 데이터 입출력 및 프리-차지(pre) 명령 신호를 구비한 데이터 입출력 신호를 생성시키는 스테이트 머신부(state machine unit)을 포함하는 것을 특징으로 하는 동적 메모리 컨트롤러.The input / output controller may include an address mapping control unit for determining a start address and an address increment of a dynamic memory according to a command from the AHB, and converting the address and address increment determined by the address mapping control unit into the dynamic memory command format. Generating a data input / output signal having an address mapping unit which converts to fit, and the act, data input / output and pre-charge command signals for accessing the multi-port to the dynamic memory. A dynamic memory controller comprising a state machine unit. 제4 항에 있어서,5. The method of claim 4, 상기 멀티 포트 중 2개의 포트가 상기 동적 메모리로 액세스를 시도 중인 경우에,When two of the multi-ports are trying to access the dynamic memory, 액세스 중인 상기 제1 포트에 대한 프리-차지 명령 수행 전에 제2 포트에 대한 액트 명령을 상기 동적 메모리로 인가하는 것을 특징으로 하는 동적 메모리 컨 트롤러.And apply an act command for a second port to the dynamic memory before performing a pre-charge command for the first port being accessed. 제5 항에 있어서,6. The method of claim 5, 데이터 입출력을 위한 제어 신호는 상기 제1 포트에 대한 액트 명령, 상기 제1 포트에 대한 데이터 입출력 명령, 제2 포트에 대한 액트 명령, 상기 제2 포트에 대한 데이터 입출력 명령, 상기 제1 포트에 대한 프리-차지 명령 및 상기 제2 포트에 대한 프리-차지 명령 순으로 인가되는 것을 특징으로 하는 동적 메모리 컨트롤러.The control signal for data input / output may include an act command for the first port, a data input / output command for the first port, an act command for the second port, a data input / output command for the second port, and a command for the first port. And a pre-charge command for the second port and a pre-charge command for the second port. 제4 항에 있어서,5. The method of claim 4, 상기 멀티 포트 중 3개 이상의 포트가 상기 동적 메모리로 액세스를 시도 중인 경우에,When three or more of the multi-ports are trying to access the dynamic memory, 데이터 입출력을 위한 제어 신호는 액세스 중인 상기 제1 포트에 대한 프리-차지 명령 수행 전에 제2 포트에 대한 액트 명령, 상기 제2 포트에 대한 프리-차지 명령 수행 전에 제3 포트에 대한 액트 명령, 및 제n 포트에 대한 프리-차지 명령 수행 전에 제n+1 포트에 대한 액트 명령 순으로 인가되는 것을 특징으로 하는 동적 메모리 컨트롤러.The control signal for data input / output may include an act command for a second port before performing a pre-charge command for the first port being accessed, an act command for a third port before performing a pre-charge command for the second port, and Dynamic memory controller, characterized in that is applied in the order of act command for the n + + 1 port before performing the pre-charge command for the n-th port. 제6 항 또는 제 7항에 있어서,The method according to claim 6 or 7, 상기 데이터 입출력 명령은 데이터의 크기에 따라 상기 프리-차지 명령들 사 이에 선택적으로 인가될 수 있는 것을 특징으로 하는 동적 메모리 컨트롤러.The data input / output command may be selectively applied between the pre-charge commands according to the size of data. 제1 항에 있어서,The method according to claim 1, 상기 동적 메모리 컨트롤러는 멀티 포트를 통한 상기 동적 메모리로 액세스 방식을 사용하는 컴퓨터 프로세서 장치에 이용되는 것을 특징으로 하는 동적 메모리 컨트롤러. The dynamic memory controller is used in a computer processor device that uses an access method to the dynamic memory through a multi-port. 제1 항에 있어서,The method according to claim 1, 상기 데이터 슬레이브는 멀티 포트를 통해 데이터 버스로 연결되고,The data slave is connected to the data bus through the multi port, 상기 입출력 제어부는 상기 인터페이스부 및 동적 메모리 사이에 연결되어 상기 멀티 포트의 각 포트가 상기 동적 메모리의 각각 다른 뱅크로 액세스할 수 있도록 제어하는 것을 특징으로 하는 동적 메모리 컨트롤러.And the input / output control unit is connected between the interface unit and the dynamic memory to control each port of the multi-port to access different banks of the dynamic memory. 코어 프로세서를 구비한 프로세서부;A processor unit having a core processor; 동적 메모리를 구비한 메모리부;A memory unit having a dynamic memory; 제1 항의 동적 메모리 컨트롤러를 구비한 컨트롤러부; 및A controller unit having a dynamic memory controller of claim 1; And 상기 컨트롤러부의 각 구성요소들과 상기 프로세서부의 각 구성요소들을 연결시키는 데이터 버스;를 포함하는 하는 멀티미디어 어플리케이션 프로세서(MAP) 장치.And a data bus connecting the respective components of the controller unit and the respective components of the processor unit. 데이터 버스에 연결된 멀티 포트의 각 포트가 동적 메모리의 각각 다른 뱅크로 데이터를 입출력시키는 방법에 있어서,A method in which each port of a multiport connected to a data bus inputs and outputs data to different banks of dynamic memory, 상기 동적 메모리로 상기 멀티 포트 중 제1 포트에 대해 액트(act) 명령을 인가하는 단계;Applying an act command to the dynamic memory for a first port of the multi-ports; 상기 액트 명령 후에 상기 동적 메모리로 상기 제1 포트에 대한 데이터 입출력 명령을 인가하는 단계; 및Applying a data input / output command for the first port to the dynamic memory after the act command; And 데이터 입출력이 종료되면 상기 동적 메모리로 상기 제1 포트에 대한 프리-차지 명령을 인가하는 단계;를 포함하고,And applying a pre-charge command to the first port to the dynamic memory when data input / output is terminated. 상기 프리-차지 명령 전에 상기 동적 메모리로 다른 포트에 대한 액트 명령을 인가함으로써, 상기 제1 포트가 상기 동적 메모리의 제1 뱅크에 액세스 중에 상기 다른 포트가 상기 동적 메모리의 다른 뱅크에 액세스할 수 있도록 하는 것을 특징으로 하는 데이터 입출력 방법.Applying an act instruction to another port to the dynamic memory before the pre-charge command, such that the other port can access another bank of the dynamic memory while the first port is accessing the first bank of the dynamic memory. Data input and output method characterized in that. 제12 항에 있어서,13. The method of claim 12, 상기 동적 메모리는 동기식 동적 메모리(Synchronous DRAM: SDRAM), 2배속 동기식 동적 메모리(Double Date Rate-SDRAM: DDR-SDRAM), 2배속 동기식 동적 메모리2(Double Date Rate2-SDRAM: DDR2-SDRAM), 2배속 동기식 동적 메모리3(Double Date Rate3-SDRAM: DDR3-SDRAM) 중 적어도 어느 하나인 것을 특징으로 하는 데이터 입출력 방법.The dynamic memory may be a synchronous dynamic memory (SDRAM), a double speed synchronous dynamic memory (Double Date Rate-SDRAM: DDR-SDRAM), a double speed synchronous dynamic memory (Double Date Rate 2-SDRAM: DDR2-SDRAM), 2 A data input / output method comprising at least one of double speed synchronous dynamic memory 3 (Double Date Rate 3-SDRAM). 제12 항에 있어서,13. The method of claim 12, 상기 액트(act), 입출력 및 프리-차지(pre) 명령 신호는 상기 동적 메모리로 상기 각 포트의 액세스 제어를 위한 데이터 입출력 신호로서, 상기 동적 메모리로 데이터 입출력을 제어하는 동적 메모리 컨트롤러의 스테이트 머신에서 발생시키는 것을 특징으로 하는 데이터 입출력 방법.The act, input / output, and pre-charge command signals are data input / output signals for access control of each port to the dynamic memory, and in a state machine of a dynamic memory controller controlling data input / output to the dynamic memory. And a data input / output method, characterized in that it is generated. 제12 항에 있어서,13. The method of claim 12, 데이터 입출력 방법은Data input / output method 상기 멀티 포트 중 2개의 포트가 상기 동적 메모리로 액세스를 시도 중인 경우에, When two of the multi-ports are trying to access the dynamic memory, 상기 제1 포트에 대한 데이터 입출력 명령 및 프리-차지 명령 단계 사이에 제2 포트에 대한 액트 명령을 인가하는 단계, 및 상기 제2 포트에 대한 데이터 입출력 명령을 인가하는 단계를 포함하고, Applying an act command for a second port between a data input / output command for the first port and a pre-charge command step, and applying a data input / output command for the second port, 상기 제1 포트에 대한 프리-차지 명령 후에 제2 포트에 대한 프리-차지 명령을 인가하는 단계를 포함하는 데이터 입출력 방법.And applying a pre-charge command for a second port after the pre-charge command for the first port. 제12 항에 있어서,13. The method of claim 12, 데이터 입출력 방법은,The data input / output method is 상기 멀티 포트 중 3개 이상의 포트가 상기 동적 메모리로 액세스를 시도 중인 경우에,When three or more of the multi-ports are trying to access the dynamic memory, 상기 제1 포트에 대한 프리-차지 명령을 인가하는 단계 전에 제2 포트에 대하여 액트 명령을 인가하는 단계, 상기 제2 포트에 대한 프리-차지 명령을 인가하는 단계 전에 제3 포트에 대한 액트 명령을 인가하는 단계, 및 제n 포트에 대한 프리-차지 명령 수행 전에 제n+1 포트에 대한 액트 명령을 인가하는 단계를 포함하는 것을 특징으로 하는 데이터 입출력 방법.The act instruction for the third port may be issued before the act of applying a pre-charge command to the second port, the act of applying a pre-charge command to the second port. And authorizing an act command for the n + 1th port prior to performing the pre-charge command for the nth port. 제15 항 또는 제 16항에 있어서,The method according to claim 15 or 16, 상기 데이터 입출력 명령은 데이터의 크기에 따라 상기 프리-차지 명령들 사이에 선택적으로 인가할 수 있는 것을 특징으로 하는 데이터 입출력 방법.The data input / output command may be selectively applied between the pre-charge commands according to the size of data.
KR1020080022143A 2008-03-10 2008-03-10 Dynamic memory controller, multi-media application processorMAP apparatus comprising the same controller, and method of accessing the same dynamic memory KR101065585B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080022143A KR101065585B1 (en) 2008-03-10 2008-03-10 Dynamic memory controller, multi-media application processorMAP apparatus comprising the same controller, and method of accessing the same dynamic memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080022143A KR101065585B1 (en) 2008-03-10 2008-03-10 Dynamic memory controller, multi-media application processorMAP apparatus comprising the same controller, and method of accessing the same dynamic memory

Publications (2)

Publication Number Publication Date
KR20090097004A KR20090097004A (en) 2009-09-15
KR101065585B1 true KR101065585B1 (en) 2011-09-19

Family

ID=41356522

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080022143A KR101065585B1 (en) 2008-03-10 2008-03-10 Dynamic memory controller, multi-media application processorMAP apparatus comprising the same controller, and method of accessing the same dynamic memory

Country Status (1)

Country Link
KR (1) KR101065585B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040008909A (en) * 2002-07-19 2004-01-31 주식회사 하이닉스반도체 Data processing unit and method with multi-request channel DMA

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040008909A (en) * 2002-07-19 2004-01-31 주식회사 하이닉스반도체 Data processing unit and method with multi-request channel DMA

Also Published As

Publication number Publication date
KR20090097004A (en) 2009-09-15

Similar Documents

Publication Publication Date Title
EP1488323B1 (en) Memory system with burst length shorter than prefetch length
US5893136A (en) Memory controller for independently supporting Synchronous and Asynchronous DRAM memories
EP3467832B1 (en) Memory controller and method for interleaving dram and mram accesses
JP2909592B2 (en) Computer memory system
US20070055813A1 (en) Accessing external memory from an integrated circuit
US20020013880A1 (en) Integrated circuit with flash bridge and autoload
US20060193189A1 (en) Multi-memory chip and data transfer method capable of directly transferring data between internal memory devices
JPH05274859A (en) Integrated circuit storage device
CN108139994B (en) Memory access method and memory controller
CN107257964B (en) DRAM circuit, computer system and method for accessing DRAM circuit
US5822768A (en) Dual ported memory for a unified memory architecture
JP2002288037A (en) Memory control device and method
US7962670B2 (en) Pin multiplexing
CN112005226A (en) Accessing DRAM through reuse of pins
JP4229958B2 (en) Memory control system and memory control circuit
US20050182908A1 (en) Method and apparatus of interleaving memory bank in multi-layer bus system
US20150177816A1 (en) Semiconductor integrated circuit apparatus
US5926828A (en) Method and apparatus for controlling data transfer between a synchronous DRAM-type memory and a system bus
JP2001035158A (en) Method and system for accessing memory
US6775718B2 (en) DMA control system enabling flyby transfer to synchronous memory
KR101065585B1 (en) Dynamic memory controller, multi-media application processorMAP apparatus comprising the same controller, and method of accessing the same dynamic memory
US20060143330A1 (en) Method for data transmit burst length control
US7747832B2 (en) Method for controlling a memory access
JP3942074B2 (en) Data input / output device, memory system, data input / output circuit, and data input / output method
TW515949B (en) Method for scheduling run sequence of read and write requests

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: 20140703

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150825

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160725

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170825

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180725

Year of fee payment: 8