KR20080000249A - Fifo 장치를 구비하는 데이터 처리장치와 데이터처리방법 - Google Patents

Fifo 장치를 구비하는 데이터 처리장치와 데이터처리방법 Download PDF

Info

Publication number
KR20080000249A
KR20080000249A KR1020060057893A KR20060057893A KR20080000249A KR 20080000249 A KR20080000249 A KR 20080000249A KR 1020060057893 A KR1020060057893 A KR 1020060057893A KR 20060057893 A KR20060057893 A KR 20060057893A KR 20080000249 A KR20080000249 A KR 20080000249A
Authority
KR
South Korea
Prior art keywords
data
flip
edge
clock signal
flops
Prior art date
Application number
KR1020060057893A
Other languages
English (en)
Other versions
KR100818800B1 (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 삼성전자주식회사
Priority to KR1020060057893A priority Critical patent/KR100818800B1/ko
Priority to JP2007134263A priority patent/JP2008010136A/ja
Priority to CNA2007101081203A priority patent/CN101097508A/zh
Priority to US11/811,726 priority patent/US7802123B2/en
Publication of KR20080000249A publication Critical patent/KR20080000249A/ko
Application granted granted Critical
Publication of KR100818800B1 publication Critical patent/KR100818800B1/ko

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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C19/00Digital stores in which the information is moved stepwise, e.g. shift registers
    • G11C19/28Digital stores in which the information is moved stepwise, e.g. shift registers using semiconductor elements
    • G11C19/287Organisation of a multiplicity of shift registers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C27/00Electric analogue stores, e.g. for storing instantaneous values
    • G11C27/02Sample-and-hold arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Communication Control (AREA)

Abstract

FIFO장치를 구비하는 데이터 처리장치와 데이터 처리방법이 개시된다. 상기 데이터 처리 장치는 제1샘플링 회로, 지연 회로, 및 FIFO 장치를 구비한다. 상기 제1샘플링 회로는 제1클락 신호의 제1에지에 응답하여 입력 데이터의 논리 상태를 샘플링하고 샘플링 결과를 유지한다. 상기 지연회로는 수신된 상기 제1클락 신호를 소정시간 지연시켜 제2클락 신호를 출력한다. 상기 FIFO 장치는 상기 지연회로로부터 출력된 상기 제2클락 신호의 상기 제1에지에 응답하여 상기 제1샘플링 회로에 의한 샘플링 결과를 선입-선출 방법으로 처리한다.
FIFO 장치, DDR, GDDR

Description

FIFO 장치를 구비하는 데이터 처리장치와 데이터 처리방법{Apparatus and method for processing data having first-in first-out device}
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 상세한 설명이 제공된다.
도 1은 본 발명의 실시예에 따른 FIFO 장치를 구비하는 데이터 처리장치의 기능 블락도를 나타낸다.
도 2는 도 1에 도시된 FIFO 장치의 기능 블락도를 나타낸다.
도 3은 도 1에 도시된 FIFO 장치를 구비하는 데이터 처리장치의 작동 파형들을 나타낸다.
도 4는 본 발명의 실시예에 따른 FIFO 장치를 구비하는 데이터 처리장치의 기능 블락도를 나타낸다.
도 5는 도 4에 도시된 FIFO 장치의 기능 블락도를 나타낸다.
본 발명은 데이터 처리기술에 관한 것으로, 보다 상세하게는 FIFO 장치를 구비하는 데이터 처리 장치와 데이터 처리 방법에 관한 것이다.
이중 데이터 레이트 (Double Data Rate; DDR)로 데이터를 처리하는 메모리 장치, 예컨대, DDR 메모리 장치, DDR2 메모리 장치, DDR3 메모리 장치, 그래픽스 DDR(Graphics DDR; GDDR) 메모리 장치, GDDR2 메모리 장치, 또는 GDDR3 메모리 장치 등의 작동을 제어하기 위한 메모리 컨트롤러는 상기 DDR로 데이터를 처리하는 메모리 장치로부터 출력된 데이터 스트로브(strobe) 신호의 위상을 90도 이동(shift)시켜서 발생된 클락 신호에 동기되어 입력 데이터를 래치하는 방법으로 읽기 작동을 수행한다.
타이밍 마진(timing margin)을 높이기 위해서는 상기 입력 데이터를 래치하기 위한 다수의 플립-플롭들 각각의 클락 단자로 입력되는 데이터 스트로브 신호들 사이의 스큐(skew)와 상기 다수의 플립-플롭들 각각의 입력 단자로 입력되는 데이터 사이의 스큐의 조절이 매우 중요하다. 여기서, 상기 클락 단자와 상기 입력 단자는 상기 스큐를 조절하기 위한 포인트들(points)이 된다.
상기 메모리 장치와 상기 메모리 컨트롤러 각각의 작동 속도가 증가함에 따라, 고속으로 입/출력되는 입력 데이터를 래치하기 위해서는 FIFO 장치의 사용이 필요하다.
그러나, 상기 FIFO 장치는 다수의 플립-플롭들을 구비하므로 스큐를 조절해야하는 포인트들의 수도 증가한다. 따라서 상기 다수의 플립-플롭들 각각의 클락 단자로 입력되는 데이터 스트로브 신호들 사이의 스큐와 상기 다수의 플립-플롭들 각각의 입력 단자로 입력되는 데이터 사이의 스큐의 조절에 어려움이 있다. 또한, 상기 FIFO 장치의 깊이(depth)가 증가함에 따라 스큐를 조절해야하는 포인트들이 증가하는 문제점이 있다.
따라서 본 발명이 이루고자 하는 기술적인 과제는 FIFO 장치의 깊이에 상관없이 스큐를 맞추어야하는 포인트들이 동일한 상기 FIFO 장치를 구비하는 데이터 처리장치와 데이터 처리방법을 제공하는 것이다.
상기 기술적 과제를 달성하기 위한 데이터 처리장치는 제1샘플링 회로, 지연회로, FIFO 장치를 구비한다. 상기 제1샘플링 회로는 제1클락 신호의 제1에지에 응답하여 입력 데이터의 논리 상태를 샘플링하고 샘플링 결과를 유지(hold)한다. 상기 지연회로는 수신된 상기 제1클락 신호를 소정시간 지연시켜 제2클락 신호를 출력한다. 상기 FIFO 장치는 상기 지연회로로부터 출력된 상기 제2클락 신호의 상기 제1에지에 응답하여 상기 제1샘플링 회로에 의한 샘플링 결과를 선입-선출 방법으로 처리한다.
상기 데이터 처리장치는 상기 제1클락 신호의 제2에지에 응답하여 상기 입력 데이터의 논리 상태를 샘플링하고 샘플링 결과를 유지하기 위한 제2샘플링 회로를 더 구비한다. 상기 FIFO 장치는 상기 지연회로로부터 출력된 상기 제2클락 신호의 상기 제2에지에 응답하여 상기 제2샘플링 회로에 의한 샘플링 결과를 상기 선입-선출 방법으로 처리한다. 상기 데이터 처리장치는 데이터 스트로브 신호를 수신하고, 수신된 상기 데이터 스트로브 신호의 위상과 90도의 위상차이를 갖는 상기 제1클락 신호를 발생하기 위한 위상 쉬프터를 더 구비한다. 상기 제1샘플링 회로와 상기 제 2샘플링 회로 각각은 플립-플롭이다.
상기 FIFO 장치는 각각이 상기 제2클락 신호의 상기 제1에지에 응답하여 각각의 입력단자로 입력되는 데이터를 래치하기 위한 다수의 제1에지 트리거드 플립-플롭들; 적어도 하나의 기입 제어신호에 응답하여, 상기 다수의 제1에지 트리거드 플립-플롭들 중에서 대응되는 어느 하나의 플립-플롭의 입력단자로 상기 입력 데이터를 전송하기 위한 기입 제어회로; 및 적어도 하나의 독출 제어신호에 응답하여, 상기 다수의 제1에지 트리거드 플립-플롭들 중에서 대응되는 어느 하나의 플립-플롭에 래치된 데이터를 출력 데이터로서 출력하기 위한 독출 제어회로를 구비한다.
상기 기입 제어회로는 상기 적어도 하나의 기입 제어신호에 응답하여 다수의 기입 선택신호들을 출력하기 위한 기입 선택신호 발생회로; 및 다수의 선택회로들을 구비한다. 상기 다수의 선택회로들 각각은 상기 입력 데이터를 수신하기 위한 제1단자, 상기 다수의 제1에지 트리거드 플립-플롭들 중에서 대응되는 플립-플롭으로부터 출력된 데이터를 수신하기 위한 제2단자, 및 상기 다수의 기입 선택신호들 중에서 대응되는 선택신호에 응답하여 상기 제1단자로 입력된 상기 입력 데이터와 상기 제2단자로 입력된 상기 데이터 중에서 어느 하나를 상기 다수의 제1에지 트리거드 플립-플롭들 중에서 대응되는 어느 하나의 플립-플롭의 입력단자로 출력하기 위한 출력단자를 구비한다. 상기 데이터 처리회로는 더블 데이터 레이트로 데이터를 처리하는 장치를 제어하기 위한 컨트롤러이다.
상기 기술적 과제를 달성하기 위한 데이터 처리장치는 각각이, 제1클락 신호의 제1에지에 응답하여, 각각의 입력단자로 입력되는 입력 데이터를 래치하기 위한 다수의 제1플립-플롭들; 상기 제1클락 신호를 수신하고, 수신된 제1클락 신호를 소정시간 지연시켜 제2클락 신호를 출력하기 위한 지연회로; 및 상기 지연회로로부터 출력된 상기 제2클락 신호의 상기 제1에지에 응답하여 상기 다수의 제1플립-플롭들 각각으로부터 출력된 데이터를 선입-선출 방법으로 처리하기 위한 FIFO 장치를 구비한다.
상기 데이터 처리장치는 각각의 입력단자가 상기 다수의 제1플립-플롭들 중에서 대응되는 플립-플롭의 입력단자에 접속되고, 상기 제1클락 신호의 제2에지에 응답하여 상기 각각의 입력단자로 입력되는 상기 입력 데이터를 래치하기 위한 다수의 제2플립-플롭들을 더 구비하며, 상기 FIFO 장치는 상기 지연회로로부터 출력된 상기 제2클락 신호의 상기 제2에지에 응답하여 상기 다수의 제2플립-플롭들 각각으로부터 출력된 데이터를 상기 선입-선출 방법으로 처리한다.
상기 기술적 과제를 달성하기 위한 데이터 처리장치는 제1클락 신호(CLKD)의 제1에지에 응답하여 n(n은 자연수)번째 입력 데이터의 논리 상태를 래치하기 위한 제1플립-플롭; 상기 제1클락 신호의 제2에지에 응답하여 (n+1)번째 입력 데이터의 논리 상태를 래치하기 위한 제2플립-플롭; 상기 제1클락 신호를 수신하고, 수신된 상기 제1클락 신호를 소정시간 지연시켜 제2클락 신호를 출력하기 위한 지연회로; 및 상기 지연회로로부터 출력된 상기 제2클락 신호의 상기 제1에지에 응답하여 상기 제1플립-플롭에 래치된 데이터를 선입-선출 방법으로 처리하고, 상기 제2클락 신호의 상기 제2에지에 응답하여 상기 제2플립-플롭에 래치된 데이터를 상기 선입-선출 방법으로 처리하기 위한 FIFO 장치를 구비한다.
상기 FIFO 장치는 각각이 상기 제2클락 신호의 상기 제1에지에 동기되어 각각의 입력단자로 입력되는 데이터를 래치하기 위한 다수의 제1에지 트리거드 플립-플롭들; 각각이 상기 제2클락 신호의 상기 제2에지에 동기되어 각각의 입력단자로 입력되는 데이터를 래치하기 위한 다수의 제2에지 트리거드 플립-플롭들; 적어도 하나의 기입 제어신호에 응답하여 상기 제1플립-플롭에 래치된 상기 n번째 입력 데이터를 상기 다수의 제1에지 트리거드 플립-플롭들 중에 적어도 하나의 플립-플롭의 입력단자로 전송하고, 상기 제2플립-플롭에 래치된 상기 (n+1)번째 입력 데이터를 상기 다수의 제2에지 트리거드 플립-플롭들 중에 적어도 하나의 플립-플롭의 입력단자로 전송하기 위한 기입 제어회로; 및 적어도 하나의 독출 제어신호에 응답하여, 상기 다수의 제1에지 트리거드 플립-플롭들 중에서 어느 하나의 플립-플롭에 래치된 데이터와 상기 다수의 제2에지 트리거드 플립-플롭들 중에서 어느 하나의 플립-플롭에 래치된 데이터 중에서 어느 하나를 출력하기 위한 독출 제어회로를 구비한다.
상기 기술적 과제를 달성하기 위한 FIFO 장치의 데이터 처리방법은 제1플립-플롭이 제1클락 신호의 제1에지에 응답하여 입력 데이터의 논리 상태를 래치하는 단계; 지연회로가 상기 제1클락 신호를 소정시간 지연시켜 제2클락 신호를 발생하는 단계; 및 FIFO가 상기 제2클락 신호의 상기 제1에지에 응답하여 상기 제1플립-플롭에 래치된 데이터를 수신하고 선입-선출 방법으로 처리하는 단계를 구비한다.
상기 FIFO의 데이터 처리방법은 제2플립-플롭이 상기 제1클락 신호의 제2에지에 응답하여 상기 입력 데이터를 래치하는 단계; 및 상기 FIFO가 상기 제2클락 신호의 상기 제2에지에 응답하여 상기 제2플립-플롭에 래치된 데이터를 수신하고 상기 선입-선출 방법으로 처리하는 단계를 더 구비한다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 실시예에 따른 FIFO 장치를 구비하는 데이터 처리장치의 기능 블락도를 나타낸다. 도 1을 참조하면, 상기 데이터 처리장치(10)는 다수의 샘플링 회로들(20-1, 20-2, 20-3, ..., 20-n, n은 자연수), 지연회로(30), 및 다수의 FIFO 장치들(40-1, 40-2, 40-3,..., 40-n)을 구비한다. 상기 데이터 처리장치(10)는 위상 쉬프터(phase shifter; 50)를 더 구비할 수 있다.
상기 다수의 샘플링 회로들(20-1, 20-2, 20-3,..., 20-n) 각각은 에지 트리거드 D 플립-플롭 (edge triggered D flop-flop)으로 구현될 수 있으나 이에 한정되는 것은 아니다.
상기 다수의 샘플링 회로들(20-1, 20-2, 20-3,..., 20-n) 각각은 제1클락 신호(CLKD)의 제1에지(예컨대, 상승 에지)에 응답하여 n비트 데이터 라인들 중에서 대응되는 하나의 데이터 라인을 통하여 입력되는 입력 데이터의 논리 상태(예컨대, 논리 하이("1")와 논리 로우("0") 중에서 어느 하나)를 캡춰(capture)하고, 캡춰된 입력 데이터를 유지(hold)한다. 이러한 캡춰와 유지 작동을 래치(latch)라고도 한다.
여기서 상기 입력 데이터(DI[n-1:0]) 각각은 지연된 소스 데이터(IN[n-1:0])각각에 대응된다. 본 명세서에서는 설명의 편의를 위하여 각 데이터 라인에 의한 지연이나 버퍼(미도시) 등에 의한 지연은 고려하지 않는다.
상기 지연회로(30)는 상기 제1클락 신호(CLKD)를 수신하고, 수신된 상기 제1클락 신호(CLKD)를 소정의 시간(TA)만큼 지연시켜 제2클락 신호(CLKC)를 출력한다. 예컨대, 상기 지연회로(30)는 직렬로 접속된 다수의 버퍼들로 구현될 수 있다. 도 1에는 두 개의 버퍼들(31과 33)로 구현된 지연회로(30)를 도시하나 상기 지연회로(30)는 직렬로 접속된 버퍼들의 수에 한정되는 것은 아니다. 또한, 상기 지연회로(30)는 외부로부터 입력된 소정의 제어신호에 응답하여 상기 소정의 시간(TA)을 조절할 수도 있다.
상기 다수의 FIFO 장치들(40-1, 40-2, 40-3,..., 40-n) 각각은 상기 지연회로(30)로부터 출력된 상기 제2클락 신호(CLKC)의 상기 제1에지에 응답하여 상기 다수의 샘플링 회로들(20-1 내지 20-n) 각각에 의하여 캡춰되고 유지된 데이터를 선입-선출 방법으로 처리하고, 처리된 데이터를 출력한다. 상기 다수의 FIFO 장치들(40-1, 40-2, 40-3,..., 40-n) 각각은 N-깊이를 갖는 m(여기서, m은 자연수, 예컨대 m=1)비트 FIFO 장치로 구현될 수 있다.
예컨대, N-깊이(여기서, N은 자연수)를 갖는 n비트 FIFO 장치는 상기 지연회로(30)로부터 출력된 상기 제2클락 신호(CLKC)의 제1에지에 응답하여 다수의 샘플 링 회로들(20-1, 20-2, 20-3, ..., 20-n)에 의하여 래치된 데이터(DO[n-1:0])를 선입-선출 방법으로 처리하고, 처리된 데이터(OUT[n-1:0])를 출력한다.
상기 위상 쉬프터(50)는 DDR 메모리 장치, DDR2 메모리 장치, DDR3 메모리 장치, GDDR 메모리 장치, GDDR2 메모리 장치, 또는 GDDR3 메모리 장치로부터 출력된 데이터 스트로브 신호(CLK)를 수신하고, 수신된 상기 데이터 스트로브 신호(CLK)의 위상을 90도 이동시켜 상기 제1클락 신호(CLKD)를 발생한다. 따라서 상기 위상 쉬프터(50)는 상기 데이터 스트로브 신호(CLK)의 위상과 90도의 위상 차이를 갖는 상기 제1클락 신호(CLKD)를 발생한다. 상기 데이터 처리 장치(10)는 소정의 메모리 장치의 작동을 제어하기 위한 컨트롤러의 기능을 수행한다.
도 2는 도 1에 도시된 FIFO 장치의 기능 블락도를 나타낸다. 도 2는 설명의 편의를 위하여 다수의 데이터 라인들 중에서 어느 하나의 데이터 라인을 통하여 입력된 데이터를 래치하는 플립-플롭(20-1)으로부터 출력된 데이터(DO[0])를 선입-선출 방법으로 처리하기 위한 m(예컨대, m=1)비트 FIFO 장치(40-1)만을 도시한 것이다. 상기 1비트 FIFO 장치(40-1)의 깊이(depth)는 4이다. 여기서 깊이 4란 상기 FIFO 장치(40-1)가 4개의 플립-플롭들(61, 63, 65, 및 67)을 갖는 경우를 의미한다.
따라서, n비트 FIFO 장치는 도 2에 도시된 1비트 FIFO 장치(40-1)의 구조와 동일한 구조를 갖으며 대응되는 입력 데이터를 선입-선출 방법으로 처리하기 위한 n개의 1비트 FIFO 장치를 구비한다.
상기 FIFO 장치(40-1)는 다수의 플립-플롭들 (61, 63, 65, 및 67), 기입 제 어회로(70), 및 독출 제어회로(80)를 구비한다. 상기 다수의 플립-플롭들 (61, 63, 65, 및 67) 각각은 상승 에지 트리거드 D 플립-플롭으로 구현될 수 있다.
상기 기입 제어회로(70)는 적어도 하나의 기입 제어신호(W_CTRL)에 응답하여 상기 다수의 플립-플롭들 (61, 63, 65, 및 67) 중에서 어느 하나의 플립-플롭의 입력단자 (D)로 입력 데이터 (DO[0])를 전송한다. 상기 입력 데이터 (DO[0])는 하나의 데이터 라인을 통하여 전송되는 데이터를 의미한다.
상기 기입 제어회로(70)는 기입 선택신호 발생회로(71)와 다수의 선택회로들 (73, 75, 77, 및 79)을 구비한다.
상기 기입 선택신호 발생회로(71)는 상기 적어도 하나의 기입 제어신호 (W_CTRL)에 응답하여 다수의 기입 선택신호들(D0, D1, D2, 및 D3)을 출력한다. 상기 다수의 기입 선택신호들(D0, D1, D2, 및 D3) 각각의 논리 상태의 조합에 따라서, 다수의 플립-플롭들 (61, 63, 65, 및 67) 중에서 입력 데이터(DO[0])가 입력될 어느 하나의 플립-플롭이 선택된다. 따라서 상기 기입 선택신호 발생회로(71)는 데이터가 저장될 플립-플롭을 선택하기 위한 기입 포인터(write pointer)로서의 기능을 수행한다.
상기 다수의 선택회로들 (73, 75, 77, 및 79) 각각은 멀티플렉서로 구현될 수 있으나 이에 한정되는 것은 아니다.
상기 다수의 선택회로들 (73, 75, 77, 및 79) 각각은 상기 입력 데이터 (DO[0])를 수신하기 위한 제1단자("0"으로 표시됨), 상기 다수의 플립-플롭들 (61, 63, 65, 및 67) 중에서 대응되는 플립-플롭으로부터 출력된 출력 데이터를 수신하 기 위한 제2단자("1"로 표시됨), 및 상기 다수의 기입 선택신호들(D0, D1, D2, 및 D3) 중에서 대응되는 선택신호에 응답하여 상기 제1단자("0")로 입력된 상기 입력 데이터 (DO[0])와 상기 제2단자("1")로 입력된 상기 출력 데이터 중에서 어느 하나를 상기 다수의 플립-플롭들 (61, 63, 65, 및 67) 중에서 대응되는 플립-플롭의 입력단자 (D)로 출력하기 위한 출력단자 (Q)를 구비한다.
상기 다수의 플롭-플롭들(61, 63, 65, 및 67) 중에서 어느 하나의 플립-플롭은 상기 제2클락 신호(CLKC)의 상기 제1에지에 응답하여 상기 기입 제어회로(70)로부터 출력된 데이터를 캡춰할 수 있다.
예컨대, 상기 다수의 기입 선택신호들(D0, D1, D2, 및 D3)의 논리 상태가 0111인 경우, 플립-플롭(61)은 상기 제2클락 신호(CLKC)의 상기 제1에지에 동기되어 입력 데이터(DO[0])을 래치할 수 있다. 또한, 상기 다수의 기입 선택신호들(D0, D1, D2, 및 D3)의 논리 상태가 1110인 경우, 플립-플롭(67)은 상기 제2클락 신호(CLKC)의 상기 제1에지에 동기되어 입력 데이터(DO[0])을 래치할 수 있다.
상기 독출 제어회로(80)는 적어도 하나의 독출 제어신호(R_CTRL)에 응답하여 상기 다수의 플립-플롭들(61, 63, 65, 및 67) 중에서 어느 하나의 플립-플롭에 캡춰된 데이터를 출력 데이터(OUT[0])로서 출력할 수 있다.
상기 독출 제어회로(80)는 독출 선택신호 발생회로(81)와 선택회로(83)를 구비한다. 상기 독출 선택신호 발생회로(81)는 상기 적어도 하나의 독출 제어신호(R_CTRL)에 응답하여 다수의 독출 선택신호들(R_SEL)을 출력한다. 상기 다수의 독출 선택신호들(R_SEL)은 n비트 선택신호들일 수 있다. 상기 독출 선택신호 발생 회로(81)는 다수의 플립-플롭들(61, 63, 65, 및 67) 중에서 출력될 데이터가 저장된 플립-플롭을 선택하기 위한 독출 포인터(read pointer)로서의 기능을 수행한다.
상기 선택회로(83)는 상기 다수의 독출 선택신호들(R_SEL)에 응답하여 상기 다수의 플립-플롭들(61, 63, 65, 및 67) 중에서 어느 하나의 플립-플롭에 캡춰된 데이터를 출력 데이터(OUT[0])로서 출력할 수 있다.
상기 선택회로(83)는 멀티플렉서로 구현될 수 있다. 예컨대, 상기 선택회로(83)는 2비트 독출 선택 신호들(R_SEL)에 응답하여 4개의 플립-플롭들(61, 63, 65, 및 67) 중에서 어느 하나의 플립-플롭에 래치된 데이터를 출력 데이터(OUT[0])로서 출력할 수 있다.
도 3은 도 1에 도시된 FIFO 장치를 구비하는 데이터 처리장치의 작동 파형들을 나타낸다. 도 3을 참조하면, FIFO 장치(40-1)만을 이용하여 하나의 데이터 라인을 통하여 입력되는 입력 데이터(DO[0])를 처리하는 경우, 상기 입력 데이터 (DO[0])의 독출 마진(read margin)을 높이기 위해서는 상기 다수의 플립-플롭들(61, 63, 65, 및 67) 각각의 클락 단자(CK)로 입력되는 제2클락 신호(CLKC)에 의한 클락 스큐와 상기 다수의 플립-플롭들(61, 63, 65, 및 67) 각각의 입력 단자(D)로 입력되는 입력 데이터(DO[0])에 의한 데이터 스큐를 맞추어야 한다. 상기 데이터 스큐가 증가하는 경우, 유효 데이터 윈도우 (valid data window)는 작아진다.
그러나, 도 1에 도시된 데이터 처리장치(10)와 같이 각각의 FIFO 장치(40-1, 40-2, 40-3, ..., 40-n)의 앞에 각각의 입력 데이터를 버퍼링할 수 있는 각각의 플립-플롭 (20-1, 20-2, 20-3, ..., 20-n)을 설치하면, 상기 각각의 플립-플롭 (20- 1, 20-2, 20-3, ..., 20-n)은 각각의 입력 데이터를 제1클락 신호(CLKD)의 상승 에지에 응답하여 샘플링 또는 래치한다.
그리고, 지연회로(30)는 상기 제1클락 신호(CLKD)를 소정의 시간(TA)만큼 지연시켜 제2클락 신호(CLKC)를 발생한다. 상기 각각의 플립-플롭 (20-1, 20-2, 20-3, ..., 20-n)에 의하여 샘플링 또는 래치된 각각의 입력 데이터(DI[n-1:0])는 각각의 FIFO 장치(40-1, 40-2, 40-3, 및 40-n)로 입력되므로, 상기 각각의 FIFO 장치(40-1, 40-2, 40-3, 및 40-n)는 각각의 클락 단자(CK)로 입력되는 상기 제2클락 신호(CLKC)의 제1에지(예컨대, 상승 에지)와 제2에지(예컨대, 하강 에지) 중에서 적어도 어느 하나에 응답하여 상기 각각의 입력 데이터(DI[n-1:0])를 선입-선출 방법으로 처리한다.
따라서 데이터 처리장치(10)의 설계시 상기 지연회로(30)에 의한 지연시간(TA)을 조절하여 데이터 스큐를 감소시킬 수 있다.
즉, 다수의 플립-플롭들 (20-1, 20-2, 20-3, ..., 20-n)과 지연회로(30)를 구비하는 본 발명에 따른 데이터 처리장치(10)는 상기 각각의 FIFO 장치(40-1, 40-2, 40-3, 및 40-n)의 깊이(depth)에 무관하게 상기 다수의 플립-플롭들 (20-1, 20-2, 20-3, ..., 20-n) 각각의 입력단자(D)로 입력되는 데이터와 클락 단자(CK)로 입력되는 클락 신호 사이의 스큐만 조절하면 된다.
도 4는 본 발명의 실시예에 따른 FIFO장치를 구비하는 데이터 처리장치의 기능 블락도를 나타낸다. 도 4를 참조하면, 상기 데이터 처리장치(100)는 다수의 제1샘플링 회로들(20-1, 20-2, 20-3, ..., 20-n, n은 자연수), 지연 회로(30), 다수의 제2샘플링 회로들(110-1, 110-2, 110-3, ..., 110-n), 및 다수의 FIFO 장치들(120-1, 120-2, 120-3,..., 120-n)을 구비한다. 상기 데이터 처리장치(100)는 위상 쉬프터(50)를 더 구비할 수 있다.
상기 데이터 처리장치(100)는 더블 데이터 레이트 (double data rate)로 데이터를 처리하는 장치, 예컨대 DDR 메모리 장치, DDR2 메모리 장치, DDR3 메모리 장치, GDDR 메모리 장치, GDDR2 메모리 장치, 또는 GDDR3 메모리 장치와 소정의 데이터를 주고받을 수 있는 장치인 것이 바람직하다. 또한, 상기 데이터 처리장치(100)는 더블 데이터 레이트로 데이터를 처리하는 장치를 제어하기 위한 컨트롤러에 사용될 수 있다.
상기 다수의 제1샘플링 회로들(20-1, 20-2, 20-3, ..., 20-n) 각각은 제1클락 신호(CLKD)의 제1에지(예컨대, 상승 에지)에 응답하여 각각의 입력 단자(D)로 입력되는 입력 데이터의 논리 레벨을 캡춰하고 캡춰된 논리 레벨을 유지한다. 상기 다수의 제1샘플링 회로들(20-1, 20-2, 20-3, ..., 20-n) 각각은 에지 트리거드 D 플립-플롭으로 구현될 수 있다.
상기 지연 회로(30)는 제1클락 신호(CLKD)를 소정의 시간(TA)만큼 지연시켜 제2클락 신호(CLKC)를 발생한다.
상기 다수의 제2샘플링 회로들(110-1, 110-2, 110-3, ..., 110-n) 각각은 상기 제1클락 신호(CLKD)의 제2에지(예컨대, 하강 에지)에 응답하여 각각의 입력 단자(D)로 입력되는 입력 데이터의 논리 레벨을 캡춰하고 캡춰된 논리 레벨을 유지한다. 상기 다수의 제2샘플링 회로들(110-1, 110-2, 110-3, ..., 110-n) 각각은 에지 트리거드 D 플립-플롭으로 구현될 수 있다.
상기 다수의 FIFO 장치들(120-1, 120-2, 120-3,..., 120-n)각각은 제2클락 신호(CLKC)의 상기 제1에지에 응답하여 상기 다수의 제1샘플링 회로들(20-1, 20-2, 20-3, ..., 20-n) 각각에 래치된 데이터(DOO[n-1:0] 중에서 대응되는 어느 하나)를 선입-선출 방법으로 처리한다. 상기 다수의 제1샘플링 회로들(20-1, 20-2, 20-3, ..., 20-n) 각각에 래치된 데이터(DOO[n-1:0])는 각각의 입력 데이터(DI[n-1:0]) 중에서 홀수 번째 데이터일 수 있다.
또한, 상기 다수의 FIFO 장치들(120-1, 120-2, 120-3,..., 120-n)각각은 제2클락 신호(CLKC)의 상기 제2에지에 응답하여 상기 다수의 제2샘플링 회로들(110-1, 110-2, 110-3, ..., 110-n) 각각에 래치된 데이터(DOE[n-1:0] 중에서 대응되는 어느 하나)를 선입-선출 방법으로 처리한다. 상기 다수의 제2샘플링 회로들(110-1, 110-2, 110-3, ..., 110-n) 각각에 래치된 데이터(DOE[n-1:0])는 각각의 입력 데이터(DI[n-1:0]) 중에서 짝수 번째 데이터일 수 있다.
도 5는 도 4에 도시된 FIFO 장치의 기능 블락도를 나타낸다. 도 5는 설명의 편의를 위하여 각 샘플링 회로(20-1과 110-1)로부터 출력된 각 데이터(DOO[0]와 DOE[0])를 선입-선출 방법으로 처리하기 위한 하나의 FIFO 장치(120-1)만을 도시한다. 따라서 n비트 데이터를 처리하기 위해서는 도 5에 도시된 FIFO 장치(120-1)의 구조와 동일한 구조를 갖는 n개의 FIFO 장치들이 필요하다.
상기 FIFO 장치 (120-1)는 다수의 제1플립 플롭들(61, 63, 65, 및 67), 다수의 제2플립-플롭들(62, 64, 66, 및 68), 기입 제어회로(70'), 및 독출 제어회 로(80')를 구비한다.
상기 다수의 제1플립 플롭들(61, 63, 65, 및 67) 각각은 제1에지 트리거드 D 플립-플롭으로 구현될 수 있다. 상기 다수의 제1플립 플롭들(61, 63, 65, 및 67) 각각은 상기 제2클락 신호(CLKC)의 제1에지에 응답하여(또는 동기되어) 각각의 입력단자(D)로 입력되는 데이터를 래치한다.
상기 다수의 제2플립 플롭들(62, 64, 66, 및 68) 각각은 제2에지 트리거드 D 플립-플롭으로 구현될 수 있다. 상기 제1에지는 상승 에지와 하강 에지 중에서 어느 하나이고 상기 제2에지는 상기 상승 에지와 상기 하강 에지 중에서 다른 하나이다. 상기 다수의 제2플립 플롭들(62, 64, 66, 및 68) 각각은 상기 제2클락 신호(CLKC)의 제2에지에 응답하여(또는 동기되어) 각각의 입력단자(D)로 입력되는 데이터를 래치한다.
상기 기입 제어회로(70')는 적어도 하나의 기입 제어신호(W_CTRL)에 응답하여 상기 제1플립-플롭(20-1)에 래치된 n번째 입력 데이터(DOO[0])를 상기 다수의 제1플립-플롭들 (61, 63, 65, 및 67)중에서 적어도 하나의 플립-플롭의 입력단자(D)로 전송한다. 또한, 상기 기입 제어 회로(70')는 적어도 하나의 기입 제어신호(W_CTRL)에 응답하여 제2플립-플롭(110-1)에 래치된 (n+1)번째 입력 데이터 (DOE[0])를 상기 다수의 제2플립-플롭들 (62, 64, 66, 및 68) 중에서 적어도 하나의 플립-플롭의 입력단자(D)로 전송한다.
상기 기입 제어회로(70')는 기입 선택신호 발생회로(71)와 다수의 선택회로들(72 내지 79)을 구비한다.
상기 기입 선택신호 발생 회로(71)는 적어도 하나의 기입 제어신호(W_CTRL)에 응답하여 다수의 기입선택 신호들(D0, D1, D2, 및 D3)을 발생한다. 상기 기입 선택신호 발생회로(71)는 데이터가 입력될 플립-플롭을 선택하기 위한 포인터로서의 기능을 수행할 수 있다.
상기 다수의 선택 회로들(72 내지 79) 각각은 상기 다수의 기입 선택 신호들(D0, D1, D2, 및 D3) 중에서 대응되는 기입 선택 신호에 응답하여 제1입력단자("0"으로 표시됨)로 입력된 데이터와 제2입력 단자("1"로 표시됨)로 입력되는 데이터 중에서 어느 하나의 데이터를 선택적으로 출력한다. 상기 다수의 선택 회로들(72 내지 79) 각각은 멀티플렉서로 구현될 수 있으나 이에 한정되는 것은 아니다.
특히, 상기 다수의 선택 회로들(73, 75, 77, 및 79) 중에서 적어도 하나는 상기 다수의 기입 선택신호들(D0, D1, D2, 및 D3) 중에서 대응되는 기입 선택신호에 응답하여 상기 제1플립-플롭(20-1)에 래치된 n번째 입력 데이터(DOO[0])를 출력한다. 그리고 상기 다수의 선택 회로들(72, 74, 76, 및 78) 중에서 적어도 하나는 상기 다수의 기입 선택 신호들(D0, D1, D2, 및 D3) 중에서 대응되는 기입 선택 신호에 응답하여 상기 제2플립-플롭(110-1)에 래치된 (n+1)번째 입력 데이터(DOE[0])를 출력한다.
예컨대, 선택회로(73)는 선택신호(D0)에 응답하여 n번째 입력 데이터 (DOO[0]) 또는 플립-플롭 (61)으로부터 출력된 데이터를 상기 플립-플롭 (61)의 입력단자(D)로 출력한다. 또한, 선택회로(72)는 상기 선택신호(D0)에 응답하여 (n+1) 번째 입력 데이터(DOE[0]) 또는 플립-플롭 (62)으로부터 출력된 데이터를 상기 플립-플롭 (62)의 입력단자(D)로 출력할 수 있다.
상기 독출 제어회로(80')는 적어도 하나의 독출 제어신호(R_CTRL)에 응답하여 상기 다수의 제1플립-플롭들(61, 63, 65, 및 67) 중에서 어느 하나의 플립-플롭에 래치된 데이터와 상기 다수의 제2플립-플롭들(62, 64, 66, 및 68) 중에서 어느 하나의 플립-플롭에 래치된 데이터 중에서 어느 하나를 출력한다.
상기 독출 제어회로(80')는 독출 선택신호 발생회로(81), 및 다수의 선택회로들 (84와 86)을 구비한다. 상기 독출 선택신호 발생회로(81)는 적어도 하나의 독출 제어신호(R_CTRL)에 응답하여 독출 선택 신호들(R_SEL)을 발생한다. 상기 독출 선택신호 발생회로(81)는 독출될 데이터가 저장된 플립-플롭을 선택하기 위한 포인터의 기능을 수행한다.
선택회로(84)는 독출 선택 신호들(R_SEL)에 기초하여 상기 다수의 제1플립-플롭들(61, 63, 65, 및 67) 중에서 어느 하나에 저장된 데이터를 선택적으로 출력 데이터(OUTO[0])로 출력할 수 있다. 선택회로(86)는 상기 독출 선택 신호들(R_SEL)에 기초하여 상기 다수의 제2플립-플롭들(62, 64, 66, 및 68) 중에서 어느 하나에 저장된 데이터를 출력 데이터(OUTE[0])로 선택적으로 출력할 수 있다.
상기 독출 제어회로(80')는 상기 다수의 선택회로들(84와 86) 대신에 하나의 선택회로로 구현될 수 있다. 이 경우 선택회로는 독출 선택 신호들(R_SEL)에 기초하여 다수의 플립-플롭들(61 내지 68) 중에서 어느 하나에 저장된 데이터를 선택적으로 출력할 수 있다.
FIFO 장치(120-1)와 유사하게, FIFO 장치(120-2)는 플립-플롭 (20-2와 110-2)으로부터 출력된 데이터(예컨대, DOO[1]와 DOE[1])를 선입-선출 방법으로 처리하고, FIFO 장치(120-3)는 플립-플롭 (20-3과 110-3)으로부터 출력된 데이터(예컨대, DOO[2]와 DOE[2])를 선입-선출 방법으로 처리하고, FIFO 장치(120-n)는 플립-플롭 (20-n과 110-n)으로부터 출력된 데이터(DOO[n-1]와 DOE[n-1])를 선입-선출 방법으로 처리할 수 있다. 본 명세서에서 사용된 자연수 n과 m은 설명의 편의를 위하여 사용된 것이다.
본 발명은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
상술한 바와 같이 본 발명에 따른 FIFO 장치를 구비하는 데이터 처리장치는 데이터 스큐를 감소시킬 수 있는 효과가 있다.
따라서 상기 데이터 처리장치는 유효 데이터 윈도우를 증가시킬 수 있는 효과가 있다. 또한, 유효 데이터 윈도우가 증가되므로, 상기 데이터 처리장치의 신뢰성이 증가한다.
또한, 본 발명에 따른 FIFO 장치를 구비하는 데이터 처리장치에서의 스큐를 조절해야하는 포인트들의 수는 상기 FIFO 장치를 구비하지 않은 데이터 처리장치에 서의 스큐를 조절해야하는 포인트들의 수와 동일하므로, 각각이 서로 다른 깊이를 갖는 FIFO 장치를 구비하는 데이터 처리장치들을 설계할 때 스큐를 맞추기 위한 노력이 감소되는 효과가 있다. 따라서 데이터 처리장치의 설계가 용이 해지는 효과가 있다.

Claims (18)

  1. 제1클락 신호의 제1에지에 응답하여 입력 데이터의 논리 상태를 샘플링하고 샘플링 결과를 유지(hold)하기 위한 제1샘플링 회로;
    수신된 상기 제1클락 신호를 소정시간 지연시켜 제2클락 신호를 출력하기 위한 지연회로; 및
    상기 지연회로로부터 출력된 상기 제2클락 신호의 상기 제1에지에 응답하여 상기 제1샘플링 회로에 의한 샘플링 결과를 선입-선출 방법으로 처리하기 위한 FIFO 장치를 구비하는 데이터 처리장치.
  2. 제1항에 있어서, 상기 데이터 처리장치는,
    상기 제1클락 신호의 제2에지에 응답하여 상기 입력 데이터의 논리 상태를 샘플링하고 샘플링 결과를 유지하기 위한 제2샘플링 회로를 더 구비하며,
    상기 FIFO 장치는 상기 지연회로로부터 출력된 상기 제2클락 신호의 상기 제2에지에 응답하여 상기 제2샘플링 회로에 의한 샘플링 결과를 상기 선입-선출 방법으로 처리하는 데이터 처리장치.
  3. 제1항에 있어서, 상기 데이터 처리장치는,
    데이터 스트로브 신호를 수신하고, 수신된 상기 데이터 스트로브 신호의 위상과 90도의 위상차이를 갖는 상기 제1클락 신호를 발생하기 위한 위상 쉬프터를 더 구비하는 데이터 처리장치.
  4. 제1항에 있어서, 상기 제1샘플링 회로는 플립-플롭인 데이터 처리장치.
  5. 제2항에 있어서, 상기 제1샘플링 회로와 상기 제2샘플링 회로 각각은 플립-플롭인 데이터 처리장치.
  6. 제1항에 있어서, 상기 FIFO 장치는,
    각각이 상기 제2클락 신호의 상기 제1에지에 응답하여 각각의 입력단자로 입력되는 데이터를 래치하기 위한 다수의 제1에지 트리거드 플립-플롭들;
    적어도 하나의 기입 제어신호에 응답하여, 상기 다수의 제1에지 트리거드 플립-플롭들 중에서 대응되는 어느 하나의 플립-플롭의 입력단자로 상기 입력 데이터를 전송하기 위한 기입 제어회로; 및
    적어도 하나의 독출 제어신호에 응답하여, 상기 다수의 제1에지 트리거드 플립-플롭들 중에서 대응되는 어느 하나의 플립-플롭에 래치된 데이터를 출력 데이터로서 출력하기 위한 독출 제어회로를 구비하는 데이터 처리장치.
  7. 제6항에 있어서, 상기 기입 제어회로는,
    상기 적어도 하나의 기입 제어신호에 응답하여 다수의 기입 선택신호들을 출력하기 위한 기입 선택신호 발생회로; 및
    각각이 상기 입력 데이터를 수신하기 위한 제1단자, 상기 다수의 제1에지 트리거드 플립-플롭들 중에서 대응되는 플립-플롭으로부터 출력된 데이터를 수신하기 위한 제2단자, 및 상기 다수의 기입 선택신호들 중에서 대응되는 선택신호에 응답하여 상기 제1단자로 입력된 상기 입력 데이터와 상기 제2단자로 입력된 상기 데이터 중에서 어느 하나를 상기 다수의 제1에지 트리거드 플립-플롭들 중에서 대응되는 어느 하나의 플립-플롭의 입력단자로 출력하기 위한 출력단자를 구비하는 다수의 선택회로들을 구비하는 데이터 처리장치.
  8. 제6항에 있어서, 상기 독출 제어회로는,
    상기 적어도 하나의 독출 제어신호에 응답하여, 다수의 독출 선택신호를 출력하기 위한 독출 선택신호 발생회로; 및
    상기 다수의 독출 선택신호들에 응답하여 상기 다수의 제1에지 트리거드 플립-플롭들 중에서 상기 대응되는 어느 하나의 플립-플롭에 래치된 데이터를 출력하기 위한 선택회로를 구비하는 데이터 처리장치.
  9. 제2항에 있어서, 상기 FIFO 장치는,
    각각이 상기 제2클락 신호의 상기 제1에지에 동기되어 각각의 입력단자로 입력되는 데이터를 래치하기 위한 다수의 제1에지 트리거드 플립-플롭들;
    각각이 상기 제2클락 신호의 상기 제2에지에 동기되어 각각의 입력단자로 입력되는 데이터를 래치하기 위한 다수의 제2에지 트리거드 플립-플롭들;
    적어도 하나의 기입 제어신호에 응답하여, 상기 제1샘플링 회로에 의하여 래치된 상기 입력 데이터를 상기 다수의 제1에지 트리거드 플립-플롭들 중에 적어도 하나의 플립-플롭의 입력단자로 전송하고, 상기 제2샘플링 회로에 의하여 래치된 상기 입력 데이터를 상기 다수의 제2에지 트리거드 플립-플롭들 중에 적어도 하나의 플립-플롭의 입력단자로 전송하기 위한 기입 제어회로; 및
    적어도 하나의 독출 제어신호에 응답하여, 상기 다수의 제1에지 트리거드 플립-플롭들 중에 어느 하나의 플립-플롭에 래치된 데이터와 상기 다수의 제2에지 트리거드 플립-플롭들 중에 어느 하나의 플립-플롭에 래치된 데이터 중에서 어느 하나를 출력하기 위한 독출 제어회로를 구비하는 데이터 처리회로.
  10. 제2항에 있어서, 상기 데이터 처리회로는 더블 데이터 레이트(double data rate)로 데이터를 처리하는 장치를 제어하기 위한 컨트롤러인 데이터 처리회로.
  11. 각각이, 제1클락 신호의 제1에지에 응답하여, 각각의 입력단자로 입력되는 입력 데이터를 래치하기 위한 다수의 제1플립-플롭들;
    상기 제1클락 신호를 수신하고, 수신된 제1클락 신호를 소정시간 지연시켜 제2클락 신호를 출력하기 위한 지연회로; 및
    상기 지연회로로부터 출력된 상기 제2클락 신호의 상기 제1에지에 응답하여 상기 다수의 제1플립-플롭들 각각으로부터 출력된 데이터를 선입-선출 방법으로 처리하기 위한 FIFO 장치를 구비하는 데이터 처리장치.
  12. 제11항에 있어서, 상기 데이터 처리장치는,
    각각의 입력단자가 상기 다수의 제1플립-플롭들 중에서 대응되는 플립-플롭의 입력단자에 접속되고, 상기 제1클락 신호의 제2에지에 응답하여 상기 각각의 입력단자로 입력되는 상기 입력 데이터를 래치하기 위한 다수의 제2플립-플롭들을 더 구비하며,
    상기 FIFO 장치는 상기 지연회로로부터 출력된 상기 제2클락 신호의 상기 제2에지에 응답하여 상기 다수의 제2플립-플롭들 각각으로부터 출력된 데이터를 상기 선입-선출 방법으로 처리하는 데이터 처리장치.
  13. 제12항에 있어서, 상기 제1에지는 상승 에지와 하강 에지 중 어느 하나이고 상기 제2에지는 상기 상승 에지와 상기 하강 에지 중에서 다른 하나인 데이터 처리장치.
  14. 제1클락 신호의 제1에지에 응답하여 n(n은 자연수)번째 입력 데이터의 논리 상태를 래치하기 위한 제1플립-플롭;
    상기 제1클락 신호의 제2에지에 응답하여 (n+1)번째 입력 데이터의 논리 상태를 래치하기 위한 제2플립-플롭;
    상기 제1클락 신호를 수신하고, 수신된 상기 제1클락 신호를 소정시간 지연시켜 제2클락 신호를 출력하기 위한 지연회로; 및
    상기 지연회로로부터 출력된 상기 제2클락 신호의 상기 제1에지에 응답하여 상기 제1플립-플롭에 래치된 데이터를 선입-선출 방법으로 처리하고, 상기 제2클락 신호의 상기 제2에지에 응답하여 상기 제2플립-플롭에 래치된 데이터를 상기 선입-선출 방법으로 처리하기 위한 FIFO 장치를 구비하는 데이터 처리장치.
  15. 제14항에 있어서, 상기 FIFO 장치는,
    각각이 상기 제2클락 신호의 상기 제1에지에 동기되어 각각의 입력단자로 입력되는 데이터를 래치하기 위한 다수의 제1에지 트리거드 플립-플롭들;
    각각이 상기 제2클락 신호의 상기 제2에지에 동기되어 각각의 입력단자로 입력되는 데이터를 래치하기 위한 다수의 제2에지 트리거드 플립-플롭들;
    적어도 하나의 기입 제어신호에 응답하여, 상기 제1플립-플롭에 래치된 상기 n번째 입력 데이터를 상기 다수의 제1에지 트리거드 플립-플롭들 중에 적어도 하나의 플립-플롭의 입력단자로 전송하고, 상기 제2플립-플롭에 래치된 상기 (n+1)번째 입력 데이터를 상기 다수의 제2에지 트리거드 플립-플롭들 중에 적어도 하나의 플립-플롭의 입력단자로 전송하기 위한 기입 제어회로; 및
    적어도 하나의 독출 제어신호에 응답하여, 상기 다수의 제1에지 트리거드 플립-플롭들 중에서 어느 하나의 플립-플롭에 래치된 데이터와 상기 다수의 제2에지 트리거드 플립-플롭들 중에서 어느 하나의 플립-플롭에 래치된 데이터 중에서 어느 하나를 출력하기 위한 독출 제어회로를 구비하는 데이터 처리회로.
  16. 제14항 또는 15항에 있어서, 상기 데이터 처리장치는,
    데이터 스트로브 신호를 수신하고, 수신된 상기 데이터 스트로브 신호의 위상과 90도의 위상 차이를 갖는 상기 제1클락 신호를 발생하기 위한 위상 쉬프터를 더 구비하는 데이터 처리장치.
  17. 제1플립-플롭이 제1클락 신호의 제1에지에 응답하여 입력 데이터의 논리 상태를 래치하는 단계;
    지연회로가 상기 제1클락 신호를 소정시간 지연시켜 제2클락 신호를 발생하는 단계; 및
    FIFO가 상기 제2클락 신호의 상기 제1에지에 응답하여 상기 제1플립-플롭에 래치된 데이터를 수신하고 선입-선출 방법으로 처리하는 단계를 구비하는 FIFO 장치의 데이터 처리방법.
  18. 제17항에 있어서, 상기 FIFO의 데이터 처리방법은,
    제2플립-플롭이 상기 제1클락 신호의 제2에지에 응답하여 상기 입력 데이터를 래치하는 단계; 및
    상기 FIFO가 상기 제2클락 신호의 상기 제2에지에 응답하여 상기 제2플립-플롭에 래치된 데이터를 수신하고 상기 선입-선출 방법으로 처리하는 단계를 더 구비하는 FIFO 장치의 데이터 처리방법.
KR1020060057893A 2006-06-27 2006-06-27 Fifo 장치를 구비하는 데이터 처리장치와 데이터처리방법 KR100818800B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020060057893A KR100818800B1 (ko) 2006-06-27 2006-06-27 Fifo 장치를 구비하는 데이터 처리장치와 데이터처리방법
JP2007134263A JP2008010136A (ja) 2006-06-27 2007-05-21 Fifo装置を備えるデータ処理装置及びデータ処理方法
CNA2007101081203A CN101097508A (zh) 2006-06-27 2007-05-30 使用先进先出器件的数据处理装置和方法
US11/811,726 US7802123B2 (en) 2006-06-27 2007-06-12 Data processing apparatus and method using FIFO device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060057893A KR100818800B1 (ko) 2006-06-27 2006-06-27 Fifo 장치를 구비하는 데이터 처리장치와 데이터처리방법

Publications (2)

Publication Number Publication Date
KR20080000249A true KR20080000249A (ko) 2008-01-02
KR100818800B1 KR100818800B1 (ko) 2008-04-01

Family

ID=38873420

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060057893A KR100818800B1 (ko) 2006-06-27 2006-06-27 Fifo 장치를 구비하는 데이터 처리장치와 데이터처리방법

Country Status (4)

Country Link
US (1) US7802123B2 (ko)
JP (1) JP2008010136A (ko)
KR (1) KR100818800B1 (ko)
CN (1) CN101097508A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8264626B2 (en) 2009-08-21 2012-09-11 Samsung Display Co., Ltd. Stereoscopic image display device
KR20180007728A (ko) * 2016-07-13 2018-01-24 삼성전자주식회사 멀티 랭크로 구성된 메모리와 인터페이싱을 수행하는 인터페이스 회로
CN110390963A (zh) * 2018-04-16 2019-10-29 爱思开海力士有限公司 采样电路和使用采样电路的半导体存储器件

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101227689B (zh) * 2007-12-27 2011-01-19 华为技术有限公司 信息上报方法及装置
US8638792B2 (en) 2010-01-22 2014-01-28 Synopsys, Inc. Packet switch based logic replication
US8397195B2 (en) * 2010-01-22 2013-03-12 Synopsys, Inc. Method and system for packet switch based logic replication
KR101811297B1 (ko) 2011-03-15 2017-12-27 삼성전자주식회사 불휘발성 메모리를 제어하는 메모리 컨트롤러
JP5932347B2 (ja) * 2012-01-18 2016-06-08 ピーエスフォー ルクスコ エスエイアールエルPS4 Luxco S.a.r.l. 半導体装置
KR102087437B1 (ko) * 2013-06-17 2020-03-10 에스케이하이닉스 주식회사 수신장치를 포함하는 반도체시스템
CN104216462B (zh) * 2014-08-27 2017-02-15 电子科技大学 一种基于fpga的大动态高精度可编程延时装置
CN104484011A (zh) * 2014-11-25 2015-04-01 上海高性能集成电路设计中心 一种分布控制双时钟异步发送、接收模块及fifo装置
KR102323569B1 (ko) 2015-09-30 2021-11-08 삼성전자주식회사 샘플링 포인트를 독립적으로 조절할 수 있는 데이터 처리 회로와 이를 포함하는 데이터 처리 시스템
CN107797956B (zh) 2017-11-14 2019-04-23 深圳锐越微技术有限公司 双沿触发环形缓冲器及通信系统
US10586575B2 (en) 2018-01-10 2020-03-10 Samsung Electronics Co., Ltd. Interface circuit for multi rank memory
KR102523101B1 (ko) 2018-01-10 2023-04-18 삼성전자주식회사 데이터 유효 윈도우를 판별하는 읽기 마진 제어 회로, 이를 포함하는 메모리 컨트롤러, 그리고 전자 장치
US10964702B2 (en) * 2018-10-17 2021-03-30 Micron Technology, Inc. Semiconductor device with first-in-first-out circuit
KR20200140019A (ko) * 2019-06-05 2020-12-15 삼성전자주식회사 반도체 장치, 반도체 시스템 및 반도체 장치의 동작 방법

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1021684A (ja) 1996-07-05 1998-01-23 Mitsubishi Electric Corp 同期型半導体記憶装置
US6912680B1 (en) * 1997-02-11 2005-06-28 Micron Technology, Inc. Memory system with dynamic timing correction
KR100295051B1 (ko) * 1998-08-20 2001-07-12 윤종용 반도체메모리장치의입력버퍼및입력버퍼링방법
JP2000067538A (ja) 1998-08-24 2000-03-03 Alps Electric Co Ltd サーボパターンが記録されたディスクおよび前記ディスクから読まれたサーボパターンの演算処理方法
US6629250B2 (en) * 1999-04-23 2003-09-30 Cray Inc. Adjustable data delay using programmable clock shift
US6519107B1 (en) 1999-09-24 2003-02-11 Maxtor Corporation Hard disk drive having self-written servo burst patterns
US6649852B2 (en) * 2001-08-14 2003-11-18 Motorola, Inc. Micro-electro mechanical system
KR100443506B1 (ko) * 2001-10-23 2004-08-09 주식회사 하이닉스반도체 스큐를 감소시키기 위한 출력 회로
KR100511912B1 (ko) * 2002-03-13 2005-09-02 주식회사 하이닉스반도체 반도체 메모리에 사용되는 데이터 출력 구동 장치
JP2004005814A (ja) 2002-05-31 2004-01-08 Hitachi Ltd 磁気ディスク装置
JP4450586B2 (ja) 2003-09-03 2010-04-14 株式会社ルネサステクノロジ 半導体集積回路
US7493461B1 (en) * 2005-01-20 2009-02-17 Altera Corporation Dynamic phase alignment for resynchronization of captured data

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8264626B2 (en) 2009-08-21 2012-09-11 Samsung Display Co., Ltd. Stereoscopic image display device
KR20180007728A (ko) * 2016-07-13 2018-01-24 삼성전자주식회사 멀티 랭크로 구성된 메모리와 인터페이싱을 수행하는 인터페이스 회로
CN110390963A (zh) * 2018-04-16 2019-10-29 爱思开海力士有限公司 采样电路和使用采样电路的半导体存储器件

Also Published As

Publication number Publication date
US7802123B2 (en) 2010-09-21
JP2008010136A (ja) 2008-01-17
US20070297250A1 (en) 2007-12-27
KR100818800B1 (ko) 2008-04-01
CN101097508A (zh) 2008-01-02

Similar Documents

Publication Publication Date Title
KR100818800B1 (ko) Fifo 장치를 구비하는 데이터 처리장치와 데이터처리방법
KR100268429B1 (ko) 동기형반도체메모리장치의데이터의입력회로및데이터입력방법
US7975162B2 (en) Apparatus for aligning input data in semiconductor memory device
JP4249941B2 (ja) 同期式半導体メモリ装置のデータ入力回路及びデータ入力方法
US7516382B2 (en) On-chip data transmission control apparatus and method
US7668022B2 (en) Integrated circuit for clock generation for memory devices
KR100950483B1 (ko) 셋업/홀드 타임 측정 장치
JP2006508438A (ja) クロック同期回路
US7242737B2 (en) System and method for data phase realignment
JP2009043342A (ja) 半導体記憶装置
CN111161766B (zh) Ddr sdram物理层接口电路与ddr sdram控制装置
KR20040063283A (ko) 제어신호 발생회로 및 상기 제어신호 발생회로를 구비하는데이터 전송회로
US7233543B2 (en) System and method to change data window
US7706195B2 (en) Strobe signal controlling circuit
US6900665B2 (en) Transfer of digital data across asynchronous clock domains
KR100511912B1 (ko) 반도체 메모리에 사용되는 데이터 출력 구동 장치
US7027542B1 (en) Apparatus and method for providing data transfer between two digital circuits with different clock domains and for solving metastability problems
US9959230B2 (en) Data transfer device
KR100617999B1 (ko) 메모리 장치 내의 데이터 캡처를 위한 방법 및 장치
JP3859885B2 (ja) 半導体記憶装置
US7184325B2 (en) Input circuit for memory device
US8707080B1 (en) Simple circular asynchronous clock domain crossing technique for digital data
KR20090093510A (ko) 고속의 데이터 입출력을 위한 반도체 메모리 장치
US7039144B2 (en) Large-input-delay variation tolerant (LIDVT) receiver adopting FIFO mechanism
KR100881748B1 (ko) 고속으로 데이터를 출력하기 위한 메모리 장치

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

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140228

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150302

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20170228

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20180228

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20190228

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20200228

Year of fee payment: 13