KR940008483B1 - Interrupt controller - Google Patents
Interrupt controller Download PDFInfo
- Publication number
- KR940008483B1 KR940008483B1 KR1019910024046A KR910024046A KR940008483B1 KR 940008483 B1 KR940008483 B1 KR 940008483B1 KR 1019910024046 A KR1019910024046 A KR 1019910024046A KR 910024046 A KR910024046 A KR 910024046A KR 940008483 B1 KR940008483 B1 KR 940008483B1
- Authority
- KR
- South Korea
- Prior art keywords
- interrupt
- priority
- edge
- vector
- input
- Prior art date
Links
Classifications
-
- 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
Abstract
Description
제1도는 본 발명에 의한 인터럽트 제어기의 일실시예 구성 블럭도.1 is a block diagram of an embodiment of an interrupt controller according to the present invention.
제2도는 제1도의 에지검출부 구성을 나타낸 일실시예 회로도.FIG. 2 is a circuit diagram of an embodiment of the edge detector of FIG.
제3도는 제1도의 우선순위 디코더 및 벡터발생부 구성을 나타낸 일실시예 회로도.3 is a circuit diagram illustrating an example of a priority decoder and a vector generator in FIG.
제4도는 본 발명을 적용시킨 전전자 교환시스템의 개략적인 요구 블럭도.4 is a schematic request block diagram of an electronic switching system to which the present invention is applied.
* 도면의 주요 부분에 대한 부호의 설명* Explanation of symbols for the main parts of the drawings
1,2 : 래치부 3 : 에지검출부1, 2 latch portion 3, edge detection portion
4 : 우선순위 디코더 및 벡터발생부 5 : 벡터래치부4: priority decoder and vector generator 5: vector latch
본 발명은 인터럽트 제어기에 관한 것으로, 특히 디바이스제어용 프로세서 시스팀에서 여러 인터럽트 발생원으로부터 인터럽트 요구입력을 받아 프로세서에 인터럽트를 요구하고 프로세서에서 인터럽트 응답신호를 받으면 요구입력의 우선순위에 해당하는 인터럽트 벡터를 발생시키는 인터럽트 제어기에 관한 것이다.The present invention relates to an interrupt controller. In particular, the device control processor system receives an interrupt request input from various interrupt sources and requests an interrupt from the processor, and generates an interrupt vector corresponding to the priority of the request input when the processor receives an interrupt response signal. An interrupt controller.
기존의 일반적인 인터럽트 제어기는 인터럽트 요구신호가 액티브(active)되었을 경우에만 인터럽트가 발생되므로 신호값이 변화(transition : 논리값 0에서 1로 또는 1에서 0으로 변화)되는 순간마다 인터럽트를 발생시키고자 하는 경우, 부가장치를 통하여 신호의 변화시마다 인터럽트 제어기가 인터럽트로 인지할 수 있는 신호로 변환시켜 주어야 한다.Conventional interrupt controllers generate interrupts only when the interrupt request signal is active. Therefore, the interrupt controller generates an interrupt every time a signal value changes (transition: from 0 to 1 or 1 to 0). In this case, whenever the signal changes through the additional device, it must be converted into a signal that the interrupt controller can recognize as an interrupt.
그 예로서, 인텔의 8259A와 같은 인터럽트 제어기는 입력이 논리값 1이 되면 프로세서에 인터럽트를 요구하며 프로세서로부터 인터럽트 응답(interrupt acknowledgement)을 받을때까지 계속 논리값 1을 유지하고 있어야만 정상적인 인터럽트가 프로세서에 전달되는 레벨 트리거링(level triggering) 방식을 채용하고 있다.As an example, an interrupt controller, such as Intel's 8259A, requests an interrupt from the processor when the input reaches a logic value of 1, and must remain at logic value 1 until an interrupt acknowledgment is received from the processor. The level triggering method is adopted.
그러나 이러한 인터럽트 제어기를 사용할 경우는 신호가 변환될때마다 인터럽트를 발생기키기 위해서 입력신호가 변화될때마다 일정시간동안 논리값 1을 유지시키는 장치를 부가하여야 한다.However, in the case of using such an interrupt controller, in order to generate an interrupt every time a signal is converted, a device for maintaining a logic value 1 for a predetermined time every time the input signal is changed must be added.
반면에, 모토로라의 MC68901과 같은 에지 트리거링 방식의 인터럽트 제어기는 신호가 변화될때 인터럽트를 발생시키거나 레지스터에 의하여 폴링에지와 라이징에지의 하나를 선택하도록 되어있다.On the other hand, edge-triggered interrupt controllers, such as Motorola's MC68901, are designed to either generate an interrupt when the signal changes or select one of the polling and rising edges by a register.
따라서 신호가 변화될때마다 인터럽트를 발생시키고자 할 경우 신호를 2개의 입력에 연결하고 하나의 입력은 폴링에지, 나머지 하나의 입력은 라이징에지에서 인터럽트를 발생하도록 하여 신호가 변화될때마다 인터럽트를 발생시키고 있다.Therefore, if you want to generate an interrupt every time the signal changes, connect the signal to two inputs, one input polling edge and the other input to generate an interrupt on the rising edge. have.
그러나 프로세서에서 볼때 폴링에지에서 발생되는 인터럽트와 라이징에지에서 발생되는 인터럽트는 별개의 인터럽트로 인식되며, 또한 우선순위도 다르므로 소프트웨어에 의하여 동일한 인터럽트로 인식되도록 별도의 처리를 하여야 하며, 동일한 인터럽트를 발생시키기 위해서는 반드시 2개의 입력을 사용하여야 하는 문제점이 있었다.However, in the processor, interrupts generated from polling edges and interrupts generated from rising edges are recognized as separate interrupts, and because their priority is different, they must be processed separately so that they are recognized as the same interrupt by software. In order to do this, there is a problem that two inputs must be used.
따라서, 본 발명은 상기의 제반 문제점들을 해결하기 위하여 안출된 것으로서, 하나의 입력에 폴링에지와 라이징에지에 의하여 인터럽트를 발생시키는 회로를 조합하여 레지스터의 조작으로 폴링에지, 라이징에지, 또는 폴링에지와 라이징에지 모두에 의하여 인터럽트를 발생시킬 수 있도록 하며, 이러한 장치 다수를 우선 순위를 가지도록 조합하여 인터럽트가 발생되면 우선순위에 따라서 프로세서에 인터럽트를 요구하고, 해당 인터럽트를 구분할 수 있도록 인터럽트 벡터를 발생시키는 인터럽트 제어기를 제공함에 그 목적을 두고 있다.Accordingly, the present invention has been made to solve the above problems, by combining a circuit that generates an interrupt by the falling edge and the rising edge at one input, and the falling edge, rising edge, or falling edge with the operation of the register. Interrupts can be generated by all of the rising edges, and a combination of a number of these devices has a priority to request an interrupt to the processor according to the priority when the interrupt occurs, and generate an interrupt vector to distinguish the interrupts. Its purpose is to provide an interrupt controller.
본 발명은 상기 목적을 달성하기 위하여, 인터럽트 발생원으로부터 인터럽트 요구입력을 받아 프로세서에 인터럽트를 요구하고, 프로세서로부터 인터럽트 응답신호를 받으면 요구입력의 우선순위에 해당하는 인터럽트 벡터를 발생시키는 인터럽트 제어기에 있어서, 우선순위를 가지는 다수의 인터럽트 요구입력을 받아 라이징에지와 폴링에지를 검출하는 에지검출수단 ; 출력단에 연결된 에지검출수단의 폴링에지 검출동작을 인에이블 또는 디스에이블 시키는 값을 입력하여 저장하는 제1래치수단 ; 출력단에 연결된 에지검출수단의 라이징에지 검출동작을 인에이블 또는 디스에이블 시키는 값을 입력하여 저장하는 제2래치수단 ; 상기 에지검출수단의 출력을 받아 인터럽트를 요구하고, 인터럽트 응답을 받으면 상기 에지검출수단으로부터 입력된 신호중 가장높은 우선순위의 우선순위 값에 해당하는 인터럽트 벡터를 출력하고 에지검출수단으로 해당 우선순위 요소를 클리어 시키는 신호를 출력하는 우선순위 디코더 및 벡터발생수단 ; 및 상기 우선순위 디코더 및 벡터발생수단에서 출력되는 벡터와 조합하여 완전한 인터럽트 벡터를 구성하도록 상위비트의 벡터값을 저장하는 제3래치수단을 구비하여 인터럽트 요구입력의 라이징에지, 폴링에지 또는 양쪽 모두의 에지에서 선택적으로 인터럽트를 발생시킬 수 있게 한다.In order to achieve the above object, the present invention provides an interrupt controller which receives an interrupt request input from an interrupt generation source, requests an interrupt from the processor, and generates an interrupt vector corresponding to the priority of the request input when receiving an interrupt response signal from the processor. Edge detection means for detecting a rising edge and a falling edge by receiving a plurality of interrupt request inputs having priority; First latch means for inputting and storing a value for enabling or disabling the polling edge detection operation of the edge detection means connected to the output terminal; Second latch means for inputting and storing a value for enabling or disabling the rising edge detection operation of the edge detection means connected to the output terminal; Receives the output of the edge detection means and requests an interrupt. When receiving the interrupt response, outputs an interrupt vector corresponding to the priority value of the highest priority among the signals input from the edge detection means, and sends the priority element to the edge detection means. Priority decoder and vector generating means for outputting a signal for clearing; And a third latch means for storing the vector value of the higher bit to form a complete interrupt vector in combination with the vector output from the priority decoder and the vector generating means, for the rising edge, the falling edge, or both of the interrupt request input. Enables selective interrupt generation at the edge.
이하, 첨부한 도면을 참조하여 본 발명의 실시예를 상세히 설명한다.Hereinafter, with reference to the accompanying drawings will be described an embodiment of the present invention;
제1도는 본 발명에 의한 인터럽트 제어기의 일실시예 구성 블럭도로서, 본 발명의 인터럽트 제어기는 입력의 수에 제한이 없으나, 본 도의 경우는 8개의 입력을 가지는 구성예를 나타낸 것이다.1 is a block diagram of an embodiment of an interrupt controller according to the present invention. Although the interrupt controller of the present invention has no limit on the number of inputs, the present invention shows an example of a configuration having eight inputs.
도면에서 1 및 2는 래치부, 3은 에지검출부, 4는 우선순위 디코더 및 벡터발생부, 5는 벡터래치부를 각각 나타낸다.In the drawings, 1 and 2 denote latch portions, 3 denote edge detection portions, 4 denote priority priorities and vector generators, and 5 denote vector latches.
도면에 도시한 바와 같이 본 발명의 인터럽트 제어기는, 인터럽트 요구입력 신호의 에지를 검출하는 에지 검출부(3)와, 상기 에지검출부(3)로부터 입력된 8개의 신호들중 하나 이상의 신호가 액티브 되면 프로세서에 인터럽트를 요구하고 프로세서로부터 인터럽트 응답이 오면 액티브된 입력신호들중 가장 높은 우선순위 값에 해당되는 3비트의 인터럽트 벡터를 발생시키고 해당 우선순위의 에지검출부를 클리어 하기 위한 신호를 출력하는 우선순위 디코더 및 벡터발생부(4)와, 프로세서가 지정하는 상위 벡터를 저장하고 있다가 인터럽트 응답시 벡터발생부에서 발생되는 3비트의 벡터와 동시에 출력하여 1바이트의 벡터를 프로세서에 주기 위한 5비트의 벡터래치부(5)와, 상기 에지검출부(3)에 입력되는 신호 각각의 폴링에지 검출과 라이징에지 검출동작 수행 여부를 결정하기 위한 2개의 8비트 래치부(1,2)를 구비하고 있다.As shown in the figure, the interrupt controller of the present invention includes a processor for detecting an edge of an interrupt request input signal and a processor when one or more signals among eight signals inputted from the edge detector 3 are activated. Priority decoder that generates an interrupt vector of 3 bits corresponding to the highest priority value among the active input signals and outputs a signal to clear the edge detection part of the priority when an interrupt is requested from the processor and an interrupt response is received from the processor. And a 5-bit vector for storing the vector generator 4 and the higher vector designated by the processor and simultaneously outputting the 3-bit vector generated by the vector generator in response to an interrupt to give the 1-byte vector to the processor. Falling edge detection and rising edge detection motion of the latch unit 5 and the signal input to the edge detection unit 3, respectively Further comprises two 8-bit latch section (1, 2) for determining whether to perform.
또한, 본 발명은 입력신호에서 에지를 감지하기 위하여 폴링에지와 라이징에지를 감지하는 두개의 에지검출소자를 조합하고, 이러한 검출소자를 다수 우선순위 엔코더(priority encoder)를 통하여 가장 높은 우선순위의 입력을 구분하며, 프로세서에 인터럽트를 요구하고 동시에 인터럽트 벡터를 만들어낸다. 프로세서에서 인터럽트 응답이 오면 가장 높은 우선순위의 벡터를 프로세서에 공급하고 해당 우선순위의 에지검출소자를 클리어한다.In addition, the present invention combines two edge detection elements for detecting edges and rising edges in order to detect edges in the input signal, and inputs the detection elements with the highest priority through a plurality of priority encoders. It requests an interrupt from the processor and generates an interrupt vector at the same time. When the processor receives an interrupt response, it supplies the processor with the highest priority vector and clears the edge detector with that priority.
에지검출부(3)는 제어 레지스터에 의하여 폴링에지 검출소자와 라이징에지 검출소자를 각각 인에이블(enable), 디스에이블(disable)시킬 수 있는데, 모두 디스에이블 시키면 인터럽트가 발생되지 않으며, 폴링에지 검출소자만을 인에이블 시키면 폴링에지에 의하여 인터럽트가 발생되며, 라이징에지 검출소자만을 인에이블 시키면 라이징에지에 의하여 인터럽트가 발생되며, 모두 인에이블 시키면 입력신호가 변화될때마다 인터럽트가 발생된다.The edge detector 3 may enable or disable the falling edge detector and the rising edge detector, respectively, by means of a control register. When the edge detector 3 is disabled, interrupts are not generated. If only the enable is enabled, an interrupt is generated by the falling edge. If only the rising edge detection element is enabled, an interrupt is generated by the rising edge. When all are enabled, an interrupt is generated whenever the input signal changes.
에지검출부(3)는 우선순위를 갖는 다수의 인터럽트 요구입력을 받아 라이징에지와 폴링에지를 검출하는 것이다.The edge detector 3 detects a rising edge and a falling edge by receiving a plurality of interrupt request inputs having priority.
래치부(1)는 데이타 버스에 입력단이 연결되고 출력단은 상기 에지검출부(3)의 폴링에지 인에이블 단자에 각각 연결되어 있으며, 상기 에지검출부(3)의 폴링에지 검출동작을 인에이블 또는 디스에이블 시키는 값을 저장하는 것이다.The latch unit 1 has an input terminal coupled to the data bus and an output terminal coupled to the polling edge enable terminal of the edge detector 3, respectively, and enables or disables the polling edge detection operation of the edge detector 3. Is to store the value to
래치부(2)는 데이타 버스에 입력단이 연결되고 출력단은 상기 에지검출부(3)의 폴링에지 인에이블 단자에 각각 연결되어 있으며, 상기 에지검출부(3)의 라이징에지 검출동작을 인에이블 또는 디스에이블 시키는 값을 저장한다.The latch unit 2 has an input terminal coupled to the data bus and an output terminal coupled to the falling edge enable terminal of the edge detector 3, respectively, and enables or disables the rising edge detection operation of the edge detector 3. Save the value
우선순위 디코더 및 벡터발생부(4)는 상기 에지검출부(3) 및 프로세서간에 연결되어 있으며, 상기 에지검출부(3)로부터 입력된 8개의 신호들중 하나 이상의 신호가 액티브 되면 프로세서에 인터럽트를 요구하고 프로세서로부터 인터럽트 응답이 오면 액티브된 입력 신호들중 가장 높은 우선순위의 우선순위 값에 해당하는 3비트의 인터럽트 벡터를 발생시키고, 해당 우선순위의 에지검출부(3)내 검출소자를 클리어 시키기 위한 신호를 출력한다.The priority decoder and the vector generator 4 are connected between the edge detector 3 and the processor. When one or more of the eight signals input from the edge detector 3 are activated, an interrupt is requested from the processor. When an interrupt response is received from the processor, a three-bit interrupt vector corresponding to a priority value of the highest priority among the active input signals is generated, and a signal for clearing the detection element in the edge detection unit 3 of the corresponding priority is cleared. Output
벡터래치부(5)는 데이타 버스와 상기 우선순위 디코더 및 벡터발생부(4) 연결되어 있으며, 프로세서가 저장하는 상위 벡터를 저장하고 있다가 인터럽트 응답시 상기 우선순위 디코더 및 벡터발생부(4)에서 발생되는 3비트의 벡터와 조합하여 1바이트의 완전한 인터럽트 벡터를 구성하고 프로세서에 주기 위해 상위 비트의 벡터값을 저장하는 5비트의 래치부이다.The vector latch unit 5 is connected to a data bus, the priority decoder and the vector generator 4, and stores a higher vector stored by a processor, and the priority decoder and the vector generator 4 in response to an interrupt response. It is a 5-bit latch that stores the vector value of the high-order bit to form a complete interrupt vector of 1 byte and combines it with the 3-bit vector generated by the.
제2도는 본 발명에 의한 에지검출부의 일실시예 회로도로서, 하나의 입력에 대한 것이다.2 is a circuit diagram of an edge detector according to an exemplary embodiment of the present invention, and is for one input.
따라서 제1도에서와 같이 8개의 입력을 가지는 경우 이와 같은 에지검출부 회로가 8개 필요하다.Therefore, in the case of having eight inputs as shown in FIG. 1, eight such edge detector circuits are required.
도면에 도시한 바와 같이 에지검출부는 하나의 인터럽트 요구입력신호로부터 라이징에지를 검출하는 플립플롭(32)과, 인터럽트 요구입력단에 연결되어 입력된 신호를 반전시키는 인버터(33)와, 반전된 입력을 받아 폴링에지를 검출하는 플립플롭(31)과, 상기 두 플립플롭(31,32)의 부출력을 하나의 출력으로 만들어주는 AND 게이트(36)와, 인터럽트의 전달이 완료되어 우선순위 디코더 및 벡터발생부(4)로부터 클리어 신호와, 폴링에지 인에이블 또는 라이징에지 인에이블 신호를 받으며 논리곱하여 해당 에지검출부(3)의 플립플롭을 클리어시키는 AND 게이트(34,35)와, 상기 AND 게이트(36) 출력단과 우선순위 디코더 및 벡터발생부(4)의 클리어 신호 출력단에 입력단이 연결되고 상기 두 AND 게이트(34,35) 입력단이 각각 연결된 OR 게이트(37)를 구비함을 보인다.As shown in the figure, the edge detector includes a flip-flop 32 for detecting a rising edge from one interrupt request input signal, an inverter 33 connected to the interrupt request input terminal and inverting the input signal, and an inverted input. A flip-flop 31 for receiving polling edges, an AND gate 36 for making the sub-outputs of the two flip-flops 31 and 32 into one output, and the transfer of the interrupts to complete the priority decoder and the vector. AND gates 34 and 35 for receiving a clear signal from the generator 4 and a falling edge enable or rising edge enable signal to logically multiply to clear the flip-flop of the edge detector 3, and the AND gate 36. ), An input is connected to an output terminal, a clear signal output terminal of the priority decoder and the vector generator 4, and an OR gate 37 connected to the two AND gates 34 and 35, respectively.
플립플롭(31,32)의 클리어 단자에 연결된 상기 두 AND 게이트(34,35)는 플립플롭의 동작여부를 결정하는 신호 (폴링에지 인에이블, 라이징에지 인에이블)와 연결되어 있어 폴링에지 및 라이징에지의 검출을 선택적으로 제어할 수 있다.The two AND gates 34 and 35 connected to the clear terminals of the flip-flops 31 and 32 are connected to signals (falling edge enable and rising edge enable) to determine whether the flip-flop is operated. Detection of edges can be selectively controlled.
제3도는 본 발명에 의한 우선순위 디코더 및 벡터발생부(4)의 일실시예 회로도로서, 에지검출부(3)의 출력을 받아 프로세서에 인터럽트를 요구하고 프로세서로부터 인터럽트 응답신호가 오면 가장 높은 우선순위의 인터럽트 벡터를 출력하고 해당 우선순위의 에지검출부에 있는 플립플롭을 클리어하기 위한 신호를 발생시키는 회로이다.3 is a circuit diagram of an embodiment of the priority decoder and the vector generator 4 according to the present invention, which receives the output of the edge detector 3 and requests an interrupt from the processor, and has the highest priority when an interrupt response signal is received from the processor. A circuit for outputting an interrupt vector and generating a signal for clearing the flip-flop in the edge detector of the priority.
도면에 도시한 바와 같이 우선순위 및 디코더 및 벡터발생부(4)는, 에지검출부(3)로부터 입력된 다수의 신호들중 하나 이상의 신호가 액티브되면 인터럽트 요구신호를 발생시키는 AND 게이트(41)와, 액티브된 입력신호들중 가장 높은 우선순위 신호의 우선순위 값을 2진 신호의 조합으로 출력하는 것으로서 TTL74148과 같은 우선순위 엔코더(42 ; priority encoder)와, 프로세서로부터 인터럽트 응답신호를 받으면 상기 우선순위 엔코더의 출력을 래치하고 래치된 값을 벡터의 일부로 출력하는 3비트 래치(43)와, 상기 래치(43)에 저장된 값이 출력되면 이 출력값을 받아 에지검출부(3)에 해당 우선순위의 인터럽트 전달이 완료되었음을 나타내는 클리어 신호를 발생시키는 것으로서 TTL74138과 같은 디코더(44)로 구성된다.As shown in the figure, the priority and decoder and vector generator 4 includes an AND gate 41 which generates an interrupt request signal when one or more signals among a plurality of signals input from the edge detector 3 are activated. The priority encoder 42 outputs the priority value of the highest priority signal among the active input signals as a combination of binary signals, and receives the interrupt response signal from the processor. 3-bit latch 43 for latching the output of the encoder and outputting the latched value as part of the vector, and when the value stored in the latch 43 is outputted, the output is received and the interrupt of the priority is transmitted to the edge detector 3. It is composed of a decoder 44 such as TTL74138 as generating a clear signal indicating that this is completed.
래치(43)의 출력은 프로세서로 입력되는 인터럽트 벡터값의 일부분이 되며, 이는 디코더(44)를 통하여 해당 우선순위의 에지검출부 클리어 신호를 발생시키므로 여러 입력이 동시에 가해졌을 경우에도 가장 높은 우선순위의 입력부터 차례로 처리된다.The output of the latch 43 becomes part of the interrupt vector value input to the processor, which generates the edge detector clear signal of the corresponding priority through the decoder 44, so that even if multiple inputs are applied simultaneously, the highest priority It is processed in turn from the input.
본 도 (제3도)는 에지검출부로부터의 인터럽트 입력이 8개일 경우의 예이며, 입력의 수가 달라질 경우 우선순위 엔코더(42)와 디코더(44)는 해당 갯수만큼을 처리하도록 하며, 래치(43)의 비트수도 입력수에 맞도록 조정하면 된다.FIG. 3 is an example of eight interrupt inputs from the edge detector. If the number of inputs is different, the priority encoder 42 and the decoder 44 process the corresponding number, and the latch 43 You can also adjust the number of bits to fit the input number.
그러면, 에지검출부(3)로부터 받은 우선순위를 가진 다수의 입력들중 하나 이상의 액티브 신호가 발생될때마다 인터럽트 출력 (INTREQ)신호를 발생시키고, 인터럽트 응답 신호를 받으면 다수의 입력 신호들에서 액티브된 신호들중 가장 높은 우선순위 신호의 우선순위를 2진값으로 출력하고 해당 우선순위의 클리어신호를 발생시킨다.Then, an interrupt output (INTREQ) signal is generated whenever one or more active signals among the plurality of inputs having the priority received from the edge detector 3 are generated, and when the interrupt response signal is received, the signals are activated from the plurality of input signals. Among these, the priority of the highest priority signal is output as a binary value and a clear signal of the corresponding priority is generated.
제4도는 본 발명을 국산 전전자 교환기인 TDX-10(등록상표임) 전전자 교환에 응용한 예이다.4 is an example in which the present invention is applied to TDX-10 (registered trademark) electronic exchange, which is a domestic electronic exchanger.
즉 두개의 하위프로세서(A,B)가 이중화되어 있으며, 하나의 하위프로세서가 디바이스(C)의 제어권을 갖는다. 디바이스제어권은 두 하위프로세서에서 출력되는 제어버스선택(이하, TBSEL이라 함) 신호에 의하여 결정되는데, 하위프로세서 A에서 출력되는 TBSEL(A)와 하위프로세서 B에서 출력되는 TBSEL(B)가 동일한 값을 가지면 하위프로세서 B가 디바이스의 제어권을 갖고, 다른값을 가지면 프로세서 A가 디바이스의 제어권을 가지게 된다.That is, two subprocessors (A, B) are redundant, and one subprocessor has control of the device (C). The device control right is determined by the control bus select signal output from the two subprocessors (hereinafter referred to as TBSEL). TBSEL (A) output from subprocessor A and TBSEL (B) output from subprocessor B have the same value. If it has, subprocessor B has control of the device, and if it has a different value, processor A has control of the device.
따라서, 각각의 하위프로세서는 상대편의 TBSEL 신호를 받아 자신의 TBSEL과 비교하므로써 자신의 제어권을 가지고 있는지 알수 있으며, 또한 자신의 TBSEL을 변화시켜 상대편이 가지고 있는 제어권을 가져올 수 있다.Therefore, each subprocessor knows whether it has its own control right by receiving the other's TBSEL signal and compares it with its own TBSEL, and can also change its TBSEL to bring its own control right.
이와 같이 두 하위프로세서는 언제든지 TBSEL을 변화시켜 제어권을 바꿀 수 있으므로 상대편의 TBSEL의 변화를 감지하여 제어권의 변화에 대한 적절한 대응을 할 수 있어야 한다. 이러한 경우에 하위프로세서는 상대편 TBSEL 신호를 본 발명의 인터럽트 제어기에 입력하면 상대편 TBSEL 신호가 변화될때마다 인터럽트를 발생시키므로 하위프로세서는 상대편 TBSEL 신호의 변화를 신속하게 감지할 수 있다.As such, the two subprocessors can change the control right by changing the TBSEL at any time, so that the sub-processor must detect the change in the TBSEL of the other side and respond appropriately to the change in the control right. In this case, when the subprocessor inputs the counterpart TBSEL signal to the interrupt controller of the present invention, the subprocessor generates an interrupt whenever the counterpart TBSEL signal changes, so that the subprocessor can quickly detect a change in the counterpart TBSEL signal.
따라서, 상술한 바와 같은 본 발명의 인터럽트 제어기는 래치(1,2)의 값에 따라 입력신호의 폴링에지, 라이징에지 또는 양쪽 모두에서 인터럽트를 선택적으로 발생시킬 수 있으므로, 입력신호의 액티브 값(0 또는 1)에 상관없이 인터럽트를 발생시킬 수 있고, 또한 입력신호가 변화될때마다 인터럽트를 발생시킬 수 있어 다양한 인터럽트 소스를 별도의 처리과정을 거치지 않고 그대로 연결하여 사용할 수 있는 효과를 갖는다.Accordingly, the interrupt controller of the present invention as described above can selectively generate interrupts at the falling edge, rising edge, or both of the input signals according to the values of the latches 1, 2, so that the active value of the input signal is zero. Alternatively, regardless of 1), an interrupt can be generated, and an interrupt can be generated whenever an input signal is changed, so that various interrupt sources can be connected and used without going through a separate process.
Claims (4)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019910024046A KR940008483B1 (en) | 1991-12-23 | 1991-12-23 | Interrupt controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019910024046A KR940008483B1 (en) | 1991-12-23 | 1991-12-23 | Interrupt controller |
Publications (2)
Publication Number | Publication Date |
---|---|
KR930014071A KR930014071A (en) | 1993-07-22 |
KR940008483B1 true KR940008483B1 (en) | 1994-09-15 |
Family
ID=19325725
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019910024046A KR940008483B1 (en) | 1991-12-23 | 1991-12-23 | Interrupt controller |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR940008483B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19739530C1 (en) * | 1997-09-09 | 1998-12-24 | Siemens Ag | Circuit for generating interrupt signal for microprocessor |
-
1991
- 1991-12-23 KR KR1019910024046A patent/KR940008483B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR930014071A (en) | 1993-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4785421A (en) | Normalizing circuit | |
US4237534A (en) | Bus arbiter | |
US4495569A (en) | Interrupt control for multiprocessor system with storage data controlling processor interrupted by devices | |
US4021655A (en) | Oversized data detection hardware for data processors which store data at variable length destinations | |
US4788640A (en) | Priority logic system | |
US20020129074A1 (en) | Modulo remainder generator | |
US4733348A (en) | Virtual-memory multiprocessor system for parallel purge operation | |
JPH0260004B2 (en) | ||
JPH09160785A (en) | Apparatus and method for generation of interrupt | |
KR940008483B1 (en) | Interrupt controller | |
JPH07152586A (en) | Cyclic priority-level encoder | |
US5481728A (en) | Data processor having circuitry for high speed clearing of an interrupt vector register corresponding to a selected interrupt request | |
CN215833909U (en) | Secure operation circuit and microprocessor chip | |
US4831572A (en) | Polynomial vector arithmetic operation control system | |
KR100313945B1 (en) | Multi-interrupt controller | |
KR960016407B1 (en) | Interrupt generating circuit in mcu | |
US4969090A (en) | Program routine vectoring circuit for selectively using either stored interupt instructions or incoming interupt handling instructions | |
KR100244885B1 (en) | Multiple interrupt communication circuit | |
JPH0546535A (en) | Data transfer interface device | |
KR200142909Y1 (en) | Input/output interface apparatus | |
EP0431570A2 (en) | Logical circuit | |
SU794631A1 (en) | Input-output control device | |
SU1084795A1 (en) | Interruption device | |
KR100267767B1 (en) | Interrupt generator | |
JP4068020B2 (en) | Network communication equipment |
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: 19980616 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |