KR100663384B1 - 메모리 인터페이스 장치 및 방법 - Google Patents

메모리 인터페이스 장치 및 방법 Download PDF

Info

Publication number
KR100663384B1
KR100663384B1 KR1020050135440A KR20050135440A KR100663384B1 KR 100663384 B1 KR100663384 B1 KR 100663384B1 KR 1020050135440 A KR1020050135440 A KR 1020050135440A KR 20050135440 A KR20050135440 A KR 20050135440A KR 100663384 B1 KR100663384 B1 KR 100663384B1
Authority
KR
South Korea
Prior art keywords
clock
memory
clock signal
data
signal
Prior art date
Application number
KR1020050135440A
Other languages
English (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 KR1020050135440A priority Critical patent/KR100663384B1/ko
Priority to PCT/KR2006/005608 priority patent/WO2007078072A1/en
Application granted granted Critical
Publication of KR100663384B1 publication Critical patent/KR100663384B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/4076Timing circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • G11C11/4093Input/output [I/O] data interface arrangements, e.g. data buffers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/106Data output latches
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1066Output synchronization
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/1087Data input latches
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/1093Input synchronization
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • G11C7/222Clock generating, synchronizing or distributing circuits within memory device

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Memory System (AREA)
  • Dram (AREA)

Abstract

본 발명은 메모리 인터페이스 방법 및 장치에 관한 것으로서, 본 발명에 의한 장치는 메모리로 기록되는 데이터를 래치(latch)시키는 적어도 하나의 제1 래치 수단; 메모리로부터 독출되는 데이터를 래치(latch)시키는 적어도 하나의 제2 래치 수단을 포함하되, 상기 메모리로는 클록 발생기에서 출력되는 제1 클록 신호가 칩 I/O에 의해 지연된 제2 클록 신호가 클록으로 입력되고, 상기 제2 클록 신호가 칩 I/O에 의해 지연된 제3 클록 신호 및 상기 제1 클록 신호를 입력받으며, 상기 제1 클록 신호 및 제3 클록 신호 중 하나를 선택하여 상기 적어도 하나의 제1 래치 수단의 클록 신호로 제공하는 선택기를 더 포함하며, 상기 선택기는 상기 제2 클록 신호 및 메모리로 기록되는 데이터를 모니터링하여 상기 제1 클록 및 제 3 클록 중 하나를 선택하도록 하는 제어 신호를 제어부로부터 제공받는다. 본 발명에 의하면, 고주파의 클록이 사용되더라도 클록 주파수를 적절히 선택하여 메모리에 안정적으로 데이터를 기록할 수 있으며, 두개의 액세스 포트가 있는 듀얼 포트 메모리를 사용하여 고속 데이터 전송을 구현하기에 적합한 메모리 인터페이스가 구현될 수 있다.
인터페이스, 메모리, 클록

Description

메모리 인터페이스 장치 및 방법{Device and Method for Memory Interface}
도 1은 종래 기술에 따른 메인 프로세서와 어플리케이션 프로세서가 어플리케이션 프로세서에 결합된 부가 메모리를 공유하는 구조를 나타낸 블록 구성도.
도 2는 종래의 메모리 인터페이스부의 내부 연결 구성을 도시한 개념도.
도 3은 종래 메모리 인터페이스부에서의 클록 주파수가 비교적 낮은 주파수인 경우의 타이밍 파형을 도시한 도면.
도 4는 종래 메모리 인터페이스부에서의 클록 주파수가 비교적 높은 주파수인 경우의 타이밍 파형을 도시한 도면.
도 5는 본 발명에 의한 메모리 인터페이스가 적용되는 메인 프로세서, 어플리케이션 프로세서 및 듀얼 포트 메모리간의 결합 구조를 나타낸 도면.
도 6는 본 발명에 의한 메모리 인터페이스가 적용되는 듀얼 포트 메모리부의 저장 영역의 분할 상태를 나타낸 도면.
도 7은 본 발명의 바람직한 일 실시예에 따른 메모리 인터페이스의 내부적인 연결에 대한 개념도.
도 8은 본 발명의 다른 실시예에 따른 메모리 인터페이스의 내부적인 연결에 대한 개념도.
본 발명은 메모리 인터페이스에 관한 것으로서, 더욱 상세하게는 클록 타이밍 조정이 가능한 메모리 인터페이스 장치 및 방법에 관한 것이다.
도 1은 종래 기술에 따른 메인 프로세서와 어플리케이션 프로세서가 어플리케이션 프로세서에 결합된 부가 메모리를 공유하는 구조를 나타낸 블록 구성도이다. 어플리케이션 프로세서는 이미지 센서(130)를 제어하고 이미지 센서(130)로부터 입력되는 멀티미디어 데이터 처리를 위한 멀티미디어 프로세서인 경우를 가정하여 설명한다.
도 1을 참조하면, 메인 프로세서(110)는 복수의 메모리 컨트롤러(즉, 제1 메모리 컨트롤러(133), 제2 메모리 컨트롤러(136))를 구비한다. 메인 프로세서(110)는 제1 메모리 컨트롤러(133)를 통해 어플리케이션 프로세서(120)에 접속함으로써, 멀티미디어 프로세서(120)에 결합된 부가 메모리(125)에 데이터를 기록(Write)하거나 부가 메모리(125)에 저장된 데이터를 독출(Read)한다. 또한, 메인 프로세서(110)는 제2 메모리 컨트롤러(136)를 통해 메인 프로세서(110)에 직접 결합된 메인 메모리(115)에 접속하여 데이터를 기록하거나 저장된 데이터를 독출한다.
어플리케이션 프로세서(120)는 인터페이스(143), 컨트롤러(146), 이미지 스케일러(149), 멀티미디어 코덱(153), 메모리 제어부(356)를 포함한다. 멀티미디어 프로세서(120)는 하나의 버스(즉, 제2 메모리 버스)를 통해 하나의 포트를 구비한 부가 메모리(125)에 결합된다. 또한 어플리케이션 프로세서(120)는 처리한 멀티미디어 데이터를 디스플레이하기 위한 표시부(145)와 결합될 수 있다.
인터페이스(143)는 멀티미디어 프로세서(120)와 결합된 메인 프로세서(310)간에 정보 송수신을 수행한다. 어플리케이션 프로세서(120)는 인터페이스(143)를 통해 메인 프로세서(110)로부터 제어 신호가 수신되면 상응하는 처리 동작을 수행한다.
컨트롤러(146)는 메인 프로세서(110)로부터 수신된 제어 신호에 상응하여 멀티미디어 프로세서(120)의 동작을 제어한다. 컨트롤러(146)는 예를 들어 MCU(Microcontroller Unit)일 수 있다.
이미지 스케일러(149)는 이미지 센서(130)로부터 입력되는 데이터를 가공하여 그 이미지의 크기나 색감을 바꾸는 동작을 수행한다. 이미지 스케일러(149)에 의해 처리된 데이터는 메모리 제어부(156)에 의해 제2 메모리 버스를 통해 부가 메모리(125)에 저장된다.
멀티미디어 코덱(153)은 멀티미디어 파일을 미리 설정된 방식으로 코딩 또는 디코딩하는 기능을 한다.
메모리 제어부(156)는 메인 프로세서(110)와 어플리케이션 프로세서(120)가 동시에 부가 메모리(125) 억세스를 요청한 경우 우선 순위 제어부(153)의 우선 순위 제어 신호에 의해 어느 하나의 프로세서가 부가 메모리(125)에 액세스할 수 있도록 처리한다.
도 1에 도시된 바와 같이 종래의 메모리 공유 구조는 복수의 프로세서들 및/또는 구성 요소들이 하나의 버스를 통해 하나의 메모리에 액세스하는 구조이다. 따라서, 메인 프로세서(310)에서 임의의 어플리케이션 프로세서(320)의 메모리를 이용하기 위해 많은 시간적 제한을 가진다.
예를 들어, MPEG 파일을 재생하는 경우 메인 프로세서(310)는 연결된 메인 메모리(315)에 저장된 또는 실시간으로 입력받은 MPEG 파일을 멀티미디어 프로세서로 전달하여야 한다. MPEG 파일은 그 크기가 크기 때문에 멀티미디어 프로세서(320)에 결합된 부가 메모리(325)에 우선 기록되며, 필요 시점에 멀티미디어 프로세서(320)의 특정 구성 요소가 해당 데이터를 독출하여 디코딩(decoding)을 수행한 후 표시부(145)로 전달한다.
결과적으로, 도 1에 도시된 종래의 메모리 공유 구조에 의하면 프로세서간에 전달된 데이터의 크기가 클수록 어플리케이션 프로세서(120)에 연결된 부가 메모리(125)를 이용함에 많은 제한이 있을 수 밖에 없다. 이는 어플리케이션 프로세서(120)에 포함된 각 구성 요소들이 처리 동작을 수행할 때 부가 메모리(125)에 연결된 버스(BUS)를 사용하기 때문이다.
상술한 바와 같이, 종래의 메모리 공유 구조는 고성능, 고화질의 이미지 처리 등의 경우 많은 시간 지연이 발생되는 문제점이 있었다. 또한, 어플리케이션 프로세서의 처리 효율이 감소되는 문제점도 있었다.
이러한 문제점과 함께 메모리로의 인터페이스 부분 역시 종래의 메모리 시스템은 비효율적인 문제점이 있었다.
도 2는 종래의 메모리 인터페이스부의 내부 연결 구성을 도시한 개념도이다.
도 2를 참조하면, clock은 클록 발생기에서 발생하는 신호로서 제1 플립플롭(204) 및 제3 플립플롭(208)의 클록 신호로 입력된다.
SDRAM_clk는 핀(200)을 통해 메모리의 클록으로 입력되는 신호이다. SDRAM_clk는 칩 I/O로 인해 clock 신호에 비해 일정 시간 지연된다.
SCRAM_fb_clk는 SDRAM_clk가 핀(202)을 통해 다시 입력이 되는 신호로서, 이 신호 역시 칩 I/O로 인해 SDRAM_clk에 비해 일정 시간 지연된다.
데이터를 메모리로 출력하는 경우, clock 신호를 이용하여 메모리로 데이터를 출력하기 전에 제1 플립플롭(200)으로 데이터를 래치하여 보낸다. 메모리로부터 데이터를 독출할 때에도 핀을 통해서 전송되는 메모리 데이터를 SCRAM_fb_clk 신호로 래치한 후 다시 clock 신호로 래치하여 내부로 전달이 될 수 있도록 한다.
각 클록 신호들의 지연시간을 보면, clock 신호가 지연이 없을 경우, SDRAM_clk 신호가 일정 시간 지연을 가지게 되고, SCRAM_fb_clk 신호가 가장 긴 지연 시간을 가지게 된다.
도 3은 종래 메모리 인터페이스부에서의 클록 주파수가 비교적 낮은 주파수인 경우의 타이밍 파형을 도시한 도면이다.
도 3을 참조하면, SDRAM_clk 신호는 clock 신호에 비해 일정 시간 지연되며, SDRAM_fb_clk 신호는 SDRAM_clk 신호에 비해 일정 시간 지연되는 점을 확인할 수 있다. 일례로, Clock, SDRAM_clk, SDRAM_fb_clk 신호의 주기는 20nsec일 수 있다.
Q1 출력은 제1 플립플롭(206)의 출력으로서, clock 신호가 올라간 후 약간의 지연을 두고 출력되며, 출력된 신호는 제2 플립플롭(208)으로 입력된다.
도 3에서, tCLK는 clock 신호와 SCRAM_fb_clk 신호의 시간적인 차이를 나타내며, 전술한 바와 같이 이러한 지연 시간은 칩의 I/O 시의 지연으로 인해 발생하는 것이다.
tDATA는 SDRAM_fb_clk 신호가 올라가는 시점에서 최종적으로 데이터가 메모리로 출력되는 시간까지의 시간 간격을 의미한다. 메모리의 관점에서 볼 때, 클록 신호로 SDRAM_clk 신호가 입력되고, 데이터의 입력은 메모리 출력 데이터이므로 SDRAM_fb_clk 신호와 메모리 출력 데이터의 관계는 중요하다. 이는 메모리의 데이터를 기록하는 동작이 SDRAM_fb_clk 신호에 기초하여야 되기 때문이다. 바람직하게는 SDRAM_fb_clk 신호가 떨어지는 시간에 메모리로 데이터가 출력되는 경우이다.
도 3과 같이 클록 주파수가 비교적 저주파인 경우에는 칩 I/O로 인한 지연이 발생하더라도 메모리로의 데이터 기록을 비교적 용이하게 안정화시킬 수 있다. 그러나, 클록 주파수가 고주파인 경우 종래의 메모리 인터페이스부를 통해 메모리로의 데이터 기록을 안정화시키기 어려운 측면이 있다.
도 4는 종래 메모리 인터페이스부에서의 클록 주파수가 비교적 높은 주파수인 경우의 타이밍 파형을 도시한 도면이다.
도 4를 참조하면, Clock, SDRAM_clk, SDRAM_fb_clk 신호의 주기는 10nsec로 주파수가 두 배인 경우가 도시되어 있다.
주파수가 높아지더라도, 칩 I/O로 인한 딜레이는 항상 같으므로 SDRAM_clk 신호와, SDRAM_fb_clk 신호는 더 많은 위상차를 가지게 된다. 이로 인해, 메모리에 기록되는 데이터에 대해서도 셋업 시간 마진이 부족하게 된다.
전술한 바와 같이, 메모리로의 데이터 기록은 SDRAM_clk이 올라가는 시점에 안정적으로 이루어져야 하나, 도 4와 같이 고주파의 출력 신호가 사용되는 경우에는 SDRAM_clk과 메모리로의 데이터 기록에 대한 타이밍이 불안정해지는 문제점이 있었다.
특히 듀얼 포트 메모리를 사용하여 메인 프로세서와 어플리케이션 프로세서가 메모리를 공유함으로써 인터페이스의 부하를 줄이고 보다 빠른 데이터 처리가 가능한 시스템일수록 고주파의 클록 주파수가 사용될 때 더욱 효과적으로 활용될 수 있다.
그러나, 상술한 바와 같이, 고주파의 클록 주파수가 사용될 경우, 메모리로의 데이터 기록 타이밍이 불안정해져서 듀얼 포트 메모리를 이용한 메모리 공유가 어려워지는 문제점이 있었다.
따라서, 상술한 문제점들을 해결하기 위한 본 발명의 목적은 고주파의 클록이 사용될 때 메모리에 안정적으로 데이터를 기록할 수 있는 메모리 인터페이스 방법 및 장치를 제안하는 것이다.
본 발명의 다른 목적은 두개의 액세스 포트가 있는 듀얼 포트 메모리를 사용하여 고속 데이터 전송을 구현하기에 적합한 메모리 인터페이스 방법 및 장치를 제안하는 것이다.
본 발명의 이외의 목적들은 하기의 설명을 통해 쉽게 이해될 수 있을 것이다.
상기 목적들을 달성하기 위하여, 본 발명의 일 측면에 따르면 메모리로 기록되는 데이터를 래치(latch)시키는 적어도 하나의 제1 래치 수단; 메모리로부터 독출되는 데이터를 래치(latch)시키는 적어도 하나의 제2 래치 수단을 포함하되, 상기 메모리로는 클록 발생기에서 출력되는 제1 클록 신호가 칩 I/O에 의해 지연된 제2 클록 신호가 클록으로 입력되고, 상기 제2 클록 신호가 칩 I/O에 의해 지연된 제3 클록 신호 및 상기 제1 클록 신호를 입력받으며, 상기 제1 클록 신호 및 제3 클록 신호 중 하나를 선택하여 상기 적어도 하나의 제1 래치 수단의 클록 신호로 제공하는 선택기를 더 포함하며, 상기 선택기는 상기 제2 클록 신호 및 메모리로 기록되는 데이터를 모니터링하여 상기 제1 클록 및 제 3 클록 중 하나를 선택하도록 하는 제어 신호를 제어부로부터 제공받는 메모리 인터페이스 장치가 제공된다.
상기 제어부는 상기 메모리로 기록되는 데이터가 상기 제2 클록 신호에 안정화되는지 여부를 판단하여 제1 클록 신호 및 제3 클록 신호 중 하나를 선택하도록 하는 제어 신호를 출력한다.
상기 제1 래치 수단은 제1 플립플롭 및 제2 플립플롭을 포함할 수 있다.
상기 제1 플립플롭은 상기 제1 클록에 기초하여 메모리로 기록될 데이터를 래치시키고 상기 제2 플립플롭은 상기 선택기의 출력에 기초하여 상기 제1 플립플 롭의 출력 데이터를 래치시킨다.
상기 제2 래치수단은 제3 플립플롭 및 제4 플립플롭을 포함할 수 있다.
상기 제4 플립플롭은 상기 제3 클록에 기초하여 메모리로부터 독출되는 데이터를 래치시키고, 상기 제3 플립플롭은 상기 제1 클록에 기초하여 상기 제4 플립플롭의 출력 데이터를 래치시킨다.
본 발명의 다른 측면에 따르면, 메모리로 기록되는 데이터를 래치(latch)시키는 적어도 하나의 제1 래치 수단; 메모리로부터 독출되는 데이터를 래치(latch)시키는 적어도 하나의 제2 래치 수단을 포함하되, 상기 메모리로는 클록 발생기에서 출력되는 제1 클록 신호가 칩 I/O에 의해 지연된 제2 클록 신호가 클록으로 입력되고, 상기 제2 클록 신호가 칩 I/O에 의해 지연된 제3 클록 신호 및 상기 제1 클록 신호를 입력받으며, 지연 소자를 포함하고, 상기 제1 클록 신호, 제3 클록 신호 및 상기 제1 클록 신호를 상기 지연 소자에 의해 미리 설정된 시간만큼 지연 시킨 제4 클록 신호 중 하나를 선택하여 상기 적어도 하나의 제1 래치 수단의 클록 신호로 제공하는 선택기를 더 포함하며, 상기 선택기는 상기 제2 클록 신호 및 메모리로 기록되는 데이터를 모니터링하여 상기 제1 클록 신호. 제 3 클록 신호 및 제4 클록 신호중 하나를 선택하도록 하는 제어 신호를 제어부로부터 제공받는 메모리 인터페이스 장치가 제공된다.
본 발명의 또 다른 측면에 따르면, 메모리로 기록되는 데이터를 래치(latch)시키는 적어도 하나의 제1 래치 수단 및 메모리로부터 독출되는 데이터를 래치(latch)시키는 적어도 하나의 제2 래치 수단을 포함하는 메모리 인터페이스에 서의 인터페이스 방법으로서, 클럭 발생기에서 발생되는 제1 클록이 칩 I/O에 의해 지연된 제2 클록 신호를 클록으로 제공하는 단계(a); 상기 제2 클록 신호 및 메모리로 기록되는 데이터를 모니터링하는 단계(b); 상기 모니터링 결과에 따라 상기 적어도 하나의 제1 래치 수단에 입력될 클록으로 상기 제1 클록 및 상기 제2 클록이 칩 I/O에 의해 지연된 제3 클록 중 하나를 선택하는 단계(c); 상기 선택된 제1 클록 및 제3 클록 중 어느 하나를 상기 적어도 하나의 제1 래치 수단에 클록으로 제공하는 단계(d)를 포함하는 메모리 인터페이스 방법이 제공된다.
메모리로 기록되는 데이터를 래치(latch)시키는 적어도 하나의 제1 래치 수단 및 메모리로부터 독출되는 데이터를 래치(latch)시키는 적어도 하나의 제2 래치 수단을 포함하는 메모리 인터페이스에서의 인터페이스 방법으로서, 클럭 발생기에서 발생되는 제1 클록이 칩 I/O에 의해 지연된 제2 클록 신호를 클록으로 제공하는 단계(a); 상기 제2 클록 신호 및 메모리로 기록되는 데이터를 모니터링하는 단계(b); 상기 모니터링 결과에 따라 상기 적어도 하나의 제1 래치 수단에 입력될 클럭 데이터로 상기 제1 클록, 상기 제2 클록이 칩 I/O에 의해 지연된 제3 클록 및 상기 제1 클록을 미리 설정된 시간만큼 지연시킨 제4 클록 중 하나를 선택하는 단계(c); 상기 선택된 제1 클록, 제3 클록 및 제4 클록 중 어느 하나를 상기 적어도 하나의 제1 래치 수단에 클록으로 제공하는 단계(d)를 포함하는 메모리 인터페이스 방법이 제공된다.
이하에서 첨부된 도면을 참조하여 본 발명에 의한 메모리 인터페이스 방법 및 장치의 바람직한 실시예를 상세하게 설명한다.
하기의 실시예에서는 본 발명에 의한 메모리 인터페이스 방법 및 장치가 듀얼 포트 메모리를 사용한 메모리 공유에 적용되는 경우에 대하여 설명할 것이나, 본 발명에 의한 방법 및 장치가 듀얼 포트 메모리 메모리를 사용한 메모리 공유에만 적용되는 것은 아니며 고주파의 클록을 사용하는 어떠한 메모리 인터페이스에도 적용될 수 있다는 점은 당업자에게 있어 자명할 것이다.
예를 들어, 본 발명에 의한 메모리 인터페이스 방법 및 장치는 복수의 프로세서에 의해 동작하는 어떠한 형태의 디지털 처리 장치(예를 들어, 이동 통신 단말기, PDA, PMP(Portable Multimedia Player), MP3 플레이어, 디지털 카메라, 디지털 텔레비전, 음향 기기 등과 같이 휴대형 단말기 및/또는 가정 내에 구비되는 가정용 디지털 기기 등)의 메모리 인터페이스에 적용될 수 있을 것이다.
도 5는 본 발명에 의한 메모리 인터페이스가 적용되는 메인 프로세서, 어플리케이션 프로세서 및 듀얼 포트 메모리간의 결합 구조를 나타낸 도면이고, 도 6는 본 발명에 의한 메모리 인터페이스가 적용되는 듀얼 포트 메모리부의 저장 영역의 분할 상태를 나타낸 도면이다.
도 5를 참조하면, 메인 프로세서(500)와 어플리케이션 프로세서(520)는 베이스밴드 인터페이스를 통해 정보(예를 들어, 처리 명령, 상태 정보, 제어 명령, 응답 신호(Ack), 처리 완료 응답, 타 프로세서의 동작상태/설정 상태 확인 정보 등)를 송수신한다.
메인 프로세서(500)와 듀얼 포트 메모리(510)는 제1 버스(590)를 통해 데이 터를 송수신하며, 어플리케이션 프로세서(520)와 듀얼 포트 메모리부(510)는 제2 버스(595)를 통해 데이터를 송수신하도록 결합되어 있다. 버스(Bus)는 컴퓨터 등에서 제어부와 주기억장치, 입출력 장치 간에 정보를 전송하는 데 사용되는 공용 목적의 전기적 통로이다.
메인 프로세서(510)는 디지털 데이터 처리 장치의 전반적인 동작을 제어하는 프로세서일 수 있다. 또한 어플리케이션 프로세서(520)는, 예를 들어 디지털 데이터 처리 장치가 휴대폰일 경우, MPEG4, 3D 그래픽, 카메라 기능, MP3 파일 재생 등을 처리하기 위한 전용의 프로세서일 수 있다. 어플리케이션 프로세서(520) 후단에는 표시부(550) 등과 같은 주변 장치가 결합될 수 있다. 표시부(550) 등을 통해 어떤 데이터가 출력되도록 할 것인지 여부는 메인 프로세서(500) 또는 어플리케이션 프로세서(520)에 의해 제어될 수 있다.
듀얼 포트 메모리(510)는 결합된 복수의 프로세서에 의해 사용되는 구조로서, 메인 프로세서(500) 및 어플리케이션 프로세서(520)와의 액세스를 위한 두 개의 액세스 포트를 구비하고 있다.
도 6을 참조하면, 두개의 액세스 포트인 제1 포트(610), 제2 포트(620)가 도시되어 있으며, 제1 포트는 메인 프로세서(500)와 연결되도록 하고, 제2 포트는 어플리케이션 프로세서(520)와 연결되도록 설정된다.
도 6에서, Addr_A는 메인 프로세서(500)와의 어드레스 신호(Address signal)을 의미하고 Addr_B는 어플리케이션 프로세서(520)와의 어드레스 신호를 의미하며, Data_A는 메인 프로세서(500)와의 데이터 버스를 의마하고, Data_B는 어플 리케이션 프로세서(520)와의 데이터 버스를 의미하며, Ctrl__A는 메인 프로세서(500)의 제어 신호(control signal)을 의미하고, Ctrl_B는 어플리케이션 프로세서(520)의 제어 신호를 의미하며, CLK_A는 메인 프로세서로부터의 클록을 의미하고 CLK_B는 어플리케이션 프로세서로부터의 클록을 의미한다.
도 6에 도시된 바와 같이, 듀얼 포트 메모리의 저장 영역은 메인 프로세서(500)에 의해 제어되는 영역과 어플리케이션 프로세서(520)에 의해 제어되는 영역으로 구분된다. 이와 같이, 영역이 구분될 경우, 각 프로세서는 할당된 포트를 통해 할당된 영역에 액세스하여 데이터 기록 및 독출이 가능하다. 도 6에는 두개의 영역으로 메모리가 구분되는 경우가 도시되어 있으나, 필요에 따라 보다 다수의 영역으로 분할 가능하다는 점은 당업자에게 있어 자명할 것이다.
예를 들어, 듀얼 포트 메모리는 복수의 프로세서(500, 520)가 동시에 액세스할 수는 없지만 각 프로세서가 다른 시점에 액세스할 수 있는 공동 저장 영역을 더 포함하도록 분할될 수 있다. 즉, 공동 저장 영역은 특정 프로세서의 전용 영역으로 할당되지 않고 동시에 액세스되지만 않는다면 개별적인 액세스가 가능한 저장 영역이다.
듀얼 포트 메모리(510)의 각 분할 영역의 크기는 디폴트(default)로 미리 지정되어 있거나, 메인 프로세서(500) 및/또는 어플리케이션 프로세서(520)에 의해 임의의 크기들로 분할되거나 필요 시점(예를 들어, 기록하고자 하는 데이터가 기록 가능 영역의 크기 이상인 경우)마다 메인 프로세서(510) 및/또는 어플리케이션 프로세서(520)에 의해 가변되도록 설정될 수도 있다.
즉, 듀얼 포트 메모리(510)의 저장 영역 중 분할된 저장 영역에 대한 주소(Address) 정보는 메인 프로세서(500)에 의해 설정되고 관리될 수 있으며, 메인 프로세서(500)에 의해 설정된 주소 정보는 어플리케이션 프로세서(520)에 제공되어 공유된다. 물론, 주소 정보에 대한 설정 및 관리는 어플리케이션 프로세서(520)에 의해서도 수행될 수 있다.
듀얼 포트 메모리(510)가 SDRAM인 경우에는 뱅크(Bank) 단위로 영역이 구분될 수도 있다. 일반적인 SDRAM은 RAS address, CAS address 및 Bank address를 포함하며, 통상 뱅크(Bank)는 4개로 구성된다.
듀얼 포트 메모리(510)의 저장 영역을 복수의 분할 영역으로 나눌 때 내부 블록 단위로 나누는 것이 가장 이상적이므로, 예를 들어 2개의 뱅크를 메인 프로세서의 저장 영역으로 할당하고 나머지 2개의 뱅크를 어플리케이션 프로세서의 저장 영역으로 할당할 수 있다.
도 6을 참조하면, 메인 프로세서를 위한 저장 영역에는 어플리케이션 프로세서가 메인 프로세서에 전달할 데이터가 저장되는 데이터 전달 영역A(630) 및 메인 프로세서가 어플리케이션 프로세서에 전달할 데이터가 저장되는 데이터 전달 영역B(640)가 존재한다. 이러한 데이터 전달 영역A 및 B(630, 640)는 각 프로세서에 할당된 영역의 일부를 점유하게 된다.
예를 들어, 메인 프로세서(500)가 어플리케이션 프로세서(520)에 특정 데이터를 전달하고자 하는 경우, 메인 프로세서(500)는 해당 데이터를 데이터 전달 영역B(640)에 저장시킨다. 어플리케이션 프로세서(520)는 데이터 전달 영역B에 액세 스하여 해당 데이터를 독출한다.
도 1과 같은 종래의 시스템의 경우, 메인 프로세서는 어플리케이션 프로세서에 데이터 전달을 위해 호스트 인터페이스를 통해 데이터를 전달하고 어플리케이션 프로세서는 데이터를 휘발성 메모리에 저장하였다가 독출하는 방식으로 동작하였다.
그러나, 듀얼 포트 메모리가 사용될 경우, 데이터를 듀얼 포트 메모리의 미리 약속된 영역에 저장하도록 하고 이를 독출하도록 함로써 종래와 같은 번거로운 과정이 생략될 수 있는 바 더욱 빠른 데이터 처리가 가능하다.
이와 같은 듀얼 포트 메모리가 사용될 경우, 클록의 역할은 대단히 중요하며, 클록의 주파수가 높을수록 그 효과는 배가될 수 있는 반면 에러가 날 확률은 늘어날 수 있다.
본 발명은 이와 같이 고주파의 클록이 효과적으로 사용될 수 있는 시스템에서 고주파의 클럭이 사용되더라도 에러나 날 확률을 최소화할 수 있는 메모리 인터페이스 장치 및 방법을 제안한다. 전술한 바와 같이, 듀얼 포트 메모리가 사용되는 도 5는 본 발명이 적용되는 일례에 불과하며, 본 발명은 보다 다양한 장치에 적용될 수 있을 것이다.
도 7은 본 발명의 바람직한 일 실시예에 따른 메모리 인터페이스의 내부적인 연결에 대한 개념도이다.
도 7을 참조하면, 클록 발생기(700)는 미리 설정된 clock 신호를 발생시킨다. 클록 발생기에 의해 발생되는 클록 신호인 clock 신호는 핀을 통해 다 른 칩으로 전달되지 않으므로 칩 I/O에 의한 지연이 발생하지 않는다.
메모리_clk 신호는 제1 핀(702)을 통해 메모리의 클록으로 입력되는 신호이다. 핀을 통해 메모리의 출력으로 입력되면서, 메모리_clk 신호는 칩 I/O로 인해 clock 신호에 비해 일정 시간 지연된다. 칩 I/O로 인한 시간 지연은 칩의 제조사마다 달라질 수 있으며, 같은 제조사의 칩이라고 하더라도 제조 공정 시의 환경에 따라 달라질 수 있다.
메모리_fb_clk 신호는 상기 메모리_clk 신호가 제2 핀(704)을 통해 입력되는 신호이다. 메모리_fb_clk 신호는 메모리_clk 신호가 제2 핀(704)을 통해 다시 입력되면서 칩 I/O로 인해 메모리_clk 신호에 비해 일정 시간 지연된다.
데이터를 메모리에 기록하는 경우, 데이터는 제1 플립플롭(708) 및 제2 플립플롭에 의해 래치(latch)된다. 래치된 데이터를 제3 핀을 통해 메모리로 출력된다. 제1 플립플롭은 클록 발생기(700)로부터 직접 제공되는 clock 신호에 의해 제어된다.
데이터를 메모리로부터 독출하는 경우, 데이터는 제3 핀(706)을 통해 전달되며, 제3 플립플롭(712) 및 제4 플립플롭(714)에 의해 래치되어 내부로 전달된다. 제3 플립플롭(712)은 클록 발생기(700)로부터 직접 제공되는 clock 신호에 의해 제어되고, 제4 플립플롭(714)은 메모리_fb_clk 신호에 의해 제어된다.
종래 기술에서 살펴본 바와 같이, 클럭 주파수가 높아질수록 메모리_fb_clk 신호의 지연은 데이터를 메모리에 안정적으로 기록하는데 영향을 준다. 전술한 바와 같이, 메모리는 메모리로 입력되는 클록 주파수인 메모리_clk가 올라가는 시간 에 메모리로 기록되는 데이터가 안정화될 필요가 있다. 그러나, 클록 주파수가 높아져 메모리_fb_clk 신호의 지연으로 인한 메모리_fb_clk 신호와 메모리_clk 신호간의 상대적인 위상차가 커질 경우, 메모리로 기록되는 데이터는 메모리_clk 신호가 올라가는 시간에 안정화되기 어렵다.
이를 위해, 메모리_fb_clk 신호의 지연을 줄일 필요가 있다. 본 발명의 바람직한 실시예에 따르면, 메모리에 기록되는 데이터가 래치되는 제2 플립플롭(710)의 클록 신호 입력단에 선택기(716)를 구비한다.
도 7에 도시된 바와 같이, 선택기로는 메모리_fb_clk 신호와 클럭 발생기(700)에서 바로 출력되는 clock 신호가 입력된다. 선택기(716)는 입력되는 메모리_fb_clk 신호와 clock 신호 중 어느 한 신호를 선택하여 출력하고, 출력되는 신호는 제2 플립플롭(710)을 제어하는 클록 신호로 작용한다.
선택기(716)는 제어부(미도시)의 제어 신호에 따라 두 개의 신호 중 하나를 선택한다. 여기서 제어부는 본 발명에 의한 메모리 인터페이스가 적용되는 디지털 처리 장치의 메인 제어부일 수도 있으며, 선택기 제어를 위한 별도의 제어부일 수도 있다.
제어부는 제3 핀(706)으로부터 출력되는 기록 데이터와 메모리_clk 신호 및 메모리_fb_clk 신호를 모니터링한다. 제어부는 메모리_clk 신호와 메모리_fb_clk 신호의 지연이 크지 않아 메모리_clk 신호가 올라가는 시기에 기록 데이터가 안정화되는 경우에는 메모리_fb_clk 신호가 선택되도록 하는 제어 신호를 출력하여 선택기(716)에 제공한다. 선택기는 제어 신호에 응답하여 메모리_fb_clk 신호를 선택 하여 출력한다. 메모리_clk 신호와 메모리_fb_clk 신호의 지연이 크지 않아 메모리_clk 신호가 올라가는 시기에 기록 데이터가 안정화될 때에는 clock 신호가 선택될 경우 메모리_clk 신호가 올라가는 시기 전에 기록 데이터가 출력될 수도 있으므로, 이 경우에는 메모리_fb_clk 신호가 선택되도록 한다.
메모리_clk 신호와 메모리_fb_clk 신호의 지연이 크고 이에 따라 메모리_clk 신호가 올라가는 시기에 기록 데이터가 안정화되지 않는 경우, 제어부는 클럭 발생기(700)로부터 직접 출력되는 신호가 선택되도록 하는 제어 신호를 출력하여 선택기(716)에 제공한다. 선택기(716)는 제어 신호에 응답하여 메모리_clk 신호를 선택하여 출력한다. 메모리_clk 신호와 메모리_fb_clk 신호의 지연이 큰 경우에는 메모리_clk 신호가 올라가는 시기에 기록 데이터가 안정화될 수 없으므로 지연이 없는 clock 신호가 선택되도록 한다.
따라서, 고주파의 클럭이 사용되더라도 메모리_fb_clk 신호 및 clock 신호 중 하나를 선택하도록 함으로써 타이밍 마진을 확보할 수 있게 된다.
도 8은 본 발명의 다른 실시예에 따른 메모리 인터페이스의 내부적인 연결에 대한 개념도이다
도 8은 선택기의 구조를 제외한 나머지 구성은 도 7과 동일하다. 도 8은 도 7에 비해 보다 다양한 신호를 출력할 수 있는 선택기를 제안한다.
도 8을 참조하면, 본 발명의 다른 실시예에 따른 선택기는 메모리_fb_clk 신호, clock 신호 및 clock 신호를 미리 설정된 시간만큼 지연시킨 클록 신호 중 하나를 선택하여 출력하다.
도 8에 도시된 선택기(800)는 clock 신호를 미리 설정된 시간만큼 지연시키기 위해 지연 소자(810)를 포함한다. 주파수가 고주파가 될 경우, clock 신호 및 메모리_fb_clk 중 어떠한 신호가 제2 플리플롭(710)의 클록 신호로 입력되더라도 메모리로 기록되는 데이터를 안정화시킬 수 없을 수 있다. 예를 들어, clock 신호가 선택될 경우, 메모리_clk 신호가 올라가기 전에 메모리 기록을 위한 데이터가 출력될 수 있고, 메모리_fb_clk 신호가 선택될 경우, 메모리_clk 신호가 올라간 후 상당한 시간이 경과한 다음에 메모리 기록을 위한 데이터가 출력될 수 있다. 이러한 경우를 대비하여 선택기(800)에 지연 소자(810)가 구비되며, 선택기는 제어부(미도시)의 제어 신호에 따라 clock 신호가 미리 설정된 시간만큼 지연된 신호도 출력한다. 지연 소자의 지연 시간은 메모리_fb_clk의 지연 시간보다는 작다.
제어부(미도시)는 제3 핀(706)으로부터 출력되는 신호를 모니터링하여 세 개의 신호 중 어떠한 신호가 제2 플립플롭(710)의 클록 신호로 입력되었을 때 메모리에 기록되는 데이터가 안정화될 수 있는지를 판단하여 제어 신호를 선택기(800)에 제공한다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
상술한 바와 같이 본 발명의 바람직한 실시예에 따르면, 고주파의 클록이 사용되더라도 클록 주파수를 적절히 선택하여 메모리에 안정적으로 데이터를 기록할 수 있는 장점이 있다.
또한, 본 발명의 바람직한 실시예에 따르면, 두개의 액세스 포트가 있는 듀얼 포트 메모리를 사용하여 고속 데이터 전송을 구현하기에 적합한 메모리 인터페이스가 구현될 수 있다.

Claims (13)

  1. 메모리로 기록되는 데이터를 래치(latch)시키는 적어도 하나의 제1 래치 수단;
    메모리로부터 독출되는 데이터를 래치(latch)시키는 적어도 하나의 제2 래치 수단을 포함하되,
    클록 발생기에서 출력되는 제1 클록 신호가 칩 I/O에 의해 지연된 제2 클록 신호로서 상기 메모리의 클럭으로 입력되고,
    상기 제2 클록 신호가 칩 I/O에 의해 지연된 제3 클록 신호 및 상기 제1 클록 신호를 입력받으며, 상기 제1 클록 신호 및 제3 클록 신호 중 하나를 선택하여 상기 적어도 하나의 제1 래치 수단의 클록 신호로 제공하는 선택기를 더 포함하며, 상기 선택기는 상기 제2 클록 신호 및 메모리로 기록되는 데이터를 모니터링하여 상기 제1 클록 및 제 3 클록 중 하나를 선택하도록 하는 제어 신호를 제어부로부터 제공받는 메모리 인터페이스 장치.
  2. 제1항에 있어서,
    상기 제어부는 상기 메모리로 기록되는 데이터가 상기 제2 클록 신호에 안정화되는지 여부를 판단하여 제1 클록 신호 및 제3 클록 신호 중 하나를 선택하도록 하는 제어 신호를 출력하는 메모리 인터페이스 장치.
  3. 제1항에 있어서,
    상기 제1 래치 수단은 제1 플립플롭 및 제2 플립플롭을 포함하는 메모리 인터페이스 장치.
  4. 제3항에 있어서,
    상기 제1 플립플롭은 상기 제1 클록에 기초하여 메모리로 기록될 데이터를 래치시키고 상기 제2 플립플롭은 상기 선택기의 출력에 기초하여 상기 제1 플립플롭의 출력 데이터를 래치시키는 메모리 인터페이스 장치.
  5. 제1항에 있어서,
    상기 제2 래치수단은 제3 플립플롭 및 제4 플립플롭을 포함하는 메모리 인터페이스 장치.
  6. 제5항에 있어서,
    상기 제4 플립플롭은 상기 제3 클록에 기초하여 메모리로부터 독출되는 데이터를 래치시키고, 상기 제3 플립플롭은 상기 제1 클록에 기초하여 상기 제4 플립플롭의 출력 데이터를 래치시키는 메모리 인터페이스 장치.
  7. 메모리로 기록되는 데이터를 래치(latch)시키는 적어도 하나의 제1 래치 수단;
    메모리로부터 독출되는 데이터를 래치(latch)시키는 적어도 하나의 제2 래치 수단을 포함하되,
    클록 발생기에서 출력되는 제1 클록 신호가 칩 I/O에 의해 지연된 제2 클록 신호로서 상기 메모리의 클럭으로 입력되고,
    상기 제2 클록 신호가 칩 I/O에 의해 지연된 제3 클록 신호 및 상기 제1 클록 신호를 입력받으며, 지연 소자를 포함하고, 상기 제1 클록 신호, 제3 클록 신호 및 상기 제1 클록 신호를 상기 지연 소자에 의해 미리 설정된 시간만큼 지연 시킨 제4 클록 신호 중 하나를 선택하여 상기 적어도 하나의 제1 래치 수단의 클록 신호로 제공하는 선택기를 더 포함하며, 상기 선택기는 상기 제2 클록 신호 및 메모리로 기록되는 데이터를 모니터링하여 상기 제1 클록 신호. 제 3 클록 신호 및 제4 클록 신호중 하나를 선택하도록 하는 제어 신호를 제어부로부터 제공받는 메모리 인터페이스 장치.
  8. 제7항에 있어서,
    상기 제4 클록 신호는 상기 제3 클록 신호보다 작은 시간 간격으로 지연되는 메모리 인터페이스 장치.
  9. 제7항에 있어서,
    상기 제어부는 상기 메모리로 기록되는 데이터가 상기 제2 클록 신호에 안정화되는지 여부를 판단하여 제1 클록, 제3 클록 신호 및 제4 클록 신호 중 하나를 선택하도록 하는 제어 신호를 출력하는 메모리 인터페이스 장치.
  10. 제7항에 있어서,
    상기 제1 래치 수단은 제1 플립플롭 및 제2 플립플롭을 포함하는 메모리 인터페이스 장치.
  11. 제10항에 있어서,
    상기 제1 플립플롭은 상기 제1 클록에 기초하여 메모리로 기록될 데이터를 래치시키고 상기 제2 플립플롭은 상기 선택기의 출력에 기초하여 상기 제1 플립플롭의 출력 데이터를 래치시키는 메모리 인터페이스 장치.
  12. 메모리로 기록되는 데이터를 래치(latch)시키는 적어도 하나의 제1 래치 수단 및 메모리로부터 독출되는 데이터를 래치(latch)시키는 적어도 하나의 제2 래치 수단을 포함하는 메모리 인터페이스에서의 인터페이스 방법으로서,
    클럭 발생기에서 발생되는 제1 클록이 칩 I/O에 의해 지연된 제2 클록 신호를 클록으로 제공하는 단계(a);
    상기 제2 클록 신호 및 메모리로 기록되는 데이터를 모니터링하는 단계(b);
    상기 모니터링 결과에 따라 상기 적어도 하나의 제1 래치 수단에 입력될 클록으로 상기 제1 클록 및 상기 제2 클록이 칩 I/O에 의해 지연된 제3 클록 중 하나를 선택하는 단계(c);
    상기 선택된 제1 클록 및 제3 클록 중 어느 하나를 상기 적어도 하나의 제1 래치 수단에 클록으로 제공하는 단계(d)를 포함하는 메모리 인터페이스 방법.
  13. 메모리로 기록되는 데이터를 래치(latch)시키는 적어도 하나의 제1 래치 수단 및 메모리로부터 독출되는 데이터를 래치(latch)시키는 적어도 하나의 제2 래치 수단을 포함하는 메모리 인터페이스에서의 인터페이스 방법으로서,
    클럭 발생기에서 발생되는 제1 클록이 칩 I/O에 의해 지연된 제2 클록 신호를 클록으로 제공하는 단계(a);
    상기 제2 클록 신호 및 메모리로 기록되는 데이터를 모니터링하는 단계(b);
    상기 모니터링 결과에 따라 상기 적어도 하나의 제1 래치 수단에 입력될 클럭 데이터로 상기 제1 클록, 상기 제2 클록이 칩 I/O에 의해 지연된 제3 클록 및 상기 제1 클록을 미리 설정된 시간만큼 지연시킨 제4 클록 중 하나를 선택하는 단계(c);
    상기 선택된 제1 클록, 제3 클록 및 제4 클록 중 어느 하나를 상기 적어도 하나의 제1 래치 수단에 클록으로 제공하는 단계(d)를 포함하는 메모리 인터페이스 방법.
KR1020050135440A 2005-12-30 2005-12-30 메모리 인터페이스 장치 및 방법 KR100663384B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020050135440A KR100663384B1 (ko) 2005-12-30 2005-12-30 메모리 인터페이스 장치 및 방법
PCT/KR2006/005608 WO2007078072A1 (en) 2005-12-30 2006-12-21 Device and method for memory interface

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050135440A KR100663384B1 (ko) 2005-12-30 2005-12-30 메모리 인터페이스 장치 및 방법

Publications (1)

Publication Number Publication Date
KR100663384B1 true KR100663384B1 (ko) 2007-01-02

Family

ID=37866584

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050135440A KR100663384B1 (ko) 2005-12-30 2005-12-30 메모리 인터페이스 장치 및 방법

Country Status (2)

Country Link
KR (1) KR100663384B1 (ko)
WO (1) WO2007078072A1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0546527A (ja) * 1991-08-14 1993-02-26 Matsushita Electric Ind Co Ltd デユアルポートメモリ回路
JPH0713920A (ja) * 1993-06-25 1995-01-17 Fuji Facom Corp Dma転送方法
KR960038643A (ko) * 1995-04-13 1996-11-21 김광호 듀얼프로세서간 인터페이스 장치
KR20030010984A (ko) * 2001-07-28 2003-02-06 삼성전자주식회사 데이타 액세스 타이밍을 조정하는 듀얼 포트 메모리콘트롤러

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6961881B2 (en) * 2001-09-14 2005-11-01 Fujitsu Limited Semiconductor device
JP3756818B2 (ja) * 2002-01-09 2006-03-15 株式会社メガチップス メモリ制御回路および制御システム
JP2004240795A (ja) * 2003-02-07 2004-08-26 Renesas Technology Corp 不揮発性記憶装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0546527A (ja) * 1991-08-14 1993-02-26 Matsushita Electric Ind Co Ltd デユアルポートメモリ回路
JPH0713920A (ja) * 1993-06-25 1995-01-17 Fuji Facom Corp Dma転送方法
KR960038643A (ko) * 1995-04-13 1996-11-21 김광호 듀얼프로세서간 인터페이스 장치
KR20030010984A (ko) * 2001-07-28 2003-02-06 삼성전자주식회사 데이타 액세스 타이밍을 조정하는 듀얼 포트 메모리콘트롤러

Also Published As

Publication number Publication date
WO2007078072A1 (en) 2007-07-12

Similar Documents

Publication Publication Date Title
US10002668B2 (en) Memory device, memory module, and memory system
US7411859B2 (en) Multi-port memory device for buffering between hosts
US7984246B1 (en) Multicore memory management system
US20240014817A1 (en) Apparatus for transmitting and receiving a signal, a method of operating the same, a memory device, and a method of operating the memory device
KR20080013138A (ko) 컴퓨팅 시스템, 전자 통신 디바이스, 컴퓨팅 시스템 운영 방법 및 정보 처리 방법
KR20210098831A (ko) 비휘발성 메모리에서의 구성가능한 기입 커맨드 지연
NL2031713B1 (en) Double fetch for long burst length memory data transfer
US20070038795A1 (en) Asynchronous bus interface and processing method thereof
WO2019141050A1 (zh) 一种刷新处理方法、装置、系统及内存控制器
KR100748191B1 (ko) 공유 메모리를 구비한 장치 및 공유 메모리 억세스 상태정보 제공 방법
US20060007758A1 (en) Method and apparatus for setting CAS latency and frequency of heterogenous memories
KR100746364B1 (ko) 메모리 공유 방법 및 장치
KR100663384B1 (ko) 메모리 인터페이스 장치 및 방법
US11423970B2 (en) Memory device receiving data clock signals and operation method thereof
US11308010B2 (en) Memory system having memories of different capacities
US7814282B2 (en) Memory share by a plurality of processors
KR20050081498A (ko) 다층 버스 시스템에서의 메모리 뱅크 인터리빙 방법 및장치
US6731565B2 (en) Programmable memory controller and controlling method
KR100592109B1 (ko) 공유 메모리의 분할 영역의 다중 억세스 제어 방법 및 공유메모리를 가지는 휴대형 단말기
US6766403B2 (en) CPU system with high-speed peripheral LSI circuit
KR100813133B1 (ko) 듀얼 포트 메모리 장치, 이를 가지는 메모리 시스템 및듀얼 포트 메모리 장치의 공유 메모리 영역의 적응적사용방법
US20240211160A1 (en) System Memory Training with Chipset Attached Memory
KR100592108B1 (ko) 복수의 프로세서간의 신속한 데이터 전달 방법 및 공유메모리를 가지는 디지털 처리 장치
KR100799908B1 (ko) 메모리에 연결된 인터페이스 모듈
KR20230043692A (ko) 메모리 모듈 데이터 폭의 유연한 구성을 위한 인에이블링 로직

Legal Events

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

Payment date: 20121011

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20131127

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20151127

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20171128

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20181126

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20191125

Year of fee payment: 14