KR100247971B1 - 호스트와광디스크드라이브사이의인터페이스방법 - Google Patents
호스트와광디스크드라이브사이의인터페이스방법 Download PDFInfo
- Publication number
- KR100247971B1 KR100247971B1 KR1019970033249A KR19970033249A KR100247971B1 KR 100247971 B1 KR100247971 B1 KR 100247971B1 KR 1019970033249 A KR1019970033249 A KR 1019970033249A KR 19970033249 A KR19970033249 A KR 19970033249A KR 100247971 B1 KR100247971 B1 KR 100247971B1
- Authority
- KR
- South Korea
- Prior art keywords
- host
- command
- read
- drive
- optical disc
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
- G06F3/0677—Optical disk device, e.g. CD-ROM, DVD
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Optical Recording Or Reproduction (AREA)
Abstract
본 발명은 호스트와 광디스크 드라이브 사이의 인터페이스 방법에 관한 것이다.
그 방법은 광디스크 드라이브가 호스트로부터의 명령을 받을 준비가 완료되면 상기 호스트로 명령 수행준비 완료를 알리기 위한 제1소정값(A0)을 광디스크 드라이브의 레지스터에 라이트하는 단계; 상기 호스트가 상기 제1소정값을 읽어 명령을 보내도 좋다는 것을 인식하여, 명령을 상기 광디스크 드라이브로 전송하는 단계; 상기 광디스크 드라이브에서 상기 명령을 해독하여 읽을 주소를 씨크하고 읽을 블록 수만큼 버퍼링이 완료된 후 데이터 리드 준비 완료를 상기 호스트로 알리기 위한 제2소정값(B0)을 상기 레지스터에 라이트하는 단계; 상기 호스트가 상기 제2소정값을 읽어 상기 광디스크 드라이브의 리드를 수행해도 좋다는 것을 인식하고, 탐색을 원하는 데이터의 리드를 수행하는 단계; 상기 호스트가 원하는 블록을 다 읽었다고 판단되면, 다음 명령 대기중임을 상기 호스트로 알리기 위한 제3소정값(C0)을 상기 레지스터에 라이트하는 단계를 포함하는 것을 특징으로 한다.
본 발명에 의하면, 호스트가 광디스크 드라이브의 인터럽트를 처리하는 일 없이 드라이브 리드를 수행하여 CPU의 사용빈도를 줄이는 효과를 갖는다.
Description
본 발명은 인터페이스 방법에 관한 것으로, 보다 상세하게는 호스트와 광디스크 드라이브사이의 인터페이스 방법에 관한 것이다.
일반적으로 호스트와 광디스크 드라이브, 예컨대 CD-ROM 드라이브는 다음과 같은 방법으로 인터페이스한다. 먼저, 전원을 켜면 CD-ROM 드라이브는 BUSY CLEAR 되기를 기다린다.(TOC 영역을 읽을 준비가 되는 등 드라이브 가동준비가 완료된다.) 드라이브가 BUSY CLEAR되면 호스트는 테스크 파일(TASK FILE)을 드라이브의 특정 레지스터에 라이트한다. 이 때 드라이브는 명령모드임을 나타내기 위해 호스트의 CPU로 제1인터럽트를 건다. 제1인터럽트가 걸리면 호스트의 CPU는 12 바이트로된 아타피 패킷 커맨드(ATAPI packet command)를 드라이브의 특정 레지스터에 라이트한다. 그러면 드라이브는 읽을 주소를 시크하고, 읽을 블록 수 만큼을 버퍼링한 후 리드모드임을 알리기 위한 제2인터럽트를 호스트의 CPU로 건다. 제2인터럽트가 걸리면 호스트는 원하는 블록을 모두 읽어 드라이브 리드를 수행한다. 호스트가 원하는 블록을 모두 읽었다고 판단되면, 드라이브의 현재 상태를 나타내는 상태모드(Status Mode)임을 알리기 위한 제3인터럽트를 호스트의 CPU로 건다.
이와 같은 종래의 호스트와 광디스크 드라이브 사이의 인터페이스 방법은 호스트에서 드라이브로 리드시 드라이브는 3번의 인터럽트가 필요하며 각 인터럽트 마다 호스트의 CPU는 인터럽트를 처리하는 시간이 걸려 CPU 사용빈도가 높아지는 문제점이 있다.
본 발명의 목적은, 상기와 같은 문제점을 해결하기 위해, 광디스크 드라이브의 특정 레지스터에 명령모드, 리드모드 및 상태모드를 저장해두고, 호스트가 드라이브를 리드시 호스트 CPU가 드라이브의 인터럽트를 처리하는 대신에 저장된 3개의 모드를 리드하여 데이터를 리드하는 호스트와 광디스크 드라이브사이의 인터페이스 방법을 제공하는 것이다.
도 1은 본 발명에 따른 호스트와 광디스크 드라이브사이의 인터페이스 방법의 흐름도이다.
상기의 목적을 달성하기 위하여,
호스트와 광디스크 드라이브 사이에서 인터페이스하기 위한 방법에 있어서, 상기 광디스크 드라이브는 인터페이스에 관련된 소정값들을 라이트하기 위한 레지스터를 구비하며,
상기 광디스크 드라이브가 상기 호스트로부터의 명령을 받을 준비가 완료되면 상기 호스트로 명령 수행준비 완료를 알리기 위한 제1소정값(A0)을 상기 레지스터에 라이트하는 단계; 상기 호스트가 상기 제1소정값을 읽어 명령을 보내도 좋다는 것을 인식하여, 명령을 상기 광디스크 드라이브로 전송하는 단계; 상기 광디스크 드라이브에서 상기 명령을 해독하여 읽을 주소를 씨크하고 읽을 블록 수만큼 버퍼링이 완료된 후 데이터 리드 준비 완료를 상기 호스트로 알리기 위한 제2소정값(B0)을 상기 레지스터에 라이트하는 단계; 상기 호스트가 상기 제2소정값을 읽어 상기 광디스크 드라이브의 리드를 수행해도 좋다는 것을 인식하고, 탐색을 원하는 데이터의 리드를 수행하는 단계; 상기 호스트가 원하는 블록을 다 읽었다고 판단되면, 다음 명령 대기중임을 상기 호스트로 알리기 위한 제3소정값(C0)을 상기 레지스터에 라이트하는 단계를 포함하는 것을 특징으로 하는 호스트와 광디스크 드라이브 사이의 인터페이스 방법이 제공된다.
이어서, 첨부한 도면을 참조하여 본 발명의 실시예를 상세히 설명하기로 한다.
도 1은 본 발명에 따른 호스트와 광디스크 드라이브사이의 인터페이스 방법의 흐름도이다.
도 1에서는 광디스크 드라이브 중 CD-ROM 드라이브를 예로들어 설명하기로 한다. 도 1에 도시된 흐름도는 제102단계 내지 제128단계를 포함한다.
CD-ROM 드라이브가 BUSY CLEAR 되었는지를 판단한다.(102단계) CD-ROM 드라이브를 파워온시키면 드라이브는 초기화되어 BUSY CLEAR 되기를 기다린다. 102단계에서 CD-ROM 드라이브가 BUSY CLEAR 되면, 호스트가 테스크 파일을 라이트했는지를 판단한다.(104단계) 104단계에서 테스크 파일을 라이트했다고 판단되면, CD-ROM 드라이브를 BUSY SET으로 설정한다.(106단계)
호스트로부터 패킷명령을 받을 준비를 완료했는지를 판단한다.(108단계) 108단계에서 패킷명령을 받을 준비를 완료했다고 판단되면, 제1레지스터에 명령모드와 명령모드임을 알리는 특정값 A0를 라이트한다.(110단계) 여기서 제1레지스터는 CD-ROM 드라이브 내부의 특정 레지스터를 말한다. 명령모드가 라이트된 제1레지스터에는 명령모드와 특정값(예컨대 A0)을 라이트하여 A0 값을 보면 호스트가 명령모드임을 알 수 있도록 한다. BUSY CLEAR 되었는지를 판단한다.(112단계) 이는 호스트가 110단계에서 라이트된 명령모드를 리드했는지를 판단하는 단계이며, 종래의 호스트와 드라이브 간의 인터페이스 방법에서 명령모드임을 알리기 위해 드라이브에서 호스트의 CPU로 제1인트럽트를 건 것에 대응한다.
112단계에서 BUSY CLEAR 되었으면 (호스트가 명령모드를 리드했다고 판단되면) 호스트가 패킷명령(12바이트로된 아타피 패킷 커맨드)을 라이트했는지를 판단한다.(114단계) 호스트가 패킷명령을 라이트했다고 판단되면 CD-ROM 드라이브를 BUSY SET으로 설정한다.(116단계) 읽을 데이터에 대한 버퍼링을 완료했는지를 판단한다.(118단계) 이는 호스트가 읽을 주소를 시크하고, 읽을 블록수 만큼 버퍼링을 완료했는지를 판단하는 단계이다. 118단계에서 버퍼링을 완료했다고 판단되면, 제2레지스터에 리드모드와 리드모드임을 알리는 특정값 B0를 라이트한다.(120단계) 여기서 제2레지스터는 CD-ROM 드라이브 내부의 특정 레지스터를 말한다. 리드모드가 라이트된 제2레지스터에는 리드모드와 특정값(예컨대 B0)을 라이트하여 B0 값을 보면 호스트가 리드모드임을 알 수 있도록 한다. BUSY CLEAR 되었는지를 판단한다.(122단계) 이는 호스트가 120단계에서 라이트된 리드모드를 리드했는지를 판단하는 단계이다. 이는 종래의 호스트와 드라이브 간의 인터페이스 방법에서 리드모드임을 알리기 위해 드라이브에서 호스트의 CPU로 제2인트럽트를 건 것에 대응된다.
122단계에서 BUSY CLEAR이면(호스트가 리드모드를 리드했다고 판단되면) 호스트가 원하는 블록을 모두 읽었는지를 판단한다.(124단계) 124단계에서 호스트가 원하는 블록을 모두 읽었다고 판단되면, 제3레지스터에 상태모드와 상태모드임을 알리는 C0를 라이트한다.(126단계) 여기서 제3레지스터는 CD-ROM 드라이브 내부의 특정 레지스터를 말한다. 제3레지스터에는 상태모드와 특정값(예컨대 C0 )을 라이트하여 C0 값을 보면 호스트가 상태모드임을 알 수 있도록 한다. BUSY CLEAR 되었는지를 판단한다.(128단계) 이는 호스트가 126단계에서 라이트된 상태모드를 리드했는지를 판단하는 단계이다. 이는 종래의 호스트와 드라이브 간의 인터페이스 방법에서 상태모드임을 알리기 위해 드라이브에서 호스트의 CPU로 제3인트럽트를 건 것에 대응된다.
128단계에서 BUSY CLEAR 되었다고 판단되면 흐름도를 종료한다. 102-104, 108, 112-114, 118, 122-124 및 128단계에서 "아니오" 라고 판단되면 그 단계를 반복하여 수행한다.
본 발명은 상술한 실시예에 한정되지 않으며, 본 발명의 사상내에서 당업자에 의한 변형이 가능함은 물론이다. 예컨대, 본 발명의 실시예에서는 광디스크 드라이브 중에서 CD-ROM 드라이브를 예로들어 설명하였으나 이에 한정되지 않고 광디스크 드라이브에 적용될 수 있음은 물론이다.
본 발명에 따르면, 호스트가 광디스크 드라이브로 리드시 드라이브에서 호스트의 CPU로 인터럽트가 걸리지 않기 때문에 CPU가 드라이브의 인터럽트를 처리하는 일 없이 드라이브 리드를 수행하여 CPU의 사용빈도를 줄이는 효과를 갖는다.
Claims (2)
- 호스트와 광디스크 드라이브 사이에서 인터페이스하기 위한 방법에 있어서,상기 광디스크 드라이브는 인터페이스에 관련된 소정값들을 라이트하기 위한 레지스터를 구비하며,상기 광디스크 드라이브가 상기 호스트로부터의 명령을 받을 준비가 완료되면 상기 호스트로 명령 수행준비 완료를 알리기 위한 제1소정값(A0)을 상기 레지스터에 라이트하는 단계;상기 호스트가 상기 제1소정값을 읽어 명령을 보내도 좋다는 것을 인식하여, 명령을 상기 광디스크 드라이브로 전송하는 단계;상기 광디스크 드라이브에서 상기 명령을 해독하여 읽을 주소를 씨크하고 읽을 블록 수만큼 버퍼링이 완료된 후 데이터 리드 준비 완료를 상기 호스트로 알리기 위한 제2소정값(B0)을 상기 레지스터에 라이트하는 단계;상기 호스트가 상기 제2소정값을 읽어 상기 광디스크 드라이브의 리드를 수행해도 좋다는 것을 인식하고, 탐색을 원하는 데이터의 리드를 수행하는 단계; 및상기 호스트가 원하는 블록을 다 읽었다고 판단되면, 다음 명령 대기중임을 상기 호스트로 알리기 위한 제3소정값(C0)을 상기 레지스터에 라이트하는 단계를 포함하는 것을 특징으로 하는 호스트와 광디스크 드라이브 사이의 인터페이스 방법.
- 제1항에 있어서, 상기 호스트에서 상기 광디스크 드라이브로의 명령은아타피 패킷 커맨드(ATAPI packet command)임을 특징으로 하는 호스트와 광디스크 드라이브 사이의 인터페이스 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970033249A KR100247971B1 (ko) | 1997-07-16 | 1997-07-16 | 호스트와광디스크드라이브사이의인터페이스방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970033249A KR100247971B1 (ko) | 1997-07-16 | 1997-07-16 | 호스트와광디스크드라이브사이의인터페이스방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19990010453A KR19990010453A (ko) | 1999-02-18 |
KR100247971B1 true KR100247971B1 (ko) | 2000-03-15 |
Family
ID=19514747
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970033249A KR100247971B1 (ko) | 1997-07-16 | 1997-07-16 | 호스트와광디스크드라이브사이의인터페이스방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100247971B1 (ko) |
-
1997
- 1997-07-16 KR KR1019970033249A patent/KR100247971B1/ko not_active IP Right Cessation
Non-Patent Citations (1)
Title |
---|
컴퓨터 시스템 구조 제3판, 11.4 전송모드, 김종상 * |
Also Published As
Publication number | Publication date |
---|---|
KR19990010453A (ko) | 1999-02-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101035225B1 (ko) | 개량 데이터 전송을 위한 제어기 장치 및 방법 | |
EP1389760B1 (en) | Data transfer control system, program and data transfer control method | |
JP2545482B2 (ja) | インタ―フェイス装置の転送パラメ―タ設定方法 | |
EP2214103B1 (en) | I/O controller and descriptor transfer method | |
US5717949A (en) | System for reading transfer control parameters based on identification codes stored in first and second registers storing destination identification and designated control section identification data | |
KR100247971B1 (ko) | 호스트와광디스크드라이브사이의인터페이스방법 | |
CN1050918C (zh) | 控制数据传送的接口电路 | |
US20050138441A1 (en) | Power management without interrupt latency | |
JP2530113B2 (ja) | デ―タ転送制御用インタ―フェ―ス回路及び磁気ディスク装置 | |
KR101109600B1 (ko) | 직접 메모리 접근 제어를 이용한 데이터 전송 방법 및 그장치 | |
JPH02186424A (ja) | ディスク制御回路 | |
KR100255846B1 (ko) | 에스씨에스아이 메시지를 타겟으로서 처리하기 위한 방법 | |
JPH1097489A (ja) | 磁気ディスク装置のブロック長変換方法及びブロック長変換装置 | |
JP2544039B2 (ja) | ディスクドライブ並列操作方法 | |
KR100259585B1 (ko) | 디엠에이 콘트롤러 | |
JPH0736806A (ja) | Dma方式 | |
KR100758989B1 (ko) | 절전모드 수행에 따른 동작상태를 표시하는디지털컨버젼스디스크 플레이어 및 그 제어방법 | |
KR930001925B1 (ko) | 피씨와 씨디피간의 인터페이스회로 및 방법 | |
JPS59161751A (ja) | 命令走行アドレス記録装置 | |
KR100792282B1 (ko) | 디지털 컨버젼스 디스크에 기록되는 데이터의 기록 상황표시방법 및 디지털 컨버젼스 디스크 플레이어 | |
CN115480703A (zh) | 一种kmdf框架下读取usb数据到磁盘的方法及系统 | |
JPH03111959A (ja) | 外部デバイス制御装置 | |
JPS62140135A (ja) | デイスクメモリデバイスのアクセス制御装置 | |
JPH02294815A (ja) | 光ディスク装置用接続装置 | |
KR20040065815A (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: 20071203 Year of fee payment: 9 |
|
LAPS | Lapse due to unpaid annual fee |