KR960001270B1 - Communication control circuit with redundancy - Google Patents

Communication control circuit with redundancy Download PDF

Info

Publication number
KR960001270B1
KR960001270B1 KR1019920011244A KR920011244A KR960001270B1 KR 960001270 B1 KR960001270 B1 KR 960001270B1 KR 1019920011244 A KR1019920011244 A KR 1019920011244A KR 920011244 A KR920011244 A KR 920011244A KR 960001270 B1 KR960001270 B1 KR 960001270B1
Authority
KR
South Korea
Prior art keywords
bus
signal
local
data
shared
Prior art date
Application number
KR1019920011244A
Other languages
Korean (ko)
Other versions
KR940000986A (en
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 KR1019920011244A priority Critical patent/KR960001270B1/en
Publication of KR940000986A publication Critical patent/KR940000986A/en
Application granted granted Critical
Publication of KR960001270B1 publication Critical patent/KR960001270B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus

Abstract

a local memory; a common memory connected between a common address bus and a common data bus; a first buffer for connecting the common address to the local address bus; a second buffer for connecting the common data bus to the local data bus; a third buffer for connecting the common address bus to a VME address bus; a fourth buffer for connecting the common data bus to a VME data bus; a first central processing unit for accessing the local memory and the common memory through the first and second buffers; a second central processing unit for accessing the common memory through the third and fourth buffers and commonly sharing data with the first central processing unit; a bus error controller for generating an error signal until an upper data strobe signal is set; a data error transmission recognition generator for generating a bus error signal; a bus mediator for applying a data transmission recognition signal and the bus error signal to a master unit of the first and second central processing units; a bus controller for providing control signals to the VME bus; and a control signal generator for generating control signals and enabling the second buffer through the input signals.

Description

리던던시를 갖는 통신제어회로Communication control circuit with redundancy

제1도는 본 발명에 따른 통신제어회로의 이중화 구성도.1 is a redundant configuration diagram of a communication control circuit according to the present invention.

제2도는 본 발명에 따른 이중화 프로세서간의 VME버스 중재 설명도.2 is an explanatory diagram of VME bus arbitration between redundant processors according to the present invention.

제3도는 본 발명에 따른 리던던시를 갖는 통신제어회로의 블럭구성도.3 is a block diagram of a communication control circuit having redundancy according to the present invention.

제4도a도 및 제4b도는 제3도의 일실시예의 상세회로도.4A and 4B are detailed circuit diagrams of one embodiment of FIG.

제5a도 내지 제5d도는 제4a도 및 제4b도의 각 부분의 동작타이밍도.5A to 5D are operation timing diagrams of respective parts of FIGS. 4A and 4B.

제6도는 본 발명의 메모리 맵도.6 is a memory map diagram of the present invention.

* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings

10,12 : 제1,제2CPU 14-20 : 제1-제4버퍼부10,12: 1st, 2nd CPU 14-20: 1st-4th buffer unit

22 : 버스중재부 24 : 버스에러제어부22: bus arbitration unit 24: bus error control unit

26 : 버스제어부 28 : 데이터전송인지신호 발생부26: bus control unit 28: data transmission signal generator

30 : 국부메모리 32 : 공통메모리30: local memory 32: common memory

34 : 제어신호발생부34: control signal generator

본 발명은 통신제어시스템에 관한 것으로, 특히 리던던시(redundancy)를 갖는 이중화된 프로세서간의 통신을 제어하는 회로에 관한 것이다.TECHNICAL FIELD The present invention relates to a communication control system, and more particularly to a circuit for controlling communication between redundant processors having redundancy.

일반적으로 원격종합정보시스템과 같은 통신시스템에서 상위의 시스템과 하위의 시스템간에 많은 데이터의 신속한 처리를 요한다.In general, a communication system such as a remote comprehensive information system requires rapid processing of a large amount of data between a higher system and a lower system.

그리고 데이터처리에 대한 신뢰성 향상을 위해 마스터(master)와 슬레이브 (slave)로 이중화하여 프로세서간에 정보를 송수신함으로써 마스터 콘트롤러가 기능 이상시 상대 슬레이브 콘트롤러가 이의 기능을 대신하여 명령을 수행할 수 있는 통신제어회로가 필요하게 된다.And by improving the reliability of data processing, master and slave are duplicated to send and receive information between processors, so that when the master controller malfunctions, the other slave controller can execute commands on its behalf. A circuit is needed.

따라서 본 발명의 목적은 이중화되어 하드웨어(hardware)는 서로 동일하고 기능적으로 분담된 프로세서간의 통신을 제어할 수 있는 리던던시를 갖는 통신제어회로를 제공함에 있다.Accordingly, an object of the present invention is to provide a communication control circuit having redundancy so that hardware can control communication between processors that are identical and functionally shared with each other.

이하 본 발명을 첨부한 도면을 참조하여 상세히 설명한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

제1도는 본 발명에 따른 통신제어회로의 이중화 구성도이다. 본 발명은 제어부의 신뢰성을 높이기 위하여 제1도와 같이 리던던시 구성을 한다. 즉, 액티브/대기 (active/stand-by) 구조로 이중화된 제1,제2콘트롤러(2,6)를 두어 하나는 정상동작을 하게 하고 다른 하나는 대기중에 있게 하여 정상 동작하고 있는 콘트롤러의 프로세서인 중앙처리장치(Central Processing Unit : 이하 “CPU”라 함)에서 이상이 발생할 때 대기중인 콘트롤러의 프로세서인 CPU가 그 기능을 수행하게 한다. 이때 두 CPU간에 별도의 통신 채널(103,104)이 필요한데, 본 발명에서는 공유 공통메모리(4,8)를 사용하여 두 CPU간 통신을 가능하게 하며, 마스터가 슬레이브를 액세스하는 구성에서 슬레이브도 마스터를 액세스할 수 있다. 그리고 프로세서, 즉 CPU의 이중화는 별도로 구성된 VME(Versa Module Euro)버스 메모리를 사용하기 때문에 VME버스(101)를 공통의 버스를 사용하여 제1,제2콘트롤러(2,6)의 각 CPU간의 통신이 가능하게 한다. 또한 VME버스(101)는 데이터 전송버스(Data Transfer Bus : 이하 “DTB”라 함), 우선권 인터럽트버스, 데이터 중재버스, 유틸리티(utility) 버스로 구성되어 있다. VME버스 (101)는 고속 비동기 병렬의 데이터 전송버스를 포함한다.1 is a redundant configuration diagram of a communication control circuit according to the present invention. The present invention has a redundancy configuration as shown in FIG. 1 to increase the reliability of the controller. That is, the first and second controllers 2 and 6, which are dualized in an active / stand-by structure, are placed in a standby state and one is in a standby state, and the other is in a standby state. When an error occurs in the central processing unit (hereinafter referred to as “CPU”), the CPU, the processor of the waiting controller, performs the function. In this case, separate communication channels 103 and 104 are required between the two CPUs. In the present invention, communication between the two CPUs is enabled using the shared common memory 4 and 8, and the slave accesses the master in a configuration in which the master accesses the slaves. can do. In addition, since the processor, that is, CPU redundancy uses a separately configured Versa Module Euro (VME) bus memory, communication between each CPU of the first and second controllers 2 and 6 using the VME bus 101 using a common bus. Makes this possible. In addition, the VME bus 101 is composed of a data transfer bus (hereinafter referred to as "DTB"), a priority interrupt bus, a data arbitration bus, and a utility bus. The VME bus 101 includes a high speed asynchronous parallel data transfer bus.

제2도는 본 발명에 따른 이중화된 프로세서간의 VME버스의 중재 (arbit ra tion) 설명도로서, VME버스에 규정된 버스중재레벨중 레벨 ˝3”을 이용하는 것을 보인 것이다. 상기 제2도의 제1,제2CPU(10,12)는 각각 상기 제1도의 제1, 제2콘 트롤러(2,4)의 프로세서이며, VME버스(101)를 사용하여 상호간에 통신을 한다. 이때 버스중재레벨 “3”을 사용하므로 버스요구신호는 BR3*이 되고, 버스사용허가신호는 BG3IN*, BG3OUT*이 되며, BBSY*는 버스사용중신호이다.FIG. 2 is an explanatory diagram of the arbitration of the VME bus between the redundant processors according to the present invention, which shows that the level # 3 ”of the bus arbitration levels defined in the VME bus is used. The first and second CPUs 10 and 12 of FIG. 2 are processors of the first and second controllers 2 and 4 of FIG. 1, respectively, and communicate with each other using the VME bus 101. At this time, since the bus arbitration level “3” is used, the bus request signal is BR3 *, the bus permission signals are BG3IN *, BG3OUT *, and BBSY * is the bus busy signal.

제3도는 본 발명에 따른 리던던시를 갖는 통신제어회로의 블록구성도로서, 국부(local) 어드레스버스(201)와 국부데이타버스(202)에 연결되는 국부메모리(30)와, 공유(shared)어드레스버스(203)와 공유데이타버스(204)에 연결되는 공통메모리 (32)와, 공유어드레스버스(203)와 국부어드레스버스(201) 사이에 접속되고 버스중재부(22)의 제어에 의해 인에이블(enable)되어 공유어드레스버스(203)와 국부어드레스버스(201)를 연결하는 제1버퍼부(14)와, 공유데이타버스(204)와 국부데이타버스(202) 사이에 접속되고 제어신호발생부(34)의 제어에 의해 인에이블되어 공유데이타버스(204)와 국부데이타버스(202)를 연결하는 제2버퍼부(16)와, VME어드레스버스(205)와 공유어드레스버스(203) 사이에 접속되고 버스중재부(22)의 제어에 의해 인에이블되어 공유어드레스버스(204)와 VME어드레스버스(205)를 연결하는 제3버퍼부(18)와, VME데이타버스(206)와 공유데이타버스(204)사이에 접속되고 버스중재부 (22)의 제어에 의해 인에이블되어 공유데이타버스(204)와 VME데이타버스(206)를 연결하는 제4버퍼부(20)와, 국부버스(201,202)를 통해 국부메모리 (30)와 제1,제2버퍼부(14,16)에 연결되고, 국부메모리(30)를 액세스(access)하며, 공유버스(203,204)에 대한 버스 요구를 하여 버스사용허가신호 BG3IN* 입력시 제1,제2버퍼부(14,16)를 통해 공통메모리(32)를 액세스하는 프로세서인 제1CPU(10)와, 제1CPU(10)와 상호간에 액티브/대기중에 서로 다른 하나의 상태로 이중화되어 상대적으로 마스터와 슬레이브로 동작하고, 상기 VME버스(205,206)를 통해 제3, 제4 버퍼부(18,20)에 연결되며, 공유버스(203,204)에 대한 버스요구를 하여 버스사용허가신호 BG3IN* 입력시 제3,제4버퍼부(18,20)를 통해 공통메모리(32)를 액세스하여 제1CPU(10)와 데이터를 공유하는 프로세서인 제2CPU(12)와, 제1,제2CPU(10,12)가 공통메모리(32)와 국부메모리(30)중 해당 메모리를 액세스하기 시작함에 따라 해당 CPU로부터 발생되는 상위데이타 스트로브신호 LLUDS*, SLUDS*가 설정시간이 경과될 때까지 종료되지 않을 경우 에러신호를 발생하는 버스에러제어부(24)와, 상위데이타 스트로브신호 LLUDS *, SLUDS*가 발생되는 시점으로부터 일정시간 지연후 공유버스(203,204)와 국부버스(201,202)중 해당하는 버스에 대한 버스점유의 종료를 나타내는 데이터전송인지 (Data Transfer ACknowledge : 이하 “DTACK”라 함)신호 DTACK*를 발생하면, DTA CD신호 DTACK*가 발생되기 전에 버스에러제어부(24)로부터 에러신호가 발생될시 해당하는 버스의 에러를 나타내는 버스에러신호 BERR*를 발생하는 DTACK신호 발생부 (28)와, VME버스(205,206)상의 제어신호들을 감시하여 VME버스(205,206)가 휴지 (idle)상태인 경우에 공유버스(203,204)에 대한 제1,제2CPU(10,12)의 버스요구에 응답하여 버스사용허가신호 BG3IN*를 해당 CPU에 인가하여 버스사용을 허가하고, 공통메모리(32)에 대한 제1,제2 CPU (10,12)의 액세스를 선택적으로 지정하는 마스터 인에이블신호 MASTENN*를 발생하며 그에 따라 제1,제3,제4버퍼부(14,18,20)를 대응되게 인에이블시키고, DTACK신호 DTACK*와 버스에러신호 BERR*를 입력하여 제1, 제2CPU(10,12)중 마스터인 CPU에 인가하는 버스중재부(22)와, 마스터 인에이블신호 MASTENN*에 따라 국부버스(201,202)의 제어신호들을 VME버스(205,206)와 연결하는 버스제어부(26)와, 제1,제2CPU(10,12)와 버스중재부(22)의 제어에 따라 국부메모리 (30)와 공통메모리 (32)에 대한 리드/라이트를 제어하기 위한 제어신호들을 발생하여 국부메모리(30)와 공통메모리(32)에 인가하며 제2버퍼부(16)를 인에이블시키는 제어신호발생부(34)로 구성한다.3 is a block diagram of a communication control circuit having redundancy according to the present invention, which includes a local memory 30 connected to a local address bus 201 and a local data bus 202, and a shared address. It is connected between the common memory 32 connected to the bus 203 and the shared data bus 204 and the shared address bus 203 and the local address bus 201 and is enabled by the control of the bus mediation section 22. (enable) is connected between the first buffer unit 14, which connects the shared address bus 203 and the local address bus 201, and the shared data bus 204 and the local data bus 202, and the control signal generator Enabled by the control of 34, between the second buffer unit 16, which connects the shared data bus 204 and the local data bus 202, between the VME address bus 205 and the shared address bus 203. Connected and enabled by the control of the bus arbitration unit 22, so that the shared address bus 204 and the VME address are The third buffer unit 18 which connects the bus 205 and the VME data bus 206 and the shared data bus 204 are connected to each other and are enabled by the control of the bus mediation unit 22 to enable the shared data bus ( 204 and the fourth buffer unit 20 for connecting the VME data bus 206 and the local memory 30 and the first and second buffer units 14 and 16 through the local buses 201 and 202, The common memory 32 is accessed through the first and second buffer units 14 and 16 when the local memory 30 is accessed and the bus request signal BG3IN * is input by making a bus request to the shared buses 203 and 204. The first CPU 10, which is a processor that accesses the CPU, and the first CPU 10 are dualized with each other in an active / standby state to operate as a master and a slave, and are operated through the VME buses 205 and 206. 3, the fourth buffer unit (18, 20) is connected, the bus request for the shared bus (203, 204) to the bus use permission signal BG3IN * input when the third, fourth buffer unit (18, 20) The second CPU 12, which is a processor that accesses the common memory 32 and shares data with the first CPU 10, and the first and second CPUs 10 and 12 are the common memory 32 and the local memory 30. If the upper data strobe signals LLUDS * and SLUDS * generated by the corresponding CPU do not terminate until the set time elapses, the bus error controller 24 generates an error signal. Whether data transfer is indicative of the termination of bus occupancy for the corresponding bus between shared bus (203, 204) and local bus (201, 202) after a certain time delay from the time when strobe signals LLUDS * and SLUDS * are generated. When the signal DTACK * is generated, when the error signal is generated from the bus error controller 24 before the DTA CD signal DTACK * is generated, the DTACK signal that generates the bus error signal BERR * indicating the error of the corresponding bus. Occur (28) and control signals on the VME buses 205 and 206 to monitor the bus signals of the first and second CPUs 10 and 12 to the shared buses 203 and 204 when the VME buses 205 and 206 are in an idle state. In response, the bus enable permission signal BG3IN * is applied to the corresponding CPU to permit bus use, and a master enable signal for selectively specifying access of the first and second CPUs 10 and 12 to the common memory 32. MASTENN * is generated and correspondingly enable the first, third, and fourth buffer units 14, 18, and 20, and the DTACK signal DTACK * and the bus error signal BERR * are inputted to generate the first and second CPUs. 10 and 12, the bus arbitration unit 22 which is applied to the CPU which is the master, and the bus control unit 26 which connects the control signals of the local buses 201 and 202 to the VME buses 205 and 206 according to the master enable signal MASTENN *. Control for controlling read / write of the local memory 30 and the common memory 32 under the control of the first and second CPUs 10 and 12 and the bus intermediate unit 22. The control signal generator 34 generates the calls and applies them to the local memory 30 and the common memory 32 and enables the second buffer unit 16.

제4a도 및 제4b도는 상기 제3도에서 제1,제2CPU(10,12)를 제외한 나머지 부분의 일실시예의 상세회로도를 보인 것이다.4A and 4B show detailed circuit diagrams of one embodiment of the remaining portions except for the first and second CPUs 10 and 12 in FIG.

상기 제4a도는 상기 제3도중 제3,제4버퍼부(18,20)와 버스중재부(22)와 버스에러제어부(24)와 버스제어부(26)와 DTACK신호 발생부(28)의 상세회로도를 보인 것이다. 제3버퍼부(18)는 상기 제3도의 공유어드레스버스(203)에 해당하는 SA1-SA23과 VME어드레스버스(205)에 해당하는 XA1-XA23 사이에 연결된다. 제4버퍼부(20)는 상기 제3도의 공유데이타버스(204)에 해당하는 SD0-SD15와 VME데이타버스(206)에 해당하는 XD0-XD5에 연결된다. 버스중재부(22)는 GAL(Gate Array Logic)을 이용한 제1,제2버스중재모듈(module)(46,48)로 구성하고, 버스에러제어부 (24)는 4개의 카운터(50-56)로 구성하며, 버스제어부(26)는 GAL을 이용한 버스제어모듈(58)과 버퍼 (60)로 구성하며, DTACK신호 발생부(28)은 GAL을 이용한다.4A shows details of the third and fourth buffer units 18 and 20, the bus arbitration unit 22, the bus error control unit 24, the bus control unit 26, and the DTACK signal generation unit 28 in FIG. A schematic is shown. The third buffer unit 18 is connected between SA1-SA23 corresponding to the shared address bus 203 of FIG. 3 and XA1-XA23 corresponding to the VME address bus 205. The fourth buffer unit 20 is connected to the SD0-SD15 corresponding to the shared data bus 204 of FIG. 3 and the XD0-XD5 corresponding to the VME data bus 206. The bus arbitration unit 22 is composed of first and second bus arbitration modules 46 and 48 using a gate array logic (GAL), and the bus error control unit 24 includes four counters 50-56. The bus control unit 26 includes a bus control module 58 and a buffer 60 using the GAL, and the DTACK signal generator 28 uses the GAL.

제4b도는 상기 제3도중 제1,제2버퍼부(14,16)와 국부메모리(30)와 공통메모리(32)와 제어신호발생부(34)의 상세회로도를 보인 것이다. 제1버퍼부(14)는 상기 제3도의 공유어드레스버스(203)에 해당하는 SA1-SA23과 국부어드레스버스(201)에 해당하는 LA1-LA23 사이에 연결되는 3개의 버퍼(36-40)로 구성한다. 제2버퍼부(16)는 상기 제3도의 공유데이타버스(204)에 해당하는 SD0-SD15와 국부데이터버스(202)에 해당하는 LD0-LD15 사이에 연결되는 2개의 버퍼(42,44)로 구성한다.4B shows a detailed circuit diagram of the first and second buffer units 14 and 16, the local memory 30, the common memory 32, and the control signal generator 34 of FIG. 3. The first buffer unit 14 includes three buffers 36-40 connected between SA1-SA23 corresponding to the shared address bus 203 of FIG. 3 and LA1-LA23 corresponding to the local address bus 201. Configure. The second buffer unit 16 includes two buffers 42 and 44 connected between the SD0-SD15 corresponding to the shared data bus 204 of FIG. 3 and the LD0-LD15 corresponding to the local data bus 202. Configure.

국부메모리(30)는 상기 제3도의 국부어드레스버스(201)에 해당하는 LA1-LA23과 국부데이타버스(202)에 해당하는 LD0-LD15에 연결되는 램(62)RKH 롬(64)으로 구성한다. 공통메모리(32)는 상기 제3도의 공유어드레스버스(203)에 해당하는 SA1-SA23과 공유데이타버스(204)에 해당하는 SD0-SD15에 연결되는 2개의 램(66,68)으로 구성한다. 제어신호 발생부(34)는 GAL을 이용한다.The local memory 30 is composed of RAM 62 and ROMH ROM 64 connected to LA1-LA23 corresponding to the local address bus 201 of FIG. 3 and LD0-LD15 corresponding to the local data bus 202. . The common memory 32 includes two RAMs 66 and 68 connected to SA1-SA23 corresponding to the shared address bus 203 of FIG. 3 and SD0-SD15 corresponding to the shared data bus 204. The control signal generator 34 uses GAL.

상기 제4a도 및 제4b도에서 GAL을 이용한 제1,제2버스중재모듈(46,48)과 DTACK신호 발생부(28)와 버스제어모듈(58)과 제어신호 발생부(34)의 로직함수식 (logic equation)을 후술하는 바와 같다.The logic of the first and second bus arbitration modules 46 and 48, the DTACK signal generator 28, the bus control module 58 and the control signal generator 34 using the GAL in FIGS. 4A and 4B. The logic equation is as described later.

제5a도 내지 제5d도는 상기 제4a도 및 제4b도의 각 부분의 동작타이밍도로서, 제5a도는 버스중재부(22)의 동작타이밍도이고, 제5b도는 DTACK신호 발생부(28)의 동작타이밍도이며, 제5c도는 버스에러제어부(24)에서 에러신호 발생에 따라 DTACK신호 발생부(28)에서 버스에러신호 BERR*를 발생하는 동작타이밍도이며, 제5d도는 버스에러제어부(24)의 카운팅 동작타이밍도이다.5A to 5D are operation timing diagrams of the respective parts of FIGS. 4A and 4B, and FIG. 5A is an operation timing diagram of the bus arbitrator 22, and FIG. 5B is an operation of the DTACK signal generator 28. FIG. 5c is an operation timing diagram in which the bus error signal BERR * is generated by the DTACK signal generator 28 in response to the occurrence of an error signal in the bus error controller 24, and FIG. 5d is a timing diagram of the bus error controller 24. Counting motion timing.

제6도는 제1,2CPU(10,12)에 따른 메모리 맵을 보인 것이다.6 illustrates a memory map according to the first and second CPUs 10 and 12.

이하 본 발명에 따른 일실시예의 동작을 첨부한 도면을 참조하여 상세히 설명한다.Hereinafter, an operation of an embodiment according to the present invention will be described in detail with reference to the accompanying drawings.

우선 제2도와 같이 상호 통신을 하는 제3도의 제1,제2CPU(10,12)는 슬레이브의 메모리와 I/O장치를 선택하여 정보를 교환하기 위해 마스터를 통하여 DTB를 이용한다. 이때 데이터 전송은 비동기 인터록(inter lock) 방식으로 행해진다. 마스터측과 슬레이브측간의 데이터 전송은 시스템 클럭에 의해서 이루어지는 것이 아니라 슬레이브측의 제4a도와 같은 제1버스중재모듈(46)의 단자(LDTACKN)의 DTACK신호 DTACK*에 의해 이루어진다. 즉, 슬레이브측에서 DTACK신호 DTACK*를 되돌리지 않는한 마스터측은 데이터 전송 사이클을 끝내지 않는다. 그리고 본 발명에서는 데이터 라인중에서 D00-D15(16비트)만 이용하고, 라이트 사이클에서는 슬레이브가 데이터를 성공적으로 수신했다는 것을 나타내기 위해 DTACK신호 DTACK*를 “로우”상태로 구동하며 리드사이클에서는 데이터버스상에 데이터를 실었다는 것을 나타내기 위해 “로우”상태로 구동한다.First, the first and second CPUs 10 and 12 of FIG. 3, which communicate with each other as shown in FIG. 2, use a DTB through a master to exchange information by selecting a slave memory and an I / O device. At this time, data transmission is performed by an asynchronous interlock method. The data transfer between the master side and the slave side is not performed by the system clock but by the DTACK signal DTACK * of the terminal LDTACKN of the first bus arbitration module 46 as shown in FIG. 4A on the slave side. In other words, unless the slave returns the DTACK signal DTACK *, the master does not end the data transfer cycle. In the present invention, only D00-D15 (16 bits) is used in the data line, and in the write cycle, the DTACK signal DTACK * is driven to a "low" state to indicate that the slave has successfully received data, and in the read cycle, the data bus Drive to "low" state to indicate that data has been loaded on the phase.

그리고 DTACK신호 발생부(28)의 단자(02)의 버스에러신호 SBERR*는 슬레이브 또는 버스타이머인 버스에러제어부(24)가 마스터에게 데이터 전송의 실패를 알리기 위해 “로우”로 구동한다.The bus error signal SBERR * of the terminal 02 of the DTACK signal generator 28 is driven low by the bus error controller 24, which is a slave or a bus timer, to inform the master of the failure of data transmission.

버스중재부(22)의 제2버스중재모듈(48)은 VME버스 시스템의 각 CPU에서 버스를 액세스하기 위하여 버스 요구를 하는 모듈이며, 버스를 요구하는 방식으로서 RWD(Release When Done) 방식을 사용한다. RWD 방식은 버스를 액세스한 후 CPU에서 필요한 시간이 지나면 버스를 릴리즈하는 방식이며, 마스터는 CPU가 VME버스에 대하여 버스를 요구하고 액세스 허가를 받으면 CPU 내부 버스와 VME의 DTB를 연결하여 슬레이브를 액세스하도록 한다.The second bus arbitration module 48 of the bus arbitration unit 22 is a module that requests a bus to access the bus from each CPU of the VME bus system, and uses the release when Done (RWD) method as a bus request method. do. The RWD method is a method in which a bus is released after the CPU accesses the bus after the required time has passed.The master requests a bus for the VME bus and when the access is granted, the master accesses the slave by connecting the CPU internal bus and the DTB of the VME. Do it.

이때 버스제어부(26)의 버스제어모듈(58)은 데이터버스상에서 데이터의 전송 사이클을 개시하는 기능인 어드레스버스, AM코드, AS*, DS1*, DS0*, WR* 등의 신호선을 구동하는 기능을 가지는 모듈이다. 또한 버스제어부(26)의 버퍼(60)의 단자(B1)의 신호 XWR*는 데이터 전송 동작의 방향을 나타내기 위해 마스터에 의해 사용된다. 상기 신호 XWR*가 “로우”로 구동될 때 데이터 전송방향은 마스터로부터 슬레이브로 되며, “하이”일때는 슬레이브로부터 마스터로 된다.At this time, the bus control module 58 of the bus control unit 26 functions to drive signal lines such as address bus, AM code, AS *, DS1 *, DS0 *, WR *, and the like, which initiate a data transfer cycle on the data bus. Branch is a module. The signal XWR * of the terminal B1 of the buffer 60 of the bus control unit 26 is also used by the master to indicate the direction of the data transfer operation. When the signal XWR * is driven low, the data transfer direction is from master to slave, and when it is high, from slave to master.

VME버스 시스템의 최소 구성에서 버스상의 시스템중에서 DTB마스터는 하나뿐이지만 제1도와 같은 두 콘트롤러(2,6)가 가능한 각 마스터의 버스사용은 제1버스중재모듈(46)에 의해 조정된다. 제1,제2CPU(10,12)간의 통신은 공통메모리(32)를 이용하여 각 CPU가 원하는 정보를 보고 다른 CPU에서 버스 인터럽트를 걸어 이 정보를 읽어가게 함으로 정보교환을 하도록 하였다.In the minimum configuration of the VME bus system, there is only one DTB master in the system on the bus, but the bus usage of each master capable of two controllers 2 and 6 as shown in FIG. 1 is coordinated by the first bus arbitration module 46. The communication between the first and second CPUs 10 and 12 uses the common memory 32 to exchange information by viewing each CPU's desired information and causing a bus interrupt to read this information from another CPU.

마스터와 슬레이브의 제2버스중재모듈(48)은 버스를 요구할 때마다 버스를 점유하는 방식을 채택하여 각 버스 요구신호에 대하여 동등한 우선권을 부여한다. 각 CPU에 대한 버스요구에 따른 신호의 할당은 제2도와 같다. 제2도의 신호들중에서 버스요구신호 BR3*는 제1,제2CPU(10,12)가 공통으로 사용하며 버스 사용허가신호 BGOIN*와 BGOOUT*를 이용하여 데이지체인(daisy chain) 방식에 의해 버스중재를 한다.The second bus arbitration module 48 of the master and slave adopts a method of occupying the bus each time the bus is requested, thereby giving equal priority to each bus request signal. The signal allocation according to the bus request for each CPU is shown in FIG. Among the signals of FIG. 2, the bus request signal BR3 * is commonly used by the first and second CPUs 10 and 12, and the bus arbitration is performed by the daisy chain method using the bus permission signals BGOIN * and BGOOUT *. Do

제1,제2CPU(10,12)중 마스터의 CPU가 제1-제4버퍼부(14-20)와 버퍼 (60)를 이용하여 VME버스(205,206)를 통해 슬레이브의 CPU와 데이터 교환을 하기 위해서는 제1버스중재모듈(46)로부터 VME버스의 사용허가, 즉 마스터 인에이블신호 MASTENN*의 “로우”상태를 받아야 한다. 마스터에서는 이 신호를 이용하여 VME버스의 요구사항을 만족하게 DTB제어신호를 제어하여야 한다.The CPU of the master among the first and second CPUs 10 and 12 exchanges data with the slave CPUs through the VME buses 205 and 206 using the first through fourth buffer units 14-20 and the buffer 60. In order to receive the license of the VME bus from the first bus arbitration module 46, that is, the "low" state of the master enable signal MASTENN *. The master must use this signal to control the DTB control signal to meet the requirements of the VME bus.

또한 본 발명에서는 SGL(Single Level Arbiter) 방식을 채용하였다. DTACK신호 발생부(24)와 제2버스중재모듈(48)과 버스제어모듈(58)의 로직함수식을 다음에 설명한다. 상기 회로들은 제1버스중재모듈(46)과 함께 동작하여 VME버스(205,206)를 요구하고 버스사용허가신호 BR3IN*의 데이지체인방식에 의해 같은 버스요구신호 BR3*를 사용하는 보드 사이의 버스중재를 수행한다. 제1,제2CPU(10,12)에서 VME버스(205,206)를 사용하고자 하는 경우는 공통메모리(32)에 데이터를 라이트하고자할 경우인 VMENN*신호를 발생할 때와 인터럽트 ACK신호를 발생할 경우인 IACKVME신호를 발생할 때이다. 이 두 경우 제2버스 중재모듈(48)은 버스요구신호 BR3*(제4a도에서는 XBR3*)를 발생하고 버스점유신호 BG3IN*를 받으면 버스사용표시로 버스사용중신호 BBSY*를 액티브(“로우”)상태로 구동하고 버스액세스를 한다. 버스요구신호 BR3*를 액티브시키지 않은 상태에서 버스사용허가신호 BG3IN*를 받으면(“로우”상태) 다음 보드로 전달하여 다음 보드에서 VME버스(205,206)를 사용할 수 있도록 한다. 이때의 타이밍은 제5a도 및 제5b도와 같다.In addition, the present invention employs a single level arbiter (SGL) method. The logic function equations of the DTACK signal generator 24, the second bus arbitration module 48 and the bus control module 58 will be described next. The circuits operate in conjunction with the first bus arbitration module 46 to request bus VME buses 205 and 206 and to provide bus arbitration between boards using the same bus request signal BR3 * by means of a daisy chain of bus permission signal BR3IN *. To perform. In the case of using the VME buses 205 and 206 in the first and second CPUs 10 and 12, the IACKVME is generated when the VMENN * signal is generated and the interrupt ACK signal is generated when the data is written to the common memory 32. It is time to generate a signal. In both cases, the second bus arbitration module 48 generates the bus request signal BR3 * (XBR3 * in FIG. 4A) and activates the bus busy signal BBSY * as a bus usage indication when the bus occupancy signal BG3IN * is received. Drive to the bus and access the bus. When bus request signal BR3 * is not activated and bus permission signal BG3IN * is received (“low” state), it is transferred to the next board to enable the VME bus (205, 206) on the next board. The timing at this time is the same as that of FIGS. 5A and 5B.

버스에러제어부(24)에서는 제1CPU(10)가 국부메모리(30)를 액세스하거나 제1,제2CPU(10,12)가 공통메모리(32)를 액세스함에 따라 해당 CPU로부터 발생되는 상위데이타 스트로브신호 LLUDS*가 설정시간이 경과할 때까지 종료되지 않을 경우 에러신호를 발생하여 DTACK신호 발생부(28)에 인가한다. 이때 DTACK신호 발생부 (28)는 DTACK신호 DTACK*가 발생되기전에 버스에러제어부(24)에서 에러신호가 발생하면, 해당하는 버스의 에러를 나타내는 버스에러신호 BERR*,SBERR*를 발생한다. 이 버스에러신호 SBERR*는 제1버스중재모듈(46)를 통해 해당 CPU에 인가된다. 즉, 제5c도와 같이 특정번지를 액세스 시작하여 최대 160μs까지 DTACK신호 DTACK*를 기다린 후 DTACK*신호 DTACK*가 없을 경우 버스에러신호 BERR*를 “로우”로하여, 제1,제2CPU(10,12)에 버스에러가 발생했음을 알린다.In the bus error controller 24, the upper data strobe signal generated from the CPU as the first CPU 10 accesses the local memory 30 or the first and second CPUs 10 and 12 access the common memory 32. If LLUDS * is not terminated until the set time has elapsed, an error signal is generated and applied to the DTACK signal generator 28. At this time, when the error signal is generated by the bus error control unit 24 before the DTACK signal DTACK * is generated, the DTACK signal generator 28 generates bus error signals BERR * and SBERR * indicating errors of the corresponding bus. This bus error signal SBERR * is applied to the CPU via the first bus arbitration module 46. That is, as shown in FIG. 5C, when the specific address starts to be accessed and waits for the DTACK signal DTACK * for up to 160 μs, and there is no DTACK * signal DTACK *, the bus error signal BERR * is set to “low” and the first and second CPUs 10, Inform 12 that a bus error has occurred.

제1,제2CPU(10,12)가 VME버스(205,206)를 통하여 공통메모리(32)를 사용하기 위하여는 먼저 VME버스(205,206)상의 제어신호를 감시하여 휴지상태인 경우에만 사용이 가능하게 된다. 그렇지 않은 경우에는 다른 서브유니트가 공통메모리(32)를 사용중에 동시에 사용하게 되므로 데이터 충돌이 일어난다. 이런 현상을 피하기 위해 제2버스중재모듈(48)은 VME버스(205,206)상의 휴지상태를 알린다.In order for the first and second CPUs 10 and 12 to use the common memory 32 through the VME buses 205 and 206, the first and second CPUs 10 and 12 monitor the control signals on the VME buses 205 and 206. . Otherwise, data conflicts occur because other subunits use the common memory 32 simultaneously. To avoid this phenomenon, the second bus arbitration module 48 notifies the idle state on the VME buses 205 and 206.

다음에 VME데이타버스(206)의 제어를 보면, 제4버퍼부(20)는 제1버스중재모듈(46)의 단자(DDIR과 DSEN)의 제어를 받는다. DDIR신호는 “하이”일 경우 보드에서 VME버스로 방향제어한다. VMENN*신호는 VME데이타버스(206)의 데이터에 대한 제4버퍼부(20)를 위한 인에이블신호로 사용하며 제4버퍼부(20)의 제어는 VMEENN*신호와 MASTENN*신호에 의해 제어되며, 이 신호들에 의해 VME어드레스버스(205)의 어드레스에 대한 제3버퍼부(18)의 인에이블이 결정되며 공통메모리 (32)의 제어도 담당한다.Next, the control of the VME data bus 206 shows that the fourth buffer unit 20 is controlled by the terminals DDIR and DSEN of the first bus arbitration module 46. If the DDIR signal is "high", the board controls the VME bus. The VMENN * signal is used as an enable signal for the fourth buffer unit 20 for the data of the VME data bus 206. The control of the fourth buffer unit 20 is controlled by the VMEENN * signal and the MASTENN * signal. These signals determine the enable of the third buffer unit 18 with respect to the address of the VME address bus 205 and are also responsible for the control of the common memory 32.

제어신호발생부(34)에서는 각종 메모리 제어신호를 발생한다. CPU는 크게 국부메모리 및 10, 내부 공통메모리, VME메모리의 3가지의 액세스 공간을 가진다. 내부 공통메모리는 국부 CPU에 의해서도 액세스 가능하고 다른 VME마스터에 의해서도 액세스 가능한 듀얼 포트 모드로 동작한다. 따라서 제어신호도 국부메모리(30)용과 공통메모리(32)용으로 구분되며 제4b도에서는 신호들을 국부메모리(30)용은 “L”자로 공통메모리(32)용으로 “S”자로 구분하고 있다.The control signal generator 34 generates various memory control signals. The CPU has three access spaces: local memory, 10, internal common memory, and VME memory. The internal common memory operates in dual port mode, accessible by the local CPU and by another VMEmaster. Therefore, control signals are also divided into local memory 30 and common memory 32. In FIG. 4B, signals are divided into "L" for local memory 30 and "S" for common memory 32. .

먼저 국부메모리(30)용 제어신호중에서 LOE*(Local Output Enable)신호는 메모리 및 I/O의 리드 스트로브신호로서 CPU의 WR*신호가 “하이”이고 LDS*신호 또는 UDS*신호가 설정될 때 발생된다. 다만 가로채기 응답 사이클에는 가로채기를 요구한 장치가 가로채기 인지신호를 수신하여 벡터(vector)를 발생시키기까지 충분한 시간 여유를 주기 위하여 LWEN(Local Write Enable)이라는 별도의 신호로 LOE*신호를 지연시키고 있다. LEEL*(Local Write Enable Low)신호와 LWEH*(Local Write Enable High)신호는 라이트 스트로브신호로 각각 로우 바이트(기수어드레스)와 하이 바이트(우수 어드레스)에 대한 제어신호로 사용된다. CPU에서는 바이트단위 라이트시에도 데이터는 워드가 출력되기 때문에 하이, 로우바이트를 구분하여 메모리 또는 I/O에 라이트신호를 주는 것이 필요하다. 또한 특정 I/O는 라이트 할 때에 충분한 데이터 홀드시간을 요구하므로 LWEN신호라는 라이트 인에이블신호를 사용하여 칩선택이 해지되기 전 데이터 버스에 데이터가 존재하는 상태에서 메모리에 대한 라이트 스트로브 펄스를 종료하도록 하고 있다.First of all, the LOE * (Local Output Enable) signal among the control signals for the local memory 30 is a read strobe signal of memory and I / O. When the WR * signal of the CPU is “high” and the LDS * signal or the UDS * signal is set, Is generated. However, during the interception response cycle, the LOE * signal is delayed by a separate signal called Local Write Enable (LWEN) to allow sufficient time for the device requesting the interception to receive the interception acknowledgment signal and generate a vector. I'm making it. The LEEL * (Local Write Enable Low) signal and the LWEH * (Local Write Enable High) signal are write strobe signals used as control signals for the low byte (base address) and high byte (excellent address), respectively. In the CPU, data is outputted even when writing by byte. Therefore, it is necessary to give a write signal to the memory or I / O by dividing the high and low bytes. In addition, certain I / Os require a sufficient data hold time to write, so use a write enable signal called the LWEN signal to terminate the write strobe pulse for the memory in the presence of data on the data bus before chip selection is terminated. Doing.

다음에 공통메모리(32)용 제어신호인 SOE*(Shared Output Enable)신호 SWEL*(Shared Write Enable Low)신호, SWEH*(Shared Write Enable High)신호는 LOE*신호, LWEL*신호, LWEH*신호와 같은 용도이며, 유사한 방식으로 만들어진다. 다만 제어신호 입력으로 SWR*신호, SUDS*신호, SLDS*신호가 함께 사용되는데 이 신호는 LWR*신호, LUDS*신호, LLDS*신호에 공통메모리(32)의 액세스 방향을 제어하는 버스제어모듈(58)의 단자(13)의 마스터 인에이블신호 MASTENN*신호가 마스킹 (mas king)된 것이다. 이때 마스터 인에이블신호 MASTENN*가 “로우”이면 국부 CPU가 공통메모리(32)의 램(66,68)을 액세스하고 “하이”이면 외부 VME마스터가 공통메모리(32)의 램(66,68)을 액세스한다. SWR*신호, SLDS*신호, SLUDS*신호는 마스터 인에이블신호 MASTENN*가 “로우”일 때에는 국부 CPU로부터 출력되는 WR*신호, LDS*신호, UDS*신호로부터 만들어지고, “하이”일때에는 VME버스(205,206)로 인입되는 XWR신호, XDSO*신호, XDS1*신호로부터 만들어지는 양방향신호이며, SLUDS*신호는 SLDS*신호와 SUDS*신호의 논리합신호이다. SDEN*(Shared Data Enable)신호는 내,외부의 공통메모리를 액세스할 때의 공유버스측 데이터버퍼를 인에이블하는데 사용된다.Next, the SOE * (Shared Output Enable) signal SWEL * (Shared Write Enable Low) signal and SWEH * (Shared Write Enable High) signal, which are control signals for the common memory 32, are LOE * signal, LWEL * signal, and LWEH * signal. Same use as, and made in a similar way. However, the SWR * signal, the SUDS * signal, and the SLDS * signal are used together as the control signal input, which is a bus control module that controls the access direction of the common memory 32 to the LWR * signal, the LUDS * signal, and the LLDS * signal. The master enable signal MASTENN * signal of the terminal 13 of 58 is masked. At this time, if the master enable signal MASTENN * is "low", the local CPU accesses the RAMs 66 and 68 of the common memory 32. If the master enable signal MASTENN * is "low", the external VME master accesses the RAMs of the common memory 32. To access it. The SWR * signal, SLDS * signal, and SLUDS * signal are made from the WR * signal, LDS * signal, and UDS * signal output from the local CPU when the master enable signal MASTENN * is "low", and the VME when "high". It is a bidirectional signal made from the XWR signal, the XDSO * signal, and the XDS1 * signal entering the buses 205 and 206. The SLUDS * signal is a logical sum signal of the SLDS * signal and the SUDS * signal. The SDEN * (Shared Data Enable) signal is used to enable the shared bus side data buffer when accessing the internal and external common memory.

DTACK신호 발생부(28)에서의 국부 DTACK신호 및 버스에러신호 발생을 살펴보면, CPU는 비동기 데이터전송 방식을 채택하고 있으므로 슬레이브로부터 DTACK신호가 마스터쪽으로 접수되어야 액세스 사이클이 종료된다. 메모리 또는 I/O는 액세스 속도에 따라 여러 가지로 구분될 수 있으므로 각각에 맞게 DTACK신호의 지연 폭을 가변시켜 주어야 한다. 국부메모리(30)에 대한 DTACK신호의 차동화는 8MHz의 CPU 클럭 CPU CLK를 DTACK신호 발생부(28)의 내부의 쉬프트 레지스터에 의해 지연시킴으로서 이루어지는데, 쉬프트 레지스터는 국부 상위데이타 스트로브신호인 LLUDS*신호에 의해 기동되고 각 단계마다 1클럭(125μ)만큼 지연된다. 램에 대한 DTACK을 LLUDE*신호 인가후 최고 125μs만큼 지연되고, 롬은 250μs, I/O는 375μ만큼 지연되며, 가로채기 응답시에는 500μs만큼 지연된다. 어떤 경우든 DTACK신호가 125ms 이내에 인가되지 않으면 버스타임아웃으로 간주하고 CPU에 버스에서 신호를 인가하기 위한 타이머들인 카운터(50-56)가 대비하고 있다. 상기 카운터(50-56)는 800KHZ의 주파수를 가지는 CPU의 E클럭 ECLK를 클럭으로 받고 LLUDS*신호가 “하이”일 때 클리어되는 이중 4비트 카운터로서 중속접속되어 있다. 두 번째 카운터(52,56)는 제5d도와 같이 첫 번째 카운터(50,54)의 출력단자(QD1)로부터 받고, 두 번째 카운터(52,56)의 출력단자(WD2)가 “하이”가 되는 순간 CPU에 BERR*신호를 인가하게 되어 있으므로 LLUDS*신호가 인가되고 BERR*신호가 발생할 때까지의 시간 Tberr은 하기 (1)식과 같다.Looking at the generation of the local DTACK signal and the bus error signal in the DTACK signal generator 28, since the CPU adopts the asynchronous data transmission method, the access cycle ends when the DTACK signal is received from the slave to the master. Since the memory or I / O can be classified into various types according to the access speed, the delay width of the DTACK signal should be changed accordingly. The differentialization of the DTACK signal to the local memory 30 is achieved by delaying the 8 MHz CPU clock CPU CLK by the shift register inside the DTACK signal generator 28, which is a LLUDS * signal that is a local upper data strobe signal. It is activated by a signal and delayed by one clock (125 µ) for each step. The DTACK for RAM is delayed by up to 125μs after applying the LLUDE * signal, the ROM is delayed by 250μs, the I / O by 375μ, and the delay in response is 500μs. In any case, if the DTACK signal is not applied within 125ms, the counters 50-56, which are timers for applying the signal from the bus to the CPU, are considered bus timeout. The counter 50-56 is a dual 4-bit counter that is clocked when the E clock ECLK of a CPU having a frequency of 800 KHZ is cleared and is cleared when the LLUDS * signal is "high". The second counters 52 and 56 are received from the output terminals QD1 of the first counters 50 and 54, as shown in FIG. 5D, and the output terminals WD2 of the second counters 52 and 56 become “high”. Since the BERR * signal is applied to the CPU at the moment, the time until the LLUDS * signal is applied and the BERR * signal is generated is as follows.

[수학식 1][Equation 1]

Tberr=1.25ms×16(4비트)×8(3비트)=160ms ………………………(1)Tberr = 1.25 ms x 16 (4 bits) x 8 (3 bits) = 160 ms. … … … … … … … … (One)

LWEN*(Local Write Enavle)신호는 I/O 또는 램에 라이트 할 때에 데이터 홀드시간을 보장하기 위한 것으로 DTACK신호를 반전한 것을 사용한다.The LWEN * (Local Write Enavle) signal is used to invert the DTACK signal to ensure data hold time when writing to I / O or RAM.

공유 DTACK신호 및 버스에러신호인 SDTCK*신호 및 SBERR*신호는 LDTCK*신호 및 LBERR* 신호와 같은 방법으로 발생된다. 다만 입력이 LLUDS*신호가 아닌 SLUDS*신호이며, SLUDS*신호는 SUDS*신호 및 SLDS*신호와 마찬가지로 국부 CPU가 내부 공통메모리(32)를 액세스할 때에는 국부 CPU가 제공하고 다른 VME마스터가 액세스할 때에는 VME마스터가 제공한다. 다만 공통메모리(32)는 램(66,68)뿐이므로 국부메모리 경우처럼 다양한 지연시간을 할당할 필요는 없다. SWEN*신호도 LWEN*신호와 마찬가지로 데이터 전송이 종료하기 전에 라이트 스트로브신호를 먼저 종료시키기 위해 사용된다.The shared DTACK signal and the bus error signal, the SDTCK * signal and the SBERR * signal, are generated in the same way as the LDTCK * signal and the LBERR * signal. However, the input is a SLUDS * signal, not a LLUDS * signal. The SLUDS * signal, like the SUDS * signal and the SLDS * signal, is provided by the local CPU when the local CPU accesses the internal common memory 32, and accessed by other VME masters. Provided by the VME master. However, since the common memory 32 is only the RAM 66 and 68, it is not necessary to allocate various delay times as in the local memory case. Like the LWEN * signal, the SWEN * signal is used to terminate the write strobe signal first before the data transfer ends.

버스제어부(26)의 버스제어모듈(58)의 단자(01)의 MASINV신호는 MASTEN*신호가 반전된 것으로 VME어드레스에 대한 버퍼(60)의 인에이블신호로 사용된다. SAM0-SAM2신호는 AM0-AM2를 입력으로 하고 XAM0-XAM2로 출력되는 어드레스 수정신호이다. SLDS*신호, SUDS*신호는 양방향신호로서 VME측으로 출력시에는 제1버스중재모듈(46)의 단자(DSENN)의 DSEN*신호에 의해 마스킹된 신호인 BLDS*신호, BUDS*신호가 출력되고 VME버스로부터 입력시에는 XDSO*신호, XDS1*신호가 BLDS*, BUDS*로 입력되어 SLDS*신호, SUDS*신호로 출력된다. DS1신호는 SLDS*신호와 SLDS*신호가 논리합된 신호로 액티브 “하이”이며 제1버스중재모듈(46)에 입력된다.The MASINV signal of the terminal 01 of the bus control module 58 of the bus control unit 26 is an inverted MASTEN * signal and is used as an enable signal of the buffer 60 for the VME address. The SAM0-SAM2 signal is an address correction signal that is input to AM0-AM2 and output to XAM0-XAM2. The SLDS * signal and the SUDS * signal are bidirectional signals. When output to the VME side, the BLDS * signal and the BUDS * signal, which are signals masked by the DSEN * signal of the terminal DSENN of the first bus arbitration module 46, are outputted. When input from the bus, the XDSO * and XDS1 * signals are input to BLDS * and BUDS * and output as SLDS * and SUDS * signals. The DS1 signal is an active "high" signal in which the SLDS * signal and the SLDS * signal are ORed together, and are input to the first bus arbitration module 46.

그리고 내부 공통메모리(32)용 제어신호중 SOE*(Shared Output Enable)신호, SWEL*(Shared Write Enable Low)신호, SWEH*(Shared Write Enable High)신호는 LOE*, LUDS*, LLDS에, 내부 공통메모리(32)의 액세스방향을 제어하는 MASTEN*신호가 마스킹된 것이다. 상기 MASTEN*신호가 “로우”이면 국부 CPU가 내부 공통메모리(32)를 액세스하고 “하이”이면 외부 VME마스터가 내부 공유메모리를 액세스한다. SWR*신호, SLDS*신호, SLUDS*신호는 MASTEN*신호가 “로우”일 때에는 국부 CPU로부터 출력되는 WR*신호, LDS*신호, UDS*신호로부터 만들어지고, “하이”일 때에는 VME버스로 인입되는 XWR*신호, XDSO*신호, XDS1*신호로부터 만들어지는 양방향신호이며, SLUDS*신호는 SLDS*신호, SUDS*신호의 논리합신호이다. DSEN* (Shared Data Enable)신호는 내,외부의 공통메모리를 액세스할 때의 공유버스쪽 데이터 버퍼를 인에이블하는데 사용되는 신호이다.Among the control signals for the internal common memory 32, the SOE * (Shared Output Enable) signal, SWEL * (Shared Write Enable Low) signal, and SWEH * (Shared Write Enable High) signal are supplied to LOE *, LUDS *, and LLDS. The MASTEN * signal that controls the access direction of the memory 32 is masked. If the MASTEN * signal is "low", the local CPU accesses the internal common memory 32, and if it is "high", the external VME master accesses the internal shared memory. The SWR * signal, SLDS * signal, and SLUDS * signal are generated from the WR * signal, LDS * signal, and UDS * signal output from the local CPU when the MASTEN * signal is "low", and enters the VME bus when "high". Is a bidirectional signal generated from the XWR * signal, the XDSO * signal, and the XDS1 * signal. The DSEN * (Shared Data Enable) signal is used to enable the shared bus side data buffer when accessing the internal and external common memory.

상술한 바와 같이 본 발명은 공통메모리를 이용하여 이중화된 프로세서간의 통신을 제어하여 많은 데이터를 신속히 처리할 수 있으며 두 프로세서의 데이터 공유에 의해 리던던시를 갖게 함으로써 신뢰성을 향상시킬 수 있는 잇점이 있다.As described above, the present invention can control a communication between duplicated processors using a common memory to process a large amount of data quickly, and improve reliability by having redundancy by sharing data between two processors.

Claims (1)

통신제어 시스템에 있어서, 국부어드레스버스와 국부데이타버스에 연결되는 국부메모리와, 공유어드레스버스와 공유데이타버스에 연결되는 공통메모리와, 상기 공유어드레스버스와 상기 국부어드레스버스 사이에 접속되고 소정 제어에 의해 인에이블되어 상기 공유어드레스버스와 상기 국부어드레스버스를 연결하는 제1버퍼수단과, 상기 공유데이타버스와 국부데이타버스 사이에 접속되고 소정 제어에 의해 인에이블되어 상기 공유데이타버스와 상기 국부데이타버스를 연결하는 제1버퍼수단과, 상기 공유어드레스버스와 국부데이타버스 사이에 접속되고 소정 제어에 의해 인에블되어 상기 공유데이타버스와 국부데이타버스를 연결하는 제2버퍼수단과, VME어드레스버스와 상기 공유어드레스버스 사이에 접속되고 소정 제어에 의해 인에이블되어 상기 공유어드레스버스와 VME어드레스버스를 연결하는 제3버퍼수단과, VME데이타버스와 상기 공유데이타버스 사이에 접속되고 소정 제어에 의해 인에이블되어 상기 공유데이타버스와 VME데이타버스를 연결하는 제4버퍼수단과, 상기 국부버스를 통해 상기 국부메모리와 상기 제1,제2버퍼수단에 연결되고, 상기 국부메모리를 액세스하며, 상기 공유버스에 대한 버스요구를 하여 버스사용허가신호 입력시 상기 제1,제2버퍼수단을 통해 상기 공통메모리를 액세스하는 프로세서인 제1중앙처리장치와, 상기 제1중앙처리장치와 상호간에 액티브/대기중에 서로 다른 하나의 상태로 이중화되어 상대적으로 마스터와 슬레이브로 동작하고, 상기 VME버스를 통해 상기 제3,제4버퍼수단에 연결되며, 상기 공유버스에 대한 버스요구를 하여 상기 버스사용허가신호 입력시 상기 제3,제4버퍼수단을 통해 상기 공통메모리를 액세스하여 상기 제1중앙처리장치와 데이터를 공유하는 프로세서인 제2중앙처리장치와, 상기 제1,제2중앙처리장치가 상기 공통메모리와 국부메모리중 해당 메모리를 액세스하기 시작함에 따라 해당 중앙처리장치로부터 발생되는 상위데이타 스트로브신호가 설정시간이 경과될 때까지 종료되지 않을 경우 에러신호를 발생하는 버스에러제어수단과, 상기 상위데이타 스트로브신호가 발생되는 시점으로부터 일정시간 지연후 상기 공유버스와 국부버스중 해당하는 버스에 대한 버스점유의 종료를 나타내는 데이터전송인지신호를 발생하며, 상기 데이터전송인지신호가 발생되기 전에 상기 버스에러제어수단으로부터 상기 에러신호가 발생될 시 해당하는 버스의 에러를 나타내는 버스에러신호를 발생하는 데이터전송인지신호 발생수단과, 상기 VME버스상의 제어신호들을 감시하여 상기 VME버스가 휴지상태인 경우에 상기 공유버스에 대한 상기 제1,제2중앙처리장치의 버스요구에 응답하여 상기 버스사용허가신호를 해당 중앙처리장치에 인가하여 버스사용을 허가하고, 상기 공통메모리에 대한 상기 제1,제2중앙처리장치의 액세스를 선택적으로 지정하는 마스터 인에이블신호를 발생하며 그에따라 상기 제1,제3,제4버퍼수단을 대응되게 인에이블시키고, 상기 데이터전송인지신호와 버스에러신호를 입력하여 상기 제1,제2중앙처리장치중 마스터인 중앙처리장치에 인가하는 버스중재수단과, 상기 마스터 인에이블신호에 따라 상기 국부버스의 제어신호들을 상기 VME버스와 연결하는 버스제어수단과, 상기 제1,제2중앙처리장치와 상기 버스중재수단의 제어에 따라 상기 국부메모리와 공통메모리에 대한 리드/라이트를 제어하기 위한 제어신호들을 발생하여 상기 국부메모리와 공통메모리에 인가하며 상기 제2버퍼수단을 인에이블시키는 제어신호발생수단으로 구성하는 것을 특징으로 하는 리던던시를 갖는 통신제어회로.A communication control system, comprising: a local memory connected to a local address bus and a local data bus, a common memory connected to a shared address bus and a shared data bus, and connected between the shared address bus and the local address bus, and to a predetermined control. A first buffer means connected to the shared address bus and the local address bus, and connected between the shared data bus and the local data bus and enabled by a predetermined control to enable the shared data bus and the local data bus. A first buffer means for connecting a second buffer means connected between the shared address bus and the local data bus and enabled by a predetermined control to connect the shared data bus and the local data bus, and a VME address bus; Connected between the shared address buses and enabled by predetermined control A third buffer means for connecting the shared address bus and the VME address bus, and a fourth buffer connected between the VME data bus and the shared data bus and enabled by predetermined control to connect the shared data bus and the VME data bus. Means, connected to the local memory and the first and second buffer means via the local bus, accessing the local memory, and making a bus request for the shared bus to input the bus permission signal. A first central processing unit that is a processor accessing the common memory through a second buffer means, and the first central processing unit and the first central processing unit are duplexed into one state different from each other in active / standby mode and relatively operate as a master and a slave; Is connected to the third and fourth buffer means through the VME bus, and requests a bus for the shared bus to input the bus permission signal. A second central processing apparatus which is a processor for accessing the common memory through the third and fourth buffer means and sharing data with the first central processing apparatus; and the first and second central processing apparatuses being connected to the common memory. Bus error control means for generating an error signal when the upper data strobe signal generated from the central processing unit does not terminate until the set time has elapsed as the local memory starts to access the corresponding memory, and the upper data strobe signal. Generates a data transmission signal indicating the end of the bus occupancy for the corresponding bus among the shared bus and the local bus after a predetermined time delay from the time point at which the signal is generated, and from the bus error control means before generating the data transmission signal. When the error signal is generated, a bus error signal indicating an error of a corresponding bus is generated. Monitoring the control signals on the VME bus and permitting the bus to be used in response to a bus request of the first and second central processing apparatuses for the shared bus when the VME bus is idle. A signal is applied to the central processing unit to permit the use of a bus, and generates a master enable signal for selectively specifying access of the first and second central processing units to the common memory; Bus mediation means for correspondingly enabling the third and fourth buffer means and inputting the data transmission acknowledgment signal and the bus error signal to a central processing unit which is a master among the first and second central processing units; Bus control means for connecting control signals of the local bus to the VME bus according to an enable signal, and for control of the first and second central processing apparatuses and the bus mediation means. And generating control signals for controlling read / write of the local memory and the common memory, applying the control signals to the local memory and the common memory, and enabling the second buffer means. Communication control circuit with redundancy.
KR1019920011244A 1992-06-26 1992-06-26 Communication control circuit with redundancy KR960001270B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019920011244A KR960001270B1 (en) 1992-06-26 1992-06-26 Communication control circuit with redundancy

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019920011244A KR960001270B1 (en) 1992-06-26 1992-06-26 Communication control circuit with redundancy

Publications (2)

Publication Number Publication Date
KR940000986A KR940000986A (en) 1994-01-10
KR960001270B1 true KR960001270B1 (en) 1996-01-25

Family

ID=19335329

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019920011244A KR960001270B1 (en) 1992-06-26 1992-06-26 Communication control circuit with redundancy

Country Status (1)

Country Link
KR (1) KR960001270B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100299127B1 (en) * 1998-07-07 2001-09-06 윤종용 Apparatus and method for dualizing main processor in asynchronous transfer mode exchanger
KR100303461B1 (en) * 1997-12-29 2001-09-24 윤종용 Apparatus for inter processor communication in digital system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100303461B1 (en) * 1997-12-29 2001-09-24 윤종용 Apparatus for inter processor communication in digital system
KR100299127B1 (en) * 1998-07-07 2001-09-06 윤종용 Apparatus and method for dualizing main processor in asynchronous transfer mode exchanger

Also Published As

Publication number Publication date
KR940000986A (en) 1994-01-10

Similar Documents

Publication Publication Date Title
US4096572A (en) Computer system with a memory access arbitrator
US5392446A (en) Multiple cluster signal processor architecture
USRE44342E1 (en) Bus architecture employing varying width uni-directional command bus
CA1216366A (en) Data processing system architecture
US6557069B1 (en) Processor-memory bus architecture for supporting multiple processors
US5119480A (en) Bus master interface circuit with transparent preemption of a data transfer operation
US4821170A (en) Input/output system for multiprocessors
CA1179069A (en) Data transmission apparatus for a multiprocessor system
US4466098A (en) Cross channel circuit for an electronic system having two or more redundant computers
US4933838A (en) Segmentable parallel bus for multiprocessor computer systems
US4796176A (en) Interrupt handling in a multiprocessor computing system
JPS62189549A (en) Multi-hierachical level multi-processor
JPS5853379B2 (en) Multiprocessing device microcomputer
US5047921A (en) Asynchronous microprocessor random access memory arbitration controller
US4736319A (en) Interrupt mechanism for multiprocessing system having a plurality of interrupt lines in both a global bus and cell buses
EP0929866B1 (en) Bus interface control circuit
WO1995020192A1 (en) Bus deadlock avoidance during master split-transactions
US5509127A (en) Transmission logic apparatus for dual bus network
US6061599A (en) Auto-configuration support for multiple processor-ready pair or FRC-master/checker pair
US6023748A (en) Multiple client memory arbitration system capable of operating multiple configuration types
KR960001270B1 (en) Communication control circuit with redundancy
US6523077B1 (en) Data processing apparatus and data processing method accessing a plurality of memories in parallel
US5377334A (en) Fast asynchronous resource master-slave combination
US4494186A (en) Automatic data steering and data formatting mechanism
GB1595471A (en) Computer system

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
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: 20090102

Year of fee payment: 14

LAPS Lapse due to unpaid annual fee