KR20120069731A - 쿼드 데이터 레이트(qdr) 제어기 및 그의 실현방법 - Google Patents

쿼드 데이터 레이트(qdr) 제어기 및 그의 실현방법 Download PDF

Info

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
Application number
KR1020127009928A
Other languages
English (en)
Other versions
KR101334111B1 (ko
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 지티이 코포레이션
Publication of KR20120069731A publication Critical patent/KR20120069731A/ko
Application granted granted Critical
Publication of KR101334111B1 publication Critical patent/KR101334111B1/ko

Links

Images

Classifications

    • 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/41Digital 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/413Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction
    • 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/1689Synchronisation and timing concerns
    • 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
    • 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/41Digital 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/413Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction
    • G11C11/414Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction for memory cells of the bipolar type
    • G11C11/416Read-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) 제어기 및 그의 실현방법{QUAD-DATA RATE CONTROLLER AND REALIZATION METHOD THEREOF}
본 발명은 데이터 전송 기술분야에 관하는 것이고, 특히 네트워크 교환 설비 중의 일종의 쿼드 데이터 레이트(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 설명도이다.
본 발명의 목적, 기술방안 및 장점을 더 명확하게 하기 위하여, 다음에 첨부도면을 결합하여 본 발명에 대하여 자세히 설명하겠다.
도 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: 선택 시그널 생성기

Claims (11)

  1. 중재기, 제어 상태기, 읽기 데이터 샘플링 클록 생성 모듈, 읽기 데이터 경로 모듈, 데이터 경로 교정 모듈이 포함되고,
    상기 중재기는, 상기 제어 상태기의 상태에 따라 명령 및 데이터에 대한 중재를 진행하도록 설치하고;
    상기 상태 제어기는, 상기 제어기의 상태를 관리하고, 상기 중재기가 명령 및 데이터를 중재하기 위한 상태 근거를 제공하도록 설치하고;
    상기 읽기 데이터 샘플링 클록 생성 모듈은, 동일한 주파수 서로 다른 위상을 가지는 읽기 데이터 샘플링 클록을 생성하도록 설치하고;
    상기 읽기 데이터 경로 교정 모듈은, 상기 제어 상태기가 "읽기 데이터 경로 교정 상태"에 있을 때, 읽기 훈련단어를 통해 생성한 상기 읽기 데이터 샘플링 클록 중에서, 상기 읽기 데이터 경로 모듈이 읽기 데이터를 진행할 때의 긍정에지 데이터 및 부정에지 데이터의 샘플링 클록을 각각 확정하도록 설치하고;
    상기 읽기 데이터 경로 모듈은, 상기 읽기 데이터 경로 교정 모듈이 확정한 샘플링 클록에서 따라, 비 시스템 클록 도메인의 긍정에지 읽기 데이터 및 부정에지 읽기 데이터를 시스템 클록 도메인에 동기시키는 것이 포함되는,
    쿼드 데이터 레이트(QDR) 제어기.
  2. 제1항에 있어서,
    레지스터 관리 모듈은, CPU로부터의 상기 제어 상태기 및 물리층의 배치 정보를 처리하도록 더 설치하고;
    상기 물리층은, 상기 중재기의 구체적인 명령의 집행 및 읽기 데이터 경로 모듈이 데이터에 대한 액세스 조작을 완료하도록 설치되는 것이 포함되는, 쿼드 데이터 레이트(QDR) 제어기.
  3. 제1항에 있어서,
    상기 읽기 데이터 경로 교정 모듈은, 교정 제어 상태기, 교정 쓰기 명령 발생기, 교정 읽기 명령 발생기, 읽기 데이터 검측기 및 읽기 데이터 경로 선택 시그널 생성기가 포함되고,
    상기 교정 제어 상태기는, 상기 제어 상태기의 상태 지시가 "읽기 데이터 경로 교정 상태"에 있을 때 쓰기 훈련단어 상태로 진입하고; 교정 쓰기 명령이 완료된 후에 읽기 훈련단어를 상태로 진입하고; 교정 읽기 명령이 완료된 후에 읽기 훈련단어 검측 상태로 진입하고; 읽기 훈련단어 검측이 완료된 후에 읽기 데이터 경로 선택 시그널 생성 상태로 진입하도록 설치하고;
    상기 교정 쓰기 명령 발생기는, 상기 교정 제어 상태기가 쓰기 훈련단어 상태로 진입할 때, 교정 쓰기 명령 및 쓰기 훈련단어를 생성하고, 상기 중재기 및 상기 물리층을 통해 QDRII SRAM 디바이스에 기록하도록 설치하고;
    상기 교정 읽기 명령 발생기는, 상기 교정 제어 상태기가 읽기 훈련단어 상태로 진입할 때, 교정 읽기 명령을 생성하고, 상기 중재기 및 상기 물리층을 통해 상기 QDRII SRAM 디바이스에 기록하도록 설치하고;
    상기 읽기 데이터 검측기는, 상기 교정 제어 상태기가 읽기 훈련단어 검측 상태로 진입할 때, 상기 읽기 데이터 경로 모듈에서의 긍정에지 읽기 데이터 및 훈련단어 긍정에지 데이터의 일치성을 각각 검측하고, 상기 읽기 데이터 경로 모듈에서의 부정에지 읽기 데이터 및 훈련단어 부정에지 데이터의 일치성을 검측하여, 읽기 데이터 검측 결과를 기록하고;
    상기 읽기 데이터 경로 선택 시그널 생성기는, 상기 교정 제어 상태기가 읽기 데이터 경로 선택 시그널 생성 상태로 진입할 때, 상기 데이터 검측기가 기록한 읽기 데이터 검측 결과에 따라, 읽기 데이터 경로 선택 시그널을 생성하도록 설치하는 것이 포함되는, 쿼드 데이터 레이트(QDR) 제어기.
  4. 제1항에 있어서,
    상기 읽기 데이터 샘플링 클록 생성 모듈이 생성한 동일한 주파수 서로 다른 위상을 가지는 읽기 데이터 샘플링 클록은, 4개 샘플링 클록 sys_clk, sys_clk_90, sys_clk_180 및 sys_clk_270이 포함되는, 쿼드 데이터 레이트(QDR) 제어기.
  5. 제3항에 있어서,
    상기 읽기 데이터 샘플링 클록 생성 모듈이 생성한 동일한 주파수 서로 다른 위상을 가지는 읽기 데이터 샘플링 클록은, 4개 샘플링 클록 sys_clk, sys_clk_90, sys_clk_180 및 sys_clk_270가 포함되고;
    상기 읽기 데이터 경로 선택 시그널 생성기는 상기 읽기 데이터 검측기가 기록한 데이터 검측 결과에 따라, 읽기 데이터 경로 선택 시그널을 생성하는 선택 방식은:
    만일 상기 4개 읽기 데이터 샘플링 클록이 샘플링한 읽기 데이터가 모두 훈련단어와 같으면, 하나의 시스템 클록 사이클 내 샘플링 데이터 및 훈련단어가 일치한 클록 개수 및 다음의 시스템 클록 사이클 내 샘플링 데이터 및 훈련단어가 일치한 클록 개수에 따라, 상기 4개 읽기 데이터 샘플링 클록 중의 1개를 선택하여 읽기 데이터를 샘플링한 읽기 데이터 경로로 사용하고;
    만일 상기 4개 읽기 데이터 샘플링 클록이 샘플링한 읽기 데이터 중 훈련단어와 일치한 읽기 데이터가 있으나 단지 3개만 있으면, 해당 일치한 3개 연속적인 클록 중 중간의 샘플링 클록을 선택하여 읽기 데이터를 샘플링한 읽기 데이터 경로로 사용하고;
    만일 상기 4 개 읽기 데이터 샘플링 클록이 샘플링한 읽기 데이터 중 단지 2개 또는 2개보다 더 적은 읽기 데이터가 훈련단어와 일치하면, 착오를 보고하는 것이 포함되는, 쿼드 데이터 레이트(QDR) 제어기.
  6. 제5항에 있어서,
    상기 읽기 데이터 경로 선택 시그널 생성기는 상기 읽기 데이터 검측기가 기록한 읽기 데이터 검측 결과에 따라, 읽기 데이터 경로 선택 시그널을 생성하고, 만일 상기 4개 읽기 데이터 샘플링 클록이 샘플링한 읽기 데이터가 모두 훈련단어와 일치하면, 즉
    하나의 시스템 클록 사이클 내에, 상기 4개 읽기 데이터 샘플링 클록이 샘플링한 읽기 데이터가 훈련단어와 모두 일치할 때, 상기 sys_clk_180을 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링하고;
    하나의 시스템 클록 사이클 내에, 상기 4개 읽기 데이터 샘플링 클록 중 3개 샘플링한 읽기 데이터가 훈련단어와 일치하고, 다음의 시스템 클록 사이클 내에, 1개 읽기 데이터 샘플링 클록 중 샘플링한 읽기 데이터가 훈련단어와 일치할 때, 상기 sys_clk_270을 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링하고;
    하나의 시스템 클록 사이클 내에, 상기 4개 읽기 데이터 샘플링 클록 중 2개 샘플링한 읽기 데이터가 훈련단어와 일치하고, 다음의 시스템 클록 사이클 내에, 2개 읽기 데이터 샘플링 클록 중 샘플링한 읽기 데이터가 훈련단어와 일치할 때, 상기 sys_clk를 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링하고;
    하나의 시스템 클록 사이클 내에, 상기 4개 읽기 데이터 샘플링 클록 중 1개 샘플링한 읽기 데이터가 훈련단어와 일치하고, 다음의 시스템 클록 사이클 내에, 3개 읽기 데이터 샘플링 클록 중 샘플링한 읽기 데이터가 훈련단어와 일치할 때, 상기 sys_clk_90을 선택하여 읽기 데이터의 읽기 데이터 경로를 샘플링하는 것이 포함되는, 쿼드 데이터 레이트(QDR) 제어기.
  7. 동일한 주파수 서로 다른 위상을 가지는 4개 클록을 채용하여 읽기 데이터를 샘플링하고;
    상기 4개 클록 중 각 클록의 샘플링 데이터의 결과에 따라, 읽기 데이터의 샘플링 클록을 확정하고;
    확정된 샘플링 클록에 따라 읽기 데이터를 시스템 클록 도메인에 동기시키는 것이 포함되는,
    쿼드 데이터 레이트(QDR) 제어기의 실현방법.
  8. 제7항에 있어서,
    상기 동일한 주파수 서로 다른 위상을 가지는 4개 클록은, 4개 읽기 데이터 샘플링 클록 sys_clk, sys_clk_90, sys_clk_180 및 sys_clk_270이 포함되는, 쿼드 데이터 레이트(QDR) 제어기의 실현방법.
  9. 제7항에 있어서,
    상기 4개 클록 중 각 클록의 샘플링 데이터의 결과에 따라 읽기 데이터의 샘플링 클록을 확정하는 단계에는, 읽기 데이터 경로 교정 모듈은 QDR 제어기의 제어 상태기가 "읽기 데이터 경로 교정 상태"에 있을 때, 읽기 훈련단어를 통하여 생성한 읽기 데이터 샘플링 클록 중 읽기 데이터 경로 모듈이 읽기 데이터를 진행할 때의 긍정에지 데이터 및 부정에지 데이터의 샘플링 클록을 확정하는 것이 포함되는, 쿼드 데이터 레이트(QDR) 제어기의 실현방법.
  10. 제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) 제어기의 실현방법.
  11. 제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) 제어기의 실현방법.
KR1020127009928A 2010-05-21 2010-12-22 쿼드 데이터 레이트(qdr) 제어기 및 그의 실현방법 KR101334111B1 (ko)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 주식회사 하이닉스반도체 반도체 메모리 장치 및 그 동작방법

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