KR100820255B1 - Interrupt controller - Google Patents
Interrupt controller Download PDFInfo
- Publication number
- KR100820255B1 KR100820255B1 KR1020060039268A KR20060039268A KR100820255B1 KR 100820255 B1 KR100820255 B1 KR 100820255B1 KR 1020060039268 A KR1020060039268 A KR 1020060039268A KR 20060039268 A KR20060039268 A KR 20060039268A KR 100820255 B1 KR100820255 B1 KR 100820255B1
- Authority
- KR
- South Korea
- Prior art keywords
- interrupt
- signal
- request signal
- register
- interrupt request
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/22—Microcontrol or microprogram arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
Abstract
본 발명은 인터럽트 제어 및 핸들링 기능을 주문형 집적회로 로직으로 구현하여 보드 공간 및 제작 비용 절감시키고 사용자의 기기 조작성, 확장성 및 운용성을 증대시킬 수 있도록 한 인터럽트 제어기에 관한 것이다.
본 발명은 인터럽트 제어기를 인터럽트 제어부, 인터럽트 요구신호 레지스터부, 인터럽트 마스크 레지스터부, 인터럽트 서비스 벡터 레지스터부, 우선순위 선택 레지스터부, 인터럽트 요구신호 래치 디플립플롭, 데이터 액세스용 트리 스테이트 버퍼를 포함하는 주문형 집적회로 로직으로 구현함으로써, 상기 인터럽트 제어 처리를 위하여 별도의 하드웨어의 추가가 필요하지 않게 되어 보드 공간 및 제작 비용 절감시킬 수 있고, 또한 하드웨어 변경 없이 손쉽게 인터럽트 처리 및 우선순위를 변경이 가능한 인터럽트 및 핸들링 제어가 이루어지게 되므로 사용자의 기기 조작성,운용성에 효율을 증대할 수 있게 되는 것이다
인터럽트 제어기
The present invention relates to an interrupt controller that implements interrupt control and handling functions in custom integrated circuit logic to reduce board space and manufacturing costs, and increase user device operability, scalability and operability.
The present invention is an on-demand controller comprising an interrupt controller, an interrupt request signal register, an interrupt mask register, an interrupt service vector register, a priority selection register, an interrupt request signal latch deflip, and a tree state buffer for data access. By implementing integrated circuit logic, no additional hardware is required for the interrupt control processing, thereby reducing board space and manufacturing cost, and interrupting and handling for easily changing interrupt processing and priority without changing hardware. Since the control is made, the efficiency of the user's device operability and operability can be increased.
Interrupt controller
Description
도 1은 종래 인터럽트 제어기의 블럭도1 is a block diagram of a conventional interrupt controller
도 2는 본 발명의 일실시예에 따른 인터럽트 제어기의 블럭도2 is a block diagram of an interrupt controller according to an embodiment of the present invention.
*도면의 주요부분에 대한 부호의 설명** Description of the symbols for the main parts of the drawings *
21; 인터럽트 제어부 21; Interrupt control
22; 인터럽트 요구신호 레지스터부22; Interrupt request signal register
23; 인터럽트 마스크 레지스터부 23; Interrupt Mask Register
24;인터럽트 서비스 벡터 레지스터부24; interrupt service vector register section
25; 우선순위 선택 레지스터부 25; Priority select register
25; 인터럽트 요구신호 래치 디플립플롭25; Interrupt Request Signal Latch Deflip-Flop
27; 데이터 액세스용 트리 스테이트 버퍼27; Tree State Buffers for Data Access
본 발명은 인터럽트 제어기에 관한 것으로, 상세하게는 인터럽트 제어 및 핸들링 기능을 주문형 집적회로 로직으로 구현하여 보드 공간 및 제작 비용 절감시키고 사용자의 기기 조작성, 확장성 및 운용성을 증대시킬 수 있도록 한 인터럽트 제 어기에 관한 것이다.The present invention relates to an interrupt controller, and more particularly, an interrupt controller that implements interrupt control and handling functions into custom integrated circuit logic to reduce board space and manufacturing cost, and increase user device operability, scalability, and operability. It is about.
일반적으로 인터럽트 제어기는 인텔사 M8259A 등과 같은 프로그램이 가능한 회로를 이용하여 인터럽트 제어기 기능을 구현하게 된다.Generally, the interrupt controller implements the interrupt controller function by using a programmable circuit such as the Intel M8259A.
종래의 인터럽트 제어기는 도 1에 도시한 바와 같이, 8개의 독립된 인터럽트를 처리할 수 있는 M8259A(11)를 인터럽트가 필요한 마이크로프로세서(12)에 사용하게 되고, 상기 M8259A(11)는 인터럽트 우선 순위를 처리하여 인터럽트 확인(Interrupt Acknowledge)(INTA)사이클 동안 마이크로프로세서(12)에 8비트의 벡터를 리턴 한다.In the conventional interrupt controller, as shown in FIG. 1, the
그리고 M8259A(11)와 마이크로프로세서(12) 간에는 양방향 데이터 버퍼(13), 어드레스 래쳐(14), 타이밍 제어부(15), 디코더(16), 인터럽트 클리어회로(17), 및 앤드게이트(18)가 구비된다.Between the
상기 양방향 데이터 버퍼(13)는 M8259A(11)의 인터럽트 벡터 레지스터의 읽기, 쓰기 동작을 액세스하기 위한 데이터 송수신기능 및 인터럽트 벡터를 상기 마이크로프로세서(12)가 읽기 위한 기능을 제공한다.The
상기 어드레스 래쳐(14)는 M8259A(11) 레지스터를 읽고 쓸때 레지스터를 선택할 수 있는 기능을 제공한다.The
상기 디코더(16)는 M8259A(11)의 액세싱을 활성화하기 위한 칩 선택신호를 만들어 준다.The
상기 인터럽트 클리어회로(17)은 마이크로프로세서(12)가 인터럽트 서비스 루틴을 끝나면 다른 인터럽트가 활성화될 수 있도록 인터럽트를 리세트시키는 기능 을 제공하며 마이크로프로세서(12)의 리세트가 활성화되거나 인터럽트벡터를 읽고난후 인터럽트를 클리어 한다.The interrupt
상기 앤드게이트(18)는 M8259A(11)에서 생성된 인터럽트신호(INT)와 인터럽트 클리어회로(17)에서 생성된 신호를 곱(AND)하여 마이크로프로세서(12)에게 인터럽트 요구신호(Interrupt Request)(INTR)신호를 생성한다.The
이와 같이 종래에는 M8259A 등과 같은 장치를 이용하여 인터럽트 제어기 기능을 수행하게 되므로, 상기 인터럽트 제어기는 인터럽트처리 수 및 우선순위가 고정되게 되고, 8개 이상의 인터럽트를 처리하는 경우 M8259A 등의 하드웨어의 추가가 요구되게 되어 확장성의 어려움 및 회로 구성을 위한 주변 회로가 필요하게 되어 보드 공간 및 효율성을 저하하는 문제점 있다. As such, since the conventional interrupt controller functions using a device such as the M8259A, the interrupt controller has a fixed number and priority for interrupt processing, and in the case of processing more than 8 interrupts, additional hardware such as the M8259A is required. There is a problem in that the scalability and the peripheral circuit for the circuit configuration is required to reduce the board space and efficiency.
본 발명의 목적은 인터럽트 제어 및 핸들링 기능을 주문형 집적회로 로직으로 구현하여 보드 공간 및 제작 비용 절감하는 데 있다.It is an object of the present invention to reduce board space and manufacturing costs by implementing interrupt control and handling functions with custom integrated circuit logic.
본 발명의 다른 목적은 인터럽트 및 핸들링 제어 및 하드웨어 변경 없이 손쉽게 인터럽트 처리 수와 우선순위 변경이 가능하도록 하여 사용자의 조작성, 운용성을 증대하는 데 있다.Another object of the present invention is to increase the operability and operability of a user by allowing the number of interrupt processing and priority to be easily changed without interrupt and handling control and hardware change.
상기의 목적을 실현하기 위하여 본 발명은 마이크로 프로세서로부터 어드레스, 클럭, 제어신호를 받아 인터럽트 제어 및 핸들링에 필요한 여러 가지 제어신호를 생성하여 출력하는 인터럽트 제어부와; 보드 내부 또는 외부로부터 입력되는 인터럽트 요구신호를 클럭신호로 동기화하여 샘플링한 후 출력하는 인터럽트 요구신 호 레지스터부와; 상기 인터럽트 제어부로부터 활성화 선택신호 및 마스크 클리어신호를 받아 활성화 및 비활성화하고 초기화하며 로컬 버스를 통해 읽고 쓰기하는 인터럽트 마스크 레지스터부와; 상기 인터럽트 제어부로부터 서비스 벡터 선택신호 및 읽기신호에 의하여 로컬 버스를 통해 읽고 쓰기하는 인터럽트 서비스 벡터 레지스터부와; 상기 인터럽트 제어부로부터 우선 순위 인터럽트 신호를 받아 우선 순위가 제일 높은 인터럽트 요구신호를 래치하는 우선순위선택 레지스터부와; 상기 인터럽트 제어부로부터 인터럽트 요구신호에 의하여 상기 인터럽트 요구신호 레지스터부에서 래치된 인터럽트 요구신호를 선택된 인터럽트 서비스 루틴을 수행 전에 래치하는 인터럽트 요구신호 래치 디플립플롭과; 상기 인터럽트 제어부에서 출력되는 제어신호에 의하여 8비트의 인터럽트 벡터를 송수신하는 데이터 엑세스용 트리 스테이트 버터를 포함한다.In order to achieve the above object, the present invention includes an interrupt control unit for generating an address, a clock, a control signal from a microprocessor and generating and outputting various control signals for interrupt control and handling; An interrupt request signal register unit for sampling and outputting an interrupt request signal inputted from inside or outside the board by synchronizing with a clock signal; An interrupt mask register unit configured to receive an activation selection signal and a mask clear signal from the interrupt control unit, activate, deactivate, initialize, and read and write data through a local bus; An interrupt service vector register unit for reading and writing from the interrupt control unit through a local bus according to a service vector selection signal and a read signal; A priority selection register unit which receives a priority interrupt signal from the interrupt control unit and latches an interrupt request signal having the highest priority; An interrupt request signal latch de-flip for latching the interrupt request signal latched in the interrupt request signal register section by the interrupt request signal before performing the selected interrupt service routine; And a tree state butter for data access to transmit and receive an 8-bit interrupt vector according to a control signal output from the interrupt controller.
이하 첨부되는 도면에 의거 본 발명을 상세히 설명하면 다음과 같다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.
도 2는 본 발명의 일실시예에 따른 인터럽트 제어기의 블럭도로서, 본 발명은 인터럽트 제어부(21), 인터럽트 요구신호 레지스터부(INT RQSTR)(22), 인터럽트 마스크 레지스터부(IMR)(23), 인터럽트 서비스 벡터 레지스터부(SVR)(24), 우선순위 선택 레지스터부(PRR)(25), 인터럽트 요구신호 래치 디플립플롭(26), 데이터 액세스용 트리 스테이트 버퍼(27)를 포함한다.2 is a block diagram of an interrupt controller according to an embodiment of the present invention. The present invention provides an interrupt controller 21, an interrupt request signal register (INT RQSTR) 22, and an interrupt mask register (IMR) 23. As shown in FIG. And an interrupt service vector register section (SVR) 24, a priority selection register section (PRR) 25, an interrupt request signal latch deflip-
상기 인터럽트 제어부(21)는 인터럽트 제어 및 핸들링에 필요한 여러 가지의 제어신호를 생성하는 로직으로, 4개의 입력포트와 16개의 출력포트로 구성되는 2개 의 디코더와, 제어신호 생성을 위한 앤드게이트(AND GATE), 오아게이트(OR GATE)로 구성된다.The interrupt control unit 21 is a logic for generating various control signals required for interrupt control and handling, two decoders including four input ports and sixteen output ports, and an AND gate for generating a control signal. AND GATE) and ORGATE.
상기 입력포트에는 프로세서 혹은 외부 주문자 집적회로로부터 어드레스 4비트, 데이터 8비트, 클럭 및 제어신호(Lock, INTA, DEN, CS, WR)가 구성된다.The input port is configured with an address 4 bits,
상기 출력포트에는 데이터 액세싱용 트리 스테이트 버퍼(27)에 메인 데이타 버퍼 제어신호(DBBWE)(DBBOE) 및 마스크 데이터(Mask Data) 액세싱을 위한 마스크용 데이터 버퍼 제어신호(MWBE)(MWOE)와; 인터럽트 사이클 수행 후 인터럽트 마스크 레지스터부(IMR)(23)에 인터럽트 요구신호와 마스크를 하드웨어적으로 초기화하기 위한 마스크 클리어신호(Mask Clear) 및 인터럽트 마스크 레지스터를 선택하는 신호(IMR-SEL)와; 인터럽트 서비스 벡터 레지스터부(SVR)(24)의 레지스터를 선택하는 신호(SVR-SEL), 인터럽트 서비스 벡터 읽기신호를 활성화하기 위한 신호(Read Vector), 인터럽트 요구신호 래치 디플립플롭(26)으로 인터럽트를 요구하는 인터럽트 요구신호(INTR)와; 우선순위 선택 레지스터부(PRR)(25)에 래치클럭신호(PINT CLK)가 출력되게 구성된다.The output port includes a main data buffer control signal (DBBWE) (DBBOE) and a mask data buffer control signal (MWBE) (MWOE) for accessing mask data to a
상기 인터럽트 요구신호 레지스터부(INT RQSTR)(22)는 16개의 레지스터로 구성되며, 상기 레지스터는 잡음 제거를 위한 샘플링회로와, 샘플링된 신호를 래치하는 디플립플롭으로 구성된다.The interrupt request signal register (INT RQSTR) 22 is composed of 16 registers, and the register is composed of a sampling circuit for noise cancellation and a deflip-flop for latching the sampled signal.
상기 샘플링회로는 3개의 디플립플롭과 1개의 앤드게이트(AND GATE)로 구성되어, 내부 혹은 외부에서 입력된 인터럽트 요구신호가 디플립플롭의 입력핀과 다른 디플립플롭의 클럭 입력단과 앤드게이트의 입력단에 제공되고, 첫번째 디플립플 롭은 20MHz 클럭으로 동기화되어 앤드게이트에 제공되며 출력은 두번째 디플립플롭 입력핀으로 제공되고 출력은 다시 앤드게이트 입력핀에 제공되게 구성된다.The sampling circuit consists of three flip-flops and one AND gate, so that the interrupt request signal inputted from inside or outside of the flip-flop input pin is different from the clock input terminal of the flip-flop and the input gate of the AND gate. Provided at the input, the first deflip-flop is synchronized to the 20MHz clock and is provided to the AND gate, the output is provided to the second deflip-flop input pin, and the output is again provided to the AND-gate input pin.
상기 인터럽트 마스크 레지스터부(IMR)(23)는 16개의 레지스터로 구성되며, 각 레지스터는 마스크 데이터(Mask Date)를 읽거나 쓰기 위한 한 개의 디플립플롭과 셋팅된 마스크 상태를 읽기 위한 트리 스테이트 버퍼(TRI-STATE BUFFER)와 앤드게이트(AND GATE) 및 인버터(INVERTER) 등으로 구성된다.The interrupt mask register (IMR) 23 is composed of 16 registers, and each register includes one deflip-flop for reading or writing mask data and a tree state buffer for reading the set mask state. TRI-STATE BUFFER), AND GATE, and INVERTER.
상기 인터럽트 서비스 벡터 레지스터부(SVR)(24)는 16개의 레지스터로 구성되고, 각 레지스터는 서비스 벡터(Service Vector)를 읽거나 쓰기 위한 한 개의 8비트 디플립플롭과 셋팅된 인터럽트 벡터를 읽기 위한 트리 스테이트 버퍼(TRI-STATE BUFFER)와 앤드게이트(AND GATE) 및 오아게이트(OR GATE) 등으로 구성된다.The Interrupt Service Vector Register (SVR) 24 is composed of 16 registers, each register having one 8-bit de-flop for reading or writing a service vector and a tree for reading the set interrupt vector. It consists of a state buffer (TRI-STATE BUFFER), an AND gate and an OR gate.
상기 우선순위 선택 레지스터부(PRR)(25)는 입력된 각 인터럽트 요구신호(FIRQ)에 대한 우선 순위를 결정해 주게 되며, 16개의 레지스터로 구성되어 상기 레지스터에 선택된 가장 우선순위가 높은 인터럽트 요구신호가 래치되게 구성된다. The priority selection register section (PRR) 25 determines the priority of each interrupt request signal FIRQ, and is composed of 16 registers and has the highest priority interrupt request signal selected in the register. Is configured to latch.
상기 인터럽트 요구신호 래치 디플립플롭(26)은 2개의 8비트 플립플롭으로 구성되며, 인터럽트 요구신호 레지스터에 생성된 인터럽트 요구신호(BIRQ)가 래칭 혹은 프리징(Freezing)되고, 인터럽트 선택 레지스터로 래치된 인터럽트 요구신호(FIRQ)가 출력되게 구성된다.The interrupt request signal latch deflip-
상기 데이터 액세스용 트리 스테이트 버퍼(27)는 8비트와 1비트 2개의 트리 스테이트 버퍼로 구성되며, 8비트 트리 스테이트 버퍼는 8 비트의 인터럽트 벡터를 송수신하게 되고, 1비트 트리 스테이트 버퍼는 마스크 레지스터 값을 송수신하도록 구성된다.The
상기와 같이 구성되는 본 발명은 인터럽트 제어부(21)가 프로세서 혹은 외부 주문자 집적회로로부터 입력되는 어드레스 4비트, 데이터 8비트, 클럭 및 제어신호(Lock, INTA, DEN, CS, WR)에 의하여 인터럽트 제어 및 핸들링에 필요한 여러 가지의 제어신호를 생성하여 출력하게 된다.According to the present invention configured as described above, the interrupt control unit 21 controls the interrupt by the address 4 bits, the
따라서 상기 인터럽트 제어부(21)의 디코더에서는 상기 인터럽트 마스크 레지스터부(23)와 상기 인터럽트 서비스 벡터 레지스터부(24)를 활성화하기 위한 신호를 생성하게 되고, 이때 어드레스신호가 "0"이면 인터럽트 마스크 레지스터부(23)를 선택하게 되고, 상기 어드레스 신호가 "1"이면 인터럽트 서비스 벡터 레지스터부(24)를 선택하게 된다.Therefore, the decoder of the interrupt control unit 21 generates a signal for activating the interrupt
상기 인터럽트 벡터 레지스터부(24)를 선택하는 디코더는 장비가 초기화 혹은 리셋 된 후 형상 셋업 레지스터가 활성화가 되어야만 인터럽트 벡터를 쓸 수 있는 기능이 제공되며, 인터럽트 벡터값은 사용자에 의해 언제든지 읽을 수 있다.The decoder selecting the interrupt
상기 인터럽트 제어부(21)에서 출력되는 제어신호인 마스크 클리어(Mask Clear)신호는 프로세서가 두번째 인터럽트확인(INTA)신호로 활성화된 후 자동적으로 신호를 생성하여 현재 선택된 인터럽트 마스크 레지스터부(23)를 "0"으로 초기화시킨다.The mask clear signal, which is a control signal output from the interrupt control unit 21, automatically generates a signal after the processor is activated as the second interrupt confirmation (INTA) signal, thereby replacing the currently selected interrupt
읽기 벡터(Read Vector)신호는 프로세서가 두번째 인터럽트 확인(INTA)신호로 활성화되고, 럭(Lock) 신호가 비활성화되면 인터럽트 벡터 레지스터부(24)의 벡터를 읽을 수 있는 신호로 활성화하여 인터럽트 서비스 벡터 레지스터(24)를 제공 하게 된다.The Read Vector signal is activated by the processor as the second Interrupt Acknowledgment (INTA) signal. When the lock signal is deactivated, the read vector signal is activated as a signal capable of reading the vector of the interrupt
인터럽트 요구신호(INTR)는 프로세서에게 인터럽트를 요청하는 신호로, 상기 신호를 입력받은 프로세서는 인터럽트 확인(INTA)신호를 인터럽트 제어부(21)로 제공하게 된다.The interrupt request signal INTR is a signal for requesting an interrupt from the processor, and the processor receiving the signal provides an interrupt acknowledgment (INTA) signal to the interrupt controller 21.
상기 인터럽트 요구신호(INTR)는 우선 순위 선택 레지스터부(25)에서 제공된 래치요구(TIRQ)신호를 입력으로 받아 프로세서가 인터럽트 확인(INTA)을 활성화하기 전에 20MHz 클럭에 의해 동기화되어 생성되며, 상기 프로세서가 첫번째 인터럽트 확인(INTA)와 럭(lock) 신호가 활성화된 인터럽트 첫번째 사이클 동안 유지된 후 비활성화된다.The interrupt request signal INTR is generated by being synchronized with a 20 MHz clock before the processor receives the latch request TIRQ signal provided from the priority
래치클럭신호(PINTCLK)는 인터럽트 첫번째 사이클의 "Ready" "Lock" 및 "INTA"가 활성화되면 생성되어 우선 순위 선택 레지스터부(25)의 클럭단자로 입력되어 우선순위가 제일 높은 인터럽트 요구신호를 래치하게 된다.The latch clock signal PINTCLK is generated when " Ready " " Lock " and " INTA " of the first cycle of the interrupt is activated, and is input to the clock terminal of the priority
상기 인터럽트 제어부(21)의 마스크용 데이터 버퍼 제어신호(MBWE)는 인터럽트 마스크 레지스터부(23)가 선택되고 프로세서가 쓰기 명령(WE) 신호를 활성화하면 생성되어 마스크용 트리 스테이트 버퍼의 "인에이블" 핀으로 입력된다.The mask data buffer control signal MBWE of the interrupt control unit 21 is generated when the interrupt
상기 인터럽트 제어부(21)의 마스크용 데이터 버퍼 제어신호(MBOE)는 인터럽트 마스크 레지스터부(23)가 선택되고 프로세서가 읽기명령(OE) 신호를 활성화하면 생성되어 마스크용 트리 스테이트 버퍼의 "인에이블" 핀으로 입력된다.The mask data buffer control signal MBOE of the interrupt control unit 21 is generated when the interrupt
상기 인터럽트 제어부(21)의 메인 데이타 버퍼 제어신호(DBBWE)는 인터럽트 서비스 벡터 레지스터부(24)가 선택되고 프로세서가 쓰기 명령(WE)신호를 활성화하 면 생성되어 데이터 액세스용 트리 스테이트 버퍼의 "인에이블" 핀으로 입력된다.The main data buffer control signal DBBWE of the interrupt control unit 21 is generated when the interrupt service
상기 인터럽트 제어부(21)의 메인 데이타 버퍼 제어신호(DBBOE)는 인터럽트 서비스 벡터 레지스터부(24)가 선택되고 프로세서가 읽기명령(OE) 신호를 활성화하면 생성되어 데이터 액세스용 트리 스테이트 버퍼의 "인에이블" 핀으로 입력된다.The main data buffer control signal DBBOE of the interrupt control unit 21 is generated when the interrupt service
한편 인터럽트 요구신호 레지스터부(22)에서는 내부 혹은 외부로부터 들어온 인터럽트 요구신호(LIRQ)(BIRQ)를 클럭에 동기화하여 샘플링하게 되며, 상기 인터럽트 요구신호(LIRQ)(BIRQ)는 상기 인터럽트 마스크 레지스터부(23)가 활성화되어야 만 해당 인터럽트 요구신호가 래치되고 샘플링되어 상기 래치된 신호를 상기 인터럽트 요구신호 래치 디플립플롭(26)에 제공하게 된다.On the other hand, the interrupt request
상기 인터럽트 마스크 레지스터부(23)에서는 마스크 레지스터에 값을 쓰기 위해 프로세서에서 쓰기 명령(WE) 신호와 함께 "1"을 세팅하면 쓰기 명령(WE) 신호는 디플립플롭의 클럭으로 입력되며, 상기 인터럽트 제어부(21)에서 선택된 인터럽트 마스크 레지스터부(23)의 활성화 신호(IMR-SEL)는 디플립플롭의 칩인에이블(CE)입력핀으로 제공되어 "1"의 값이 래치되고, 이값은 인버터를 거쳐 "0"으로 래치되며, 상기 래치된 값은 인터럽트 요구신호 레지스터부(22)의 리셋단자로 제공된다.In the interrupt
또한 인터럽트 제어부(21)에서 선택된 인터럽트 마스크 레지스터부(23)의 셋팅된 값을 읽기 위하여 읽기 명령(OE) 신호를 활성화하면 트리 스테이트 버퍼 제어핀을 활성화하여 디플립플롭에 래치된 레지스터 값을 데이터 액세스용 트리 스테이트 버퍼를 통해서 프로세서에 제공된다.In addition, when the interrupt control unit 21 activates the read command (OE) signal to read the set value of the selected interrupt
또한 인터럽트 제어부(21)에서 생성된 마스크 클리어(Mask Clear) 신호와 우 선순위 선택 레지스터 신호가 활성화되면 디플립플롭의 클리어(CLR)단자로 입력되어 마스크 레지스터를 "0"으로 초기화시킨다In addition, when the mask clear signal and the priority selection register signal generated by the interrupt controller 21 are activated, they are input to the clear (CLR) terminal of the flip-flop to initialize the mask register to "0".
상기 인터럽트 서비스 벡터 레지스터부(24)는 인터럽트 서비스 벡터 레지스터에 값을 쓰기 위해 프로세서에서 쓰기 명령(WE) 신호와 함께 8비트 인터럽트 벡터를 셋팅하면, 쓰기 명령(WE) 신호는 디플립플롭의 클럭으로 입력되며, 인터럽트 제어부(21)에서 선택된 인터럽트 서비스 벡터 레지스터 활성화신호(SVR SEL)는 디플립플롭의 칩인에블(CE)입력핀으로 제공되어 디플립플롭 입력핀으로 들어오는 8비트의 벡터값이 래치된다.When the interrupt service
상기 세팅된 인터럽트 벡터를 읽기 위한 8비트 트리 스테이트 버퍼 제어단자는 현재 선택된 인터럽트 서비스 루틴을 수행하기 위한 벡터 혹은 레지스터에 래치된 인터럽트 벡터를 읽을 수 있으며, 이 제어신호는 읽기 명령(OE) 신호가 활성화되면 트리 스테이트 버퍼 제어핀을 활성화시켜 디플립플롭에 래치된 백터 값은 데이터 액세스용 트리 스테이트 버퍼를 통하여 프로세서에 제공된다.The 8-bit tree state buffer control terminal for reading the set interrupt vector may read an interrupt vector latched in a register or a vector for performing the currently selected interrupt service routine, and this control signal is activated by a read command (OE) signal. When the tree state buffer control pin is activated, the vector value latched to the flip-flop is provided to the processor through the tree state buffer for data access.
또한 상기 선택된 인터럽트 서비스 벡터를 읽기 위한 신호는 우선순위 선택 레지스터부(25)에서 제공된 우선순위 선택 레지스터신호(PIR)와 인터럽트 제어부(21)에서 생성된 읽기 명령(OE) 신호가 활성화되면 트리 스테이트 버퍼 제어핀을 활성화시켜 두번째 인터럽트확인(INTA) 사이클에서 디플립플롭에 래치된 레지스터값은 데이터 액세스용 트리 스테이트 버퍼를 통해서 프로세서에게 제공된다.In addition, the signal for reading the selected interrupt service vector is a tree state buffer when the priority selection register signal PIR provided by the priority
상기 인터럽트 서비스 벡터 레지스터의 값은 프로세서가 초기화된 프로세서 형상 셋업을 할 때만 쓰기가 가능하다.The value of the interrupt service vector register is only writable when the processor is performing an initialized processor shape setup.
상기 우선순위 선택 레지스터부(25)에서는 인터럽트의 우선순위를 하드웨어적 우선순위와 소프트웨어적 우선순위로 결정할 수 있으나, 소프트웨어적인 우선순위는 인터럽트 서비스 루틴의 실제적인 실행순위를 결정하는 것으로 해당 인터럽트에 할당된 인터럽트 벡터에 의해 결정된다.The priority
하드웨어적인 우선순위는 여러 개의 인터럽트 요청이 동시에 발생하였을 경우 우선순위를 결정하는 것으로, 상기 우선순위 선택 레지스터부(25)는 하드웨어적인 우선순위 결정 레지스터로서, 레지스터를 동작하기 위한 인터럽트 제어부(21)에서 생성된 래치클럭(PINTCLK) 신호는 레지스터의 클럭 입력핀으로 제공되어 인터럽트 요구신호 래치 디플립플롭에서 래치된 인터럽트 요구신호를 래치하나 우선순위가 가장 높은 한 개의 레지스터 값만 제공된다. The hardware priority is to determine priority when several interrupt requests occur at the same time. The priority
우선순위 선택은 하드웨어적으로 결정된 우선순위를 결정하여 주며 인터럽트 제어부(21)로 해당 인터럽트 요구신호(INTR)를 래치하기 위한 래치요구신호(TIRQ)가 제공된다.Priority selection determines the priority determined by hardware, and a latch request signal TIRQ for latching the interrupt request signal INTR is provided to the interrupt controller 21.
상기 인터럽트 요구신호 래치 디플립플롭(26)에서는 인터럽트 요구신호 레지스터부(22)에서 생성된 인터럽트 요구신호(BIRQ)를 래칭 혹은 프리징(Freezing)하여 우선 순위 선택 레지스터부(25)로 래치된 인터럽트 요구신호(FIRQ)를 출력한다. 이때 상기 인터럽트 제어부(22)에서 출력되는 인터럽트 요구신호(INTR)가 활성화되지 않는 동안은 동작하지 않으며 인터럽트 사이클 수행 전에 인터럽트 요구신호(BIRQ)를 클럭으로 래치된다.In the interrupt request
상기 데이터 액세스용 트리 스테이트 버퍼(27)에서는 상기 인터럽트 제어 부(21)에서 생성된 메인 데이타 버퍼 제어신호(DBBWE)(DBBWE), 마스크용 데이터 버퍼 제어신호(MBWE)(MBOE)가 활성화되면 트리 스테이트 버퍼 제어 입력핀으로 제공되어 버퍼의 데이터 읽기 쓰기가 가능하게 된다.In the data state
이상에서 설명한 바와 같이 본 발명은 인터럽트 제어 및 핸들링 제어가 가능한 인터럽트 제어기를 주문형 집적회로에 로직을 구현함으로써, 상기 인터럽트 제어 처리를 위하여 별도의 하드웨어의 추가가 필요하지 않게 되어 보드 공간 및 제작 비용 절감시킬 수 있다.As described above, the present invention implements logic in an on-demand integrated circuit for an interrupt controller capable of interrupt control and handling control, thereby eliminating the need for additional hardware for the interrupt control process, thereby reducing board space and manufacturing cost. Can be.
또한 본 발명은 하드웨어 변경 없이 손쉽게 인터럽트 처리 및 우선순위를 변경이 가능한 인터럽트 및 핸들링 제어가 이루어지게 되므로 사용자의 기기 조작성,운용성에 효율을 증대할 수 있게 되는 것이다.In addition, the present invention is to be able to increase the efficiency of the user's device operability, operability because the interrupt and handling control that can easily change the interrupt processing and priority change without hardware change.
Claims (8)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060039268A KR100820255B1 (en) | 2006-05-01 | 2006-05-01 | Interrupt controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060039268A KR100820255B1 (en) | 2006-05-01 | 2006-05-01 | Interrupt controller |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20070106879A KR20070106879A (en) | 2007-11-06 |
KR100820255B1 true KR100820255B1 (en) | 2008-04-08 |
Family
ID=39062507
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060039268A KR100820255B1 (en) | 2006-05-01 | 2006-05-01 | Interrupt controller |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100820255B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220099399A (en) | 2021-01-06 | 2022-07-13 | 숭실대학교산학협력단 | Interrupt controller using peripheral device information prefetch and interrupt handling method using the same |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20000038329A (en) * | 1998-12-05 | 2000-07-05 | 김영환 | Interrupt controller |
-
2006
- 2006-05-01 KR KR1020060039268A patent/KR100820255B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20000038329A (en) * | 1998-12-05 | 2000-07-05 | 김영환 | Interrupt controller |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220099399A (en) | 2021-01-06 | 2022-07-13 | 숭실대학교산학협력단 | Interrupt controller using peripheral device information prefetch and interrupt handling method using the same |
Also Published As
Publication number | Publication date |
---|---|
KR20070106879A (en) | 2007-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6952749B2 (en) | Multiprocessor interrupt handling system and method | |
US5408627A (en) | Configurable multiport memory interface | |
JP4891405B2 (en) | Method and apparatus for conditional propagation of barrier operations | |
US7730244B1 (en) | Translation of commands in an interconnection of an embedded processor block core in an integrated circuit | |
US7644207B2 (en) | High speed bus for isolated data acquisition applications | |
US7743176B1 (en) | Method and apparatus for communication between a processor and hardware blocks in a programmable logic device | |
US5519872A (en) | Fast address latch with automatic address incrementing | |
US6567881B1 (en) | Method and apparatus for bridging a digital signal processor to a PCI bus | |
US5930502A (en) | Method for sharing a random-access memory between two asynchronous processors and electronic circuit for the implementation of this method | |
US5784624A (en) | Multiple asynchronous event arbitrator | |
CN112948840A (en) | Access control device and processor comprising same | |
US5933613A (en) | Computer system and inter-bus control circuit | |
KR100820255B1 (en) | Interrupt controller | |
KR100449721B1 (en) | Interface for devices having different data bus width and data transfer method using the same | |
US10210114B2 (en) | Interrupt-driven I/O arbiter for a microcomputer system | |
US7054971B2 (en) | Interface between a host and a slave device having a latency greater than the latency of the host | |
US8966149B2 (en) | Emulation of an input/output advanced programmable interrupt controller | |
US8370543B1 (en) | Busy detection logic for asynchronous communication port | |
KR102333544B1 (en) | An interrupt-driven i/o arbiter for a microcomputer system | |
KR100379293B1 (en) | Communication interface between processors and semiconductor integrated circuit apparatus | |
KR20080084410A (en) | System virtual dma and driving method thereof | |
CA2282166C (en) | Method and apparatus for bridging a digital signal processor to a pci bus | |
KR100306281B1 (en) | Method for multi-dsp processing service in vms | |
JPH0528104A (en) | Multiprocessor system | |
KR970004889B1 (en) | Matching circuit for peripheral processor hardware control in electronic switching system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130226 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20140314 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20150306 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20160325 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20170313 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20180306 Year of fee payment: 11 |
|
FPAY | Annual fee payment |
Payment date: 20190328 Year of fee payment: 12 |
|
FPAY | Annual fee payment |
Payment date: 20200312 Year of fee payment: 13 |