KR950002306B1 - Fifo를 이용한 보드간 데이타 전송장치 및 방법 - Google Patents
Fifo를 이용한 보드간 데이타 전송장치 및 방법 Download PDFInfo
- Publication number
- KR950002306B1 KR950002306B1 KR1019920012090A KR920012090A KR950002306B1 KR 950002306 B1 KR950002306 B1 KR 950002306B1 KR 1019920012090 A KR1019920012090 A KR 1019920012090A KR 920012090 A KR920012090 A KR 920012090A KR 950002306 B1 KR950002306 B1 KR 950002306B1
- Authority
- KR
- South Korea
- Prior art keywords
- board
- data
- fifo
- signal
- transmission unit
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
- Bus Control (AREA)
- Computer And Data Communications (AREA)
Abstract
내용 없음.
Description
제 1 도는 본 발명에 따른 FIFO를 이용한 보드간 데이타 전송장치의 구성도.
제 2 도는 본 발명에 의한 보드의 구성도.
제 3 도는 본 발명에 따른 전송부의 구성도.
제 4 도는 본 발명에 따른 흐름도.
* 도면의 주요부분에 대한 부호의 설명
1, 3 : 보드 2 : 전송부
4 : CPU 5 : DMAC
6 : PIO 7 : ROM
8 : RAM 9, 15 : 논리합 게이트
10, 18 : 논리곱 게이트 11, 16 : 인버터
12, 17 : 플립플롭 13 : FIFO
본 발명은 그룹 4 팩시밀리장치에서 화상입력부 보드에서 읽은 데이타를 중앙제어부 보드로 전송하는 FIFO(First-In First-Out)를 이용한 보드간 데이타 전송장치 및 방법에 관한 것이다.
종래의 보드간 데이타 전송법을 두 보드사이에 공유메모리를 두어 서로 번갈아 억세스함으로서 데이타를 전송하는 방법, 듀얼 포트(DUAL PORT)메모리를 사용하여 양쪽 보드가 동시에 억세스 가능하게 하는 방법 및 1바이트의 래치를 이용하여 한 바이트씩 데이타를 전송하는 방법이 있다.
그러나 상기 종래의 방법에 있어서 공유메모리를 사용하는 방법은 한 보드가 메모리를 사용하고 있으면 다른 보드는 메모리의 사용이 불가능하여 그룹 4팩시밀리와 같은 고속으로 화상을 읽는 경우에는 읽은 화상을 실시간으로 전송하는데는 문제가 없으나 회로가 복잡하며 가격이 비싸다는 문제점을 가지고 있다. 1바이트의 래치를 이용하여 DMA(direct memory access) 방식으로 데이타를 전송하는 경우에는 DMA 방식이 블락 트랜스퍼인 경우 두 보드간의 DMA 타이밍을 정확히 맞추어야 되는 문제점이 있으며, 싱글 바이트 트랜스퍼인 경우는 바이트 사이의 전송을 위한 소요시간 필요하기 때문에 실시간 데이타 전송에는 문제점이 있다.
상기 문제점을 개선하기 위하여 안출된 본 발명은 FIFO를 사용하여 보드의 메모리 공간을 효율적으로 사용하고, 데이타의 실시간 처리를 위하여 블락 트랜스퍼 방식이 DMA를 사용하고 있는 FIFO를 이용한 보드간 데이타 전송장치 및 방법을 제공함에 그 목적이 있다.
따라서 상기 목적을 달성하기 위하여 본 발명은 FIFO를 이용한 보드간 데이타 전송장치에 있어서, 데이타를 전송하고자 하는 제 1 보드 1, 보드 1에 연결되어 상기 보드 1에서 오는 데이타를 저장하여 제 2 보드 2로 필요한 신호를 발생하는 전송부, 상기 전송부에 연결되어 데이타를 가지고 가는 제 2 보드 2으로 구성되는 것을 특징으로 한다.
또한 본 발명은 FIFO를 이용한 데이타 전송 방법에 있어서, 제 1 보드에 전송할 데이타가 있는지 검사하여 없으면 복귀, 있으면 전송부의 FIFO에 일정크기의 블럭으로 모아 두는 제 1 단계, 상기 제 1 단계 후에, 상기 FIFO가 풀(Full)인가를 검사하여 풀리 아니면 복귀하여 계속 상기 FIFO에 데이타를 전송하고, 풀이면 상기 전송부 제 2 보드로 데이타 요구 신호(DRQ)를 발생하는 제 2 단계, 상기 제 2 단계 후에, 제 2 보드가 상기 FIFO에서 데이타를 읽고 상기 FIFO가 엠프티(Empty)인가를 검사하여 엠프티가 아니면 복귀하여 계속 상기 FIFO에서 데이타를 읽는 제 3단계, 및 상기 제 3 단계 후에 상기 제 3 단계 후에 상기 FIFO가 엠프티이면 상기 전송부는 상기 제 1 보드에 인터럽트 신호(INT)를 발생하여 상기 제 1 보드가 인터럽트 클리어 신호(/INT-CLR)를 발생하여 전송을 완료하고 다음 데이타가 있는가를 검사하는 것을 특징으로 한다.
이하, 첨부된 도면을 참조하여 본 발명의 일실시예를 상세히 설명한다.
제 1 도는 본 발명에 따른 FIFO를 이용한 보드간 데이타 전송장치의 구성도, 제 2 도는 본 발명에 따른 보드의 구성도, 제 3 도는 본 발명에 따른 전송부의 구성도로서 도면에서 1, 3은 보드, 2는 전송부, 4는 CPU, 5는 DMAC, 6은 PIO, 7는 ROM, 8은 ROM, 9, 15는 논리합게이트, 10, 18는 논리곱 게이트, 11, 16는 인버터, 12, 17는 플립플롭, 13는 FIFO를 각각 나타낸다.
먼저 제 1 도는 제 1 보드(1)의 데이타를 전송부(2)를 통해 제 2 보드(3)에 전송하는 개략적인 전체 구성도로서, 데이타를 전송하고자하는 제 1 보드(1), 상기 제 1 보드(1)에 연결되어 상기 제 1 보드(1)에서 오는 데이타 저장하여 제 2 보드(3)로 필요한 신호를 발생하는 전송부(2), 상기 전송부(2)에 연결되어 데이타를 가지고 가는 제 2 보드(3)로 구성되어 있는데 이에 대한 세부 설명은 제 2 도 및 제 3 도에 각각 상세히 설명한다.
제 2 도와 같이 보드(1, 3)은 기억된 프로그램의 출력만이 가능한 ROM(7), 데이타를 기억하는 RAM(8), 주변기기를 연결시켜주는 PIO(parallel input/out put interface)(6), 주변장치와 주기억장치 사이에 데이타를 입출력할 때 중앙처리장치를 거치지 않고 주변장치에서 직접 기억장치로 데이타를 입출력하는 DMAC(Direct Memory Accoss Controller)와 각각 버스로 연결된 CPU(4)로 구성되어져 있다.
그리고 상기와 같이 구성된 보드(1, 3)사이의 데이타를 전송하게 되는 전송부를 제 3 도를 통하여 자세히 설명한다.
제 1 보드(1)로부터의 데이타 버스는 FIFO(13)의 데이타 입력단자(D0-D7)와 연결되고, 쓰기신호 (/ WR ; 액티브 상태시 로우)와 제어신호(/CS)는 논리합 게이트(9)를 거쳐 그 결과를 상기 FIFO(13)의 /WR단자에 입력시키고, 리세트 신호(/REST)와 클리어 신호(/CLR)는 논리곱 게이트(10)에 입력되어 상기 FIFO(13)의 리세트 단자(/RS)에 입력되고, 또한 상기 클리어 신호(/CLR)는 논리곱 게이트(18)의 일단에 입력되고, 인터럽트 클리어(/INT-CLR)는 플립플롭(12)를 리세트한다.
그리고 제 2 보드(2)로부터의 읽기신호(/RD)는 상기 FIFO(13)의 읽기단자(/RD)에 연결되고, 데이타버스는 버퍼(14)를 통하여 상기 FIFO(13)의 데이타 출력단자(Q1-Q7)에 연결되며, 어드레스 인에이블 신호(Address enable, 이하 AEN이라 칭함)는 인버터(16)를 통해 반전되어 논리합 게이트(15)의 일단에 입력되고 상기 논리합 게이트(15)의 타측 일단은 데이타 인식클럭(Data Acknowledge Clock ; 이하 /DACK라 칭함)이 입력되어 그 결과를 상기 버퍼(14)에 입력되어 상기 버퍼(14)를 인에이블 시킨다.
그리고 상기 제 1 보드(1)로부터의 /CLR 신호는 상기 제 2 보드(3)의 DACK신호와 함께 입력되어 그 결과를 플립플롭(17)의 리세트단에 입력하게 되며 상기 FIFO(13)의 풀플레그(/FF)는 상기 플립플롭(17)을 프리세트하여 데이타 요구신호(DRQ)를 상기 제 2 보드(3)로 출력하게 한다. 또한 상기 FIFO(13)의 엠프티 플래그(/EF)단자의 출력신호는 인버터(11)를 통해 반전되어 상기 플립플롭(12)의 클럭단자에 입력되며 상기 플립플롭(12)는 상기 제 1 보드 (1)로 인터럽트신호(INT)를 출력한다.
상기와 같이 구성된 본 발명의 작용상태를 자세히 설명하면 다음과 같다.
제 1 보드(1)에서 전송하고자하는 데이타가 발생되면 상기 제 1 보드(1)는 데이타의 양이 일정량 이상이 될 때까지 데이타를 RAM(8)에 보관한다. 데이타가 일정량 이상이 상기 제 1 보드(1)는 데이타를 블락 트랜스퍼 DMA 방식으로 전송부(2)의 FIFO(13)로 전송한다. 이때 전송되는 데이타의 양은 FIFO(13)가 풀(FULL)이 되는 일정량이다. FIFO(13)가 풀이 되면 전송부(2)는 제 2 보드(3)로 DMA 요구신호(DRQ)를 발생한다. 상기 제 2 보드(3)는 이 DRQ 신호를 받으면 전송부(2)의 FIFO(13)에서 데이타를 DMA 방식으로 읽어간다. 제 2 보드(3)가 FIFO(13)에 있는 데이타를 모두 가지고 가면 전송부(2)는 보드(1)으로 데이타 전송의 종료가 끝났음을 알리는 인터럽트 신호(INT)를 보낸다. 제 1 보드(1)은 제 2 보드(3)가 데이타를 가지고 가는 동안에 계속하여 발생되는 데이타를 RAM(8)에 저장한다.
제 1 보드(1)은 INT 신호가 들어오면 PIO(6)의 포트를 사용하여 /INT-CLR 신호를 발생하여 INT 신호를 클리어시키고 RAM(8)에 있는 데이타중 일정량을 다시 전송부(2)로 보낸다. 이러한 데이타 전송과정이 보드1(1)에서 전송하고자 하는 데이타가 없을 때까지 반복된다.
그리고 제 1 보드(1)은 데이타를 전송하기에 앞서 FIFO(13)의 읽기 및 쓰기 포인터를 초기화하기 위하여 신호를 로우로 한다. 상기 /CLR이 로우가 되면 FIFO(13)의 리세트 단자(/RS)는 논리곱 게이트(10)을 거쳐 로우로 된다. 또한, 상기 /CLR 신호는 논리곱 게이트(18)의 출력을 로우하면 플립플롭(17)를 클리어하여 출력 DRQ 신호를 로우로 한다. 보드 1(1)이 데이타를 FIFO(13)로 전송할 때에는 논리합 게이트(9)의 출력이 FIFO(13)의 쓰기단자(/WR)에 연결되어 데이타가 FIFO(13)로 쓰여진다. FIFO(13)가 풀이되면 풀-플래그(/FF)가 하이에서 로우로 변한다. 상기 /FF 로우가되면 플립플롭(17)은 프리세트되어 출력신호 DRQ는 로우에서 하이로 변화한다. 보드2(3)로 DMA 요구신호를 보낸다. 보드2(3)은 DMA 요구신호(DRQ)를 받으면 데이타 인식 클럭을 (/DACK) 하이에서 로우로 변화시키면서 FIFO(13)내에 있는 데이타를 블랙 트랜스퍼 DMA 방식으로 가져간다. /DACK가 로우로 되면 논리곱 게이트(18)의 출력이 로우로 되어 플립플롭(17)을 클리어해 출력 DRQ를 하이에서 로우로 변환시킨다. 제 2 보드(3)의 DMA 전송중에는 버퍼(14)는 인에이블되어 FIFO(13)내의 데이타가 제 2 보드(3)의 RAM(3)으로 전송된다. DMA 전송중에는 AEN신호는 하이로 되어 있다가 DMA전송이 끝나면 로우로 된다. 제 2 보드(3)가 FIFO(13)내의 데이타를 모두 가져가면 FIFO(13)의 엠프티플래그(/EF)가 하이에서 로우로 변화한다. 상기 /EF가 하이에서 로우로 변하면 플립플롭(12)의 출력은 로우에서 하이로 되어 제 1 보드(1)로 데이타 전송이 끝났다는 인터럽트 신호(INT)를 발생한다. 제 1 보드(1)는 상기 INT 신호를 받으면 /INTCLR를 로우로 하여 INT 신호를 클리어하고 다음 데이타를 전송부(2)로 보낸다.
또한 본 발명의 구성에 따른 전송방법을 첨부된 도면 제 4 도를 참조하여 자세히 설명하면, 제 4 도는 본 발명에 따른 흐름도이다.
제 1 보드(1)에 전송할 데이타가 있는지 검사하여 없으면 복귀한다(41). 그리고 데이타가 있으면 제 1 보드(1)의 데이타를 DMA 방식으로 전송부(2)의 FIFO(13)에 전송한다(42). 그리고 상기 전송부(2)의 상기 FIFO(13)가 풀이 아니면 계속 데이타를 받도록 복귀한다(43).
상기 FIFO(13)가 풀이면 상기 전송부(2)는 제 2 보드(2)로 DRQ 신호를 발생한다(44). 상기 DRQ 신호를 받은 제 2 보드(3)는 DMA 방식으로 상기 FIFO(13)에서 데이타를 읽는다(45). 이때 상기 FIFO(13)가 엠프티가 되지 않으면 계속 상기 FIFO(13)에서 데이타를 읽는 전단계로 복귀한다(46). 이어서 상기 FIFO(13)가 엠프티가 되면은 상기 전송부(2)는 상기 제 1 보드(1)에 INT 신호를 발생한다(47). 상기( INT 신호를 받은 제 1 보드(1)는 인터럽트 클리어(INT-CLEAR) 신호를 발생하여 다음 전송을 대기하게 된다(48).
상기 본 발명의 일실시예에 있어서는 한 보드에서 다른 보드로 데이타를 전송하기 위한 모든 보드간 데이타 전송시스템에 적용할 수 있으며 데이타를 실시간으로 처리하면서 회로는 간단화시킬 수 있는 효과가 있다.
Claims (5)
- FIFO를 이용한 보드간 데이타 전송장치에 있어서, 데이타를 전송하고자 하는 제 1 보드(1), 상기 제 1 보드(1)에 연결되어 상기 제 1 보드(1)에서 오는 데이타를 저장하여 제 2 보드(3)로 필요한 신호를 발생하는 전송부(2), 상기 전송부(2)에 연결되어 데이타를 가지고 가는 상기 제 2 보드(3)로 구성되는 것을 특징으로 하는 FIFO를 이용한 보드간 데이타 전송장치.
- 제 1 항에 있어서, 상기 제 1 보드(1)과 제 2 보드(3)는 CPU(4), ROM(7), DMA(5), RAM(8), PIO(6)로 이루어져 각각 연결되어지는 것을 특징으로 하는 FIFO를 이용한 보드간 데이타 전송방법.
- 제 1 항에 있어서, 상기 전송부(3)는 상기 제 1 보드(1)에서 오는 쓰기신호(/WR), 제어신호(/CS)를 논리합하는 논리합 게이트(9), 리세트(/RESET), 클리어(/CLR) 신호를 논리곱하는 게이트(10), 상기 게이트들(9, 10)에 연결되어 데이타를 저장하는 FIFO(13), 상기 FIFO(13)에 연결되어 상기 제 2 보드(3)로 데이타 경로를 제공하는 버퍼(14), 상기 제 2 보드(3)로부터 데이타 인식클럭(/DACK), 어드레스 인에이블신호(AEN)를 받아 버퍼(14)를 인에이블하는 게이트(15, 16), 상기 FIFO(13)의 엠프티 플레그(/EF) 단자에 연결되어 상기 제 1 보드(1)로 인터럽트 신호(INT)를 발생하는 인버터(11)와 플립플롭(12), 상기 FIFO(13)의 풀플래그(/FF) 단자에 연결되어 상기 제 2 보드(3)로 데이타 요구신호(DRQ)를 발생하는 플립플롭(17), 플립플롭(17)을 클리어하는 논리곱 게이트(18)로 구성되는 것을 특징으로 하는 FIFO를 이용한 보드간 데이타 전송장치.
- FIFO를 이용하여 보드간 데이타 전송을 하기 위해 제 1 보드(1), 제 2 보드(3), 및 상기 제 1 보드(1)에서 오는 데이타를 저장하여 상기 제 2 보드(3)로 필요한 신호를 발생하는 전송부(2)를 구비하여 데이타를 전송하는 방법에 있어서, 제 1 보드(1)에 전송할 데이타가 있는지 검사하여 없으면 복귀(41)하고, 있으면 전송부(2)의 FIFO(13)에 일정크기의 블럭으로 모아 두는(42) 제 1 단계, 상기 제 1 단계 후에, 상기 FIFO (13)가 풀(Full)인가를 검사하여 풀이 아니면 복귀하여 계속 상기 FIFO(13)에 데이타를 전송하고(43), 풀이면 상기 전송부(2) 및 제 2 보드(3)로 데이타 요구신호(DRQ)를 발생하는 제 2 단계, 상기 제 2 단계 후에 상기 제 2 보드(3)가 상기 FIFO (13)에서 데이타를 읽고(45) 상기 FIFO(13)가 엠프티(Empty)인가를 검사하여 엠프티가 아니면 복귀하여 계속 상기 FIFO(13)에서 데이타를 읽는 제 3 단계, 및 상기 제 3 단계 후에 상기 FIFO(13)가 엠프티이면 상기 전송부(2)는 상기 제 1 보드(1)에 인터럽트 신호(INT)를 발생하여(47) 상기 제 1 보드(1)가 인터럽트 클리어 신호(/INT-CLR)를 발생하여 전송을 완료(48)하고 다음 데이타가 있는가를 검사하는 제 4 단계로 구성된 것을 특징으로 하는 FIFO를 이용한 보드간 데이타 전송방법.
- 제 4 항에 있어서, 상기 제1, 제 2 보드(1, 3)와 상기 전송부(2) 사이의 데이타 전송 방식은 DMA 방식인 것을 특징으로 하는 FIFO를 이용한 보드간 데이타 전송방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019920012090A KR950002306B1 (ko) | 1992-07-07 | 1992-07-07 | Fifo를 이용한 보드간 데이타 전송장치 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019920012090A KR950002306B1 (ko) | 1992-07-07 | 1992-07-07 | Fifo를 이용한 보드간 데이타 전송장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR940003293A KR940003293A (ko) | 1994-02-21 |
KR950002306B1 true KR950002306B1 (ko) | 1995-03-16 |
Family
ID=19335983
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019920012090A KR950002306B1 (ko) | 1992-07-07 | 1992-07-07 | Fifo를 이용한 보드간 데이타 전송장치 및 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR950002306B1 (ko) |
-
1992
- 1992-07-07 KR KR1019920012090A patent/KR950002306B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR940003293A (ko) | 1994-02-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5062059A (en) | Apparatus and method for communication between host CPU and remote terminal | |
US5715407A (en) | Process and apparatus for collision detection on a parallel bus by monitoring a first line of the bus during even bus cycles for indications of overlapping packets | |
US4860244A (en) | Buffer system for input/output portion of digital data processing system | |
US4837487A (en) | System for coupling a visual sensor processor and a robot controller | |
EP0239937B1 (en) | Serial communications controller | |
EP0525860A2 (en) | High performance I/O processor | |
US4779190A (en) | Communication bus interface | |
US5287486A (en) | DMA controller using a programmable timer, a transfer counter and an or logic gate to control data transfer interrupts | |
US4949246A (en) | Adapter for transmission of data words of different lengths | |
JPS5941033A (ja) | 電子式計算機装置 | |
KR950002306B1 (ko) | Fifo를 이용한 보드간 데이타 전송장치 및 방법 | |
US5430844A (en) | Communication control system for transmitting, from one data processing device to another, data along with an identification of the address at which the data is to be stored upon reception | |
KR950009763B1 (ko) | 2개의 cpu로 구성된 시스팀에서의 cpu간 데이타 전송 및 동기화 방법 | |
EP0702306A1 (en) | System and method for interfacing risc busses to peripheral circuits using another template of busses in a data communication adapter | |
KR950002316B1 (ko) | 1바이트 래치를 이용한 보드간 데이타 전송장치 | |
EP0193305A2 (en) | System interface for coupling standard microprocessor to a communications adapter | |
KR950003659B1 (ko) | Scsi 비동기 전송 제어장치 | |
KR0143933B1 (ko) | 호스트와 주변장치 간의 양방향 통신이 가능한 인터페이스 제어장치 및 방법 | |
KR20000046810A (ko) | 선입선출 메모리를 이용한 데이터 전송장치 | |
JPS63146539A (ja) | データ伝送装置 | |
JPS634216B2 (ko) | ||
KR930004903B1 (ko) | 데이타 버스를 이용한 프로세서간 병렬 데이타 통신시스팀 및 통신방법 | |
KR900000115B1 (ko) | Fifo방식을 이용한 병렬 인터페이싱 방식 | |
JPH02189049A (ja) | 回線制御装置 | |
JPS6378257A (ja) | 入出力制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
G160 | Decision to publish patent application | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20030218 Year of fee payment: 9 |
|
LAPS | Lapse due to unpaid annual fee |