KR100311334B1 - 복수의 메모리 모듈과 제어기를 구비한 데이터 고속 전송 시스템 - Google Patents

복수의 메모리 모듈과 제어기를 구비한 데이터 고속 전송 시스템 Download PDF

Info

Publication number
KR100311334B1
KR100311334B1 KR1019990001691A KR19990001691A KR100311334B1 KR 100311334 B1 KR100311334 B1 KR 100311334B1 KR 1019990001691 A KR1019990001691 A KR 1019990001691A KR 19990001691 A KR19990001691 A KR 19990001691A KR 100311334 B1 KR100311334 B1 KR 100311334B1
Authority
KR
South Korea
Prior art keywords
clock
data
cycle
timing
circuit
Prior art date
Application number
KR1019990001691A
Other languages
English (en)
Other versions
KR19990068029A (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 KR19990068029A publication Critical patent/KR19990068029A/ko
Application granted granted Critical
Publication of KR100311334B1 publication Critical patent/KR100311334B1/ko

Links

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/38Information transfer, e.g. on bus
    • 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/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • G06F13/4243Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with synchronous protocol

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Dram (AREA)
  • Information Transfer Systems (AREA)
  • Static Random-Access Memory (AREA)

Abstract

메모리 모듈(2)과 1개의 제어기(3)가 배열되고 이 배열을 따라 왕복하도록 2개의 클럭 배선(4A, 4B)이 설치되어 있다. 클럭 배선(4A, 4B)의 왕로(往路) 부분을 통해 제1 기본 클럭 TCLK 및 그 2배의 주기를 갖는 제2 기본 클럭 TCLK2가 메모리 모듈(2) 및 제어기(3)에 공급되고, 턴어라운드 포인트를 통과한 후의 복로(復路) 부분을 통해 전송되는 제1 및 제2 기본 클럭은 RCLK, RCLK2로서 메모리 모듈(2) 및 제어기(3)에 공급된다. 순방향 제1 및 제2 기본 클럭 TCLK, TCLK2 및 역방향 제1 및 제2 기본 클럭 RCLK, RCLK2는 메모리 모듈(2) 및 제어기(3)에 입력되고 이들 클럭에 동기하여 데이타의 입출력이 제어된다.

Description

복수의 메모리 모듈과 제어기를 구비한 데이터 고속 전송 시스템{DATA HIGH SPEED TRANSFERRING SYSTEM WITH A PLURALITY OF MEMORY MODULES AND CONTROLLERS}
본 발명은 복수의 메모리 모듈과, 이들 복수의 메모리 모듈에서의 데이터의판독 및 기록 동작을 제어하는 제어기를 구비하고, 복수의 각 메모리 모듈 및 제어기 상호에서 동기형 데이터 전송을 행하는 데이터 전송 시스템에 관한 것이다. 또한, 본 발명은 특히 클럭의 전파(傳播) 지연에 의해 발생하는 데이터 버스 상의 빈 사이클을 없게 하고, 기록 데이터와 판독 데이터의 양쪽을 동일한 버스에서 동시에 전송함으로써, 데이터 전송 효율을 각 단에서 향상시키는 기술에 관한 것이다.
제어 시스템에서 사용되는 마이크로 프로세서 유닛(MPU)의 성능이 향상되고, 이에 수반해서, 제어 시스템에서 사용되는 IC 메모리의 용량도 256Mbit, 1Gbit로 증대되고 있다. 이러한 상황에서 대량의 데이터를 어떻게 효율 좋게 전송할 것인가라고 하는 것이 점점 더 중요해져 가고 있다.
미국 특허 제 5,432,823호에는 고속 데이터 전송을 실현하는 데이터 전송 시스템이 개시되어 있다.
도 1은 이 미국 특허 제5,432,823호에 개시되어 있는 데이터 전송 시스템의 개략적인 블록도를 나타내고 있다. 이 시스템에는 블록 발생기(CG;301)와, 복수의 메모리 모듈(302)과, 1개의 제어기(303)가 설치되어 있다. 복수의 메모리 모듈(302)과, 1개의 제어기(303)는 병렬로 배치되어 있다. 또한, 이들 복수의 메모리 모듈(302)과 제어기(303)의 배열을 따라, 왕복하도록 클럭 배선(304)이 설치되어 있다. 또한, 복수의 메모리 모듈(302)과 제어기(303)의 배열을 따라 데이터 버스(305)가 설치되어 있다.
클럭 발생기(301)에 의해 클럭이 만들어진다. 이 클럭은 클럭 배선(304)의 왕로(往路) 부분을 경유해서 복수의 메모리 모듈(302) 및 제어기(303)에 클럭 TCLK로서 순서대로 전송된다. 클럭 배선(304)의 왕로 부분으로부터 복로(復路) 부분으로의 턴어라운드 포인트를 경유한 후, 앞의 클럭은, 클럭 RCLK로서 제어기(303) 및 복수의 메모리 모듈(302)의 배열에 대해, 왕로 부분과는 역방향으로 전송되고, 최종적으로 클럭 발생기(301)의 근처의 위치까지 전송된다. 이 경우, 제어기(303)는 턴어라운드 포인트에 가까운 곳에 배치되어 있다.
또한, 복수의 메모리 모듈(302)과 제어기(303) 간의 데이터의 수수(授受)는 데이터 버스(305)를 통해 행해진다.
일반적으로 클럭에 동기한 제어를 행하는 경우, 클럭의 전파 지연(傳播遲延)이 존재하기 때문에, 상이한 장소의 메모리 모듈과, 제어기 간에 데이터를 주고 받기 위해서는, 이 φ을 미리 고려해 두지 않으면, 데이터 버스 상에서 데이터 버스 상에서 데이터의 충돌이 발생한다.
도 1의 전송 시스템에서는 이것을 제어기(303) 및 복수의 각 메모리 모듈(302)에서 클럭 TCLK, RCLK를 모니터하고, 이하와 같이 대처함으로써 데이터 버스 상에서 데이터의 충돌을 피하도록 하고 있다.
즉, 도 2의 타이밍도에 도시된 바와 같이, 클럭 배선(304)의 턴어라운드 포인트의 부근에서는 클럭 TCLK와 RCLK의 위상은 일치한다. 이것에 대해, 클럭 발생기(301)의 부근에서는 양 클럭의 위상이 어긋나고, 클럭 TCLK에 대해 클럭 RCLK가 지연된다. 그래서, 양 클럭 TCLK, RCLK의 중간의 타이밍 A를 취하면, 이 타이밍 A는 클럭 배선(304) 상의 위치에 의존하지 않고, 항상 그 위치에서 클럭 TCLK와 RCLK와의 중간 타이밍으로 된다. 따라서, 이 중간 타이밍 A와 클럭 TCLK, RCLK와의 위상차를 각 메모리 모듈(302)이나 제어기(303)가 고려하여 데이터 전송을 행하면, 데이터 버스(305)에서의 데이터의 충돌을 피할 수 있다.
그러나, 추가로 데이터 전송 효율을 높이기 위해 보다 주기가 짧은(주파수가 높은) 클럭을 사용하거나, 시스템의 메모리 용량을 높이기 위해 많은 메모리 모듈을 접속한 결과 데이터 버스 길이가 길어지면, 클럭의 전파 지연이 클럭의 1주기 이상이 되는 경우가 발생한다.
이 경우, 도 3의 타이밍도에 나타낸 바와 같이, 본래, 필요로 하는 클럭 TCLK와 RCLK의 중간 타이밍인 타이밍 B는 얻어지지 않고, 잘못된 타이밍 A가 얻어진다. 예를 들면, 제어기(303)가 클럭 발생기(301)의 부근에 배치된 경우, 클럭 TCLK가 클럭 배선(304)으로 전송되어 1주기 이상 지연되어, 도면 중의 클럭 TCLK의 상승 타이밍 t1에 대응하는 클럭 RCLK의 상승 타이밍이 t3으로 된 것으로 한다. 이때, 간단히 클럭 TCLK와 RCLK의 중간 타이밍을 취하면, 타이밍 t1과 타이밍 t1의 직후에 클럭 RCLK가 상승하는 타이밍과의 사이의 중간 타이밍 A가 취해지기 때문에, 타이밍 A는 잘못된 타이밍이 된다. 이 경우 정확한 중간 타이밍 B는 타이밍 t1과 타이밍 t3과의 사이의 타이밍 t2이다.
이와 같이, 클럭 TCLK와 RCLK의 관계를 이용한 것만으로는 클럭 TCLK, RCLK 상호 간에 클럭 1 주기 이상의 위상 어긋남이 발생했는지의 여부의 판정을 할 수 없어 잘못된 중간 타이밍이 얻어진다.
또한, 데이터 버스는 메모리 모듈로부터의 판독 데이터, 메모리 모듈로의 기록 데이터의 쌍방의 전송에 이용된다. 그러나, 일반적으로는 데이터 '1', '0'을전위 레벨의 고저로 표현하고 있기 때문에 판독 데이터와 기록 데이터의 양 데이터의 전송을 시간적으로 명확하게 구분할 필요가 있다. 이 때문에 양자의 데이터 전송을 동시에 행하고, 데이터 전송 효율을 한번에 배 가까이 상승하도록 하기 위해서는 도 4에 도시한 바와 같이 데이터 버스(DATA BUS)를 판독 데이터 버스(READ DATA BUS;306)와 기록 데이터 버스(WRITE DATA BUS;307)로 나눌 필요가 있다.
그러나, 이렇게 하면, 데이터 버스의 배선 개수가 배로 증가하므로 메모리 모듈이나 제어기의 수가 증가하고, 면적 코스트적으로 손해를 보는 것이 된다.
본 발명은 상기한 바와 같은 사정을 감안하여 이루어진 것으로, 그 목적은 데이터 버스의 배선 개수를 늘리지 않고도 데이터 전송을 고속으로 행할 수 있는 데이터 고속 전송 시스템을 제공하는 것이다.
본 발명에 의하면, 복수의 메모리 모듈과, 상기 복수의 메모리 모듈과 함께 배열되어, 상기 복수의 메모리 모듈과의 사이에서 데이터의 수수를 행하는 제어기와, 상기 제1 기본 클럭 및 이 제1 기본 클럭의 주기의 2배의 주기를 갖는 제2 기본 클럭을 발생하는 클럭 발생기와, 상기 배열된 복수의 메모리 모듈 및 제어기를 따라 왕복하도록 왕로 부분 및 복로 부분의 배선을 각각 가지며, 상기 클럭 발생기에서 발생되는 상기 제1 및 제2 기본 클럭이 상기 각 왕로 부분의 선단으로부터 각각 입력되고, 이 입력된 제1 및 제2 기본 클럭을 각각 순차 전송하고, 각 왕로 부분 및 각 복로 부분의 배선으로 전송되는 제1 및 제2 기본 클럭을 상기 복수의 메모리 모듈 및 제어기에 대해, 이들 복수의 메모리 모듈 및 제어기가 데이터 수수시에 사용하는 동기 신호로서 제공하는 2개의 클럭 배선과, 상기 복수의 각 메모리 모듈 및 제어기 내에 각각 설치되어, 상기 2개의 클럭 배선의 각 왕로 부분으로부터 주어지는 순방향 제1 및 제2 기본 클럭과, 상기 2개의 클럭 배선의 각 복로 부분으로부터 주어지는 역방향 제1 및 제2 기본 클럭을 받아, 순방향 제1 기본 클럭과 역방향 제1 기본 클럭과의 사이에 발생하는 제1 기본 클럭의 주기의 n배(n은 2 및 4중 어느 한쪽의 값)의 주기 이내의 위상 불일치에 대해 그 중간 타이밍을 검출하는 중간 타이밍 검출 회로를 포함하는 제어 회로를 갖는 데이터 고속 전송 시스템이 제공되어 있다.
또한, 본 발명에 의하면, 복수의 메모리 모듈과, 상기 복수의 각 메모리 모듈과의 사이에서 데이터의 수수를 행하는 제어기와, 상기 복수의 메모리 모듈과 제어기를 접속하는 데이터 버스를 구비하고, 상기 복수의 각 메모리 모듈 및 제어기는 각각 수수 데이터에 따라 상기 데이터 버스에 흐르는 전류의 값 및 전류의 방향을 상이하게 하는 데이터 입출력 회로를 갖는 데이터 고속 전송 시스템이 제공된다.
도 1은 종래의 데이터 전송 시스템의 구성을 나타내는 블록도.
도 2는 도 1의 종래의 시스템에서의 동작의 일례를 나타내는 타이밍도.
도 3은 도 1의 종래의 시스템에서의 도 2와는 상이한 동작의 일례를 나타내는 타이밍도.
도 4는 도 1과는 상이한 종래의 데이터 전송 시스템의 구성을 나타내는 블록도.
도 5a 및 도 5b는 본 발명의 데이터 고속 전송 시스템의 제1 실시 형태에 따른 블록도.
도 6은 도 5a 및 도 5b의 시스템에 있어서 클럭 배선 상의 상이한 2 장소의 클럭 TCLK와 RCLK의 위상 관계를 나타내는 타이밍도.
도 7은 도 5a의 시스템의 동작 순서를 나타내는 흐름도.
도 8은 도 5b의 시스템의 동작 순서를 나타내는 흐름도.
도 9는 도 5a 및 도 5b의 시스템에서 제1 기본 클럭 TCLK와 RCLK의 클럭 배선 상의 임의의 위치에서의 위상 상태를 나타내는 타이밍도.
도 10은 도 5a 및 도 5b의 시스템에서 제1 기본 클럭 TCLK 또는 RCLK에 동기하여 만들어지는 우수(偶數) 내부 클럭 Teu 또는 Reu, 기수(奇數) 내부 클럭 Tou 또는 Rou를 나타내는 타이밍도.
도 11은 도 5a 및 도 5b의 시스템에서 동기성 조정식 지연(Synchronous Adjustable Delay)을 이용하여 도 6 중에 나타낸 중간 타이밍 M을 만드는 방법을 설명하기 위한 타이밍도.
도 12는 도 5a 및 도 5b의 시스템에 설치되는 복수의 각 메모리 모듈 및 제어기 내의 내부 구성의 일부를 나타내는 블록도.
도 13은 도 12의 회로의 일부의 상세한 구성을 나타내는 블록도.
도 14a 내지 도 14c는 도 13의 회로에서 제어 신호 T2, R2 및 내부 클럭 Tou, Rou, Teu, Reu를 발생하는 회로의 구체적인 구성을 나타내는 회로도.
도 15는 도 14a의 회로에서 발생되는 제어 신호 T2 또는 R2의 위상 관계를 나타내는 타이밍도.
도 16a 및 도 16b는 도 13의 회로에 설치되어 내부 타이밍 클럭 φo, φe를 발생시키는 회로의 회로도.
도 17은 도 16a와 도 16b의 회로에서 얻어지는 내부 타이밍 클럭 φo, φe를 이용하여 타이밍 M을 발생시키는 회로의 회로도.
도 18은 도 5a 및 도 5b의 시스템에서, 기본 클럭의 우수 사이클인 e 사이클 만의 위상차를 보아 그 중간의 타이밍 Me 만을 이용하는 본 발명의 제2 실시 형태에 따른 동작예를 나타내는 타이밍도.
도 19는 도 18의 방법에 기초하여 도 5a의 시스템의 동작의 제어 순서를 나타내는 흐름도.
도 20은 도 18의 방법에 기초한 도 5b의 시스템의 동작의 제어 순서를 나타내는 흐름도.
도 21은 본 발명의 제3 실시 형태에 따른 데이터 고속 전송 시스템의 동작예를 나타내는 타이밍도.
도 22는 제3 실시 형태에 따른 데이터 고속 전송 시스템의 동작의 제어 순서를 나타내는 흐름도.
도 23은 제3 실시 형태에 따른 데이터 고속 전송 시스템의 도 22와는 상이한 제어 순서를 나타내는 흐름도.
도 24는 상기 제3 실시 형태에 있어서 앞의 도 14a의 회로에 상당하는 회로의 구성을 나타내는 회로도.
도 25는 도 24의 회로에서 만들어지는 제어 신호 T2 또는 R2의 위상 관계를 나타내는 타이밍도.
도 26a 내지 도 26c는 상기 제3 실시 형태에 있어서 앞의 도 14b 또는 도 14c, 도 16a 또는 도 16b, 및 도 17에 상당하는 회로의 구성을 나타내는 회로도.
도 27은 상기 제3 실시 형태에 있어서 제1 기본 클럭 TCLK, RCLK, 제2 기본 클럭 TCLK2, RCLK2 및 데이터의 입출력을 제어하기 위해 사용되는 내부 클럭의 위상 관계를 나타내는 타이밍도.
도 28a 및 도 28b는 상기 제3 실시 형태에 있어서 내부 클럭 Tod 또는 Rod 및 Ted 또는 Red를 발생하는 회로의 회로도.
도 29는 상기 제3 실시 형태에 있어서 클럭 TCLK의 타이밍으로 데이터를 출력하는 경우의 내부 타이밍의 발생 방법을 설명하기 위한 타이밍도.
도 30a 내지 도 30d는 상기 제3 실시 형태에 있어서 타이밍 신호 c11 내지 c14를 발생시키는 회로의 회로도.
도 31a 및 도 31b는 상기 각 실시 형태의 시스템에 사용되는 동기성 조정식 지연을 실현하는 구체적 회로를 나타내는 회로도 및 그것을 심볼로 실현한 회로도.
도 32a 내지 도 32c는 입력에 대해 180도 위상이 어긋난 신호를 만드는 동기성 조정식 지연을 실현하는 기타 구체적 회로의 회로도 및 이것을 심벌로 실현한 회로도.
도 33은 메모리에 대해 데이터의 판독을 동시에 행하는 일반적인 데이터 전송 시스템의 구성예를 나타내는 회로도.
도 34는 데이터 전송에 전류를 이용하여 데이터의 기록을 동시에 행하는, 본 발명에 따른 데이터 전송 시스템의 구성을 나타내는 회로도.
도 35는 도 5a 및 도 5b 중의 각 메모리 모듈 및 제어기에 설치되어 데이터의 입출력을 행하는 전류 모드의 데이터 입출력 회로의 구성을 나타내는 회로도.
도 36은 상기 도 5a 및 도 5b 중의 각 메모리 모듈 및 제어기에 설치되고, 데이터의 입출력을 행하는 전류 모드의 데이터 입출력 회로의 도 35와는 상이한 구성을 나타내는 회로도.
도 37은 도 35 또는 도 36의 데이터 입출력 회로를 도 5a 또는 도 5b 중의 제어기와 복수의 메모리 모듈을 갖는 데이터 전송 시스템에 조립한 경우의 구성을나타내는 블록도.
도 38은 양방향 데이터 버스를 이용한 데이터 입출력 회로에서의 데이터 전송 상태를 나타내는 타이밍도.
도 39a 및 도 39b는 도 30a 내지 도 30d의 회로에서 만들어지는 버퍼 구동 신호를 이용하여 데이터 Q를 순차 출력해가는 데이터 선택 출력 회로 및 데이터 입출력 회로로서 도 35의 구성을 이용한 경우의 지연시간 D2를 갖는 버퍼의 구체적인 회로 구성을 나타내는 회로이고, 도 39c는 데이터 입출력 회로로서 도 36의 구성을 이용한 경우의 지연시간 D2를 갖는 버퍼의 구체적인 회로 구성을 나타내는 회로도.
<도면의 주요 부분에 대한 부호의 설명>
1 : 클럭
2 : 메모리 모듈
3, 303 : 제어기
4a, 4b : 클럭 배선
5 : 데이터 버스
6 : 커맨드/어드레스 버스
302 : 메모리
이하, 도면을 참조하여 본 발명을 실시 형태에 따라 설명한다.
도 5a 및 도 5b는 본 발명의 제1 실시 형태에 따른 데이터 고속 전송 시스템의 전체의 구성을 나타내는 블록도이다.
도 5a의 시스템에는 클럭 발생기(CG;1), 복수의 메모리 모듈(2), 1개의 제어기(3), 2개의 클럭 배선(4a,4b), 및 데이터 버스(5)가 설치되어 있다. 복수의 메모리 모듈(2)과 1개의 제어기(3)는 병렬로 배열되어 있다. 또한, 이들 복수의 메모리 모듈(2)과 제어기(3)의 배열을 따라 왕복하도록 상기 2개의 클럭 배선(4a,4b)이 배치되어 있다. 또한 복수의 메모리 모듈(2)과 제어기(3)의 배열을 따라 상기 데이터 버스(5) 및 커맨드/어드레스(6)가 설치되어 있다.
클럭 발생기(1)는 본래의 데이터 전송을 제어하기 위한 제1 기본 클럭 TCLK와, 이 제1 기본 클럭의 2배의 주기를 갖는 제2 기본 클럭 TCLK를 출력한다. 이 제1, 제2 기본 클럭 TCLK, TCLK2는 상기 2개의 클럭 배선(4a,4b)의 왕로 부분의 선단부로부터 입력되며, 그리고 왕로 부분을 경유하여, 복수의 메모리 모듈(2)과 제어기(3)의 배열을 따라 순서대로 전송된다. 왕로 부분으로부터 복로 부분으로의 턴어라운드 포인트를 경유한 후, 앞의 제1, 제2 기본 클럭은, 클럭 RCLK, RCLK2로서 제어기(3)와 복수의 메모리 모듈(2)로 이루어지는 배열에 대해, 왕로 부분과는 역방향으로 순차 전송되고, 최종적으로 클럭 발생기(1)의 근처의 위치까지 전송된다.
상기 2개의 클럭 배선(4a, 4b) 위를 전파하는 왕로 부분의 제1, 제2 기본 클럭 TCLK, TCLK2 및 복로 부분의 제1, 제2 기본 클럭 RCLK, RCLK2는 복수의 메모리 모듈(2) 및 제어기(3)에 취입된다. 복수의 메모리 모듈(2) 및 제어기(3)는 이들 취입된 클럭에 동기하여 각각의 데이터의 입출력 동작이 제어된다.
상기 복수의 메모리 모듈(2)과 제어기(3)는 데이터 버스(5)에 접속되어 있다. 이 데이터 버스(5)는 기록 데이터와 판독 데이터를 동시에 양방향으로 전송할 수 있도록, 소정의 값의 전류를 흘림으로써 데이터 전송을 행한다. 또한, 데이터전송시에는 제어기(3)로부터 어드레스 및 커맨드가 출력된다. 이 어드레스 및 커맨드는 도시생략한 어드레스/커맨드 버스를 통해 복수의 메모리 모듈(2)에 입력된다.
도 5a에서는 제어기(3)가 턴어라운드 포인트의 부근에 배치되어 있는 경우를 나타내고 있지만, 반드시 그와 같이 배치될 필요는 없고, 도 5b에 도시한 바와 같이, 제어기(3)가 클럭 발생기(1)의 부근에 배치되어 있어도 좋다.
이러한 구성의 시스템에 있어서, 상기 클럭이 클럭 배선(4a) 위로 전송되는 경우에, 왕로 부분에서의 클럭 TCLK와, 복로 부분에서의 클럭 RCLK와의 사이의 위상차가 360도*2의 범위, 결국 클럭 TCLK의 2주기 이내의 범위로 벗어난 것으로 해도, 데이터 버스 상에서 데이터의 충돌을 일으키지 않고, 또한 갭이 발생하는 일 없이 데이터의 전송을 행할 수 있는지에 대해 설명한다. 이를 위해서는 상호 위상이 어긋난 클럭 TCLK와 RCLK와의 사이의 중간 타이밍 M을 설정하면 좋다. 이 중간 타이밍 M을 설정함으로써 대응하는 주기의 클럭 TCLK와 RCLK를 관련시킬 수 있고,이것에 의해 데이터 버스 상에서 위치가 상이한 메모리 모듈이, 데이터 버스 상에서 데이터의 충돌을 발생시키지 않으면서 데이터 전송의 갭이 없이 데이터의 전송을 행할 수 있다. 또 중간 타이밍 M을 설정하기 위한 구체적인 방법 및 회로에 대해서는 후술한다.
도 6에 클럭 배선(4A,4B) 상의 상이한 2개의 장소에서의 클럭 TCLK와 RCLK의 위상관계를 나타낸다. 동일한 클럭 사이클에 있어서의 왕로 부분에서의 클럭 TCLK의 상승 타이밍 A의 위치는 복로 부분에서는 클럭 RCLK의 상승 타이밍 B의 위치에대응하고 있다. 클럭 배선(4A, 4B) 상의 턴어라운드 포인트에 가까운 장소와 먼 장소에서 각각의 장소의 클럭 TCLK를 기준으로 해보면, 타이밍 A,M,B 상호의 위상 관계는 도 6에 도시한 바와 같이 된다.
앞서 설명한 바와 같이 제어기(3)가 도 5a에 도시된 바와 같이 턴어라운드 포인트의 부근에 놓여지는 경우와, 도 5b에 나타낸 바와 같이 클럭 발생기(1)의 부근에 놓여지는 경우가 있다.
제어기(3)가 턴어라운드 포인트의 부근에 놓여지는 경우, 복수의 메모리 모듈(2)로부터 제어기(3)의 방향으로 전송되는 클럭은 왕로 부분을 통해 전송되는 클럭 TCLK이며, 반대로 제어기(3)로부터 복수의 메모리 모듈(2)의 방향으로 전송되는 클럭은 복로 부분을 통해 전송되는 클럭 RCLK가 있다. 그리고, 제어기(3)는 왕로 부분에 전송되는 클럭 TCLK를 받은 후에, 메모리 모듈(2)에 대한 액세스(어드레스/커맨드의 출력 등)를 개시한다. 다른쪽, 각 메모리 모듈(2)은 복로 부분을 통해 전송되는 클럭 RCLK를 받은 후에 데이타의 출력 동작을 개시한다. 즉, 각 메모리 모듈(2)이 클럭 RCLK의 상승 타이밍인 타이밍 B로 받은 어드레스/커맨드에 대해 클럭 TCLK의 상승 타이밍인 타이밍 A를 기점으로 하여, 데이타를 클럭 TCLK에 동기하여 데이타 버스(5)로 출력하면, 데이타의 버스에서의 충돌은 발생하지 않고, 제어기(3)가 수취하는 데이타에 빈 사이클이 발생하는 일도 없다. 이것에 대해서는 다음 과정에서 도 7의 흐름도를 이용하여 설명한다.
한편, 각 메모리 모듈(2)은 타이밍 B로 어드레스/커맨드를 받아, 타이밍 A로 부터 일정한 클럭 사이클 후, 소위 레이턴시(latency)의 후에 데이타를 데이타 버스로 출력한다. 그 경우, 각 메모리 모듈(2)은 일련의 데이타를 다 내보내고, 새로운 데이타 출력 사이클을 시작할 때, 그 레이턴시를 설정하기 때문에, 카운터에 위해 클럭 TCLK를 그 레이턴시에 따른 수 만큼 카운트할 필요가 있다. 후술하지만, 각 메모리 모듈(2)에는 레이턴시를 설정하기 위한 카운터가 설치되어 있고, 그 카운터의 동작을 제어하기 위한 제어 순서에 대해, 이하 도 7을 참조하여 설명한다.
(1) 먼저, 타이밍 M의 직후에, 카운터에서 사이클 수의 카운트가 가능 상태로 설정된다(단계 1).
(2) 다음에 타이밍 M의 직후부터 입력하는 클럭 TCLK의 상승 및 하강에 동기하여 카운터에서 사이클 수가 카운트된다(단계 2).
(3) 타이밍 M의 직후에 입력할 클럭 RCLK에 동기하여 취입된 커맨드가 새로운 사이클수 카운트 커맨드가 어떻게든 카운트된다(단계 3). 이때 새로운 사이클수 카운트 커맨드라면 이후, 단계 S2로 되돌아가고, 다시 클럭 TCLK의 상승 및 하강에 동기하여, 레이턴시를 설정하는데 필요한 수만큼 클럭 TCLK가 카운터로 카운트된다.
(4) 한편, 단계 3에서 타이밍 M의 직후에 입력하는 클럭 RCLK에 동기하여 취입된 커맨드가, 커맨드가 없는 상태도 포함하여 새로운 사이클수 카운트 커맨드가 아니라면, 카운트가 리세트되고, 카운트 가능 상태가 해제되어, 카운트 동작이 불활성화된다(단계 S4).
상기의 제어 순서로 클럭 TCLK의 사이클을 클럭 RCLK에 동기하여 커맨드를받은 후에 카운트하면, 턴어라운드 포인트의 근처에 배치된 메모리 모듈(2)에서도, 그리고 클럭 발생기(1)의 근처에 배치된 메모리 모듈(2)에서도 타이밍 A로부터 동일한 레이턴시로, 데이타를 클럭 TCLK에 동기하여 데이타 버스(5)에 출력하는 것이 가능하다.
예를 들면, 각 메모리 모듈(2)이 DDR(Double Data rate)로 데이타를 출력하는 것으로 하고, 또한 레이턴시가 2인 경우, 각 클럭 TCLK의 타이밍 A1에 대응하는 커맨드가 클럭 RCLK의 타이밍 B1에서, 어느 메모리 모듈(2)에 취입된 것으로 한다. 이 커맨드를 받아 이 메모리 모듈(2)은 타이밍 A1의 후에 클럭 TCLK가 시작되어 상승하는 타이밍 t1으로부터 계산하여 클럭 TCLK가 2회 변화한 후, 즉 클럭 TCLK의 타이밍 t2 이후에 데이타를 출력한다. 다음에 클럭 TCLK의 타이밍 t1(타이밍 A2)에 대응하는 커맨드가 클럭 RCLK의 타이밍 B2에서, 별도의 메모리 모듈(2)에 취입되는 것으로 한다. 이 커맨드를 받아 이 메모리 모듈(2)은 타이밍 A2의 이후에 클럭 TCLK가 시작되어 상승하는 클럭 TCLK의 타이밍 t3로부터 계산하여 클럭 TCLK가 2회 변화한 후, 즉 클럭 TCLK의 타이밍 t4 후에 데이타를 출력한다.
이렇게 해서 데이타의 판독이 행해지면, 판독 데이타의 버스 상에서의 충돌은 일어나지 않고, 제어기(3)가 수취하는 데이타에 빈 사이클이 생기지도 않는다.
이에 따라, 제어기(3)가 커맨드를 출력하고, 이 커맨드에 대응하는 데이타를 수취하는 동작을 행하는 경우에, 복수의 메모리 모듈(2)의 데이타 버스(5) 상에서의 위치 차의 영향은 모두 없어진다.
다음에, 제어기(3)가 도 5b에 나타낸 바와 같이, 클럭 발생기(1) 근처에 위치되는 경우를 설명한다. 이 경우, 제어기(3)로부터 복수의 메모리 모듈(2)의 방향으로 전송되는 클럭은 왕로를 통해 전송되는 클럭 TCLK이며, 반대로 복수의 메모리 모듈(2)로부터 제어기(3)의 방향으로 전송되는 클럭은 복로 부분을 통해 전송되는 클럭 RCLK이다. 제어기(3)는 왕로 부분으로 전송되는 클럭 RCLK을 받은 후에, 메모리 모듈(2)에 대한 액세스(어드레스/커맨드의 출력 등)을 개시한다. 또한, 각 메모리 모듈(2)은 클럭 TCLK의 상승 타이밍인 타이밍 A로 받은 커맨드에 대해 클럭 RCLK의 상승 타이임인 타이밍 B를 기점으로 하여, 데이타를 클럭 RCLK에 동기하여 데이타 버스(5)로 출력하면, 데이타의 버스에서의 충돌은 일어나지 않고, 제어기(3)가 수취하는 데이타에 빈 사이클이 생기지도 않는다.
각 메모리 모듈(2)은 일련의 데이타를 다 내보내고, 새로운 데이타 출력 사이클을 시작할 때에, 레이턴시를 설정하기 위해 카운터에 의해 클럭 RCLK를 레이턴시에 따른 수만큼 카운트할 필요가 있다. 이 카운터의 동작을 제어하기 위한 제어 순서에 대하여, 이하 도 8을 참조하여 설명한다.
(1) 각 메모리 모듈(2)에서, 클럭 TCLK에 동기하여 커맨드가 취입된다(단계 S11).
(2) 단계 S11에서 취입된 커맨드가 새로운 사이클수 카운트 커맨드인지의 여부가 판단된다(단계 S12).
(3) 단계 S12에서, 새로운 사이클수 카운트 커맨드인 것으로 판단되면, 이 직후의 타이밍 M에, 카운터에서 사이클수 카운트가 가능 상태로 되고, 타이밍 M의 직후부터 입력하는 클럭 RCLK의 상승 및 하강에 동기하여, 레이턴시를 설정하기 위해 필요한 수만큼 클럭 RCLK가 카운터에서 카운트된다(단계 S13).
예를 들면, 앞의 경우와 마찬가지로, 각 메모리 모듈(2)이 DDR(Double Data Rate)로 데이타를 출력하는 것으로 함과 동시에, 레이턴시가 2인 경우, 제어기(3)로부터 출력된 커맨드가 클럭 TCLK의 타이밍 A1에서 어느 메모리 모듈(2)에 취입된 것으로 한다. 이 커맨드를 받아서, 이 메모리 모듈(2)은 타이밍 A1 이후에 클럭 RCLK가 시작되어 상승하는 타이밍 t5부터 계산하여 클럭 RCLK가 4회 변화한 후, 즉 클럭 RCLK의 타이밍 t8 후에 데이타를 출력한다. 다음에, 클럭 TCLK의 타이밍 A2에서, 제어기(3)로부터 출력된 커맨드가 다른 메모리 모듈(2)에 취입된 것으로 한다. 이 커맨드를 받아서, 이 메모리 모듈(2)은 타이밍 A2 이후에 클럭 RCLK가 시작되어 상승하는 타이밍 t7부터 계산하여 클럭 RCLK가 4회 변화한 후, 즉 클럭 RCLK의 타이밍 t10 이후에 데이타를 출력한다.
이렇게 해서 데이타의 판독이 행해지면, 데이타의 버스에서의 충돌은 일어나지 않고, 제어기(3)가 수취하는 데이타에 빈 사이클이 생기지도 않는다.
한편, 제어기(3)측에서도 클럭 TCLK의 타이밍 A(예를 들면, 도 6 중의 타이밍 A1)와 클럭 RCLK의 타이밍 B(예를 들면, 도 6중의 클럭 RCLK의 타이밍 B)가 중간 타이밍 M의 존재에 의해 동일한 사이클의 클럭 TCLK와 클럭 RCLK로서 대응하고 있다. 이 때문에 제어기(3)가 커맨드를 내놓고, 대응하는 데이타를 수취하는 동작을 행하는 경우에, 메모리 모듈의 버스 상의 위치의 차이는 전부 없어진다.
다음에 메모리 모듈(2)이나 제어기(3)에서 상기 중간 타이밍 M을 설정하기 위한 구체적인 방법 및 회로에 대해 설명한다.
도 5a 및 도 5b에 도시된 바와 같이 제1 기본 클럭 TCLK, RCLK와 제2 클럭 TCLK2, RCLK2가 클럭 배선 4A, 4B를 통해 전송되어 각 메모리 모듈(2)과 제어기(3)에 공급된다.
도 9는 클럭 배선 4A, 4B 상의 어느 위치에서의 클럭 TCLK, RCLK, TCLK2, RCLK2의 위상 상태를 나타내고 있다. 도시한 바와 같이 예를 들면 위로 향하는 화살표 방향으로 나타낸 사이클이 턴어라운드 포인트의 전후에 대응하는 사이클, 즉 위로 향하는 화살표로 나타낸 신호가 서로 동일한 사이클 신호이다. 제1 기본 클럭 TCLK, RCLK에 대해 각각 2배의 주기를 갖는 제2 기본 클럭 TCLK2, RCLK2가 전송되므로, 메모리 모듈(2)이나 제어기(3)가 수취되는 제1 기본 클럭 TCLK, RCLK를, 우수 사이클의 클럭과 기수 사이클의 클럭으로 나누는 것이 가능하다. 또, 여기서는 편의상, 도 9 중의 0,2,4,… 번째의 클럭을 우수 사이클이라 하고, 마찬가지로 1,3,5, … 번째의 클럭을 기수 사이클이라 한다.
상기 클럭 TCLK, RCLK, TCLK2, RCLK2로부터 각종 내부 클럭이 만들어지지만, 이후, 우수 사이클 클럭에 관계한 각 내부 클럭에는 e, 기수 사이클 클럭에 관계한 각 내부 클럭에는 o, 기본 클럭의 상승에 동기한 각 내부 클럭에는 u, 상승 주기에 180도 위상이 어긋난 타이밍으로 동기한 각 내부 클럭에는 d라고 하는 첨자를 각각 붙여 나타낸다.
도 10은 클럭 TCLK 또는 RCLK에 동기하여 만들어진 우수 사이클의 내부 클럭 Teu 또는 Reu, 기수 사이클의 내부 클럭 Tou 또는 Rou의 위상 관계를 나타낸다. 이들 내부 클럭이 각 메모리 모듈(2)이나 제어기(3)내에서 각각 만들어진다면 이것들을 이용하여 앞의 타이밍 M을, 각 메모리 모듈(2) 내의 메모리칩 또는 제어기(3) 내의 제어기칩에서 각각 만들 수 있다.
타이밍 M은 내부 클럭 Tou 또는 클럭 TCLK의 어느 하나의 사이클(이것을 예를 들면, CLK1이라 함)에 대해, δ 만큼 지연된 내부 클럭 Rou 또는 클럭 RCLK의 어느 하나의 사이클(이것을 예를 들면, CLK2라 함)이 존재할 때에, CLK1로부터 δ/2 만큼 지연된 타이밍에 상당하고 있다. 이 타이밍 M은 이하와 같은 방법으로 만들어진다.
먼저, CLK1 또는 CLK2의 2주기의 기간 2τ와, CLK2의 CLK1에 대한 지연 (δ)과의 사이의 위상차 (2τ - δ)를 생성한다. 다음에, 이 위상차 (2τ - δ)만큼 지연된 타이밍을 CLK1으로부터 만든다. 그리고, 이 타이밍으로부터 어느 CLK1 사이클 까지의 지연 (τ + δ/2)를 생성하고, 이 지연 만큼 상기의 어느 CLK1 사이클로부터 지연된 타이밍을 만들어, 이 타이밍을 CLK1에 대해 δ/2 지연된 타이밍으로 한다.
다음에, 동기성 조정식 지연 회로(Synchronous Adjustable Delay; SAD)라 불리는 회로를 이용하여 상기 타이밍 M을 작성하는 구체적인 방법을, 도 11을 이용하여 설명한다. 이러한 동기성 조정식 지연 회로에 대해서는, 본 발명자에 의한 일본국 특허 출원 특개평9-100490호의 명세서 및 도면에서 상세히 기술되어 있지만, 그 구체적 구성에 대해서는 후에 설명한다.
클럭 TCLK가 도 5a 및 도 5b 중의 클럭 배선 4A의 턴어라운드 포인트를 경유하여 클럭 RCLK로서 복로 부분 측으로 전송되어 감으로써, 클럭 TCLK와 RCLK 사이에 δ로 되는 위상차가 생기는 것으로 한다. 이 위상차 δ는 0부터 (360×2)도의 범위 내, 즉 클럭 CLK의 2주기 이내에 있는 것으로 한다.
도 11에 나타낸 클럭을 우수 사이클 클럭 e와 기수 사이클 클럭 o로 구별하고 있다. 도 11에서는, 상향의 화살표로 표시된 우수 사이클 클럭의 상승 타이밍으로부터, 대응한 중간 타이밍 Me가 작성되는 형태를 나타내고 있다. 또한, 기수 사이클 클럭의 경우에도 마찬가지로 고려할 수 있으므로, 그 설명은 생략한다.
우선, 내부 클럭 Rou가 상승 타이밍 t1부터 시작된다. 동기성 조정식 지연 회로를 이용하여, 내부 클럭 Rou의 상승까지의 지연량을, 내부 클럭 Tou가 상승하는 타이밍 t2에서 측정한다. 다음에, 이 지연량의 반의 지연 시간 후에, 내부 클럭 φe를 타이밍 t3에서 발생시킨다. 기본 클럭의 주기를 τ라 하면, 내부 클럭 Rou와 Tou 간의 지연량은 2τ-δ이므로, t2와 t3의 타이밍 간의 주기, 즉 내부 클럭 Tou와 φe 간의 지연량은 τ-δ/2로 된다. 또한, 동기성 조정식 지연 회로를 이용하여, 내부 클럭 φe의 상승 타이밍부터 그 직후의 내부 클럭 Tou의 상승까지의 사이의 지연량을, 내부 클럭 Tou의 상승 타이밍 t4에서 측정한다. 그리고, 이 지연량과 같은 지연 시간 후에, 내부 클럭 Me를 타이밍 t5에서 발생시킨다. 타이밍 t2부터 t4까지의 사이의 지연량은, 내부 클럭 Tou의 1주기와 같은 2τ이므로, 타이밍 t3부터 t4까지의 사이의 지연량, 즉 내부 클럭 φe와 Tou 간의 지연량은 타이밍 t2부터 t4까지의 사이의 지연량에서, 타이밍 t2부터 t3까지의 사이의 지연량을 빼서 τ+δ/2로 되고, 타이밍 t4부터 t5까지의 사이의 지연량도 이것과 같은 τ+δ/2로 된다.
따라서, 내부 클럭 Tou의 상승으로부터 τ+δ/2만큼 위상이 어긋난 내부 클럭 Me의 타이밍은, 내부 클럭 Teu의 상승으로부터 δ/2만큼 위상이 어긋난 타이밍으로 되고, 내부 클럭 Me가 상승하는 타이밍이 구해진 내부 클럭 Teu와 Reu의 중간 타이밍으로 된다.
이와 같이 기본 클럭의 5 사이클분의 기간에서, 필요한 중간 타이밍 신호가 얻어진다. 도 11 및 상기 설명에서 사용한 클럭에 대한 첨자 e를 o로 바꾸면, 내부 클럭 Tou의 상승으로부터 δ/2만큼 위상이 어긋난 상승 타이밍을 갖는 중간 타이밍 신호 Mo가 얻어진다. 그리고, 중간 타이밍 신호 Me와 Mo를 합성하면, 도 6에 나타낸 중간 타이밍 신호 M이 얻어진다.
도 12는, 도 5a 및 도 5b의 복수의 메모리 모듈(2) 및 제어기(3) 내에 각각 설치되며, 상기 타이밍 신호 M을 발생시킴과 동시에, 이 발생된 타이밍 신호 M에 기초하여 상기 사이클 수를 카운트하는 카운터 및 이 카운터의 카운트 출력에 기초하여 레이턴시를 설정하는 회로를 포함하는 제어 회로의 구성을 나타내고 있다. 이 제어 회로는, 클럭 TCLK, RCLK, TCLK2, RCLK2를 수신하여, 상기 타이밍 신호 M을 발생시키는 타이밍 신호 발생 회로(401)와; 클럭 TCLK, RCLK, TCLK2, RCLK2, 상기 제어기(3)로부터 출력되는 커맨드 및 상기 타이밍 신호 발생 회로(401)로부터 출력되는 타이밍 신호 M을 수신하여, 상기 도 7 및 도 8에 나타낸 제어 수순을 실현하고, 그 결과로서 카운터의 세트/리세트 신호를 발생시키는 내부 제어기(402)와; 상기 내부 제어기(402)에서 발생되는 세트/리세트 신호를 수신하여, 클럭 TCLK 또는 RCLK를 카운트하여 사이클 수의 카운트를 행하는 카운터(403)와; 이카운터(403)의 카운트 출력 N을 수신하여 레이턴시의 설정을 행하는 레이턴시 제어 회로(404)를 갖는다.
또한, 레이턴시 제어 회로(404)의 출력은 도시하지 않은 데이터 입력/출력 회로에 보내지고, 이 데이터 입력/출력 회로에서 데이터의 입력/출력이 행해진다.
도 13은 타이밍 신호 M을 발생시키는 도 12의 타이밍 신호 발생 회로(401)의 상세한 블럭도이다. 도 13에서, 내부 클럭 T2 또는 R2 발생 회로(501)는 클럭 TCLK 또는 RCLK와 클럭 TCLK2 또는 RCLK2를 수신하여, 내부 클럭 T2 또는 R2를 발생시킨다. 내부 클럭 Tou 또는 Rou 발생 회로(502)는 클럭 TCLK 또는 RCLK와 클럭 TCLK2 또는 RCLK2 및 내부 클럭 T2 또는 R2를 수신하여, 내부 클럭 Tou 또는 Rou를 발생시킨다. 내부 클럭 Teu 또는 Reu 발생 회로(503)는 클럭 TCLK 또는 RCLK와 클럭 TCLK2 또는 RCLK2 및 내부 클럭 T2 또는 R2를 수신하여, 내부 클럭 Teu 또는 Reu를 발생시킨다. 내부 클럭 φo 또는 φe 발생 회로(504)는 내부 클럭 Tou 또는 Rou와 Teu 또는 Reu를 수신하여, 내부 클럭 φo 또는 φe를 발생시킨다.
타이밍 M 발생 회로(505)는 내부 클럭 Tou 또는 Rou와 Teu 또는 Reu 및 내부 클럭 φo 또는 φe를 수신하여, 타이밍 M(Me 또는 Mo)을 발생시킨다.
다음에, 도 13의 각 회로의 보다 상세한 구성 및 그 동작에 대하여 이하에 설명한다.
도 14a는 기본 클럭의 우수 사이클과 기수 사이클을 나누기 위한 제어 신호 T2 또는 R2를 발생시키는, 도 13의 제어 신호 T2 또는 R2 발생 회로(501)의 구체적인 구성을 나타내고 있다. 제어 신호 T2 발생 회로와 제어 신호 R2 발생 회로의기본적인 구성은 동일하며, 입력 신호만이 다를 뿐이다.
이 회로는, 클럭 TCLK 혹은 RCLK가 입력되는 버퍼(11)와, 클럭 TCLK2 혹은 RCLK2가 입력되는 종속 접속된 기수단 (본 예에서는, 3단)의 버퍼(12)와, 4개의 NAND 게이트(13∼16)로 구성되어 있다.
즉, 버퍼(11)의 출력은 NAND 게이트(13)의 반전 입력단에 입력됨과 동시에, NAND 게이트(14)의 한쪽의 반전 입력단에 입력된다. 종속 접속된 3단의 버퍼(12) 중 후단의 버퍼(12)의 출력은 NAND 게이트(13)의 비반전 입력단과 NAND 게이트(14)의 다른쪽의 반전 입력단에 각각 공급된다. 상기 NAND 게이트(13)의 출력은 NAND 게이트(15)의 한쪽의 입력단에 공급되고, 상기 NAND 게이트(14)의 출력은 NAND 게이트(16)의 한쪽의 입력단에 공급되며, 상기 NAND 게이트(15, 16)의 다른쪽의 입력단은 서로 다른 NAND 게이트의 출력단에 접속되어 있다.
즉, 도 14에 나타낸 회로에서는, 2개의 NAND 게이트(15, 16)로 이루어진 플립플롭에 의해, 기본 클럭의 우수 클럭과 기수 클럭을 나누기 위한 제어 신호 T2 또는 R2가 작성된다.
제어 신호 T2 또는 R2는, 도 15의 타이밍도에 나타낸 바와 같이, 제2 기본 클럭 TCLK2(RCLK2)가 'H'일 때에 제1 기본 클럭 TCLK(RCLK)가 'H'에서 'L'로 변화하는 천이시에 'H'로 되고, 제2 기본 클럭 TCLK2(RCLK2)가 'L'일 때에 제1 기본 클럭 TCLK(RCLK)가 'L'에서 'H'로 변화하는 천이시에 'L'로 된다.
도 14b는 내부 클럭 Tou 또는 Rou를 발생시키는, 도 13의 내부 클럭 Tou 또는 Rou 발생 회로(502)의 상세한 구성을 나타내고 있다. 내부 클럭 Tou 발생 회로와 내부 클럭 Rou 발생 회로의 기본적인 구성은 동일하며, 입력 신호만이 다를 뿐이다.
이 회로에서, 제1 기본 클럭 TCLK 혹은 RCLK는 버퍼(21)를 통해 AND 게이트(22)의 한쪽의 입력단에 공급된다. 이 AND 게이트(22)의 다른쪽의 입력단에는 도 14a의 회로에서 작성되는 신호 T2 또는 R2가 공급된다. 상기 AND 게이트(22)의 출력은 버퍼(23)를 통해 AND 게이트(24)의 한쪽의 입력단에 공급된다. 이 AND 게이트(24)의 다른쪽의 입력단에는 고 레벨의 논리 신호 'H'가 항시 공급되어 있다. 상기 AND 게이트(24)의 출력은 버퍼(25)를 통해 동기성 조정식 지연 회로(26)의 순방향 지연 회로 FD에 공급된다. 또한, AND 게이트(22)의 출력은 제어 클럭으로서 상기 SAD(26)에 공급된다. 상기 SAD(26)에는, 상기 순방향 지연 회로 FD 이외에 역방향 지연 회로 BD가 설치되어 있다.
동기성 조정식 지연 회로(26)의 순방향 지연 회로 FD에는 복수의 지연 유닛이 설치되어 있다. 이 순방향 지연 회로 FD에 입력된 신호는 이 복수의 지연 유닛을 통과함으로써 순차 지연된다. 그리고, 동기성 조정식 지연 회로(26)에서는, 순방향 지연 회로 FD에 버퍼(25)로부터의 신호가 공급되고, 다음 사이클의 AND 게이트(22)로부터의 출력이 상승되는 시점까지의 지연 시간 Δ가, 순방향 지연 회로 FD에 공급된 입력 신호가 통과한 지연 유닛의 수에 대응하여 측정된다. 또한, 이 측정된 신호의 지연 시간 Δ에 상당하는 지연량이 순방향 지연 회로 FD에서 유지된다. 역방향 지연 회로 BD는 순방향 지연 회로 FD에서 유지된 지연 시간 Δ에 상당하는 지연량만큼 신호를 지연시킨다. 그리고, 역방향 지연 회로 BD의 출력은버퍼(27)를 통해 내부 클럭 Tou 또는 Rou로서 출력된다
여기서, 제1 기본 클럭 TCLK 혹은 RCLK에 대한 상기 버퍼(21) 및 AND 게이트(22)로 이루어진 회로에서의 지연 시간을 D1, 역방향 지연 회로 BD의 출력에 대한 상기 버퍼(27)에서의 지연 시간을 D2로 하면, AND 게이트(22)의 출력에 대한 상기 버퍼(23), AND 게이트(24) 및 버퍼(25)로 이루어진 회로에서의 지연 시간 A가 D1+D2가 되도록, 버퍼(23), AND 게이트(24) 및 버퍼(25)의 회로 상수가 설정되어 있다.
이러한 동기성 조정식 지연 회로를 이용한 신호 발생 회로의 동작 원리에 대해서는, 본 발명자에 의한 일본국 특개평9-100490호의 출원에서 상세히 설명되어 있다. 이하, 도 14b, 도 14c의 회로 동작에 대하여 간단히 설명한다.
도 14b의 버퍼(23), AND 게이트(24) 및 버퍼(25)로 이루어진 회로에서의 지연 시간 A가 D1+D2와 같게 되도록 설정되어 있으면, 내부 클럭 Tou 또는 Rou의 상승은 제1 기본 클럭 TCLK 또는 RCLK의 기수 클럭의 상승에 일치한다. 이는 A+Δ의 지연량이 정확히 기수 클럭 사이클의 제1 기본 클럭의 주기 2τ와 같게 되기 때문이다.
도 14c의 회로가 도 14b의 회로와 다른 점은, AND 게이트(24)의 다른쪽의 입력단에 접지 전위에 대응한 논리 레벨 'L'을 항시 공급함으로써, 우수 클럭 사이클의 제1 기본 클럭에 기초하여 동작하도록 한 것뿐이다.
도 16a 및 도 16b는, 도 13에 도시한 내부 클럭 φe 발생 회로 및 내부 클럭 φo 발생 회로의 구체적인 구성을 도시하고 있다. 이 경우에도, 두 회로의 기본적인 구성은 같고, 입력 신호만 다르기 때문에, 내부 클럭 φo 발생 회로로 대표하여 설명한다.
내부 클럭 Rou는, 종속 접속된 2단의 버퍼(31)에 의한 지연 시간 A(=2*D2)를 거친 후에, SAD(32)의 순방향 지연 회로(FD)로 공급된다. 이 동기성 조정식 지연 회로(SAD ; 32)에는, 내부 클럭 Tou가 공급되어 있다. 이 SAD(32)에서는, 내부 클럭 Rou를 입력한 후, 다음에 내부 클럭 Tou를 입력하기까지의 사이의 지연량 Δ가 순방향 지연 회로(FD)로서 측정된다. 역방향 지연 회로(BD)에서는, 지연량이 항상 FD의 반으로 되도록 지연 유닛의 수가 FD의 반으로 솎아내어진다. 내부 클럭 Tou를 입력한 타이밍으로, Δ/2의 지연을 거쳐 SAD(32)로부터 출력되는 신호는, 버퍼(33)에 의한 지연 시간 D2를 거친 후에 내부 클럭 φe으로서 출력된다.
즉, 내부 클럭 Rou와 내부 클럭 Tou와의 사이의 지연량이 2*D2+Δ로, 내부 클럭 Tou와 내부 클럭 φe와의 사이의 지연량이 그 반인 D2+Δ/2로 된다.
도 16b의 회로에서도, 상기와 마찬가지로 하여, 내부 클럭 Reu와 내부 클럭 Teu에서 내부 클럭 φo이 얻어진다.
도 11에 도시한 바와 같이, 내부 클럭 φe이 상승하는 타이밍에서부터 내부 클럭 Tou가 상승하는 타이밍까지의 지연량을, 내부 클럭 Tou를 입력하는 타이밍으로 측정을 개시함으로써 타이밍 신호 Me가 얻어진다. 또한, 내부 클럭 φo이 상승하는 타이밍으로부터 내부 클럭 Teu가 상승하는 타이밍까지의 지연량을, 내부 클럭 Teu를 입력하는 타이밍으로 측정을 개시함으로써 타이밍 신호 Mo가 얻어진다.
또한, 타이밍 신호 Me와 Mo를 합성함으로써, 최종적인 타이밍 신호 M이 얻어지지만, 이 타이밍 신호 M을 발생하는 회로의 구성을 도 17에 도시한다.
도 17의 회로의 기능은, 앞의 도 14b 및 도 14c에 도시한 회로와 기본적으로 같다. 여기서는, 각각 순방향 지연 회로 FD 및 역방향 지연 회로 BD가 설치된 2개의 동기성 조정식 지연 회로(SAD ; 34, 35)의 출력의 OR 논리를, 출력단의 OR 게이트(36)로 취함으로써 타이밍 신호 M(MeMo)을 얻도록 하고 있다. 이 때문에, 입출력단에서의 지연량을 맞추기 위해, 두 SAD 34, 35의 입력단에도 OR 게이트(37, 38)가 설치되어 있다. 그리고, 한쪽의 OR 게이트(37)에는 내부 클럭 φe과 “L”레벨의 논리 신호가 공급되고, 다른쪽 OR 게이트(38)에는 내부 클럭 φo과 “L”레벨의 논리 신호가 공급되어 있다. 또한, 한쪽 SAD(34)에는 내부 클럭 Tou가, 다른쪽 SAD(35)에는 내부 클럭 Teu가 각각 제어 신호로서 공급되어 있다.
그런데, 상기 도 6의 타이밍도 중의 중간 타이밍 M이 결정되면, 데이타 버스상의 위치에 좌우되지 않고 데이타 전송이 가능한 것은 이미 설명했지만, 짝수 사이클, 홀수 사이클 등의 기본 클럭의 사이클의 구별이 붙으면 사이클 수 카운트의 수순을 연구함으로써, 보다 회로 규모를 작게 한 방식이 가능하다. 또한, 클럭 RCLK과 TCLK의 위상차가 2주기 이상 어긋낫을 경우로의 확장도 용이하게 된다.
다음에, 이 사이클 수 카운트의 수순을 바꾼, 본 발명의 제2 실시 형태에 대해 설명한다.
도 18은 기본 클럭의 짝수 사이클인 e 사이클에서만, 클럭 TCLK과 RCLK의 위상차를 측정하고, 그 중간의 타이밍 Me만을 발생하며, 그것을 이용하는 방법을 타나타낸 타이밍도이다. 타이밍 Me의 발생 방법은, 이제까지 설명해 온 바와 같이,다른쪽 타이밍 Mo가 필요 없기 때문에, 타이밍 Mo를 발생하는 기능을 갖는 도 16a, 도 16b 및 도 17에 도시한 회로에 비해, 회로 규모를 반감시킬 수 있다는 효과가 있다.
이 타이밍도에서는, 각 사이클마다 타이밍 M을 설정할 필요가 없다. 도면 중에서, A1 사이클과 B1 사이클, A2 사이클과 B2 사이클이 대응하는 동일 사이클이고, 이 2개의 사이클이 타이밍 Me의 발생에 이용된다.
본 실시 형태에 있어서, 도 5a에 도시하는 바와 같이, 제어기(3)가 턴어라운드 포인트 부근에 있을 경우에 대해, 먼저 설명한다. 이 경우, 제어기(3)로부터 메모리 모듈(2)에 대해, 커맨드가 클럭 RCLK의 B1 및 B2 사이클에 동기하여 전송된다. 또한, 메모리 모듈(2)로부터 데이타를 데이타 버스(5)를 통해 전송할 경우에는, 클럭 TCLK에 동기하여 A1 사이클 및 A2 사이클로부터 사이클 수가 카운트되고, A1 사이클 및 A2 사이클에서 계산하여 일정 사이클수마다 데이타가 데이타 버스(5)상으로 출력되지 않으면 않된다. 일련의 데이타를 끝내고 새로운 데이타 출력 사이클을 시작할 때, 레이턴시를 설정하기 위해, 카운터에 의해 클럭 TCLK가 레이턴시에 따른 수만 카운트될 필요가 있다. 상기와 같이 각 메모리 모듈(2) 내에는 레이턴시를 설정하기 위한 카운터(도 12 중의 카운터(403))가 설치되어 있고, 이 카운터의 동작을 제어하기 위한 제어 수순에 대해, 도 19를 참조하여 설명한다.
(1) A1 사이클에서의 클럭 TCLK의 상승 타이밍 직후에 발생되는 제1 타이밍 신호 Me에 대해, 그 다음에 발생하는 제2 타이밍 신호 Me에 대응하는 클럭 TCLK의 e 사이클부터, 카운터로 클럭 TCLK이 카운트되고, 사이클 수의 카운트가개시된다(S21).
(2) 클럭 RCLK에 동기하여 커맨드가 취입된다(S22).
(3) 커맨드가 취입되었는지의 여부가 판단된다(S23).
(4) 제1 타이밍 신호 Me 직후의, 이 제1 타이밍 신호 Me에 대응하는 클럭 RCLK의 B1 사이클의 상승에서부터, 제2 타이밍 신호 Me에 대응하는 클럭 RCLK의 사이클(B2 다음의 e)의 상승까지의 사이의 기간에, 클럭 RCLK에 동기하여 취입된 커맨드가, 커맨드가 없는 상태도 포함하여 새로운 사이클 수 카운트 커맨드로 되면, 카운트 동작이 멈추고 다음 카운트 동작에 대비한다(S24).
(5) 한편, (a) 제1 타이밍 신호 Me 직후의, 그 제1 타이밍 신호 Me에 대응하는 클럭 RCLK의 B1 사이클의 상승에서부터, 제2 타이밍 신호 Me에 대응하는 클럭 RCLK의 사이클(B2 다음의 e)의 상승까지의 사이의 기간에, 클럭 RCLK에 동기하여 취입된 커맨드에 새로운 사이클 수 카운트 커맨드가 있으면, 일정 사이클 수가 카운트되고, 그 사이클에서 TCLK에 동기하여 데이타가 데이타 버스로 출력된다.
또한, (b) 제1 타이밍 신호 Me 직후의, 그 제1 타이밍 신호 Me와 대응하는 클럭 RCLK의 B1 사이클에서부터 제2 타이밍 신호 Me와 대응하는 사이클(B2 다음의 e)의 사이에서, 제1 타이밍 신호 Me 직후의, 그 제1 타이밍 신호 Me와 대응하는 클럭 RCLK의 사이클을 첫번째로 하여 i번째(i는 양의 정수)의 사이클에 새로운 사이클 수 커맨드가 있다면, i-1 사이클에 대응하는 사이클 수 카운트를 여분으로 더한 일정 사이클 수가 카운터로 카운트되고, 그 카운트 종료 후의 사이클에서 클럭 TCLK에 동기하여 데이타가 데이타 버스로 출력된다(도 18에서, 예를 들어 B2 사이클에 커맨드가 있다면, 카운트 종료의 수가 2만 증가된다)(S25).
이상의 수순에 의해, 클럭 TCLK의 상승시 및 하강시에, 카운터로 카운트가 행해짐으로써, 각 메모리 모듈(2)로부터 소정의 레이턴시로 데이타의 판독이 행해진다. 예를 들어, SDR(Single Data Rate)로 제어기(3)가 커맨드를 출력한 사이클부터 카운트된 6 사이클째의 상승에서 데이타를 데이타 버스를 통해 전송하고자 할 경우에, 제어기(3)가 A1 사이클에 대응하는 커맨드를 출력하면, 메모리 모듈(2)은 B1 사이클에서 이 커맨드를 받고, 클럭 TCLK의 타이밍 t3으로 데이타를 출력한다. 또한, 제어기(3)가 A2 사이클로 커맨드를 출력하면, 메모리 모듈(2)은 B2 사이클에서 이 커맨드를 받고, 클럭 TCLK의 타이밍 t4으로 데이타를 출력한다.
다른쪽, 도 5b에 도시하는 바와 같이, 제어기(3)가 클럭 발생기(1)의 가까이에 있을 경우, 각 메모리 모듈(2)에 대해 커맨드는 클럭 TCLK의 A1 및 A2 사이클에 동기하여 전송된다. 또한, 각 메모리 모듈(2)이 데이타를 데이타 버스(5)로 출력할 때는, 클럭 RCLK에 동기하여 카운터로 B1 및 B2 사이클로부터 사이클 수의 카운트가 개시되고, 일정 사이클수째에 각 메모리 모듈(2)로부터 데이타가 출력된다. 일련의 데이타를 끝내고, 새로운 데이타 출력 사이클을 시작할 때, 레이턴시를 설정하기 위해, 카운터에 의해 클럭 TCLK이 레이턴시에 따른 수만 카운트될 필요가 있다. 상기와 같이 각 메모리 모듈(2) 내에는 레이턴시를 설정하기 위한 카운터(도 12 중의 카운터(403))가 설치되어 있고, 이 카운터의 동작을 제어하기 위한 제어 수순에 대해 도 20을 참조하여 설명한다.
(1) 제1 타이밍 신호 Me에 대응하는 클럭 TCLK의 A1 사이클에 커맨드가 취입된다(S31).
(2) 제1 타이밍 신호 Me 직후의, 이 제1 타이밍 신호 Me에 대응하는 클럭 RCLK의 B1의 사이클에서부터 카운터로 사이클수의 카운트가 개시된다(S32).
(3) 커맨드가 취입되었는지의 여부가 판단된다(S33).
(4) 제2 타이밍 신호 Me에 대응하는 클럭 TCLK의 사이클(A2 다음의 e)까지의 기간에, 클럭 TCLK에 동기하여 취입된 커맨드가, 커맨드가 없는 상태도 포함하여 새로운 사이클수 카운트 커맨드로 되면 카운트 동작이 멈추고, 다음 카운트 동작에 대비한다(S34).
(5) 한편, (a) 제1 타이밍 신호 Me에 대응하는 클럭 TCLK의 A1 사이클에서부터, 제2 타이밍 신호 Me에 대응하는 클럭 TCLK의 A2 다음의 사이클까지의 사이에, 클럭 TCLK에 동기하여 취입된 커맨드에 새로운 사이클수 카운트 커맨드가 있다면, 일정 사이클 수가 카운트되고, 그 사이클에서 RCLK에 동기하여 데이타가 데이타 버스로 출력된다.
또한, (b) 제2 타이밍 신호(Me)에 대응하는 클럭 TCLK의 A2 다음의 e 사이클 에서, 제1 타이밍 신호 Me에 대응하는 클럭 TCLK의 A1 사이클을 첫번째로 하여 i번째(i는 양의 정수) 사이클에 새로운 사이클 수 커맨드가 있다면, i-1 사이클에 대응하는 사이클 수 카운트를 여분으로 더한 일정 사이클 수가 카운터로 카운트되고, 그 카운트 종료 후의 사이클에서 클럭 RCLK에 동기하여, 데이타가 데이타 버스로 출력된다(도 18에서, 예를 들어 A2 사이클에 커맨드가 있다면, 카운트 종료의 수가 2만 증가된다)(S35).
이로써, 예를 들어 제어기(3)가 커맨드를 내보낸 사이클에 대응한 사이클에서부터 4 사이클째의 상승에서 데이타를 데이타 버스를 통해 전송하고자 할 때, 제어기(3)가 A1 사이클로 커맨드를 내보내면, 메모리 모듈(2)이 A1 사이클로 커맨드를 받고, 타이밍 t5에서 데이타를 출력한다. 또한, 제어기(3)가 A2 사이클로 커맨드를 내보내면, 메모리 모듈(2)은 A2 사이클로 이 커맨드를 받고, 타이밍 t6으로 데이타를 출력한다.
도 18의 예는, 도 6 중에 도시하는 클럭 TCLK과 RCLK이 2주기까지 위상이 어긋나도 좋은 경우였다. 그렇지만, 시스템이 더 고속화되거나, 대규모로 되고, 버스상의 전파 지연이 기본 클럭의 주기에 비해 더 길게 되면, 예를 들어 4주기까지의 위상의 어긋남에도 대응할 수 있는 것이 요구된다. 이 때, 제2 기본 클럭으로서는 당연히, 주기가 제1 기본 클럭의 4배인 제1 기본 클럭의 4분주 신호가 사용된다.
도 21에, 4분주된 제2 기본 클럭을 이용해, 제1 기본 클럭의 4개의 사이클을 a, b, c, d와 같이 구별하여, 4주기의 위상 오차까지 대응 가능한 경우일 도 18에 상당하는, 본 발명의 제3 실시 형태에 따른 타이밍도를 나타낸다.
이 경우, 제1 기본 클럭의 4개의 사이클에 대해, a 사이클에 대응한 타이밍 Ma만이 발생된다. 이 타이밍 Ma의 발생 방법은 뒤에서 상세히 설명한다. 도 21에 도시한 타이밍 Ma의 발생 수순은 도 18의 경우와 마찬가지이고, 이하와 같다.
먼저, 도 5a에 도시하는 바와 같이, 제어기(3)가 턴어라운드 포인트 근처에 있을 경우, 메모리 모듈(2)에 대해, 커맨드가 클럭 RCLK의 B1, B2, B3, B4로 이루어지는 4 사이클에 동기하여 전송된다. 또한, 데이타를 데이타 버스(5)를 통해 전송하는 사이클은, 클럭 TCLK에 동기하여 A1, A2, A3, A4 각 사이클로부터 카운터에 의해 사이클 수를 카운트한 결과의 일정 사이클수째이다. 일련의 데이타를 끝내고, 새로운 데이타 출력 사이클을 시작할 때, 레이턴시를 설정하기 위해 카운터에 의해 클럭 TCLK이 레이턴시에 따른 수만 카운트될 필요가 있다. 카운터에서의 레이턴시에 따른 수의 클럭 TCLK에서의 카운트의 수순이 도 22에 도시되어 있다.
(1) 제1 타이밍 Ma 직후의 제2 타이밍 Ma에 대응하는 클럭 TCLK의 사이클(a 사이클)로부터, 카운터에 의한 사이클 수의 카운트가 개시된다(S41).
(2) 클럭 RCLK에 동기하여 커맨드가 취입된다(S42).
(3) 커맨드가 취입되었는지의 여부가 판단된다(S43).
(4) 제1 타이밍 Ma 직후의, 이 제1 타이밍 Ma에 대응하는 클럭 RCLK의 사이클(B1. a 사이클)에서부터, 제2 타이밍 Ma에 대응하는 클럭 RCLK의 사이클(다음 a 사이클)까지의 기간에, 클럭 RCLK에 동기하여 취입된 커맨드가, 커맨드가 없는 상태도 포함하여 새로운 사이클 수 카운트 커맨드로 되면, 카운트 동작이 멈추고, 다음 카운트 동작에 대비한다(S44).
(5) 한편, (a) 제1 타이밍 Ma 직후의, 이 제1 타이밍 Ma에 대응하는 클럭 RCLK의 B1의 사이클(a 사이클)에서부터, 제2 타이밍 Ma에 대응하는 클럭 RCLK의 B4의 다음 a 사이클까지의 사이의 기간에, 클럭 RCLK에 동기하여 취입된 커맨드에 새로운 사이클 수 카운트 커맨드가 있다면, 일정 사이클 수 카운트되고, 그 사이클로부터 TCLK에 동기하여 데이타가 데이타 버스로 출력된다.
또한, (b) 제1 타이밍 Ma 직후의, 이 제1 타이밍 Ma과 대응하는 클럭 RCLK의 B1 사이클에서부터 다음의 대응하는 사이클(B4 사이클의 다음 a 사이클)까지의 사이에서, 제1 타이밍 Ma 직후의, 이 제1 타이밍 Ma과 대응하는 클럭 RCLK의 사이클(B1 사이클)을 첫번째로 하여, i번째(i는 양의 정수)의 사이클에 새로운 사이클 수 커맨드가 있다면, i-1 사이클에 대응하는 사이클 수 카운트를 여분으로 더한 일정 사이클 수가 카운터로 카운트되고, 그 카운트 종료 후의 사이클로부터 클럭 TCLK에 동기하여 데이타가 데이타 버스로 출력된다(도 21에서, 예를 들어 B3 사이클에 커맨드가 있다면, 카운트 종료의 수가 4만 증가된다)(S45).
예를 들어, SDR 방식으로 제어기(3)가 커맨드를 내본낸 사이클로부터 6사이클째의 상승에서 데이타를 데이타 버스에 태우고자 할 때, 제어기(3)가 A1 사이클에 대응하는 커맨드를 출력하면, 메모리 모듈(2)은 B1 사이클로 그 커맨드를 받고, 클럭 TCLK의 타이밍 t3로 데이타를 출력한다. 또한, 제어기(3)가 3 사이클로 커맨드를 출력하면, 메모리 모듈(2)은 B3 사이클로 그 커맨드를 받고, 클럭 TCLK의 타이밍 t4로 데이타를 출력한다.
한편, 도 5b에 도시하는 바와 같이, 제어기(3)가 클럭 발생기(1)의 가까이에 있을 경우, 메모리 모듈(2)에 대해 커맨드가 클럭 TCLK의 A1, A2, A3, A4로 이루어지는 4 사이클에 동기하여 전송된다. 또한, 데이타를 데이타 버스(5)를 통해 전송하는 사이클은, 클럭 RCLK에 동기하여 B1, B2, B3, B4 사이클로부터 카운터에 의해 사이클 수를 카운트한 결과의 일정 사이클 수째이다. 일련의 데이타를 끝내고, 새로운 데이타 출력 사이클을 시작할 때, 레이턴시를 설정하기 위해, 카운터에 의해클럭 RCLK가 레이턴시에 대응한 수만 카운트될 필요가 있다. 카운터에서의 레이턴시에 따른 수의 클럭 RCLK에서의 카운트의 수순이 도 23에 도시되어 있다.
(1) 제1 타이밍 Ma과 대응하는 클럭 TCLK의 A1 사이클(a 사이클)에서부터 커맨드의 취입이 개시된다(S51).
(2) 제1 타이밍 Ma 직후의, 이 제1 타이밍 Ma과 대응하는 클럭 RCLK의 B1 사이클(a 사이클)에서부터 사이클 수의 카운트가 개시된다(S52).
(3) 커맨드가 취입되었는지의 여부가 판단된다(S53).
(4) 제2 타이밍 Ma에 대응하는 클럭 TCLK의 사이클까지의 사이클(A4 사이클 다음의 a 사이클)로, 클럭 TCLK에 동기하여 취입된 커맨드가, 커맨드가 없는 상태도 포함하여 새로운 사이클 수 카운트 커맨드로 되면, 카운트 동작이 멈추고 다음 카운트 동작에 대비한다(S54).
(5) 한편, (a) 제1 타이밍 Ma에 대응하는 클럭 TCLK의 A1 사이클에서부터, 제2 타이밍 Ma에 대응하는 클럭 TCLK의 사이클(A4 사이클 다음의 a 사이클)까지의 기간 사이에, 클럭 TCLK에 동기하여 취입된 커맨드에 새로운 사이클 수 카운트 커맨드가 있다면, 일정 사이클 수가 카운트되고, 그 사이클로부터 클럭 RCLK에 동기하여 데이타가 데이타 버스로 출력된다.
또한, (b) 제2 타이밍 Ma에 대응하는 클럭 TCLK 사이클까지의 사이클(A4 사이클)로, 제1 타이밍 Ma에 대응하는 클럭 TCLK의 사이클(A1 사이클)을 첫번째로 하여, i번째(i는 양의 정수)의 사이클에 새로운 사이클 수 커맨드가 있다면, i-1 사이클에 대응하는 사이클 수 커맨드를 여분으로 더한 일정 사이클 수가 카운터로 카운트되고, 그 카운트 종료 후의 사이클로부터 클럭 RCLK에 동기하여, 데이타가 데이타 버스로 출력된다(도 21에서, 예를 들어 A3 사이클에 커맨드가 있다면, 카운트 종료의 수가 4만 증가된다)(S55).
이로써, 예를 들어 제어기(3)가 커맨드를 내보낸 사이클에 대응한 사이클에서부터 3 사이클째의 상승에서 데이타를 데이타 버스를 통해 전송하고자 할 때, 제어기(3)가 A1 사이클로 커맨드를 내보내면, 메모리 모듈(2)이 A1 사이클로 이 커맨드를 받고, 타이밍 t5에서 데이타를 출력한다. 또한, 제어기(3)가 A3 사이클로 커맨드를 내보내면, 메모리 모듈(2)은 A3 사이클로 이 커맨드를 받고, 타이밍 t6으로 데이타를 출력한다.
도 18의 타이밍도에 도시한, 2분주 클럭을 이용한 제2 기본 클럭, 도 21의 타이밍도에 도시한 4분주 클럭을 이용한 제2 기본 클럭을 포함하여 타이밍 Me나 Ma를 발생하는 회로에 대해 이하에 설명한다.
앞의 도 14a, 14b에서는, 2분주 클럭을 이용했을 경우의, 기본 클럭의 홀수번째 o 사이클을 선택할 경우의 회로의 구성을 도시햇다. 제3 실시 형태에 있어서, 도 14a의 회로에 상당하는 것이 도 24의 회로이다. 이 도 24에 도시한 회로가 앞의 도 14a의 회로와 다른점은, 앞의 2입력 NAND 게이트(13, 14)를 이용하는 대신, 3 입력 NAND 게이트(17, 18)를 이용하고 있고, 이 두 NAND 게이트(17, 18) 각각 하나의 입력단에 상기 NAND 게이트(15, 16)의 출력이 귀환되어 있는 것이다.
이와 같은 구성의 회로에서는, 클럭 TCLK2(RCLK2)의 “H” 상태에서 클럭 TCLK(RCLK)의 “L”로의 천이에 의해 제어 신호 T2(R2)가 상태를 바꾸기 때문에,도 25의 타이밍도에 도시하는 바와 같은 제어 신호 T2(R2)의 변화 상태를 만들 수 있다.
도 26a, 도 26b 및 도 26c는, 제3 실시 형태에서의 앞의 도 14a, 도 16a 및 도 17에 각각 상당하는 회로의 구성을 나타내고 있다. 또, 도 26a, 도 26b 및 도 26c 각각 대응하는 개소에는 같은 부호를 붙이고 그 설명은 생략한다. 그리고, 이들의 각 회로에 있어서, 각 신호의 첨자 x 대신 o를, y 대신 e를 각각 붙이면, 도 18에 도시한 2분주 클럭을 사용할 경우에 대응한 신호가 얻어진다. 또한, 첨자 x 대신 c를, y 대신 a를 각각 붙이면, 도 21에 도시한 4분주 클럭을 사용할 경우에 대응하는 신호가 얻어진다.
또, 앞의 도 17의 회로에서는 타이밍 M으로서 타이밍 Me 또는 Mo 두개를 얻도록 하고 있다. 이에 대해, 도 26c의 경우에는, 타이밍 My 하나를 만들면 좋기 때문에, 하나의 SAD(34)만을 이용할 수 있다. 또한, 이 SAD(34)의 출력측에서는, 상기 OR 게이트(36) 대신 지연 시간 D2를 갖는 버퍼(39)가 이용되고 있고, 이에 수반하는 SAD(34)의 입력측에서는 상기 OR 게이트(37) 대신 지연 시간(D2)을 갖는 버퍼(40)가 이용되고 있다.
이상의 설명은 본 발명에 관한 데이타 고속 전송 시스템에 있어서, 제어기가 메모리 모듈의 데이타 버스 상의 위치를 고려하지 않아도 데이타가 효율 좋게 쓸데없는 사이클 갭 없이도 전송될 수 있도록 하는 기술에 관한 것이다. 다음에, 데이타를 데이타 버스에 출력하는 방법에 대해 설명하기로 한다.
이하의 설명은 제2 기본 클럭 TCLK2에 대한 것으로, 예를 들어 제1 기본 클럭 TCLK를 2분주하여 얻어진다. 제1 기본 클럭 TCLK의 2배의 주기를 갖는 클럭을 사용하는 경우이다. 그러나, 제1 기본 클럭 TCLK의 4배의 주기를 갖는 클럭을 제2 기본 클럭으로서 사용하는 경우에 대해서도 확장은 용이하므로 특별히 설명하지는 않는다. 또한, 데이타의 전송은 클럭의 1주기에 2개의 데이타를 전송하는 소위 DDR(Double Data Rate)인 것으로 한다.
도 27은 제1 기본 클럭 TCLK, RCLK, 제2 기본 클럭 TCLK2, RCLK2 및 데이타의 입출력을 제어하기 위한 기본 클럭에 동기한 복수의 내부 클럭 관계를 도시하는 타이밍도이다. 여기서, 클럭 TCLK의 우수 사이클 및 기수 사이클의 상승에 동기한 내부 클럭 Teu, Tou, 이들 내부 클럭에 대해 위상이 180도 어긋난 내부 클럭 Ted, Tod, 동일하게 클럭 RCLK에 대응한 내부 클럭 Reu, Rou, Red, Rod가 데이타의 입출력을 제어하기 위해 사용된다. 또한, 기본 클럭의 상승에 동기한 내부 클럭의 발생 방법에 대해서는 도 14a, 도 14b, 도 14c 및 도 15에서 이미 설명하였으므로, 이들과 180도 위상이 어긋난 클럭의 발생 방법에 대해 도 28a 및 도 28b를 참조하여 설명하기로 한다.
도 28a 및 도 28b에서 도시된 회로의 구성은 도 16a 및 도 16b의 구성과 동일하고, 입출력 신호가 상이할 뿐이므로, 도 16a 및 도 16b와 대응하는 부분에는 동일한 부호를 붙이고 그에 대한 설명은 생략하기로 한다.
도 28a는 우수번째(우수 사이클)의 클럭에서 180도 위상이 어긋난 클럭을 형성하는 회로이고, 도 28b는 기수번째(기수 사이클)의 클럭에서 180도 위상이 어긋난 클럭을 형성하는 회로이다. 우선, 도 28a의 회로에 있어서의 내부 클럭 Tod의 발생 방법에 대해 간략히 설명하기로 한다. 내부 클럭 Teu 및 Tou는 기본 클럭 TCLK 또는 RCLK와 동위상이므로, 그 위상차는 360도이다. 도 28a 중의 동기성 조정식 지연 회로(32)의 FD에서는 이 지연량에 상당하는 Δ가 측정된다. 도 28a 중의 SAD(32)의 반 역방향 지연 회로(Half Backward Delay Circuit; HBD)는 지연량 Δ/2를 형성하는 것이다. 내부 클럭 Tou로부터 HBD를 통해 발생된 내부 클럭 Tod는 내부 클럭 Tou로부터 180도 위상이 지연되어 있다. 데이타의 입력은 기본 클럭의 상승 타이밍과, 또한 이것과 180도 위상이 어긋난 타이밍에 대해 어떤 데이타 윈도우를 갖고 전송되어 온다. 따라서, 도 28a 중의 회로에서 발생된 타이밍에서 데이타를 수신할 수 있다.
데이타의 출력은 이 타이밍에 대해 어떤 데이타 윈도우를 갖게 하여 출력해야만 한다. 따라서, 이들 타이밍의 중간 타이밍에서 데이타를 출력하는 것이 바람직하고, 기본 클럭에 대해 90도와 270도 위상이 어긋난 내부 타이밍을 형성하는 것이 필요가 있다.
클럭 TCLK로 데이타를 출력하는 경우의, 내부 타이밍의 발생 방법을 도 29의 타이밍도에서 도시한다. 내부 클럭 Teu, Tou, Ted, Tod는 이미 발생되어 있는 것을 사용한다.
도 29 중, Q는 출력 데이타의 상태를 나타내고 있지만, 데이타의 교환이 내부 클럭 Teu, Tou, Ted, Tod의 상승과 하강 기간의 중간에 있도록 한다.
내부 클럭 Teu와 Tou 사이의 지연량이 측정되고, 내부 클럭 Tod로부터 측정된 지연량의 반 지연량을 갖는 타이밍 t1이 형성되면, 기본 클럭의 주기가 2ns(주파수가 500MHz)인 경우에도, 측정해야 할 지연량을 3ns 이상으로 할 수 있다. 이 지연량 3ns는 아주 작지는 않고 기본 클럭과 90도 위상 어긋난 타이밍을 발생시킬 수 있다.
동일하게, 내부 클럭 Ted와 Teu 사이의 지연량이 측정되고, 내부 클럭 Teu로부터 측정된 지연량의 반 지연량을 갖는 타이밍 t2가 형성되면, 기본 클럭과 270도 위상이 어긋난 타이밍을 발생할 수 있다. 또한, 내부 클럭 Tou에서 Ted까지의 지연량이 측정되고, 내부 클럭 Ted로부터 측정된 지연량의 반 지연량을 갖는 타이밍 t3가 형성되면, 기본 클럭과 90도 위상이 어긋난 타이밍을 발생할 수 있다.
또한, 내부 클럭 Tod에서 Tou까지의 지연량이 측정되고, 내부 클럭 Tou로부터 측정된 지연량의 반 지연량을 갖는 타이밍 t4가 형성되면, 기본 클럭과 270도 위상이 어긋난 타이밍을 발생할 수 있다.
구체적으로 이들 타이밍을 발생시키는 회로의 구성을 도 30a 내지 도 30d에 도시한다. 이들 회로의 동작은 기본적으로는 도 16a 및 도 16b의 회로와 동일하므로, 그에 대한 상세한 설명은 생략하기로 한다. 내부 클럭 Teu, Tou, Ted, Tod가 각각 공급되는 2단 종속접속된 각 2개 버퍼(41)는 데이타를 출력하기 위한 출력 버퍼에 상당하는 것이다. 이들 각 버퍼(41)는 출력 버퍼의 지연량에 상당하는 지연 시간 D2를 각각 갖고 있다.
각 동기성 조정식 지연 회로(SAD; 42)는 각각 순방향 지연 회로 FD와 반 역방향 지연 회로 HBD를 갖고 있고, 각 반 역방향 지연 회로 HBD의 출력인 c11, c12, c13, c14는 실제의 데이타를 출력하는 버퍼를 구동시키는 신호로서 사용된다. 그리고, 이들 신호부터 지연 시간 D1 후에 데이타가 데이타 버스에 출력된다. 이들의 구체적인 설명은 후술하겠지만, 기록 데이타와 판독 데이타를 동시에 양방향으로 전송할 수 있도록 전류를 이용하여 데이타 전송을 행하는 데이타 버스에 대한 설명과 합해서 행하기로 한다.
지금까지의 살명에서는 동기성 조정식 지연 회로(SAD)의 상세한 구성에 대해서는 기술하지 않았지만, 도 31a 및 도 31b에서는 SAD 중 하나에 대한 구체적인 내부 회로의 구성을 도시한다.
도 31a는 SAD를 논리 게이트 레벨로 표현한 것이지만, 도 31b는 도 31a의 회로를 심볼로 표현한 것이다. 또한, 도 31a 및 도 31b에서 대응하는 부분에는 동일 부호를 병기하여 그에 대한 설명은 생략하기로 한다.
도 31a 중, 참조 부호(51)는 지연 시간 D(D1+D2)를 갖고, 예를 들어, 상기 도 26c 중의 버퍼(40)에 상당하는 입력 버퍼이고, 참조 부호(52)는 동일한 지연 시간 D를 갖고, 예를 들어, 상기 도 26c 중의 버퍼(39)에 상당하는 입력 버퍼이다. 따라서, 상기 입력 버퍼(51)의 입력 A는 예를 들어, 도 26c 중의 신호 φy에 상당하고 있다.
SAD 내에는 종속접속된 2개의 인버터(53, 54)와, 각각 NAND 게이트(55) 및 이 NAND 게이트(55)의 출력이 한쪽 입력에 공급되는 NAND 게이트(56)로 이루어지고 다단 종속접속된 복수개의 지연 유닛 DU1와, 각각 NAND 게이트(57) 및 이 NAND 게이트(57)의 출력이 한쪽 입력에 공급되는 NOR 게이트(58)로 이루어지고 다단 종속접속되고 상기 지연 유닛 DU1와 동수인 지연 유닛 DU2와, 상기 인버터(53)의 출력과 예를 들어 상기 도 26c의 내부 클럭 Txu에 상당하는 입력 B가 공급되는 NAND 게이트(59)와, 이 NAND 게이트(59)의 출력을 반전시켜 제어 신호 S를 출력시키는 인버터(60)와, 상기 인버터(60)로부터 출력되는 신호 S와 타이밍을 일치시키기 위해 입력 B로부터의 지연 시간이 동일하게 되도록 지연을 행하는 패스 게이트(61)와, 상기 한쪽의 지연 유닛 DU1와 다른쪽의 지연 유닛 DU2 사이에 각각 삽입된 각 NOR 게이트(62) 및 NAND 게이트(63)가 제공되어 있다.
여기서, 다단 종속접속된 복수개의 지연 유닛 DU1로 상기 순방향 지연 회로 FD가 구성되고, 동일하게 다단 종속접속된 복수개의 지연 유닛 DU2로 상기 역방향 지연 회로 BD가 구성되어 있다.
상기 각 NOR 게이트(62) 및 NAND 게이트(63)으로 이루어진 회로는 각각 순방향 지연 회로 FD에서 지연된 신호를 신호 B의 타이밍에서 역방향 지연 회로 BD로 이행(移行)시키는 제어를 행하는 것이다. 그리고 각 NOR 게이트(62)에는 상기 제어 신호/S 및 대응하는 지연 유닛 DU1내의 NAND 게이트(55)의 출력이 공급되고, 그 출력은 대응하는 지연 유닛 DU2 내의 NOR 게이트(58)에 공급된다. 상기 NAND 게이트(63)에는 상기 제어 신호 S 및 대응하는 지연 유닛 DU1 내의 NOR 게이트(56)의 출력이 공급되고, 그 출력은 대응하는 지연 유닛 DU2 내의 NAND 게이트(57)에 공급된다.
다음으로, 도 31a의 회로 동작을 설명하기로 한다. 입력 A로서 정방향으로 상승하는 펄스가 입력되면, 이 펄스는 지연 시간 D가 경과된 후 순방향 지연 회로 FD 내의 각각 복수의 NAND 게이트(55) 및 NOR 게이트(56)에 교대로 전파되어 진다.한편, 입력 B에는 순방향 지연 회로 FD를 순방향 펄스를 역방향 지연 회로 BD에 대해 하강 펄스로서 이행시키는 타이밍을 설정하기 위한 펄스가 입력된다. 입력 A와 입력 B의 펄스의 상승 상호간에 상당하는 지연 시간은 순방향 지연 회로 FD를 순방향 펄스의 상승 위치(NOR 게이트(56)의 출력의 상승 위치 또는 NAND 게이트(55)의 출력의 하강 위치)로서 측정되고, 역방향 지연 회로 BD에 대해 펄스의 상승 위치로서 이행된다. 이 펄스를 이행시킬 때의 이행용 게이트가 되는 것은 순방향 지연 회로 FD와 역방향 지연 회로 BD 사이에 설치되어 있는 NOR 게이트(62)와 NAND 게이트(63)로 이루어지는 회로이다. 입력 A로서 입력되는 펄스와 입력 B로서 입력되는 펄스가 동일 펄스인 경우, 이전 사이클에서 순방향 지연 회로 FD에 입력된 펄스가 우선 역방향 지연 회로 BD로 이행되고, 지연 시간 D의 경과 후 순방향 지연 회로 FD에 입력되는 펄스가 역방향 지연 회로 BD로 이행되도록 입력 B에서 신호 S의 경로 도중에 입력 A의 펄스와의 논리를 취하는 NAND 게이트(59)가 삽입되어 있다. 이것에 의해, 신호 S의 출력이 금지된다.
또한, 순방향 지연 회로 FD에서 지연된 펄스는 각 NAND 게이트(55), NOR 게이트(56) 중 어느 위치로부터도 역방향 지연 회로 BD측으로 이행될 수 있다. 그 결과, 지연 시간의 정밀도는 NAND 게이트(55) 또는 NOR 게이트(56)의 논리 게이트 1개분으로 된다.
도 32a, 도 32b 및 도 32c는 각각 입력에 대해 180도 위상이 어긋난 신호를 형성한다. 순방향 지연 회로 FD와 반 역방향 지연 회로 HBD로 이루어지는 SAD의 상세한 회로 구성을 도시하고 있다. 도 32a 및 도 32b는 각각 다른 구성의 상세 회로이고, 도 32c는 두 회로를 심볼로 도시한 것이다.
도 32a에서 도시된 동기성 조정식 지연 회로는 도 31a의 것과 기본적으로는 동일하지만, 도 31a의 역방향 지연 회로 BD에 대해 지연 유닛 DU2의 수가 반으로 줄어든 반 역방향 지연 회로 HBD로 치환된 점이 다르다. 따라서, 순방향 지연 회로 FD에 전파된 펄스는 반 역방향 지연 회로 HBD로 이행된 후 반의 전파 시간으로 반 역방향 지연 회로 HBD에 전파되어 신호 C로서 출력된다. 그 결과, 입력 A에 대해 180도 위상이 지연된 신호가 발생된다. 또한, 이 경우, 출력 버퍼(52)는 1개의 버퍼 회로로 구성된다.
도 32b의 동기성 조정식 지연 회로는 도 32a의 동기성 조정식 지연 회로에 대해 순방향 지연 회로 FD로부터 반 역방향 지연 회로 HBD에 대해 펄스가 이행될 때, 순방향 지연 회로 FD로부터의 펄스의 이행 위치가 정확하지 않다라는 문제점을 보완하는 구성을 실시한 것이다. 즉, 이 예에서는 반 역방향 지연 회로 HBD를 2쌍 설치하고, 이 2쌍의 반 역방향 지연 회로 HBD의 출력의 OR 논리 또는 AND 논리를 취해 출력함으로써 지연 시간의 정밀도를 향상시키기 위한 것이다.
다음으로, 본 발명의 큰 특징 중 하나인, 판독/기록 공통의 데이타 펄스를 이용하여 판독/기록 데이타를 동시에 전송하는 R/W 겸용 양방향성 데이타 버스(Concurrent Bidirectional Data Bus; CBDB)에 대해 설명하기로 한다.
도 33은 메모리에 대해 데이타의 판독을 동시에 행하는 일반적인 시스템의 구성예를 도시한 것이다. 도시하지 않은 제어기로부터 출력되는 클럭과 위상을 동기시켜 어드레스나 커맨드가 어드레스/커맨드 버스(Add/Command Bus; 71)를 통해기록 데이타가 기록 데이타 버스(Write Data Bus; 72)를 통해 각 메모리(73)에 공급된다. 한편, 각 메모리(73)로부터는 제어기로 향하는 클럭과 일치하여 데이타가 판독 데이타 버스(Read Data Bus; 74)에 실려 전송된다. 물론 데이타의 교환은 선택된 하나의 메모리와 제어기 사이에서만 행해진다.
종래의 전위 레벨, 즉 '1', '0'인 데이타를 전위의 고저에 대응하여 전송하는 데이타 전송 방식에서는 기록 데이타 버스와 판독 데이타 버스를 공용하여 메모리와 제어기 사이에서 데이타를 양방향으로 전송하는 경우, 버스를 시분할적으로 분할할 필요가 있었다.
그러나, 전압 레벨의 고저가 아니라, 전류값 및 전류가 흐르는 방향에 의해 데이타 전송을 행하는 본 발명의 방식에서는 도 34에서 도시된 바와 같이 데이타 버스를 시분할적으로 분할하지 않고도 공용할 수 있다. 즉, 도 34에서 도시된 시스템에서는, 도 33의 시스템에서의 기록 데이타 버스(72)와 판독 데이타 버스(74) 대신, R/W 겸용 양방향성 데이타 버스(75)가 사용된다. 전류값 및 전류가 흐르는 방향에 의해 데이타 전송을 행하는 쌍방향 데이타 전송 방식은 예를 들어, 「1997 Symposium on VLSI Circuit」의 16-2 페이지에 「1 Gb/s Current-Mode Bidirectional I/O buffer」로서 발표되어 있다. 그러나, 이 문헌에서는 데이타 전송을 행하는 버스에는 아무것도 접속되어 있지 않지만, 본 발명에서는 이것을 제어기와 복수의 메모리 모듈로 이루어지는 시스템에 응용될 수 있도록 개선된 것이다.
도 35 및 도 36은 각각 도 5a 및 도 5b 중의 각 메모리 모듈(2) 및제어기(3) 내에 각각 설치되어 데이타의 입출력 제어를 행하는 전류 모드의 데이타 입출력 회로의 다른 구성을 도시한 것이다.
도 35에서 도시된 데이타 입출력 회로는 데이타 입출력 회로부를 가지며, 이 데이타 입출력 회로부에 항상 αI 값의 전류를 흐르게 해 두고, αI의 전류 싱크를 온·오프하는 방식이다. 또한, 도 36에 도시한 데이타 입출력 회로는 전류원 αI 자체를 온·오프 제어하는 방식이다.
도 35의 방식은 데이타 입출력 회로에서 소비하는 전류값의 전류 펄스가 출력 데이타에 의존한 변화없이 전환된 것 뿐이다. 따라서, 노이즈가 발생하는 원인이되는 전류원에 있어서의 전류값의 변화는 없지만, 도 36의 방식에 비해 전류 소비량이 많다. 이에 대해, 도 36의 방식은 데이타 입출력 회로에 흐르는 전류의 전류값이 출력 데이타에 의존하지만, 전류 소비량의 평균값은 도 35의 것에 비해 작다.
우선 도 35의 방식의 회로에 대해 설명하기로 한다. 참조 부호(81)는 기준 전류 I를 발생하는 기준 전류원이다. 전원 전압의 노드와, 이 기준 전류원(81) 사이에는 P채널 MOS 트랜지스터 P1과 N채널 MOS 트랜지스터 N1의 각 소스와 드레인 사이가 직렬로 접속되어 있다. 이 두 트랜지스터 P1, N1의 게이트에는 인에이블 신호 ENABLE가 각각 공급된다. 또한, 전원 전압의 노드와 상기 트랜지스터 P1, N1의 직렬 접속점(82) 사이에는 P채널 MOS 트랜지스터 P2의 소스와 드레인 사이가 접속되어 있다. 이 트랜지스터 P2의 게이트는 상기 접속점(82)에 접속되어 있다. 또한 전원 전압의 노드와 단자 DQ 사이에는 2개의 P채널 MOS 트랜지스터 P3, P4의각 소스와 드레인 사이가 병렬로 접속되어 있다. 이 두 트랜지스터 P3, P4의 게이트는 상기 접속점(82)에 접속되어 있다. 또한, 상기 단자 DQ와, 접지 전압의 노드 사이에는 2개의 N채널 MOS 트랜지스터 N2, N3의 각 소스와 드레인 사이가 직렬로 접속되어 있다. 그리고, 한쪽의 트랜지스터 N2의 게이트는 상기 단자 DQ에 접속되고, 다른쪽의 트랜지스터 N3의 게이트에는 상기 인에이블 신호 ENABLE가 공급된다.
동일하게, 상기 단자 DQ와,접지 전압의 노드 사이에는 2개의 N채널 MOS 트랜지스터 N4, N5의 각 소스와 드레인 사이가 직렬로 접속되어 있다. 그리고, 트랜지스터 N5의 게이트에는 상기 인에이블 신호 ENABLE가 공급되어 있다.
또한, 전원 전압의 노드와 접지 전압의 노드 사이에는 1개의 P채널 MOS 트랜지스터 P5와 2개의 N채널 MOS 트랜지스터 N6, N7의 각 소스와 드레인 사이가 직렬 접속되어 있다. 상기 트랜지스터 P5의 게이트는 상기 접속점(82)에 접속되고, 상기 트랜지스터 N6의 게이트는 상기 단자 DQ에 접속되어 있다. 또한, 상기 트랜지스터 N7의 게이트에는 상기 인에이블 신호 ENABLE가 공급되어 있다. 상기 트랜지스터 P5와 N6의 직렬 접속점에는 인버터(83)의 입력단이 접속되어 있다. 동일하게, 전원 전압의 노드와 접지 전압의 노드 사이에는 1개의 P채널 MOS 트랜지스터 P6과 2개의 N채널 MOS 트랜지스터 N8, N9의 각 소스와 드레인 사이가 직렬 접속되어 있다. 상기 트랜지스터 P6의 게이트는 상기 접속점(82)에 접속되고, 상기 트랜지스터 N8의 게이트는 상기 단자 DQ에 접속되어 있다. 또한, 상기 트랜지스터 N9의 게이트에는 상기 인에이블 신호 ENABLE가 공급되어 있다. 상기 트랜지스터 P6과 N8의 직렬 접속점에는 인버터(84)의 입력단이 접속되어 있다.
또한, 전원 전압의 노드와 접지 전압의 노드 사이에는 1개의 P채널 MOS 트랜지스터 P7과 2개의 N채널 MOS 트랜지스터 N10, N11의 각 소스와 드레인 사이가 직렬 접속되어 있다. 상기 트랜지스터 P7의 게이트는 상기 접속점(82)에 접속되고, 상기 트랜지스터 N10의 게이트는 상기 트랜지스터 P7과 트랜지스터 N10의 직렬 접속점(85)에 접속되어 있다. 상기 트랜지스터 N11의 게이트에는 상기 인에이블 신호 ENABLE가 공급되어 있다. 상기 트랜지스터 N4의 게이트는 상기 접속점(85)에 접속되어 있다. 또한, 상기 접속점(85)과 접지 전압의 노드 사이에는 N채널 MOS 트랜지스터 N12의 소스와 드레인 사이가 접속되어 있고, 이 트랜지스터 N12의 게이트에는 출력 데이타 Q가 공급된다.
여기서, 상기 트랜지스터 P3, P4, P5, 및 P6은 각각 트랜지스터 P2와 함께 전류 미러 회로를 구성하고 있다. 그리고, 트랜지스터 P2에 기준 전류원(81)의 기준 전류 I가 흐를때 각각 도시된 바와 같이 I, αI, (1 + 0.25α)I, (1 + 0.75α)I의 전류가 흐르도록 각각의 트랜지스터의 사이즈가 설정되어 있다. 또한, 데이타의 입력 시, 인에이블 신호 ENABLE가 'H'로 되어 상기 트랜지스터 N7, N9가 온될 때 두 트랜지스터 N7, N9에는 단자 DQ에 흘러 들어가는 수신기 전류에 비례한 전류가 흐른다. 그리고, 상기 인버터(83, 84)는 상기 트랜지스터 P5, P6에 흐르는 전류 (1 + 0.25α)I, (1 + 0.75α)I를 기준 전류로서 트랜지스터 N7, N9에 흐르는 수신기 전류와 비교하여 데이타 Ol, Oh를 출력한다. 즉, Ol은 수신기 전류가 (1 + 0.25α)I보다 많으면, 'H'로 되고, Oh는 수신기 전류가 (1 + 0.75α)I보다 많으면 'H'로 된다.
Q는 출력하는 데이타를 표현하는 신호이고, 이 데이타 Q가 'H'일 때는 트랜지스터 N12가 온되고, 접속점(85)이 접지 전압으로 되고, 트랜지스터 N4가 오프되기 때문에 전류 αI를 DQ 단자로부터 볼 수 있게 된다. 한편, 데이타 Q가 'L'일 때에는 트랜지스터 N4, N5를 통해 접지 전압의 노드에 전류가 흐르기 때문에 전류 αI는 입출력 회로 내에서 흘러 DQ 단자로부터는 볼 수 없게 된다.
여기서, 데이타를 교환하고 있는 2개의 데이타 입출력 회로 각각을 흐르는 전류는 기준 전류원(81)의 전류 I, 트랜지스터 P3에 흐르는 전류 I, 트랜지스터 P4에 흐르는 전류 αI, 트랜지스터 P5에 흐르는 전류 (1 + 0.25α)I, 트랜지스터 P6에 흐르는 전류 (1 + 0.75α)I, 트랜지스터 P7에 흐르는 전류 αI 및 그 외의 각 게이트에 흐르는 전류의 합이 된다. 따라서, 데이타를 교환하고 있는 2개의 데이타 입출력 회로에서 소비되는 전류는 데이타에 관계없이 일정하다.
상기 단자 DQ는 데이타 버스에 직접 연결되지는 않지만, 전류가 교환되어지는 2개의 데이타 입출력 회로 단자의 단자 DQ 이외에 전류 펄스가 발생해서는 안된다. 또한, DQ 단자와 데이타 버스와는 저 임피던스로 접속되어 있을 필요가 있으므로, 그 상호 간에는 스위치 소자 등을 직렬로 삽입할 수도 없다. 그래서, 데이타 버스에 데이타를 출력하지 않고 데이타 버스로부터도 데이타를 수신하지 않는 데이타 입출력 회로에서는 인에이블 신호 ENABLE가 'L'로 된다. 이것에 따라, 트랜지스터 N1이 오프되어, 기준 전류원(81)의 기준 전류 I가 트랜지스터 P2에 흐르지 않게 되어, 이로써 트랜지스터 P3 내지 P6에도 전류가 흐르지 않게 되므로 DQ 단자에는 전류 펄스가 발생하지 않게 된다.
또한, 도 35의 데이타 입출력 회로에는 3개의 CMOS형의 트랜스퍼 게이트(86, 87, 88)가 설치되어 있다. 상기 트랜스퍼 게이트(86)에는 입력으로서 인버터(89)를 통해 데이타 Q가 공급된다. 이 트랜스퍼 게이트(86)의 동작은 데이타 Oh가 반전 입력단에, 데이타 Ol이 비반전 입력단에 각각 공급되는 NAND 게이트(90) 및 이 NAND 게이트(90)의 출력을 반전시키는 인버터(91)로 이루어지는 회로의 출력으로 제어된다. 상기 트랜스퍼 게이트(87)에는 입력으로서 전원 전압('H')이 공급된다. 이 트랜스퍼 게이트(87)의 동작은 데이타 Oh, Ol이 함께 비반전 입력단에 각각 공급되는 NAND 게이트(92) 및 이 NAND 게이트(92)의 출력을 반전시키는 인버터(93)로 이루어지는 회로의 출력으로 제어된다. 상기 트랜스퍼 게이트(88)에는 입력으로서 접지 전압('L')이 공급된다. 이 트랜스퍼 게이트(88)의 동작은 데이타 Oh, Ol이 함께 반전 입력단에 각각 공급되는 NAND 게이트(94) 및 이 NAND 게이트(94)의 출력을 반전시키는 인버터(95)로 이루어지는 회로의 출력으로 제어된다. 그리고, 이들 각 트랜스퍼 게이트(86, 87, 88)의 출력 노드는 공통으로 접속되고, 이 공통 접속 노드에서 데이타 D가 얻어진다.
즉, 데이타 D는 O1='H', Oh='L'이면, Q를 반전한 것과 동일하고, O1='H', Oh='H'이면 'H'이고, O1='L', Oh='L'이면 'L'이다.
또한, 도 35 중에 파선으로 둘러싸인 회로 CC1 대신, 2개의 P채널 MOS 트랜지스터 P8, P9와, 2개의 N채널 MOS 트랜지스터 N13, N14와 2개의 인버터(96, 97)로 이루어진 회로 CC2를 사용할 수도 있다.
회로 CC2에 있어서의 각 2개의 P채널 및 N채널 MOS 트랜지스터 P8, P9, N13,N14는 전원 전압의 노드와 접지 전압의 노드 사이에 직렬로 접속되어 있다. 상기 인버터(96)에는 신호 Oh가 입력되고 이 인버터(96)의 출력이 상기 트랜지스터 P8, N13의 각 게이트에 공급된다. 상기 인버터(97)에는 신호 Ol이 입력되고, 이 인버터(97)의 출력은 상기 트랜지스터 P9, N14의 각 게이트에 공급된다.
이러한 회로 CC2를 사용해도, 이전과 동일한 입력 데이타 D를 얻을 수 있다.
도 36에 도시된 데이타 입출력 회로는 이미 상술한 바와 같이, 전류원 αI 자체를 온·오프 제어하는 방식이고, 도 35와 다른 부분은 트랜지스터 P4, N4, N5, P7, N10, N11, N12로 이루어진 회로 대신, 기준 전류 I를 갖는 기준 전류원(98)과 4개의 P채널 MOS 트랜지스터 P10 내지 P13과 1개의 N채널 MOS 트랜지스터 N15로 이루어진 회로가 설치되어 있는 점이고 그 외의 회로 구성은 도 35와 동일하다.
여기서, 상기 트랜지스터 P10은 전원 전압의 노드와 단자 DQ 사이에 삽입되어 있다. 또한, 상기 3개의 트랜지스터 P11, P12, P13의 소스와 드레인 사이의 각 한단은 전원 전압 노드에 접속되어 있고, 이들 3개의 트랜지스터 P11, P12, P13의 각 다른 단은 공통으로 접속되어 있다. 상기 트랜지스터 N15의 소스와 드레인 사이는 상기 3개의 트랜지스터 P11 내지 P13의 다른 공통 접속점과 기준 전류원(98)사이에 삽입되어 있다. 상기 트랜지스터 P12의 게이트와 드레인은 단락되어 있고 트랜지스터 P10의 게이트가 트랜지스터 P12의 게이트와 드레인 단락에 접속되어 있다. 따라서, 상기 두 트랜지스터 P10, P12는 전류 미러를 구성하고 있다. 또한, 상기 트랜지스터 P11, N15의 각 게이트에는 인에이블 신호 ENABLE가 공급되고, 상기 트랜지스터 P13의 게이트에는 데이타 Q가 공급된다.
이러한 구성의 입출력 회로에서는, 인에이블 신호 ENABLE가 'H'일 때 트랜지스터 P11이 오프되고 트랜지스터 N15가 온되므로, 기준 전류원(98)의 기준 전류 I는 트랜지스터 P12 및 P13 중 어느 하나로 흐른다. 예를 들어, 출력 데이타 Q가 'H'일 때는 트랜지스터 P13이 오프되므로 기준 전류 I는 트랜지스터 P12를 흐른다. 이 때, 미리 트랜지스터 P10 및 P12의 사이즈를 조정해 둠으로써 트랜지스터 P10에 전류 αI가 흘러 이 전류 αI가 단자 DQ를 통해 데이타 버스에 출력된다.
또한, 도 36의 회로의 경우에도 도면에서 파선으로 둘러싸인 회로 CC3 대신, 도 35의 경우와 동일하게 2개의 P채널 MOS 트랜지스터 P8, P9와 2개의 N채널 MOS 트랜지스터 N14, N14 및 2개의 인버터(96, 97)로 이루어진 회로 CC4를 사용해도, 이전과 동일한 입력 데이타 D를 얻을 수 있다.
도 35 또는 도 36과 같은 구성의 데이타 입출력 회로를 제어기(3)와 복수의 메모리 모듈(2)을 갖는 데이타 고속 전송 시스템에 결합시킨 경우의 구성을 도 37에 도시한다. 여기서, 참조 부호(100)는 상기 제어기(3)에 상당하는 제어기이고, 참조 부호(101 및 102)는 각각 상기 메모리 모듈(2)에 상당하는 메모리 모듈이고, 참조 부호(103)는 제어기(100) 및 메모리 모듈(101 및 102) 각각에 설치되는 데이타 입출력 회로이고, 참조 부호(104)는 제어기(100) 및 메모리 모듈(101 및 102) 각각에 설치되어 있는 커맨드 디코더(command decoder)이고, 참조 부호(105)는 R/W 겸용 양방향성 데이타 버스(CBDB)이고, 참조 부호(106)는 커맨드/어드레스 버스(command/add bus)이다.
제어기(100) 내에서는 인에이블 신호 ENABLE0은 항상 'L'로 되어 있다. 이때문에, 제어기(100) 내의 데이타 입출력 회로(103)는 항상 동작 가능 상태로 되어 있고, 커맨드 디코더(104)로부터 커맨드/어드레스 버스(106)를 통해 하나의 메모리 모듈이 선택된다. 예를 들어, 메모리 모듈(102)이 선택되면, 이 선택된 메모리 모듈(102)의 인에이블 신호 ENABLE2가 'L'로 되고, 제어기(100)와 선택된 메모리 모듈(102)이 R/W 겸용 양방향성 데이타 버스(105)를 통해 데이타의 교환을 전류에 의해 행한다. 즉, 이 버스(105)를 통해 전류 0.5αI가 어느 쪽의 방향으로 흐르는가, 또는 전류가 흐르지 않는가로 데이타가 전송된다.
하기의 표 1은, 상기 버스(105)에 흐르는 전류의 전류값 및 전류 방향과, 상기 버스(105)에서 전송되는 데이타와의 관계를 정리하여 나타낸 것이다.
자신의 Q 자신의 소스 전류 상대방 의 Q 상대방 소스 전류 합계 소스 전류 수신기전류 버스 전류 0l h
O I 0 I 2×I I 0 0 0 0
1 (1+α)I (2+α)I (1+α/2)I 0.5αIin 1 0 1(=/Q)
I (1+α)I 0 I (2+α)I (1+α/2)I 0.5αIout 1 0 0(=/Q)
1 (1+α)I 2(1+α)I (1+α)I 0 1 1 1
표 1에서 자신의 Q는 각 메모리 모듈 또는 제어기가 제어기 또는 각 메모리 모듈에 출력해야 할 데이타를 의미한다. 또한, 자신의 소스 전류는 단자 DQ에 접속되어 있는 트랜지스터 N2 및 N4(도 35) 또는 트랜지스터 P3 및 P10(도 36)을 통해 각 메모리 모듈 내 또는 제어기 내를 흐르는 전류를 의미한다. 또한, 상대방 Q는 데이타 버스를 통해 접속되고 서로 데이타의 교환을 행하려고 하는 다른 쪽의 제어기 또는 각 메모리 모듈로부터 출력해야 할 데이타를 의미한다. 동일하게, 상대방의 소스 전류는 데이타 버스를 통해 접속되고 서로 데이타의 교환을 행하려고하는 다른 쪽의 제어기 또는 각 메모리 모듈에서 단자 DQ에 접속되어 있는 트랜지스터 N2 및 N4(도 35) 또는 트랜지스터 P3 및 P10(도 36)을 통해 각 메모리 모듈 내 또는 제어기 내를 흐르는 전류를 의미한다. 합계 소스 전류는 데이타 버스를 통해 접속되고 서로 데이타의 교환을 행하려고 하는 하나의 메모리 모듈과 제어기에 있어서의 소스 전류의 합을 의미한다. 버스 전류는 데이타 버스에 흐르는 전류를 의미하고 버스 전류의 0.5αIin은 데이타 버스로부터 입력되는 방향의 전류이고, 0.5αIout은 데이타 버스에 출력되는 방향의 전류이다. 수신기 전류는 자신의 소스 전류와 데이타 버스를 통해 흐르는 전류의 합 또는 차의 전류를 의미한다.
표 1에 의하면, 상대방 데이타의 Q가 자신의 데이타 D로서 전송되어지는 것을 알 수 있다.
여기서, 제어기(100)가 상기와 같이 턴어라운드 포인트 부근에 배치되어 있는 경우, 즉 메모리 모듈에 대한 데이타 기록 시에는 클럭 RCLK에 동기하여 제어기로부터 메모리 모듈에 대해 데이타가 전송되고, 메모리 모듈로부터의 데이타 판독 시에는 클럭 TCLK에 동기하여 데이타가 제어기에 전송되는 경우인, 상기 R/W 겸용 양방향성 데이타 버스를 이용한 데이타 입출력 회로에서의 데이타 전송 상태를 도 38의 타이밍도로 도시한다.
표 1에 따라 작성되는 데이타 D의 논리값은 각각의 경우에 제어기가 수신하는 데이타 또는 제어기가 출력하는 데이타의 논리값과 일치하고 있는 것을 알 수 있다. 또한, 도 38에서 굵은선으로 도시한 데이타 D의 위치는 자신이 출력하고 있는 데이타에 관계없이 Ol 및 Oh로 결정되는 데이타 D의 상태를 나타내고 있다. 그리고, 이 데이타 D를 내부 클럭 Reu, Red, Rou, Rod에 동기하여 내부에서 수신해도 된다.
마지막으로, 데이타 입출력 회로로서 도 35 또는 도 36에서 도시된 바와 같은 구성을 사용한 경우, 지연 시간 D2를 갖는 버퍼의 구체적인 회로 구성에 대해 설명하기로 한다.
도 39a의 회로는 도 30a 내지 도 30d의 각 회로에서 형성되는 버퍼 구동 신호 c11 내지 c14를 사용하여 도 29의 타이밍도에서 도시된 바와 같이 데이타 Q를 순차 출력해 가는 데이타 선택 출력 회로의 구성을 도시하고 있다. 이 회로는 입력단에 데이타 Data1 내지 Data4가 공급되고 출력단이 공통으로 접속되고 신호 c11 내지 c14(및 각각의 반전 신호)로 제어되는 4개의 클럭된 인버터(111 내지 114)와, 입출력단이 역병렬 접속된 2개의 인버터(115, 116)로 이루어지고 상기 클럭된 인버터(111 내지 114)의 출력을 래치하여 데이타 Q로서 출력하는 래치 회로로 구성되어 있다.
도 39b는 데이타 입출력 회로로서 도 35의 구성을 이용한 경우에 지연 시간 D2를 갖는 버퍼 중 하나에 대한 구체적인 회로 구성을 도시하고 있다. 이 회로는 도 39a의 회로에 상당하는 데이타 선택 출력 회로와, 소정의 지연 시간을 갖는 지연 회로부로 구성되어 있다. 데이타 선택 출력 회로부는 도 39a의 회로 중 클럭된 인버터(111 내지 114)에 상당한다. 입력이 접지 전압 노드 또는 전원 전류 노드에 접속된 2개의 클럭된 인버터(211, 212)와, 입력을 반전시켜 상기 클럭된 인버터(211)의 N채널측의 클럭 게이트(N채널 MOS 트랜지스터) 및 클럭된인버터(212)의 P채널측의 클럭 게이트(P채널 MOS 트랜지스터)에 공급하는 인버터(213)와, 래치 회로를 구성하는 2개의 인버터(115, 116)에 상당하는 인버터(214, 215)로 구성되어 있다.
그리고, 상기 클럭된 인버터(211)의 P채널측의 클럭 게이트 및 클럭된 인버터(212)의 N채널측의 클럭 게이트에는 인버터(213)에 입력되는 것과 같은 동일 신호가 입력된다.
지연 회로부는 도 35 회로 내의 트랜지스터 P1, P2, N1 및 기준 전류원(81)에 상당하는 P채널 MOS 트랜지스터 P21, P22, N채널 MOS 트랜지스터 N21, 기준 전류원(216)으로 이루어지는 회로와, 데이타 Q를 전류값의 대소에 따라 변환시키는 회로에 상당하는 P채널 MOS 트랜지스터 P23 내지 P25 및 N채널 MOS 트랜지스터 N22 내지 N26으로 구성되어 있다.
도 39b에서 도시된 회로는 버퍼 1개분의 구성이므로, 2개분의 버퍼를 구성하려면, 도면에서 파선으로 둘러싸인 부분의 회로 CC5를 2개 준비하여 회로 CC6에 도시된 바와 같이 직렬 접속하면 된다.
도 39c는 데이타 입출력 회로로서 도 36의 구성을 사용하는 경우에, 지연 시간 D2를 갖는 버퍼 중 하나에 대한 구체적인 회로 구성을 도시하고 있다. 이 회로는 도 39a의 회로에 상당하는 데이타 선택 출력 회로부와, 소정의 지연 시간을 갖는 지연 회로부로 구성되어 있다. 데이타 선택 출력 회로부는 도 39b의 회로와 동일하게 2개의 클럭된 인버터(211, 212)와, 인버터(213, 214, 215)로 구성되어 있다.
지연 회로부는 데이타 Q를 전류값의 대소에 따라 변환시키는 회로에 상당하는 P채널 MOS 트랜지스터 P26 내지 P28 및 N채널 MOS 트랜지스터 N27, N27과, 기준 전류원(216)으로 구성되어 있다.
도 39c에서 도시된 회로는 버퍼 1개분의 구성이므로, 2개분의 버퍼를 구성하려면, 도시된 회로를 2개 준비하여 회로 CC7에 도시된 바와 같이 직렬 접속하면 된다.
이와 같이, 데이타 버스에서 양방향으로 또한 동시에 데이타의 전송을 행하므로, 데이타 버스를 판독 데이타 버스와 기록 데이타 버스로 나누는 경우에 비해 데이타 버스의 개수를 적게 할 수 있다. 또한, 메모리 모듈이나 제어기의 핀수를 감소시킬 수 있으므로 면적 및 제조 비용면에서 유리하다.
이상 설명한 바와 같이 본 발명에 따르면 데이타 버스 상에서 데이타의 충돌을 없앨 수 있고, 클럭 사이클의 갭을 발생시키지 않고 데이타 전송을 행할 수 있다. 또한, 데이타의 판독·기록을 동시에 동일 단자를 사용하여 행할 수 있으므로 버스의 배선수가 적은 데이타 고속 전송 시스템을 실현할 수 있다.

Claims (24)

  1. 데이타 고속 전송 시스템에 있어서,
    복수의 메모리 모듈(2)과,
    상기 복수의 메모리 모듈(2)과 함께 배열되어 상기 복수의 메모리 모듈 사이에서 데이타의 교환을 행하는 제어기(3)와,
    제1 기본 클럭(TCLK) 및 상기 제1 기본 클럭의 주기의 2배의 주기를 갖는 제2 기본 클럭(RCLK)을 발생하는 클럭 발생기(1)와,
    상기 배열된 복수의 메모리 모듈 및 제어기에 따라 왕복하도록 왕로(往路) 부분 및 복로(復路) 부분의 배선을 각각 가지며 상기 클럭 발생기에서 발생되는 상기 제1 및 제2 기본 클럭이 상기 각 왕로 부분의 선단부터 각각 입력되고, 상기 입력된 제1 및 제2 기본 클럭을 각각 순차 전송하고 상기 각 왕로 부분 및 상기 각 복로 부분의 배선을 통해 전송되는 상기 제1 및 제2 기본 클럭을 상기 복수의 메모리 모듈 및 상기 제어기에 대해 상기 복수의 메모리 모듈 및 상기 제어기가 데이타를 교환할 때 사용하는 동기 신호로서 제공하는 2개의 클럭 배선(4A, 4B)과,
    상기 복수의 각 메모리 모듈 내 및 상기 제어기 내에 각각 설치되고 상기 2개의 클럭 배선의 각 왕로 부분에서 제공되는 순방향 제1 및 제2 기본 클럭과 상기 2개의 클럭 배선의 각 복로 부분에서 제공되는 역방향 제1 및 제2 기본 클럭을 수신하여, 상기 순방향 제1 기본 클럭과 상기 역방향 제1 기본 클럭 사이에서 발생하는 제1 기본 클럭 주기의 n배(n은 2 및 4 중 어느 하나의 값)의 주기 이내의 위상 어긋남에 대해 그 중간 타이밍을 검출하는 중간 타이밍 검출 회로(401)를 포함하는 제어 회로(도 12)
    를 포함하는 것을 특징으로 하는 데이타 고속 전송 시스템.
  2. 제1항에 있어서, 상기 복수의 메모리 모듈 및 상기 제어기를 따라 설치되고, 상기 복수의 메모리 모듈 및 상기 제어기 상호 간에서 교환되는 데이타가 전송되는 데이타 버스(5)와,
    상기 복수의 메모리 모듈 및 상기 제어기를 따라 설치되고, 상기 제어기로부터 상기 복수의 메모리 모듈에 대해 제공해야 할 커맨드 및 어드레스가 전송되는 커맨드/어드레스 버스(6)
    를 더 포함하는 것을 특징으로 하는 데이타 고속 전송 시스템.
  3. 제2항에 있어서, 상기 제어 회로는
    상기 순방향 제1 기본 클럭 및 상기 역방향 제1 기본 클럭 중 어느 하나를 카운트하여 데이타 출력 사이클 수를 설정하는 카운터를
    더 포함하는 것을 특징으로 하는 데이타 고속 전송 시스템.
  4. 제3항에 있어서, 상기 카운터의 카운트 동작은 상기 커맨드/어드레스 버스를 통해 전송되는 커맨드에 기초하여 제어되는 것을 특징으로 하는 데이타 고속 전송 시스템.
  5. 제1항에 있어서, 상기 중간 타이밍 검출 회로는
    상기 2개의 클럭 배선 중 한쪽 클럭 배선의 왕로 부분을 통해 전송되는 순방향 제1 기본 클럭의 제1 사이클 개시 시에 동기한 제1 제어 클럭(Teu)을 발생하는 제1 내부 클럭 발생 회로(503)와,
    상기 한쪽 클럭 배선의 복로 부분을 통해 전송되는 역방향 제1 기본 클럭의 상기 제1 사이클 개시 시에 동기한 제2 제어 클럭(Reu)을 발생하는 제2 내부 클럭 발생 회로(503)와,
    상기 한쪽 클럭 배선의 왕로 부분을 통해 전송되는 순방향 제1 기본 클럭의 상기 제1 사이클에 연속하는 제2 사이클의 개시 시에 동기한 제3 제어 클럭(Tou)을 발생하는 제3 내부 클럭 발생 회로(502)와,
    상기 한쪽 클럭 배선의 복로 부분을 통해 전송되는 역방향 제1 기본 클럭의 상기 제1 사이클에 연속하는 제2 사이클 개시 시에 동기한 제4 제어 클럭(Rou)을 발생하는 제4 내부 클럭 발생 회로(502)와,
    상기 제2 제어 클럭(Reu) 및 상기 제1 제어 클럭(Teu)을 수신하여 상기 제2 제어 클럭과 상기 제1 제어 클럭 간의 중간 타이밍에 상당하는 제1 제어 신호(φe)를 발생하는 제1 제어 신호 발생 회로(504)와,
    상기 제4 제어 클럭(Rou) 및 상기 제3 제어 클럭(Tou)을 수신하여 상기 제4 제어 클럭과 상기 제3 제어 클럭 간의 중간 타이밍에 상당하는 제2 제어 신호(φo)를 발생하는 제2 제어 신호 발생 회로(504)와,
    상기 제1 제어 신호(φe), 상기 제2 제어 신호(φo), 상기 제3 제어 클럭(Tou) 및 상기 제1 제어 클럭(Teu)을 수신하여 상기 2개의 클럭 배선의 각 왕로 부분에서 제공되는 순방향 제1 및 제2 기본 클럭 각각과 상기 2개의 클럭 배선의 각 복로 부분에서 제공되는 역방향 제1 및 제2 기본 클럭 각각 사이의 중간 타이밍에 상당하는 제3 제어 신호 및 제4 제어 신호를 발생하는 제3 제어 신호 발생 회로(도 7)
    를 포함하는 것을 특징으로 하는 데이타 고속 전송 시스템.
  6. 제5항에 있어서, 상기 중간 타이밍 검출 회로는
    상기 2개의 클럭 배선의 왕로 부분을 통해 전송되는 순방향 제1 및 제2 기본 클럭을 수신하여 상기 한쪽 클럭 배선의 왕로 부분을 통해 전송되는 순방향 제1 기본 클럭의 제1 사이클과 상기 제1 사이클에 연속하는 제2 사이클을 구분하기 위한 제5 제어 신호(T2)을 발생하는 제4 제어 신호 발생 회로(501)와,
    상기 2개의 클럭 배선의 복로 부분을 통해 전송되는 역방향 제1 및 제2 기본 클럭을 수신하여 상기 한쪽 클럭 배선의 복로 부분을 통해 전송되는 역방향 제1 기본 클럭의 제1 사이클과 상기 제1 사이클에 연속하는 제2 사이클을 구분하기 위한 제6 제어 신호(R2)을 발생하는 제5 제어 신호 발생 회로(501)
    를 더 포함하는 것을 특징으로 하는 데이타 고속 전송 시스템.
  7. 제5항에 있어서, 상기 제1 내지 제4 내부 클럭 발생 회로는 각각 동기성 조정식 지연 회로(Synchronous Adjustable Delay)를 가지며, 상기 제1 내지 제4 내부 클럭 발생 회로는 각각 상기 동기성 조정식 지연 회로를 사용하여 상기 제1 제어 클럭 내지 제4 제어 클럭을 발생하는 것을 특징으로 하는 데이타 고속 전송 시스템.
  8. 제7항에 있어서, 상기 동기성 조정식 지연 회로는
    NAND 게이트 및 상기 NAND 게이트의 출력이 입력되는 NOR 게이트로 이루어지는 결합 회로를 1 유닛으로 하고, 종속 접속된 복수의 유닛으로 구성되고 입력 신호를 지연시키는 순방향 지연 회로(Forward Delay Circuit)와,
    NAND 게이트 및 상기 NAND 게이트의 출력이 입력되는 NOR 게이트로 이루어지는 결합 회로를 1 유닛으로 하여, 상기 순방향 지연 회로에 대해 동수(同數)의 종속접속된 복수의 유닛에 의해 구성되고 상기 순방향 지연 회로에서 지연되는 신호가 이행(移行)되고 상기 이행된 신호를 지연시킴으로써 상기 순방향 지연 회로로의 입력 신호에 대해 360도 위상이 어긋난 신호를 출력하는 역방향 지연 회로(Backward Delay circuit)
    를 포함하는 것을 특징으로 하는 데이타 고속 전송 시스템.
  9. 제5항에 있어서, 상기 제1 및 제2 제어 신호 발생 회로(504)는 각각 동기성 조정식 지연 회로를 가지며, 상기 제1 및 제2 제어 신호 발생 회로는 각각 상기 동기성 조정식 지연 회로를 사용하여 상기 제1 및 제2 제어 신호를 발생하는 것을 특징으로 하는 데이타 고속 전송 시스템.
  10. 제9항에 있어서, 상기 동기성 조정식 지연 회로는
    NAND 게이트 및 상기 NAND 게이트의 출력이 입력되는 NOR 게이트로 이루어지는 결합 회로를 1 유닛으로 하여, 종속접속된 복수의 유닛에 의해 구성되고, 입력 신호를 지연시키는 순방향 지연 회로(Forward Delay Circuit)와,
    NAND 게이트 및 상기 NAND 게이트의 출력이 입력되는 NOR 게이트로 이루어지는 결합 회로를 1 유닛으로 하여, 상기 순방향 지연 회로에 대해 1/2수의 종속접속된 복수의 유닛에 의해 구성되고, 상기 순방향 지연 회로에서 지연되는 신호가 이행되고 상기 이행된 신호를 지연시킴으로써 상기 순방향 지연 회로로의 입력 신호에 대해 180도 위상이 어긋난 신호를 출력하는 반 역방향 지연 회로(Half Backward Delay circuit)
    를 포함하는 것을 특징으로 하는 데이타 고속 전송 시스템.
  11. 제4항에 있어서, 상기 제어 회로는, 상기 중간 타이밍 검출 회로에서 검출된 상기 중간 타이밍, 상기 순방향 및 역방향의 제1 기본 클럭 및 상기 커맨드/어드레스 버스를 통해 전송되는 커맨드를 수신하는 내부 제어기(402)를 더 포함하고,
    상기 내부 제어기는 대응하는 사이클의 순방향 및 역방향의 제1 기본 클럭의 중간 타이밍을 M으로 할 때 이전의 필요한 사이클 수의 카운트가 종료되어 있으면 하기의 단계 (1) 내지 (4), 즉
    (1) 타이밍 M 직후에 사이클 수 카운트를 가능 상태로 하는 단계와,
    (2) 상기 단계 (1) 직후의 순방향 제1 기본 클럭부터 사이클 수를 카운트시키는 단계와,
    (3) 상기 단계 (1) 직후의 역방향 제1 기본 클럭에 동기하여 수신된 커맨드가 사이클 수 카운트 커맨드이면, 순방향 제1 기본 클럭에서의 사이클 수 카운트를 필요한 사이클 수만큼 계속시키는 단계와,
    (4) 상기 단계 (1) 직후의 역방향 제1 기본 클럭에 동기하여 수신된 커맨드가 사이클 수 카운트에 관련된 커맨드가 아니면 카운트를 리세트시켜 카운트 불가능 상태로 만드는 단계
    에 의해 제1 기본 클럭의 사이클 수의 카운트를 상기 카운터에서 행하도록 하여 데이타 출력 사이클 수를 설정하는 것을 특징으로 하는 데이타 고속 전송 시스템.
  12. 제4항에 있어서, 상기 제어 회로는
    상기 중간 타이밍 검출 회로에서 검출된 상기 중간 타이밍, 상기 순방향 및 역방향의 제1 기본 클럭, 및 상기 커맨드/어드레스 버스를 통해 전송되는 커맨드를 수신하는 내부 제어기(402)를 더 포함하고,
    상기 내부 제어기는 대응하는 사이클의 순방향 및 역방향의 제1 기본 클럭의 중간 타이밍을 M으로 할 때 하기의 단계 (1) 및 (2), 즉
    (1) 순방향 제1 기본 클럭에 동기하여 수신된 커맨드가 사이클 수 카운트에 관련된 커맨드이면, 이 직후의 타이밍 M에서 사이클 수 카운트를 가능 상태로 하는 단계와,
    (2) 타이밍 M 직후의 역방향 제1 기본 클럭에서부터 사이클 수를 카운트시키고 필요한 사이클수만큼 계속시키는 단계
    에 의해 제1 기본 클럭의 사이클 수의 카운트를 상기 카운터에서 행하도록 하여 데이타 출력 사이클 수를 설정하는 것을 특징으로 하는 데이타 고속 전송 시스템.
  13. 제4항에 있어서, 상기 제어 회로는
    상기 중간 타이밍 검출 회로에서 검출된 상기 중간 타이밍, 상기 순방향 및 역방향의 제1 기본 클럭, 및 상기 커맨드/어드레스 버스를 통해 전송되는 커맨드를 수신하는 내부 제어기(402)와,
    상기 내부 제어기에 의해 제어되고 데이타를 출력하는 데이타 출력 회로를 를 더 포함하고,
    상기 내부 제어기는 대응하는 사이클의 순방향 및 역방향의 제1 기본 클럭의 중간 타이밍을 M으로 할 때 하기의 단계 (1) 내지 (4), 즉
    (1) 제1 타이밍 M 직후의 제2 타이밍 M에 대응하는 순방향 제1 기본 클럭 사이클부터 사이클 수의 카운트를 개시시키는 단계와,
    (2) 제1 타이밍 M 직후의, 상기 제1 타이밍 M에 대응하는 역방향 제1 기본 클럭 사이클부터 제2 타이밍 M에 대응하는 사이클까지의 사이클에서, 역방향 제1 기본 클럭에 동기하여 수신된 커맨드가 커맨드가 없는 상태도 포함하여 새로운 사이클 수 카운트 커맨드가 아니면 카운트 동작을 중지시켜 다음 카운트 동작을 준비시키는 단계와,
    (3) 제1 타이밍 M 직후의, 상기 제1 타이밍 M에 대응하는 역방향 제1 기본 클럭 사이클부터 제2 타이밍 M에 대응하는 사이클까지의 사이클에서, 역방향 제1 기본 클럭에 동기하여 수신된 커맨드에 새로운 사이클 수 카운트 커맨드가 있으면 일정 사이클 수를 카운트시키고 그 사이클부터 순방향 제1 기본 클럭에 동기하여 상기 데이타 출력 회로로부터 데이타를 출력시키는 단계와,
    (4) 제1 타이밍 M 직후의, 상기 제1 타이밍 M에 대응하는 역방향 제1 기본 클럭 사이클부터 제2 타이밍 M에 대응하는 사이클까지의 사이클에서, 상기 제1 타이밍 M 직후의 상기 제1 타이밍 M에 대응하는 역방향 제1 기본 클럭의 사이클을 첫번째로 하여 i번째(i는 양의 정수)의 사이클에 새로운 사이클 수 커맨드가 있으면 (i-1) 사이클에 대응하는 사이클 수 카운트를 여분으로 부가한 일정 사이클 수를 카운트시키고 그 사이클부터 순방향 제1 기본 클럭에 동기하여 상기 데이타 출력 회로로부터 데이타를 출력시키는 단계
    에 의해 제1 기본 클럭의 사이클 수의 카운트를 상기 카운터에서 행하도록 하여 데이타 출력 사이클 수를 설정함과 함께, 상기 데이타 출력 회로로부터 데이타를 출력시키는 것을 특징으로 하는 데이타 고속 전송 시스템.
  14. 제4항에 있어서, 상기 제어 회로는,
    상기 중간 타이밍 검출 회로에서 검출된 상기 중간 타이밍, 상기 순방향 및 역방향의 제1 기본 클럭, 및 상기 커맨드/어드레스 버스를 통해 전송되는 커맨드를 수신하는 내부 제어기(402)와,
    상기 내부 제어기에 의해 제어되고 데이타를 출력하는 데이타 출력 회로를 를 더 포함하고,
    상기 내부 제어기는 대응하는 사이클의 순방향 및 역방향의 제1 기본 클럭의 중간 타이밍을 M으로 할 때 하기의 단계 (1) 내지 (5), 즉
    (1) 제1 타이밍 M에 대응하는 순방향 제1 기본 클럭 사이클부터 커맨드의 수신을 개시시키는 단계와,
    (2) 제1 타이밍 M 직후의, 상기 제1 타이밍 M에 대응하는 역방향 제1 기본 클럭 사이클부터 사이클 수의 카운트를 개시시키는 단계와,
    (3) 제2 타이밍 M에 대응하는 순방향 제1 기본 클럭 사이클까지의 사이클에서, 순방향 제1 기본 클럭에 동기하여 수신된 커맨드가 커맨드가 없는 상태도 포함하여 새로운 사이클수 카운트 커맨드가 아니면 카운트 동작을 중지시켜 다음 카운트 동작을 준비시키는 단계와,
    (4) 제1 타이밍 M에 대응하는 순방향 제1 기본 클럭 사이클부터 제2 타이밍 M에 대응하는 순방향 제1 기본 클럭의 사이클까지의 사이클에서, 순방향 제1 기본 클럭에 동기하여 수신된 커맨드에 새로운 사이클 수 카운트 커맨드가 있으면 일정 사이클 수를 카운트시키고 그 사이클부터 역방향 제1 기본 클럭과 동기하여 상기 데이타 출력 회로로부터 데이타를 출력시키는 단계와,
    (5) 제2 타이밍 M에 대응하는 순방향 제1 기본 클럭 사이클까지의 사이클에서, 제1 타이밍 M에 대응하는 순방향 제1 기본 클럭의 사이클을 첫번째로 하여 i번째(i는 양의 정수)의 사이클에 새로운 사이클 수 커맨드가 있으면 (i-1) 사이클에 대응하는 사이클수 카운트를 여분으로 부가한 일정 사이클수를 카운트하여 그 사이클부터 역방향 제1 기본 클럭에 동기하여 상기 데이타 출력 회로로부터 데이타를 출력시키는 단계
    에 의해 제1 기본 클럭의 사이클 수의 카운트를 상기 카운터에서 행하도록 하여 데이타 출력 사이클 수를 카운트 설정함과 함께, 상기 데이타 출력 회로로부터 데이타를 출력시키는 것을 특징으로 하는 데이타 고속 전송 시스템.
  15. 제2항에 있어서,
    상기 복수의 메모리 모듈 및 상기 제어기는 각각 데이타 입출력 포트를 더 포함하고,
    상기 복수의 메모리 모듈은 각각 상기 커맨드를 상기 순방향 및 역방향 중 어느 한 방향의 제1 기본 클럭에 동기하여 수신하고 상기 수신된 커맨드에 의해 상기 메모리 모듈이 선택된 것이 판별되면, 상기 각 메모리 모듈에 설치된 상기 데이타 입출력 포트가 인에이블로 되어 상기 데이타 버스에 접속되는
    것을 특징으로 하는 데이타 고속 전송 시스템.
  16. 제15항에 있어서, 상기 데이타 버스는 상기 메모리 모듈에 대해 전송되는 데이타와, 상기 메모리 모듈로부터 전송되는 데이타를 동시에 양방향으로 전송하는 양방향 버스인 것을 특징으로 하는 데이타 고속 전송 시스템.
  17. 제16항에 있어서, 상기 양방향 버스는 데이타를 전송하는 측의 상기 제어기 또는 상기 복수의 각 메모리 모듈과 데이타가 전송되는 측의 상기 제어기 또는 상기 복수의 각 메모리 모듈과의 사이에서, 전류를 분배함으로써 데이타의 전송을 행하고 상기 양방향 버스에 출력되는 데이타의 '0'과 '1'은 정전류 I와, 상기 정전류 I의 (1+α)배의 전류에 대응하고 있는 것을 특징으로 하는 데이타 고속 전송 시스템.
  18. 제17항에 있어서, 상기 정전류 I와, 정전류 (1+α)I의 전환을 상기 순방향 및 역방향 중 어느 한 방향의 제1 기본 클럭에 동기하여 행하는 정전류 전환 회로를 더 포함하는 것을 특징으로 하는 데이타 고속 전송 시스템.
  19. 제18항에 있어서, 상기 복수의 각 메모리 모듈로부터의 데이타 출력은 상기 순방향 및 역방향 중 어느 한 방향의 제1 기본 클럭의 상승 및 하강 중 어느 한쪽에 대해 180도 위상이 어긋난 타이밍을 기준으로 하여 행해지는 것을 특징으로 하는 데이타 고속 전송 시스템.
  20. 제19항에 있어서, 상기 순방향 및 역방향 중 어느 하나의 제1 기본 클럭의 상승 및 하강 중 어느 한쪽에 대해 180도 위상이 어긋난 타이밍은, 동기성 조정식 지연 회로를 사용하여 이루어지는 것을 특징으로 하는 데이타 고속 전송 시스템.
  21. 제20항에 있어서, 상기 동기성 조정식 지연 회로는 지연 회로부를 포함하며, 상기 지연 회로부에는 상기 정전류 전환 회로와 등가인 구성을 포함하는 회로가 설치되어 있는 것을 특징으로 하는 데이타 고속 전송 시스템.
  22. 제15항에 있어서, 상기 복수의 메모리 모듈 및 상기 제어기는 각각 상기 데이타 입출력 포트에 흐르는 전류를 모니터하고, 대소 2개의 기준 전류에 대한 그 전류값의 대소를 판정하여 2개의 전류 비교 결과가 모두 동일하게 'L' 또는 'H'일 때에는 한쪽을 '0', 다른쪽을 '1'에 대응시켜 입력 데이타로 하고, 2개의 전류 비교 결과가 모두 다를 때에는 상기 입출력 포트로부터의 출력 중의 데이타 또는 그 반전값을 입력값으로 하는 회로를 더 포함하는 것을 특징으로 하는 데이타 고속 전송 시스템.
  23. 데이타 고속 전송 시스템에 있어서,
    복수의 메모리 모듈(2)과,
    상기 복수의 메모리 모듈과 함께 배열되고 상기 복수의 메모리 모듈과의 사이에서 데이타의 교환을 행하는 제어기(3)와,
    적어도 1 종류의 클럭(TCLK, RCLK)을 발생하는 클럭 발생기(1)와,
    상기 배열된 복수의 메모리 모듈 및 제어기를 따라 왕복하도록 왕로(往路) 부분 및 복로(復路) 부분의 배선을 포함하며, 상기 클럭 발생기에서 발생되는 상기 적어도 1 종류의 클럭이 상기 왕로 부분의 선단부터 입력되고, 상기 입력된 클럭을 순차 전송하고 상기 왕로 부분 및 상기 복로 부분의 배선을 통해 전송되는 클럭을 상기 복수의 메모리 모듈 및 상기 제어기에 대해 상기 복수의 메모리 모듈 및 상기 제어기가 데이타를 교환할 때 사용되는 동기 신호로서 제공하는 적어도 1개의 클럭 배선(4A, 4B)과,
    상기 복수의 각 메모리 모듈 내 및 상기 제어기 내에 각각 설치되고 상기 적어도 1개의 클럭 배선의 왕로 부분에서 제공되는 순방향 클럭과 상기 적어도 1개의 클럭 배선의 복로 부분에서 제공되는 역방향 클럭과의 사이에서 발생하는 2주기 이내의 위상 어긋남에 대해 그 중간 타이밍을 검출하는 중간 타이밍 검출 회로를 포함하는 제어 회로
    를 포함하는 것을 특징으로 하는 데이타 고속 전송 시스템.
  24. 데이터 고속 전송 시스템에 있어서,
    복수의 메모리 모듈과,
    상기 복수의 각 메모리 모듈과의 사이에서 데이터의 교환을 행하는 제어기와,
    상기 복수의 메모리 모듈과 상기 제어기를 접속하는 양방향 데이터 버스
    를 포함하고,
    상기 복수의 메모리 모듈은 각각 커맨드 디코더를 포함하고,
    상기 제어기로부터의 신호에 의해 소정의 메모리 모듈을 상기 커맨드 디코더에 의해 선택하고, 상기 복수의 각 메모리 모듈 중 선택된 메모리 모듈 및 제어기는 각각 상기 양방향 데이터 버스를 이용하는 때에 출력 데이터에 따라 상기 양방향 데이터 버스에 흐르는 정전류량 (I)과 그의 (1+α)배의 전류량을 데이터의 '0'과 '1'의 정보로서 출력하여, 상기 양방향 데이터 버스에 흐르는 전류의 값 및 전류의 방향을 교환 데이터로서 이용한 입출력 회로를 포함하는 것을 특징으로 하는 데이터 고속 전송 시스템.
KR1019990001691A 1998-01-20 1999-01-20 복수의 메모리 모듈과 제어기를 구비한 데이터 고속 전송 시스템 KR100311334B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP1998-008279 1998-01-20
JP827998 1998-01-20

Publications (2)

Publication Number Publication Date
KR19990068029A KR19990068029A (ko) 1999-08-25
KR100311334B1 true KR100311334B1 (ko) 2001-11-02

Family

ID=11688754

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990001691A KR100311334B1 (ko) 1998-01-20 1999-01-20 복수의 메모리 모듈과 제어기를 구비한 데이터 고속 전송 시스템

Country Status (3)

Country Link
US (2) US6330627B1 (ko)
KR (1) KR100311334B1 (ko)
TW (1) TW429347B (ko)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6647506B1 (en) * 1999-11-30 2003-11-11 Integrated Memory Logic, Inc. Universal synchronization clock signal derived using single forward and reverse direction clock signals even when phase delay between both signals is greater than one cycle
US6978340B2 (en) * 2000-01-31 2005-12-20 Visteon Corporation I/O multiplexer and pin controller with serial and parallel capabilities for microprocessor based engine control
US6725314B1 (en) * 2001-03-30 2004-04-20 Sun Microsystems, Inc. Multi-bank memory subsystem employing an arrangement of multiple memory modules
US6889335B2 (en) * 2001-04-07 2005-05-03 Hewlett-Packard Development Company, L.P. Memory controller receiver circuitry with tri-state noise immunity
US6617894B2 (en) * 2001-05-14 2003-09-09 Samsung Electronics Co., Ltd. Circuits and methods for generating internal clock signal of intermediate phase relative to external clock
DE10128396B4 (de) * 2001-06-12 2005-02-24 Infineon Technologies Ag Verfahren und Schaltungsanordnung zum Übertragen von Daten von ein mit einem ersten Takt betriebenes System an ein mit einem zweiten Takt betriebenes System
DE10148878B4 (de) * 2001-10-04 2006-03-02 Siemens Ag System und Verfahren zum Übertragen digitaler Daten
KR100438779B1 (ko) * 2001-11-26 2004-07-05 삼성전자주식회사 멀티 뱅크 구조를 포함하는 동기식 반도체 메모리 장치
US6928026B2 (en) * 2002-03-19 2005-08-09 Broadcom Corporation Synchronous global controller for enhanced pipelining
KR100502408B1 (ko) * 2002-06-21 2005-07-19 삼성전자주식회사 액티브 터미네이션을 내장한 메모리 장치의 파워-업시퀀스를 제어하는 메모리 시스템과 그 파워-업 및 초기화방법
US7103064B2 (en) * 2003-01-21 2006-09-05 Nextio Inc. Method and apparatus for shared I/O in a load/store fabric
JP2005078592A (ja) * 2003-09-03 2005-03-24 Brother Ind Ltd メモリ制御装置及び画像形成装置
US7084686B2 (en) * 2004-05-25 2006-08-01 Micron Technology, Inc. System and method for open-loop synthesis of output clock signals having a selected phase relative to an input clock signal
US7078951B2 (en) * 2004-08-27 2006-07-18 Micron Technology, Inc. System and method for reduced power open-loop synthesis of output clock signals having a selected phase relative to an input clock signal
US7324403B2 (en) * 2004-09-24 2008-01-29 Intel Corporation Latency normalization by balancing early and late clocks
US7173877B2 (en) * 2004-09-30 2007-02-06 Infineon Technologies Ag Memory system with two clock lines and a memory device
KR101048380B1 (ko) * 2005-05-21 2011-07-12 삼성전자주식회사 메모리 모듈 장치
US7830176B2 (en) * 2006-07-27 2010-11-09 Arm Limited Controlling signal levels on a signal line within an integrated circuit
US7657785B2 (en) * 2007-02-07 2010-02-02 Honeywell International Inc. System of circumvention and recovery in a multi-function system
US7694187B2 (en) * 2007-02-07 2010-04-06 Honeywell International Inc. Method of peripheral type identification in a system of circumvention and recovery
US7805545B2 (en) * 2007-02-07 2010-09-28 Honeywell International Inc. Method for implementing a control channel in a system of circumvention and recovery
US7761721B2 (en) * 2007-04-12 2010-07-20 Honeywell International Inc. System of integrated environmentally hardened architecture for space application
KR101393311B1 (ko) 2008-03-19 2014-05-12 삼성전자주식회사 프로세스 변화량을 보상하는 멀티 칩 패키지 메모리
KR101046730B1 (ko) 2008-12-30 2011-07-05 주식회사 하이닉스반도체 반도체 메모리 장치 및 그 구동 방법
US9684465B2 (en) 2014-03-28 2017-06-20 International Business Machines Corporation Memory power management and data consolidation
US10242736B2 (en) * 2014-07-29 2019-03-26 Hewlett Packard Enterprise Development Lp Reference currents for input current comparisons
TWI734150B (zh) * 2019-07-24 2021-07-21 群聯電子股份有限公司 記憶體介面電路、記憶體儲存裝置及訊號產生方法
CN116863979A (zh) * 2022-03-28 2023-10-10 长鑫存储技术有限公司 数据读写电路、方法及设备
US11790964B1 (en) 2022-03-28 2023-10-17 Changxin Memory Technologies, Inc. Data reading/writing circuit, method, and device

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1993018463A1 (en) * 1992-03-06 1993-09-16 Rambus, Inc. Method and circuitry for minimizing clock-data skew in a bus system
US5553275A (en) * 1993-07-13 1996-09-03 Intel Corporation Method and apparatus for synchronously detecting phase relationships between a high-frequency clock and a low-frequency clock
JPH09161472A (ja) * 1995-12-13 1997-06-20 Hitachi Ltd メモリ制御方法
JP3410922B2 (ja) 1996-04-23 2003-05-26 株式会社東芝 クロック制御回路
JP4052697B2 (ja) * 1996-10-09 2008-02-27 富士通株式会社 信号伝送システム、および、該信号伝送システムのレシーバ回路
US6115318A (en) * 1996-12-03 2000-09-05 Micron Technology, Inc. Clock vernier adjustment
JP3455040B2 (ja) * 1996-12-16 2003-10-06 株式会社日立製作所 ソースクロック同期式メモリシステムおよびメモリユニット
JPH10187592A (ja) * 1996-12-20 1998-07-21 Nippon Steel Corp メモリバスシステム
US5987576A (en) * 1997-02-27 1999-11-16 Hewlett-Packard Company Method and apparatus for generating and distributing clock signals with minimal skew
JPH10304240A (ja) * 1997-04-30 1998-11-13 Sony Corp デジタル電子撮像装置およびそのデータ転送方法
JP3309782B2 (ja) * 1997-06-10 2002-07-29 日本電気株式会社 半導体集積回路
US6134638A (en) * 1997-08-13 2000-10-17 Compaq Computer Corporation Memory controller supporting DRAM circuits with different operating speeds
JP3092557B2 (ja) * 1997-09-16 2000-09-25 日本電気株式会社 半導体記憶装置
JP3363077B2 (ja) 1997-10-06 2003-01-07 株式会社東芝 クロック制御回路
US6100733A (en) * 1998-06-09 2000-08-08 Siemens Aktiengesellschaft Clock latency compensation circuit for DDR timing
US6366989B1 (en) * 1998-09-17 2002-04-02 Sun Microsystems, Inc. Programmable memory controller
US6418518B1 (en) * 1998-09-18 2002-07-09 National Semiconductor Corporation Decoupled address and data access to an SDRAM
US6490638B1 (en) * 1999-08-23 2002-12-03 Advanced Micro Devices, Inc. General purpose bus with programmable timing

Also Published As

Publication number Publication date
KR19990068029A (ko) 1999-08-25
TW429347B (en) 2001-04-11
US20020109528A1 (en) 2002-08-15
US6745271B2 (en) 2004-06-01
US6330627B1 (en) 2001-12-11

Similar Documents

Publication Publication Date Title
KR100311334B1 (ko) 복수의 메모리 모듈과 제어기를 구비한 데이터 고속 전송 시스템
KR100425661B1 (ko) 데이타 고속 전송 동기 시스템 및 데이타 고속 전송 동기 방법
EP2264614B1 (en) Bus system optimization
KR100601149B1 (ko) 데이터 전송장치
JP3730898B2 (ja) データ・ストローブ・プロトコルを使用した主記憶装置
KR100448033B1 (ko) 캘리브레이션 방법 및 메모리 시스템
JP4063392B2 (ja) 信号伝送システム
US20070064462A1 (en) Memory system and data transmission method
KR100753421B1 (ko) 반도체 메모리 장치의 어드레스 래치 회로
KR100319503B1 (ko) 반도체기억장치
US20140344611A1 (en) Deserializers
KR20050061123A (ko) Ddr sdram 콘트롤러의 데이터 제어회로
US7178048B2 (en) System and method for signal synchronization based on plural clock signals
JP3386031B2 (ja) 同期遅延回路及び半導体集積回路装置
JP4748896B2 (ja) 同期型データ転送処理装置
US6608514B1 (en) Clock signal generator circuit and semiconductor integrated circuit with the same circuit
JP3719865B2 (ja) データ高速転送システム
US9374096B2 (en) Semiconductor apparatus and semiconductor system including the same, and method of operating the same
US8222931B2 (en) Semiconductor device and driving method thereof
US6388484B1 (en) Clock control circuit
KR100728556B1 (ko) 반도체 메모리 장치의 데이터 출력 회로
KR19990023621A (ko) 반도체 메모리 장치
JP4272149B2 (ja) 方向性結合器を用いたデータ転送方式
JP2008123543A (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: 20080813

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee