KR100459729B1 - 펌웨어 다운로드 방법 - Google Patents
펌웨어 다운로드 방법 Download PDFInfo
- Publication number
- KR100459729B1 KR100459729B1 KR10-2002-0072406A KR20020072406A KR100459729B1 KR 100459729 B1 KR100459729 B1 KR 100459729B1 KR 20020072406 A KR20020072406 A KR 20020072406A KR 100459729 B1 KR100459729 B1 KR 100459729B1
- Authority
- KR
- South Korea
- Prior art keywords
- firmware
- host
- atapi
- download
- drive
- Prior art date
Links
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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
본 발명은 정보 다운로드 방법에 관한 것으로, 보다 상세하게는 ATAPI(AT Attachment Packet Interface) 명령 프로토콜을 사용하는 호스트와 ATAPI 드라이브 사이에 펌웨어를 다운로드 할 수 있는 펌웨어 다운로드 방법에 관한 것이다. 펌웨어 다운로드 방법은 ATAPI 프로토콜을 통하여 통신하는 호스트와 ATAPI 드라이브 사이의 펌웨어 다운로드 방법으로서, (a) 상기 호스트로부터 전송되는 특정 명령에 의해 상기 펌웨어를 버퍼링 하는 단계, (b) 상기 호스트의 요청에 의해 상기 버퍼링된 펌웨어가 내부 메모리에 저장 완료될 때까지의 저장 상태 정보를 상기 호스트로 전송하는 단계, (c) 저장완료 정보를 수신한 상기 호스트가 펌웨어 다운로드 종료 시점을 확인하는 단계를 포함한다. 본 발명에 따르면, 호스트와 ATAPI 드라이브 사이의 펌웨어 다운로드를 위한 상호 표준화된 규격을 사용하여 보다 효율적으로 펌웨어를 다운로드할 수 있고, 고객에게 ATAPI 드라이브의 펌웨어 저장 상태 정보를 정확히 알려주는 효과를 창출한다.
Description
본 발명은 정보 다운로드 방법에 관한 것으로, 보다 상세하게는 ATAPI(AT Attachment Packet Interface) 명령 프로토콜을 사용하는 호스트와 ATAPI 드라이브 사이에 펌웨어를 다운로드 할 수 있는 펌웨어 다운로드 방법에 관한 것이다.
ATAPI는 컴퓨터와 CD-ROM 드라이브 및 테이프 백업 드라이브 사이의 인터페이스이다. ATAPI 드라이브들은 전용 드라이버를 사용하여 통신하기 때문에 하드디스크와는 달리 OS가 부팅 할 때 이 드라이버를 메모리에 미리 올려두어야 사용할 수 있게 된다.
도 1은 종래의 펌웨어 다운로드 방법의 동작을 보이는 흐름도로서, PC(호스트, 미도시)와 ATAPI 드라이브(예를 들어 CD-ROM 드라이브, 미도시) 사이의 펌웨어다운로드 방법을 설명한다.
PC는 ATAPI 드라이브에 펌웨어 다운로드 시작을 알리는 명령(START Command)을 다운로드 한다(100단계).
그리고 PC는 ATAPI 드라이브에 펌웨어 및 펌웨어 다운로드의 계속 진행을 알리는 명령(CONTINUE Command)을 다운로드 한다(101단계). PC에서 전송되는 펌웨어는 ATAPI 드라이브의 RAMA(미도시)에 저장된다.
펌웨어 다운로드가 완료되면, PC는 ATAPI 드라이브에 펌웨어 다운로드 종료를 알리는 명령(END Command)을 다운로드 한다(102단계).
ATAPI 드라이브의 RAM에 펌웨어 다운로드가 완료되면, ATAPI 드라이브는 RAM에 저장된 펌웨어를 플래시 메모리(미도시)로 전송한다(103단계).
이때 PC는 ATAPI 드라이브의 RAM에 저장된 펌웨어가 플래시 메모리에 모두 전송될 때까지 대기하게 된다(104, 105단계).
이처럼 종래에는 ATAPI 드라이브의 RAM에 저장된 펌웨어가 플래시 메모리에 저장되는 상태 정보가 없어 PC용 어플리케이션에서는 종료 시점을 알 수 없으며, 다운로드 유틸리티를 사용하는 고객은 다운로드가 얼마만큼 진행되고 있는지에 대해 알 수 없으므로, 이러한 상태 정보를 알 수 없는 PC 또는 고객은 ATAPI 드라이브의 RAM에 저장된 펌웨어가 플래시 메모리에 모두 전송될 때까지 기다려야 하는 문제점이 발생한다.
본 발명이 이루고자 하는 기술적인 과제는 호스트와 ATAPI 드라이브 사이의펌웨어 다운로드를 위한 상호 표준화된 규격을 사용하여 보다 효율적으로 펌웨어를 다운로드하고, ATAPI 드라이브의 펌웨어 저장 상태 정보를 PC로 전송하는 펌웨어 다운로드 방법을 제공하는데 있다.
도 1은 종래의 펌웨어 다운로드 방법의 동작을 보이는 흐름도 이다.
도 2는 펌웨어 다운로드 장치의 구성을 보이는 블록도 이다.
도 3은 본 발명에 따른 펌웨어 다운로드 방법의 동작을 보이는 흐름도 이다.
도 4는 도 3을 설명하기 위한 명령 스팩이다.
본 발명이 이루고자 하는 기술적인 과제를 해결하기 위한 펌웨어 다운로드 방법은 ATAPI 프로토콜을 통하여 통신하는 호스트와 ATAPI 드라이브 사이의 펌웨어 다운로드 방법으로서, (a) 상기 호스트로부터 전송되는 특정 명령에 의해 상기 펌웨어를 버퍼링 하는 단계; (b) 상기 호스트의 요청에 의해 상기 버퍼링된 펌웨어가 내부 메모리에 저장 완료될 때까지의 저장 상태 정보를 상기 호스트로 전송하는 단계; 및 (c) 저장완료 정보를 수신한 상기 호스트가 펌웨어 다운로드 종료 시점을 확인하는 단계를 포함하는 것이 바람직하다.
본 발명에 있어서, 상기 (a)단계의 특정 명령은 펌웨어 다운로드 시작을 알리는 특정 명령(Start), 펌웨어 다운로드의 계속 진행을 알리는 특정 명령(Continue), 펌웨어 다운로드의 종료를 알리는 특정 명령(End)인 것을 특징으로 한다.
본 발명에 있어서, 상기 (b)단계에서 상기 버퍼링된 펌웨어가 내부 메모리에 저장 중인 경우, 상기 저장 상태 정보를 퍼센트 단위(0%∼100%)로 전송하는 것을 특징으로 한다.
이하, 첨부된 도면을 참조하여 본 발명을 상세히 설명한다.
도 2는 펌웨어 다운로드 장치의 구성을 보이는 블록도로서, PC(200) 및ATAPI 드라이브(201)로 구성된다. 본 발명에서 ATAPI 드라이브(201)는 제어부(201-1), RAM(201-2), 플래시 메모리(201-3)로 구성된다. 본 발명에서 PC(200) 및 ATAPI 드라이브(201)는 ATAPI 프로토콜을 사용하여 통신한다.
도 3은 본 발명에 따른 펌웨어 다운로드 방법의 동작을 보이는 흐름도로서, PC는 ATAPI 드라이브에 펌웨어 다운로드를 시작 명령(START)을 전송하는 단계(300), PC는 ATAPI 드라이브에 펌웨어 및 펌웨어 다운로드 진행을 알리는 명령(CONTINUE)을 전송하는 단계(301), PC는 ATAPI 드라이브에 펌웨어 다운로드를 종료 명령(END)을 전송하는 단계(302), ATAPI 드라이브의 RAM에 저장된 펌웨어를 플래시 메모리에 저장하는 단계(303), 플래시 메모리에 펌웨어 저장이 완료되었는지 판단하는 단계(304), PC의 요청에 의해 플래시 메모리의 펌웨어 저장 상태 정보를 % 단위로 전송하는(305), PC는 ATAPI 드라이브로부터 플래시 메모리의 저장 상태 정보로서 FFFFh를 수신하였는지 판단하는 단계(306)로 구성된다.
도 4는 도 3을 설명하기 위한 명령 스팩이다.
이어서, 도 2∼도 4를 참조하여 본 발명을 상세히 설명한다.
ATAPI 프로토콜을 사용하여 통신하는 PC(200) 및 ATAPI 드라이브(201) 사이에 펌웨어 다운로드 방법을 설명하면, PC(200)는 ATAPI 드라이브(201)의 제어부(201-1)에 펌웨어 다운로드를 시작 명령(START)을 전송하는 단계(300단계).
PC(200) 다운로드 시작 명령(START)이 ATAPI 드라이브(201)로 전송되면, 제어부(201-1)는 펌웨어 버퍼링을 위한 RAM(201-2)을 할당한다. 이때 펌웨어가 전송될 RAM(201-2)은 어떤 경우에도 변경되지 않는다.
ATAPI 드라이브(201)의 다운로드를 시작 명령(START)을 감지한 PC(200)는 ATAPI 드라이브(201)에 펌웨어 및 펌웨어 다운로드 진행을 알리는 명령(C12ONTINUE)을 전송한다(301단계).
PC로부터 다운로드 되는 펌웨어는 ATAPI 드라이브(201)의 RAM(201-2)에 저장되고, 펌웨어 다운로드 진행을 알리는 명령(CONTINUE)은 제어부(201-1)가 수신한다. PC(200)에서 전송되는 펌웨어 다운로드 진행을 알리는 명령(CONTINUE)은 플래시 메모리(201-3)의 사이즈에 따라 그 횟수가 결정된다.
펌웨어 전송이 완료되면, PC(200)는 ATAPI 드라이브(201)에 펌웨어 다운로드를 종료 명령(END)을 전송한다(302단계).
PC(200)가 ATAPI 드라이브(201)로 펌웨어 다운로드 시에 사용하는 상호 전송 규약이 도 4(a)에 도시되어 있다. 도 4a에서 Sub Command가 01h인 경우, PC(200)가 펌웨어를 ATAPI 드라이브(201)로 다운로드 하는 명령임을 나타낸다. 도 4(a)에 도시된 Download Code에 의해 펌웨어가 PC(200)에서 ATAPI 드라이브(201)로 다운로드 된다. Download Code가 00h인 경우(00h가 PC(200)에서 ATAPI 드라이브(201)로 전송되는 경우), 펌웨어 다운로드 시작을 의미한다. Download Code가 FFh인 경우, 펌웨어 다운로드 진행을 의미한다. Download Code가 XXh인 경우, 펌웨어 다운로드 종료를 의미한다.
ATAPI 드라이브(201)의 제어부(201-1)가 PC(200)로부터 펌웨어 다운로드를 종료 명령(END)을 수신하면, RAM(201-2)에 저장된 펌웨어를 플래시 메모리(201-3)에 저장한다(303단계). 제어부(201-1)는 펌웨어 다운로드 진행을 알리는명령(CONTINUE) 횟수만큼 RAM(201-2)에 저장되는 펌웨어를 플래시 메모리(201-3)에 저장한다.
ATAPI 드라이브(201)의 제어부(201-1)는 RAM(201-2)에 저장된 펌웨어가 플래시 메모리(201-3)로 저장이 완료되었는지 판단한다(304단계).
RAM(201-2)에 저장된 펌웨어가 플래시 메모리(201-3)로 저장되는 중에, 제어부(201-1)가 PC(200)로부터 출력되는 저장 상태 정보 요청 신호를 수신한 경우, 플래시 메모리(201-3)의 펌웨어 저장 상태 정보를 % 단위로 PC(200)에 전송한다(305단계).
ATAPI 드라이브(201)가 PC(200)로 전송하는 펌웨어 저장 상태 정보에 대한 상호 전송 규약이 도 4(b)에 도시되어 있다. 도 4b에서 Sub Command가 10h인 경우, ATAPI 드라이브(201)가 펌웨어 저장 상태를 PC(200)로 전송하는 것임을 나타낸다. RAM(201-2)에 저장된 펌웨어가 플래시 메모리(201-3)로 전송 중인 경우, 제어부(201-1)는 플래시 메모리(201-3)에 펌웨어 저장 상황을 전송 퍼센트(0∼100%)로 PC(200)에 전송한다. 이때 제어부(201-1)는 2 바이트 단위로 저장 상태 정보를 PC(200)로 전송한다. PC(200)를 사용 중인 고객은 ATAPI 드라이브(201)로부터 퍼센트로 전송되는 저장 상태 정보를 확인하여 펌웨어 저장 진행 상태를 확인할 수 있게 된다.
RAM(201-2)에 저장된 펌웨어가 플래시 메모리(201-3)로 모두 저장된 경우, ATAPI 드라이브(201)의 제어부(201-1)는 저장 완료 정보로서 FFFFh를 PC(200)로 전송하고, PC(200)는 ATAPI 드라이브(201)로부터 FFFFh를 수신하여 펌웨어가 저장 완료되었음을 확인한다(306단계).
본 발명은 상술한 실시 예에 한정되지 않으며 본 발명의 사상 내에서 당업자에 의한 변형이 가능함은 물론이다.
상술한 바와 같이 본 발명에 따르면, 호스트와 ATAPI 드라이브 사이의 펌웨어 다운로드를 위한 상호 표준화된 규격을 사용하여 보다 효율적으로 펌웨어를 다운로드할 수 있고, 고객에게 ATAPI 드라이브의 펌웨어 저장 상태 정보를 정확히 알려주는 효과를 창출한다.
Claims (3)
- ATAPI 프로토콜을 통하여 통신하는 호스트와 ATAPI 드라이브 사이의 펌웨어 다운로드 방법으로서,(a) 상기 호스트로부터 전송되는 특정 명령에 의해 상기 펌웨어를 버퍼링 하는 단계;(b) 상기 호스트의 요청에 의해 상기 버퍼링된 펌웨어가 내부 메모리에 저장 완료될 때까지의 저장 상태 정보를 상기 호스트로 전송하는 단계; 및(c) 저장완료 정보를 수신한 상기 호스트가 펌웨어 다운로드 종료 시점을 확인하는 단계를 포함하는 펌웨어 다운로드 방법.
- 제 1항에 있어서, 상기 (a)단계의 특정 전송 규약은 펌웨어 다운로드 시작을알리는 특정 명령(Start), 펌웨어 다운로드의 계속 진행을 알리는 특정 명령(Continue), 펌웨어 다운로드의 종료를 알리는 특정 명령(End)인 것을 특징으로 하는 펌웨어 다운로드 방법.
- 제 1항에 있어서, 상기 (b)단계에서 상기 버퍼링된 펌웨어가 내부 메모리에 저장 중인 경우, 상기 저장 상태 정보를 퍼센트 단위(0%∼100%)로 전송하는 것을 특징으로 하는 펌웨어 다운로드 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2002-0072406A KR100459729B1 (ko) | 2002-11-20 | 2002-11-20 | 펌웨어 다운로드 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2002-0072406A KR100459729B1 (ko) | 2002-11-20 | 2002-11-20 | 펌웨어 다운로드 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20040043940A KR20040043940A (ko) | 2004-05-27 |
KR100459729B1 true KR100459729B1 (ko) | 2004-12-03 |
Family
ID=37340340
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-2002-0072406A KR100459729B1 (ko) | 2002-11-20 | 2002-11-20 | 펌웨어 다운로드 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100459729B1 (ko) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5572643A (en) * | 1995-10-19 | 1996-11-05 | Judson; David H. | Web browser with dynamic display of information objects during linking |
KR19990025017A (ko) * | 1997-09-09 | 1999-04-06 | 딩 얀 양 | Ata / ide 인터페이스를 통한 광학디스크드라이브용 펌웨어 코드의 업그래이드 방법 및 장치 |
JP2000030366A (ja) * | 1998-07-15 | 2000-01-28 | Sony Corp | 情報受信装置、及びダウンロード進捗状況表示方法 |
KR20000050874A (ko) * | 1999-01-15 | 2000-08-05 | 윤종용 | 플래시 롬을 이용한 에뮬레이터를 포함한 마이콤 개발 시스템 및 펌웨어 업그레이드 방법 |
KR20020078371A (ko) * | 2001-04-09 | 2002-10-18 | 주식회사 팬택앤큐리텔 | 이동통신단말기의 펌웨어 멀티 다운로딩 방법 |
KR20030070717A (ko) * | 2002-02-26 | 2003-09-02 | 주식회사 레인콤 | 기록 매체 재생 장치를 이용한 주변 기기 펌웨어업그레이드 방법 및 장치 |
-
2002
- 2002-11-20 KR KR10-2002-0072406A patent/KR100459729B1/ko not_active IP Right Cessation
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5572643A (en) * | 1995-10-19 | 1996-11-05 | Judson; David H. | Web browser with dynamic display of information objects during linking |
KR19990025017A (ko) * | 1997-09-09 | 1999-04-06 | 딩 얀 양 | Ata / ide 인터페이스를 통한 광학디스크드라이브용 펌웨어 코드의 업그래이드 방법 및 장치 |
JP2000030366A (ja) * | 1998-07-15 | 2000-01-28 | Sony Corp | 情報受信装置、及びダウンロード進捗状況表示方法 |
KR20000050874A (ko) * | 1999-01-15 | 2000-08-05 | 윤종용 | 플래시 롬을 이용한 에뮬레이터를 포함한 마이콤 개발 시스템 및 펌웨어 업그레이드 방법 |
KR20020078371A (ko) * | 2001-04-09 | 2002-10-18 | 주식회사 팬택앤큐리텔 | 이동통신단말기의 펌웨어 멀티 다운로딩 방법 |
KR20030070717A (ko) * | 2002-02-26 | 2003-09-02 | 주식회사 레인콤 | 기록 매체 재생 장치를 이용한 주변 기기 펌웨어업그레이드 방법 및 장치 |
Also Published As
Publication number | Publication date |
---|---|
KR20040043940A (ko) | 2004-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101130474B1 (ko) | 총칭 usb 드라이버 | |
JP6336498B2 (ja) | マルチプロセッサシステムにおけるプロセッサ間プロトコル | |
US7562360B2 (en) | Method and system for firmware downloads | |
KR100781926B1 (ko) | 컴퓨터 시스템 및 그 제어 방법 | |
KR101640207B1 (ko) | 부트로더 및 임베디드 시스템 업그레이드 방법 | |
US7904606B2 (en) | Transport control channel program chain linked branching | |
EP1310908A3 (en) | Portable storage medium based on universal serial bus standard | |
KR20040035723A (ko) | 컴퓨터 네트워크 내의 블록 데이터 저장 | |
US9336022B2 (en) | Universal serial bus (USB) device and a USB system including the same | |
CN101276316A (zh) | 用于控制主机设备与usb设备之间的通信的装置、方法及系统 | |
US20060200612A1 (en) | Method and protocol for transmitting extended commands to USB devices | |
US8078805B1 (en) | Method and system for communicating with a universal serial bus device | |
US6445718B1 (en) | Serial interface circuit | |
KR100459729B1 (ko) | 펌웨어 다운로드 방법 | |
US20070198753A1 (en) | Method and protocol for transmitting extended commands to USB devices | |
KR100604825B1 (ko) | 펌웨어 다운로드 방법 | |
EP1394682B1 (en) | Data transfer control device, program and method of fabricating an electronic instrument | |
CN101561760B (zh) | 接口卡固件升级方法 | |
CN109254936B (zh) | 插入数据传输队列结构体的方法和装置 | |
EP2307974A1 (en) | Method for transferring or erasing data in a master-slave environment | |
US7721007B2 (en) | Methods of transmitting non-SCSI commands involving loading opcode in command descriptor block (CDB) bytes and non-SCSI commands into remaining CDB bytes | |
KR100496506B1 (ko) | 표준 ums 통신을 이용한 usb 장치의 확장기능제공방법 | |
US11435934B2 (en) | Recording system | |
JP2002208912A (ja) | データ通信装置およびデータ受信側機器のファームウェア書き換え装置 | |
KR20070016932A (ko) | 네트워크 카드를 구비하는 주변기기의 펌웨어 업그레이드방법 |
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: 20091113 Year of fee payment: 6 |
|
LAPS | Lapse due to unpaid annual fee |