KR20120069731A - 쿼드 데이터 레이트(qdr) 제어기 및 그의 실현방법 - Google Patents
쿼드 데이터 레이트(qdr) 제어기 및 그의 실현방법 Download PDFInfo
- Publication number
- KR20120069731A KR20120069731A KR1020127009928A KR20127009928A KR20120069731A KR 20120069731 A KR20120069731 A KR 20120069731A KR 1020127009928 A KR1020127009928 A KR 1020127009928A KR 20127009928 A KR20127009928 A KR 20127009928A KR 20120069731 A KR20120069731 A KR 20120069731A
- Authority
- KR
- South Korea
- Prior art keywords
- read data
- sampling
- read
- clocks
- data
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/41—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
- G11C11/413—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1689—Synchronisation and timing concerns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/41—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
- G11C11/413—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction
- G11C11/414—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction for memory cells of the bipolar type
- G11C11/416—Read-write [R-W] circuits
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Information Transfer Systems (AREA)
Abstract
본 발명은 쿼드 데이터 레이트(QDR)의 제어기 및 그의 실현방법을 공개하고, 상기 제어기(100)는, 중재기(101), 제어 상태기(102), 읽기 데이터 샘플링 클록 생성 모듈(103), 읽기 데이터 경로 모듈(104), 읽기 데이터 경로 교정 모듈(105)이 포함된다. 중재기(101)는 제어 상태기(102)의 상태에 따라 명령 및 데이터에 대한 중재를 진행하고; 읽기 데이터 샘플링 클록 생성 모듈(103)은 동일한 주파수 서로 다른 위상을 가지는 읽기 데이터 샘플링 클록을 생성하고; 읽기 데이터 경로 교정 모듈(104)은 제어 상태기가 "읽기 데이터 경로 교정 상태"에 있을 때, 읽기 훈련단어를 통해 생성된 읽기 데이터 샘플링 클록 중에 읽기 데이터 경로 모듈이 읽기 데이터를 진행할 때의 긍정에지 데이터 및 부정에지 데이터의 샘플링 클록을 확정하고; 읽기 데이터 경로 모듈(104)은 확정한 샘플링 클록에 따라, 비 시스템 클록 도메인의 긍정에지 읽기 데이터 및 부정에지 읽기 데이터를 시스템 클록 도메인에 동기시킨다. 본 발명은 읽기 지연이 작고 프로그램 가능한 지연 디바이스가 필요하지 않으며, 기술적 해결을 쉽게 실현할 수 있다.
Description
본 발명은 데이터 전송 기술분야에 관하는 것이고, 특히 네트워크 교환 설비 중의 일종의 쿼드 데이터 레이트(QDR) 제어기 및 그의 실현방법에 관한 것이다.
QDRII SRAM (Quad-Data Rate Static Random Access Memory, 쿼드 데이터 레이트 스태틱 랜덤 액세스 메모리) 디바이스는 더 높은 밴드위스(대역폭) 저장요구를 만족하기 위해 개발되고, 네트워크 및 전신 응용을 목표로 한다. 기본적인 QDR구조는 독립적인 읽기, 쓰기 데이터 경로를 구비하여, 동시 조작에 편리하다. 각 클록 사이클 내에, 두 가지 경로는 모두 더블 데이터 레이트 (DDR) 전송을 사용하여 두 글자를 발송하고, 1개는 클록 상승에지에 발송하고, 다른 1개는 클록 하강에지에 발송한다. 각 클록 사이클 내에 4개인 버스 폭의 데이터 (읽기 2개 및 쓰기 2개) 를 전송하고, 이것이 쿼드 데이터 레이트의 유래이다.
QDR 제어기 설계는 일반적으로 다음과 같은 두 가지 방법이며:
(1) 비동기 FIFO (First In First Out, 선입선출) 를 이용하여 QDRII SRAM의 읽기 데이터를 시스템 클록도메인에 동기시키고, 이것의 장점은 조작이 단순하며 편리하고, 신뢰성이 있는 것이고, 단점은 읽기 지연이 좀 길고, 일반적으로는 8개 클록 사이클 이상이고;
(2) 프로그램 가능한 지연 디바이스를 이용하여 QDRII SRAM의 읽기 데이터를 지연하고, 시스템 클록도메인에 동기시키고, 장점은 읽기 지연는 좀 짧고, 일반적으로는 6-8개 클록 사이클이고; 단점은 일부분 ASIC공장은 배치된 프로그램 가능한 지연 디바이스가 없고, 이런 경우에는 QDR 제어기를 실현할 수 없다.
본 발명이 해결하려는 기술문제는, 일종의 쿼드 데이터 레이트(QDR) 제어기 및 그의 실현방법으로서, 기존 QDR 제어기의 읽기 지연은 크나 프로그램 가능한 지연 디바이스에 의존한 단점을 극복하고, 읽기 지연이 작고 프로그램 가능한 지연 디바이스가 필요하지 않는 쿼드 데이터 레이트(QDR) 데이터 읽기 및 쓰기를 실현한다.
본 발명은 일종의 쿼드 데이터 레이트(QDR) 제어기를 제공하고, 중재기, 제어 상태기, 읽기 데이터 샘플링 클록 생성 모듈, 읽기 데이터 경로 모듈, 읽기 데이터 경로 교정 모듈이 포함되고, 그 중:
상기 중재기는, 상기 제어 상태기의 상태에 따라 명령 및 데이터에 대한 중재를 진행하도록 설치하고;
상기 상태 제어기는, 상기 제어기의 상태를 관리하고, 상기 중재기가 명령 및 데이터를 중재하기 위하여 상태 근거를 제공하도록 설치하고;
상기 읽기 데이터 샘플링 클록 생성 모듈은, 동일한 주파수 서로 다른 위상을 가지는 읽기 데이터 샘플링 클록을 생성하도록 설치하고;
상기 읽기 데이터 경로 교정 모듈은, 상기 제어 상태기가 "읽기 데이터 경로 교정 상태"에 있을 때, 읽기 훈련단어를 통해 생성한 상기 읽기 데이터 샘플링 클록 중에서, 각각 상기 읽기 데이터 경로 모듈이 읽기 데이터를 진행할 때의 긍정에지 (positive edge) 데이터 및 부정에지 (negative edge) 데이터의 샘플링 클록을 확정하도록 설치하고;
상기 읽기 데이터 경로 모듈은, 상기 읽기 데이터 경로 교정 모듈에 따라 확정한 샘플링 클록은, 비 시스템 클록 도메인의 긍정에지 읽기 데이터 및 부정에지 읽기 데이터를 시스템 클록 도메인에 동기시킨다.
상기 쿼드 데이터 레이트(QDR) 제어기는 또 다음을 포함한다.
물리층은, 상기 중재기의 구체적인 명령의 집행 및 읽기 데이터 경로 모듈이 데이터에 대한 액세스 조작을 완료하는 것으로 설치하고;
레지스터 관리 모듈은, CPU로부터의 상기 제어 상태기 및 물리층의 배치 정보를 처리하도록 설치한다.
상기 읽기 데이터 경로 교정 모듈은, 교정 제어 상태기, 교정 쓰기 명령 발생기, 교정 읽기 명령 발생기, 교정 제어 상태기 및 읽기 데이터 경로 선택 시그널 생성기가 포함되고; 그 중;
상기 교정 제어 상태기는, 상기 제어 상태기의 상태 지령이 "읽기 데이터 경로 교정 상태"에 있을 때 쓰기 훈련단어 상태로 진입하고; 교정 쓰기 명령이 완료된 후에 읽기 훈련단어 상태로 진입하고; 교정 읽기 명령이 완료된 후에 읽기 훈련단어 검측 상태로 진입하고; 읽기 훈련단어 검측 상태가 완료된 후에 데이터 경로 선택 시그널 생성상태로 진입하도록 설치하고;
상기 교정 쓰기 명령 발생기는, 상기 교정 제어 상태기가 쓰기 훈련단어 상태로 진입할 때, 교정 쓰기 명령 및 쓰기 훈련단어를 생성하고, 상기 중재기 및 상기 물리층을 통해 QDRII SRAM 디바이스에 기록하도록 설치하고;
상기 교정 읽기 명령 발생기는, 상기 교정 제어 상태기가 읽기 훈련단어 상태로 진입할 때, 교정 읽기 명령을 생성하고, 상기 중재기 및 상기 물리층을 통해 QDRII SRAM 디바이스에 기록하도록 설치하고;
상기 읽기 데이터 검측기는, 상기 교정 제어 상태기가 읽기 훈련단어 검측 상태로 진입할 때, 상기 읽기 데이터 경로 모듈에서의 긍정에지 읽기 데이터 및 훈련단어 긍정에지 데이터의 일치성을 각각 검측하고, 상기 읽기 데이터 경로 모듈에서의 부정에지 읽기 데이터 및 훈련단어 부정에지 데이터의 일치성을 검측하여, 읽기 데이터 검측 결과를 기록하고;
상기 읽기 데이터 경로 선택 시그널 생성기는, 상기 교정 제어 상태기가 읽기 데이터 경로 선택 시그널 생성 상태로 진입할 때, 상기 데이터 검측기는 기록한 읽기 데이터 검측 결과에 따라, 읽기 데이터 경로 선택 시그널을 생성하도록 설치한다.
상기 읽기 데이터 샘플링 클록 생성 모듈이 생성한 동일한 주파수 서로 다른 위상을 가지는 읽기 데이터 샘플링 클록은, 4개 샘플링 클록 sys_clk, sys_clk_90, sys_clk_180 및 sys_clk_270가 포함된다.
상기 읽기 데이터 경로 선택 시그널 생성기는 상기 읽기 데이터 검측기가 기록한 데이터 검측 결과에 따라, 읽기 데이터 경로 선택 시그널을 생성하는 선택 방식은:
만일 상기 4개 읽기 데이터 샘플링 클록이 샘플링한 읽기 데이터가 모두 훈련단어와 같으면, 하나의 시스템 클록 사이클 내 샘플링 데이터 및 훈련단어가 일치한 클록 개수 및 다음의 시스템 클록 사이클 내 샘플링 데이터 및 훈련단어가 일치한 클록 개수에 따라, 상기 4개 읽기 데이터 샘플링 클록 중의 1개를 선택하여 읽기 데이터를 샘플링하기 위한 읽기 데이터 경로로 사용하고;
만일 상기 4개 읽기 데이터 샘플링 클록이 샘플링한 읽기 데이터 중 훈련단어와 일치한 읽기 데이터가 있으나 단지 3개만 있으면, 해당 일치한 3개 연속적인 클록 중 중간의 샘플링 클록을 선택하여 읽기 데이터를 샘플링한 읽기 데이터 경로로 사용하고;
만일 상기 4개 읽기 데이터 샘플링 클록이 샘플링한 읽기 데이터 중 단지 2개 또는 2개보다 더 적은 읽기 데이터가 훈련단어와 일치하면, 착오를 보고하는 것이 포함된다.
상기 읽기 데이터 경로 선택 시그널 생성기는 상기 읽기 데이터 검측기가 기록한 읽기 데이터 검측 결과에 따라, 읽기 데이터 경로 선택 시그널을 생성하고, 만일 상기 4개 읽기 데이터가 샘플링한 읽기 데이터가 훈련단어와 일치하면,
하나의 시스템 클록 사이클 내에, 상기 4개 읽기 데이터 샘플링 클록이 샘플링한 읽기 데이터가 훈련단어와 모두 일치할 때, 상기 sys_clk_180을 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링하고;
하나의 시스템 클록 사이클 내에, 상기 4개 읽기 데이터 샘플링 클록 중 3개 샘플링한 읽기 데이터가 훈련단어와 일치하고, 다음의 시스템 클록 사이클 내에, 1개 읽기 데이터 샘플링 클록 중 샘플링한 읽기 데이터가 훈련단어와 일치할 때, 상기 sys_clk_270을 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링하고;
하나의 시스템 클록 사이클 내에, 상기 4개 읽기 데이터 샘플링 클록 중 2개 샘플링한 읽기 데이터가 훈련단어와 일치하고, 다음의 시스템 클록 사이클 내에, 2개 읽기 데이터 샘플링 클록 중 샘플링한 읽기 데이터가 훈련단어와 일치할 때, 상기 sys_clk를 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링하고;
하나의 시스템 클록 사이클 내에, 상기 4개 읽기 데이터 샘플링 클록 중 1개 샘플링한 읽기 데이터가 훈련단어와 일치하고, 다음의 시스템 클록 사이클 내에, 3개 읽기 데이터 샘플링 클록 중 샘플링한 읽기 데이터가 훈련단어와 일치할 때, 상기 sys_clk_90을 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링하고;
본 발명은 또 일종의 쿼드 데이터 레이트(QDR)의 제어기의 실현방법도 제공한다.
동일한 주파수 서로 다른 위상을 가지는 4개 클록을 채용하여 읽기 데이터를 샘플링하고;
상기 4개 클록 중 각 클록은 샘플링 데이터의 결과에 따라, 읽기 데이터의 샘플링 클록을 확정하고;
확정된 샘플링 클록에 따라 해당 읽기 데이터를 시스템 클록 도메인에 동기시키는 것이 포함된다.
그 중, 상기 동일한 주파수 서로 다른 위상을 가지는 4개 클록은, 4개 읽기 데이터 샘플링 클록 ys_clk, sys_clk_90, sys_clk_180 및 sys_clk_270이 포함된다.
상기 각 클록은 샘플링 데이터의 결과에 따라 읽기 데이터의 샘플링 클록을 확정하는 단계에는, 읽기 데이터 경로 교정 모듈은 QDR 제어기의 제어 상태기가 "읽기 데이터 경로 교정 상태"에 있을 때, 읽기 훈련단어를 통하여 생성한 읽기 데이터 샘플링 클록 중 읽기 데이터 경로 모듈이 읽기 데이터를 진행할 때의 긍정에지 데이터 및 부정에지 데이터의 샘플링 클록을 확정한다.
상기 동일한 주파수 서로 다른 위상을 가지는 4개 클록은 4개 읽기 데이터 샘플링 클록: sys_clk, sys_clk_90, sys_clk_180 및 sys_clk_270이 포함되고; 상기 4개 클록 중 각 클록 샘플링 데이터의 결과에 따라 읽기 데이터의 샘플링 클록을 확정한 단계는 다음의 경우가 포함된다.
만일 상기 4개 클록이 샘플링한 읽기 데이터가 훈련단어와 모두 일치하면, 하나의 시스템 클록 사이클 내 샘플링 데이터 및 훈련단어가 일치한 클록 개수 및 다음의 시스템 클록 사이클 내 샘플링 데이터 및 훈련단어가 일치한 클록 개수에 따라, 상기 4개 클록 중 1개를 선택하여 읽기 데이터를 샘플링한 읽기 데이터 경로로 사용하고;
만일 상기 4개 클록이 샘플링한 읽기 데이터 중 훈련단어와 일치한 읽기 데이터가 있으나 단지 3개만 있으면, 해당 일치한 3개 연속적인 클록 중 중간의 샘플링 클록을 선택하여 읽기 데이터를 샘플링한 읽기 데이터 경로로 사용하고;
만일 4개 클록이 샘플링한 읽기 데이터 중 단지 2개 또는 2개보다 더 적은 읽기 데이터가 훈련단어와 일치하면, 착오를 보고한다.
진일보로, 만일 상기 4개 클록이 샘플링한 읽기 데이터가 모두 훈련단어와 일치하면, 하나의 시스템 클록 사이클 내 샘플링 데이터 및 훈련단어가 일치한 클록 개수 및 다음의 시스템 클록 사이클 내 샘플링 데이터 및 훈련단어가 일치한 클록 개수에 따라, 그 중의 1개를 선택하여 읽기 데이터를 샘플링한 읽기 데이터 경로로 사용하는 단계는 다음의 경우가 포함된다.
하나의 시스템 클록 사이클 내에, 상기 4개 클록 샘플링 데이터가 훈련단어와 모두 일치할 때, 상기 sys_clk_180을 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링하고;
하나의 시스템 클록 사이클 내에, 상기 4개 클록 중 3개 샘플링 데이터가 훈련단어와 일치하고, 다음의 시스템 클록 사이클 내에, 상기 4개 클록 중 1개 샘플링 데이터가 훈련단어와 일치할 때, 상기 sys_clk_270을 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링하고;
하나의 시스템 클록 사이클 내에, 상기 4개 클록 중 2개 샘플링 데이터가 훈련단어와 일치하고, 다음의 시스템 클록 사이클 내에, 상기 4개 클록 중 2개 샘플링 데이터가 훈련단어와 일치할 때, 상기 sys_clk를 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링하고;
하나의 시스템 클록 사이클 내에, 상기 4개 클록 중 1개 클록이 샘플링한 데이터가 훈련단어와 일치하고, 다음의 시스템 클록 사이클 내에, 상기 4개 클록 중 3개 클록 샘플링 데이터가 훈련단어와 일치할 때, 상기 sys_clk_90를 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링한다.
본 발명의 상기 방법 및 장치는, 기존 기술보다, QDR 제어기의 읽기 지연을 감소시키고, 프로그램 가능한 지연 디바이스에 대한 의존을 피하며, 본 발명은 읽기 지연이 작고 프로그램 가능한 지연 디바이스가 필요 없어 기술적 해결을 실현하기 쉽다.
도 1은 본 발명의 QDR 제어기의 실현 장치 설명도이며;
도 2는 본 발명의 제어 상태기 설명도이며;
도 3은 본 발명의 읽기 데이터 샘플링 클록 생성 모듈 실현 설명도이며;
도 4는 본 발명의 읽기 데이터 샘플링 클록 생성 설명도이며;
도 5는 읽기 데이터 경로 모듈 실현 설명도이며;
도 6은 본 발명의 읽기 데이터 경로 교정 모듈 실현 설명도이며;
도 7은 본 발명의 읽기 데이터 경로 교정 상태기 설명도이며;
도 8은 본 발명의 읽기 데이터 경로 클록 선택 상황 1 설명도이며;
도 9는 본 발명의 읽기 데이터 경로 클록 선택 상황 2 설명도이다.
도 2는 본 발명의 제어 상태기 설명도이며;
도 3은 본 발명의 읽기 데이터 샘플링 클록 생성 모듈 실현 설명도이며;
도 4는 본 발명의 읽기 데이터 샘플링 클록 생성 설명도이며;
도 5는 읽기 데이터 경로 모듈 실현 설명도이며;
도 6은 본 발명의 읽기 데이터 경로 교정 모듈 실현 설명도이며;
도 7은 본 발명의 읽기 데이터 경로 교정 상태기 설명도이며;
도 8은 본 발명의 읽기 데이터 경로 클록 선택 상황 1 설명도이며;
도 9는 본 발명의 읽기 데이터 경로 클록 선택 상황 2 설명도이다.
본 발명의 목적, 기술방안 및 장점을 더 명확하게 하기 위하여, 다음에 첨부도면을 결합하여 본 발명에 대하여 자세히 설명하겠다.
도 1에 도시한 바와 같이, 본 발명의 일종의 QDR 제어기의 실현 모듈도를 나타내고, 해당 QDR 제어기(100)는:
중재기(101)는, 제어 상태기(102)의 상태 지시에 따라 명령과 데이터를 중재하도록 설치하고;
도 1 및 도 2에 도시한 바와 같이 해당 제어 상태기 (102)는 QDR 제어기의 각 상태를 관리하도록 설치하고, 중재기(101)가 명령 및 데이터를 중재하기 위한 근거를 제공한다. 그 중, 제어 상태기(102)가 제어한 상태는 4개 있고, 즉, 아이들 상태, 물리층 배치 상태, 읽기 데이터 경로 교정 상태 및 일반 작업 상태가 포함된다.
읽기 데이터 샘플링 클록 생성 모듈(103)은, 동일한 주파수 서로 다른 위상을 가지는 읽기 데이터 샘플링 클록 sys_clk_90, sys_clk_180 및 sys_clk_270을 생성하도록 설치하고;
읽기 데이터 경로 모듈(104)은, 도 1 및 도 5에 도시한 바와 같이, 비 시스템 클록 도메인의 긍정에지(positive edge) 읽기 데이터 및 부정에지(negative edge) 읽기 데이터를 시스템 클록 도메인에 동기시키도록 설치하고;
읽기 데이터 경로 교정 모듈(105)은, 도 1, 도 6 및 도 7에 도시한 바와 같이, 훈련단어를 통해 긍정에지 데이터 및 부정에지 데이터의 샘플링 클록을 확정하도록 설치하고;
저장기 관리 모듈(106)은, 도 1에 도시한 바와 같이, CPU로부터의 배치 정보를 처리하도록 설치하고;
물리층(107)은, 도 1에 도시한 바와 같이, 구체적인 명령의 집행 및 데이터의 액세스 조작을 완료하도록 설치하고; 이 물리층 부분은 본 발명의 설명범위에 보호되지 않지만, 이에 의한 작업을 완료한다.
도 2에 도시한 바와 같이, 제어 상태기(102)가 제어한 아이들 상태, 물리층 배치 상태, 읽기 데이터 경로 교정 상태 및 일반 작업 상태 및 각 상태의 변화 상태 과정을 나타내고:
시스템 리셋 및 시스템 리셋 취소할 때, 제어 상태기(102)는 아이들 상태이고;
시스템 리셋 취소한 후, 자동적으로 물리층 배치 상태로 진입하고;
물리층 배치 상태는, 물리층에 관한 파라미터를 배치하는 것이 필요하고, 배치가 완료된 후에 읽기 데이터 경로 교정 상태로 진입하고;
읽기 데이터 경로 교정 상태에서, 교정 규칙에 따라 긍정에지 데이터 및 부정에지 데이터의 샘플링 클록을 각각 확정하고, 교정이 완료된 후에 일반 작업 상태로 진입하고;
일반 작업 상태에서, 유저는 QDRII SRAM를 판독 및 기록할 수 있다.
상기 중재기(101)가 명령 및 데이터를 중재하고, 유저 쓰기 명령, 유저 쓰기 데이터, 유저 읽기 명령, 교정 쓰기 명령, 교정 쓰기 데이터 및 교정 읽기 명령이 포함된다. 상기 중재 과정은 제어 상태기(102)의 상태에 따라 중재 지시를 진행하는 것이고, 그 중:
아이들 상태 및 물리층 배치 상태일 때, 중재기(101)가 출력한 쓰기 명령, 쓰기 데이터, 읽기 명령 및 유저 읽기 데이터는 모두 효과가 없고;
읽기 데이터 경로 교정 상태일 때, 중재기(101)는 교정 쓰기 명령, 교정 쓰기 데이터, 교정 읽기 명령을 각각 선택하여 쓰기 명령, 쓰기 데이터 및 읽기 명령의 출력으로 사용하고, 출력된 유저 읽기 데이터는 효과가 없고;
일반 작업 상태일 때, 중재기(101)는 유저 쓰기 명령, 유저 쓰기 데이터, 유저 읽기 명령을 각각 선택하여 쓰기 명령, 쓰기 데이터, 읽기 명령의 출력으로 사용하고, 읽기 데이터 경로 모듈(104)에서 오는 읽기 데이터를 유저 읽기 데이터 출력으로 사용한다.
도 1, 도 3 및 도 4에 도시한 바와 같이, 상기 읽기 데이터 샘플링 클록 모듈(103)은 읽기 데이터 샘플링 클록 sys_clk_90, sys_clk_180 및 sys_clk_270을 생성하는 구체적인 방식은 다음과 같다.
sys_clk_90은 clk_500m의 부정에지 샘플링sys_clk를 통해 얻고;
sys_clk_180은 clk_500m의 긍정에지 샘플링sys_clk_90을 통해 얻고;
sys_clk_270은 clk_500m의 부정에지 샘플링sys_clk_180을 통해 얻고;
sys_clk은 250MHz클록이고, sys_clk는clk_500m 2분할주파수를 통해 얻고;
그 중, clk_500m는 500MHz클록이며,
도 1, 도 6 및 도 7에 도시한 바와 같이, 읽기 데이터 경로 교정 모듈(105)은 읽기 훈련단어를 통해 긍정에지 데이터 및 부정에지 데이터의 샘플링 클록을 확정하고, 구체적으로 다음과 같은 서브 모듈이 포함된다.
교정 제어 상태기(1051)는, 읽기 데이터 경로 교정의 각 상태를 관리하도록 설치하고;
교정 쓰기 명령 발생기(1052)는, 교정 쓰기 명령 및 쓰기 훈련단어를 생성하도록 설치하고;
교정 읽기 명령 발생기(1053)는, 교정 읽기 명령을 생성도록 설치하고;
읽기 데이터 검측기(1054)는, 각 데이터 경로 모듈(104)이 내보낸 읽기 데이터 및 훈련단어의 일치성을 검측하여, 검측 결과를 기록하도록 설치하고;
읽기 데이터 경로 선택 시그널 생성기(1055)는, 읽기 데이터 검측기(1054)가 기록한 읽기 데이터 검측 결과에 따라, 읽기 데이터 경로 선택 시그널을 생성한다.
도 1에 도시된 QDR 제어기에 근거하여, 본 발명의 QDR 제어기의 실현방법은, 도 1, 도 5, 도 6, 도 7, 도 8 및 도 9에 도시한 바와 같이, 해당 방법의 핵심 기술적 사상은, 동일한 주파수 서로 다른 위상을 가지는 4개 클록을 채용하고 읽기 데이터를 샘플링하여, 각 클록 샘플링 데이터의 결과에 따라, 읽기 데이터의 샘플링 클록을 확정하고, 읽기 데이터를 시스템의 클록 도메인에 동기시킨다. 다음에 도 1에 도시된 QDR 제어기를 결합하여 QDR 제어기의 구체적인 실현과정을 구체적으로 설명한다.
도 7에 도시한 바와 같이, 도 6을 같이 결합하여 읽기 데이터 경로 교정 모듈(105)이 읽기 데이터 경로 교정을 진행한 과정을 서술한다.
읽기 데이터 경로 교정 모듈(106) 중 교정 제어 상태기(1051)의 처음 상태는 아이들 상태이고, QDR 제어기의 제어 상태기(102)의 상태 지시는 "읽기 데이터 경로 교정 상태"일 때, 교정 제어 상태기(1051)는 쓰기 훈련단어 상태로 진입하고;
교정 제어 상태기(1051)의 상태가 쓰기 훈련단어 상태인 때, 교정 쓰기 명령 발생기(1052)를 기능시키고, 교정 쓰기 명령 발생기(1052)는 교정 쓰기 명령 및 쓰기 훈련단어를 생성하고, 중재기(101) 및 물리층(107)을 통해 QDRII SRAM 디바이스에 쓰고, 교정 쓰기 명령이 완료된 후에 교정 제어 상태기는 읽기 훈련단어 상태로 진입하고;
교정 제어 상태기(1051)의 상태가 읽기 훈련단어 상태인 때, 교정 읽기 명령 발생기(1053)을 기능시키고, 교정 읽기 명령 발생기(1053)는 교정 읽기 명령을 생성하고, 중재기(101) 및 물리층(107)을 통해 QDRII SRAM 디바이스에 쓰고, 교정 읽기 명령이 완료된 후에 교정 제어 상태기는 읽기 훈련단어 상태로 진입하고;
도 1 및 도 5에 도시한 바와 같이, QDRII SRAM 디바이스는 읽기 훈련단어 명령을 얻은 후에, 읽기 데이터를 물리층으로 발송하고, 물리층 샘플링은 QDRII SRAM 디바이스의 읽기 데이터에서의 긍정에지 읽기 데이터 pos_rd_data 및 부정에지 읽기 데이터 neg_rd_data를 내보내고, 그 중, pos_rd_data 및 neg_rd_data는 모두 비 시스템 클록 도메인이다.
도 5에 도시한 바와 같이, 긍정에지 읽기 데이터를 예로 하여 읽기 데이터 경로 모듈(104) 중의 처리과정을 서술하면, sys_clk, sys_clk_90, sys_clk_180 및 sys_clk_270 물리층에서 오는 긍정에지 읽기 데이터 pos_rd_data를 각각 샘플링하여, 샘플링 데이터 pos_rd_data_0, pos_rd_data_90, pos_rd_data_180 및 pos_rd_data_270를 각각 얻고;
이어서, 시스템 클록 sys_clk는 pos_rd_data_0, pos_rd_data_90, pos_rd_data_180 및 pos_rd_data_270을 샘플링하여, 샘플링 데이터 pos_rd_data_0_r, pos_rd_data_90_r, pos_rd_data_180_r 및 pos_rd_data_270_r를 각각 얻고;
부정에지 읽기 데이터의 처리방법은 긍정에지 읽기 데이터와 같으며, 도 5를 참조한다.
도 1, 도 6 및 도 7에 도시한 바와 같이, 교정 제어 상태기(1051)의 상태는 읽기 훈련단어 검측 상태일 때, 읽기 데이터 검측기(1054)를 기능시키고, 읽기 데이터 검측기(1054)는 읽기 데이터 경로 모듈(104)에서의 긍정에지 읽기 데이터 pos_rd_data_0_r, pos_rd_data_90_r, pos_rd_data_180_r 및 pos_rd_data_270_r와 훈련단어 긍정에지 데이터의 일치성을 각각 검측하고, 읽기 데이터 경로 모듈(104)에서의 부정에지 읽기 데이터 neg_rd_data_0_r, neg_rd_data_90_r, pos_rd_data_180_r 및 pos_rd_data_270_r와 훈련단어 부정에지 데이터의 일치성을 검측하여, 검측 결과를 기록한다.
도 9중 긍정에지 데이터를 예로, 읽기 데이터 검측기(1054)는 우선 하나의 시스템 클록 사이클 내에서 pos_rd_data_90_r, pos_rd_data_180_r 및 pos_rd_data_270_r와 훈련단어 긍정에지 데이터의 일치성을 검측하고, 그후에 다음의 시스템 사이클 내에서 pos_rd_data_0_r와 훈련단어 긍정에지 데이터의 일치성을 검측하며, 기록 결과는 다음과 같다:
4개 샘플링 클록이 샘플링한 읽기 데이터가 훈련단어 긍정에지 데이터와 모두 일치하고, 그리고 하나의 시스템 클록 사이클 내의 3개 클록 샘플링 데이터가 훈련단어 데이터와 일치하고, 다음의 시스템 사이클 내 1개 클록 샘플링 데이터가 훈련단어 긍정에지 데이터와 일치한다.
읽기 훈련단어가 완료된 후에, 교정 제어 상태기(1054)는 읽기 경로 선택 시그널 생성 상태로 진입한다. 도 1, 도 6 및 도 7에 도시한 바와 같이, 교정 제어 상태기(1051)의 상태는 읽기 데이터 경로 선택 시그널 생성 상태일 때, 읽기 데이터 경로 선택 시그널 생성기(1055)를 기능시키고, 읽기 데이터 경로 선택 시그널 생성기(1055)는 읽기 데이터 검측기(1054)가 기록한 읽기 데이터 검측 결과에 따라, 읽기 데이터 경로 선택 시그널을 생성한다. 읽기 데이터 경로 선택 시그널의 생성 방법은 다음과 같다.
만일 4개 샘플링 클록이 샘플링한 읽기 데이터가 모두 훈련단어와 일치하면, 읽기 데이터 경로 선택은 다음과 같은 경우로 나뉜다.
1) 하나의 시스템 클록 사이클 내에서, 4개 클록 샘플링 데이터가 모두 훈련단어와 일치하면, sys_clk_180을 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링하고, 도 8에 긍정에지 데이터를 참조하고;
2) 하나의 시스템 클록 사이클 내에서, 3개 클록 샘플링 데이터가 훈련단어와 일치하고, 다음 시스템 클록 사이클 내에서, 1개 클록 샘플링 데이터가 훈련단어와 일치하면, sys_clk_270을 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링하고, 도 9에 긍정에지 데이터를 참조하고;
3) 하나의 시스템 클록 사이클 내에서, 2개 클록 샘플링 데이터가 훈련단어와 일치하고, 다음 시스템 클록 사이클 내에서, 2개 클록 샘플링 데이터가 훈련단어와 일치하면, sys_clk를 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링하고, 도 8에 부정에지 데이터를 참조하고;
4) 하나의 시스템 클록 사이클 내에서, 1개 클록 샘플링 데이터가 훈련단어와 일치하고, 다음 시스템 클록 사이클 내에서, 3개 클록 샘플링 데이터가 훈련단어와 일치하면, sys_clk_90을 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링하고, 도 8에 부정에지 데이터를 참조하고;
만일 4개 샘플링 클록이 샘플링한 읽기 데이터 중 있으나 단지 3개만 훈련단어와 일치하면, 연속적인 3개 클록 중, 중간의 샘플링 클록의 읽기 데이터를 샘플링한 읽기 데이터 경로를 선택한다.
예를 들면 클록 순서는: …sys_clk, sys_clk_90, sys_clk_180, sys_clk_270, sys_clk, sys_clk_90, sys_clk_180, sys_clk_270…, 만일 3개 클록이 샘플링한 데이터는 예상값 (훈련단어) 과 같고, 3개 클록은 연속적이면, 3개 연속적인 클록 중간의 하나를 선택한다. 예를 들면 경우 1, sys_clk, sys_clk_90, sys_clk_180, sys_clk_90을 선택하고; 경우 2, sys_clk_90, sys_clk_180, sys_clk_270, sys_clk_180을 선택하고; 경우 3, sys_clk_180, sys_clk_270, sys_clk, sys_clk_270을 선택하고; 경우 4, sys_clk_270, sys_clk, sys_clk_90, sys_clk를 선택하는 것이다.
만일 4개 샘플링 클록이 샘플링한 읽기 데이터 중 2개 또는 2개보다 더 적은 개수가 훈련단어와 일치하면, 착오를 보고한다.
읽기 데이터 경로 선택 시그널이 생성이 완료된 후, 교정 제어 상태기(1051)는 교정 완료 상태로 진입하여, 읽기 데이터 경로 교정을 완료하고, QDR 제어 상태기(102)가 정상 작업 상태로 진입한다.
결론적으로, 본 발명은 QDR 제어기는 읽기 지연이 크고 프로그램 가능한 지연 디바이스에 의존하는 문제를 해결하고 일종의 읽기 지연이 작고 프로그램 가능한 지연 디바이스가 필요하지 않는 QDR 제어기 설계방법을 제공한다. 그리고 본 발명이 제공한 실시 장치는, FPGA 및 ASIC 논리 회로에 넓게 응용할 수 있다.
상기는 본 발명의 실시예일 뿐이고, 본 발명을 한정하는 데 사용하지 않으며, 본 분야의 기술자에 있어서, 본 발명은 여러 가지 변경 및 변화할 수 있다. 본 발명의 정신 및 원칙 내에 진행한 모든 수정, 동등교체, 개선 등, 모두는 본 발명의 특허청구범위에 포함되어야 한다.
[산업상의 실용성]
본 발명은 중재기, 제어 상태기, 읽기 데이터 샘플링 클록 생성 모듈, 읽기 데이터 경로 모듈 및 읽기 데이터 경로 교정 모듈이 포함된 쿼드 데이터 레이트 QDR 제어기 및 그의 실현방법을 제공하고, 기존 기술중 QDR 제어기는 읽기 지연이 크고 프로그램 가능한 지연 디바이스에 의존하는 단점을 극복하고, 읽기 지연이 작고 프로그램 가능한 지연 디바이스가 필요하지 않는 쿼드 데이터 레이트(QDR) 데이터 읽기 및 쓰기를 실현한다.
본 발명이 제공한 실시장치 및 방법은 FPGA 및 ASIC 논리 회로에 넓게 응용할 수 있고, 쉽게 실현할 수 있다.
100: QDR 제어기
101: 중재기
102: 제어 상태기
103: 읽기 데이터 샘플링 클록 생성 모듈
104: 읽기 데이터 경로 모듈
105: 읽기 데이터 경로 교정 모듈
106: 저장기 관리 모듈 물리층
107: 물리층
1051: 교정 제어 상태기
1052: 교정 제어 쓰기 명령 발생기
1053: 교정 제어 읽기 명령 발생기
1054: 읽기 데이터 검측기
1055: 선택 시그널 생성기
101: 중재기
102: 제어 상태기
103: 읽기 데이터 샘플링 클록 생성 모듈
104: 읽기 데이터 경로 모듈
105: 읽기 데이터 경로 교정 모듈
106: 저장기 관리 모듈 물리층
107: 물리층
1051: 교정 제어 상태기
1052: 교정 제어 쓰기 명령 발생기
1053: 교정 제어 읽기 명령 발생기
1054: 읽기 데이터 검측기
1055: 선택 시그널 생성기
Claims (11)
- 중재기, 제어 상태기, 읽기 데이터 샘플링 클록 생성 모듈, 읽기 데이터 경로 모듈, 데이터 경로 교정 모듈이 포함되고,
상기 중재기는, 상기 제어 상태기의 상태에 따라 명령 및 데이터에 대한 중재를 진행하도록 설치하고;
상기 상태 제어기는, 상기 제어기의 상태를 관리하고, 상기 중재기가 명령 및 데이터를 중재하기 위한 상태 근거를 제공하도록 설치하고;
상기 읽기 데이터 샘플링 클록 생성 모듈은, 동일한 주파수 서로 다른 위상을 가지는 읽기 데이터 샘플링 클록을 생성하도록 설치하고;
상기 읽기 데이터 경로 교정 모듈은, 상기 제어 상태기가 "읽기 데이터 경로 교정 상태"에 있을 때, 읽기 훈련단어를 통해 생성한 상기 읽기 데이터 샘플링 클록 중에서, 상기 읽기 데이터 경로 모듈이 읽기 데이터를 진행할 때의 긍정에지 데이터 및 부정에지 데이터의 샘플링 클록을 각각 확정하도록 설치하고;
상기 읽기 데이터 경로 모듈은, 상기 읽기 데이터 경로 교정 모듈이 확정한 샘플링 클록에서 따라, 비 시스템 클록 도메인의 긍정에지 읽기 데이터 및 부정에지 읽기 데이터를 시스템 클록 도메인에 동기시키는 것이 포함되는,
쿼드 데이터 레이트(QDR) 제어기. - 제1항에 있어서,
레지스터 관리 모듈은, CPU로부터의 상기 제어 상태기 및 물리층의 배치 정보를 처리하도록 더 설치하고;
상기 물리층은, 상기 중재기의 구체적인 명령의 집행 및 읽기 데이터 경로 모듈이 데이터에 대한 액세스 조작을 완료하도록 설치되는 것이 포함되는, 쿼드 데이터 레이트(QDR) 제어기. - 제1항에 있어서,
상기 읽기 데이터 경로 교정 모듈은, 교정 제어 상태기, 교정 쓰기 명령 발생기, 교정 읽기 명령 발생기, 읽기 데이터 검측기 및 읽기 데이터 경로 선택 시그널 생성기가 포함되고,
상기 교정 제어 상태기는, 상기 제어 상태기의 상태 지시가 "읽기 데이터 경로 교정 상태"에 있을 때 쓰기 훈련단어 상태로 진입하고; 교정 쓰기 명령이 완료된 후에 읽기 훈련단어를 상태로 진입하고; 교정 읽기 명령이 완료된 후에 읽기 훈련단어 검측 상태로 진입하고; 읽기 훈련단어 검측이 완료된 후에 읽기 데이터 경로 선택 시그널 생성 상태로 진입하도록 설치하고;
상기 교정 쓰기 명령 발생기는, 상기 교정 제어 상태기가 쓰기 훈련단어 상태로 진입할 때, 교정 쓰기 명령 및 쓰기 훈련단어를 생성하고, 상기 중재기 및 상기 물리층을 통해 QDRII SRAM 디바이스에 기록하도록 설치하고;
상기 교정 읽기 명령 발생기는, 상기 교정 제어 상태기가 읽기 훈련단어 상태로 진입할 때, 교정 읽기 명령을 생성하고, 상기 중재기 및 상기 물리층을 통해 상기 QDRII SRAM 디바이스에 기록하도록 설치하고;
상기 읽기 데이터 검측기는, 상기 교정 제어 상태기가 읽기 훈련단어 검측 상태로 진입할 때, 상기 읽기 데이터 경로 모듈에서의 긍정에지 읽기 데이터 및 훈련단어 긍정에지 데이터의 일치성을 각각 검측하고, 상기 읽기 데이터 경로 모듈에서의 부정에지 읽기 데이터 및 훈련단어 부정에지 데이터의 일치성을 검측하여, 읽기 데이터 검측 결과를 기록하고;
상기 읽기 데이터 경로 선택 시그널 생성기는, 상기 교정 제어 상태기가 읽기 데이터 경로 선택 시그널 생성 상태로 진입할 때, 상기 데이터 검측기가 기록한 읽기 데이터 검측 결과에 따라, 읽기 데이터 경로 선택 시그널을 생성하도록 설치하는 것이 포함되는, 쿼드 데이터 레이트(QDR) 제어기. - 제1항에 있어서,
상기 읽기 데이터 샘플링 클록 생성 모듈이 생성한 동일한 주파수 서로 다른 위상을 가지는 읽기 데이터 샘플링 클록은, 4개 샘플링 클록 sys_clk, sys_clk_90, sys_clk_180 및 sys_clk_270이 포함되는, 쿼드 데이터 레이트(QDR) 제어기. - 제3항에 있어서,
상기 읽기 데이터 샘플링 클록 생성 모듈이 생성한 동일한 주파수 서로 다른 위상을 가지는 읽기 데이터 샘플링 클록은, 4개 샘플링 클록 sys_clk, sys_clk_90, sys_clk_180 및 sys_clk_270가 포함되고;
상기 읽기 데이터 경로 선택 시그널 생성기는 상기 읽기 데이터 검측기가 기록한 데이터 검측 결과에 따라, 읽기 데이터 경로 선택 시그널을 생성하는 선택 방식은:
만일 상기 4개 읽기 데이터 샘플링 클록이 샘플링한 읽기 데이터가 모두 훈련단어와 같으면, 하나의 시스템 클록 사이클 내 샘플링 데이터 및 훈련단어가 일치한 클록 개수 및 다음의 시스템 클록 사이클 내 샘플링 데이터 및 훈련단어가 일치한 클록 개수에 따라, 상기 4개 읽기 데이터 샘플링 클록 중의 1개를 선택하여 읽기 데이터를 샘플링한 읽기 데이터 경로로 사용하고;
만일 상기 4개 읽기 데이터 샘플링 클록이 샘플링한 읽기 데이터 중 훈련단어와 일치한 읽기 데이터가 있으나 단지 3개만 있으면, 해당 일치한 3개 연속적인 클록 중 중간의 샘플링 클록을 선택하여 읽기 데이터를 샘플링한 읽기 데이터 경로로 사용하고;
만일 상기 4 개 읽기 데이터 샘플링 클록이 샘플링한 읽기 데이터 중 단지 2개 또는 2개보다 더 적은 읽기 데이터가 훈련단어와 일치하면, 착오를 보고하는 것이 포함되는, 쿼드 데이터 레이트(QDR) 제어기. - 제5항에 있어서,
상기 읽기 데이터 경로 선택 시그널 생성기는 상기 읽기 데이터 검측기가 기록한 읽기 데이터 검측 결과에 따라, 읽기 데이터 경로 선택 시그널을 생성하고, 만일 상기 4개 읽기 데이터 샘플링 클록이 샘플링한 읽기 데이터가 모두 훈련단어와 일치하면, 즉
하나의 시스템 클록 사이클 내에, 상기 4개 읽기 데이터 샘플링 클록이 샘플링한 읽기 데이터가 훈련단어와 모두 일치할 때, 상기 sys_clk_180을 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링하고;
하나의 시스템 클록 사이클 내에, 상기 4개 읽기 데이터 샘플링 클록 중 3개 샘플링한 읽기 데이터가 훈련단어와 일치하고, 다음의 시스템 클록 사이클 내에, 1개 읽기 데이터 샘플링 클록 중 샘플링한 읽기 데이터가 훈련단어와 일치할 때, 상기 sys_clk_270을 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링하고;
하나의 시스템 클록 사이클 내에, 상기 4개 읽기 데이터 샘플링 클록 중 2개 샘플링한 읽기 데이터가 훈련단어와 일치하고, 다음의 시스템 클록 사이클 내에, 2개 읽기 데이터 샘플링 클록 중 샘플링한 읽기 데이터가 훈련단어와 일치할 때, 상기 sys_clk를 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링하고;
하나의 시스템 클록 사이클 내에, 상기 4개 읽기 데이터 샘플링 클록 중 1개 샘플링한 읽기 데이터가 훈련단어와 일치하고, 다음의 시스템 클록 사이클 내에, 3개 읽기 데이터 샘플링 클록 중 샘플링한 읽기 데이터가 훈련단어와 일치할 때, 상기 sys_clk_90을 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링하는 것이 포함되는, 쿼드 데이터 레이트(QDR) 제어기. - 동일한 주파수 서로 다른 위상을 가지는 4개 클록을 채용하여 읽기 데이터를 샘플링하고;
상기 4개 클록 중 각 클록의 샘플링 데이터의 결과에 따라, 읽기 데이터의 샘플링 클록을 확정하고;
확정된 샘플링 클록에 따라 읽기 데이터를 시스템 클록 도메인에 동기시키는 것이 포함되는,
쿼드 데이터 레이트(QDR) 제어기의 실현방법. - 제7항에 있어서,
상기 동일한 주파수 서로 다른 위상을 가지는 4개 클록은, 4개 읽기 데이터 샘플링 클록 sys_clk, sys_clk_90, sys_clk_180 및 sys_clk_270이 포함되는, 쿼드 데이터 레이트(QDR) 제어기의 실현방법. - 제7항에 있어서,
상기 4개 클록 중 각 클록의 샘플링 데이터의 결과에 따라 읽기 데이터의 샘플링 클록을 확정하는 단계에는, 읽기 데이터 경로 교정 모듈은 QDR 제어기의 제어 상태기가 "읽기 데이터 경로 교정 상태"에 있을 때, 읽기 훈련단어를 통하여 생성한 읽기 데이터 샘플링 클록 중 읽기 데이터 경로 모듈이 읽기 데이터를 진행할 때의 긍정에지 데이터 및 부정에지 데이터의 샘플링 클록을 확정하는 것이 포함되는, 쿼드 데이터 레이트(QDR) 제어기의 실현방법. - 제7항에 있어서,
상기 동일한 주파수 서로 다른 위상을 가지는 4개 클록은 4개 읽기 데이터 샘플링 클록 sys_clk, sys_clk_90, sys_clk_180 및 sys_clk_270이 포함되고; 상기 4개 클록 중 각 클록 샘플링 데이터의 결과에 따라 읽기 데이터의 샘플링 클록을 확정하는 단계는 다음의 경우가 포함되고,
만일 상기 4개 클록이 샘플링한 읽기 데이터가 훈련단어와 모두 일치하면, 하나의 시스템 클록 사이클 내 샘플링 데이터 및 훈련단어가 일치한 클록 개수 및 다음의 시스템 클록 사이클 내 샘플링 데이터 및 훈련단어가 일치한 클록 개수에 따라, 상기 4개 클록 중 그의 1개를 선택하여 읽기 데이터를 샘플링한 읽기 데이터 경로로 사용하고;
만일 상기 4개 클록이 샘플링한 읽기 데이터 중 훈련단어와 일치한 읽기 데이터가 있으나 단지 3개만 있으면, 해당 일치한 3개 연속적인 클록 중 중간의 클록을 선택하여 읽기 데이터를 샘플링한 읽기 데이터 경로로 사용하고;
만일 상기 4 개 클록이 샘플링한 읽기 데이터 중 단지 2개 또는 2개보다 더 적은 읽기 데이터가 훈련단어와 일치하면, 착오를 보고하는 것이 포함되는, 쿼드 데이터 레이트(QDR) 제어기의 실현방법. - 제8항에 있어서,
만일 상기 4개 클록이 샘플링한 읽기 데이터가 모두 훈련단어와 일치하면, 하나의 시스템 클록 사이클 내 샘플링 데이터 및 훈련단어가 일치한 클록 개수 및 다음의 시스템 클록 사이클 내 샘플링 데이터 및 훈련단어가 일치한 클록 개수에 따라, 그 중의 1개를 선택하여 읽기 데이터를 샘플링한 읽기 데이터 경로로 사용하는 단계는 다음의 경우가 포함되고,
하나의 시스템 클록 사이클 내에, 상기 4개 클록 샘플링 데이터가 훈련단어와 모두 일치할 때, 상기 sys_clk_180을 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링하고;
하나의 시스템 클록 사이클 내에, 상기 4개 클록 중 3개 샘플링 데이터가 훈련단어와 일치하고, 다음의 시스템 클록 사이클 내에, 상기 4개 클록 중 1개 샘플링 데이터가 훈련단어와 일치할 때, 상기 sys_clk_270을 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링하고;
하나의 시스템 클록 사이클 내에, 상기 4개 클록 중 2개 샘플링 데이터가 훈련단어와 일치하고, 다음의 시스템 클록 사이클 내에, 상기 4개 클록 중 2개 샘플링 데이터가 훈련단어와 일치할 때, 상기 sys_clk를 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링하고;
하나의 시스템 클록 사이클 내에, 상기 4개 클록 중 1개 클록이 샘플링한 데이터가 훈련단어와 일치하고, 다음의 시스템 클록 사이클 내에, 상기 4개 클록 중 3개 클록 샘플링 데이터가 훈련단어와 일치할 때, 상기 sys_clk_90을 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링하는 것이 포함되는, 쿼드 데이터 레이트(QDR) 제어기의 실현방법.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010182594.4A CN102254569B (zh) | 2010-05-21 | 2010-05-21 | 四倍数据速率qdr控制器及其实现方法 |
CN201010182594.4 | 2010-05-21 | ||
PCT/CN2010/080140 WO2011143913A1 (zh) | 2010-05-21 | 2010-12-22 | 四倍数据速率的控制器及其实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20120069731A true KR20120069731A (ko) | 2012-06-28 |
KR101334111B1 KR101334111B1 (ko) | 2013-11-28 |
Family
ID=44981776
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020127009928A KR101334111B1 (ko) | 2010-05-21 | 2010-12-22 | 쿼드 데이터 레이트(qdr) 제어기 및 그의 실현방법 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8751853B2 (ko) |
EP (1) | EP2466414B1 (ko) |
KR (1) | KR101334111B1 (ko) |
CN (1) | CN102254569B (ko) |
WO (1) | WO2011143913A1 (ko) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102130611B1 (ko) | 2013-12-31 | 2020-07-06 | 삼성전자주식회사 | 아날로그-디지털 변환 회로, 이를 포함하는 이미지 센서 및 이미지 센서의 동작 방법 |
CN107219903B (zh) * | 2017-07-13 | 2024-02-06 | 郑州云海信息技术有限公司 | 一种伸出臂、具有扩展接线区域的设备及系统 |
US10698846B2 (en) * | 2018-11-07 | 2020-06-30 | Realtek Semiconductor Corporation | DDR SDRAM physical layer interface circuit and DDR SDRAM control device |
CN114528239A (zh) * | 2022-01-13 | 2022-05-24 | 山东华芯半导体有限公司 | 一种NAND Flash读DQS采样方法 |
CN116860185B (zh) * | 2023-09-05 | 2024-06-07 | 深圳比特微电子科技有限公司 | Sram阵列的数据访问装置、系统、方法、设备、芯片和介质 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100384775B1 (ko) * | 2000-11-23 | 2003-05-22 | 주식회사 하이닉스반도체 | 쿼드 데이터 레이트 싱크로노스 에스램의 리드/라이트를위한 워드라인 및 비트라인 구동 방법 및 그 회로 |
US6424198B1 (en) * | 2001-08-09 | 2002-07-23 | International Business Machines Corporation | Memory clock generation with configurable phase advance and delay capability |
US7308526B2 (en) * | 2004-06-02 | 2007-12-11 | Intel Corporation | Memory controller module having independent memory controllers for different memory types |
US7292500B2 (en) * | 2005-07-29 | 2007-11-06 | Agere Systems Inc. | Reducing read data strobe latency in a memory system |
US7411862B2 (en) * | 2006-11-15 | 2008-08-12 | Qimonda Ag | Control signal training |
EP2140454A2 (en) * | 2007-04-19 | 2010-01-06 | Rambus, Inc. | Clock synchronization in a memory system |
KR100891335B1 (ko) * | 2007-07-02 | 2009-03-31 | 삼성전자주식회사 | 비트 에러율 측정을 수행 할 수 있는 클럭 발생 장치 |
KR100971428B1 (ko) * | 2007-12-26 | 2010-07-21 | 주식회사 하이닉스반도체 | 듀티 보정 회로 |
KR100942953B1 (ko) * | 2008-06-30 | 2010-02-17 | 주식회사 하이닉스반도체 | 데이터 전달 회로 및 그를 포함하는 반도체 메모리 장치 |
KR101009335B1 (ko) * | 2008-12-29 | 2011-01-19 | 주식회사 하이닉스반도체 | 반도체 메모리 장치 및 그 구동방법 |
KR101004664B1 (ko) * | 2009-06-03 | 2011-01-04 | 주식회사 하이닉스반도체 | 반도체 메모리 장치 및 그 동작방법 |
-
2010
- 2010-05-21 CN CN201010182594.4A patent/CN102254569B/zh active Active
- 2010-12-22 US US13/496,606 patent/US8751853B2/en active Active
- 2010-12-22 EP EP10851670.9A patent/EP2466414B1/en active Active
- 2010-12-22 WO PCT/CN2010/080140 patent/WO2011143913A1/zh active Application Filing
- 2010-12-22 KR KR1020127009928A patent/KR101334111B1/ko active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
WO2011143913A1 (zh) | 2011-11-24 |
US8751853B2 (en) | 2014-06-10 |
KR101334111B1 (ko) | 2013-11-28 |
EP2466414B1 (en) | 2019-05-22 |
CN102254569A (zh) | 2011-11-23 |
US20130061083A1 (en) | 2013-03-07 |
EP2466414A4 (en) | 2016-10-12 |
EP2466414A1 (en) | 2012-06-20 |
CN102254569B (zh) | 2014-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102981776B (zh) | 双倍数据率虚拟静态随机存取存储器及其控制器、存取与操作方法、写入与读取方法 | |
US7379383B2 (en) | Methods of DDR receiver read re-synchronization | |
EP3105761B1 (en) | Memory physical layer interface logic for generating dynamic random access memory (dram) commands with programmable delays | |
TWI506397B (zh) | 非同步時鐘領域之間的資料傳送 | |
KR101334111B1 (ko) | 쿼드 데이터 레이트(qdr) 제어기 및 그의 실현방법 | |
KR100780962B1 (ko) | 다이나믹 odt 모드 테스트 방법 및 그 방법을 사용하는odt 모드 테스트 회로 | |
CN113009961B (zh) | 一种跨时钟同步电路及SoC系统 | |
CN101183347A (zh) | 一种自适应速率匹配总线的桥接电路 | |
US6320818B1 (en) | Semiconductor storage device, and method for generating timing of signal for activating internal circuit thereof | |
WO2018072439A1 (zh) | 一种测试信号产生方法及装置、计算机存储介质 | |
KR100598010B1 (ko) | 클럭 분배기, 클럭 분배기를 포함한 시스템, 클럭 분배방법 및 클럭 분배를 이용한 데이터 읽기 및 쓰기 방법 | |
US8782475B2 (en) | PRBS test memory interface considering DDR burst operation | |
WO2013042233A1 (ja) | 半導体装置 | |
US9298468B2 (en) | Monitoring processing time in a shared pipeline | |
US20040098685A1 (en) | Multi-cycle path analyzing method | |
CN101667448B (zh) | 存储器存取控制装置及其相关控制方法 | |
US10635628B2 (en) | Host controller apparatus, host controller device, and method for a host controller for determining information related to a time shift for transmitting instructions on a command and address bus, host controller and computer system | |
US7962698B1 (en) | Deterministic collision detection | |
JP3408486B2 (ja) | 装置間の同期回路 | |
CN102411556A (zh) | 用于ip核的处理器接口及其自动生成方法 | |
EP3973635A1 (en) | Clock domain crossing for an interface between logic circuits | |
JPS61201362A (ja) | ウエイトサイクル插入回路 | |
Ikodinovic | Methodology for Cycle-Accurate DRAM Performance Analysis | |
JPH11353095A (ja) | キー入力装置 | |
JP2018055330A (ja) | 半導体装置 |
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: 20171024 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20181025 Year of fee payment: 6 |