KR0147702B1 - 고속 실행을 위한 기록용 선입선출 버퍼 - Google Patents

고속 실행을 위한 기록용 선입선출 버퍼

Info

Publication number
KR0147702B1
KR0147702B1 KR1019950019158A KR19950019158A KR0147702B1 KR 0147702 B1 KR0147702 B1 KR 0147702B1 KR 1019950019158 A KR1019950019158 A KR 1019950019158A KR 19950019158 A KR19950019158 A KR 19950019158A KR 0147702 B1 KR0147702 B1 KR 0147702B1
Authority
KR
South Korea
Prior art keywords
flip
input
register group
output
flop
Prior art date
Application number
KR1019950019158A
Other languages
English (en)
Other versions
KR970002678A (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 KR1019950019158A priority Critical patent/KR0147702B1/ko
Publication of KR970002678A publication Critical patent/KR970002678A/ko
Application granted granted Critical
Publication of KR0147702B1 publication Critical patent/KR0147702B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/10Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory
    • G06F5/12Means for monitoring the fill level; Means for resolving contention, i.e. conflicts between simultaneous enqueue and dequeue operations
    • 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/40Bus structure
    • G06F13/4004Coupling between buses

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

본 발명은 레지스터 지정방식을 이용하여 정확한 데이터를 고속으로 얻을 수 있도록 한 고속실행을 위한 기록용 선입선출 버퍼에 관한 것으로, 이를 위하여 본 발명은, 코드화된 N개의 입력신호를 다른 형식의 M개의 코드로 디코딩하여 복수개의 다른 코드신호를 발생하는 N×M디코더와, 디코딩된 M개의 코드신호에 대응하는 복수의 플립플롭을 포함하며, 외부 입력으로부터의 데이터 기록 인에이블 신호와 N×M디코더로부터의 코드신호에 응답하여 각 플립플롭으로의 입력 데이터의 기록을 위한 복수의 제어신호를 발생하는 제1레지스터 그룹과, 이 제1레지스터 그룹내의 복수의 플립플롭에 대응하는 복수의 플립플롭을 포함하며, 제1레지스터 그룹으로부터의 기록 제어신호에 응답하여 입력핀을 통해 공급되는 입력 데이터를 기록하기 위한 제2레지스터 그룹과, 제1레지스터 그룹으로부터의 출력 제어신호에 의거하여 제2레지스터 그룹내의 각 플립플롭들의 데이터 만충 또는 엠프티에 대한 상태신호를 발생하기 위한 상태신호 발생블럭과, 외부 입력으로부터의 데이터 판독 인에이블 신호와 코드화된 N개의 입력신호에 응답하여 제2레지스터 그룹내의 각 플립플롭에 기록된 입력 데이터를 판독하기 위한 제어신호를 발생하는 판독 제어신호 발생 블록과, 이 판독 제어신호 발생수단으로부터의 판독 제어신호에 의거하여 제2레지스터 그룹내의 각 플립플롭에 기록되어 있는 입력 데이터들을 순차적으로 판독하여 출력측에 제공하기 위한 출력 제어블록을 포함한다.
따라서, 본 발명에 따른 선입선출 버퍼는, 입력된 데이터에 대해 여러단의 레지스터를 순차적으로 거쳐 출력하는 종래의 선입선출 버퍼에 비해, 그 속도가 훨씬 빠를 뿐만 아니라 원하는 시점에서 유효한 데이터를 얻을 수 있는 것이다.

Description

고속실행을 위한 기록용 선입선출 버퍼
제1도는 본 발명의 바람직한 실시예에 따른 고속실행을 위한 기록용 선입선출 버퍼 회로도
제2도는 종래의 시프트 레지스터 방식을 이용한 기록용 선입선출 버퍼 회로도
*도면의 주요부분에 대한 부호의 설명
10:디코더 20,30,50:레지스터 그룹
40:버퍼 상태신호 발생블록 60:데이터 출력 제어신호 발생블록
70:출력 제어블록 FF:플립플롭
본 발명은 데이터 기록용 선입선출 버퍼(First In First Out)에 관한 것으로, 더욱 상세하게는 서로 타이밍이 다른 ISA 버스와 PCMCIA카드 버스 사이의 데이터 전송시에 이를 인터페이스하는데 사용되는 고속실행을 위한 기록용 선입선출 버퍼에 관한 것이다.
통상적으로, 선입선출 버퍼 메모리는 먼저 입력된 데이터를 먼저 출력하는 것으로, 이러한 선입선출 버퍼는 서로 다른 속도로서 비동기로 동작하는 두 개의 장치를 접속하기 위한 버퍼 메모리로서 주로 사용되고 있으며, 또한 ISA에서 PCMCIA호스트 아답타 칩의 개발에 사용된다.
한편, 상기한 바와 같이 타이밍이 다른 장치간의 데이터 인터페이스에 이용되는 선입선출 버퍼는 쌍안정 멀티바이브 레이터 회로, 즉 플립플롭 등을 이용하여 구성할 수가 있으며, 이러한 플립플롭은 데이터 입력과 클럭펄스에 의거하여 데이터의 기록과 판독을 수행하는 것으로, 주로 메모리단, 카운터, 이동 레지스터(Shift Register)등으로 이용된다.
제2도는 시프트 레지스터 방식을 이용한 종래의 전형적인 기록용 선입선출버퍼 회로도를 나타낸다. 동도면으로부터 알 수 있는 바와 같이 종래의 선입선출 버퍼는 직렬로 연결된 4개의 플립플롭(FF1-FF4)으로 구성되며, 각 플립플롭에는 외부로부터의 데이터 입력(d-in), 클럭펄스(CK) 및 리셋신호(RST)가 각각 입력된다.
따라서, 상술한 바와 같은 종래의 선입선출 버퍼는 클럭(CK) 입력에 인가되는 이동펄스에 의해 입력 데이터(d-in)가 차례로 4단 레지스터, 즉 각 플립플로에 차례로 들어가게 된다. 그러나, 이러한 종래의 버퍼는 입력 데이터가 여러단의 레지스터(플립플롭)를 거쳐 출력되므로 그 처리속도가 느릴 뿐만 아니라 원하는 시점에서 정확한 데이터를 얻기가 곤란하다는 문제가 있다.
따라서, 본 발명은 상기한 종래 기술의 문제점을 해결하기 위한 것으로, 레지스터 지정 방식을 이용하여 정확한 데이터를 고속으로 얻을 수 있도록 한 고속실행을 위한 기록용 선입선출 버퍼를 제공하는데 그 목적이 있다.
상기 목적을 달성하기 위하여 본 발명은, 타이밍이 다른 기기간의 데이터 전송시에 이를 인터페이스하는 선입선출 버퍼에 있어서, 코드화된 N개의 입력신호를 다른 형식의 M개의 코드로 디코딩하여 복수개의 다른 코드신호를 발생하는 N×M디코더; 상기 디코딩된 M개의 코드신호에 대응하는 복수의 플립플롭을 포함하며, 외부 입력으로부터의 데이터 기록 인에이블 신호와 상기 N×M디코더로부터의 코드신호에 응답하여 각 플립플롭의 입력 데이터의 기록을 위한 복수의 제어신호를 발생하는 제1레지스터 그룹; 상기 제1레지스터 그룹내의 복수의 플립플롭을 포함하며, 상기 제1레지스터 그룹으로부터의 기록 제어신호에 응답하여 입력핀을 통해 공급되는 입력 데이터를 기록하기 위한 제2레지스터 그룹; 상기 제1레지스터 그룹으로부터의 출력 제어신호에 의거하여 상기 제2레지스터 그룹내의 각 플립플롭들의 데이터 만충 또는 엠프티에 대한 상태신호를 발생하기 위한 상태신호 발생수단; 복수개의 논리소자로 구성되어, 외부 입력으로부터의 데이터 판독 인에이블 신호와 상기 코드화된 N개의 입력신호에 응답하여 상기 제2레지스터 그룹내의 각 플립플롭에 기록된 상기 입력 데이터를 판독하기 위한 제어신호를 발생하는 판독 제어신호 발생수딘; 및 상기 판독 제어신호 발생수단으로부터의 판독 제어신호에 의거하여 상기 제2레지스터 그룹내의 각 플립플롭에 기록되어 있는 상기 입력 데이터들을 순차적으로 판독하여 출력측에 제공하기 위한 출력 게이트 수단으로 이루어진 고속실행을 위한 기록용 선입선출 버퍼를 제공한다.
본 발명의 상기 및 기타 목적과 여러 가지 장점은 이 기술분야에 숙련된 사람들에 의해 첨부된 도면을 참조하여 하기에 기술되는 본 발명의 바람직한 실시예로부터 더욱 명확하게 될 것이다.
이하 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대하여 상세하게 설명한다.
제1도는 본 발명의 바람직한 실시예에 따른 고속 실행을 위한 기록용 선입선출 버퍼 회로도를 나타낸다. 동도면에 도시된 바와 같이, 본 발명의 선입선출 버퍼는 디코더(10), 제1레지스터 그룹(20), 제2레지스터 그룹(30), 버퍼 상태신호 발생블록(40), 제3레지스터 그룹(50), 데이터 출력 제어신호 발생 블록(60) 및 출력제어 블록(70)으로 구성된다.
제1도에 있어서, 디코더(10)는 2진 코드를 다른 코드로 디코딩하는 2X4디코더로서, 입력측의 W0핀과 입력 W1핀의 입력을 디코딩하여 4개의 출력핀(D0,D1,D2,D3)의 출력을 통해 출력측의 제1레지스터 그룹(20)을 이루는 4개의 플립플롭(FF22,FF24,FF26,FF28)중의 하나를 세트시킨다.
한편, 제1레지스터 그룹(20)내의 각 플립플롭 FF22,FF24,FF26,FF28은 입력측으로부터의 기록 인에이블 신호(W/E)와 상기한 디코더(10)로부터의 각 출력신호에 의거하여 각각 하이 또는 로우 레벨의 출력값을 발생한다. 즉, 일예로서 플립플롭(FF22)의 경우를 보면, 기록 인에이블 신호(W/E)가 1로 세트, 즉 하이레벨이고 디코더(10)의 출력 D0가 1로 세트되면 플립플롭(FF22)의 출력N0는 1로 세트된다. 이러한 동작은 플립플롭 FF22,FF26,FF28 또한 마찬가지이다. 그리고, 이들 각 플립플롭들은 그들의 리세트 단자를 통해 입력되는 외부로부터의 리세트 신호(RES)에 의거하여 리세트된다.
그리고, 제2레지스터 그룹(30)은 상기한 제1레지스터 그룹(20)내의 플립플롭과 대응하는 4개의 플립플롭 FF22,FF24,FF26,FF28으로 구성되어, 입력측으로부터의 기록 인에이블 신호(W/E)와 상기한 제1레지스터 그룹(20)내의 각 플립플롭의 각 출력신호에 의거하여 입력 데이터(d-in)를 각각 기록, 즉 일예로서, 플립플롭(FF32)의 경우를 보면, 기록 인에이블 신호가 1로 세트되고, 제1레지스터 그룹(20)내의 플립플롭(FF22)의 출력 N0가 1로 세트되면 플립플롭(FF32)는 입력 데이터 d-in[45:0]을 기록한다. 이러한 기록동작은 플립플롭 FF34,FF36,FF38 또한 마찬가지이며, 이들 각 플립플롭들은 그들의 리세트 단자를 통해 입력되는 외부로부터의 리세트 신호(RES)에 의거하여 리세트된다.
다른 한편, 상기한 제1레지스터 그룹(20)내의 각 플립플롭들의 각 출력에 연결된 버퍼 상태신호 발생블럭(40)은 플립플롭 FF22,FF24,FF26,FF28들의 각 출력 N0,N1,N2,N3에 각각 그 4개의 입력라인이 병렬로 연결된 앤드 게이트(G1)와 노아 게이트(G2)로 구성된다. 이러한 버퍼 상태신호 발생 블록(40)은 상기한 제2레지스터(30)내의 각 플립플롭들의 데이터 충만상태를 체크한 다음 그 체크결과에 상응하여 풀 신호(충만) 또는 엠프티 신호(궁핍)을 발생한다.
보다 상세하게, 앤드 게이트(G1)는 제2레지스터 그룹(30)내의 4개의 플립플롭 FF32,FF34,FF36,FF38 모두에 데이터가 완전히 기록되면, 그에 응답하여 데이터 완충 상태신호를 발생, 즉 4개의 플립플롭에 데이터가 모두 기록되면 앤드 게이트(G1)의 출력은 1로 세트된다. 또한, 노아 게이트(G2)는 외부로부터의 판독 인에이블 신호(R/E)에 의거하여, 각 플립플로 FF32,FF34,FF36,FF38 모두의 데이터가 판독되고 나면, 그에 응답하여 데이터 엠프티 상태신호를 발생, 즉 노아 게이트(G2)의 출력은 1로 세트된다.
한편, 제3레지스터 그룹(50)내의 각 플립플롭 FF52 및 FF54 은 입력측으로부터의 판독 인에이블 신호(R/E)와 입력 W0 또는 W1에 의거하여 각 출력 N4 또는 N5에 각각 하이 또는 로우 레벨의 출력값을 발생한다.
또한, 데이터 출력 제어신호 발생블럭(60)은 다수개의 논리회로 소자, 즉 일측 입력이 플립플롭 FF52의 출력 N4에 연결되고 타측 입력이 플립플롭 FF54의 출력 N5에 연결된 앤드 게이트(G3)와, 일측 입력이 플립플롭 FF52의 출력 N4에 연결되고 타측 입력이 인버터 INT1을 경유하여 플립플롭FF54의 출력 N5에 연결된 앤드 게이트(G4)와, 일측 입력이 인버터 INT2를 경유하여 플립플롭FF52의 출력 N4에 연결되고 타측 입력이 플립플롭 FF54의 출력 N5에 연결된 앤드 게이트(G5)로 구성된다.
따라서, 데이터 출력 제어신호 발생 블록(60)에서는 상술한 제3레지스터 그룹(50)으로부터의 하이 또는 로우 레벨의 출력신호에 응답하여 그에 상응하는 데이터 출력 제어신호, 즉 상술한 제2레지스터 그룹(30)내의 플립플롭 FF32,FF34,FF36,FF38에 기록되어 있는 데이터의 판독을 위한 제어신호를 발생한다.
한편, 출력 제어 블록(70)은 6개의 버퍼 게이트 G6,G7,G8,G9,G10,G11로 구성되며, 이러한 각 게이트들이 판독 인에이블 신호(R/E)에 기초하는 상기한 데이터 출력 제어신호 발생 블록(60)내의 각 앤드 게이트들로부터의 제어신호에 의거해 인에이블되므로서, 실질적으로 제2레지스터 그룹(30)내의 각 플립플롭들에 기록되어 있는 입력 데이터들이 순차적으로 출력된다.
다음에, 상술한 바와 같은 구성부재들로 이루어진 본 발명에 따른 기록용 선입선출 버퍼의 기록 및 판독 과정에 대하여 상세하게 설명한다.
먼저, 입력 데이터 d-in의 기록과정에 대하여 살펴보면, W0핀과 W1핀에 0의 값이 입력되면 디코더(10)는 이들 값을 디코딩하여 그의 출력 D0를 1로 세트한다. 이때, 디코더(10)의 다른 출력 D1,D2,D3은 모두 0상태이다. 그런다음 기록 인에이블 신호(W/E)가 1로 세트되면 디코더(10)의 출력 D0에 연결된 제1레지스터 그룹(20)내의 플립플롭 FF22의 출력 N0이 1로 세트되므로서, 입력 데이터 d-in[45:0]이 제2레지스터 그룹(30)내의 플립플롭 FF32에 기록된다. 이때, 제1레지스터 그룹(20)내의 다른 플립플롭 FF24,FF26,FF28의 각 출력 N1,N2,N3이 0이므로, 제2레지스터 그룹(30)내의 다른 플립플롭 FF34,FF36,FF38에는 입력 데이터의 기록동작이 이루어지지 않는다.
한편, 제1레지스터 그룹(20)내의 플립플롭 FF22의 출력 N0만 1로 세트되고 나머지 플립플롭들의 출력 N1,N2,N3은 0이므로, 제2레지스터 그룹(30)내의 각 플립플롭들의 데이터 만충 또는 엠프티에 대한 상태신호를 발생하는 버퍼 상태신호 발생블럭(40)내의 앤드 게이트(G1)의 출력과 노아 게이트(G2)의 출력은 모두 0레벨 상태를 유지하게 된다.
또한, W0핀과 W1핀에 1의 값이 입력되고 기록 인에이블 그룹(W/E)가 1로 세트되면, 상술한 0의 값이 입력될 때와 유사하게, 제1레지스터 그룹(20)내의 플립플롭 FF24의 출력 N1은 1로 세트되고 나머지 플립플롭들의 출력 N0,N2,N3은 0이므로, 제2레지스터 그룹(30)내의 플립플롭 FF34에만 입력 데이터 d-in[45:0]가 기록된다. 이때, 상기와 마찬가지로 앤드 게이트(G1) 와 노아 게이트(G2)의 출력은 모두 0레벨 상태를 유지하게 된다.
마찬가지로, W0핀과 W1핀에 10의 값이 입력되고 기록 인에이블 신호(W/E)가 1로 세트되면, 상술한 0 또는 1의 값이 입력될 때와 유사하게, 제1레지스터 그룹(20)내의 플립플롭 FF26의 출력 N2는 1로 세트되고 나머지 플립플롭들의 출력 N0,N1,N3은 0이므로, 제2레지스터 그룹(30)내의 플립플롭 FF36에만 입력 데이터 d-in[45:0]가 기록된다. 이때, 상기와 마찬가지로 앤드 게이트(G1)와 노아 게이트(G2)의 출력은 모두 0레벨 상태를 유지하게 된다.
또한 W0핀과 W1핀에 11의 값이 입력되고 기록 인에이블 신호(W/E)가 1로 세트되면, 상술한 0, 1 또는 10의 값이 입력될 때와 유사하게, 제1레지스터 그룹(20)내의 플립플롭 FF28의 출력 N3은 1로 세트되고 나머지 플립플롭들의 출력 N0,N1,N2는 0이므로, 제2레지스터 그룹(30)내의 플립플롭 FF38에만 입력 데이터 d-in[45:0]가 기록된다.
따라서, 상술한 바와 같은 과정을 통해 제2레지스터 그룹(30)내의 플립플롭 FF32,FF34,FF36,FF38모드에 입력 데이터의 기록이 완료되면, 즉 모든 플립플롭들에 입력 데이터와 기록이 완료되면 그에 상응하는 데이터 만충 상태신호를 발생하는 앤드 게이트(G1)의 출력은 하이 레벨상태, 즉 1로 세트된다. 그러므로, 다음 데이터가 판독될 때까지 선입선출 버퍼의 데이터 기록동작은 중단된다.
다음에, 상술한 바와 같은 기록과정을 통해 본 발명에 따른 선입선출 버퍼에 입력 데이터의 기록이 완료된 상태에서 기록된 데이터를 판독하는 과정에 대하여 상세하게 설명한다.
먼저, 입력 W0핀과 W1핀의 값이 0이고 판독 인에이블 신호(R/E)가 1로 세트되면, 제3레지스터 그룹(50)내의 플립플롭 FF52와 HH54의 출력 N4 및 N5모두는 0 레벨이 된다. 따라서, 플립플롭 FF52의 출력 N4에 그의 일측 입력이 연결되고 플립플롭 FF54의 출력 N5에 그의 타측 입력이 연결된 앤드 게이트(G3)의 출력이 0레벨로 되므로서, 그의 출력에 제어단자가 연결된 버퍼 게이트(G7)가 인에이블된다.
이때, 플립플롭 FF52의 출력 N4에 그의 일측 입력이 연결되고 인버터 INT1을 경유하여 플립플롭 FF54의 출력 N5에 그의 타측 입력이 연결된 앤드 게이트(G4)의 출력 또한 0레벨이므로, 버퍼 게이트(G7)의 출력에 제어단자가 버퍼 게이트(G9)도 인에이블 된다.
또한, 플립플롭 FF52의 출력 N4에 그의 일측 입력이 연결되고 인버터 INT1을 경유하여 플립플롭 FF54의 출력 N5에 그의 타측 입력이 연결된 앤드 게이트(G3)의 출력 또한 상기한 앤드 게이트(G4)와 마찬가지로 0레벨이므로, 버퍼 게이트(G9)의 출력에 제어단자가 연결된 버퍼 게이트(G11)도 인에이블된다.
따라서, 상술한 바와 같이, 입력 W0핀과 W1의 값이 0이고 판독 인에이블 신호(R/E)가 1로 세트될 때, 데이터 출력 제어신호 발생블록(60)으로부터의 제어신호(앤드 게이트 G3,G4,G5의 출력레벨)에 의거하여 출력 제어블럭(70)내의 버퍼 게이트(11)가 인에이블, 즉 구동되므로서 상술한 제2레지스터 그룹(30)내의 플립플롭 FF32에 기록되어 있던 입력 데이터 [45:0]가 출력핀(d-out)을 통해 출력된다.
상기와 유사하게, 판독 인에이블 신호(R/E)가 1로 세트된 상태에서 입력 W0핀과 W1핀의 값이 1이면, 데이터 출력 제어신호 발생블럭(60)으로부터의 제어신호(앤드 게이트 G3,G4,G5의 출력레벨)에 의거하여 출력 제어 블록(70)내의 버퍼 게이트(G10)가 인에이블되므로서 상술한 제2레지스터 그룹(30)내의 플립플롭 FF34에 기록되어 있던 입력 데이터 [45:0]가 출력핀(d-out)을 통해 출력된다.
또한, 판독 인에이블 신호(R/E)가 1로 세트된 상태에서 입력 W0핀과 W1핀의 값이 10이면, 데이터 출력 제어신호 발생블록(60)으로부터의 제어신호(앤드 게이트 G3,G4,G5의 출력 레벨)에 의거하여 출력 제어블록(70)내의 버퍼 게이트(G8)가 인에이블되므로서 상술한 제2레지스터 그룹(30)내의 플립플롭 FF36에 기록되어 있던 입력 데이터 [45:0]가 출력핀(d-out)을 통해 출력된다.
마찬가지로, 판독 인에이블 신호(R/E)가 1로 세트된 상태에서 입력 W0핀과 W1핀의 값이 11이면, 데이터 출력 제어신호 발생블럭(60)으로부터의 제어신호(앤드 게이트 G3,G4,G5의 출력레벨, 즉 이때에는 제3레지스터 그룹(50)내의 플립플롭 FF52,FF54의 각 출력 N4,N5모두가 1레벨이므로 앤드 게이트(G3)의 출력은 1레벨이 됨)에 의거하여 출력 제어블록(70)내의 버퍼 게이트(G6)가 인에이블되므로서 상술한 제2레지스터 그룹(30)내의 플립플롭 FF38에 기록되어 있던 입력 데이터 [45:0]가 출력핀(d-out)을 통해 출력된다.
이상과 같이 본 발명에 따른 고속 선입선출 버퍼는, 판독 인에이블 신호(R/E)와 입력 W0핀과 W1핀으로부터의 입력값에 따라 제2레지스터 그룹(30)내의 플립플롭 FF32, FF34,FF36,FF38에 기록된 입력 데이터를 그 입력순서에 의거하여 순차적, 즉 플립플롭 FF32-FF34-FF36-FF38의 순서로 출력하게 된다.
그런 다음, 상술한 바와 같이 제2레지스터 그룹(30)에 기록되어 있던 모든 입력 데이터가 모두 판독, 즉 출력되고 나면, 제1레지스터 그룹(20)내의 각 플립플롭 FF22,FF24,FF26,FF28의 각 출력 N0,N1,N2,N3에 그의 4개의 입력이 연결된 버퍼 상태신호 발생블럭(40)내의 노아 게이트(G2)의 출력이 1로 세트되므로서, 제2레지스터 그룹(30)내의 각 플립플롭에 다음 데이터를 기록할 때까지 판독동작이 중단된다.
이상 설명한 바와 같이, 본 발명의 고속 선입선출 버퍼는 입력된 데이터에 대해 여러단의 레지스터(플립플롭)를 순차적으로 거쳐 출력하는 종래의 선입선출 버퍼와는 달리, 제로 대기상태로 기록 싸이클을 수행하고 원하는 시점에서 데이터의 입출력이 가능하도록 레지스터(플립플롭) 지정방식을 적용함으로서, 종래의 선입선출 버퍼에 비해 그 속도가 훨씬 빠를 뿐만 아니라 원하는 시점에서 유효한 데이터를 얻을 수 있는 장점을 갖는다.
한편, 상술한 바와 같은 본 발명의 바람직한 실시예에서는 2X4 디코더를 사용하여 데이터 기록을 위한 버퍼로서 4개의 플립플롭을 채용하는 것으로 하여 설명하였으나, 이는 실시예로서 제시된 것일 뿐 본 발명이 반드시 이에 국한되는 것으로 해석되어서는 안될 것이다. 따라서, 이 기술분야의 숙련자라면 본 발명의 용도에 따라 N×M디코더를 채용함으로서 M개의 플립플롭을 수용할 수 있다는 것을 쉽게 알 수 있을 것이다.

Claims (8)

  1. 타이밍이 다른 기기간의 데이터 전송시에 이를 인터페이스하는 선입선출 버퍼에 있어서, 코드화된 N개의 입력신호를 다른 형식의 M개의 코드로 디코딩하여 복수개의 다른 코드신호를 발생하는 N×M디코더; 상기 디코딩된 M개의 코드신호에 대응하는 복수의 플립플롭을 포함하며, 외부 입력으로부터의 데이터 기록 인에이블 신호와 상기 N×M디코더로부터의 코드신호에 응답하여 각 플립플롭으로의 입력 데이터의 기록을 위한 복수의 제어신호를 발생하는데 제1레지스터 그룹; 상기 제1레지스터 그룹내의 복수의 플립플롭에 대응하는 복수의 플립플롭을 포함하며, 상기 제1레지스터 그룹으로부터의 기록 제어신호에 응답하여 입력핀을 통해 공급되는 입력 데이터를 기록하기 위한 제2레지스터 그룹; 상기 제1레지스터 그룹로부터의 출력 제어신호에 의거하여 상기 제2레지스터 그룹내의 각 플립플롭의 데이터 만충 또는 엠프티에 대한 상태신호를 발생하기 위한 상태신호 발생수단; 복수개의 논리소자로 구성되어, 외부의 입력으로부터의 데이터 판독 인에이블 신호와 상기 코드화된 N개의 입력신호에 응답하여 상기 제2레지스터 그룹내의 각 플립플롭에 기록된 상기 입력 데이터를 판독하기 위한 제어신호를 발생하는 판독 제어신호 발생수단; 및 상기 판독 제어신호 발생수단으로부터터의 판독 제어신호에 의거하여 상기 제2레지스터 그룹내의 각 플립플롭에 기록되어 있는 상기 입력 데이터들을 순차적으로 판독하여 출력측에 제공하기 위한 출력 게이트 수단으로 이루어진 고속실행을 위한 기록용 선입선출 버퍼.
  2. 제1항에 있어서, 상기 제1레지스터 그룹은, 상기 N×M디코더의 각 출력에 각각 대응하는 4개의 플립플롭으로 구성된 것을 특징으로 하는 고속실행을 위한 기록용 선입선출 버퍼.
  3. 제2항에 있어서, 상기 제2레지스터 그룹은, 상기 제1레지스터 그룹을 이루는 상기 4개의 플립플롭의 각 출력을 일측 입력으로 하고, 타측 입력이 상기 데이터 입력을 제공하는 상기 입력핀에 연결된 다른 4개의 플립플롭으로 구성된 것을 특징으로 하는 고속실행을 위한 기록용 선입선출 버퍼.
  4. 제2항에 있어서, 상기 상태신호 발생수단은, 상기 제1레지스터 그룹내의 4개의 플립플롭의 각 출력에 그들의 각 입력이 병렬로 연결되며, 상기 제2레지스터 그룹내의 복수의 플립플롭의 만충에 대한 상태신호를 발생하는 제1논리소자와, 상기 제2레지스터 그룹내의 복수의 플립플롭의 엠프티에 대한 상태신호를 발생하는 제2논리소자로 구성된 것을 특징으로 하는 고속실행을 위한 기록용 선입선출 버퍼.
  5. 제4항에 있어서, 상기 제1논리소자는 4입력 앤드 게이트이고, 상기 제2논리소자는 4입력 노아 게이트인 것을 특징으로 하는 고속실행을 위한 기록용 선입선출 버퍼.
  6. 제1항에 있어서, 상기 판독 제어신호 발생수단은, 상기 코드화된 N개의 입력신호와 외부로부터의 판독 인에이블 신호를 각각 입력하는 제1 및 제2 플립플롭과, 이 제1 및 제2 플립플롭의 각 출력에 각 일측 입력과 타측 입력이 각각 연결되어 상기 코드화된 N개의 입력값에 상응하여 상기 입력 데이터 판독용 제어신호를 발생하는 논리소자군으로 구성된 것을 특징으로 하는 고속실행을 위한 기록용 선입선출 버퍼.
  7. 제6항에 있어서, 상기 입력 데이터 판독용 제어신호를 발생하는 상기 논리소자군은, 일측 입력이 상기 제1플립플롭의 출력에 연결되고 타측 입력이 상기 제2플립플롭의 출력에 연결된 제1앤드 게이트와, 일측 입력이 상기 제1플립플롭의 출력에 연결되고 타측 입력이 제1인버터를 경유하여 상기 제2플립플로의 출력에 연결된 제2앤드 게이트와, 일측 입력이 제2인버터를 경유하여 상기 제1플립플롭의 출력에 연결되고 타측 입력이 상기 제2플립플롭의 출력에 연결된 제3앤드 게이트로 구성된 것을 특징으로 하는 고속실행을 위한 기록용 선입선출 버퍼.
  8. 제1항에 있어서, 상기 출력 게이트 수단은, 각각의 제어단자를 통해 입력되는 상기 판독 제어신호 발생수단으로부터의 제어신호에 따라 인에이블되어 상기 제2레지스터 그룹내의 각 플립플롭에 기록되어 있는 입력 데이터를 그 입력순서에 각각 순차적으로 출력하는 복수의 버퍼 게이트로 구성된 것을 특징으로 하는 고속실행을 위한 기록용 선입선출 버퍼.
KR1019950019158A 1995-06-30 1995-06-30 고속 실행을 위한 기록용 선입선출 버퍼 KR0147702B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019950019158A KR0147702B1 (ko) 1995-06-30 1995-06-30 고속 실행을 위한 기록용 선입선출 버퍼

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019950019158A KR0147702B1 (ko) 1995-06-30 1995-06-30 고속 실행을 위한 기록용 선입선출 버퍼

Publications (2)

Publication Number Publication Date
KR970002678A KR970002678A (ko) 1997-01-28
KR0147702B1 true KR0147702B1 (ko) 1998-09-15

Family

ID=19419502

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950019158A KR0147702B1 (ko) 1995-06-30 1995-06-30 고속 실행을 위한 기록용 선입선출 버퍼

Country Status (1)

Country Link
KR (1) KR0147702B1 (ko)

Also Published As

Publication number Publication date
KR970002678A (ko) 1997-01-28

Similar Documents

Publication Publication Date Title
US4839866A (en) Cascadable first-in, first-out memory
US5262996A (en) FIFO module
KR0123239B1 (ko) 선입선출방식(fifo) 메모리
US6420907B1 (en) Method and apparatus for asynchronously controlling state information within a circuit
US4748588A (en) Fast data synchronizer
US6356117B1 (en) Asynchronously controlling data transfers within a circuit
EP0575829B1 (en) Serial access memory with column address counter and pointers
KR100275182B1 (ko) 순차 메모리
US6463000B2 (en) First-in first-out memory device and method of generating flag signal in the same
KR100840030B1 (ko) 프로그래머블 논리 회로
KR100238869B1 (ko) 버스트 모드 신호를 제공하기 위한 반도체 메모리 장치
KR0147702B1 (ko) 고속 실행을 위한 기록용 선입선출 버퍼
JP2005044334A (ja) 非同期制御回路と半導体集積回路装置
EP0660328B1 (en) Method of controlling semiconductor storage circuit
US6418176B1 (en) Forwarded clock recovery with variable latency
US5917832A (en) Self-test circuit and method utilizing interlaced scanning for testing a semiconductor memory device
JPH07198790A (ja) 半導体集積論理回路及びネットリスト変換方式
JP3254781B2 (ja) 半導体装置
JPH0256048A (ja) データ転送方法及びデータバッファ装置
KR20010006850A (ko) 스큐 포인터 발생 회로 및 방법
JP2000341256A (ja) エラスティック回路および集積回路
KR100266647B1 (ko) 선입선출메모리의 입출력데이터 제어회로
KR970011584B1 (ko) 자동 테스트 회로
KR0139966B1 (ko) 공통 디바이스 액세스 장치
JPS58182185A (ja) 半導体記憶装置

Legal Events

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

Payment date: 20050422

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee