KR100236538B1 - 선입 선출 메모리 장치 - Google Patents
선입 선출 메모리 장치 Download PDFInfo
- Publication number
- KR100236538B1 KR100236538B1 KR1019970004843A KR19970004843A KR100236538B1 KR 100236538 B1 KR100236538 B1 KR 100236538B1 KR 1019970004843 A KR1019970004843 A KR 1019970004843A KR 19970004843 A KR19970004843 A KR 19970004843A KR 100236538 B1 KR100236538 B1 KR 100236538B1
- Authority
- KR
- South Korea
- Prior art keywords
- signal
- read
- data
- write
- input
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Static Random-Access Memory (AREA)
Abstract
본 발명은 선입력 선출력 메모리 장치를 공개한다. 그 장치는 제1제어신호가 비액티브이고 제2제어신호가 액티브일 때 라이트 신호가 입력되거나 제1제어신호 및 제2제어신호가 모두 비액티브일 때 라이트 신호가 입력되면 데이타 입력신호를 라이트 어드레스에 라이트하고 리드 신호가 입력되면 리드 어드레스에 저장된 데이타를 출력하는 메모리 장치, 제1제어신호가 액티브일 때 라이트 신호가 입력되는 경우와 선입력 선출력 메모리 장치에 데이타가 없음을 알리는 신호가 액티브일 때 리드 신호가 입력되는 경우와 제1제어신호가 비액티브이고 제2제어신호가 액티브일 때 리드 신호와 라이트 신호가 동시에 입력되면 데이타 입력신호를 출력신호로 전달하고 제1제어신호가 비액티브이고 제2제어신호가 액티브이거나 비액티브일 때 리드 신호가 발생하지 않으면 데이타 출력신호를 궤환하여 출력신호로 전달하고 리드 신호가 발생하면 메모리 장치의 출력신호를 출력신호로 전달하기 위한 선택수단, 및 외부로 부터의 클럭신호에 동기되어 선택수단의 출력신호를 저장하고 이전에 저장된 데이타를 데이타 출력신호로 출력하기 위한 플립플롭으로 구성되어 있다. 따라서, 출력 지연시간을 줄일 수 있다.
Description
본 발명은 메모리 장치에 관한 것으로, 특히 선입력 선출력 메모리 장치에 관한 것이다.
선입력 선출력 메모리 장치는 듀얼 포트 메모리 장치를 이용하여 구현할 수 있다. 그러나, 이 경우 일반적으로 메모리 장치의 억세스 타임은 플립플롭 보다 매우 길기 때문에 고속을 요구하는 시스템에는 적합하지 못하고 출력 지연시간이 길다는 문제점이 있었다.
본 발명의 목적은 출력 지연시간이 적은 선입력 선출력 메모리 장치를 제공하는데 있다.
이와같은 목적을 달성하기 위한 본 발명의 선입력 선출력 메모리 장치는 선입력 선출력 메모리 장치가 비어있음을 알리는 신호가 비액티브이고 메모리 장치가 비어있음을 알리는 신호가 액티브일 때 라이트 신호가 입력되거나 상기 선입력 선출력 메모리 장치가 비어있음을 알리는 신호 및 상기 메모리 장치가 비어있음을 알리는 신호가 모두 비액티브일 때 상기 라이트 신호가 입력되면 상기 데이타 입력신호를 라이트 어드레스에 라이트하고 리드 신호가 입력되면 리드 어드레스에 저장된 데이타를 출력하는 메모리 장치, 상기 선입력 선출력 메모리 장치가 비어있음을 알리는 신호가 액티브일 때 상기 라이트 신호가 입력되는 경우와 상기 선입력 선출력 메모리 장치에 데이타가 없음을 알리는 신호가 액티브일 때 상기 리드 신호가 입력되는 경우와 상기 선입력 선출력 메모리 장치가 비어있음을 알리는 신호가 비액티브이고 상기 메모리 장치가 비어있음을 알리는 신호가 액티브일 때 상기 리드 신호와 라이트 신호가 동시에 입력되면 상기 데이타 입력신호를 출력신호로 전달하고 상기 선입력 선출력 메모리 장치가 비어있음을 알리는 신호가 비액티브이고 상기 메모리 장치가 비어있음을 알리는 신호가 액티브이거나 비액티브일 때 상기 리드 신호가 발생하지 않으면 데이타 출력신호를 궤환하여 출력신호로 전달하고 상기 리드 신호가 발생하면 상기 메모리 장치의 출력신호를 출력신호로 전달하기 위한 선택수단, 및 외부로 부터의 클럭신호에 동기되어 상기 선택수단의 출력신호를 저장하고 이전에 저장된 데이타를 상기 데이타 출력신호로 출력하기 위한 플립플롭을 구비한 것을 특징으로 한다.
도1은 본 발명의 선입력 선출력 메모리 장치의 블럭도이다.
이하, 첨부된 도면을 참고로 하여 본 발명의 선입력 선출력 메모리 장치를 설명하면 다음과 같다.
도1은 본 발명의 선입력 선출력 메모리 장치의 블럭도로서, 선입력 선출력 메모리 장치(100)는 듀얼 포트 메모리 장치(10), 멀티플렉서(12), D플립플롭(14), 및 제어회로(16)로 구성되어 있다.
상기 구성에 나타낸 신호들의 정의는 다음과 같다. RAM VACANT는 듀얼 포트 메모리 장치(10)에 데이타가 없음을 알리는 신호로서, 선입력 선출력 메모리 장치에 들어있는 데이타 수가 0이거나, 1인 상태를 말한다. 또한 이 상태는 듀얼 포트 메모리 장치(10)에는 데이타가 없고 플립플롭(14)에는 데이타가 있는 상태이다. WPRT는 듀얼 포트 메모리 장치(10)의 라이트 어드레스 포인터를 나타내는 신호이다. RPTR은 듀얼 포트 메모리 장치(10)의 리드 어드레스 포인터를 나타내는 신호이다. FULL FLAG는 선입력 선출력 메모리 장치(100)가 풀(full)일 때 이를 알려주는 신호이다. EMPTY FLAG는 선입력 선출력 메모리 장치(100)가 비었을 때 이를 알려주는 신호이다. READ신호는 선입력 선출력 메모리 장치(100)에 리드를 요청하는 신호이다. 그리고 WRITE는 선입력 선출력 메모리 장치(100)에 라이트를 요청하는 신호이다.
그리고, 모든 신호들은 "하이"레벨일 때 액티브하다고 가정하고 선입력 선출력 동작을 설명하면 다음과 같다. 선입력 선출력 메모리 장치(100)의 동작의 핵심은 멀티플렉서(12)의 제어와 듀얼 포트 메모리 장치(10)의 어드레스 제어 동작이다.
먼저, 라이트 동작을 설명하면 다음과 같다.
선입력 선출력 메모리 장치(100)가 비어있어서 신호(EMPTY FLAG)가 "1"일 때, 신호(WRITE)가 "하이"레벨일 때 멀티플렉서(12)의 출력신호(W_DOUTNEXT)로 데이타 입력신호(DIN)를 출력한다. 이후, 클럭신호(CK)에 동기되어 신호(W_DOUTNEXT)를 데이타 출력신호(DOUT)로 출력한다. 이때, 신호(WPTR)은 증가되지 않고 바로 전의 신호(WPTR)를 유지한다.
선입력 선출력 메모리 장치(100)에 데이타가 1개 있을 경우, 즉, 신호(EMPTY FLAG)가 "0"이고 신호(RAMVACANT)가 "1"으로 듀얼 포트 메모리 장치(10)에 데이타가 없고 플립플롭(14)에만 데이타가 있을 경우를 말한다. 이 경우에 신호(WRITE)가 "1"이고 신호(READ)가 "0"일 때 현재 신호(WPTR)이 가리키는 메모리 셀에 데이타 입력신호(DIN)를 라이트하고 신호(WPTR)를 "1" 증가한다. 라이트와 리드가 동시에 일어날 때, 즉 신호(WRITE)가 "1"이고 신호(READ)가 "1"인 경우로서 멀티플렉서(12)의 출력신호(W_DOUTNEXT)로 데이타 입력신호(DIN)가 전달된다. 이어 클럭신호(CK)가 입력되면 현재의 플립플롭 데이타가 리드되어 사라지고 동시에 신호(W_DOUTNEXT)가 플립플롭(14)에 라이트되도록 한다. 이때, 메모리 장치(10)의 신호(WPTR)의 변화는 없다.
선입력 선출력 메모리 장치(100)에 데이타가 2개이상 있을 경우, 즉, 신호(EMPTY FLAG)가 "0"이고, 신호(RAMVACANT)가 "0"인 경우를 말하는 것으로, 현재 신호(WPTR)가 가리키는 메모리 셀에 데이타 입력신호(DIN)를 라이트하고 신호(WPTR)를 "1" 증가한다.
다음, 리드 동작을 설명하면 다음과 같다.
선입력 선출력 메모리 장치(100)가 비어있는 경우에 선입력 선출력 메모리 장치(100)로의 리드 동작은 금지된다. 신호(EMPTY FLAG)가 "1"이고 신호(RAMVACANT)가 "1"로 듀얼 포트 메모리 장치(10)에 데이타가 없는 경우를 말한다. 멀티플렉서(12)의 출력신호로 데이타 입력신호(DATAIN)를 전달하여 최초 라이트 동작을 준비한다.
선입력 선출력 메모리 장치(100)에 데이타가 1개 있을 경우, 즉 신호(EMPTY FLAG)가 "0"이고 신호(RAM VACANT)가 "1"로 메모리 장치(10)에 데이타가 없고 플립플롭(14)에만 데이타가 있을 경우를 말한다. 이 경우에 리드 신호(READ)가 "0"일 때는 신호(READ)가 올 때까지 플립플롭(14)의 데이타를 보존해야 하므로 멀티플렉서(12)의 출력신호(W_DOUTNEXT)로 데이타 출력신호(DOUT)가 궤환되도록 멀티플렉서(12)를 제어하고 리드 신호(READ)가 "1"일 때는 신호(W_RAMOUT)가 멀티플렉서(12)의 출력신호(W_DOUTNEXT)로 전달되도록 멀티플렉서(12)를 제어한다. 라이트 신호(WRITE)와 리드 신호(READ)가 모두 "1"일 때, 즉 선입력 선출력 메모리 장치(100)에 데이타가 1개 있을 때, 라이트와 리드 동작이 동시에 일어날 때는 메모리 장치(10)의 동작은 없고 플립플롭(14)에 데이타를 라이트해야 하므로 데이타 입력신호(DIN)를 멀티플렉서(12)의 출력신호(W_DOUTNEXT)로 전달한다.
선입력 선출력 메모리 장치(100)에 데이타가 2개이상 있을 경우, 즉, 신호(EMPTY FLAG)가 "0"이고 신호(RAM VACANT)가 "0"인 경우를 말한다. 이 경우에 리드 신호(READ)가 "0"이면 현재 선입력 선출력 메모리 장치(100)의 출력신호(DOUT)를 보존해야하므로 멀티플렉서(12)의 출력신호(W_DOUTNEXT)로 데이타 출력신호(DOUT)가 궤환되도록 멀티플렉서(12)를 제어한다. 클럭신호(CK)가 입력되어도 신호(RPTR)의 변화는 없다. 리드 신호(READ)가 "1"이면 멀티플렉서(12)의 출력신호(W_DOUTNEXT)로 신호(W_RAMOUT)가 출력되도록 하고, 클럭신호(CK)에 동기되어 플립플롭(14)에 있던 데이타가 리드되어 사라지고 멀티플렉서(12)의 출력신호(W_DOUTNEXT)로 출력된 메모리 출력신호(W_RAMOUT)가 데이타 출력신호(DOUT)로 전달되도록 한다. 이때, 신호(RPTR)를 "1" 증가시키고 듀얼 포트 메모리 장치(10)에서 다음 데이타의 출력을 준비하도록 한다.
따라서, 본 발명의 선입력 선출력 메모리 장치는 출력 지연시간을 줄일 수 있다.
Claims (2)
- 라이트 어드레스 포인터가 가리키는 셀에 외부 입력 데이터를 저장하고, 리드 어드레스 포인터가 가리키는 셀에 저장된 데이터를 출력하는 듀얼 포트 메모리부와; 제어신호에 응답하여 상기 입력 데이터와 상기 듀얼 포트 메모리부의 출력데이터와 이전의 최종 출력 데이터 중 하나를 선택하여 출력하는 선택부와; 외부 클록신호에 동기되어 이전에 저장된 데이터를 상기 최종 출력 데이터로 출력하는 동시에 상기 선택부의 출력 데이터를 저장하는 플립플롭부와; 상기 플립플롭부와 상기 듀얼 포트 메모리부가 모두 비어 있을 때 외부 라이트 신호가 액티브되면 상기 선택부에 상기 입력데이터의 선택을 위한 제어신호를 제공하고, 상기 플립플롭부에는 데이터가 있고 상기 듀얼 포트 메모리부는 비어 있을 때 상기 라이트 신호만 액티브되면 상기 듀얼 포트 메모리부에 상기 입력 데이터가 저장된 후 상기 라이트 어드레스 포인트를 1증가시키고, 외부 리드 신호만 액티브되면 상기 플립플롭에 저장된 데이터가 출력된 후 상기 플립플롭부와 상기 듀얼 포트 메모리부가 모두 비어 있음을 알리는 신호를 액티브시키고, 상기 리드 및 라이트 신호가 동시에 액티브되면 상기 선택부에 상기 입력 데이터의 선택을 위한 제어신호를 제공하고, 상기 리드 및 라이트 신호가 모두 비액티브 상태이면 상기 선택부에 상기 이전의 최종 출력 데이터의 선택을 위한 제어신호를 제공하고, 상기 플립플롭부와 상기 듀얼 포트 메모리부에 모두 데이터가 있을 때 상기 라이트 신호만 액티브되면 상기 듀얼 포트 메모리부에 상기 입력 데이터가 저장된 후 상기 라이트 어드레스 포인터를 1증가시키고, 상기 리드 신호만 액티브되면 상기 선택부에 상기 듀얼 포트 메모리부의 출력 데이터의 선택을 위한 제어신호를 제공한 후 상기 리즈 어드레스 포인터를 1증가시키고, 상기 리드 및 라이트 신호가 동시에 액티브되면 상기 선택부에 상기 듀얼 포트 메모리부의 출력데이터의 선택을 위한 제어신호를 제공한 후 상기 리드 및 라이트 어드레스 포인터를 1씩 증가시키고, 상기 리드 및 라이트 신호가 모두 비액티브 상태이면 상기 선택부에 상기 이전의 최종 출력 데이터의 선택을 위한 제어신호를 제공하는 제어부를 구비한 것을 특징으로 하는 선입 선출 메모리 장치.
- 제1항에 있어서, 상기 제어부는 상기 플립플롭부가 비어 있을 때 리드 동작을 금지하는 것을 특징으로 하는 선입 선출 메모리 장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970004843A KR100236538B1 (ko) | 1997-02-18 | 1997-02-18 | 선입 선출 메모리 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970004843A KR100236538B1 (ko) | 1997-02-18 | 1997-02-18 | 선입 선출 메모리 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19980068323A KR19980068323A (ko) | 1998-10-15 |
KR100236538B1 true KR100236538B1 (ko) | 2000-01-15 |
Family
ID=19497314
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970004843A KR100236538B1 (ko) | 1997-02-18 | 1997-02-18 | 선입 선출 메모리 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100236538B1 (ko) |
-
1997
- 1997-02-18 KR KR1019970004843A patent/KR100236538B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR19980068323A (ko) | 1998-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4507760A (en) | First-in, first-out (FIFO) memory configuration for queue storage | |
US5365485A (en) | Fifo with fast retransmit mode | |
US5841722A (en) | First-in, first-out (FIFO) buffer | |
EP0239937B1 (en) | Serial communications controller | |
US5884099A (en) | Control circuit for a buffer memory to transfer data between systems operating at different speeds | |
EP0273083B1 (en) | Non-locking queueing mechanism | |
US5587953A (en) | First-in-first-out buffer memory | |
KR0165515B1 (ko) | 그래픽 데이터의 선입선출기 및 선입선출 방법 | |
US5592629A (en) | Apparatus and method for matching data rates to transfer data between two asynchronous devices | |
EP1124179A1 (en) | An apparatus for signal synchronization between two clock domains | |
EP0606600B1 (en) | Improved single and multistage stage FIFO designs for data transfer synchronizers | |
WO1996041268A1 (en) | Reducing cumulative time delay in synchronizing transfer of data between two mutually asynchronous buses | |
US5274600A (en) | First-in first-out memory | |
US5151999A (en) | Serial communications controller for transfer of successive data frames with storage of supplemental data and word counts | |
CA1222061A (en) | Store buffer device in digital computer system | |
US7870310B2 (en) | Multiple counters to relieve flag restriction in a multi-queue first-in first-out memory system | |
US6349101B1 (en) | Cell buffer circuit for an ATM cells to SDH-based data conversion system | |
KR100236538B1 (ko) | 선입 선출 메모리 장치 | |
JPS6423340A (en) | Ring-shaped network device | |
US6289421B1 (en) | Intelligent memory devices for transferring data between electronic devices | |
US6339558B1 (en) | FIFO memory device and FIFO control method | |
EP0299264A2 (en) | A byte queing/dequeuing apparatus for handling variable-length data words/instructions in a single clock cycle | |
US5732011A (en) | Digital system having high speed buffering | |
KR100221297B1 (ko) | 개량된 선입선출형 버퍼 | |
KR100484134B1 (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: 20071001 Year of fee payment: 9 |
|
LAPS | Lapse due to unpaid annual fee |