KR20040004479A - 디스크 드라이브 인터페이스들 사이에 인터럽트를공유하기 위한 방법 및 장치 - Google Patents

디스크 드라이브 인터페이스들 사이에 인터럽트를공유하기 위한 방법 및 장치 Download PDF

Info

Publication number
KR20040004479A
KR20040004479A KR10-2003-7008863A KR20037008863A KR20040004479A KR 20040004479 A KR20040004479 A KR 20040004479A KR 20037008863 A KR20037008863 A KR 20037008863A KR 20040004479 A KR20040004479 A KR 20040004479A
Authority
KR
South Korea
Prior art keywords
interrupt
controller
interface
storage device
interrupt signal
Prior art date
Application number
KR10-2003-7008863A
Other languages
English (en)
Other versions
KR100633853B1 (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 인텔 코오퍼레이션
Publication of KR20040004479A publication Critical patent/KR20040004479A/ko
Application granted granted Critical
Publication of KR100633853B1 publication Critical patent/KR100633853B1/ko

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/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt

Abstract

병렬 저장 장치 인터페이스를 위한 제어기와 직렬 저장 장치 인터페이스를 위한 제어기 사이에 인터럽트를 공유하기 위한 장치는, 병렬 저장 장치 인터페이스에 저장 장치가 연결되지 않은 경우, 병렬 저장 장치 인터페이스로부터 입력되는 인터럽트 신호를 차단하는 인터럽트 조절 회로를 포함한다. 병렬 저장 장치 인터페이스에 저장 장치가 연결되지 않은 경우에 병렬 저장 장치 인터페이스 인터럽트를 차단하는 것은, 직렬 저장 장치 인터페이스를 위한 제어기가 병렬 저장 장치 인터페이스에 통상적으로 할당되는 인터럽트를 공유할 수 있도록 한다.

Description

디스크 드라이브 인터페이스들 사이에 인터럽트를 공유하기 위한 방법 및 장치{METHOD AND APPARATUS FOR SHARING AN INTERRUPT BETWEEN DISK DRIVE INTERFACES}
컴퓨터 시스템은 통상적으로 하나 또는 그 이상의 디스크 드라이브 장치를 포함한다. 이들 드라이브 장치는 통상적으로 시스템 칩셋 내에 내장되는 제어기들을 통해 시스템에 연결된다. 대개, 2개의 드라이브 장치가 단일 제어기에 의해 지원될 수 있다. 제어기에 연결된 각각의 장치는 인터럽트 라인이 표명(assert)되도록 야기함으로써, 제어기에 인터럽트를 신호할 수 있다. 제어기에 연결된 2개의 장치는 단일 인터럽트 라인을 공유한다. 인터럽트가 신호되고 나면, 마이크로프로세서 상에서 실행되는 인터럽트 핸들러 루틴(interrupt handler routine)은 어떤 드라이브가 인터럽트 라인을 표명하였는지를 판단한다.
많은 컴퓨터 시스템들이 총 4개의 드라이브에 대한 지원을 제공하는 2개의드라이브 제어기를 가진다. 각 드라이브 제어기에 하나의 인터럽트가 제공된다. 대부분의 컴퓨터 시스템은 하드 드라이브 지원을 위해 2개의 인터럽트를 별도로 설정한다. 이러한 시스템을 위해 기록된 소프트웨어는 이 두 인터럽트만이 하드 드라이브 제어기에 할당될 것으로 예상한다.
시스템 성능을 개선하고, 시스템 비용을 절감하기 위한 노력으로, 새로운 장치 인터페이스 기술들이 개발되고 있다. 이 새로운 드라이브 인터페이스 기술이 전술된 기존의 드라이브 제어기와 함께 존재할 필요가 있을 수 있다. 새로운 기술이 기존의 드라이브 제어기와 함께 존재하도록 하기 위해, 드라이브 제어기에 추가의 인터럽트가 필요하거나, 또는 2개의 가용 인터럽트를 공유하기 위한 기술이 요구될 것이다. 새로운 기술을 지원하고, 확립된 소프트웨어 기반을 크게 변화시키지 않기 위해, 새로운 드라이브 제어기와 기존의 드라이브 제어기 사이에 인터럽트를 공유하기 위한 회로를 제공하는 것이 보다 바람직하다.
본 발명은 컴퓨터 시스템 분야에 속하는 것으로서, 특히, 디스크 드라이브 제어기들 사이에 인터럽트를 공유하는 것에 관한 것이다.
도1은 병렬 디스크 드라이브 인터커넥트 및 직렬 디스크 드라이브 인터커넥트에 모두 연결되는 디스크 드라이브 제어기 유닛을 포함하는 컴퓨터 시스템을 도시한 블록도.
도2는 병렬 디스크 드라이브 제어기 및 직렬 디스크 드라이브 제어기를 포함하는 디스크 드라이브 제어기 유닛의 일실시예를 도시한 블록도.
도3은 인터럽트 조절 논리 유닛의 일실시예를 도시한 블록도.
도4는 인터럽트 조절 논리 유닛의 추가의 실시예를 도시한 블록도.
도5는 인터럽트 조절 논리 유닛의 다른 실시예를 도시한 블록도.
도6은 인터럽트 조절 논리 유닛의 또 다른 실시예를 도시한 블록도.
도7은 2개의 디스크 드라이브 제어기 사이에 인터럽트를 공유하기 위한 방법의 일실시예를 도시한 순서도.
발명의 요약
병렬 저장 장치 인터페이스를 위한 제어기와 직렬 저장 장치 인터페이스를 위한 제어기 사이에 인터럽트를 공유하기 위한 장치는, 병렬 저장 장치 인터페이스에 저장 장치가 연결되지 않은 경우, 병렬 저장 장치 인터페이스로부터 입력되는 인터럽트 신호를 차단하는 인터럽트 조절 회로를 포함한다. 병렬 저장 장치 인터페이스에 저장 장치가 연결되지 않은 경우에 병렬 저장 장치 인터페이스 인터럽트를차단하는 것은, 직렬 저장 장치 인터페이스를 위한 제어기가 병렬 저장 장치 인터페이스에 통상적으로 할당되는 인터럽트를 공유할 수 있도록 한다.
다음의 실시예들은 하드 디스크 제어기 및 인터페이스를 기술하지만, 이에 제한되지는 않지만, 광 디스크, 테이프 드라이브, 플로피 디스크 드라이브 등을 포함하는 다른 형태의 저장 장치를 위한 제어기 및 인터페이스를 이용하는 다른 실시예들도 가능하다.
도1은 시스템 논리 장치(120)에 연결된 프로세서(110)를 포함하는 시스템(100)을 도시한 블록도이다. 시스템 논리 장치(120)는 그래픽 제어기(130) 및 시스템 메모리(140)에 연결된다. 시스템 논리 장치(120)는 또한 시스템 입력/출력 허브(150)에 연결된다. 시스템 입력/출력 허브(150)는 도2와 관련하여 아래에서 보다 상세히 논의되는 드라이브 제어기 유닛(200)을 포함한다. 드라이브 제어기 유닛(200)은 병렬 디스크 드라이브 인터커넥트(165)를 통해 디스크 드라이브(160)에 연결된다. 디스크 드라이브 제어기 유닛(200)은 또한 직렬 디스크 드라이브 인터커넥트(175)를 통해 디스크 드라이브(170)에 연결된다. 디스크 드라이브(160)는 본 실시예에서 선택사항이다.
도2는 디스크 드라이브 제어기 유닛(200)을 포함하는 블록도이다. 디스크 드라이브 제어기 유닛(200)은 병렬 디스크 드라이브 제어기(210) 및 직렬 디스크 드라이브 제어기(220)를 포함한다. 직렬 디스크 드라이브 제어기(220)는 직렬 디스크 드라이브 인터커넥트(175) 및 직렬 디스크 드라이브 인터페이스(250)를 이용하여 디스크 드라이브(170)에 연결된다. 병렬 디스크 드라이브 제어기(210)는 병렬 디스크 드라이브 인터커넥트(165) 및 병렬 디스크 드라이브 인터페이스(240)를 이용하여 디스크 드라이브(160)에 연결된다. 병렬 디스크 드라이브 인터커넥트(165)는 다수의 어드레스/데이터/제어 라인(166) 및 병렬 디스크 드라이브 인터럽트 신호(167)를 포함한다. 병렬 디스크 드라이브 인터럽트 신호(167)는, 디스크 드라이브(160)가 병렬 디스크 드라이브 인터럽트 신호(167)를 논리 로우(low) 전압 레벨로 구동하지 않을 때에, 저항(260)을 통해 논리 하이(high) 전압 레벨(VCC)로 풀-업된다. 디스크 드라이브(160)가 설치되지 않은 경우, 병렬 디스크 드라이브 인터럽트 신호(167)는 VCC로 풀-업된다.
디스크 드라이브 제어기 유닛(200)은 또한 인터럽트 조절 논리 유닛(interrupt conditioning logic unit: ICL)(230)을 포함한다. ICL(230)은 직렬 디스크 드라이브 제어기(220)로부터 인터럽트 펜딩 신호(221) 및 병렬 디스크 드라이브 인터럽트 신호(167)를 수신한다. 본 실시예에서, 직렬 디스크 드라이브 인터커넥트(175)는 전용 인터럽트 라인을 갖지 않는다. 인터럽트는 직렬 디스크 드라이브 인터커넥트(175)를 통해 전달되는 인터럽트 메시지를 이용하여, 디스크 드라이브(170)로부터 직렬 디스크 드라이브 제어기(220)로 전달된다. 인터럽트 메시지가 직렬 디스크 드라이브 제어기(220)에서 수신되면, 직렬 디스크 드라이브 제어기(220)는 인터럽트 펜딩 신호(221)를 표명한다.
디스크 드라이브(160)가 설치되지 않은 경우, ICL(230)이 병렬 디스크 드라이브 인터럽트 신호(167)를 차단하는 역할을 한다. 디스크 드라이브(160)가 설치된 경우, 병렬 디스크 드라이브 제어기 인터럽트 입력(231)을 통해 병렬 디스크 드라이브 인터럽트 신호(167)가 전달된다. ICL은 또한 병렬 디스크 드라이브 제어기 인터럽트 입력(231)을 통해 인터럽트 펜딩 신호(221)를 전달한다. 드라이브가 병렬 디스크 드라이브 인터페이스(240)에 연결되지 않은 경우, 병렬 디스크 드라이브 인터럽트 신호(167)를 차단함으로써, ICL(230)은 직렬 디스크 드라이브 제어기(220)가 병렬 디스크 드라이브 제어기 인터럽트 입력(231)을 공유하도록 한다.
ICL가 없다면, 디스크 드라이브(160, 170)가 모두 설치된 경우에만 인터럽트 공유가 가능할 것이다. 이것은 드라이브가 설치되지 않으면 병렬 디스크 드라이브 인터럽트 신호(167)가 표명된 상태로 풀링되기 때문이다. 통상적인 종래 컴퓨터 시스템은, 시스템 인터럽트 제어기에서 인터럽트를 차단함으로써, 드라이브가 설치되지 않은 경우에, 표명된 드라이브 인터럽트 신호를 처리한다. 그러나, 하나 이상의 디스크 드라이브 제어기가 인터럽트를 공유하면, 시스템 인터럽트 제어기에서 인터럽트를 간단히 차단하는 것은 공유를 불가능하게 만들 수 있다.
도3은 ICL(230)의 일실시예를 도시한 블록도이다. ICL(230)은 AND 게이트(233), OR 게이트(234) 및 차단 레지스터(232)를 포함한다. 컴퓨터 시스템(100)이 먼저 시작되면, 프로세서(110) 상에서 실행되는 소프트웨어 에이전트인 시스템 바이오스(BIOS)는 어떤 디스크 드라이브가 설치되었는지를 판단하기 위해 디스크 드라이브 인터페이스를 폴링(polling)한다.
본 실시예는 어떤 디스크 드라이브가 설치되었는지를 판단하기 위해 디스크 드라이브 인터페이스를 폴링하는 BIOS를 기재하였지만, 하드웨어 내에 구현된 상태 머신이 소프트웨어 간섭없이 폴링 동작을 수행하는 다른 실시예들도 가능하다.
병렬 디스크 드라이브 인터페이스(240)에 연결된 드라이브를 발견하지 못한 경우, BIOS는 차단 레지스터(233)에 "1"을 기록한다. 차단 레지스터의 값은 반전되어, AND 게이트(233)의 하나의 입력으로 전달된다. AND 게이트(233)의 다른 입력은 병렬 디스크 드라이브 인터럽트 신호(167)를 수신한다. 차단 레지스터(232)가 "1"을 포함하면, AND 게이트(233)의 출력은 항상 "0"으로 나타나고, 이에 따라, 병렬디스크 드라이브 인터럽트(167)가 차단된다. 차단 레지스터(232)가 "0"을 포함하는 경우, 병렬 디스크 드라이브 인터럽트 신호(167)에 의해 어떤 값이 AND 게이트(233)에 전달되도라도 OR 게이트(234)를 통해 전달된다. 그러므로, ICL(230)은 항상 병렬 디스크 드라이브 제어기 인터럽트 입력(231)으로 인터럽트 펜딩 신호(221)를 전달할 수 있고, 드라이브가 병렬 디스크 드라이브 인터페이스(240)에 연결되고, 차단 레지스터(232)가 설정되지 않았음을 BIOS가 검출한 경우에만, 병렬 디스크 드라이브 제어기 인터럽트 입력(231)으로 병렬 디스크 드라이브 인터럽트 신호(167)를 전달할 것이다.
도4는 ICL 유닛의 다른 실시예를 도시한 블록도이다. 이 실시예는 도3과 관련하여 전술된 실시예와 교환하여 사용될 수 있다. 도4의 ICL(400)은 8비트 디코더(410)에 기초한다. 디코더(410)는 입력(C)에서 직렬 디스크 드라이브 제어기(220)로부터의 인터럽트 펜딩 신호(221)를 수신한다. 입력(B)은 병렬 디스크 드라이브 인터럽트 신호(167)를 수신한다. 입력(A)은 플립-플롭(430)의 반전된 출력을 수신한다. BIOS가 병렬 디스크 드라이브 인터페이스(240)에 연결된 디스크 드라이브 검출을 실패한 경우, 차단 신호(431)를 통해 플립-플롭(430)으로 "1"이 전달된다. 기록 신호(432)는 차단 신호(431)를 통해 전달되는 값에서 클러킹하는데 사용된다.
병렬 디스크 드라이브 인터페이스 상에서 드라이브가 검출되지 않는 경우, 디코더(410)의 입력(A)은 플립-플롭(430)으로부터 "0"을 수신할 수 있다. 입력(A)가 "0"을 수신하고, 병렬 디스크 드라이브 인터럽트 신호(167)가 표명되면, OR 게이트(420)에 연결된 디코더의 출력 모두가 표명되지 않을 것이다. 그러므로, 병렬 디스크 드라이브 인터럽트 신호(167)가 차단된다. 인터럽트 펜딩 신호(221)가 표명될 때마다, OR 게이트(420)에 연결된 디코더 출력 중 하나가 표명되도록 보장된다. 이 방식으로, 직렬 디스크 드라이브 제어기(220)로부터의 인터럽트 펜딩 신호(221)는 항상 병렬 디스크 드라이브 제어기 인터럽트 입력(231)을 통해 전달되고, BIOS가 병렬 디스크 드라이브 인터페이스(240) 상에서 디스크 드라이브의 존재를 검출한 경우에만, 병렬 디스크 드라이브 인터럽트 신호(167)는 병렬 디스크 드라이브 제어기 인터럽트 입력으로 전달된다.
도5는 ICL 유닛의 추가적인 실시예를 도시한 블록도이다. 도5의 ICL(500)은 DRAM 룩-업 테이블(LUT)(510)에 기초한다. LUT(510)는 CPU 액세스 경로(515)를 통해 프로세서(110)에 액세스할 수 있는 기록 포트(512)를 포함한다. BIOS는 적절한 값이 LUT(510)에 기록되도록 야기할 수 있는데, 여기서, 상기 값은, BIOS가 병렬 디스크 드라이브 인터페이스(240)에 연결된 디스크 드라이브를 검출했는지의 여부에 기반한다. LUT(510)에 저장된 값은 어드레스 입력(A1, A0)을 통해 액세스된다. 입력(A1, A0)은 각각 병렬 디스크 드라이브 이터럽트 신호(167) 및 인터럽트 펜딩 신호(221)에 연결된다. 적합한 값으로 LUT(510)를 프로그래밍함으로써, 디스크 드라이브가 병렬 디스크 드라이브 인터페이스(240)상에서 검출되지 않았다면, LUT(510)는, 병렬 디스크 드라이브 인터럽트 신호(167)가 병렬 디스크 드라이브 제어기 인터럽트 입력(231)으로 전달되는 것을 방지할 수 있다. 또한, LUT(510)는 입력 펜딩 신호(221)를 항상 병렬 디스크 드라이브 제어기 인터럽트 입력(231)에 전달되도록 할 수 있다.
도6은 ROM(610)에 기반한 ICL의 다른 실시예를 도시한 블록도이다. ICL(600)은 ROM(610) 및 플립-플롭(630)을 포함한다. 도6의 ICL(600)은 주로 LUT-기반의 도5의 실시예와 동일한 방식으로 작동한다. 그러나, ROM(610)이 시스템 동작 전에 프로그램밍되어야 하고, BIOS가 ROM(610)의 값을 변경할 수 없기 때문에, BIOS가 병렬 디스크 드라이브 인터페이스(240)에 연결된 디스크 드라이브를 검출하였는지에 따라 상이한 저장 위치를 액세스하기 위해, ROM(610)의 어드레스 입력에 제공되는 값을 조절하는데 플립-플롭(630)이 사용된다. 디스크 드라이브가 검출되지 않는 경우, BIOS는 플립-플롭(630)으로 입력되는 차단 신호(631)에 "1"을 전달한다. "1"은 기록 신호(632)를 통해 플립-플롭(630)에 클러킹된다. 플립-플롭(630)이 출력은 인터럽트 펜딩 신호(221) 및 병렬 디스크 드라이브 인터럽트 신호(167)와 함께 ROM(610)의 어드레스 입력에 전달된다. ROM(610)의 출력(612)으로부터 병렬 디스크 드라이브 제어기 인터럽트 입력(231)으로 적합한 데이터가 드라이빙된다.
도7은 2개의 디스크 드라이브 제어기 사이에 인터럽트를 공유하기 위한 방법의 일실시예를 도시한 순서도이다. 블록(710)에서, 디스크 드라이브가 제1 디스크 드라이브 인터페이스에 연결되었는지에 관한 판단이 이루어진다. 디스크 드라이브가 검출되는 경우, 블록(730)에서, 제1 디스크 드라이브 인터페이스로부터 제1 디스크 드라이브 제어기 인터럽트 입력으로 제1 인터럽트가 전달된다. 블록(710)에서, 드라이브가 검출되지 않은 경우, 블록(720)에서 차단 비트가 설정된다. 블록(740)에서는, 제1 인터럽트가 제1 디스크 드라이브 인터페이스로부터 제1 디스크 제어기 인터럽트 입력으로 전달되는 것이 금지된다. 마지막으로, 블록(750)에서, 제2 디스크 드라이브 제어기로부터 제1 디스크 드라이브 제어기 인터럽트 입력으로 제2 인터럽트가 전달된다.
이상에서, 본 발명이 특정 예시적인 실시예를 참조하여 설명되었다. 그러나, 첨부된 청구범위에서 제시된 것과 같은 본 발명의 보다 넓은 사상 및 범위에서 벗어나지 않는 한, 다양한 변경 및 수정이 이루어질 수 있다는 것이 명백할 것이다. 따라서, 본 명세서 및 도면은 제한적인 의미가 아니라 예시적인 의미로 간주되어야 한다.
본 명세서에서 "실시예", "일실시예", "일부 실시예" 또는 "다른 실시예"라는 용어는 그 실시예와 관련하여 기재된 특정한 형태, 구조 또는 특징이 적어도 일부의 실시예에 포함된다는 것을 의미하지만, 반드시 본 발명의 모든 실시예에 포함될 필요는 없다. "실시예", "일실시예" 또는 "일부 실시예"의 여러 형태들은 반드시 동일한 실시예를 언급하는 것은 아니다.

Claims (15)

  1. 제1 저장 장치 인터페이스;
    제2 저장 장치 인터페이스;
    상기 제1 저장 장치 인터페이스에 연결되는 제1 제어기 - 상기 제1 제어기는 인터럽트 신호 입력을 포함함 - ;
    상기 제2 저장 장치 인터페이스에 연결되는 제2 제어기; 및
    상기 제1 저장 장치 인터페이스로부터 제1 인터럽트 신호를 수신하고, 상기 제2 제어기로부터 제2 인터럽트 신호를 수신하기 위한 인터럽트 조절 유닛
    을 포함하고,
    여기서, 상기 인터럽트 조절 유닛은, 상기 제2 인터럽트 신호를 상기 제1 제어기의 인터럽트 신호 입력으로 전달하고, 상기 제1 저장 장치 인터페이스에 저장 장치가 연결된 경우에는, 상기 제1 인터럽트 신호를 상기 제1 제어기의 인터럽트 신호 입력에 전달하고, 상기 제1 저장 장치 인터페이스에 저장 장치가 연결되지 않은 경우에는, 상기 제1 인터럽트 신호를 상기 제1 제어기의 인터럽트 신호 입력에 전달하지 않는
    장치.
  2. 제1항에 있어서,
    상기 인터럽트 조절 유닛은 AND 게이트 및 OR 게이트를 포함하고,
    여기서, 상기 AND 게이트는 상기 제1 인터럽트 신호에 연결되는 제1 입력, 및 차단 레지스터에 연결되는 제2 입력을 가지고,
    상기 차단 레지스터는 상기 제1 저장 장치 인터페이스에 저장 장치가 연결되었는지의 여부를 표시하는 값을 저장하고,
    상기 OR 게이트의 제1 입력은 상기 AND 게이트의 출력에 연결되고, 상기 OR 게이트의 제2 입력은 상기 제2 인터럽트 신호에 연결되며, 상기 OR 게이트의 출력은 상기 제1 제어기의 인터럽트 신호 입력에 연결되는
    장치.
  3. 제2항에 있어서,
    상기 차단 레지스터에 의해 표시되는 값은 상기 AND 게이트의 제2 입력으로 전달되기 전에 반전되는
    장치.
  4. 제1항에 있어서,
    상기 제1 저장 장치 인터페이스는 병렬 인터페이스인
    장치.
  5. 제4항에 있어서,
    상기 제2 저장 장치 인터페이스는 직렬 인터페이스인
    장치.
  6. 제5항에 있어서,
    상기 제2 제어기는 상기 직렬 인터페이스로부터 수신되는 인터럽트 메시지에 응답하여 상기 제2 인터럽트 신호를 표명하는
    장치.
  7. 제1 저장 장치 인터페이스에 저장 장치가 연결되었는지를 판단하는 단계;
    상기 제1 저장 장치 인터페이스에 저장 장치가 연결되지 않은 경우, 차단(mask) 비트를 설정하는 단계;
    상기 차단 비트가 설정되지 않은 경우, 상기 제1 저장 장치 인터페이스로부터 제1 제어기 인터럽트 입력으로 제1 인터럽트를 전달하는 단계;
    상기 차단 비트가 설정된 경우, 상기 제1 저장 장치 인터페이스로부터 상기 제1 제어기 인터럽트 입력으로의 상기 제1 인터럽트 전달을 금지하는 단계; 및
    제2 제어기로부터 상기 제1 제어기 인터럽트 입력으로 제2 인터럽트를 전달하는 단계
    를 포함하는 방법.
  8. 제7항에 있어서,
    제2 저장 장치 인터페이스로부터 상기 제2 제어기로 인터럽트 메시지를 전달하는 단계
    를 더 포함하는 방법.
  9. 제8항에 있어서,
    상기 제2 저장 장치 인터페이스로부터 상기 제2 제어기로 인터럽트 메시지를 전달하는 단계는, 직렬 인터페이스로부터 상기 제2 제어기로 인터럽트 메시지를 전달하는 단계를 포함하는
    방법.
  10. 프로세서; 및
    상기 프로세서에 연결되는 시스템 논리 장치
    를 포함하고,
    상기 시스템 논리 장치는,
    제1 저장 장치 인터페이스;
    제2 저장 장치에 연결되는 제2 저장 장치 인터페이스;
    상기 제1 저장 장치 인터페이스에 연결되는 제1 제어기 - 상기 제1 제어기는 인터럽트 신호 입력을 포함함 - ;
    상기 제2 저장 장치 인터페이스에 연결되는 제2 제어기; 및
    상기 제1 저장 장치 인터페이스로부터 제1 인터럽트 신호를 수신하고, 상기 제2 제어기로부터 제2 인터럽트 신호를 수신하기 위한 인터럽트 조절 유닛을 포함하고,
    여기서, 상기 인터럽트 조절 유닛은, 상기 제2 인터럽트 신호를 상기 제1 제어기의 인터럽트 신호 입력으로 전달하고, 상기 제1 저장 장치 인터페이스에 제1 저장 장치가 연결된 경우에는, 상기 제1 인터럽트 신호를 상기 제1 제어기의 인터럽트 신호 입력에 전달하고, 상기 제1 저장 장치 인터페이스에 저장 장치가 연결되지 않은 경우에는, 상기 제1 인터럽트 신호를 상기 제1 제어기의 인터럽트 신호 입력에 전달하지 않는
    시스템.
  11. 제10항에 있어서,
    상기 인터럽트 조절 유닛은 AND 게이트 및 OR 게이트를 포함하고,
    여기서, 상기 AND 게이트는 상기 제1 인터럽트 신호에 연결되는 제1 입력, 및 차단 레지스터에 연결되는 제2 입력을 가지고,
    상기 차단 레지스터는 상기 제1 저장 장치 인터페이스에 저장 장치가 연결되었는지의 여부를 표시하는 값을 저장하고,
    상기 OR 게이트의 제1 입력은 상기 AND 게이트의 출력에 연결되고, 상기 OR 게이트의 제2 입력은 상기 제2 인터럽트 신호에 연결되며, 상기 OR 게이트의 출력은 상기 제1 제어기의 인터럽트 신호 입력에 연결되는
    시스템.
  12. 제11항에 있어서,
    상기 차단 레지스터에 의해 표시되는 값은 상기 AND 게이트의 제2 입력으로 전달되기 전에 반전되는
    시스템.
  13. 제10항에 있어서,
    상기 제1 저장 장치 인터페이스는 병렬 인터페이스인
    시스템.
  14. 제13항에 있어서,
    상기 제2 저장 장치 인터페이스는 직렬 인터페이스인
    시스템.
  15. 제14항에 있어서,
    상기 제2 제어기는 상기 직렬 인터페이스로부터 수신되는 인터럽트 메시지에 응답하여 상기 제2 인터럽트 신호를 표명하는
    시스템.
KR1020037008863A 2000-12-29 2001-12-21 디스크 드라이브 인터페이스들 사이에 인터럽트를공유하기 위한 방법 및 장치 KR100633853B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/751,599 2000-12-29
US09/751,599 US6772258B2 (en) 2000-12-29 2000-12-29 Method and apparatus for sharing an interrupt between disk drive interfaces
PCT/US2001/050576 WO2002054257A2 (en) 2000-12-29 2001-12-21 Method and apparatus for sharing an interrupt between disk drive interfaces

Publications (2)

Publication Number Publication Date
KR20040004479A true KR20040004479A (ko) 2004-01-13
KR100633853B1 KR100633853B1 (ko) 2006-10-13

Family

ID=25022723

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020037008863A KR100633853B1 (ko) 2000-12-29 2001-12-21 디스크 드라이브 인터페이스들 사이에 인터럽트를공유하기 위한 방법 및 장치

Country Status (9)

Country Link
US (1) US6772258B2 (ko)
KR (1) KR100633853B1 (ko)
CN (1) CN1255717C (ko)
AU (1) AU2002234130A1 (ko)
DE (1) DE10197143B4 (ko)
GB (1) GB2388226B (ko)
HK (1) HK1059125A1 (ko)
TW (1) TW588335B (ko)
WO (1) WO2002054257A2 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7870346B2 (en) 2003-03-10 2011-01-11 Marvell International Ltd. Servo controller interface module for embedded disk controllers
US7457903B2 (en) 2003-03-10 2008-11-25 Marvell International Ltd. Interrupt controller for processing fast and regular interrupts
US7039771B1 (en) 2003-03-10 2006-05-02 Marvell International Ltd. Method and system for supporting multiple external serial port devices using a serial port controller in embedded disk controllers
US7492545B1 (en) 2003-03-10 2009-02-17 Marvell International Ltd. Method and system for automatic time base adjustment for disk drive servo controllers
US20050021894A1 (en) * 2003-07-24 2005-01-27 Renesas Technology America, Inc. Method and system for interrupt mapping
DE602004007489D1 (de) * 2004-05-11 2007-08-23 Sgs Thomson Microelectronics Unterbrechungsbehandlungssystem
JP2005332438A (ja) * 2004-05-18 2005-12-02 Toshiba Corp ディスク記憶装置及び同装置をホストと接続するためのインタフェース接続方法
US7603514B2 (en) * 2005-03-31 2009-10-13 Intel Corporation Method and apparatus for concurrent and independent data transfer on host controllers
JP4814617B2 (ja) * 2005-11-01 2011-11-16 株式会社日立製作所 ストレージシステム
CN101211323B (zh) * 2006-12-28 2011-06-22 联想(北京)有限公司 一种硬件中断的处理方法和处理装置
CN101937410B (zh) * 2009-07-02 2012-07-25 宏正自动科技股份有限公司 控制设备及其方法

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4631670A (en) * 1984-07-11 1986-12-23 Ibm Corporation Interrupt level sharing
US4760516A (en) * 1986-11-25 1988-07-26 Dialogic Corporation Peripheral interrupt interface for multiple access to an interrupt level
US5057997A (en) 1989-02-13 1991-10-15 International Business Machines Corp. Interruption systems for externally changing a context of program execution of a programmed processor
US5187781A (en) * 1989-12-19 1993-02-16 International Business Machines Corp. Shared hardware interrupt circuit for personal computers
US5446877A (en) * 1990-11-13 1995-08-29 Nakamichi Peripherals Corporation Method and apparatus for operation of a data archival apparatus allowing for coupling of the data archival device with an ide interface
US5179704A (en) 1991-03-13 1993-01-12 Ncr Corporation Method and apparatus for generating disk array interrupt signals
TW276312B (ko) 1992-10-20 1996-05-21 Cirrlis Logic Inc
US5590376A (en) * 1992-11-13 1996-12-31 Toshiba America Information Systems, Inc. Apparatus and method for detecting and updating status of removable storage system using shared interrupt and software flag
US5475846A (en) 1993-08-11 1995-12-12 Databook Incorporated Apparatus for processing PCMCIA interrupt requests
US5506997A (en) * 1994-01-28 1996-04-09 Compaq Computer Corp. Device for mapping a set of interrupt signals generated on a first type bus to a set of interrupt signals defined by a second type bus and combing the mapped interrupt signals with a set of interrupt signals of the second type bus
US5675761A (en) * 1994-05-16 1997-10-07 International Business Machines Corporation Method and system for providing discontiguous drive support
US5745771A (en) 1994-07-08 1998-04-28 Hitachi, Ltd. Disc array device and disc control method
US5740450A (en) 1994-07-26 1998-04-14 United Microelectronics Corporation Method to automatically detect the interrupt channel status of an add-on card
US5535420A (en) * 1994-12-14 1996-07-09 Intel Corporation Method and apparatus for interrupt signaling in a computer system
KR0154826B1 (ko) * 1995-05-29 1998-11-16 김광호 통신 인터럽트 요구신호 충돌방지를 위한 인터페이스 회로
JP3208332B2 (ja) * 1995-12-20 2001-09-10 インターナショナル・ビジネス・マシーンズ・コーポレーション 割込み装置
US5805929A (en) * 1996-01-29 1998-09-08 International Business Machines Corporation Multiple independent I/O functions on a PCMCIA card share a single interrupt request signal using an AND gate for triggering a delayed RESET signal
JP2809187B2 (ja) 1996-04-15 1998-10-08 日本電気株式会社 割込み線共有回路および割込み線共有方法
US5911077A (en) 1996-05-31 1999-06-08 Micron Electronics, Inc. System for multithreaded disk drive operation in a computer system
US5875349A (en) 1996-12-04 1999-02-23 Intersect Technologies, Inc. Method and arrangement for allowing a computer to communicate with a data storage device
US5925115A (en) * 1997-03-10 1999-07-20 Vlsi Technology, Inc. Method and system for extending interrupt sources and implementing hardware based and software based prioritization of interrupts for an embedded processor
US6003109A (en) * 1997-08-15 1999-12-14 Lsi Logic Corporation Method and apparatus for processing interrupts in a data processing system
US6263395B1 (en) 1999-01-06 2001-07-17 Compaq Computer Corp. System and method for serial interrupt scanning
US6279067B1 (en) * 1999-01-13 2001-08-21 Ati International Srl Method and apparatus for detecting interrupt requests in video graphics and other systems
US6401154B1 (en) * 2000-05-05 2002-06-04 Advanced Micro Devices, Inc. Flexible architecture for an embedded interrupt controller
US20020116563A1 (en) * 2000-12-12 2002-08-22 Lever Paul D. Apparatus and method to reduce interrupt latency in shared interrupt systems

Also Published As

Publication number Publication date
DE10197143T5 (de) 2004-04-29
GB2388226B (en) 2005-02-23
WO2002054257A3 (en) 2003-09-04
DE10197143B4 (de) 2006-10-19
CN1255717C (zh) 2006-05-10
TW588335B (en) 2004-05-21
AU2002234130A1 (en) 2002-07-16
GB2388226A (en) 2003-11-05
US6772258B2 (en) 2004-08-03
GB0317007D0 (en) 2003-08-27
HK1059125A1 (en) 2004-06-18
US20020087773A1 (en) 2002-07-04
CN1494676A (zh) 2004-05-05
WO2002054257A2 (en) 2002-07-11
KR100633853B1 (ko) 2006-10-13

Similar Documents

Publication Publication Date Title
US7743194B2 (en) Driver transparent message signaled interrupts
EP2015161B1 (en) Event delivery for processors
US5729760A (en) System for providing first type access to register if processor in first mode and second type access to register if processor not in first mode
US5628029A (en) Apparatus for monitoring distributed I/O device by providing a monitor in each I/O device control for generating signals based upon the device status
US5943506A (en) System for facilitating data I/O between serial bus input device and non-serial bus cognition application by generating alternate interrupt and shutting off interrupt triggering activities
US6292859B1 (en) Automatic selection of an upgrade controller in an expansion slot of a computer system motherboard having an existing on-board controller
US8195918B2 (en) Memory hub with internal cache and/or memory access prediction
US5799203A (en) System for receiving peripheral device capability information and selectively disabling corresponding processing unit function when the device failing to support such function
US5890012A (en) System for programming peripheral with address and direction information and sending the information through data bus or control line when DMA controller asserts data knowledge line
KR100633853B1 (ko) 디스크 드라이브 인터페이스들 사이에 인터럽트를공유하기 위한 방법 및 장치
US6496891B1 (en) Device and method to emulate interrupts to provide PS/2 mouse and keyboard functionality for a USB mouse keyboard
US8250354B2 (en) Method and apparatus for making a processor sideband interface adhere to secure mode restrictions
US6742060B2 (en) Look-up table based circuitry for sharing an interrupt between disk drive interfaces
US7516260B2 (en) Method of communicating with embedded controller
US20030065914A1 (en) Enabling video BIOS and display drivers to leverage system BIOS platform abstract
US6738848B2 (en) Decoder-based circuitry for sharing an interrupt between disk drive interfaces
US7243178B2 (en) Enable/disable claiming of a DMA request interrupt
US6154789A (en) Peripheral controller comprising first messaging unit for communication with first OS driver and second messaging unit for communication with second OS driver for mass-storage peripheral
US6795884B2 (en) Read-only memory based circuitry for sharing an interrupt between disk drive interfaces
US6496894B1 (en) Method for enforcing device connection policies
JPH04332063A (ja) ローカルコンピューティングシステムによるホストコンピューティングシステムへのアクセス制御を調整するためのローカルコンピューティングシステムとともに使用される装置
US5652837A (en) Mechanism for screening commands issued over a communications bus for selective execution by a processor
JPH1091568A (ja) データ処理システムにおいてチップ選択可能な装置をアクセスする方法および装置
US5970237A (en) Device to assist software emulation of hardware functions
KR20000060513A (ko) 인터페이스 장치

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: 20090923

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee