도 1은 컴팩 디스크 - 읽기 전용 메모리("CD-ROM)로부터 디지털 컴퓨터 데이터를 읽으며, 오디오 CD를 플레이하기에 적합한 배터리-전력 휴대용 컴퓨터(100)의 일 예시 시스템 블록도를 도시한다. 오디오 CD 플레이 및 전력 관리의 목적으로, 상기 컴퓨터(100)는 컴퓨터 서브시스템(104)과 CD-ROM 시스템(106)으로 기능적으로 분할된다.
컴퓨터 서브 시스템(104)
컴퓨터 서브 시스템(104)은 하기에 보다 상세히 기술된 다양한 IC들과 더불어 마이크로프로세서 기반 중앙 처리 장치(CPU: Central Processing Unit) 및 램(RAM: Random Access Memory) 시스템(CPU 시스템)(120)과 같은 종래 모든 데이터 처리 소자를 포함한다. 컴퓨터(100)는 또한 일반적으로 디스플레이(TFT LCD 매트릭스 디스플레이, CRT 등)(110), 수동 입력 디바이스(예를 들어, 키보드, 마우스, 터치 패드)(112), 및 읽기-쓰기 대규모 저장 디바이스(예를 들면, 하드 드라이브, 플로피 드라이브, 광 드라이브 등)(114)를 포함하며, 이들은 일반적으로 컴퓨터(100)내에서 동작한다.
컴퓨터 서브 시스템(104)은 컴퓨터(100)에 포함된 다양한 서브시스템들을 상호연결하기 위한 관련된 입력/출력(I/O) 버스(예를 들어 PCI 버스 116 및 ISA버스 118)를 포함한다. 컴퓨터(100)에서, CPU(예를 들어 펜티엄 마이크로프로세서)(120)는 내장된 L2 캐시(cache)를 제어하기 위해 시스템 컨트롤러 IC(예를 들어 인텔 82439HX 또는 "노스브리지(Northbridge)"로 알려진 82443BX)(122)를 통해 PCI버스(116)와 데이터를 교환한다. 시스템 컨트롤러 IC(122)는 "http://developer.intel.com/design/chipsets/datashts"에서 구할 수 있는 개시된 기록에 기재되며, 이는 이하 참조로 편입된다. 적절한 어댑터(adapter) 디바이스를 거쳐, 일반적으로 PCI 버스(116)는 CPU(120)와 디스플레이(110) 및 읽기-쓰기 대규모 저장 디바이스(114)와 같은 보다 고성능 디바이스의 데이터 교환을 가능케 한다.
버스 브리지 IC(예를 들어 8237ISB 또는 82371AB"사우스브리지(Southbidge)" IC)(124)는 PCI 버스(116)와 ISA 버스(118) 및 IDE 버스(128)간을 상호연결한다. 버스 브리지 IC(124)의 기재는 "http://developer.intel.com/design/chipsets/datashts"에서 얻을 수 있으며 이하 참조로 편입된다. 버스 브리지 IC(124)는 캘리포니아 산타 클라라(Santa Clara) 인텔 사에서 입수할 수 있다. 적절한 어댑터 디바이스를 거쳐, 일반적으로 ISA 버스(118)는 CPU(120)와 수동 입력 디바이스(112)와 같은 저속 디바이스의 데이터 교환을 가능케 한다. 그런데, 컴퓨터(100)의 특수한 구성상, CPU(120)은 ISA 버스(118)를 거쳐 또는 직접 IDE 버스(128)를 거쳐 대규모 읽기-쓰기 저장 디바이스(114)와 같은 보다 고성능 디바이스들과 데이터를 교환할 수 있다.
컴퓨터 서브시스템(140)에 포함되는 디지털 오디오 발생 IC(130)는 한쌍의 점선(126)으로 표시한바와 같이 ISA 버스(118)를 거쳐, 또는 PCI 버스(116)를 거쳐 CPU(120)와 통신한다. 디지털 오디오 발생 IC(130)은 종래의 것이며 캘리포니아 프레몬트(Fremont)의 ESS 테크놀러지 사에서 판매되는 [Maestro-1TM], [Maestro-2TM], [Maestro-3TM], 또는 [AllegroTM]일수 있다.
이 기술분야에서 잘 알려진 바와 같이, 랩탑 또는 노트북 컴퓨터(10)의 CPU(120)에 구비된 마이크로프로세서에 의해 수행되는 컴퓨터 프로그램은 일반적으로 전력 관리 루틴(PMR: Power Management Routine)을 포함한다. 적당한 동작 조건하에서, PMR은 이전에 기술된 ACPI 규격과 같은 몇 개의 전력 관리 동작 모드 중 하나로 컴퓨터(100)를 둘 수 있다. 다양한 전력 관리 동작 모드 중 하나로 컴퓨터(100)를 두는 컴퓨터 프로그램은 이 분야의 통상의 기술자에 의해 마련될 수 있으며, 본 발명의 부분을 형성하지 않는다. 각각의 다양한 전력 관리 동작 모드는 상응하는 배터리 전력 요구에 의해 특징지워진다. 예를 들어, ACPI 규격의 디바이스 전력 상태를 위한 전류 요구는 하기와 같이 나열할 수 있다.
디바이스 전력 상태 |
요구되는 배터리 전력 |
D0 - 완전히 온 |
Ir1 |
D1 |
Ir2 < Ir1 |
D2 |
Ir3 < Ir2 |
D3 - 오프 |
Ir4 < Ir3 |
CD-ROM 서브시스템(106)
CD-ROM 서브시스템(106)은 본 발명에 따른 오디오 인터페이스 IC(102), CD-ROM 드라이브(138), CD-ROM 제어 버튼(142), 아이콘 액정 디스플레이(LCD: Liquid Crystal Display)(144), 트랙-번호 디스플레이(147), 오디오 출력 증폭기(146) 및 오디오 출력 트랜스듀서(148) 예를 들어 스피커 또는 헤드폰을 포함한다.
제어 버튼 버스(143)를 거쳐 오디오 인터페이스 IC(102)와 연결되는 CD-ROM 제어 버튼(142)은 오디오 CD 플레이 또는 잠시 멈춤(pause), 오디오 CD 빨리 감기(fast-forwarding), 오디오 CD 되감기(rewinding), 오디오 CD 정지 또는 방출 버튼을 가진다. 따라서, CD-ROM 제어 버튼(142)은 컴퓨터(100)의 사용자가 오디오 CD를 플레이하는 동안 CD-ROM 드라이브(138)의 동작을 완벽히 제어토록 한다. CD-ROM 드라이브(138)는 오디오 인터페이스 IC(102)에서 시작된 IDE 확장 버스(129)를 통해 제공된 종래 ATAPI 인터페이스 커맨드에 따른 동작을 할수 있는 기능을 가진 일반 CD-ROM 드라이브이다. CD-ROM 서브시스템(106)은 또한 좌, 우 채널 스테레오 오디오 신호를 오디오 출력 증폭기(146)에 제공하는 오디오 신호 버스(152)를 포함한다.
컴퓨터(100)의 동작 모드에 의존하여, 오디오 인터페이스 IC(102)로부터 수신된 제어 신호에 응답하여 동작하는 오디오 스위치(154)는 좌, 우 채널 스테레오 오디오 신호를 컴퓨터 서브시스템(104)에 포함된 디지털-오디오 발생 IC(130)에 결합할 수 있다. 컴퓨터 서브시스템(104)에 전력 공급이 되지 않을 때, 컴퓨터 서브시스템(104)에 포함된 IC들의 전류 누설에 따른 전력 소비를 줄이기 위해,
1. 오디오 스위치(154)는 CD-ROM 드라이브(138)로부터 오디오 신호 버스(152)를 전기적으로 아이솔레이트 하며,
2. 오디오 인터페이스 IC(102)는 IDE 버스(128)로부터 자체를 상응하게 전기적으로 아이솔레이트 한다.
소리 세기 제어 신호 라인(156)은 오디오 인터페이스 IC(102)로부터의 볼륨제어 신호를 오디오 출력 증폭기(146)에 결합한다. 하기에 보다 상세히 기술된 바와 같이, 오디오 인터페이스 IC(102)는 CD--ROM 드라이브(138)가 동작중임을 나타내기 위해 LCD 신호 라인(145)을 거쳐 아이콘 LCD(144)에 신호를 제공한다. 오디오 인터페이스 IC(102)는 오디오 CD가 플레이되는 대로 트랙 번호를 디스플레이하기 위해 트랙 번호 디스플레이 버스(149)를 거쳐 트랙 번호 디스플레이(147)에 신호를 제공한다.
시스템 관리 버스(SMBus: System Management Bus)(162)는 오디오 인터페이스 IC(102)가 커맨드 및 데이터를 컴퓨터 서브시스템(104)과 교환하는 것을 가능케 한다. 컴퓨터 서브시스템(104)내에서, SMBus(162)는 도 1에 도시된 바와 같이, 키보드 컨트롤러 IC(164)를 거쳐 ISA 버스(118)와 연결되거나, 또는 SMBus(162)는 도 1의 점선(166)으로 표시된 바와 같이, 버스 브리지 IC(124)에 직접 연결될 수 있다.
컴퓨터 서브시스템(104) 및 CD-ROM 서브시스템(106) 모두는 배터리(도면에 도시되지 않음)로부터 전력을 직접 받는다. 오디오 CD를 플레이하기 위해 컴퓨터(100)의 동작 모드에 의존하여, CD-ROM 서브시스템(106) 단독에만, 또는 컴퓨터 서브시스템(104) 및 CD-ROM 서브시스템(106) 둘 다에 전력이 공급될 수 있다. 컴퓨터 서브시스템(104)이 전력을 공급 받지 못하면, 이후 CD-ROM 드라이브(138)의 동작은 CD-ROM 드라이브(138)의 동작을 제어하기 위한 오디오 인터페이스 IC(102)에서 비롯된 신호에 따라 완전히 CD-ROM 서브시스템(106)내에서 이루어진다. 컴퓨터 서브 시스템(104)이 전력을 제공받아 동작하게 되면, 이후 CD-ROM 드라이브(138)의 동작은 오디오 인터페이스 IC(102)를 거쳐 CPU(120)에 의해 수행된 컴퓨터 프로그램으로부터 받은 커맨드에 의해 이루어질 수 있다.
컴퓨터 서브시스템(104)과 CD-ROM 서브시스템(106)간의 상호연결
오디오 인터페이스 IC(102)는 IDE 버스(128) 및 SMBus(162)를 통해 CPU(120)에 의해 수행된 컴퓨터 프로그램에 따라 커맨드와 데이터를 교환한다. 컴퓨터 서브시스템(104)은 또한 컴퓨터(100)의 동작 모드에 따라 CD-ROM 드라이브(138)로부터의 좌, 우 오디오 신호를 디지털 오디오 발생 IC(130)으로 선택적으로 제공한다. 컴퓨터 서브시스템(104)이 전력 제공받고 동작하는 컴퓨터(100)의 동작 중, 오디오 인터페이스 IC(102)는 컴퓨터 서브시스템(104)과 CD-ROM 드라이브(138)간에 커맨드 및 데이터를 중계한다. 컴퓨터 서브시스템(104)이 CD-ROM 드라이브(138)와 교환하는 커맨드와 데이터는 이 기술분야에서 잘 알려져 있다.
오디오 인터페이스 IC(102)일반적인 설명
이하 도 2에 도시된 오디오 인터페이스 IC(102)의 상세 블록 구성도를 참조하면, 오디오 인터페이스 IC(102)는 오디오 인터페이스 IC(102)의 전체 동작을 제어하는 상태 머신(202)을 포함한다. 오디오 인터페이스 IC(102)내에 상태 머신(202)의 포함은 프로그램 가능한 컨트롤러와 대조시 보다 좋은 성능을 제공한다. 상태 머신(202)은 내부 버스(204)를 거쳐 SMBus 인터페이스(206), 레지스터 블록(208), LCD 컨트롤(212) 및 클록 발생기(204)와 연결된다.
SMBus와 결합되는 SMBus 인터페이스(206)는 컴퓨터(100)의 사용자가 어떤CD-ROM 제어 버튼(142)을 누르더라도 누를 때마다 INTN 핀(222)으로부터 인터럽트 신호를 발생한다. INTN 핀(222)은 SMBus(162)의 SMBus 경보 신호 라인으로 유리하게 연결될 수 있다. SMBus 경보 신호 수신시, CPU(120)에 의해 수행되는 컴퓨터 프로그램은 SMBus(162)를 거쳐 오디오 인터페이스 IC(102)에 포함된 레지스터 블록(208)에 문의 신호를 보내 CD-ROM 제어 버튼(142) 중 어떤 것이 눌려졌는 지를 결정할 수 있다.
내부 버스(204)에 결합된 데 이어, 레지스터 블록(208)은 또한, 오디오 인터페이스 IC(102)가 리셋되게 활성화를 일으키는 리셋 신호를 포함하는 동작 모드 버스(226)를 거쳐, 컴퓨터(100)가 오디오 인터페이스 IC(102)에 동작 모드 신호를 제공하게 되는 동작 모드 버스(226)에 결합된다. 동작 모드 버스(226)는 또한 오디오 인터페이스 IC(102)에 컴퓨터 서브시스템(104)이 전력 제공되는지의 여부를 가리키는 신호를 제공한다. 그리고 동작 모드 버스(226)는 오디오 인터페이스 IC(102)에 IDE 확장 버스(129)와 연결된 디바이스가 CD-ROM 드라이브인지를 가리키는 신호를 제공한다. CD-ROM 드라이브가 IDE 확장 버스(129)에 연결된 것인지를 가리키는 신호를 오디오 인터페이스 IC(102)에 제공하는 것은 오디오 인터페이스 IC(102)가 먼저 파워 온 되고 이후 IDE 확장 버스(129)에 연결된 디바이스에 그러한 디바이스가 CD-ROM 드라이브 또는 하드 디스크 드라이브인지 결정하도록 문의 신호를 보내야하는 필요를 없게 한다. 이러한 문의 신호를 보낼 필요를 없애는 것은 만일 컴퓨터(100)가 사용자로 하여금 CD-ROM 드라이브를 하드 디스크 드라이브와 같은 다른 어떤 디바이스로 또는 그 반대로 쉽게 바꾸는 것을 허용한다면 특히 유리하다.
상기에서 쉽게 알 수 있듯이, CD-ROM 서브 시스템(106)의 CD-ROM 제어 버튼(142), 아이콘 LCD(144) 및 트랙 번호 디스플레이(147)는 컴퓨터(100) 사용자에게 오디오 CD 플레이를 위한 자체 완비된 인터페이스를 제공한다. 이러한 기능성을 달성하기 위해, 오디오 인터페이스 IC(102)는 CD-ROM 제어 버튼(142)으로부터 제어 버튼 버스(143)를 거쳐 전기적 신호를 수신하는 제어 버튼 로직(232)을 포함한다. 이러한 신호에 응답하여, 제어 버튼 로직(232)은 데이터를 레지스터 블록(208)에 저장하거나 또는 디지털 볼륨 제어(236)로 하여금 제어 신호를 소리 세기 제어 신호 라인(156)을 거쳐 오디오 출력 증폭기(146)에 전송토록 한다. 이와 유사하게, 컴퓨터 서브시스템(104)이 오디오 CD를 플레이하고 있을 때, LCD 컨트롤(212)은 아이콘 LCD(144)에 포함된 오디오 재생 아이콘을 활성화하도록 LCD 신호 라인(145)을 거쳐 신호를 전송한다. 그리고 이러한 오디오 CD 재생동안 LCD 컨트롤(212)은 트랙 번호 디스플레이 버스(149)를 거쳐 트랙 번호 디스플레이(147)가 오디오 CD의 현재 트랙을 가리키는 번호를 디스플레이 하도록 신호를 전송한다. 하기에 보다 상세히 설명하는 바와 같이, 현재 트랙 번호를 가리키는 데이터는 레지스터 블록(208)에 존재한다.
컴퓨터 서브시스템(104)이 전력 공급을 받을 때, 오디오 인터페이스 IC(102)에 포함된 호스트 IDE 인터페이스(242)는 오디오 인터페이스 IC(102)에 포함된 IDE 신호 멀티플렉서(244)를 거쳐 IDE 버스(128)와 IDE 확장 버스(129)간에 전기적 신호를 결합한다. IDE 버스(128)와 IDE 확장 버스(129)간에 결합된 전기적 신호는CPU(120)에 의해 수행되는 컴퓨터 프로그램과 CD-ROM 드라이브(138)간에 커맨드와 데이터 교환을 이룬다. 그런데, 단지 CD-ROM 서브시스템(106)이 전력 공급을 받게 되면, 상태 머신(202)은 IDE 신호 멀티플렉서(244)를 거쳐 IDE 확장 버스 (129)와 전기적 신호를 교환한다. 그리고, 상기한 바와 같이, 컴퓨터 서브 시스템(104)이 전력 공급을 받지 못하면, IDE 인터페이스(242)는 가능한 한 CD-ROM 서브시스템(106)으로부터 컴퓨터 서브시스템(104)으로 흐르는 누설 전류를 줄이기 위해, 컴퓨터 서브시스템(104)의 IDE 버스(128)로부터 오디오 인터페이스 IC(102)를 전기적으로 아이솔레이트 한다. 하기에는 상태 머신(202)이 IDE 신호 멀티플렉서(244) 및 IDE 확장 버스(129)를 거쳐 CD-ROM 드라이브(138)에 전송할 수 있는 ATAPI 프로토콜에 따른 커맨드를 나열한 표가 개시된다.
커맨드 |
OP코드 |
잠시멈춤/재시작 (Pause/Resume) |
4Bh |
MSF 오디오 플레이 (Play Audio MSF) |
47h |
정지 (stop) |
1Bh |
컨텐츠의 테이블을 읽기(Read Table of Contents) |
43h |
감지 요청 (Request Sense) |
03h |
서브 채널 읽기 (Read Sub Channel) |
42h |
유닛 테스트 준비 (Test Unit Ready) |
00h |
잠금/해제 (Lock/Unlock) |
1Eh |
조회 (Inquiry) |
12h |
슬리프 (sleep) |
E6h |
상태 머신(202)은 또한 오디오 인터페이스 IC(102)로부터 모드 제어 신호 버스(246)를 거쳐 한쌍의 신호를 전송한다. 상태 머신(202)에 의해 모드 제어 신호 버스(246)로 제공되는 모드 신호는 오디오 인터페이스 IC(102)가 CD-ROM 제어 버튼(142)으로부터 신호 수신을 위해 동작중임을 가리킨다. 상태 머신(202)에 의해 모드 제어 신호 버스(246)로 제공되는 전력 제어 신호는 CD-ROM 드라이브(138)가 동작중이거나 최근 동작하였음을 가리키거나, 또는 CD-ROM 드라이브(138)가 최근동작하지 않았음을 가리킨다. 이러한 신호는 CD-ROM 서브시스템(106)내에서 CD-ROM 드라이브(138) 및/또는 오디오 출력 증폭기(146)에 전력 공급을 적절히 제어하기 위해 사용될 수 있다.
컴퓨터(100)의 파워 온 초기화시에, 모드 제어 신호 버스(246)를 거쳐 오디오 인터페이스 IC(102)에 제공되는 입력신호들은 각각 SMBus(162)상에서 오디오 인터페이스 IC(102)를 위한 어드레스를 선택하고 또한 상태 머신(202)이 CD-ROM 드라이브(138) 및/또는 오디오 출력 증폭기(146)에 전력 제공을 제어하기 위한 신호 전송 여부를 제어한다.
오디오 인터페이스 IC(102)는 또한 모드 설정 신호 버스(248)를 거쳐 CD-ROM 서브시스템(106)의 특정 하드웨어 특성을 명기하는 한쌍의 신호를 수신한다. 이러한 신호들 중 하나는 다른 두 형태의 볼륨 제어 IC들 중 어느 것이 오디오 출력 증폭기(146)에 포함되는 지를 명기한다. 다른 모드 설정 신호는 트랙 번호 디스플레이 버스(149)를 거쳐 오디오 인터페이스 IC(102)로부터 트랙 번호 디스플레이(147)로 전송되는 신호의 특정 특성을 명기한다.
오디오 인터페이스 IC(102)에 포함된 클럭 발생기(214)는 오실레이터 입력 신호 라인(252)과 오실레이터 출력 신호 라인(254)에 연결된다. 오실레이터 입력 및 출력 라인(252, 254)은 8MHz 외부 발진기를 오디오 인터페이스 IC(102)에 연결하는데, 이는 도면 어디에도 별도로 도시되어 있지 않다.
레지스터 블록(208)
도 3은 레지스터 블록(208)에 포함된 레지스터들(208a~208h)을 나타낸다. 칩 및 개정 ID 레지스터(208a)의 하위 바이트(208aa)의 상위 7비트는 SMBus(162)상의 오디오 인터페이스 IC(102)의 프로그램 가능한 어드레스를 저장한다. 칩 및 개정 ID 레지스터(208a)의 상위 바이트(208ab)는 오디오 인터페이스 IC(102)의 개정 번호를 저장한다.
제어 버튼 변경 레지스터(208b)의 하위 바이트에서 소프트웨어 프로그램 가능한 0, 1, 3, 및 5번 비트에 각각 저장된 상태들은 특정 CD-ROM 제어 버튼(142)의 눌려짐을 가리키는 데이터를 저장한다. 0번 비트(208ba0)는 되감기 버튼이 눌려졌음을 가리키는 데이터를 저장한다. 1번 비트(208ba1)는 빨리 감기 버튼이 눌려졌음을 가리키는 데이터를 저장한다. 제어 버튼 변경 레지스터(208b)에서 3번 비트(208ba3)는 정지/방출 버튼이 눌려졌을 가리키는 데이터를 저장한다. 그리고 제어 버튼 변경 레지스터(208b)에서 5번 비트(208ba3)는 플레이/잠시멈춤 버튼이 눌려졌을 가리키는 데이터를 저장한다. 인터럽트 상태 레지스터(208h)의 상위 바이트의 소프트웨어 프로그램 가능한 0번 비트(208h0)는 CD-ROM 제어 버튼(142)중 하나가 눌려짐을 가리키는 데이터를 저장하고, 인터럽트 신호가 오디오 인터페이스 IC(102)로부터 INTN 핀(222)을 거쳐 전송되도록 한다. 제어 버튼 변경 레지스터(208b)에서 상기 1, 3, 5번 버튼은 소프트웨어 프로그램 가능하기 때문에, CPU(120)에 의해 수행되는 컴퓨터 프로그램은 그것 들중 어떤 것에도 데이터 값 즉, 1 또는 0을 할당할 수 있다.
제어 버튼 변경 레지스터(208b)의 7번 비트(208ba7)의 상태는 오디오 인터페이스 IC(102)가 상기 나열한 ATAPI 프로토콜 커맨드를 CD-ROM 드라이브(138)에 전송 가능한지의 여부를 가리킨다. 전력 레지스터(208c)의 하위 바이트에서 1번 비트(208ca1)의 상태는 CD-ROM 드라이브(138) 및 오디오 출력 증폭기(146)에 전력 제어를 위해 오디오 인터페이스 IC(102)를 인에이블(enable)한다. 상기 1번 비트(208ca1)가 인에이블되면, 전력 레지스터(208c)의 0번 비트(208ca0)의 상태는 CD-ROM 드라이브(138) 및 오디오 출력 증폭기(146)의 전력 공급을 제어한다.
커맨드 제어 레지스터(208d)의 하위 바이트에서 소프트웨어 프로그램 가능한 0, 1 및 2번 비트에 저장된 각각의 상태는 컴퓨터 서브시스템(104)이 전력 공급을 받을 때 오디오 인터페이스 IC(102)의 동작을 제어하는 데이터를 저장한다. 커맨드 제어 레지스터(208d)에서 상기 0번 비트(208da0)는 오디오 인터페이스 IC(102)가 CD-ROM 제어 버튼(142)을 누름으로써 상기 제어 버튼 변경 레지스터(208b)의 각 비트에 할당된 데이터 값에 의해 상기 기술한 바와 같이 명기된 기능들중 하나의 경우를 수행하기 위해 인에이블되는 지의 여부를 제어하는 데이터를 저장한다. 상기 1번 비트(208da1)는 오디오 인터페이스 IC(102)가 CD-ROM 제어 버튼(142)을 누름으로써 상기 제어 버튼 변경 레지스터(208b)의 비트들에 할당되는 데이터 값에 의해 명기된 어떠한 기능이라도 수행하는 것을 방지하는 데이터를 저장한다. 상기 2번 비트(208da2)는 오디오 인터페이스 IC(102)가 상기 CD-ROM 제어 버튼(142)을 누름으로써 상기 제어 버튼 변경 레지스터(208b)의 비트들에 할당되는 데이터 값에 의해 명기된 기능들 중 하나의 경우를 수행해왔는지의 여부를 가리키는 데이터를 저장한다.
동작 모드 레지스터(208e)의 하위 바이트에서 0번 비트(208ea0)는 하기에 보다 상세히 기술하는 CD-ROM 서브 시스템(106)의 특정 동작 모드 즉, 제3 동작 모드를 명기하는 데이터를 저장한다. 오디오 인터페이스 IC(102)가 제3 동작 모드로 동작하면, 동작 모드 레지스터(208e)의 4번 비트(208ea4)는 오디오 인터페이스 IC(102)로부터 ATAPI 프로토콜 커맨드를 수신하도록 특별한 드라이브 즉, 마스터 드라이브 또는 슬레이브 드라이브의 선택을 명기하는 데이터를 저장한다.
동작 모드 레지스터(208e)의 상위 바이트에서 1번 비트(208eb1)는 상태 머신(202)에 클럭 신호 어플리케이션을 제어한다.
에너지 보존을 위해, 데이터 및 ATAPI 커맨드를 IDE 버스(128) 및 IDE 확장 버스(129)간에 단지 중계하는 모드에서 오디오 인터페이스 IC(102)가 동작할 때, 상기 1번 비트(208eb1)는 상태 머신(202)에 클럭 신호 어플리케이션을 잠시 중단하게 하도록 설정될 수 있다.
트랙 번호 레지스터(208g)의 하위 바이트(208ga)의 0-6번 비트는 오디오 CD가 플레이되는 동안 오디오 CD로부터 읽어들인 트랙 번호를 저장한다. 상위 바이트(208gb)의 소프트웨어 프로그램 가능한 0-6번 비트는 트랙 번호 디스플레이(147)에 디스플레이되는 트랙 번호를 저장한다.
동작 모드
컴퓨터 서브시스템(104)이 전력 공급을 받아 동작하게 되면, CD-ROM 서브시스템(106)의 한 동작 모드에서 오디오 인터페이스 IC(102)는 IDE 버스(128)와 CD-ROM 드라이브(138)간에 커맨드 및 데이터를 확실히 중계한다. 도 4는 컴퓨터 서브시스템(104)이 전력 공급을 받지 않아 동작하지 않는 컴퓨터(100)의 동작 모드에서 오디오 인터페이스 IC(102)의 상태 및 상태 천이를 나타낸다. 컴퓨터 서브시스템(104)이 전력 공급을 받지 않고 CD-ROM 서브시스템(106)이 초기에 전력 공급을 받을 때, 또는 오디오 인터페이스 IC(102)가 동작 모드 버스(226)로부터 수신된 신호에 의해 리셋된 이후 즉시, 오디오 인터페이스 IC(102)는 도 4에 도시된 초기화 상태(302)로 진입하게 된다.
오디오 인터페이스 IC(102)가 초기화 상태(302)에 있을 때 플레이/잠시멈춤 버튼이 눌려지면, 오디오 인터페이스 IC(102)는 오디오 인터페이스 IC(102)가 ATAPI 프로토콜에 따라 CD-ROM 드라이브(138)로 커맨드를 전송하여 CD-ROM 서브시스템(106)이 오디오 CD를 플레이토록 하는 플레이 상태(304)로 천이하게 된다. 오디오 인터페이스 IC(102)가 플레이 상태(304)에 있고 이후 정지 및 방출 버튼이 눌려지게 되거나 오디오 CD 트랙의 전체 끝에 도달하게 되면, 오디오 인터페이스 IC(102)는 초기화 상태(302)로 재진입하며 오디오 CD의 처음으로 되돌아가게 된다.
CD-ROM 서브시스템(106)이 오디오 CD를 플레이하는 플레이 상태(304)중에 있는 동안, 빨리감기 또는 되감기 버튼이 눌려지면 오디오 인터페이스 IC(102)는 빨리 감기/되감기 상태(FF/RW)(306)로 진입하게 된다. 빨리 감기/되감기 상태(306)에서 오디오 인터페이스 IC(102)는 오디오 CD를 빨리 감거나 되감기하도록 CD-ROM 드라이브(138)에 커맨드를 전송하게 된다. CD-ROM 드라이브(138)가 빨리 감기 또는 재 감기 커맨드를 완료하거나, 오디오 CD 트랙의 처음 또는 끝에 도달하게 되면,오디오 인터페이스 IC(102)는 초기화 상태(302)로 재진입한다. CD-ROM 서브시스템(106)이 오디오 CD를 빨리 감거나 되감는 중에, 플레이 버튼이 눌려지면 오디오 인터페이스 IC(102)는 플레이 상태(304)로 진입하게 되며, 현재 트랙의 처음에서 오디오 CD 플레이가 재개된다.
CD-ROM 서브시스템(106)이 오디오 CD를 플레이하는 플레이 상태(304) 또는 오디오 CD를 빨리 감거나 되감는 빨리감기/되감기 상태(306)에 있는 동안, 잠시 멈춤 버튼이 눌려지면, 오디오 인터페이스 IC(102)는 CD-ROM 드라이브(138)의 동작을 잠시 멈추는 잠시 멈춤 상태(308)로 진입하게 된다. 오디오 인터페이스 IC(102)가 잠시 멈춤 상태(308)에 있을 경우에, 플레이 버튼이 눌려지면, 오디오 인터페이스 IC(102)는 플레이 상태(304)로 진입하게 되며 트랙 현재 위치에서 오디오 CD의 플레이가 재개되고, 빨리 감기 또는 되감기 버튼이 눌려지면, 오디오 인터페이스 IC(102)는 빨리감기/되감기 상태(306)로 진입하게 되며, 정지 버튼이 눌려지면, 오디오 인터페이스 IC(102)는 초기화 상태(302)로 진입하게 된다.
오디오 인터페이스 IC(102)가 초기화 상태(302)이고, CD-ROM 드라이브(138) 및/또는 오디오 출력 증폭기(146)로의 전력 공급을 제어하기 위해 상태 머신(202)을 인에이블하는 신호가 모드 설정 신호 버스(248)를 거쳐 오디오 인터페이스 IC(102)에 제공되어져 왔으며, CD-ROM 제어 버튼(142) 중 어느것도 눌려지지 않으면서 미리 설정된 2분 간격이 경과하게 되면, 이후 오디오 인터페이스 IC(102)는 슬리프 상태(312)로 진입한다. 슬리프 상태(312)로 진입시에 오디오 인터페이스 IC(102)는 ATAPI 프로토콜 슬리프 커맨드를 CD-ROM 드라이브(138)로 보내어 CD-ROM드라이브(138)에 포함된 클럭을 늦춘다. 오디오 인터페이스 IC(102)가 슬리프 상태(312)에 있고 CD-ROM 제어 버튼(142)중 어느것도 눌려지지 않으면서 제2차 미리 설정된 2분 간격이 경과하게 되면, 이후 오디오 인터페이스 IC(102)는 보류 상태(314)로 진입하며, 이 상태에서 오디오 인터페이스 IC(102)는 모드 제어 신호 버스(246)를 거쳐 CD-ROM 드라이브(138)가 최근 동작하지 않았음을 가리키는 신호를 전송한다. CD-ROM 서브시스템(106)에 포함된 전기 회로는 오디오 인터페이스 IC(102)로부터의 이 신호를 CD-ROM 드라이브(138) 및 오디오 출력 증폭기(146) 양자로부터 전력을 제거하는데 사용할 수 있다. 오디오 인터페이스 IC(102)가 슬리프 상태(312) 또는 보류 상태(314)에 있을 경우에, CD-ROM 제어 버튼(142) 중 어느 것이라도 눌려지면 오디오 인터페이스 IC(102)는 초기화 상태(302)로 재진입하게 된다.
상기한 두 동작 모드에 더하여, 오디오 인터페이스 IC(102)는 본 발명의 바람직한 일 실시예에 따라 제3 동작 모드를 수행하는 구조를 가질 수 있다. 제3 동작 모드에서 컴퓨터 서브시스템(104)은 전력 공급을 받아 동작하게 되며, 오디오 인터페이스 IC(102)는 CD-ROM 제어 버튼(142)으로부터 커맨드를 수신하고, CPU(120)에 의해 수행되는 컴퓨터 프로그램에 의한 이어지는 복구를 위해 이러한 커맨드를 제어 버튼 변경 레지스터(208b)에 저장한다. 도 5의 흐름도는 이러한 제3 동작 모드에서 오디오 CD를 플레이하기 위해 오디오 인터페이스 IC(102)를 포함하는 컴퓨터(100)의 동작을 나타낸다. 따라서 도 5에 도시된 바와 같이, 사용자가 CD-ROM 제어 버튼(142) 중 어느 것도 누르지 않는 동안 제3 동작 모드에서 상태 머신(202)은 CD-ROM 제어 버튼(142)중 하나가 눌려지기를 기다리는 판단 단계(372단계)를 되풀이한다. CD-ROM 제어 버튼(142)이 어느 것이라도 눌려지면, 374 처리 단계에서 상태 머신(202)은 인터럽트 상태 레지스터(208h)의 상기 0번 비트(208hb0)를 설정하여 SMBus 인터페이스(206)가 SMBus 인터럽트 INTN을 INTN 핀(222)을 거쳐 키보드 컨트롤러 IC(164) 또는 버스 브리지 IC(124) 중 하나로 전송하게 한다. SMBus 인터럽트 전송에 더하여, 상태 머신(202)은 상기 374 처리 단계에서 또한 CD-ROM 제어 버튼(142) 중 어느 것이 눌려졌는지를 가리키도록 제어 버튼 변경 레지스터(208b)에서 적절한 비트를 설정한다. 376 처리 단계에서 CPU(120)에 의해 수행되는 컴퓨터 프로그램은 상기 제어 버튼 변경 레지스터(208b)의 컨텐츠를 읽어들이고 이후 CPU(120)에 SMBus(162)를 거쳐 인터럽트 상태 레지스터(208h)의 0번 비트(208hb0)를 리셋함에 의해 INTN 인터럽트를 클리어토록 하는 데이터를 전송함으로써 INTN 인터럽트 수신에 응답한다.
CPU(120)에 의해 수행되는 컴퓨터 프로그램이 INTN 인터럽트를 클리어한 후에, 상기 상태 머신(202)은 378 판단 단계에서 CPU(120)에 의해 수행되는 컴퓨터 프로그램이 커맨드 제어 레지스터(208d)에서 미리 설정된 1번 비트(208da1)를 가지는지의 여부를 판단한다. 상기 1번 비트(208da1)가 설정되지 않았으면, 이후 상태 머신(202)은 382 판단 단계에서 CPU(120)에 의해 수행되는 컴퓨터 프로그램이 커맨드 제어 레지스터(208d)에서 미리 설정된 0번 비트(208da0)를 가지는지의 여부를 판단한다. 만약 상기 0번 비트(208d0)가 설정되어 있으면, 이후 상태 머신(202)은 384 처리 단계에서 CD-ROM 드라이브(138)에 IDE 확장 버스(129)를 거쳐 IDE버스(128)가 CD-ROM 제어 버튼(142)의 눌려지는 것에 적절히 응답하도록 하는 ATAPI 커맨드를 전송한다. 상기 1번 비트(208da1)가 설정되었고, 상기 0번 비트(208da0)가 설정되지 않았을 경우에는, 이후 상태 머신(202)은 단지 CD-ROM 드라이브(138)에 어떠한 커맨드도 보내지 않으면서 386 처리 단계를 진행한다.
상기 384 처리 단계 또는 386 처리 단계의 수행후, 상태 머신(202)은 392 처리 단계에서 인터럽트 상태 레지스터(208h)의 0번 비트(208hb0)를 다시 설정하여 다시 SMBus 인터페이스(206)가 INTN 핀(222)을 거쳐 키보드 컨트롤러 IC(164) 또는 버스 브리지 IC(124)로 SMBus 인터럽트를 전송하게 한다. 앞서와 같이, 394 처리 단계에서 CPU(120)에 의해 수행되는 컴퓨터 프로그램은 CPU(120)에 SMBus(162)를 거쳐 인터럽트 상태 레지스터(208h)의 0번 비트(208hb0)를 리셋하여 INTN 인터럽트를 클리어토록 하는 데이터를 전송함으로써 INTN 인터럽트 수신에 응답한다. CPU(120)에 의해 수행되는 컴퓨터 프로그램이 상기 0번 비트(208hb0)를 리셋한 후에, 상태 머신(202)은 CD-ROM 제어 버튼(142) 중 하나가 눌려지는 것을 다시 기다리도록 상기 372 판단 단계로 되돌아간다.
도 6은 IDE 버스(128), IDE 확장 버스(129) 및 오디오 인터페이스 IC(102)간의 인터페이스를 위한 바람직한 회로를 나타낸다. 오디오 인터페이스 IC(102)의 호스트 IDE 인터페이스(242) 및 IDE 신호 멀티플렉서(244)가 종래의 IC I/O 버퍼를 채용할 수 있지만, 이러한 종래의 회로는 IDE 버스(128) 및 IDE 확장 버스(129)간에 오디오 인터페이스 IC(102)를 통해 진행하는 신호를 분명히 지연시킬 것이다. 도 6에 도시된 바람직한 회로는 호스트 IDE 인터페이스(242) 및 IDE 신호 멀티플렉서(244)를 위해 종래의 IC I/O 버퍼를 채용하기 보다는, IDE 버스(128) 및 IDE 확장 버스(129) 사이에 위치하는 전송 게이트(402)를 채용하여, 선택적으로 이들을 서로 결합하거나 또는 각기 서로 아이솔레이트한다. 종래의 IC I/O 버퍼보다 전송 게이트(402)의 사용은 IDE 버스(128)와 IDE 확장 버스(129)간에 오디오 인터페이스 IC(102)를 통해 진행하는 신호의 지연을 상당히 줄인다.
전송 게이트(402)와 유사하게, 전송 게이트(406)는 상태 머신(202)에 의해 발생된 신호에 응답하여, 상태 머신(202)이 IDE 확장 버스(129)로부터 수신한 신호들을 상태 머신(202)의 입력 버퍼(404)에(로부터) 선택적으로 결합하거나 아이솔레이트한다. 다른 대안으로, 상태 머신(202)이 IDE 확장 버스(129)에 전송하는 신호는 상태 머신(202)에 의해 제공된 제어신호에 의해 출력 드라이버(408)가 인에이블될 때, 출력 드라이버(408)를 거쳐 지나간다. 상태 머신(202)과 IDE 확장 버스(129)간에 신호 교환을 위한 바람직한 구성은 컴퓨터 서브시스템(104) 및 CD-ROM 서브시스템(106)에서 전력이 제거됨 없이 CD-ROM 드라이브(138)가 IDE 버스(128)에 결합되어지는 다른 디바이스에 의해 대체되어 제거되는 것과 같은 어떤 중대한 이벤트 동안 IDE 확장 버스(129)상의 입력 신호로부터 상태 머신(202)을 아이솔레이트 하는 것을 또한 가능케 한다.
전송 게이트(402), 입력 버퍼(404), 전송 게이트(406) 및 출력 드라이버(408)는 총괄적으로 도 6의 도시에서 점선내에 둘러싸여진 아날로그 멀티플렉서(412)를 구성한다. 아날로그 멀티플렉서(412)의 인에이블 동작은 IDE 확장 버스(129)와 IDE 버스(128) 또는 상태 머신(202)간에 신호 교환을 허용한다. 아날로그 멀티플렉서(412)의 디스에이블 동작은 IDE 버스(128) 및 상태 머신(202) 모두로부터 IDE 확장 버스(129)를 아이솔레이트한다. 오디오 인터페이스 IC(102)에서 상기 아날로그 멀티플렉서(412)의 포함은 CD-ROM 드라이브(138), 하드 디스크, 디지털 비디오 디스크(DVD: Digital Video Disk) 드라이브, ZIP 드라이브, 또는 슈퍼디스크(Superdisk)와 같은 다양한 IDE 디바이스를 완전히 동작중인 컴퓨터(100)의 IDE 확장 버스(129)에(로부터) 연결 또는 연결 해제하는 것을 허용한다.
아날로그 멀티플렉서(412)의 동작은 오디오 인터페이스 IC(102)에 포함된 멀티플렉서 컨트롤(414)에 결합되는 신호에 의해 인에이블 또는 디스에이블된다. 멀티플렉서 컨트롤(414)은 전송 게이트 제어 신호 라인(416)을 거쳐 전송 게이트(402, 406)로 제어신호를 전송한다. 아날로그 멀티플렉서(412)의 디스에이블 동작을 위해, 멀티플렉서 컨트롤(414)은 SMBus(162)를 거쳐 소프트웨어 데이터를 수신한다. 아날로그 멀티플렉서(412)의 인에이블 동작을 위해, 멀티플렉서 컨트롤(414)은 터치다운 신호 라인(418)을 거쳐 하드웨어 신호 및/또는 SMBus(162)를 거쳐 소프트웨어 신호를 수신할 수 있다. 멀티플렉서 컨트롤(414)은 또한 멀티플렉서 제어 신호 선택 버스(422)를 거쳐 상태 머신(202)으로부터 신호를 수신한다. 멀티플렉서 제어 신호 선택 버스(422)를 거쳐 상태 머신(202)에서 멀티플렉서 컨트롤(414)에 제공된 신호는 멀티플렉서 컨트롤(414)의 동작이 터치다운 신호 라인(418)을 거쳐된 제공된 신호 또는 SMBus(162)를 거쳐 멀티플렉서 컨트롤(414)에 제공된 데이터에 의해 인에이블되는지의 여부를 결정한다.
따라서, 도 3에 도시된 바와 같이, 바람직한 아날로그 멀티플렉서(412)를 채용하는 오디오 인터페이스 IC(102)의 레지스터 블록(208)은 전력 레지스터(208c)의 하위 바이트에 위치되는 소프트웨어 프로그램 가능한 3번 비트(208ca3)를 포함한다. 상기 3번 비트(208ca3)의 설정은 SMBus(162)를 거쳐 멀티플렉서 컨트롤(414)의 소프트웨어 데이터 제어를 활성화하는 반면, 상기 3번 비트(208ca3)의 리셋은 터치다운 신호 라인(418)을 거쳐 멀티플렉서 컨트롤(414)의 하드웨어 인에이블을 활성화한다. 멀티플렉서 컨트롤(414)의 소프트웨어 디스에이블 및 인에이블을 초래하기 위해, 전력 레지스터(208c)의 하위 바이트는 또한 설정될 경우에 전송 게이트(402, 406)의 동작을 인에이블하는 소프트웨어 프로그램 가능한 2번 비트(208ca2)를 포함한다. 반대로, 2번 비트(208ca2)의 리셋은 전송 게이트(402, 406)의 동작을 디스에이블 시킨다.
컴퓨터(100)가 IDE 확장 버스(129)에 연결된 디바이스와 함께 완전히 동작할 때, 수동 입력 디바이스(112)의 하나를 사용하는 컴퓨터(100)의 사용자는 IDE 확장 버스(129)에 연결된 디바이스를 연결 해제하도록 CPU(120)에 의해 수행되는 컴퓨터 프로그램을 조작할 수 있다. 이에 응답하여, 컴퓨터(100)는 아날로그 멀티플렉서(412)로 하여금 CD-ROM 서브시스템(106)의 나머지로부터 IDE 확장 버스(129)를 아이솔레이트 하고, 이후 상기 디바이스가 물리적으로 컴퓨터(100)로부터 제거되도록 기계적으로 연결 해제하도록 한다. 이어서 컴퓨터(100)에 디바이스를 삽입하고 해당 디바이스를 IDE 확장 버스(129)에 연결할 경우, 디바이스는 컴퓨터(100)에 기계적으로 로킹되고, 하드웨어 신호 또는 소프트웨어 데이터에 응답하여 오디오 인터페이스 IC(102)는 IDE 확장 버스(129)를 CD-ROM 서브시스템(106)의 나머지에 재결합하여 컴퓨터(100)를 완전한 동작으로 복구한다.
다른 실시예
도 7 및 8은 본 발명의 다른 실시예의 블록도를 나타낸다. 도 1-6의 실시예는 버스 브리지 IC(124) 및 IDE 디바이스(138)간의 IDE 버스(128) 측에 있는 오디오 인터페이스 IC(102)에 관한 것이다. 전송 게이트(도 6의 402, 406)는 검출된 동작 모드(즉, 시스템 오프 등)에 따라 상기 IC(102)를 IDE 버스에(로부터) 결합 및 분리한다. MUX는 IDE 확장 버스(129)를 따라 IDE 커맨드를 발생하기 위해 제공된다. 그런데, 이전 실시예에 기술된 전송 게이트는 버스 브리지 IC(124) 및 IDE 디바이스(138)간의 통신이 상기 IC(102)를 통해 가야만 하기 때문에 전력 소모 및 지연을 일으킬 수 있다. 도 7 및 8에 도시된 실시예에서, 전송 게이트 및 MUX는 IC(102')로부터 제거되고, IC(102')는 버스 브리지 IC(124)와 병렬로 IDE 버스(128)에 결합된다. 이러한 방식에서, 하기에 설명하는 바와 같이, IC(102')의 핀 수가 줄어들고, 잠재적인 전력 손실 및/또는 지연이 회피된다.
특히 도 7을 참조하면, 오디오 인터페이스 IC(102')는 IDE 버스 컨트롤러(124)(상기한 바와 같이, 버스 브리지 IC(124)의 일부 세트)와 병렬로 IDE 버스(128)에 결합되고, 이들은 IDE 디바이스(138)(즉, CD 드라이브, DVD 드라이브, 또는 다른 IDE 미디어 디바이스)에 결합된다. 컴퓨터 서브시스템(104)이 전력 공급받아 동작하는 제1 동작 모드에서, 이러한 실시예의 IC(102')는 컴퓨터 서브시스템(104)의 디지털 컴퓨터 버스(128)와 CD-ROM 드라이브(138)간에 데이터및 커맨드를 중계하지 않으며, 오히려 오디오 인터페이스 IC(102')는 IDE 버스(128)로부터 아이솔레이트 된다. IC(102')가 버스 컨트롤러로부터 아이솔레이트되기 때문에, 본 발명의 실시예는 IC(102')의 저전력 손실(주로 대수롭지 않은 누설 전류에 기인하는 전력 손실)을 달성한다. 더욱이, IC(102')가 버스 컨트롤러와 디바이스간에 신호 경로에 더 이상 있지 않기 때문에, 신호 지연이 회피된다. 따라서, 실시예의 IC(102')는 디바이스(138) 및 컨트롤러(124)간의 전송 경로에 직접적으로 있지 않는다. 컴퓨터 서브시스템(104)이 전력 공급을 받지 않아 동작하지 않는 제2 동작 모드에서, IC(102')는 자율적으로 CD-ROM/DVD 제어 버튼으로부터 수신된 신호 및 IDE 디바이스에 전송하는 커맨드, 즉 이전 실시예와 유사한 방식으로, IDE 디바이스가 IDE 드라이브에 존재하는 오디오 CD를 플레이하도록 하는 커맨드에 응답한다.
도 8은 이러한 실시예의 오디오 인터페이스 IC(102')의 상세 블록도를 나타낸다. 이전 실시예의 전송 게이트 및 MUX 회로 대신에, 이번 실시예는 도 7의 전체 토폴로지에 따라 IDE 버스(128)에/에서 IC(102')를 결합/분리하는 IDE 출력 제어 로직(502)을 포함한다. IDE 출력 제어 로직은 IDE 버스로 IDE 커맨드 및 데이터를 발생하고, IDE 디바이스로부터 IDE 커맨드 및 데이터를 수신한다. 그 밖의 IC(102')의 소자들은 이전 실시예에서 상기 기술된 IC(102)와 동일하다.
대부분의 컴퓨터 시스템, 특히 휴대용 시스템은 3.3 볼트 테크놀로지로 가고 있다. 그러한 시스템에서 칩과 컨트롤러들은 3.3V 동작성을 가지지만, 대부분의 주변 장치(즉, IDE 드라이브 등)들은 여전히 5V 전력을 필요로 하기 때문에, 3.3V 디바이스들은 5V 시스템과 거꾸로 호환성이 있어야 한다. 예를 들어, 울트라(Ultra) DMA 전달 모드를 지원하는 신형 IDE 컨트롤러는 3.3V 시그널링을 사용한다. 이전의 5V 디바이스를 지원하기 위해, 5V 내성이 3.3V 컨트롤러에 요구된다. 이 기술분야에서 잘 알려진 바와 같이, 이러한 형태의 소자들은 예를 들어 다이오드(ESD 다이오드)가 5V 파워 레일에 역 바이어스로 결합되는 ESD(Electrostatic Discharge) 테크놀로지를 사용하여 보호된다. 3.3V 소자가 5V 내성을 갖도록 보장하는 일반적인 방식은 1) 추가의 5V 파워 레일을 ESD 다이오드에 결합하거나, 2) (ESD 다이오드 사용이 필요치 않는) 부동 우물 방법론(floating well methodology)을 사용하는 것이다.
도 7의 토폴로지를 위해, IDE 컨트롤러가 전력 공급을 받지 않을 때, IDE 컨트롤러가 오프되었다 하더라도 IC(102')는 여전히 전력을 공급받을 수 있다. IDE 컨트롤러가 ESD 다이오드 보호 회로를 사용하면, 이후 상기 5V 레일은 컨트롤러에 제공된다. IC(102')가 3.3V를 사용하는 IDE 버스를 드라이브하고, ESD 다이오드가 5V에 바이어스 되면, 이후 IDE 컨트롤러에는 어떠한 누설 전류도 존재하지 않게 된다. IDE 컨트롤러가 부동 우물 보호 설계를 사용하면, 이후 컨트롤러에 제공되는 5V 레일을 가질 필요가 없다. 따라서 시스템 설계자가 ESD 다이오드 보호를 사용하면, 이러한 실시예의 시스템은 IDE 버스 컨트롤러에 5V 레일을 주는 전력 스위치(예를 들어, 버튼(142)과 함께 포함됨)를 포함할 수 있다. 필수적으로, 전력 스위치는 IDE 컨트롤러의 5V 레일, IDE 디바이스, 오디오 인터페이스 IC(102') 및 CD-ROM 서브시스템(106)의 관련 부분을 턴 온한다.
여기에 기술된 실시예에 다양한 변형이 이루어질 수 있다는 것은 이 기술분야에서 잘 인식된다. 예를 들어, 상기 본 발명의 IC(102) 또는 IC(102')를 버스 브리지 IC(124)에 직접 통합하는 것이 바람직할 수도 있다. 그러한 구성에서, 버스 브리지 IC(124)에는 상기한 바와 같이 IC(102 또는 102')의 기능성 및 데이터 입력/출력을 지원하기 위해 추가적인 핀들이 적용될 것이다. IC(102')의 경우, IC(102')는 IC(102)의 경우와 같은 출력 IDE 확장 버스(129)를 요구하지 않으므로, 보다 적은 핀들이 요구될 것이다. 또 다른 실시예에서는, 상기 IC(102')는 예를 들어, IC에서 전력 손실을 더욱 줄이기 위해서 전송 게이트(상기 IC(102)에 대해 언급되어 있음)를 포함할 수 있으며/있거나 특정 버스 아이솔레이션이 주어진 적용에 대해 바람직하다. 이러한 전송 게이트는 출력 제어 로직(502) 대신에 구현되거나, 또는 출력 제어 로직(502)의 소자일 수 있다. 상기 실시예가 종래의 IDE 컨트롤러 및 버스 컨트롤러 테크놀로지를 참조하여 기술되었다 하더라도, 본 발명은 이 기술분야에서 다른 종래의 및/또는 적절한 버스 테크놀로지에 동일하게 적용가능하다는 것을 당업자는 나아가 인식할 것이다.
본 발명이 바람직한 실시예의 형식으로 기술되었다 하더라도, 이러한 개시는 단지 예시일 뿐이며 한정의 의미로 해석되지 않는다는 것은 자명하다. 따라서, 본 발명의 본질 및 범위를 벗어나지 않고서, 발명의 다양한 변경, 변형, 및/또는 대안적인 응용이 본 명세서를 읽은 당업자에게 당연히 제시될 수 있다. 따라서, 본 발명의 범위 및 본질에 속하는 모든 변경, 변형, 또는 대안적 응용은 하기 특허청구범위에 포함되는 것으로 해석된다.