[go: up one dir, main page]

KR920000401B1 - 데이터 버퍼링회로 - Google Patents

데이터 버퍼링회로 Download PDF

Info

Publication number
KR920000401B1
KR920000401B1 KR1019890009082A KR890009082A KR920000401B1 KR 920000401 B1 KR920000401 B1 KR 920000401B1 KR 1019890009082 A KR1019890009082 A KR 1019890009082A KR 890009082 A KR890009082 A KR 890009082A KR 920000401 B1 KR920000401 B1 KR 920000401B1
Authority
KR
South Korea
Prior art keywords
address
host
buffer memory
buffer
data
Prior art date
Legal status (The legal status 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 status listed.)
Expired
Application number
KR1019890009082A
Other languages
English (en)
Other versions
KR910001751A (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 KR1019890009082A priority Critical patent/KR920000401B1/ko
Publication of KR910001751A publication Critical patent/KR910001751A/ko
Application granted granted Critical
Publication of KR920000401B1 publication Critical patent/KR920000401B1/ko
Expired legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store

Landscapes

  • Memory System (AREA)
  • Bus Control (AREA)

Abstract

내용 없음.

Description

데이터 버퍼링회로
제1도는 본 발명에 따른 회로도.
제2도는 제2도 메모리의 맵.
* 도면의 주요부분에 대한 부호의 설명
12 : 버퍼메모리 14 : 호스트 어드레스 디코더
24 : 제1어드레스 카운터 26 : 제1버퍼
28 : 수신어드레스 디코더 38 : 제2어드레스 카운터
40 : 제2버퍼 48 : 어드레스 선택기
50 : 비교기 692 : 엠프티 플레그 발생회로
본 발명은 데이터 버퍼링 회로에 관한 것으로, 특히 하드웨어적으로 프로세서와 프로세서간에 데이터를 버퍼링하는 회로에 관한 것이다.
통상적으로 컴퓨터 시스템 또는 디지털 시스템에서는 특정 마이크로 프로세서로부터 또다른 프로세서는 데이터를 전송하거나, 외부의 프로세서의 요구에 의해 데이터를 버퍼링하기 위한 기능을 가지고 있다.
종래의 컴퓨터 시스템에서는 상기와 같은 데이터 버퍼링기능을 소프트웨어적으로 처리함으로써 마이크로 프로세서의 프로그램 로드를 증가시키는 문제점이 있어왔다. 또 데이터 버퍼링을 소프트적으로 처리함으로 효율이 매우 낮았다.
따라서 본 발명의 목적은 호스트 마이크로 프로세서로부터의 데이터를 메모리에 일시적으로 보관하였다가 외부 프로세서가 이 데이터를 필요로 할 때마다 저장된 데이터를 버퍼링 출력하는 데이터 버퍼링 회로를 제공함에 있다.
이하 본 발명을 첨부한 도면을 참조하여 설명한다.
제1도는 본 발명에 따른 회로도로서, 소정상태의 제어 및 어드레싱에 의해 데이터를 억세스하는 버퍼메모리(12)와, 호스트 마이크로 프로세서(이하 호스트라함)의 제어신호(IOW, ALE)에 의해 호스트 어드레스를 디코딩하여 출력하는 호스트 어드레스 디코더(14)와, 호스트의 라이트 데이터를 상기 버퍼메모리(12)에 라이트 데이터로 버퍼링하는 제1버퍼(26)와, 상기 호스트 어드레스 디코더(14)의 출력을 카운트하여 상기 제1버퍼(26)의 출력을 상기 버퍼메모리(12)에 순차라이트 하기 위한 어드레스를 발생하는 제1어드레스 카운터(24)와, 수신프로세서의 제어신호(IOR, ALE)에 의하여 상기 수신프로세서의 어드레스를 디코딩하여 출력하는 수신어드레스 디코더(28)와, 상기 수신어드레스 디코더(28)의 출력을 카운트하여 상기 버퍼메모리(12)의 리이드 어드레스를 순차적으로 발생하는 제2어드레스 카운터(38)와, 상기 제2어드레스 카운터(38)의 어드레싱에 의해 상기 버퍼메모리(12)로부터 출력되는 데이터를 상기 수신마이크로 프로세서로 버퍼링하는 제2버퍼(40)와, 상기 제1, 제2어드레스 카운터(24)(38)의 출력어드레스를 소정제어에 의해 멀티플렉싱하여 상기 버퍼메모리(12)의 어드레스 신호로 출력하는 어드레스 선택기(48)와, 상기 제1, 제2어드레스 카운터(24)(38)의 출력을 비교하여 출력하는 비교기(50)와, 상기 비교기(50)의 비교출력과 상기 제1, 제2어드레스 카운터(24)(38)의 최상위 비트를 입력하여 상기 버퍼메모리(12) 상태인 엠프티(Empty) 신호를 출력하는 엠프티 플레그 발생회로(62)로 구성된다.
상기한 구성중 제1, 제2어드레스 카운터(24)(38)는 호스트 어드레스 디코더(14)와 수신어드레스 디코더(28)의 출력을 입력받아 반전 출력하는 인버터와, 상기 인버터의 출력을 카운트하는 4비트 2진 카운터가 3개 금속접속 구성된다.
그리고 어드레스 선택기(48)은 8입력 4출력 멀트플렉서(42)(44)(46)로 구성되어 수신프로세서의 제어에 의해 입력어드레스를 상기 버퍼메모리(12)에 입력시키게 되어있다. 즉 상기 멀티플렉서(42,44,46)들은 호스트로부터의 데이터를 저장하기 위하여 호스트쪽 카운터인 18,20,22를 버퍼메모리(12)쪽으로 연결시켜 주며, 수신프로세서가 버퍼메모리(12)로부터 데이터를 꺼내 갈때에는 반대편인 제2어드레스 카운터(38)의 출력을 버퍼메모리(12)로 연결시켜 주도록 동작하게 되어있다.
엠프티 플레그 발생회로(62)는 인버터(54), 익스크루시브 오아게이트(이하 EX-OR라함)(52), 앤드게이트(56)(58), 오아게이트(60)로 구성되어 있다. 상기 엠프티 플레그 발생회로(62)는 버퍼메모리(12)내에 데이터가 들어 있는지 비었는지를 나타내는 로직으로 이 로직의 출력인 EMPTY가 로우가 되면 버퍼가 비었다는 것을 나타내고 하이가 되면 버퍼에 데이터가 들어 있다는 것을 나타낸다.
제2도는 제1도 버퍼메모리의 메모리 영역으로써, 제1, 제2어드레스 카운터(24)(38)의 동작에 다른 메모리 어드레스를 설명하기 위한 것이다.
이하 상기한 제2도를 참조하여 본 발명의 동작을 설명함에 있어 초기 엠프티(Empty)가 “로우”, 호스트의 입력인(BUSYA)가 “로우”상태라고 가정하여 설명한다. 지금 호스트가 버퍼메모리(12)에 데이터를 저장하기 위하여 특정 어드레스 및 어드레스래치 인에이블(ALE)를 호스트 어드레스 디코더(14)로 출력하고 저장할 데이터와 라이트신호(IOW)를 상기 어드레스 디코더(14), 제1버퍼(26) 및 버퍼메모리(12)에 입력 시키면, 상기 호스트 어드레스 디코더(14)는 라이트신호(IOW)가 입력시마다 디코딩신호를 출력한다.
이때 제1버퍼(26)는 상기 호스트 어드레스 디코더(14)의 출력 “로우”에 의해서 입력데이터를 버퍼메모리(12)로 입력시키게 된다. 또 인버터(16), 카운터(18-22)로 구성된 제1어드레스 카운터(24)는 어드레스 디코더(14)의 출력을 카운트하여 비교기(50) 및 어드레스 선택기(48)에 입력시킨다. 이때 어드레스 선택기(48)내 멀티플렉서들(42-46)은 상기 어드레스 카운터(24)의 출력을 선택함으로써 상기 제1카운터(24)의 라이트 어드레싱에 의해 제1버퍼(26)를 통한 데이터가 버퍼메모리(12)에 순차적으로 기록된다.
한편 상기와 같이 버퍼메모리(12)에 저장된 데이터는 수신프로세서가 필요에 의해 리이드(Read)하여 가는데, 수신프로세서는 먼저 오아게이트(60)의 출력인 엠프티를 읽어 버퍼메모리(12)의 상태를 읽어보고 리이드를 시작한다.
엠프티의 로직이 “하이”인 경우에 수신프로세서는 라인(63)(64)로 “하이”신호를 출력하여 어드레스 선택기(48)가 제2어드레스 카운터(38)의 출력을 선택 출력도록 한다. 그리고 수신프로세서는 수신어드레스 디코더(28)로 특정 어드레스와 어드레스래치 인에이블(ALE) 출력하고 소정주기로 리이드(IOR) 신호를 출력하면 버퍼메모리(12)의 저장데이터를 리이드할 수 있게된다.
이때 수신어드레스 디코더(28)는 리이드신호가 입력할 때 마다 디코딩신호 “로우”를 출력하여 제2버퍼(40)를 소정주기로 인에이블 시킨다. 한편 인버터(30), 카운터(32-36)로 구성된 제2어드레스 카운터(38)는 상기 어드레스 디코더(28)가 디코딩 신호를 출력시마다 이를 인크리스 카운팅하여 버퍼메모리(12)의 순차리이드 어드레스를 발생한다.
상기 제2어드레스 카운터(38)의 출력어드레스는 비교기(50)로 입력됨과 동시에 어드레스 선택기(48)를 통하여 버퍼메모리(12)에 입력된다.
따라서 버퍼메모리(12)는 제2어드레스 카운터(38)의 어드레싱에 의한 데이터를 제2버퍼(40)를 통하여 수신프로세서로 버퍼링하게 된다.
이때 상기 제1, 제2어드레스 카운터(24)(38)에 의해 어드레싱되는 버퍼메모리(12)의 어드레스 영역을 살피면 제2도와 같다.
제2도에 있어서 헤드포인터(HDP)(HEAD POINTER)는 제1어드레스 카운터(24)로부터의 어드레스를 나타내며 테일포인터(TP)(TATL POINTER)는 제2어드레스 카운터(38)로부터의 어드레스를 나타낸다.
즉, 제1버퍼(26)를 통하여 호스트로부터 들어오는 데이터는 헤드포인터(HDP)에 의하여 어드레싱되며 데이터가 들어옴에 따라 헤드포인터(HDP) 어드레스가 증가하게 된다. 또한 테일포인터(TP)는 수신어드레스 디코더(28)를 통하여 수신프로세서가 꺼내갈 데이터를 지정하게 되며 데이터를 꺼내감에 따라 테일포인터 어드레스는 증가하게 된다.
이와같은 버퍼메모리의 동작원리에 따라 버퍼메모리에 남아있는 데이터는 제2도의 빗금친 부분이 되며, 헤드포인터(HDP)의 값이 버퍼메모리의 끝부분인 7FFH가 되면 그 다음에는 롤오버(ROLL OVER)가 되어 다시 0(Zero)가 된다.
이때 헤드포인터(HDP)만 롤오버가 되면 상기 테일포인터(TP)의 값이 상기 헤드포인터(HDP)의 값보다 커지게 되므로 버퍼메모리(12)가 비었는지를 나타내는 엠프티신호를 발생하여야 하는데 이는 전술한 엠프티 발생회로(62)에서 발생한다.
여기서 버퍼메모리(12)가 비었는지를 나타내는 엠프티 신호는 테일포인터(TP)가 증가하여 헤드포인터(HDP)와 일치하였을 때 발생되는 신호로 엠프티 신호가 로우로 되면 이 신호를 수신프로세서가 체크하여 데이터 리이드(버퍼로부터 데이터를 꺼내가는것)를 중지하여야 한다.
또 제1, 제2어드레스 카운터(24)(38)의 최상위 비트는 각각의 카운터가 롤오버 되었을 때 0에서 1로 또는 반대로 바뀌게 되며 이 두 개의 비트는 익스클루시브 오아게이트(52)의 입력으로 가해져 서로 같을때에는 로우를 출력한다.
즉, 두 어드레스 카운터(24)(38)가 모두 롤오버된 상태이거나 또는 모두 아니거나 할 때에는 비교기(50)의 출력핀 중 A〉B핀의 앤드게이트(56)에 단자로 입력되며, 익스클루시브 오아게이트(52)의 입력이 서로 다를때에는 즉, 두 어드레스 카운터(24)(38)중 어느 하나가 롤오버된 상태일 때에는 비교기(50)의 A〈B핀이 앤드게이트(58)에 입력된다. 이와같은 상태를 알기 쉽게 설명하기 위하여 제2a와 b도로 나타내었으며 여기서 a도로는 두 포인터가 모두 롤오버 되거나 모두 안되거나 한상태로 빗금친 부분이 데이터가 있는 부분을 나타내며, b도는 두 포인터중 하나가 롤오버된 상태로 역시 빗금친 부분이 데이터가 있을 부분을 나타낸다.
미설명라인 63,64의 비지신호는 버퍼메모리(12)가 호스트와 수신프로세서에 의하여 동시에 억세스(ACCESS)되는 것을 방지하기 위한 것으로 BISY A신호는 호스트가 메모리(12)를 억세스할 때 로우로 만들어 수신프로세서가 억세스하지 않도록 하기 위한 것이다. 또 BUSY B신호는 수신프로세서가 메모리를 억세스할 때 호스트 억세스를 방지하기 위한 것이다.
따라서 호스트는 외부 프로세서의 데이터 요청에 관계없이 외부로 보낼 데이터를 버퍼메모리(12)에 기록한 후 다른일을 할 수 있게 되므로 효율을 향상시킬 수 있게되며 외부 프로세서는 호스트로부터 받을 데이터를 필요할 때 마다 이 버퍼메모리에서 꺼내가면 되는 것이다.
상술한 바와같이 본 발명은 프로세서와 프로세서간의 데이터 버퍼링을 하는 웨어로 수행함으로 프로세서의 소프트웨어의 로드를 줄일 수 있어 프로세서의 효율을 증가시킬 수 있는 이점이 있다.

Claims (1)

  1. 호스트 프로세서와 수신프로세서간의 데이터 버퍼링 회로에 있어서, 소정상태의 제어 및 어드레싱에 의해 데이터를 억세스하는 버퍼메모리(12)와, 호스트 마이크로 프로세서의 제어신호(IOW, ALE)에 의해 호스트 어드레스를 디코딩하여 출력하는 호스트 어드레스 디코더(14)와, 호스트 마이크로 프로세서의 라이트 데이터를 상기 버퍼메모리(12)에 라이트 데이터로 버퍼링하는 제1버퍼(26)와, 상기 호스트 어드레스 디코더(14)의 출력을 카운트하여 상기 제1버퍼(26)의 출력을 상기 버퍼메모리(26)에 순차라이트 하기 위한 어드레스를 발생하는 제1어드레스 카운터(24)와, 수신프로세서의 제어신호(IOR,ALE)에 의하여 상기 수신프로세서의 어드레스를 디코딩하여 출력하는 수신어드레스 디코더(28)와, 상기 수신어드레스 디코더(28)의 출력을 카운트하여 상기 버퍼메모리(12)의 리이드 어드레스를 순차적으로 발생하는 제2어드레스 카운터(38)와, 상기 제2어드레스 카운터(38)의 어드레싱에 의해 상기 버퍼메모리(12)로부터 출력되는 데이터를 상기 수신마이크로 프로세서로 버퍼링하는 제2버퍼(40)와, 상기 제1, 제2어드레스 카운터(24)(38)의 출력 어드레스를 소정제어에 의해 멀티플렉싱하여 상기 버퍼메모리(12)의 어드레스 신호로 출력하는 어드레스 선택기(48)와, 상기 제1, 제2어드레스 카운터(24)(38)의 출력을 비교하여 출력하는 비교기(50)와, 상기 비교기(50)의 비교출력과 상기 제1, 제2어드레스 카운터(24)(38)의 최상위 비트를 입력하여 상기 버퍼메모리(12)상태인 엠프티(Empty)신호를 출력하는 엠프티 플레그 발생회로(62)로 구성됨을 특징으로 하는 회로.
KR1019890009082A 1989-06-29 1989-06-29 데이터 버퍼링회로 Expired KR920000401B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019890009082A KR920000401B1 (ko) 1989-06-29 1989-06-29 데이터 버퍼링회로

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019890009082A KR920000401B1 (ko) 1989-06-29 1989-06-29 데이터 버퍼링회로

Publications (2)

Publication Number Publication Date
KR910001751A KR910001751A (ko) 1991-01-31
KR920000401B1 true KR920000401B1 (ko) 1992-01-13

Family

ID=19287591

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019890009082A Expired KR920000401B1 (ko) 1989-06-29 1989-06-29 데이터 버퍼링회로

Country Status (1)

Country Link
KR (1) KR920000401B1 (ko)

Also Published As

Publication number Publication date
KR910001751A (ko) 1991-01-31

Similar Documents

Publication Publication Date Title
US5587953A (en) First-in-first-out buffer memory
US4598362A (en) Buffer apparatus for controlling access requests among plural memories and plural accessing devices
US7251188B2 (en) Memory access interface for a micro-controller system with address/data multiplexing bus
US5073969A (en) Microprocessor bus interface unit which changes scheduled data transfer indications upon sensing change in enable signals before receiving ready signal
US6415374B1 (en) System and method for supporting sequential burst counts in double data rate (DDR) synchronous dynamic random access memories (SDRAM)
GB1482688A (en) Storage configuration comprising a main store and a buffer store
EP0282248B1 (en) Block access system using cache memory
US4922457A (en) Serial access memory system provided with improved cascade buffer circuit
EP0057096A2 (en) Information processing unit
KR920000401B1 (ko) 데이터 버퍼링회로
US5349693A (en) Control circuit for digital data transfer
US5396611A (en) Microprocessor use in in-circuit emulator having function of discriminating user's space and in-circuit emulator space
US5115498A (en) Local memory fast selecting apparatus including a memory management unit (mmu) and an auxiliary memory
US20020188771A1 (en) Direct memory access controller for carrying out data transfer by determining whether or not burst access can be utilized in an external bus and access control method thereof
US6079623A (en) Apparatus for mapping memory PCMCIA cards into I/O window address space to select an internal register and perform read and write operations using an index mechanism
US5479165A (en) Two-dimensional coding apparatus
KR940003632B1 (ko) 마이크로 프로세서의 액세스 메모리 영역 확장 회로 및 방법
KR0162295B1 (ko) 데이타버스 확장회로
KR100243185B1 (ko) 공유 메모리를 통한 프로세서간의 데이터 통신 장치 및 방법
KR970000140Y1 (ko) Rtc 인터페이스 회로
KR900003527Y1 (ko) 데이타 송수신 집적회로용 디엠에이회로
JP3242474B2 (ja) データ処理装置
KR890000304B1 (ko) 듀얼포트 메모리 장치
KR0182644B1 (ko) 메모리의 읽기 및 쓰기제어장치
KR970008526B1 (ko) 시스템간의 데이타 공유를 위한 인터페이스 장치

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

R17-X000 Change to representative recorded

St.27 status event code: A-3-3-R10-R17-oth-X000

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

G160 Decision to publish patent application
PG1605 Publication of application before grant of patent

St.27 status event code: A-2-2-Q10-Q13-nap-PG1605

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 5

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 6

FPAY Annual fee payment

Payment date: 19971226

Year of fee payment: 7

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 7

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

St.27 status event code: A-4-4-U10-U13-oth-PC1903

Not in force date: 19990114

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

PC1903 Unpaid annual fee

St.27 status event code: N-4-6-H10-H13-oth-PC1903

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 19990114

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

R17-X000 Change to representative recorded

St.27 status event code: A-5-5-R10-R17-oth-X000

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000