KR100217384B1 - 인터럽트 제어장치와 그 제어방법 - Google Patents

인터럽트 제어장치와 그 제어방법 Download PDF

Info

Publication number
KR100217384B1
KR100217384B1 KR1019970008602A KR19970008602A KR100217384B1 KR 100217384 B1 KR100217384 B1 KR 100217384B1 KR 1019970008602 A KR1019970008602 A KR 1019970008602A KR 19970008602 A KR19970008602 A KR 19970008602A KR 100217384 B1 KR100217384 B1 KR 100217384B1
Authority
KR
South Korea
Prior art keywords
interrupt
signal
register
mode
mask
Prior art date
Application number
KR1019970008602A
Other languages
English (en)
Other versions
KR19980073364A (ko
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 KR1019970008602A priority Critical patent/KR100217384B1/ko
Publication of KR19980073364A publication Critical patent/KR19980073364A/ko
Application granted granted Critical
Publication of KR100217384B1 publication Critical patent/KR100217384B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • G06F9/4825Interrupt from clock, e.g. time of day
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/30105Register structure
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/20Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Bus Control (AREA)

Abstract

가.청구범위에 기재된 발명이 속한 기술분야
인터럽트 제어장치와 그 제어방법에 관한 것이다.
나. 발명이 해결하려고 하는 기술적 과제
소수의 인터럽트 입력단을 가진 고성능 프로세서에서 다수의 인터럽트를 처리하도록 제어하는 인터럽트 제어장치와 그 제어방법을 제공함에 있다.
다. 발명의 해결방법의 요지
다수의 인터럽트 신호를 입력하여 에지를 검출하여 검출된 인터럽트 신호를 출력하는 입력부와, 상기 입력부에서 출력되는 인터럽트 신호를 받아 저장한 후 이를 출력하는 인터럽트 펜딩 레지스터와, 마스크 신호를 저장하는 인터럽트 마스크 레지스터와, 상기 인터럽트 펜딩 레지스터로부터 인터럽트 신호를 입력하고 상기 인터럽트 마스크 레지스터로부터 마스크 신호를 입력하여 앤드시켜 출력하는 앤드 게이트부와, 설정된 인터럽트 모드에 따라 모드 선택신호를 출력하는 인터럽트 모드 레지스터와, 상기 앤드 게이트부로부터 인터럽트 신호를 입력하고 상기 인터럽트 모드 레지스터로부터 상기 모드 선택신호를 입력하여 선택된 모드로 인터럽트 신호를 출력하는 출력부로 이루어진 인터럽트 제어장치를 제어하는 방법에 있어서, 인터럽트 신호가 입력되면 상기 인터럽트 펜딩 레지스터에 저장하는 제1과정과, 상기 제1과정을 수행한 후 상기 모드 선택신호에 의해 선택된 모드로 인터럽트 신호가 입력되면 상기 프로세서에서 상기 인터럽트 펜딩 레지스터를 리드하는 제2과정과, 상기 제2과정을 수행한 후 인터럽트 우선 순위에 따라 상기 인터럽트 마스크 레지스터를 마스크 하는 제3과정과, 상기 제3과정을 수행한 후 인터럽트 루틴을 수행하는 제4과정과, 상기 제4과정을 수행한 후 상기 인터럽트 마스크 레지스터에서 마스크를 해제하는 제5과정과, 상기 제5과정을 수행한 후 상기 인터럽트 펜딩 레지스터에서 수행된 인터럽트 신호를 소거하는 제6과정으로 이루어짐을 특징으로 한다.
라. 발명의 중요한 용도
소수의 입력단을 가진 프로세서에서 다수의 인터럽트 신호를 처리할 때 이용.

Description

인터럽트 제어장치와 그 제어방법
본 발명은 인터럽트 제어장치와 그 제어방법에 관한 것으로, 특히 소수의 인터럽트 입력단을 가진 고성능 프로세서에서 다수의 인터럽트 신호를 처리하도록 제어하는 인터럽트 제어장치와 그 제어방법에 관한 것이다.
텔레비전에서는 종래의 단순한 텔레비전 시청 기능에서 인터네트(internet) 통신장치등의 주변장치가 부가되어 그 수행 기능이 확대되고 있다. 그러므로 텔레비전에서 부가되는 다양한 기능을 수행하기 위해서는 다수의 인터럽트 신호를 처리할 수 있는 퍼스널 컴퓨터의 프로세서와 같은 고성능 프로세서가 필요하게 되었다. 그리고 이러한 고성능 프로세서로는 ARM7 리스크 프로세서 칩(risc processor chip)이 있다. 상기 ARM7 리스크 프로세서 칩은 두 개의 인터럽트 입력단을 가지고, 인터럽트 신호를 입력받아 인터럽트 루틴을 수행한다. 여기서 상기 두 개의 인터럽트 입력단은 패스트 인터럽트 요구(fast interrupt request; FIQ) 입력단과 인터럽트 요구(interrupt request; IRQ) 입력단이다.
따라서 본 발명의 목적은 소수의 인터럽트 입력단을 가진 고성능 프로세서에서 다수의 인터럽트를 처리하도록 제어하는 인터럽트 제어장치와 그 제어방법을 제공함에 있다.
제1도는 본 발명의 실시 예에 따른 텔레비전 제어기의 개략적인 구성도.
제2도는 본 발명의 실시 예에 따른 도 2의 인터럽트 제어부의 상세한 구성도.
제3도는 본 발명의 실시 예에 따른 도 2에서 입력부의 상세한 구성도.
제4도는 본 발명의 실시 예에 따른 도 2에서 출력부의 상세한 구성도.
제5도는 본 발명의 실시 예에 따른 인터럽트 제어과정을 나타낸 흐름도.
이하 본 발명에 따른 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다.
우선 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 한해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 그리고 본 발명을 설명함에 있어서, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
제1도는 본 발명의 실시 예에 따른 텔레비전 제어기의 개략적인 구성도를 나타낸 것이다.
도면을 참조하면, 도면 참조번호 10은 텔레비전의 모든 동작을 전반적으로 제어하는 프로세서를 나타낸 것이다. 특히 상기 프로세서(10)는 본 발명의 실시 예에 따른 인터럽트 제어 과정을 수행한다. 그리고 여기서 상기 프로세서(10)는 고성능 프로세서로서, 상기한 ARM7 리스크 프로세서이다. 20은 주변장치부로서, 텔레비전에 부가되어 종래의 텔레비전에서 수행되는 기본 기능 외에 다른 기능을 수행하는 인터네트 통신장치등과 같은 부가장치들을 나타낸 것이다. 50은 데이터 버스를 나타낸 것이고, 30은 버스 조정부로서 데이터 버스(50)를 제어한다. 40은 인터럽트 제어부로서, 내부 인터럽트 신호들과 주변장치부(20)에서 발생하는 외부 인터럽트 신호들을 입력하여 프로세서(10)로 인터럽트 신호를 출력한다.
제2도는 본 발명의 실시 예에 따른 제2도의 인터럽트 제어부의 상세한 구성도를 나타낸 것이다.
도면을 참조하면, 도면 참조번호 41은 입력부로서, 설정된 입력 에지(edge)의 상태에 따라 입력되는 다수(n)의 외부 인터럽트 신호들과 다수(m)의 내부 인터럽트 신호들로부터 에지를 검출하여 출력한다. 42는 인터럽트 펜딩 레지스터(interrupt pending register; 이하 IPR라 한다)로서, 상기 입력부(42)로부터 인터럽트 신호를 입력하여 저장한 후 이를 출력한다. 상기 인터럽트 펜딩 레지스터(42)는 모든 인터럽트 신호에 따라 미리 설정된 고유의 저장영역을 가지며, 인터럽트 신호가 입력되면 해당 저장영역에 이를 저장한다. 43은 인터럽트 마스크 레지스터(interrupt mask register; 이하 IMSKR라 한다)로서, 설정된 인터럽트 우선 순위를 저장하고 있는 프로세서(10)의 제어를 받아 현재 수행되는 인터럽트 신호에 대응한 마스크 신호를 저장하고 상기 마스크 신호를 출력한다. 상기 인터럽트 마스크 레지스터(43)는 모든 인터럽트 신호에 해당하는 고유의 저장영역을 가지며, 해당 저장영역에 상기 마스크 신호를 저장한다. 44는 다수의 앤드(AND) 게이트들로 이루어진 앤드 게이트부로서, 상기 IMSKR(43)에서 마스크 신호를 입력하고 상기 IPR(42)로부터 인터럽트 신호를 입력하여 두 신호를 앤드하여 출력한다. 여기서 상기 앤드 게이트부(44)는 모든 인터럽트 신호에 해당하는 수의 앤드 게이트를 가진다. 45는 인터럽트 모드 레지스터(interrupt mode register; 이하 IMR라 한다)로서, 설정된 인터럽트 모드에 따라 모드 선택신호를 출력한다. 여기서 입력되는 모든 인터럽트 신호는 미리 인터럽트 모드가 설정되어 있다. 상기 인터럽트 모드 레지스터(45)는 모든 인터럽트 신호에 해당하는 고유의 저장영역을 가지며, 해당 저장영역에는 상기 설정된 인터럽트 모드 정보를 저장한다. 46은 출력부로서, 상기 앤드 게이트부(44)로부터 인터럽트 신호를 입력하고 IMR(45)로부터 모드 선택신호를 입력하여 인터럽트 모드를 선택하여 프로세서로 출력한다.
도 3은 본 발명의 실시 예에 따른 도 2에서 입력부의 상세한 구성도를 나타낸 것이다.
도면을 참조하면, 도면 참조번호 62는 클럭동기부로서, 비동기 인터럽트 신호를 입력하여 내부 클럭에 동기를 맞추어 출력한다. 61은 외부 인터럽트 에지 레지스터(external interrupt edge register; 이하 EIER라 한다)로서, 외부 인터럽트 신호에서 인터럽트 신호를 검출하기 위한 입력 에지의 상태를 저장한다. 여기서 상기 입력 에지의 상태라는 것은 로우(Low)나 하이(High)와 같은 레벨을 검출할 것인지, 아니면 업(up)이나 폴링(falling) 에지를 검출하여 인터럽트를 확인할 것인지에 대해 설정된 것을 말한다. 63은 제1에지 검출부로서, 상기 클럭동기부(62)로부터 내부 클럭에 동기화된 인터럽트 신호를 입력하여 상기 EIER(61)에 설정된 에지 상태에 따라 에지를 검출하여 IPR(42)로 출력한다. 64는 제2에지 검출부로서, 상기 클럭동기부(62)로부터 내부 클럭에 동기화된 인터럽트 신호를 입력하여 자체 설정된 에지 상태에 따라 에지를 검출하여 IPR(42)로 출력한다. 65는 제3에지 검출부로서, 내부 인터럽트 신호를 입력하여 자체 설정된 에지 상태에 따라 에지를 검출하여 IPR(42)로 출력한다.
제4도는 본 발명의 실시 예에 따른 도 2에서 출력부의 상세한 구성도를 나타낸 것이다.
도면을 참조하면, 도면 참조번호 71은 모드 제어부로서, 앤드 게이트부(44)로부터 인터럽트 신호를 입력하고, IMR(45)로부터 모드 선택신호를 입력하여 모드를 선택하여 출력한다. 여기서 상기 모드 선택신호는 FIQ 모드 선택신호와 IRQ 모드 선택신호가 있다. 72는 제1오아(OR) 게이트로서, 상기 모드 제어부(71)에서 선택된 FIQ 신호를 오아링하여 프로세서(10)로 출력한다. 73은 제2오아 게이트로서, 상기 모드 제어부(71)에서 선택된 IRQ 신호를 오아링하여 프로세서(10)로 출력한다.
제5도는 본 발명의 실시 예에 따른 인터럽트 제어과정을 나타낸 흐름도이다.
이하 상기한 제1도내지 제4도의 구성에 의거하여 상세히 설명한다.
먼저 내부/외부 인터럽트 신호가 발생하면 입력부(41)에서는 이를 받아 에지를 검출하여 IPR(42)로 인터럽트 신호를 출력한다. 그러면 상기 IPR(42)에서는 상기 입력부(41)로부터 인터럽트 신호를 입력하여 해당 버퍼에 저장한 후 상기 인터럽트 신호를 앤드 게이트부(44)로 출력한다. 그러면 앤드 게이트부(44)에서는 상기 인터럽트 신호를 입력하고 IMSKR(43)에서 마스크 신호를 입력하여 앤드시킨 후 출력부(46)로 출력한다. 그러면 출력부(46)에서는 상기 앤드 게이트부(44)에서 출력된 인터럽트 신호를 입력하여 IMR(45)에 설정된 모드 선택신호에 따라 FIQ 신호와 IRQ 신호로 선택되어 프로세서(10)로 출력한다. 그러면 제100단계에서 상기 프로세서(10)는 상기 출력부(46)로부터 FIQ 신호나 IRQ 신호와 같은 인터럽트 요구 신호를 입력하여 제110단계에서 IPR(42)에 저장된 인터럽트 신호를 리드한다. 그런 후에 제120단계에서 상기 프로세서(10)는 인터럽트 우선순위에 따라 IMSKR(45)에서 마스크 하도록 제어한 후에 제130단계에서 입력된 인터럽트 신호에 대한 인터럽트 루틴을 수행한다. 그런 후에 제140단계에서 상기 프로세서(10)는 인터럽트 루틴의 수행이 완료되면 IMSKR(140)에 설정된 마스크를 해제한 후에 제150단계에서 IPR(42)의 인터럽트 신호를 소거한다.
상기한 바와 같이 본 발명은 소수의 인터럽트 입력단을 가진 프로세서에서 다수의 인터럽트 신호를 처리할 수 있다.

Claims (5)

  1. 인터럽트 제어장치에 있어서, 다수의 인터럽트 신호를 입력하여 에지를 검출하여 검출된 인터럽트 신호를 출력하는 입력부와, 상기 입력부에서 출력되는 인터럽트 신호를 받아 저장한 후 이를 출력하는 인터럽트 펜딩 레지스터와, 소정의 제어를 받아 마스크 신호를 저장하고, 이를 출력하는 인터럽트 마스크 레지스터와, 상기 인터럽트 펜딩 레지스터로부터 인터럽트 신호를 입력하고 상기 인터럽트 마스크 레지스터로부터 마스크 신호를 입력하여 앤드시켜 출력하는 앤드 게이트부와, 설정된 인터럽트 모드에 따라 모드 선택신호를 출력하는 인터럽트 모드 레지스터와, 상기 앤드 게이트부로부터 인터럽트 신호를 입력하고 상기 인터럽트 모드 레지스터로부터 상기 모드 선택신호를 입력하여 선택된 모드로 인터럽트 신호를 출력하는 출력부와, 소수의 인터럽트 입력단을 가지고, 상기 출력부에서 인터럽트 신호가 입력되면 상기 인터럽트 펜딩 레지스터에 저장된 인터럽트 신호를 리드하여 설정된 우선 순위에 따라 상기 인터럽트 마스크 레지스터에 마스크 신호를 출력하고, 인터럽트 루틴을 수행하여 완료되면 상기 인터럽트 마스크 레지스터의 마스크 신호를 해제하고 상기 인터럽트 펜딩 레지스터에서 수행된 인터럽트 신호를 소거하는 프로세서로 이루어짐을 특징으로 하는 장치.
  2. 제1항에 있어서, 상기 프로세서가 패스트 인터럽트 요구 입력단과 인터럽트 요구 입력단으로 이루어진 두 개의 인터럽트 입력단을 가지는 에이 알 엠 세븐 리스크 프로세서임을 특징으로 하는 장치.
  3. 제1항 또는 제2항에 있어서, 상기 출력부가, 상기 앤드 게이트부에서 인터럽트 신호를 입력하고 상기 인터럽트 모드 레지스터로부터 모드 선택신호를 입력하여 선택된 모드신호로 출력하는 모드제어부와, 상기 모드제어부에서 출력되는 모드신호를 오아링하여 프로세서로 출력하는 제1 및 제2오아 게이트로 이루어짐을 특징으로 하는 장치.
  4. 제1항에 있어서, 상기 입력부가, 외부 인터럽트 신호를 입력하여 내부 클럭과 동기를 맞추어 출력하는 클럭 동기부와, 외부 인터럽트의 에지 상태를 저장하는 외부 인터럽트 에지 레지스터와, 상기 클럭동기부에서 인터럽트 신호를 입력하고 상기 외부 인터럽트 에지 레지스터에 저장된 에지 상태에 따라 에지를 검출하여 검출된 인터럽트 신호를 상기 인터럽트 펜딩 레지스터로 출력하는 제1에지 검출부와, 상기 클럭동기부에서 인터럽트 신호를 입력하고 자체 설정된 에지 상태에 따라 에지를 검출하여 검출된 인터럽트 신호를 상기 인터럽트 펜딩 레지스터로 출력하는 제2에지 검출부와, 내부 인터럽트 신호를 입력하고 자체 설정된 에지 상태에 따라 에지를 검출하여 검출된 인터럽트 신호를 상기 인터럽트 펜딩 레지스터로 출력하는 제3에지 검출부로 이루어짐을 특징으로 하는 장치.
  5. 다수의 인터럽트 신호를 입력하여 에지를 검출하여 검출된 인터럽트 신호를 출력하는 입력부와, 상기 입력부에서 출력되는 인터럽트 신호를 받아 저장한 후 이를 출력하는 인터럽트 펜딩 레지스터와, 마스크 신호를 저장하는 인터럽트 마스크 레지스터와, 상기 인터럽트 펜딩 레지스터로부터 인터럽트 신호를 입력하고 상기 인터럽트 마스크 레지스터로부터 마스크 신호를 입력하여 앤드시켜 출력하는 앤드 게이트부와, 설정된 인터럽트 모드에 따라 모드 선택신호를 출력하는 인터럽트 모드 레지스터와, 상기 앤드 게이트부로부터 인터럽트 신호를 입력하고 상기 인터럽트 모드 레지스터로부터 상기 모드 선택신호를 입력하여 선택된 모드로 인터럽트 신호를 출력하는 출력부로 이루어진 인터럽트 제어장치를 제어하는 방법에 있어서, 인터럽트 신호가 입력되면 상기 인터럽트 펜딩 레지스터에 저장하는 제1과정과, 상기 제1과정을 수행한 후 상기 모드 선택신호에 의해 선택된 모드로 인터럽트 신호가 입력되면 상기 프로세서에서 상기 인터럽트 펜딩 레지스터를 리드하는 제2과정과, 상기 제2과정을 수행한 후 인터럽트 우선 순위에 따라 상기 인터럽트 마스크 레지스터를 마스크 하는 제3과정과, 상기 제3과정을 수행한 후 인터럽트 루틴을 수행하는 제4과정과, 상기 제4과정을 수행한 후 상기 인터럽트 마스크 레지스터에서 마스크를 해제하는 제5과정과, 상기 제5과정을 수행한 후 상기 인터럽트 펜딩 레지스터에서 수행된 인터럽트 신호를 소거하는 제6과정으로 이루어짐을 특징으로 하는 방법.
KR1019970008602A 1997-03-14 1997-03-14 인터럽트 제어장치와 그 제어방법 KR100217384B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970008602A KR100217384B1 (ko) 1997-03-14 1997-03-14 인터럽트 제어장치와 그 제어방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970008602A KR100217384B1 (ko) 1997-03-14 1997-03-14 인터럽트 제어장치와 그 제어방법

Publications (2)

Publication Number Publication Date
KR19980073364A KR19980073364A (ko) 1998-11-05
KR100217384B1 true KR100217384B1 (ko) 1999-09-01

Family

ID=19499690

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970008602A KR100217384B1 (ko) 1997-03-14 1997-03-14 인터럽트 제어장치와 그 제어방법

Country Status (1)

Country Link
KR (1) KR100217384B1 (ko)

Also Published As

Publication number Publication date
KR19980073364A (ko) 1998-11-05

Similar Documents

Publication Publication Date Title
US5043868A (en) System for by-pass control in pipeline operation of computer
US6212625B1 (en) General purpose dynamically programmable state engine for executing finite state machines
KR930018378A (ko) 캐쉬 메모리 시스템의 성능최적화 방법 및 장치
US4747045A (en) Information processing apparatus having an instruction prefetch circuit
JPS635444A (ja) マイクロプロセツサ
KR100217384B1 (ko) 인터럽트 제어장치와 그 제어방법
JP3505728B2 (ja) 記憶制御装置
KR920002830B1 (ko) 다이렉트 메모리 액세스 제어장치
JPH0377137A (ja) 情報処理装置
JP3188042B2 (ja) ディジタル計算機におけるテーブル検索装置
JP3366235B2 (ja) データ読み出し制御装置
JPS6259829B2 (ko)
JPH03223949A (ja) バス調停回路
JPH05266685A (ja) 記憶装置
JP2004030228A (ja) Lsiシミュレータ及びシミュレーション方法
JP3036590B2 (ja) 外部デバイス制御回路
JP3133696B2 (ja) Dram制御回路
KR100336743B1 (ko) 데이터처리회로
CN110245096A (zh) 一种实现处理器直接连接扩展计算模块的方法
JP2979918B2 (ja) 割り込み検出回路
JPS63211057A (ja) マルチプロセツサシステム
JPS61161560A (ja) メモリ装置
JPS6232509B2 (ko)
JPH05281290A (ja) 記憶回路を共用するicテスタのデータ転送回路
JPH03139724A (ja) データ処理装置

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20080529

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee