KR100224753B1 - 선입선출 메모리를 이용한 고속의 비동기 직렬통신회로 - Google Patents
선입선출 메모리를 이용한 고속의 비동기 직렬통신회로 Download PDFInfo
- Publication number
- KR100224753B1 KR100224753B1 KR1019970034723A KR19970034723A KR100224753B1 KR 100224753 B1 KR100224753 B1 KR 100224753B1 KR 1019970034723 A KR1019970034723 A KR 1019970034723A KR 19970034723 A KR19970034723 A KR 19970034723A KR 100224753 B1 KR100224753 B1 KR 100224753B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- fifo
- output
- parallel
- bit
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5678—Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
- H04L2012/5681—Buffer or queue management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
Abstract
본 발명은 실시간 정보처리를 위한 주제어프로세서와 정보저장기 사이의 고속 비동기 직렬통신회로를 제공한다. 본 발명의 I/0 디코더(10)는 어드레스를 디코딩한다. 데이터버스(120)는 버스를 통해 입력되는 데이터를 임시 저장한다. 또한, 송신용 선입선출메모리(FIFO)(20)는 주제어프로세서의 버스에 연결되어, 데이터버퍼(120)에 대해서 데이터를 송신한다. 병렬/직렬쉬프트 레지스터(30)는 송신용 FIFO로부터 출력되는 병렬데이터를 비트열로 바꾸어 출력한다. 파형정형기(40)는 비트열을 리턴-투-제로(RZ)방식에 맞추어 출력한다. 파형정형기의 출력은 전송드라이버(50)를 통하여 전송된다. 전송드라이버(50)로부터 전송된 데이터는 수신용 리시버(60)에서 수신된다. 비트검출기(70)는 수신용 리시버(60)를 통해 입력되는 비트열에서 각 비트를 구분하여 병렬데이터로 만들기 위해 비트를 검출한다. 직렬/병렬쉬프트레지스터(80)는 비트검출기의 출력을 직렬/병렬변환하여 출력한다. 수신용 FIFO(90)는 직렬/병렬쉬프트레지스터(80)로부터 1워드씩 저장한다. 워드검출/계수기(150)는 비트검출기(70)의 출력을 받아 워드검출 및 계수하여 수신용 FIFO의 쓰기클럭을 제어할 뿐만 아니라 1회분의 데이터가 모두 수신되었음을 검출하면 주제어프로세서로 인터럽트를 요구한다. 이로써 FIFO메모리와 근거리통신이 가능하도록 RS-422A방식의 라인인터페이스를 사용하여 대용량의 데이터를 실시간 처리한다.
Description
본 발명은 선입선출(FIFO;first-in-first-out) 메모리를 이용한 고속의 비동기 직렬 통신회로에 관한 것으로, 보다 상세하게는 FIFO메모리를 사용하여 대용량의 데이터를 시스템 프로세서의 지원이 없이도 스스로 처리하여 고속 로직회로로 통신속도를 고속으로 구현한 비동기 직렬 통신회로에 관한 것이다.
대규모의 데이터를 실시간(Real-Time)으로 처리해야 하는 시스템(System)에서 데이터 송수신이 차지하는 시간적인 비중은 상당히 크다고 할 수 있다. 특히 실시간 정보처리를 위한 분산처리시스템(Distributed Processing System)의 주제어프로세서(Main Control Processor)는 모든 보조시스템(Sub-System)과 통신을 해야 하므로 데이터 송수신이 차지하는 비중이 더 크다고 할 수 있다.
특정 시스템의 주제어프로세서와 정보저장기(Data Logger)간의 데이터 송수신을 위해 개발된 회로에 있어서, 주제어프로세서는 내부적으로 분산처리시스템으로 구성되어 있고 또 외부센서들과도 많은 정보를 서로 교환한다. 그 중에서도 주제어프로세서는 시스템의 각 부문에서 획득 및 생성되는 거의 모든 정보를 실시간으로 통제한다. 이러한 대규모 시스템에서는 시스템의 평가, 개선, 정비 등을 위하여 내부에서 처리되는 가급적 많은 데이터를 저장해 둘 필요가 있으므로 근래의 거의 모든 실시간 처리시스템 특히 군용 목적의 대규모 시스템은 정보저장기와 연결하여 사용하고 있다.
주제어프로세서와 정보저장기 사이의 통신망에 있어서 정보저장기가 시스템의 보조장비이기 때문에 요구되는 몇가지 필수조건이 있다.
첫째, 주제어프로세서에 통신을 위한 부담을 가급적 줄여야 한다. 정보저장기는 시스템을 지원하는 장비이나 필수장비는 아니므로 이를 위한 처리과정은 주장비의 실시간처리시스템에 최소한의 부담으로 동작할 수 있도록 설계되어야 한다.
둘째, 실시간의 한 주기 안에서 가급적 많은 데이터를 송수신할 수 있어야 한다. 앞서 언급한 바와 같이 주제어프로세서의 내부 처리과정은 매우 복잡하므로 각 부문에서 처리과정을 거치지 않은 데이터와 거친 데이터를 모두 저장할 수 있어야 저장된 데이터를 처리 및 분석하는데 편리할 것이며 이용하는데도 효율적일 것이다.
셋째, 통신을 위한 전송선로의 수가 가급적 적어야 한다. 기능상 무리가 없다면 모든 통신망에서 전송선로의 부피가 적은 것이 좋다는 것은 명확하며 특히 주제어프로세서와 정보저장기의 사이의 거리가 떨어져 있는 특정 시스템의 경우, 그 전송 선로가 주제어프로세서로부터 슬립링(Slip-Ring)을 거쳐 통신망을 통과하여야만 하므로 슬립링의 비용, 부피 등을 감안하여 그 전송선로 수가 가능한 적어야 한다.
넷째, 근거리 통신이 이루어져야 한다. 정보저장기는 시스템의 행동반경 밖의 외부에 있어야 하므로 상당한 정도, 예를 들면 적어도 100m정도의 근거리 통신이 가능해야 한다.
본 발명이 이루고자 하는 기술적 과제는 상기 종래 기술의 문제점들을 하드웨어적으로 해결하기 위하여 FIFO메모리를 이용한 고속의 비동기 직렬 통신회로를 제공하는 것이다.
본 발명이 이루고자 하는 다른 기술적 과제는 근거리통신이 가능하도록 RS-422A방식의 라인 인터페이스를 사용하는 고속의 비동기 직렬 통신회로를 제공하는 것이다.
도 1은 본 발명에 의한 고속의 비동기 직렬 통신회로를 도시한 개략적인 블록도이다.
도 2는 도 1의 데이터의 흐름도이다.
도 3은 쉬프트레지스터방식의 FIFO구조를 도시한 도면이다.
도 4는 램포인터 방식의 FIFO구조를 도시한 도면이다.
도 5는 FIFO의 폭확장을 설명하기 위한 도면이다.
도 6은 FIFO의 깊이확장을 설명하기 위한 도면이다.
도 7a와 도 7b는 도 1의 파형정형기의 구조 및 동작파형을 각각 도시한다.
도 8은 동기화 및 마스크를 설명하기 위한 도면이다.
도 9는 수신회로의 비트 구조 및 검출시간을 도시한 파형도이다.
도 10은 비트 검출 타이밍을 도시한 파형도이다.
도 11은 도 1의 워드검출/계수기의 보다 상세한 회로도이다.
도 12는 도 11의 타이밍 파형도이다.
도 13은 입력단이 개방된 수신회로를 도시한 회로도이다.
도 14는 직렬저항을 부가한 수신회로를 도시한 회로도이다.
도 15a와 도 15b는 도 14의 수신회로와 드라이버가 연결되었을 때의 직렬저항값에 따른 전압변화를 도시하는 그래프도이다.
도 16은 순시노이즈 억제를 위한 수신회로도이다.
도면의 주요 부분에 대한 부호의 설명
10...I/O디코더, 20...송신용 FIFO
30...병렬/직렬쉬프트레지스터, 40...파형정형기
50...RS-422드라이버, 60...RS-422리시버
70...비트검출기, 80...직렬//병렬쉬프트레지스터
90...수신용 FIFO, 100...스위칭릴레이
110...릴레이구동기, 120...데이터버퍼
130...발진기, 140...타이밍제어기
150...워드검출/계수기
본 발명은 상기 기술적 과제를 달성하기 위하여, 실시간 정보처리를 위한 주제어프로세서와 정보저장기 사이의 고속의 비동기 직렬 통신회로에 있어서, 어드레스를 디코딩하는 I/0 디코더; 데이터버스를 통해 입력되는 데이터를 임시 저장하는 데이터버퍼; 각각 주제어프로세서의 버스에 연결되어, 상기 데이터버퍼에 대해서 데이터를 송신하는 송신용 선입선출 메모리(FIFO); 상기 송신용 FIFO로 부터 출력되는 병렬 데이터를 비트열로 바꾸기 위한 병렬/직렬 쉬프트 레지스터; 그 비트열을 리턴-투-제로(RZ)방식에 맞추기 위한 파형정형기; 상기 파형정형기의 출력을 전송하는 전송드라이버; 상기 전송드라이버로부터 전송된 데이터를 수신하는 수신용 리시버; 상기 수신용 리시버를 통해 입력되는 비트열에서 각 비트를 구분하여 병렬 데이터로 만들기 위해 비트를 검출하는 비트검출기; 상기 비트 검출기의 출력을 직렬/병렬변환하는 직렬/병렬 쉬프트 레지스터; 상기 직렬/병렬쉬프트레지스터로부터 1워드씩 저장하는 수신용 FIFO; 및 비트검출기의 출력을 받아 워드검출 및 계수하여 상기 수신용 FIFO의 쓰기클럭을 제어할 뿐만 아니라 1회분의 데이터가 모두 수신되었음을 검출하면 주제어프로세서로 인터럽트를 요구하는 워드검출/계수기를 포함하는 고속의 비동기 직렬 통신회로를 제공한다.
바람직하기로는 상기 전송 드라이버 출력단을 릴레이를 이용하여 리시버 입력단으로 연결되게 하며, 상기 릴레이는 상기 I/O디코더에 의해 제어되는 릴레이구동부에 의해 구동됨을 특징으로 한다.
바람직하기로는, 송신측에는 발진기에서 생성된 클럭에 의해 상기 송신용 FIFO의 리드클럭, 상기 병렬/직렬 쉬프트레지스터 및 상기 파형정형기의 타이밍을 제어하는 타이밍제어기를 포함하는 것을 특징으로 한다.
또한, 상기 전송용 드라이버 및 상기 수신용 리시버는 RS-422A방식의 통신프로토콜 및 그 인터페이스를 포함하는 것을 특징으로 한다.
또한, 상기 FIFO메모리는 복수의 쉬프트레지스터를 포함하여 데이터가 입력측에 들어온 순서대로 출력측으로 이동함을 특징으로 한다.
또한, 상기 FIFO메모리는 램을 FIFO버퍼로 사용하고 출력어드레스포인터와 입력 어드레스 포인터를 각각 두어 입출력을 제어함을 특징으로 한다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 일 실시예에 대해서 상세히 설명하기로 한다.
우선 대용량 데이터를 실시간으로 처리하기 위한 통신방식 및 회로의 특성을 결정하기 위하여 다음과 같은 사항을 고려한다.
주제어프로서세서의 정보저장기 인터페이스(Interface)를 위한 부담을 줄이기 위해서는 1회 송수신되는 데이터가 한꺼번에 처리될 수 있어야 하고 주제어프로세서와 정보저장기의 동작은 비동기로 이루어져야 한다.
일반적으로 직렬통신(Serial Communication)에 많이 사용되는 범용 직렬 송수신소자는 주제어프로세서가 송수신되는 데이터를 바이트(Byte) 혹은 워드(Word) 단위로 처리하여야 하므로 처리를 위한 검색방법이 인터럽트방식(Interrupt Method)이건 폴링방식(Polling Method)이건 간에 주제어프로세서에 상당한 부담을 준다.
위의 두가지 조건을 만족하는 적절한 소자는 다량의 데이터 저장이 가능하고 양쪽에서 저장 및 출력을 위한 동작이 비동기로 이루질 수 있는 멀티포트 램(Multi-Port RAM)인데 이는 크게 2포트 램(2-Port RAM)과 FIFO(First-in First-out Buffer)로 구분할 수 있다. 2포트 램은 어드레스(Address)라인을 사용해야 하므로 송수신선로에서 램까지의 하드웨어적인 부담이 커진다. 따라서 여기서는 어드레스 라인을 사용하지 않고 저장된 순서대로 데이터를 출력할 수 있는 FIFO를 기본적인 통신매체로 사용한다.
또한, 정보저장기는 복수로 연결될 필요가 없으므로 선로 접속형태는 포인트 투 포인트(Point to Point) 방식으로 하며 전송방식은 디지탈 신호를 변조하지 않고 베이스밴드(Base Band) 신호를 그대로 사용한다. 병렬 통신(Parallel Communication)은 일반적으로 최소 8비트(Bit) 단위이므로 전송선로의 수에 제약을 받는 시스템에서는 불가능하므로 여기에서는 직렬통신방식을 사용하기로 한다.
직렬통신은 그 비트열(Bit Stream) 송수신에 있어 동기와 비동기방식이 있다. 동기방식은 송신측에서 송신한 비트열을 수신측에서 정확하게 복원하기 위하여 송신측에서 데이터와 함께 그 데이터 생성의 근원이 되는 동기 클럭(Clock)을 제공하는 방법인데 비동기방식 보다 선로의 수가 두배로 되므로 여기에서는 비동기방식을 사용하기로 한다.
비트의 검출을 용이하게 하기 위하여 한 비트펄스와 다음의 비트펄스 사이에 반드시 로직 0으로 일정시간 동안 유지한 후 다음 신호를 보내는 RZ(Return to Zero)방식을 사용하며 워드와 워드 간에는 신호의 하드웨어적인 구분을 용이하게 하기 위하여 4비트에 해당하는 시간차를 둔다.
전송속도는 주제어프로세서에서 정보저장기로 송신하고자 하는 데이터의 양과 특정시스템의 실시간에 좌우된다. 여기서는 50Hz의 송신 빈도로 512 워드 정도의 데이터를 전송하면 되므로 워드간 시간차를 감안할 때 (1워드는 20비트이므로) 1비트 전송에 요구되는 최대시간은 약 2μSEC (=20mSEC(50Hz)÷(20Bit×512Word) ≒ 2μSEC)이나 충분한 여유를 두어 1μSEC로 하면 전송속도는 1MHz가 된다. 참고로 일반적인 범용송수신장치를 사용해서 비동기 통신을 할 경우 전송속도가 100Kbit/sec를 넘기 어렵다.
본 발명에서 적용되는 통신방식을 아래의 표 1에 도시하였다.
항 목 | 특 성 |
송신빈도 | 50Hz |
전송속도 | 1Mbit/sec |
전송방식 | 전이중방식(Full Duplex) 비동기(Asynchronous) Return to Zero |
워드구성 | 16 비트 데이터, 4 비트 쉼 구간 |
1회전송워드 | 512 워드 |
이어서 라인 인터페이스의 방식을 결정해야 한다. 일반적으로 컴퓨터와 그 주변기기 간에 많이 사용되는 RS-232C 방식의 경우 규격상 전송거리가 15m이내이며 전송속도도 20Kbit/sec 이하이므로 본 시스템에 적용하기 힘들다. RS-422A의 경우 100Kbit/sec의 속도로 1200m까지 전송 가능하고 1Mbit/sec의 속도에서는 약 100m까지 전송 가능하므로 본 발명의 시스템에 적합하다.
이상으로 설명한 통신방식 및 회로특성에 맞추어 첨부도면을 이용하여 본 발명의 고속의 비동기 직렬 통신회로의 구성 및 동작을 설명하기로 한다.
도 1의 구성 블록도와 같이 주제어프로세서가 정보저장기와의 통신을 주도하기 위하여 어드레스를 디코딩하는 I/0 디코더(10)와 데이터버스를 통해 입력되는 데이터를 임시 저장하는 데이터버퍼(120), 상기 데이터버퍼(120)에 대해서 데이터를 주고 받는 송신 및 수신용 FIFO(20, 90)가 각각 주제어프로세서의 버스에 연결되어야 하고 각각의 FIFO(20,90)에는 앞에서 결정된 통신방식을 만족시키기 위한 송수신 회로가 구성된다.
송신의 경우 송신용 FIFO(20)로 부터 출력되는 병렬 데이터를 비트열로 바꾸기 위한 병렬/직렬 쉬프트 레지스터(Parallel to Serial Shift Register)(30)가 연결되고 그 비트열은 RZ방식에 맞추기 위한 파형정형기(Wave Shaper)(40)를 거치게 되고 최종적으로 그 출력이 RS-422A 드라이버(Driver)(50)를 통해 전송되게 구성한다. 이 경우, 송신측에는 발진기(130)에서 생성된 클럭에 의해 상기 송신용 FIFO(20)의 리드클럭, 상기 병렬/직렬 쉬프트레지스터(30) 및 상기 파형정형기(40)의 타이밍을 제어하는 타이밍제어기(140)를 포함한다.
수신의 경우 RS-422A 리시버(Receiver)(60)를 통해 입력되는 비트열에서 각 비트를 구분하여 병렬 데이터로 만들기 위해 비트검출기(70)를 통하여 직렬/병렬 쉬프트 레지스터(Serial to Parallel Shift Register)(80)에 차례로 모으고 1워드가 모이면 수신용 FIFO(90)에 저장할 수 있는 회로를 구성하고 동시에 1회 분의 약속된 워드가 모두 FIFO(90)에 저장되면 주제어프로세서에 써비스를 요구하는 인터럽트 요구 기능을 가지도록 설계된다. 이 경우, 수신측에는 비트검출기(70)의 출력을 받아 워드검출 및 계수하여 상기 수신용 FIFO(90)의 쓰기클럭을 제어할 뿐만 아니라 1회분의 데이터가 모두 수신되었음을 검출하면 주제어프로세서로 인터럽트를 요구하는 워드검출/계수기(150)를 포함한다.
전체 회로의 신뢰성을 높이고 및 정비성을 용이하게 하기 위해 RS-422A 드라이버 출력단을 릴레이(100)를 이용하여 리시버 입력단으로 연결되게 하여 자체고장진단(Built-in Test)을 할 수 있는 회로를 보유한다. 상기 릴레이(100)는 상기 I/O디코더(10)에 의해 제어되는 릴레이구동부(110)에 의해 구동된다. 물론 릴레이구동부 및 릴레이회로는 주제어프로세서에 의해 제어될 수 있어야 하고 자체고장진단모드 시에는 정보저장기로부터 데이터가 수신될 수 없다.
이렇게 구성된 통신회로는 도 2의 데이터 흐름도와 같이 1워드는 16데이터 비트와 4비트 만큼의 워드 구분 기간을 가지므로 워드당 20μSEC가 소용되고 16데이터 비트는 LSB부터 차례로 전송된다. 따라서 전체 512 워드가 전송되는 시간은 10.24mSEC가 소요되게 된다.
전통적인 FIFO의 구조는 도 3과 같이 여러개의 쉬프트 레지스터로 구성되어 한 쪽 포트에서 쓴 데이터가 다른 포트를 향하여 밀려가는 구조를 갖는다. 입력 데이터는 첫 번째 레지스터로 들어가고 들어간 데이터는 제어 플립플롭(Flip-Flop)의 상태에 따라 출력쪽으로 이동된다. 즉 다음 플립플롭의 상태가 비어 있으면 (로직0) 데이터가 다음 레지스터로 이동하고 그렇지 않으며 데이터 이동은 중단된다. 따라서 새로운 데이터가 입력측으로 들어오면 즉시 출력측으로 복사되어 전파된다. 출력측에서 마지막 레지스터의 데이터를 읽어 나가면 FIFO 내의 모든 데이터가 출력측으로 즉시 이동된다. 그러므로 FIFO에 데이터가 들어 있는 한 계속해서 데이터를 읽어낼 수 있다. 이 방식의 FIFO는 구성 소자가 많고 또한 데이터 전파속도가 문제되므로 대용량의 FIFO 제작이 곤란하다. 현재 이 방식의 FIFO로 사용 획득 가능한 FIFO 제품의 용량은 64워드 정도이다.
또 다른 방법의 FIFO는 도 4와 같이 램과 포인터(Pointer)를 이용하는 방법이 있다. 이 방법은 램을 FIFO 버퍼로 사용하고 출력 어드레스 포인터와 입력 어드레스 포인터를 각각 두어 데이터의 입출력을 제어하는 방식이다.
데이터가 입력되면 현재 입력 어드레스 포인터가 지정하고 있는 번지에 데이터가 저장되고 입력 어드레스 포인터는 다음 번지로 증가된다. FIFO에서 데이터를 읽어낼 때는 현재 출력 어드레스 포인터가 지정하고 있는 번지의 데이터가 읽혀지고 출력 어드레스 포인터는 다음 번지로 증가된다.
두 포인터는 계속 비교되어 FIFO의 참(Full)과 빔(Empty) 신호를 발생시켜 보다 세련된 FIFO제어를 가능케 한다.
램 포인터 방식의 FIFO는 보다 대용량의 직접 접속이 가능하나 동작시간은 쉬프트 레지스터 방식보다 느리다.
일반적으로 256워드× 9비트 이상의 용량을 가지는 FIFO는 대부분 28핀 형태로 핀 호환성을 가진다. 본 실시예에서는 512워드면 충분하나 필요에 따라서 하드웨어의 변경없이 4K워드×9비트까지 확장할 수 있다.
속도면에서는 온도를 만족하는 소자가 약 22MHz 까지 동작할 수 있으므로 현재 일반적으로 사용되고 있는 대부분의 프로세서와 같이 사용할 수 있으며 온도를 만족할 필요가 없다면 28.5MHz까지도 동작할 수 있는 FIFO를 구할 수 있다.
일반적으로 프로세서의 처리 비트 수는 8비트 혹은 그 배수이나 대부분의 대용량 FIFO는 9비트로 구성되어 있으므로 1비트는 패리티(Parity)비트로 사용하거나 아예 사용하지 않는다.
16비트 프로세서가 9비트 FIFO 하나를 사용하거나, 32비트 프로세서가 두 개의 FIFO를 사용할 때는 아주 세련된 FIFO 운용을 할 수 있다. 전자의 경우를 예로 들면 FIFO의 9비트 중에서 8비트는 데이터 라인으로 사용하고 1비트를 데이터 버스에 연결하여 프로세서가 직접 만들어 낸 패리티 비트로 사용할 수도 있고, 하드웨어적으로 패리티 발생기를 연결하여 패리티 비트로 사용할 수도 있다. 또 빔(empty) 플래그를 FIFO의 데이터 라인을 연결하고 남은 데이터 버스에 직접 연결하면 FIFO를 읽는 동작만으로 FIFO 버퍼의 상태를 바로 알 수 있다.
여기서 적용한 주제어프로세서는 Z8002로서 16비트이므로 효율을 최대로 하기위하여 16비트 데이터 라인을 모두 사용하기로 하는데 이 경우 9비트 FIFO 2개가 필요하다. FIFO를 폭 (비트) 방향으로 확장하려면 도 5와 같이 두 개를 종속 접속하면 된다. 이때 플래그의 상태는 두 개의 FIFO가 동일하게 변화하므로 필요하다면 둘 중 어느 하나의 플래그만 사용하면 된다. 여기서는 각 FIFO의 MSB는 사용하지 않는다.
본 실시예에서는 적용하지 않았으나 FIFO의 깊이 (용량)를 확장하려면 도 6과 같이 첫 번째 FIFO의 /FL(First Load) 단자를 그라운드로 연결하고 확장하기 위해 추가되는 FIFO의 단자는 로직 하이상태로 하고, 두 번째 확장용 입출력 단자(/XI,/XO)를 데이지 체인 (Daisy Chain) 방식으로 연결한다. 확장된 전체 FIFO에 적합한 플래그의 생성을 위해서는 각 FIFO에서 출력되는 플래그 신호를 논리합(LOGIC OR) 한다.
주제어프로세서가 통신회로를 제어하기 위해서 필요한 제어 신호는 프로세서 보드로부터 할당된 보드선택신호를 이용하여, 도 1의 I/O디코더(10)에서 그에 할당된 어드레스 구역안에서 재 디코딩(Decoding)하여 만들어내며 FIFO의 입,출력 제어신호, FIFO 및 인터럽터 클리어신호, 송신 시작 명령신호, 자기고장진단모드 선택신호 등을 필요로 한다.
본 실시예에서는 회로의 특정시스템에 적용시 송수신 빈도는 특정 시스템의 실시간 주기와 동일한 50Hz이고 송신은 최대 512워드, 수신은 16워드로 통신한다. 주제어프로세서는 먼저 송신용 FIFO(20)를 클리어시키고 정보저장기로 전송하고자 하는 1회분의 약속된 만큼의 데이터를 송신용 FIFO(20)에 저장한 후 송신시작 명령을 내리면 주제어프로세서가 저장한 순서대로 데이터를 출력하는데, 이 이후 1회의 전송이 완료될 때까지 데이터의 흐름은 주제어프로세서와 무관하며 수신 채널의 데이터 전송상태와도 무관하다. 수신 직렬버스를 통해 입력되는 정보저장기로부터의 데이터는 자동으로 수신용 FIFO(90)에 차례로 저장되며 1회 분의 약속된 만큼의 데이터가 저장되면 주처리프로세서로 처리를 요구하는 인터럽터를 발생한다. 이때 주처리프로세서가 수신용 FIFO(90)를 읽으면 정보저장기가 전송한 순서대로 데이터가 읽혀지게 된다.
전원이 켜지거나 시스템의 시험 명령이 있을 때 주처리프로세서는 자기 고장진단용 릴레이를 시험모드로 전환시켜 전체 하드웨어를 자기 진단할 수 있다. 그 과정은 정상동작시의 송수신 동작과 동일하다.
송신회로의 동작을 설명하면, 주제어프로세서가 정보저장기로 송신하고자 하는 1회 분의 데이터를 송신용 FIFO(20)에 저장하고 송신시작 명령을 내리면 주제어프로세서에 의해서 제일 먼저 저장된 데이터부터 워드단위로 읽혀져 나와 병렬/직렬 쉬프트 레지스터(30)로 입력된다. 이 레지스터에 저장된 1워드는 클럭(1MHz;1 비트)에 의해 LSB(BIT 0) 부터 MSB(BIT 16)순으로 비트열로 출력되는데 이 비트열을 RZ방식에 맞는 파형으로 변형시키기 위해 파형정형기(40)를 사용한다.
파형정형기(40)는 1/4 디지탈 멀티플렉서(Multiplexer)로서 출력 선택신호로 1MHz와 2MHz 신호를 사용하므로 1비트에 해당하는 신호(1μSEC)는 4등분되어 제어된다. 도 7과 같이 멀티플렉서 입력단에는 로직 하이, 직렬 데이터, 로직 로우가 차례로 연결되어 250nSEC 단위로 제어되는 RZ 방식의 아주 간단한 파형정형기를 만들 수 있다.
이 방법 외에 파형정형기(40)는 쉬프트 레지스터를 사용하여 구현할 수 있으나 제어회로가 추가되어야 하므로 더 복잡해진다.
발진기(130)에서 출력된 클럭에 의해 타이밍 제어기(140)에 의해 20μSEC 마다 FIFO에서 1워드씩의 데이터가 읽혀지는데 이 중에서 16μSEC는 16비트에 해당하는 시간이고 4μSEC는 워드의 하드웨어적인 구분을 위해 로직 로우로 유지하여야 하므로 이 4μSEC 동안 파형정형기(40)의 출력을 마스크(MASK)시켜야만 한다. 이를 위해 모든 신호의 근본이 되는 16MHz를 계수하여 20μSEC 중에서 마지막 4μSEC 시간을 구분한다.
FIFO에서 1워드씩 읽혀질 때마다 워드 계수기가 동작하여 약속된 워드 수에 도달하면 최종 출력단에서 직렬 비트열을 마스크시켜 다음의 전송 시작 명령이 올 때 까지 송신라인을 로직 로우상태로 유지하게 한다.
파형정형기(40)의 출력, 워드간 구분을 위한 마스크 신호, 1회분의 전송을 마치기 위한 마스크 신호들은 각각 별도의 로직에서 생성되므로 상호간에 약간의 지연성분을 포함하고 있어 마스크를 위해 그대로 논리곱(Logic AND)해 버리면 아주 짧은 시간이나마 원하지 않는 신호가 발생되며 이 신호는 수신회로를 오동작하게 할 우려가 있으므로 위의 세가지 신호를 어떤 신호에 동기시킬 필요가 있다. 이를 위해서는 각 신호의 근본이 되는 클럭 중에서 제일 빠른 클럭보다 최소한 2배 이상의 신호에 재 동기시켜야 한다.
파형정형기(40)는 2MHz 신호에 동기되어 동작하고 워드 구분을 위한 마스크 신호와 전송을 마치기 위한 마스크 신호 2MHz 신호 보다 더 느린 신호에 동기되어 동작하므로 여기서 동기화를 위해 세가지 신호를 2MHz보다 2배 빠른 4MHz 신호에 동기시켜 그 출력을 이용하여 필요한 마스크를 실시한다.
이렇게 하여 생성된 최종 비트열은 RS-422A 드라이버(50)를 통해 정보저장기로 송신된다.
수신회로의 동작을 설명하면, 정보저장기가 주제어프로세서로 전송하고자 하는 1회 분량의 데이터는 앞서 설명한 송신회로와 같은 회로를 거쳐 1Mbit/sec의 속도를 가진 비트열로 RS-422A 리시버(60)를 통해 수신된다.
RZ 방식으로 변형된 비트열을 FIFO(90)에 저장하기 위한 병렬 워드로 바꾸기 위해 비트 검출기(70)가 필요하고 검출된 비트를 워드 단위로 모으고 1회 분의 데이터가 모두 수신되었다는 것을 검출하여 주제어프로세서로 인터럽트를 요구하기 위한 워드검출/계수기(150)가 필요하다.
RS-422A 리시버(60)를 통해 입력되는 비트열은 RZ 방식의 파형이므로 비트 검출은 도 9와 같이 1비트에 해당하는 1μSEC 시간 중에서 실제 데이터가 실리는 250nSEC∼750nSEC 사이에서 행하여야 된다.
한 비트 구간중 ¼∼¾ 구간에 위치하는 실제 데이터를 추출하기 위해서는 비트열을 1비트의 ¼보다 빠른 클럭으로 적절히 쉬프트시킨 신호를 이용할 필요가 있다. 따라서 비트열을 직렬/병렬 쉬프트 레지스터(80)의 입력에 직접 연결하고 그 클럭으로 앞의 쉬프트된 신호를 이용하면 실제 데이터를 검출할 수 있을 것이다. 비트열을 쉬프트시키기 위하여 1비트의 ¼인 4MHz보다 두배 빠른 8MHz 신호를 클럭으로 사용하는 직렬/병렬 쉬프트 레지스터(80)를 생각해 보자. 쉬프트 레지스터(80)의 클럭으로 사용하는 8MHz의 신호는 수신쪽에서 발생시킨 것이므로 실제 송신되는 비트열과 동기되어 있지 않아 도 10과 같이 실제 신호와 쉬프트 되는 신호는 최대 125nSEC 만큼의 차이가 생길 수 있다.
실제 비트를 검출하기 위해 Td(500nSEC)만큼 지연된 신호 Qe 클럭과 실제신호의 비동기로 인해 발생할 수 있는 차이 Tv(0∼125nSEC)가 가산되더라도 500∼625nSEC 사이에 비트를 검출하게 되므로 실제 데이터가 실리는 시간 250∼750nSEC를 충분히 만족하므로 안정된 비트 검출을 할 수 있다.
비트가 검출되기 시작되고 500∼625nSEC 만큼 지연된 Qe 신호는 비트열이 입력으로 연결된 16비트 직렬/병렬 쉬프트 레지스터(80)의 클럭으로 동작하고 워드 검출기(150)의 클럭으로도 사용된다.
워드 검출기(150)에서는 1워드(16비트)가 검출되면 16비트 쉬프트 레지스터(80)에 모여진 1워드를 수신용 FIFO(90)에 저장해야만 하는데 이때 상당히 미묘한 타이밍을 요구하게 되는데 도 12와 같이 일정시간 1워드를 FIFO(90)에 저장하는 동안 비트검출기(70)는 클리어되어야 하고 그후 워드검출/계수기(150)가 클리어되고 동작하여야 한다.
비트 검출기(70)에 의해 검출된 1워드의 16번째 비트의 하강에지(Falling Edge)에 의해 워드 검출/계수기(150)의 출력이 발생되는데 그 신호가 도 11의 D1 입력으로 작용한다. 이 신호는 D 플립플롭의 전달지연시간 (Propagation Delay Time)과 에지 트리거의 특성을 이용하여 여러가지 지연된 신호를 만들어 낸다.
도 12에서 플립플롭의 클럭인 8MHz 신호의 4주기 만큼 지연된 신호인 Q4에 의해 워드 검출기가 클리어되면서 FIFO 저장 제어신호의 구간이 500nSEC로 결정된다. 이 시간이면 상용으로 획득가능한 거의 모든 FIFO의 동작시간을 만족시킨다.
Q2의 로직 로우펄스에 의해 쉬프트 레지스터(80)에 모여진 16 비트 병렬 데이터가 FIFO(90)에 저장되고 있는 동안 쉬프트 레지스터(80)의 클리어 신호인 Q6이 로직 로우로 바뀌어 다음 워드를 위해 쉬프트 레지스터(80)를 빈 상태로 만들고 워드 검출/계수기(150)를 증가시킨다.
워드 검출/계수기(150)가 지속적으로 증가하여 1회분의 약속된 워드 수에 도달하면 주제어프로세서에 인터럽트를 요구한다. 이 신호는 주제어프로세서가 인터럽트를 승인하고 클리어시키기 전에는 계속 유효하다.
다음, 전송선로의 동작에 대해서 설명한다. 전송선로의 길이를 길게하고 전송속도를 높이기 위하여 선택한 RS-422A 인터페이스를 위하여 이 규격을 만족하는 26LS31과 26LS32를 사용하기로 한다.
주제어프로세서와 정보저장기 사이는 트위스트 페어(Twist Pair) 케이블로 연결되는데 경우에 따라서는 이 케이블이 연결되지 않고 주제어프로세서가 동작하는 경우도 있을 것이다. 이 때 주제어프로세서의 리시버 입력은 개방상태이나 그 출력은 일정 레벨로 유지되어야 할 것이다. 그러나 입력단이 도 13과 같이 종단저항만으로 처리되면 리시버 주변 회로의 고속신호에 따라 그 출력이 발진하는 경우도 있다.
RS-422A 규격에 의하면 리시버의 안정도니 동작을 위해서는 리시버의 + 입력과 -입력단자 사이의 차동전압이 200mV 이상이어야 한다.
도 13에서 Vtd를 측정하면 Rt가 없는 경우는 약 630mV 정도로 규격인 200mV를 훨씬 상회하여 안정된 로직 하이출력을 얻을 수 있으나 Rt (120Ω)가 있는 경우 10mV이하로 규격인 200mV에 훨씬 못미쳐 그 출력이 발진할 수도 있다. 결국 Rt가 작으면 Vtd가 높아지고 리시버는 안정된 동작을 한다는 결론을 얻을 수 있다. RS-422A 인터페이스 회로에서 전송속도가 낮으면 (200Xbit/sec 이하), Rt의 유무가 리시버의 동작에 크게 영향을 미치지 못하나 전송속도가 고속이고 케이블을 통한 신호의 반사가 무시할 수 없는 정도라면 90∼150Ω 정도의 Rt를 부착해야 한다. 따라서 1Mbit/sec의 속도를 가진 본 회로에서 Rt를 필요로 하게 되는데 그와 동시에 리시버 출력의 발진을 막기 위하여 Vdt를 높여야 한다. Rt를 사용하면서 Vdt를 높이기 위해서는 도 14와 같이 입력 양단에 직렬로 저항을 추가하면 된다.
직렬저항 | 샘플 1 | 샘플 2 | 샘플 3 | 샘플 4 | 샘플 5 |
1 KΩ | 69.7 | 67.4 | 67.6 | 68.5 | 68.1 |
4.7 KΩ | 224 | 228 | 221 | 225 | 218 |
표 2에서 보듯이 Rs+와 Rs-를 각각 1KΩ으로 했을 경우 Vtd는 약 68mV정도로 측정된다. 일반적으로 Vtd가 60mV 정도이면 리시버가 안정된 동작을 하나 환경적인 조건을 포함한 최악의 조건을 감안해서 모든 경우에 안정된 동작을 하기 위해서는 앞서 말한 바와 같이 200mV가 필요하다. Rs를 4.7KΩ으로 크게 하면 차동입력전압 Vtd는 약 220mV로 모든 경우에 안정된 동작을 위한 200mV를 상회한다.
그러나 도 15a와 같이 드라이버가 연결되었을 때는 이 직렬저항 값을 크게 하면 할수록 Vtd는 분압되어 감쇄된다. 도 15b에서 보듯이 직렬저항을 거치기 전의 차동입력전압 Vt와 직렬저항을 거친 차동입력전압 Vtd의 비가 직렬저항 Rs가 커지면 작아짐을 알 수 있다.
Rs가 1KΩ일 때 Vtd/Vt는 0.7 정도이고 Rs가 4.7KΩ일 때 0.4 정도이므로 Rs를 큰 값으로 사용할수록 Rs를 리시버의 입력단자에 최대한 가까이에 배치하는 것이 분압으로 감쇄된 신호가 외부의 영향을 덜 받게 할 수 있는 방법이다.
여기서 통신의 기본매체로 선정된 FIFO는 순시(Transient)펄스에 매우 민감하다. SRAM 등의 어드레스를 이용한 랜덤억세스(Random Access) 소자의 경우는 억세스 신호의 액티브 구간에서 약간의 순시 노이즈가 생겨도 동작에 크게 영향을 미치지 못하나 FIFO의 경우 제어신호에 로직 로우레벨을 넘어서는 약간의 노이즈에도 데이터가 입출력되어 FIFO의 포인터가 변하므로 전체데이터 흐름을 엉망으로 만들어 버리고 만다. 만약 저장을 위한 제어신호의 액티브 구간 중간에 노이즈가 발생했다고 가정하면 SRAM의 경우는 같은 번지에 같은 데이터를 두 번 저장하는 셈이므로 결과는 같으나, FIFO의 경우는 같은 데이터가 하나 더 저장되는 결과를 초래하므로 분명한 오동작이다. 따라서 주제어프로세서 쪽에서는 버스 라인 간의 크로스 토크(Cross-Talk)현상 등으로 생기는 순시펄스를 방지하기 위해서 버스 라인 간의 쉴드(shield) 처리에 신중해야 한다.
한편 수신 채널은 수신데이터에 의해 좌우되므로 그 쪽의 노이즈 대책은 정보저장기 쪽에서 세워야 하나 전송선로를 통한 노이즈에 대한 대책은 주제어프로세서회로내에 내장하고 있어야 한다. 전송선로를 통한 노이즈의 주원인인 임피던스불균형(Impedance-Mismatch)으로 인한 신호의 반사파는 전송신호의 속도, 엣지의 상승 혹은 하강시간, 전송선로의 길이 등에 의해 그 크기가 결정되므로 설계단계에서 완벽한 대책을 수립하기는 힘들다.
따라서 실험치 등을 참고로 리시버에 도 16과 같이 적절한 필터회로를 적용하는 것도 전체회로의 신뢰도를 향상시키는 한 방법이 될 수 있을 것이다. 이 필터회로에서 억제하고자 하는 노이즈의 폭은 실제 신호의 최소 폭 보다는 훨씬 적어야 할 것이며 전압으로 볼 때는 로직로우레벨을 보장하는 0.6V 이상의 신호를 목표로 삼아야 한다. 예를 들면 이 회로의 C를 100pF, Rt를 120Ω 으로 했을 때 계산상 이 필터가 억제할 수 있는 폭은 약 84nSEC이고 실제로 실험한 결과 0.6V 이상의 폭이 약 60nSEC정도인 노이즈는 출력에 나타나지 않았다.
상술한 바와 같이, FIFO를 이용하여 비동기 고속으로 동작하는 직렬 통신회로는 특정시스템의 주제어프로세서와 정보저장기 사이의 통신에 사용된다. 이 회로는 FIFO 라는 2포트 메모리를 사용하여 통신을 수행하는 양쪽을 서로 분리시켰으며 또 이 FIFO를 대용량 데이터의 버퍼로 사용함으로써 통신을 주도하는 프로세서의 부담을 최소화시키면서 정보를 송수신할 수 있게 하였다.
특정 시스템의 특별한 환경을 만족시키기 위해 직렬 통신회로를 설계함에 있어서, 병렬 데이터와 직렬 비트열 사이의 변환 하드웨어를 로직회로로 구현하였으며 이 로직회로를 실시간 처리시스템에서 무리없이 사용할 수 있도록 고속화하였으며 가능한 회로를 최소화시켰다.
근거리 통신이 가능하도록 RS-422A방식의 라인 인터페이스를 사용하였으며 이런 종류의 인터페이스시 흔히 간과될 수 있는 입력단 개방시의 출력 안정화나 순시 노이즈에 관한 대책을 실험적으로 접근하였다.
이 회로의 단점은 직렬 비트열과 병렬 데이터를 서로 변환시키는 회로의 하드웨어적인 부담이 크다는 것이다. 이는 속도면에서 약갼의 양보가 가능하면 요즘 그 성능이 크게 향상되고 있는 범용송수신장치와 FIFO를 결합함으로써 어느 정도 해소할 수 있으며 PAL(프로그래머블 어레이 로직) 계열의 소자를 사용해서도 약간의 로직을 축소시킬 수 있다.
본 발명은 종래의 문제점을 하드웨어(Hardward)적으로 해결하며 여기서 적용된 특정시스템 외에 이러한 통신회로가 필요한 경우 그 응용 및 확장을 용이하게 할 수 있다.
Claims (6)
- 실시간 정보처리를 위한 주제어프로세서와 정보저장기 사이의 고속의 비동기 직렬 통신회로에 있어서,어드레스를 디코딩하는 I/0 디코더(10);데이터버스를 통해 입력되는 데이터를 임시 저장하는 데이터버퍼(120);각각 주제어프로세서의 버스에 연결되어, 상기 데이터버퍼(120)에 대해서 데이터를 송신하는 송신용 선입선출 메모리(FIFO)(20);상기 송신용 FIFO(20)로 부터 출력되는 병렬 데이터를 비트열로 바꾸기 위한 병렬/직렬 쉬프트 레지스터(30);그 비트열을 리턴-투-제로(RZ)방식에 맞추기 위한 파형정형기(40);상기 파형정형기의 출력을 전송하는 전송드라이버(50);상기 전송드라이버(50)로부터 전송된 데이터를 수신하는 수신용 리시버(60);상기 수신용 리시버(60)를 통해 입력되는 비트열에서 각 비트를 구분하여 병렬 데이터로 만들기 위해 비트를 검출하는 비트검출기(70);상기 비트 검출기의 출력을 직렬/병렬변환하는 직렬/병렬 쉬프트 레지스터(80);상기 직렬/병렬쉬프트레지스터(80)로부터 1워드씩 저장하는 수신용 FIFO(90); 및비트검출기(70)의 출력을 받아 워드검출 및 계수하여 상기 수신용 FIFO(90)의 쓰기클럭을 제어할 뿐만 아니라 1회분의 데이터가 모두 수신되었음을 검출하면 주제어프로세서로 인터럽트를 요구하는 워드검출/계수기(150)를 포함하는 고속의 비동기 직렬 통신회로.
- 제1항에 있어서, 상기 전송 드라이버 출력단을 릴레이(100)를 이용하여 리시버 입력단으로 연결되게 하며, 상기 릴레이(100)는 상기 I/O디코더(10)에 의해 제어되는 릴레이구동부(110)에 의해 구동됨을 특징으로 하는 고속의 비동기 직렬 통신회로.
- 제1항에 있어서, 송신측에는 발진기(130)에서 생성된 클럭에 의해 상기 송신용 FIFO(20)의 리드클럭, 상기 병렬/직렬 쉬프트레지스터(30) 및 상기 파형정형기(40)의 타이밍을 제어하는 타이밍제어기(140)를 포함하는 것을 특징으로 하는 고속의 비동기 직렬 통신회로.
- 제1항에 있어서, 상기 전송용 드라이버 및 상기 수신용 리시버는 RS-422A방식의 통신프로토콜 및 그 인터페이스를 포함하는 것을 특징으로 하는 고속의 비동기 직렬 통신회로.
- 제1항 내지 제4항중의 어느 한 항에 있어서, 상기 FIFO메모리는 복수의 쉬프트레지스터를 포함하여 데이터가 입력측에 들어온 순서대로 출력측으로 이동함을 특징으로 하는 고속의 비동기 직렬 통신회로.
- 제1항 내지 제4항중의 어느 한 항에 있어서, 상기 FIFO메모리는 램을 FIFO버퍼로 사용하고 출력어드레스포인터와 입력 어드레스 포인터를 각각 두어 입출력을 제어함을 특징으로 하는 고속의 비동기 직렬 통신회로.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970034723A KR100224753B1 (ko) | 1997-07-24 | 1997-07-24 | 선입선출 메모리를 이용한 고속의 비동기 직렬통신회로 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970034723A KR100224753B1 (ko) | 1997-07-24 | 1997-07-24 | 선입선출 메모리를 이용한 고속의 비동기 직렬통신회로 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19990011584A KR19990011584A (ko) | 1999-02-18 |
KR100224753B1 true KR100224753B1 (ko) | 1999-10-15 |
Family
ID=19515502
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970034723A KR100224753B1 (ko) | 1997-07-24 | 1997-07-24 | 선입선출 메모리를 이용한 고속의 비동기 직렬통신회로 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100224753B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100484134B1 (ko) * | 2002-02-16 | 2005-04-18 | 삼성전자주식회사 | 선입선출기를 이용한 비동기 데이터 인터페이스 장치 |
-
1997
- 1997-07-24 KR KR1019970034723A patent/KR100224753B1/ko not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100484134B1 (ko) * | 2002-02-16 | 2005-04-18 | 삼성전자주식회사 | 선입선출기를 이용한 비동기 데이터 인터페이스 장치 |
Also Published As
Publication number | Publication date |
---|---|
KR19990011584A (ko) | 1999-02-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5084841A (en) | Programmable status flag generator FIFO using gray code | |
US6055285A (en) | Synchronization circuit for transferring pointer between two asynchronous circuits | |
US7328399B2 (en) | Synchronous serial data communication bus | |
US4463443A (en) | Data buffer apparatus between subsystems which operate at differing or varying data rates | |
US5598113A (en) | Fully asynchronous interface with programmable metastability settling time synchronizer | |
US4887262A (en) | Single-channel bus system for multi-master use with bit cell synchronization, and master station comprising a bit cell synchronization element suitable for this purpose | |
US5365485A (en) | Fifo with fast retransmit mode | |
EP0051332B1 (en) | Two-wire bus-system comprising a clock wire and a data wire for interconnecting a number of stations | |
US5619722A (en) | Addressable communication port expander | |
US4756006A (en) | Bus transceiver | |
US20020163361A1 (en) | Source synchronous I/O without synchronizers using temporal delay queues | |
US5592629A (en) | Apparatus and method for matching data rates to transfer data between two asynchronous devices | |
US4048673A (en) | Cpu - i/o bus interface for a data processing system | |
JPH0713926A (ja) | バッファ制御回路及びその操作方法 | |
US5539739A (en) | Asynchronous interface between parallel processor nodes | |
US4047201A (en) | I/O Bus transceiver for a data processing system | |
KR100224753B1 (ko) | 선입선출 메모리를 이용한 고속의 비동기 직렬통신회로 | |
US5550533A (en) | High bandwidth self-timed data clocking scheme for memory bus implementation | |
KR960038645A (ko) | 상대방 메모리를 이용한 두 프로세서간 비동기 직렬 통신 송/수신장치 | |
US6091783A (en) | High speed digital data transmission by separately clocking and recombining interleaved data subgroups | |
EP1134666B1 (en) | Uart automatic half-duplex direction control with programmable delay | |
US5091870A (en) | Apparatus for measuring the speed of transmission of digital characters | |
US5249154A (en) | Data access controller and method | |
US6831920B1 (en) | Memory vacancy management apparatus and line interface unit | |
US5933615A (en) | Optimization of the transfer of data word sequences |
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: 20060627 Year of fee payment: 8 |
|
LAPS | Lapse due to unpaid annual fee |