KR910005479Y1 - Cpu간 통신을 위한 공유 입출력 포트회로 - Google Patents
Cpu간 통신을 위한 공유 입출력 포트회로 Download PDFInfo
- Publication number
- KR910005479Y1 KR910005479Y1 KR2019890002029U KR890002029U KR910005479Y1 KR 910005479 Y1 KR910005479 Y1 KR 910005479Y1 KR 2019890002029 U KR2019890002029 U KR 2019890002029U KR 890002029 U KR890002029 U KR 890002029U KR 910005479 Y1 KR910005479 Y1 KR 910005479Y1
- Authority
- KR
- South Korea
- Prior art keywords
- host
- local
- selection signal
- cpu
- signal
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/17—Interprocessor communication using an input/output type connection, e.g. channel, I/O port
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Bus Control (AREA)
Abstract
내용 없음.
Description
제 1 도는 본 고안의 구체회로도.
제 2 도는 본 고안을 적용한 CPU 연결 구성도.
* 도면의 주요부분에 대한 부호의 설명
FF1, FF2 : 플립플롭 IG1, IG2 : 인버터
B1, B2 : 버퍼 NG1, NG2 : 노아게이트
OG1, OG2 : 오아게이트
본 고안은 다중 CPU를 사용하여 구축된 시스템의 입출력 동기를 수행하는 회로에 관한 것으로, 특히 주 CPU와 각각의 로컬 CPU간의 통신을 수행할 수 있는 공유 입출력 포트회로에 관한 것이다.
일반적으로 한개의 시스템내의 상호결합된 상태에서 독립된 기능을 수행하는 다수개의 CPU(Central Processing Unit)가 존재할때, 이들 각각의 CPU는 서로 독립된 일을 수행하게 되지만 서로간의 데이타를 주고 받으며 작업동기를 맞추어야 한다.
그러나 종래의 경우 이를 CPU는 공유 메모리(Shared memory)나 시분할 공통 데이타버스를 상기의 기능을 수행하였으나, 이 경우 시스템의 복잡도를 증가시켰으며, 이로 인하여 비용의 증가 및 신뢰도를 저하를 야기시켰다. 즉, 전자의 경우에는 일부 메모리를 시스템(host, local) 각각의 메모리맵에 독립 할당하여 놓고, 이 부분에 대한 각각의 억세스를 중제하기 위하여 듀얼포트램 제어부(dual port RAM Controller)나, 복잡한 콘텐션 메카니즘(Contention mechanism)이 필요하게 되며 호스트와 로컬CPU간의 데이타 송수신의 폴링(polling)방식에 의해 수행하므로 스프드의 저하가 야기된다.
또한 후자의 경우에는 고속의 통신수단을 각 CPU에 제공할 수 있지만, 고도의 기술에 의한 복잡한 회로설계가 이루어져야만 하고, 이에 따른 시스템의 가격 상승을 초래하게 되었으며, 시스템 설치후 별도의 부가장치에는 응용할수 없는 단점등이 있었다.
따라서 본 고안의 목적은 호스트 CPU의 제어하에 각 로컬CPU와 입출력포트를 공유할 수 있는 회로를 제공함에 있다.
본 고안의 또다른 목적은 CPU와 로컬CPU간에 데이타 억세스시 간단한 구성으로 범용성을 갖도록하여 용이하게 집적화할수 있는 입출력포트의 공유회로를 제공함에 있다.
이하 본 고안을 도면을 참조하여 상세히 설명한다.
제 1 도는 본 고안의 입출력포트 공유 회로도로서, 플립플롭(FF1) 및 인버터(IG1)로 구성되어 호스트 측으로 전송할 데이타 존재시 발생하는 해당 로컬측의 제 2I/O 포트 선택신호에 의해 호스트 CPU측으로 인터럽트신호(INTH)를 발생하며, 호스트측의 해당 I/O포트 선택회로(CSHS)에 의해 해제되는 제 1 인터럽트 발생수단과, 플립플롭(FF2) 및 인버터(IG2)로 구성되어 로컬측으로 전송할 데이타 존재시 호스트측의 I/O포트 선택신호에 의해 해당로컬측으로 인터럽트신호 (INTL)를 발생하며, 로컬측의 제 1I/O포트 선택신호에 의해 해제되는 제 2 인터럽트 발생수단과, 버퍼(8 flip-flops & trstate buffer)(B1), 노아게이트(NG1) 및 오아게이트(OG1)로 구성되어, 호스트측의 I/O포트 선택신호및 라이트신호의 상태에 따라 데이타를 입력하고 로컬측의 제 1I/O포트 선택신호및 리드신호의 상태에 따라 입력데이타를 출력하는 제 1 데이타 전송수단과, 버퍼(8 flip-flops & tristate buffer)(B2), 노아게이트(NG2) 및 오아게이트(OG2)로 구성되어 로컬측의 제 1I/O포트 선택신호및 라이트신호의 상태에 따라 데이타를 입력하고 호스트측의 I/O포트 선택신호및 리드신호의 상태에 따라 입력데이타를 출력하는 제 2 데이타 전송수단으로 구성된다.
제 2 도는 상기 제 1 도와 같은 입출력 공유회로를 시스템의 호스트 CPU와 각각의 로컬 CPU에 연결되는 구성을 나타내는 도면이다.
상술한 구성에 의거 본 고안을 제 1 도 및 제 2 도를 참조하여 상세히 설명한다.
제 2 도에서 보면 각 로컬LCPU(LCPU1-LCPUn)는 각각의 입출력 공유회로 (IOP1-IOPn)와 1 : 1로 매칭되어 있다. 임의의 로컬 CPU와 통신하고자 할시 상기 입출력 공유회로들을 선택하기 위하여 호스트CPU(HCPU)는 임의 할당된 I/O포트를 억세스 하기 위한 소정 어드레스 신호를 출력하며, 어드레스 디코더(AD)는 이 신호들을 디코딩하여 I/O 선택신호를 발생한다.
이때 해당 입출력 공유회로는 해당 로컬CPU로 인터럽트 신호를 발생하는 동시에 웨이트 신호발생부(wait sipnal generator)(WG) 인가하여 호스트CPU(HCPU)로 웨이트신호를 출력한다.
인터럽트 신호를 받은 해당 로컬 CPU(HCPU)로 부터의 명령 또는 데이타를 읽기 위해 임의 할당된 I/O선택신호신호가 발생되며, 이 제 I/O 선택신호와 리드신호신호에 의해 호스트 CPU(HCPU)에서 발생한 데이타 또는 명령을 입출력 공유회로를 통해 읽어들인다.
또한 로컬 CPU측의 데이타를 호스트 CPU(HCPU)측으로 전송하고자 할시에는 제 2 I/O 선택신호와 리드신호를 발생하고, 이 신호에 의해 입출력 공유회로에서는 호스트 CPU(HCPU)측으로 인터럽트 신호를 발생하게 되며, 인터럽트 신호를 인지할 호스트 CPU(HCPU)는 인터럽트 제어부(IC)를 통해 어느 로컬CPU에서 발생한 인터럽트 인가를 확인한후 리이드 및 I/O 선택신호를 이용하여 데이타를 읽어들이게 된다.
일반적으로 다수개의 CPU를 사용하여 구축된 시스템에서는 로컬CPU보다는 호스트 CPU의 부하가 더 크고 중요도가 높으므로 호스트 CPU의 제어하에 각 로컬 CPU와 호스트 CPU간에 통신이 이루어지도록 구성한다. 본 고안은 입출력포트 공유회로에서는 제 1 도와 같이 호스트 CPU가 로컬 CPU의 데이타를 억세스할시 초기 첫데이타에 한해서만 인터럽트 신호를 받고, 연속되는 데이타는 단지 리드 또는 라이트 동작으로 가능하게 하며, 로컬 CPU는 각각의 데이타에 의해 인터럽트로 데이타 억세스를 실행하도록 구성하였다.
먼저 호스트 CPU는 로컬 CPU로 명령을 주기 위해 또는 로컬 CPU가 처리한 데이타를 읽어오기 위해 임의로 할당된 I/O 포트를 억세스 한다. 이때 호스트 CPU의 임의 I/O포트 억세스 발생하는 "로우"상태의 I/O포트 선택신호는 인버터(IG2)를 통해 "하이"상태로 반전되어 플립플롭(FF2)의 클럭으로 인가되며, 상기 신호에 의해 플립플롭(FF2)은 변이 시점(low to high transition)에서 "하이"신호를 출력하여 호스트 CPU측으로 웨이트 신호를 발생하여 웨이트 상태에 들게하는 동시에, 해당 로컬 CPU측으로 인터럽트 신호를 발생하여 인터럽트 서비스 상태에 들게한다.
그리고 호스트 CPU에서 발생하는 명령 또는 데이타(D0-D7)는 노아게이트(NG1)를 통한 I/O포트 선택신호(CSH)와 라이드신호의해 (low to high transition시점) 버퍼(B1)의 내부에 저장된다. ; 이때 해당로컬 CPU는 인터럽트 서비스 루팅으로 호스트 CPU로 부터 전송되어온 명령 또는 데이타를 얻기 위해 임의 할당된 I/O포트를 억세스 하게되며, 이로 인하여 발생되는 제 1 I/O 선택신호에 의해 플립플롭(FF2)의 출력은 클리어되어 "로우"상태로 변환되므로 호스트CPU의 웨이트상태 및 로컬CPU의 인터럽트 상태를 해제한다. 또한 오아게이트(OG1)는 제 1 I/O포트 선택신호및 리드신호를 논리합하여 "로우" 상태의 출력허가신호(Output enable)를 발생하므로, 버퍼(B1)의 내부에 저장하고 있는 데이타(D0-D7)로 로컬 CPU측으로 전송된다.
로컬 CPU가 임의로 작업을 처리하는 중에 발생한 데이타를 호스트 CPU측에 전송할 필요가 발생했을시에는, 로컬 CPU에서 임의 할당 I/O포트를 억세스하여, 이로 인하여 발생된 제 2I/O포트 선택신호는 인버터(IG1)를 통해 반전되어 플립플롭(FF1)의 클럭으로 공급된다. 따라서 인버터(IG1)의 출력이 "로우"에서 "하이"상태로 천이되는 시점에서 플립플롭(FF1)은 "하이"신호를 출력하여 호스트 CPU측으로 인터럽트 신호를 발생한다. 그러면 호스트는 CPU는 전술한 바와같이 해당 로컬 CPU로 할당된 임의 I/O포트를 억세스하여, 이로 인하여 I/O포트 선택신호가 발생되어 플립플롭(FF2)의 출력을 "로우"상태로 변화시키므로 호스트 CPU로의 인터럽트 신호를 해제시킨다.
이때 로컬 CPU에서 발생되는 데이타(D0-D7)는 노아게이트(NG2)를 통한 제 1 I/O포트 선택신호및 라이트신호신호의 부논리합 신호가 "하이"상태로 천이되는 순간버퍼(B2)의 내부에 저장되며, 호스트 CPU에서 발생된 I/O포트 선택신호및 리드신호가 오아게이트(OG2)를 통해 "로우"신호를 발생하는 동안 버퍼(B2)는 내부에 저장하고 있는 데이타(D0-D7)를 호스트 CPU로 출력한다.
상술한 바와같이 각각의 독립된 기능을 수행하는 다수개의 CPU로 구축된 시스템에서 호스트 CPU와 각각의 CPU사이에 입출력포트 공유회로를 부가함으로서 데이타 작업동기를 용이하게 실행할 수 있으며, 회로구성을 간단한 구성으로 구현하여 원가절감의 효과 및 범용성을 갖게되어 집적화가 용이하고 신뢰성을 향상시킬 수 있는 이점등이 있다.
Claims (1)
- 호스트 CPU 및 다수개의 로컬 CPU로 구축된 시스템에서 다수개의 로컬 CPU와 1 : 1로 매칭되어 호스트 CPU와 로컬 CPU간의 통신을 실행하는 입출력포트 공유회로에 있어서, 호스트측으로 전송할 데이타 존재시 발생하는 해당 로컬축의 제 2 I/O포트 선택신호에 의해 호스트 COU 인터럽트(INTH)를 발생하며, 호스트 CPU측의 해당 I/O호트 선택신호에 의해 해제되는 제 1 인터럽트 발생수단과, 로컬측으로 전송할 명령 또는 데이타 존재시 호스트측의 I/O포트 선택신호에 의해 해당 로컬측으로 인터럽트신호(INTL)를 발생하며, 로컬측의 I/O포트 선택신호에 의해 해제되는 제 2 인터럽트 발생수단과, 호스트측의 I/O포트 선택신호및 라이트신호상태에서 따라 데이타를 입력하고 로컬측의 제 1 I/O포트 선택신호및 리드신호의 상태에 따라 입력데이타를 출력하는 제 1 데이타 전송수단과, 로컬측의 제 1 I/O포트 선택신호및 라이트신호의 상태에 따라 데이타를 입력하고 호스트측의 I/O포트 선택신호및 리드신의 상태에 따라 입력데이타를 출력하는 제 2 데이타 전송수단으로 구성됨을 특징으로 하는 입출력포트 공유회로.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR2019890002029U KR910005479Y1 (ko) | 1989-02-27 | 1989-02-27 | Cpu간 통신을 위한 공유 입출력 포트회로 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR2019890002029U KR910005479Y1 (ko) | 1989-02-27 | 1989-02-27 | Cpu간 통신을 위한 공유 입출력 포트회로 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR900016096U KR900016096U (ko) | 1990-09-03 |
KR910005479Y1 true KR910005479Y1 (ko) | 1991-07-27 |
Family
ID=19283974
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR2019890002029U KR910005479Y1 (ko) | 1989-02-27 | 1989-02-27 | Cpu간 통신을 위한 공유 입출력 포트회로 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR910005479Y1 (ko) |
-
1989
- 1989-02-27 KR KR2019890002029U patent/KR910005479Y1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR900016096U (ko) | 1990-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US3959775A (en) | Multiprocessing system implemented with microprocessors | |
US4481572A (en) | Multiconfigural computers utilizing a time-shared bus | |
KR930008039B1 (ko) | 인터페이스 회로 | |
EP0172038B1 (en) | Information processor | |
JPS58500145A (ja) | 割込連結と監視システム | |
US7165133B2 (en) | Multiprocessor system having shared buses, prioritized arbitration, and clock synchronization circuitry | |
US4611275A (en) | Time sharing device for access to a main memory through to a single bus connected between a central computer and a plurality of peripheral computers | |
US7581049B2 (en) | Bus controller | |
US5159263A (en) | Lsi system having a test facilitating circuit | |
KR19990071464A (ko) | 범용멀티소스인터럽트구성을갖는고체데이터프로세서 | |
US7130946B2 (en) | Configuration and method having a first device and a second device connected to the first device through a cross bar | |
US5019962A (en) | Direct memory access controller for a multi-microcomputer system | |
KR910005479Y1 (ko) | Cpu간 통신을 위한 공유 입출력 포트회로 | |
JPS6242306B2 (ko) | ||
US4180855A (en) | Direct memory access expander unit for use with a microprocessor | |
US5446847A (en) | Programmable system bus priority network | |
US5222227A (en) | Direct memory access controller for a multi-microcomputer system | |
KR100190184B1 (ko) | 직렬버스를 통해 데이타를 송신하는 회로 | |
KR910008416B1 (ko) | 멀티포트 메모리를 이용한 다중화 프로세서간 통신 제어회로 | |
JPH064401A (ja) | メモリアクセス回路 | |
KR100737904B1 (ko) | 마스터/슬레이브 디바이스간의 인터페이스 장치 및 그 방법 | |
KR910000184B1 (ko) | 마이크로 프로세서간의 이중으로 할당된 램의 고속억세스 중재 제어시스템 및 그 방법 | |
KR960005716B1 (ko) | 엘리베이터의 주·종 마이콤 데이타 통신회로 | |
JP2533923B2 (ja) | 記憶制御装置 | |
KR940010807B1 (ko) | 정보처리장치용 버스시스템 및 정보처리 버스시스템 컨트롤러용 ic디바이스 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
REGI | Registration of establishment | ||
FPAY | Annual fee payment |
Payment date: 20020628 Year of fee payment: 12 |
|
LAPS | Lapse due to unpaid annual fee |