KR20040094334A - 유니버설 시리얼 버스 기억장치 및 그 제어장치 - Google Patents

유니버설 시리얼 버스 기억장치 및 그 제어장치 Download PDF

Info

Publication number
KR20040094334A
KR20040094334A KR1020040029482A KR20040029482A KR20040094334A KR 20040094334 A KR20040094334 A KR 20040094334A KR 1020040029482 A KR1020040029482 A KR 1020040029482A KR 20040029482 A KR20040029482 A KR 20040029482A KR 20040094334 A KR20040094334 A KR 20040094334A
Authority
KR
South Korea
Prior art keywords
information
usb
area
class driver
mass storage
Prior art date
Application number
KR1020040029482A
Other languages
English (en)
Other versions
KR100589521B1 (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
Priority claimed from JP2003125464A external-priority patent/JP3513147B2/ja
Application filed by 가부시끼가이샤 하기와라 시스콤 filed Critical 가부시끼가이샤 하기와라 시스콤
Publication of KR20040094334A publication Critical patent/KR20040094334A/ko
Application granted granted Critical
Publication of KR100589521B1 publication Critical patent/KR100589521B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0637Permissions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/725Cordless telephones
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0623Securing storage systems in relation to content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/253Telephone sets using digital voice transmission
    • H04M1/2535Telephone sets using digital voice transmission adapted for voice communication over an Internet Protocol [IP] network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Transfer Systems (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

본 발명은 기억을 마친 소프트웨어가 잘못하여 삭제되는 것을 방지하는 기능을 가능한 한 단순한 구성으로 실현한 USB 기억장치를 제공하는 것이다.
데이터의 판독, 기입 및 삭제가 가능한 영역과 판독만이 가능한 영역으로 기억영역을 구분하고, 이들 영역을, 호스트에 구비된 USB 대용량 기억 클래스 드라이버의 SCSI 명령 셋으로 정의된 논리유닛번호에 대응하는 영역으로서 USB 대용량 기억 클래스 드라이버에 인식시키기 위한 정보를 보유한다. 상기 정보는, 논리유닛번호(31)와 포맷(33)과 기입/삭제 가능여부 플래그(35)와 논리블록번호(37)와 물리블록번호(39)로 구성된다. 그 결과, USB 대용량 기억 클래스 드라이버는 2개의 논리유닛을 갖는 하나의 SCSI 디바이스로서 USB 기억장치를 인식한다.

Description

유니버설 시리얼 버스 기억장치 및 그 제어장치{USB STORAGE DEVICE AND CONTROL DEVICE}
본 발명은 반도체 메모리를 이용하여 정보를 기억하는 USB 기억장치에 관한 것이다.
최근, 플래시메모리 등을 내장하고 USB(Universal Serial Bus)규격에 기초한 인터페이스를 구비하며, USB 커넥터 부분을 본체에 일체화함으로써 컴팩트한 형상을 실현한 탈·부착식 USB 기억장치가 널리 알려져 있다(예컨대, 특허문헌 1). 이러한 USB 기억장치는 컴팩트한 형상때문에 염가에 제조할 수 있으며, 내부에 광고 등의 소프트웨어가 저장되어 기업의 판촉품으로서 이용되고 있다.
이러한 USB 기억장치의 대부분은, 소프트웨어가 잘못하여 삭제되지 않도록 하기 위해 기록방지 스위치(write protect switch)와 같은 물리적인 스위치를 설치하여, 상기 스위치를 전환함에 따라 판독, 기입 및 삭제가 가능한 상태와 판독만가능한 상태로 전환되도록 되어 있다. 또한, ROM과 같이 원래 재기입(변경)이 불가능한 메모리를 사용하여 기입 및 삭제가 전혀 불가능한 경우도 있다.
그러나, 이와 같이 ROM 등을 이용하여 사용자가 정보를 기입할 수 없도록 하면, 사용 목적이 제한되므로 쓰기가 불편하다. 또한, 소프트웨어를 실행할 때 임시 파일이나 데이터 등을 기입할 수 없어, 소프트웨어 자체의 기능이 제한되는 경우도 있었다. 한편, 상술한 기록방지 스위치를 이용할 경우에는, 사용자가 의식하지 못한 물리적 요인으로 인해 기록방지 스위치가 해제되어 버려, 의도하지 않게 기입 또는 삭제되는 경우도 있을 수 있었다.
따라서, 이러한 문제점을 해결하기 위해 특허문헌 2에 기재된 것과 같은 기술이 고려되고 있다. 이것은, 재기입이 가능한 휴대형 미디어에 대하여 가상적으로 재기입 금지영역이나 판독 금지영역을 만들어 혼성형으로 구성한 것이다.
[특허문헌 1]
일본 특허 공개 공보 2000-259275호
[특허문헌 2]
일본 특허 공개 공보 평10(1998)-289159호
그런데, 특허문헌 2에 기재된 기술을 USB 기억장치에 적용하는 경우를 고려할 때, 그 구체적인 실현방법으로는 다음과 같은 방법을 생각할 수가 있다.
그 중 하나는, USB 기억장치에 내부적으로 2개의 USB 기억장치(중 하나의 USB 기억장치는 삭제 및 기입을 제한함)와 이들을 접속한 허브를 구비함으로써 실현하는 방법이다. 그러나, 이러한 USB 기억장치는 내부에 실질적으로 2개의 USB기억장치를 구비하기 때문에 구성이 복잡해진다는 문제점이 있었다. 또한, 호스트에서는 USB 기억장치가 접속되었을 때, 우선 HUB 디바이스로서 인식하고, 그 후 내장된 USB 기억장치의 수만큼 대용량 기억 클래스 드라이버의 초기화가 필요하므로, 접속시의 처리에 시간이 소요된다는 문제점도 있었다.
또 하나는, USB 규격에서의 엔드포인트의 수를 늘림으로써 실현하는 방법도 생각할 수 있다. 그러나, 이 방법을 이용했을 경우에는, USB 기억장치에 구비되는 컨트롤러에 엔드포인트의 수만큼 FIFO 버퍼가 필요해진다. 또한, 최근에는 다수의 FIFO 버퍼를 장착하지 않는 가상의 엔드포인트 기법을 이용한 컨트롤러도 있지만, 어느 경우든 컨트롤러가 복잡해지고 비용 증가를 초래하는 요인이었다.
본 발명은 이러한 문제점을 감안하여 이루어진 것으로서, 기억을 마친 소프트웨어가 잘못하여 삭제되는 것을 방지하는 기능을 가능한 한 단순한 구성으로 실현한 USB 기억장치를 제공하는 것을 목적으로 한다.
도 1은 실시예의 USB 기억장치의 구성을 나타내는 블록도.
도 2는 메모리정보기억부에 기억되어 있는 데이터예.
도 3은 기동처리를 설명하기 위한 플로우차트.
도 4는 액세스처리를 설명하기 위한 플로우차트.
도 5는 초기화 소프트웨어의 조작화면을 설명하기 위한 화면예.
도 6은 초기화 처리를 설명하기 위한 플로우차트.
도 7은 실시예의 잉크젯 프린터의 구성을 나타내는 블록도.
도 8은 실시예의 스캐너의 구성을 나타내는 블록도.
* 도면의 주요 부분에 대한 부호의 설명 *
11 : 호스트 12 : 오퍼레이션 시스템
13 : 디스크 드라이브 드라이버 14 : USB 대용량 기억 클래스 드라이버
15 : USB 호스트 컨트롤러 16 : USB 버스
17 : USB 기억장치 19a : USB 인터페이스
19b : 직렬 병렬 변환부 19c : 패킷 생성분해부
19d : USB 버스파워 제어부 21 : 컨트롤러
21a : 메모리 제어부 21b : USB 인터페이스 제어부
21c : 메모리정보 기억부 21d : LED 제어부
23 : LED 25 : 플래시메모리
71 : 잉크젯 프린터 73 : MPU
75 : 인자(印字)헤드 77 : 액추에이터
81 : 스캐너 83 : MPU
85 : CCD 87 : 액추에이터
상기 과제를 해결하기 위해 이루어진 본 발명의 USB 기억장치는, 소정의 오퍼레이션 시스템에 의해 제어되는 동시에 적어도 디스크 드라이브 드라이버, USB 대용량 기억 클래스 드라이버 및 USB 호스트 컨트롤러를 구비하는 외부장치에 대해 탈·부착이 가능한 USB 기억장치로서, 플래시메모리로 이루어지며, 사용자가 사용할 수 있는 하나 이상의 영역을 갖는 기억수단과, 외부장치와 USB 프로토콜에 기초하여 통신하는 통신수단과, 통신수단을 통해 기억수단에 대하여 정보를 판독, 기입및 삭제하는 제어수단을 구비한다.
제어수단은, 외부장치에 구비되는 USB 대용량 기억 클래스 드라이버의 SCSI 명령 셋으로 정의된 논리 유닛 번호에 대응하는, 사용자가 사용할 수 있는 하나 이상의 영역을, 정보의 판독만이 가능한 논리유닛으로서 USB 대용량 기억 클래스 드라이버에 인식시키기 위한 당해 영역의 포맷정보를 기억하고, 디스크 드라이브 드라이버로부터의 지령에 따라 포맷 정보를 USB 대용량 기억 클래스 드라이버에 공급하여, 본 USB 기억장치를 정보의 판독만이 가능한 논리유닛을 갖는 하나의 SCSI 디바이스로서 상기 USB 대용량 기억 클래스 드라이버에 인식시키는 동시에, 외부장치로부터 받은 지령과 포맷정보에 기초하여 논리 유닛에 대해 정보의 판독만을 실행한다.
따라서, 본 발명의 USB 기억장치를 가령 판촉품으로서 이용할 경우, 잘못하여 삭제되면 문제가 있는 소프트웨어를 플래시메모리로 이루어지는 기억수단에 기억시켜 두면, 외부장치(예컨대, 개인용 컴퓨터)로부터 삭제 지령을 받았을 경우에도 제어수단은 그 지령을 실행하지 않기 때문에, 소프트웨어가 삭제되거나 변경되는 것을 방지할 수 있다.
상기 기억수단은 플래시메모리의 기억영역을 제 1 영역과 제 2 영역으로 나누어 정의한 것일 수도 있다. 이러한 경우, 제어수단은, 외부장치에 구비되는 USB 대용량 기억 클래스 드라이버의 SCSI 명령 셋으로 정의된 논리유닛번호에 대응하는 제 1 영역과 제 2 영역을, 제 1 영역에 대해서는 정보를 판독, 기입 및 삭제할 수 있는 디스크 유닛으로서, 제 2 영역에 대해서는 정보의 판독만이 가능한 유닛으로서 USB 대용량 기억 클래스 드라이버에 인식시키기 위한 당해 영역의 포맷정보를 기억하고, 디스크 드라이브 드라이버로부터의 지령에 따라 포맷정보를 USB 대용량 기억 클래스 드라이버에 공급하여, 본 USB 기억장치를 상기 정보를 판독, 기입 및 삭제할 수 있는 디스크 유닛과, 정보의 판독만이 가능한 유닛이라는 2가지 논리유닛을 갖는 하나의 SCSI 디바이스로서 상기 USB 대용량 기억 클래스 드라이버에 인식시키는 동시에, 외부장치로부터 받은 지령과 포맷정보에 기초하여, 제 1 영역에 대해서는 정보를 판독, 기입 또는 삭제하고, 제 2 영역에 대해서는 정보의 판독만 실행한다.
이에 따라, 본 발명의 USB 기억장치를 가령 판촉품으로서 이용할 경우, 잘못하여 삭제되면 문제가 있는 소프트웨어를 제 2 영역에 기억시켜 두면, 외부장치(예컨대, 개인용 컴퓨터)로부터 삭제 지령을 받았을 경우에도 제어수단은 그 지령을 실행하지 않기 때문에, 소프트웨어가 삭제되거나 변경되는 것을 방지할 수 있다.
한편, 제 1 영역에 대해서는 방지 스위치 등을 전환하지 않고 이용자 등이 임의로 정보를 기입할 수 있기 때문에 사용이 편리하다.
또, 제 1 영역을 가령 FAT(File Allocation Table)포맷으로, 제 2 영역을 가령 ISO9660 포맷으로 구성해 두면 된다. 이와 같이 구성해 두면, 외부장치의 오퍼레이션 시스템이 그 포맷을 인식하여 제 1 영역에 대한 판독, 기입 및 삭제 지령을 발행하지만, 제 2 영역에 대한 기입지령이나 삭제지령의 발행은 제한한다. 게다가, 어떠한 이유로 인해 외부장치가 제 2 영역에 대한 기입지령이나 삭제지령을 발행했다 하더라도, 본 발명의 USB 기억장치에 따르면 제어수단은 그 지령을 실행하지 않기 때문에, 제 2 영역에 기억된 소프트웨어를 확실히 보호할 수가 있다.
또한, 본 발명의 USB 기억장치는, USB 대용량 기억 클래스 드라이버의 SCSI 명령 셋으로 정의된 논리 유닛 번호에 대응하는 영역으로서 제 1 및 제 2 영역을 USB 대용량 기억 클래스 드라이버에 기억시키기 위한 포맷정보를 보유한다. 이 때문에, USB 대용량 기억 클래스 드라이버는 본 USB 기억장치를, 정보를 판독, 기입 및 삭제할 수 있는 디스크 유닛과, 정보의 판독만이 가능한 유닛이라는 2가지 논리유닛을 갖는 하나의 SCSI 디바이스로서 인식한다.
따라서, 이러한 영역의 관리를 USB 규격의 엔드포인트의 수를 늘림으로써 실현하는 경우에 비해, USB 기억장치의 컨트롤러를 단순화할 수 있다. 왜냐하면, 엔드포인트 수만큼 컨트롤러는 FIFO 버퍼를 구비할 필요가 있기 때문이다.
또한, USB 기억장치에 내부적으로 2종류의 USB 기억장치와 이들을 접속한 허브를 구비함으로써 실현하는 방법과 비교해도 본 발명의 USB 기억장치는 구성이 단순하다. 또한, 본 발명의 USB 기억장치에 따르면, 외부장치의 오퍼레이션 시스템이 실행하는 USB 대용량 기억 클래스 드라이버의 초기화 처리도 한번에 끝나기 때문에, 외부장치의 오퍼레이션 시스템이 USB 기억장치를 인식하기까지의 시간도 짧다.
또한, 호스트의 오퍼레이션 시스템은 정보를 판독, 기입 및 삭제할 수 있는 디스크 유닛과, 정보의 판독만이 가능한 유닛이라는 2가지 논리유닛을 갖는 하나의 SCSI 디바이스로서 USB 기억장치를 관리할 수 있기 때문에, 복수의 디바이스를 관리하는 경우에 비해 다양한 처리를 단순화하여 실행할 수 있으며 동작도 안정된다.
본 발명의 제어장치는 USB 기억장치에 탑재되는 제어장치로서, USB 기억장치가 장착될 외부장치에 구비되는 USB 대용량 기억 클래스 드라이버의 SCSI 명령 셋으로 정의된 논리유닛번호에 대응하는, USB 기억장치에 설치된 플래시메모리로 이루어지는 기억장치의 하나 이상의 영역을 정보의 판독만이 가능한 유닛으로서 상기 USB 대용량 기억 클래스 드라이버에 인식시키기 위한 당해 영역을 관리하는 포맷정보를 기억하는 메모리 정보 기억부를 구비한다.
상기 제어장치는, 외부장치의 디스크 드라이브 드라이버에 의한 명령의 발행에 응답해 외부장치의 USB 대용량 기억 클래스 드라이버로 포맷정보를 공급하여, 상기 제어장치가 탑재된 USB 기억장치를 정보의 판독만이 가능한 논리유닛을 갖는 하나의 SCSI 디바이스로서 USB 대용량 기억 클래스 드라이버에 인식시키는 동시에, 외부장치로부터 받은 지령과 포맷정보에 기초하여 논리유닛에 대해 정보의 판독만을 실행한다.
상기 메모리 정보 기억부는, USB 기억장치가 장착될 외부장치에 구비되는 USB 대용량 기억 클래스 드라이버의 SCSI 명령 셋으로 정의된 논리 유닛 번호에 대응하는, USB 기억장치에 설치된 플래시메모리로 이루어지는 기억장치의 제 1 영역 및 제 2 영역을, 제 1 영역에 대해서는 정보를 판독, 기입 및 삭제할 수 있는 디스크 유닛으로서, 제 2 영역에 대해서는 정보의 판독만이 가능한 유닛으로서 USB 대용량 기억 클래스 드라이버에 인식시키기 위한 당해 영역을 관리하는 포맷정보를 기억하도록 할 수도 있다.
이하, 본 발명이 적용된 실시예에 대해 도면을 이용하여 설명한다. 또한,본 발명의 실시형태는 하기의 실시예로 한정되는 것은 결코 아니며, 본 발명의 기술적 범위에 속하는 한 다양한 형태를 취할 수 있다.
[실시예 1]
도 1은 실시예 1의 USB 기억장치(17;특허청구의 범위에 기재된 USB 기억장치에 상당함)와 호스트(11;특허청구의 범위에 기재된 외부장치에 상당함)의 개략구성을 나타내는 블록도이다.
(1) 호스트(11)
호스트(11)는 일반적으로 널리 알려진 개인용 컴퓨터이며, 소프트웨어로서 오퍼레이션 시스템(12), 디스크 드라이브 드라이버(13) 및 USB 대용량 기억 클래스 드라이버(14)를 구비하고, 하드웨어로서 적어도 USB 호스트 컨터롤러(15)를 구비한다.
오퍼레이션 시스템(12)은, 호스트(11)를 통괄적으로 제어하는 소프트웨어이며, 가령 Windows(등록상표)나 Mac OS X(등록상표) 등이다. 디스크 드라이브 드라이버(13)는, 오퍼레이션 시스템(12)으로부터 받은 기억장치에 대한 액세스 지령 등을 SCSI 명령 변환하여 USB 대용량 기억 클래스 드라이버(14)로 넘기는 동시에, USB 대용량 기억 클래스 드라이버(14)로부터 지령 등을 받아 오퍼레이션 시스템(12)으로 보낸다. USB 대용량 기억 클래스 드라이버(14)는 USB 호스트 컨트롤러(15)를 제어한다. USB 호스트 컨트롤러(15)는, 도시하지 않은 USB 커넥터를 구비하며, 다른 장치의 USB 커넥터와 케이블에 의해 접속됨으로써, USB 규격에 기초하여 통신할 수 있도록 되어 있다. 한편, 호스트(11)는, USB 규격에 기초하여통신할 수 있는 기기라면 개인용 컴퓨터에 한하지 않고 PDA나 휴대전화 등이어도 된다.
(2) USB 기억장치(17)
USB 기억장치(17)는, USB 인터페이스(19)와 컨트롤러(21)와 LED(23)와 플래시메모리(25)를 구비한다.
(2-1) USB 인터페이스(19)
USB 인터페이스(19)는 특허청구의 범위에 기재된 통신수단에 상당하며, USB 버스(16)를 통해 호스트(11)와 통신하는 기능을 담당한다. USB 인터페이스(19)는, 패킷 송/수신부(19a)와 직렬 병렬 변환부(19b)와 패킷 생성분해부(19c)와 USB 버스파워 제어부(19d)를 구비한다. 패킷 송/수신부(19a)는, 도시하지 않은 USB 커넥터와 접속되어 USB 규격에 기초한 패킷을 송/수신한다. 직렬 병렬 변환부(19b)는, 직렬 데이터와 병렬 데이터를 상호 변환한다. 패킷 생성분해부(19c)는, 호스트(11)와 통신하기 위한 패킷을 생성 및 분해하여 데이터를 추출한다. USB 버스파워 제어부(19d)는, 호스트(11)로부터 공급되는 전력을 관리하며 USB 기억장치(17)의 각 부위로 전력을 배분한다.
(2-2) 컨트롤러(21)
컨트롤러(21)는, 특허청구의 범위에 기재된 제어수단에 상당하며, 메모리 제어부(21a)와 USB 인터페이스 제어부(21b)와 메모리 정보 기억부(21c)와 LED 제어부(21d)를 구비한다. 메모리 제어부(21a)는, 플래시메모리(25)에 대하여 데이터를 판독, 기입 및 삭제한다. USB 인터페이스 제어부(21b)는, 상술한 USB 인터페이스(19)의 각 부를 제어한다. 메모리 정보 기억부(21c)는, 플래시메모리(25)의 영역에 관한 정보를 기억한다. 상기 정보는, 특허청구의 범위에 기재된 「USB 대용량 기억 클래스 드라이버의 SCSI 명령 셋으로 정의된 논리유닛번호에 대응하는 영역으로서 상기 제 1 및 제 2 영역을 상기 USB 대용량 기억 클래스 드라이버에 인식시키기 위한 정보」에 상당한다. 도 2의 데이터예를 이용하여 상기 정보에 대해 설명한다.
도 2에 나타내는 바와 같이 메모리 정보 기억부(21c)는, 논리유닛번호(31)와 포맷(33)과 기입/삭제 가능여부 플래그(35)와 논리블록번호(37)와 물리블록번호(39)를 구비한다. 논리유닛번호(31)는 논리유닛을 식별하기 위한 번호이며 「0」과 「1」이 존재한다. 포맷(33)은 논리유닛번호(31)에 대응하며, 그 논리유닛의 포맷을 나타낸다. 데이터예에서는 논리유닛번호 「0」은 「FAT」포맷이고 논리유닛번호「1」은 「ISO9660」포맷이다. 기입/삭제 가능여부 플래그(35)는 논리유닛번호(31)에 대응하며, 그 논리유닛에 대해 정보의 기입 및 삭제의 실행가능 여부를 나타내는 플래그이다. 데이터예에서는 논리유닛번호 「0」은 「가능」이고, 논리유닛번호 「1」은 「불가능」이다. 논리블록번호(37)는 호스트(11)에 의해 지정되는 블록번호이며 논리유닛마다 정의되어 있다.
이와 같이, 플래시메모리(25)의 실제 블록번호인 물리블록번호(39)와 논리블록번호(37)의 대응은 메모리 제어부(21a)에 의해 관리된다. 이에 따라, 물리블록번호(39)와 논리블록번호(37)는 자유롭게 대응시킬 수 있다. 또한, 논리유닛번호 「0」의 포맷을 ISO9660으로 하고, 논리유닛번호 「1」의 포맷을 FAT로 해도 무방하다. 또, 논리유닛을 더욱 늘려 사용자나 애플리케이션에 따라 선택 사용하도록 할 수도 있다.
(2-3) LED(23)
도 1로 되돌아가서, LED(23)는 플래시메모리(25)에 대하여 정보가 판독, 기입 및 삭제될 때 점등하는 발광체이다. 플래시메모리(25)에 대해 정보가 판독, 기입 및 삭제되는 중임을 사용자에게 나타내고, 이러한 실행중에 호스트(11)로부터 USB 기억장치(17)가 빠지지 않도록 하기 위한 것이다.
(2-4) 플래시메모리(25)
플래시메모리(25)는 기억유지동작이 불필요한 반도체 메모리이며 데이터를 기억할 수 있다. 기억된 데이터는 메모리 제어부(21a)에 의해 판독할 수 있다. 또한, 메모리 제어부(21a)에 의해 기입 및 삭제할 수도 있다. 플래시메모리(25)는 특허청구의 범위에 기재된 기억수단에 상당한다.
(a) 기동처리
USB 기억장치(17)가 호스트(11)에 접속되었을 때, USB 기억장치(17)의 컨트롤러(21)에 의해 프로그램에 기초하여 실행되는 기동처리에 관해 도 3의 플로우차트를 이용하여 설명한다. 상기 기동처리는, USB 기억장치(17)가 호스트(11)에 접속됨으로써, USB 버스파워 제어부(19d)에 전력이 공급되고, 또한 호스트(11)측에서 열거(enumeration) 처리가 실행되면 개시된다.
기동처리를 개시하면, 호스트(11)로부터의 지령에 따라 디스크립터(descri ptor)라 불리는 디바이스 정보(디폴트 파이프의 최대 패킷 사이즈 등)를호스트(11)에 송신한다(S110).
다음으로, 호스트(11)로부터 지령에 따라 USB 기억장치(17)의 어드레스를 설정한다(S115). 이후, 상기 USB 기억장치(17)는 그 어드레스 수신처의 프레임만을 취득한다.
다음으로, 보다 상세한 디바이스 정보를 호스트(11)에 송신한다(S120). 이러한 디바이스 정보는 엔드포인트에 관한 정보, 클래스, 하위 클래스, 프로토콜 등이다.
그 결과, 호스트(11)에서는 USB 대용량 기억 클래스 드라이버(14)가 기동되어, 도시하지 않은 애플리케이션 소프트웨어로부터 디스크 드라이브 드라이버(13)와 USB 대용량 기억 클래스 드라이버(14)를 통해 USB 호스트 컨트롤러(15)를 제어하는 접근 경로(access path)가 생긴다. 또, 상기 디스크 드라이브 드라이버(13)는 MS-DOS(등록상표) 시대부터 계승되고 있는 드라이버이기 때문에, 오랫동안 기술이 축적되어 안정적인 동작을 얻을 수 있는 드라이버이다.
이어서, USB 대용량 기억 클래스 드라이버(14)는 Get Max Logical Unit Number 명령에 따라 논리유닛번호 수를 요구하기 때문에, USB 기억장치(17)는 메모리 정보 기억부(21c)로부터 논리유닛번호 수가 2라는 정보를 판독하여 호스트(11)에 송신한다. 또한 디스크 드라이브 드라이버(13)가 INQUIRY 명령을 발행하기 때문에, USB 기억장치(17)는 메모리 정보 기억부(21c)로부터 논리유닛의 포맷에 관한 정보를 판독하여 호스트(11)에 송신한다. 그 결과, 호스트(11)는 USB 기억장치(17)를, FAT 포맷으로 구성되는 논리유닛번호 「0」의 영역과 ISO9660 포맷으로 구성되는 논리유닛번호 「1」의 영역을 갖는 디바이스로서 인식한다.
호스트(11)와의 통신이 확립되면, 플래시메모리(25)를 동작할 수 있도록 하고(S125) 기동처리를 종료한다.
한편, Windows(등록상표)에는, 기억매체의 삽입 또는 접속시에 그 기억매체의 루트 디렉토리에 기억된 autorun.inf 라는 이름의 파일 내에서 지정된 애플리케이션 소프트웨어를 실행하는 기능이 구비되어 있기 때문에, 플래시메모리(25)의 논리유닛번호 「1」의 영역에 그 파일을 기억시켜 두면, 본 USB 기억장치(17)가 호스트(11)에 장착되었을 때 특정 소프트웨어를 자동적으로 실행시킬 수 있다.
이와 같이 구성하면, 이용자가 호스트(11)의 조작이 익숙하지 않아도 본 USB 기억장치(17)를 장착하기만 하면 특정한 애플리케이션 소프트웨어가 자동으로 실행되기 때문에, 가령, 판촉품으로서 일반에게 널리 배포했을 경우에 판촉을 담당하는 애플리케이션 소프트웨어를 확실히 실행시킬 수 있어 판촉효과가 높아진다.
(b) 액세스처리
호스트(11)에서 동작하는 각종 소프트웨어가 USB 기억장치(17)에 대하여 데이터의 기입, 판독, 삭제의 실행 지령을 보냈을 때, USB 기억장치의 컨트롤러(21)에 의해 프로그램에 기초하여 실행되는 액세스처리에 관해 도 4의 플로우차트를 이용하여 설명한다.
먼저, S210에서는 호스트(11)로부터 수신한 지령의 종류에 따라 분기된다. 기입 또는 삭제 지령이었을 경우에는 S215로 진행하고, 그렇지 않을 경우, 즉 판독의 지령이었을 경우에는 S250으로 진행한다.
S215에서는, 기입 또는 삭제의 지령이 논리유닛번호「1」에 대한 지령인지의 여부에 따라 분기된다. 즉, 기입 및 삭제가 가능한 논리유닛에 대한 것인지의 여부에 따라 분기된다. 논리유닛번호 「1」에 대한 것이면 S245로 진행하고, 그렇지 않을 경우, 즉 논리유닛번호 「0」에 대한 지령이면 S220으로 진행한다.
S220에서는 LED(23)를 점등시킨다. 이어지는 S225에서는, 호스트(11)로부터 지정된 플래시메모리(25)의 블록에 데이터를 기입한다. 또는 호스트(11)로부터 지정된 플래시메모리(25)의 블록의 데이터를 삭제한다. 또한, 기입 또는 삭제를 실행할 때에는, 메모리 정보 기억부(21c)에 기억되어 있는 플래시메모리(25)의 영역에 관한 정보(도 2 참조)를 이용하여, 호스트(11)로부터 지정된 블록번호를 논리블록번호(37)로 하고 그 논리블록번호(37)에 해당하는 물리블록번호(39)에 의해 특정된 플래시메모리(25)의 블록에 대하여 데이터를 기입 및 삭제한다.
이어서 S230에서는 LED(23)를 소등한다. 그리고, S235에서는 S225의 처리가 정상적으로 완료되었는지 여부에 따라 분기된다. 정상적으로 완료되었으면 액세스처리를 종료하고, 정상적으로 완료되지 않았으면 S240으로 진행한다.
S240에서는, S225의 처리가 정상적으로 완료되지 않았음을 호스트(11)에 통지하고 액세스처리를 종료한다.
한편, S215에서 기입 또는 삭제의 지령이 논리유닛번호 「1」에 대한 지령이라고 판정되었을 때 진행하는 S245에서는, 허가되지 않은 지령으로 하고 에러가 발생했음을 호스트(11)에 통지한다.
또한, S210에서 판독지령이었다고 판정되어 진행하는 S250에서는 LED(23)를점등시키고, 이어지는 S255에서는 호스트(11)로부터 지정된 플래시메모리(25)의 블록의 데이터를 판독하여 판독한 데이터를 호스트(11)에 보낸다. 또, 데이터를 판독할 때에는, 메모리 정보 기억부(21c)에 기억되어 있는 플래시메모리(25)의 영역에 관한 정보(도 2 참조)를 이용하여, 호스트(11)로부터 지정된 블록번호를 논리블록번호(37)로 하고 그 논리블록번호(37)에 해당하는 물리블록번호(39)에 의해 특정된 플래시메모리(25)의 블록으로부터 데이터를 판독한다.
이어서 S260에서는 LED(23)를 소등한다. 그리고, S265에서는 S255의 처리가 정상적으로 완료되었는지의 여부에 따라 분기된다. 정상적으로 완료되었으면 액세스처리를 종료하고, 정상적으로 완료되지 않았으면 S270으로 진행한다.
S270에서는, S255의 처리가 정상적으로 완료되지 않았음을 호스트(11)에 통지하고 액세스처리를 종료한다.
이와 같이 액세스처리가 실행되기 때문에, 가령 판촉품으로서 USB 기억장치(17)를 이용했을 경우, 잘못하여 삭제되면 문제가 있는 소프트웨어를 논리유닛번호 「1」의 영역에 기억시켜 두면, 그 소프트웨어가 삭제되는 것을 방지할 수 있다.
또한, USB 기억장치(17)는, USB 대용량 기억 클래스 드라이버(14)의 SCSI 명령 셋으로 정의된 논리유닛번호에 대응하는 영역으로서, 논리유닛번호 「0」의 영역과 논리유닛번호 「1」의 영역을 USB 대용량 기억 클래스 드라이버에 인식시키기 위한 정보를 메모리 정보 기억부(21c)에 보유한다. 이에 따라, USB 대용량 기억 클래스 드라이버(14)는 USB 기억장치(17)를 2개의 논리유닛을 갖는 하나의 SCSI 디바이스로서 인식한다.
따라서, 이러한 영역의 관리를 USB 규격에서의 엔드포인트의 수를 늘림으로써 실현하는 경우에 비해 컨트롤러(21)를 단순화할 수가 있다. 왜냐하면, 엔드포인트의 수만큼 컨트롤러(21)는 FIFO 버퍼를 구비할 필요가 있기 때문이다. 또한, USB 기억장치(17)에, 2종류의 USB 기억장치와 이들을 접속한 허브를 내장하여 실현하는 방법과 비교해도, USB 기억장치(17)는 구성이 단순하다. 또한, USB 기억장치(17)에 따르면, 호스트(11)가 실행하는 USB 대용량 기억 클래스 드라이버(14)의 초기화 처리도 한 번에 끝나기 때문에, 호스트(11)가 USB 기억장치(17)를 인식할 때까지의 시간도 짧다. 또한, 호스트(11)의 오퍼레이션 시스템은, 2영역을 갖는 하나의 SCSI 디바이스로서 USB 기억장치(17)를 관리할 수 있기 때문에, 복수의 디바이스를 관리하는 경우에 비해 다양한 처리를 단순화하여 실행할 수 있으며 동작도 안정된다.
(c) 초기화 처리
초기화 처리는, USB 기억장치(17)의 제조자나 판매자 등(이하, 「특정 사용자」라고 함)이 초기화하기 위하여 호스트(11) 상에서 초기화 소프트웨어를 실행하여 후술하는 기입 버튼(66)을 눌렀을 때, USB 기억장치(17)의 컨트롤러(21)에 의해 프로그램에 기초하여 실행된다.
초기화 처리를 설명하기에 앞서, 호스트(11)에서 실행되는 초기화 소프트웨어에 대해 도 5의 조작화면(51)을 이용하여 설명한다. 조작화면(51)에서는, 특정 사용자가 USB 기억장치(17)에 관한 다양한 파라미터를 설정할 수 있다.
텍스트상자(53)는 논리유닛번호 「0」에 대응하는 것으로서, 정보를 판독, 기입 및 삭제할 수 있는 영역(디스크 영역)의 용량을 입력하기 위한 텍스트상자이다. 텍스트상자(55)는 논리유닛번호 「1」에 대응하는 것으로서, 정보의 판독만이 가능한 영역(CD-ROM 영역)의 용량을 입력하기 위한 텍스트상자이다. 상기 텍스트상자(53) 및 텍스트상자(55)에 입력된 값의 합계가 전체 용량인 16이하가 되도록 특정 사용자가 입력해야만 한다.
텍스트상자(57)는 USB 규격으로 정의된 시리얼번호를 입력하기 위한 텍스트상자이다. 호스트(11)는 상기 시리얼번호에 따라 디바이스를 구별할 수 있다.
텍스트상자(59)는 고유 ID를 입력하기 위한 텍스트상자이다. 고유 ID는, USB 규격으로 정의된 것이 아니라 본 실시예의 USB 기억장치(17)에 독자적인 것으로서, 상기 고유 ID를 라이센스 키로 함으로써 부정 복제 등으로 인해 컨텐츠가 부정하게 기동되는 것을 방지하는 데 이용할 수도 있고, 고유 ID를 인증 키나 회원용 서비스에 이용할 수도 있다. 고유 ID는 16바이트 이상 612 바이트 이하의 16진 데이터이다. 또, 텍스트상자(59) 우측단의 상하 버튼을 누르면, 전체 표시가 불가능한 데이터를 차례로 표시하도록 조작화면(51)이 구성되어 있다.
텍스트상자(61)는 CD-ROM 영역에 기입할 파일명을 입력하기 위한 텍스트상자이다. 복수 파일의 파일명을 입력할 수 있도록 되어 있어도 무방하다.
참조버튼(63)은 텍스트상자(61)에 대한 파일명의 입력을 지원하는 대화상자를 표시하기 위한 버튼이다. 표시된 대화상자 중에서 특정 사용자가 파일명을 선택하면, 그 선택된 파일이 텍스트상자(61)에 표시되도록 되어 있다.
포맷 선택 버튼(64)은 CD 이미지 데이터의 포맷을 선택하기 위한 대화상자를 표시하기 위한 버튼이다. 표시된 대화상자 중에서 ISO9660 또는 HFS 중 어느 형식을 선택할 수 있도록 되어 있다.
기입버튼(66)은 특정 사용자가 조작화면(51)에서 설정한 설정정보를 USB 기억장치(17)에 기입하는 처리를 개시하기 위한 버튼이다. 취소버튼(67)은 특정 사용자가 조작화면(51)에서 설정한 설정정보를 USB 기억장치(17)에 기입하지 않고 조작화면(51)을 닫기 위한 버튼이다.
다음으로, USB 기억장치(17)의 컨트롤러(21)에 의해 실행되는 초기화처리에 대해 도 6의 플로우차트를 이용하여 설명한다. 실행이 개시되면 먼저 호스트(11)로부터 보내진 설정정보를 수신한다(S310). 상기 설정정보는 상술한 조작화면(51)에서 설정된 설정정보이다. 그리고, 수신된 설정정보에 기초하여 메모리 정보 기억부(21c)의 데이터를 갱신한다(S315).
이어서, 수신된 설정정보에 기초하여 플래시메모리(25)의 논리유닛번호 「1」의 영역에 데이터를 기입하고(S320) 초기화 처리를 종료한다. 본래, 논리유닛번호 「1」의 영역에는 데이터를 기입할 수 없지만, 초기화 처리시에만 기입할 수 있도록 구성되어 있다. 또, 기입되는 데이터는 상술한 텍스트상자(61)에서 설정한 파일이다(도 5 참조).
이러한 초기화 처리에 의해 특정 사용자의 사정에 맞추어 영역의 용량을 변경하거나 시리얼 번호를 설정하거나 고유 ID를 설정하거나 CD-ROM 영역에 미리 파일을 기억시켜 둘 수 있다.
[실시예 2]
도 7은 실시예 2의 잉크젯 프린터(71;특허청구의 범위에 기재된 USB 기억장치에 상당함)와 호스트(11;특허청구의 범위에 기재된 외부장치에 상당함)의 개략 구성을 나타내는 블록도이다. 또, 실시예 1와 동일한 부분에 대해서는 실시예 1을 설명할 때 사용한 부호와 동일한 부호를 부여하고 설명을 생략한다.
잉크젯 프린터(71)는, USB 인터페이스(19)와 컨트롤러(21)와 플래시메모리 (25)와 MPU(73)와 인자헤드(75)와 액추에이터(77)를 구비한다. 이 중 USB 인터페이스(19)는 특허청구의 범위에 기재된 통신수단에 상당하고, 컨트롤러(21)는 제어수단에 상당하며, 플래시메모리(25)는 기억수단에 상당한다.
MPU(73)는 USB 인터페이스(19) 및 컨트롤러(21)를 통해 호스트(11)와 통신하는 동시에, 도시하지 않은 각종 센서로부터의 정보에 기초하여 인자헤드(75) 및 액추에이터(77)의 동작을 제어한다. 또, 실시예 2에서는 컨트롤러(21)와 MPU(73)가 별도로 구성되어 있지만, 이들의 기능 중 일부 및 전부를 MPU(73)에 이행시킬 수도 있다.
인자헤드(75)는 잉크노즐을 가지며, 잉크노즐로부터 소정 색상의 잉크를 토출시켜 인쇄용지에 잉크를 정착시킬 수 있다.
액추에이터(77)는 도시하지 않은 피드롤러모터, 종이 공급 롤러모터, 인자헤드 구동모터 등으로 구성되며, 이들을 적절히 동작시킴으로써 인쇄용지의 위치 및 인자헤드(75)의 위치 관계를 조정하여 원하는 인쇄결과를 얻을 수 있도록 되어 있다.
플래시메모리(25)의 논리유닛번호 「1」의 영역(CD-ROM 영역)에는, 인쇄할 데이터를 호스트(11)에서 취급하기 위한 애플리케이션 소프트웨어가 미리 저장되어 있고, 호스트(11)는 그러한 애플리케이션 소프트웨어를 가지고 있지 않아도 플래시메모리(25)의 CD-ROM 영역으로부터 판독하여 사용할 수가 있다.
이에 대하여, 종래에는 인쇄기능을 제공하는 드라이버 프로그램, 인쇄관리 소프트웨어 등이 호스트(11)에 구비되어 있지 않을 경우에는, CD-ROM이나 플랙시블 디스크 등의 매체로부터 별도로 취득하거나, 인터넷 등에서 다운로드하여 인스톨해야 했다. 이로 인해, 통상적으로 CD-ROM이나 플랙시블 디스크의 드라이브를 가지지 않는 PDA 등은 상기와 같은 매체로부터 취득하기가 어려웠다. 이러한 점에서, 실시예 2의 잉크젯 프린터(71)는 종래에 비해 우수한 효과를 갖는다.
또한, 애플리케이션 소프트웨어는 플래시메모리(25)의 CD-ROM 영역에 저장되기 때문에, 최종 사용자에 의해 잘못하여 삭제되어 버릴 염려가 없다. 또한, 디스크영역(논리유닛번호 「0」의 영역)에는, 인쇄하기 위한 인쇄데이터를 저장함으로써 디스크영역을 통해 복수의 호스트(11)가 인쇄데이터를 공유할 수도 있게 된다. 이러한 점에서도 실시예 2의 잉크젯 프린터(71)는 종래에 비해 우수한 효과를 갖는다.
또한, 실시예 1에서 설명한 것과 같은 고유 ID를 저장하여 그 고유 ID를 인증 키로서 이용하도록 하면, 특정 사용자만 잉크젯 프린터(71)를 이용하거나, CD-ROM 영역에 저장된 애플리케이션 소프트웨어를 이용하도록 할 수가 있다.
[실시예 3]
도 8은 실시예 3의 스캐너(81;특허청구의 범위에 기재된 USB 기억장치에 상당함)와 호스트(11;특허청구의 범위에 기재된 외부장치에 상당함)의 개략 구성을 나타내는 블록도이다. 또, 실시예 1와 동일한 부분에 대해서는 실시예 1을 설명할 때 사용한 부호와 동일한 부호를 부여하고 설명을 생략한다.
스캐너(81)는, USB 인터페이스(19)와 컨트롤러(21)와 플래시메모리(25)와 MPU(83)와 CCD(85)와 액추에이터(97)를 구비한다. 이 중 USB 인터페이스(19)는 특허청구의 범위에 기재된 통신수단에 상당하고, 컨트롤러(21)는 제어수단에 상당하며, 플래시메모리(25)는 기억수단에 상당한다.
MPU(83)는 USB 인터페이스(19) 및 컨트롤러(21)를 통해 호스트(11)와 통신하는 동시에, CCD(85) 및 액추에이터(87)의 동작을 제어한다. 또, 실시예 3에서는 컨트롤러(21)와 MPU(83)가 별도로 구성되어 있지만, 이들의 기능 중 일부 및 전부를 MPU(83)가 분담할 수도 있다.
CCD(85)는 광 정보를 전기신호로 변환하는 반도체 소자이며, 임의의 대상물을 화상데이터로서 판독하여 출력할 수 있다.
액추에이터(87)는 도시하지 않는 광원 구동모터나 CCD 구동모터 등으로 구성되며, 이들이 적절히 동작함으로써 임의의 대상물의 원하는 범위의 화상데이터를 얻을 수 있다.
플래시메모리(25)의 논리유닛번호 「1」의 영역(CD-ROM 영역)에는, 스캔할 데이터를 호스트(11)에서 취급하기 위한 애플리케이션 소프트웨어가 미리 저장되어 있고, 호스트(11)는 그러한 애플리케이션 소프트웨어를 가지고 있지 않아도 플래시메모리(25)의 CD-ROM 영역으로부터 판독하여 사용할 수가 있다.
이에 대하여, 종래에는 스캐너(81)의 제어기능을 제공하는 드라이브 프로그램, 화상데이터의 가공 소프트웨어 등이 호스트(11)에 구비되어 있지 않을 경우에는, CD-ROM이나 플랙시블 디스크 등의 매체로부터 별도로 취득하거나, 인터넷 등에서 다운로드하여 인스톨해야 했다. 이로 인해, 통상적으로 CD-ROM이나 플렉시블 디스크의 드라이브를 가지지 않는 PDA 등은 상기와 같은 매체로부터 취득하기가 어려웠다. 이러한 점에서, 실시예 3의 스캐너(81)는 종래에 비해 우수한 효과를 갖는다.
또한, 애플리케이션 소프트웨어는 플래시메모리(25)의 CD-ROM 영역에 저장되기 때문에, 최종 사용자에 의해 잘못하여 삭제되어 버릴 염려가 없으며, 아울러 디스크영역(논리유닛번호 「0」의 영역)에는 화상데이터를 저장함으로써, 디스크영역을 통해 복수의 호스트(11)가 화상데이터를 공유할 수도 있게 된다. 이러한 점에서도 실시예 3의 스캐너(81)는 종래에 비해 우수한 효과를 갖는다.
이상에서는 세 가지 실시예에 대해 설명하였는데 또다른 실시예에 관해 설명하도록 한다.
실시예 2의 잉크젯 프린터(71)나 실시예 3의 스캐너(81)의 기술 사상을 USB 인터페이스를 갖는 다른 장치에 적용할 수도 있다. 구체적으로는 디지털 카메라, 휴대단말, 스피커, 키보드, 마우스, 모뎀장치, 핸드셋, 카드 어댑터 등에 적용할 수도 있다. 이들에 적용하여도 상기 실시예와 동일한 효과를 얻을 수 있다.
또한, 실시예 1의 조작화면(51, 도 5 참조)은 CD 이미지 데이터의 포맷으로서 ISO9660 또는 HFS 중 어느 형식을 선택할 수 있도록 되어 있지만, 나아가 Audio CD, CD TEXT, Mixed CD, Enhanced CD, 비디오 CD, 부팅 CD(bootable CD) 등 포맷을 선택할 수 있도록 되어 있어도 무방하다. 또한, 기록 방식도 디스크앳원스, 트랙앳원스, 세션앳원스, 패킷 기록(packet write)과 같은 방식을 지정할 수 있도록 되어 있어도 무방하다.
본 발명의 USB 기억장치를 가령 판촉품으로서 이용할 경우, 잘못하여 삭제되면 문제가 있는 소프트웨어를 제 2 영역에 기억시켜 두면, 외부장치(예컨대, 개인용 컴퓨터)로부터 삭제 지령을 받았을 경우에도 제어수단은 그 지령을 실행하지 않기 때문에, 소프트웨어가 삭제되거나 변경되는 것을 방지할 수 있다.
한편, 제 1 영역에 대해서는 방지 스위치 등을 전환하지 않고 이용자 등이 임의로 정보를 기입할 수 있기 때문에 사용이 편리하다.

Claims (9)

  1. 소정의 오퍼레이션 시스템에 의해 제어되는 동시에 적어도 디스크 드라이브 드라이버, USB 대용량 기억 클래스 드라이버 및 USB 호스트 컨트롤러를 구비하는 외부장치에 대하여 탈·부착이 가능한 USB 기억장치로서,
    플래시메모리로 이루어지며, 사용자가 사용할 수 있는 하나 이상의 영역을 갖는 기억수단과,
    USB 프로토콜에 기초하여 상기 외부장치와 통신하는 통신수단과,
    상기 통신수단을 통해, 상기 기억수단에 대하여 정보를 판독, 기입 및 삭제하는 제어수단을 구비하며,
    상기 제어수단은,
    상기 외부장치에 구비되는 USB 대용량 기억 클래스 드라이버의 SCSI 명령 셋으로 정의된 논리 유닛 번호에 대응하는, 사용자가 사용할 수 있는 상기 하나 이상의 영역을, 정보의 판독만이 가능한 논리유닛으로서 상기 USB 대용량 기억 클래스 드라이버에 인식시키기 위한 당해 영역의 포맷정보를 기억하고,
    상기 디스크 드라이브 드라이버로부터의 지령에 따라 상기 포맷 정보를 상기 USB 대용량 기억 클래스 드라이버에 공급하여, 본 USB 기억장치를 상기 정보의 판독만이 가능한 논리유닛을 갖는 하나의 SCSI 디바이스로서 상기 USB 대용량 기억 클래스 드라이버에 인식시키는 동시에,
    상기 외부장치로부터 받은 지령과 상기 포맷정보에 기초하여, 상기 논리 유닛에 대해 정보의 판독만을 실행하는 것을 특징으로 하는 USB 기억장치.
  2. 제 1항에 있어서,
    상기 기억수단은, 플래시메모리의 기억영역을 적어도 제 1 영역과 제 2 영역으로 나누어 정의하여 이루어지며,
    상기 제어수단은,
    상기 외부장치에 구비되는 USB 대용량 기억 클래스 드라이버의 SCSI 명령 셋으로 정의된 논리유닛번호에 대응하는 제 1 영역과 제 2 영역을, 상기 제 1 영역에 대해서는 정보를 판독, 기입 및 삭제할 수 있는 디스크 유닛으로서, 상기 제 2 영역에 대해서는 정보의 판독만이 가능한 유닛으로서 상기 USB 대용량 기억 클래스 드라이버에 인식시키기 위한 당해 영역의 포맷정보를 기억하고,
    상기 디스크 드라이브 드라이버로부터의 지령에 따라 상기 포맷정보를 상기 USB 대용량 기억 클래스 드라이버에 공급하여, 본 USB 기억장치를 상기 정보를 판독, 기입 및 삭제할 수 있는 디스크 유닛과 상기 정보의 판독만이 가능한 유닛이라는 2가지 논리유닛을 갖는 하나의 SCSI 디바이스로서 상기 USB 대용량 기억 클래스 드라이버에 인식시키는 동시에,
    상기 외부장치로부터 받은 지령과 상기 포맷정보에 기초하여, 상기 제 1 영역에 대해서는 정보를 판독, 기입 또는 삭제하고, 상기 제 2 영역에 대해서는 정보의 판독만을 실행하는 것을 특징으로 하는 USB 기억장치.
  3. 제 1항 또는 제 2항에 있어서,
    상기 제어수단은, 상기 논리유닛마다 그 논리유닛의 논리블록번호와 상기 기억수단의 물리블록번호간의 대응관계를 관리하는 동시에, 이 대응관계를 상기 포맷정보와 함께 기억하고, 이와 같이 기억된 대응관계에 기초하여 정보를 판독, 기입 또는 삭제하는 것을 특징으로 하는 USB 기억장치.
  4. 제 2항에 있어서,
    제 2 영역에는 애플리케이션 프로그램이 미리 기억되어 있으며, 본 USB 기억장치가 외부장치에 장착되었을 때, 상기 애플리케이션 프로그램이 자동으로 실행되도록 구성되어 있는 것을 특징으로 하는 USB 기억장치.
  5. 제 1항 내지 제 4항 중 어느 항에 있어서,
    정보의 판독만이 가능한 유닛에는 CD-ROM 논리유닛이 포함되는 것을 특징으로 하는 USB 기억장치.
  6. USB 기억장치에 탑재되는 제어장치로서,
    USB 기억장치가 장착될 외부장치에 구비되는 USB 대용량 기억 클래스 드라이버의 SCSI 명령 셋으로 정의된 논리유닛번호에 대응하는, USB 기억장치에 설치된 플래시메모리로 이루어지는 기억장치의 하나 이상의 영역을, 정보의 판독만이 가능한 유닛으로서 상기 USB 대용량 기억 클래스 드라이버에 인식시키기 위한 당해 영역을 관리하는 포맷정보를 기억하는 메모리 정보 기억부를 구비하며,
    상기 제어장치는,
    외부장치의 디스크 드라이브 드라이버에 의한 명령의 발행에 응답해 상기 외부장치의 USB 대용량 기억 클래스 드라이버로 상기 포맷정보를 공급하여, 상기 제어장치가 탑재된 USB 기억장치를 정보의 판독만이 가능한 논리유닛을 갖는 하나의 SCSI 디바이스로서 상기 USB 대용량 기억 클래스 드라이버에 인식시키는 동시에,
    상기 외부장치로부터 받은 지령과 상기 포맷정보에 기초하여, 상기 논리유닛에 대해 정보의 판독만을 실행하는 것을 특징으로 하는 제어장치.
  7. 제 6항에 있어서,
    상기 메모리 정보 기억부는, USB 기억장치가 장착될 외부장치에 구비되는 USB 대용량 기억 클래스 드라이버의 SCSI 명령 셋으로 정의된 논리유닛번호에 대응하는, USB 기억장치에 설치된 플래시메모리로 이루어지는 기억장치의 제 1 영역 및 제 2 영역을, 제 1 영역에 대해서는 정보를 판독, 기입 및 삭제할 수 있는 디스크 유닛으로서, 제 2 영역에 대해서는 정보의 판독만이 가능한 유닛으로서 상기 USB 대용량 기억 클래스 드라이버에 인식시키기 위한 당해 영역을 관리하는 포맷정보를 기억하고,
    상기 제어장치는,
    외부장치의 디스크 드라이브 드라이버에 의한 명령의 발행에 응답해 상기 외부장치의 USB 대용량 기억 클래스 드라이버로 상기 포맷정보를 공급하여, 상기 제어장치가 탑재된 USB 기억장치를 상기 정보를 판독, 기입 및 삭제할 수 있는 디스크 유닛과 상기 정보의 판독만이 가능한 유닛이라는 2가지 논리유닛을 갖는 하나의 SCSI 디바이스로서 상기 USB 대용량 기억 클래스 드라이버에 인식시키는 동시에,
    상기 외부장치로부터 받은 지령과 상기 포맷정보에 기초하여, 상기 제 1 영역에 대해서는 정보를 판독, 기입 또는 삭제하고, 상기 제 2 영역에 대해서는 정보의 판독만을 실행하는 것을 특징으로 하는 제어장치.
  8. 제 6 또는 제 7항에 있어서,
    상기 논리유닛마다, 그 논리유닛의 논리블록번호와 상기 기억장치의 물리블록번호간의 대응관계를 관리하는 동시에, 이 대응관계를 상기 포맷정보와 함께 기억하고, 이와 같이 기억된 대응관계에 기초하여, 정보를 판독, 기입 또는 삭제하는 것을 특징으로 하는 제어장치.
  9. 제 6항 내지 제 8항 중 어느 항에 있어서,
    정보의 판독만이 가능한 유닛에는 CD-ROM 논리유닛이 포함되는 것을 특징으로 하는 제어장치.
KR1020040029482A 2003-04-30 2004-04-28 유니버설 시리얼 버스 스토리지장치 및 그 제어장치 KR100589521B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2003-00125464 2003-04-30
JP2003125464A JP3513147B2 (ja) 2002-05-29 2003-04-30 Usbストレージデバイス及びその制御装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020060039435A Division KR100954933B1 (ko) 2003-04-30 2006-05-02 유니버설 시리얼 버스 스토리지장치 및 그 제어장치

Publications (2)

Publication Number Publication Date
KR20040094334A true KR20040094334A (ko) 2004-11-09
KR100589521B1 KR100589521B1 (ko) 2006-06-19

Family

ID=33410226

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020040029482A KR100589521B1 (ko) 2003-04-30 2004-04-28 유니버설 시리얼 버스 스토리지장치 및 그 제어장치
KR1020060039435A KR100954933B1 (ko) 2003-04-30 2006-05-02 유니버설 시리얼 버스 스토리지장치 및 그 제어장치

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020060039435A KR100954933B1 (ko) 2003-04-30 2006-05-02 유니버설 시리얼 버스 스토리지장치 및 그 제어장치

Country Status (6)

Country Link
EP (2) EP1659476B1 (ko)
KR (2) KR100589521B1 (ko)
CN (1) CN1300711C (ko)
DE (2) DE602004001094T2 (ko)
HK (1) HK1068990A1 (ko)
TW (2) TWI261757B (ko)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006209371A (ja) * 2005-01-27 2006-08-10 Toshiba Corp 制御装置
JP2006235994A (ja) 2005-02-24 2006-09-07 Nec Electronics Corp ブリッジシステム、ブリッジシステム制御方法、情報処理機器、周辺機器及びプログラム
CN100401280C (zh) * 2005-06-08 2008-07-09 北京飞天诚信科技有限公司 通用串行总线数据传输方法
CN1987843B (zh) * 2005-12-23 2010-08-11 深圳市朗科科技股份有限公司 Usb协议自适应方法
FR2912857A1 (fr) * 2007-02-15 2008-08-22 Gregory Rudy Vincent Dispositif informatique de communication permettant de diffuser automatiquement un message ou une application a l'aide d'une cle usb
JP4333765B2 (ja) 2007-03-28 2009-09-16 ブラザー工業株式会社 デバイス制御システム
JP2008245046A (ja) * 2007-03-28 2008-10-09 Brother Ind Ltd 複合機、およびデバイス制御システム
CN101276310B (zh) * 2007-03-30 2011-03-16 中华电信股份有限公司 可携式数据存取装置
WO2009103182A1 (zh) * 2008-02-18 2009-08-27 中兴通讯股份有限公司 在移动终端的非线性闪存上实现u盘功能的装置
JP5513018B2 (ja) 2008-06-27 2014-06-04 キヤノン電子株式会社 周辺装置及び画像読取装置
FI20080534A0 (fi) * 2008-09-22 2008-09-22 Envault Corp Oy Turvallinen ja valikoidusti kiistettävissä oleva tiedostovarasto
JP5235768B2 (ja) * 2009-04-23 2013-07-10 キヤノン株式会社 制御装置、その制御方法、及びプログラム
CN103955434B (zh) * 2010-10-08 2017-04-19 群联电子股份有限公司 数据写入方法、存储器控制器与存储器储存装置
CN102487395B (zh) * 2010-12-01 2014-11-05 北京闪联云视信息技术有限公司 一种实现数据访问的方法、装置和系统
EP2503466B1 (en) 2011-03-23 2017-08-23 Canon Denshi Kabushiki Kaisha Peripheral device used while being connected to information processing apparatus
CN102789430B (zh) * 2011-05-18 2015-11-18 群联电子股份有限公司 存储器储存装置、其存储器控制器与存取方法
JP2013046968A (ja) * 2011-08-29 2013-03-07 Brother Industries Ltd プリンタ及び印刷処理プログラム並びに印刷処理方法
CN102968391A (zh) * 2012-03-20 2013-03-13 广州市国迈科技有限公司 一种可保护所存储软件版权的u盘
KR101255204B1 (ko) * 2012-07-23 2013-04-23 주식회사 베프스 보안 기능을 갖는 저장 장치 리더기 및 이를 이용한 보안 방법
CN104102515A (zh) * 2014-07-18 2014-10-15 浪潮(北京)电子信息产业有限公司 一种处理外挂存储设备的逻辑单元号的方法及服务器
CN104992129B (zh) * 2015-05-28 2017-12-22 山东华芯半导体有限公司 一种osx系统用加密u盘及其实现方法
WO2017038839A1 (ja) * 2015-09-03 2017-03-09 コニカミノルタ株式会社 測色計、情報処理システム、およびデータ制御方法
CN113535624A (zh) * 2021-07-12 2021-10-22 南方科技大学 Usb强制格式化免驱动插口及其控制方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1060590A2 (en) * 1998-02-18 2000-12-20 Voltaire Advanced Data Security Ltd Information security method and apparatus
US6813682B2 (en) * 2000-09-29 2004-11-02 Steven Bress Write protection for computer long-term memory devices
US20020073340A1 (en) * 2000-12-12 2002-06-13 Sreenath Mambakkam Secure mass storage device with embedded biometri record that blocks access by disabling plug-and-play configuration
CN1165003C (zh) * 2001-01-21 2004-09-01 北京飞天诚信科技有限公司 带通用串行总线插头的微型存储器及其读写方法
JP4676696B2 (ja) * 2001-06-29 2011-04-27 セキュアー システムズ リミテッド コンピュータのためのセキュリティシステムおよび方法
JP3513147B2 (ja) * 2002-05-29 2004-03-31 株式会社ハギワラシスコム Usbストレージデバイス及びその制御装置

Also Published As

Publication number Publication date
DE602004001094T2 (de) 2006-12-07
CN1300711C (zh) 2007-02-14
EP1491982A1 (en) 2004-12-29
DE602004019792D1 (de) 2009-04-16
TWI261757B (en) 2006-09-11
EP1659476A3 (en) 2007-05-02
TW200506627A (en) 2005-02-16
EP1659476A2 (en) 2006-05-24
KR100954933B1 (ko) 2010-04-27
TW200636750A (en) 2006-10-16
DE602004001094D1 (de) 2006-07-20
EP1491982B1 (en) 2006-06-07
TWI301280B (ko) 2008-09-21
HK1068990A1 (en) 2005-05-06
EP1659476B1 (en) 2009-03-04
KR20060056927A (ko) 2006-05-25
KR100589521B1 (ko) 2006-06-19
CN1542630A (zh) 2004-11-03

Similar Documents

Publication Publication Date Title
KR100954933B1 (ko) 유니버설 시리얼 버스 스토리지장치 및 그 제어장치
JP3513147B2 (ja) Usbストレージデバイス及びその制御装置
US7068386B2 (en) Image processing system, image data processing method, and storage medium
JP3914949B2 (ja) Usbストレージデバイス、その制御装置及びその制御装置に実行させるためのプログラム
JP2010044579A (ja) 周辺装置、プログラム、およびドライバインストールシステム
JP2006079634A5 (ko)
JP2008139916A (ja) 情報処理装置、情報処理装置の制御方法、および情報処理装置の制御プログラム
JP2005141721A (ja) アプリケーションプログラムの自動インストールシステム、及びその方法
JP3699717B2 (ja) Usbストレージデバイス及びその制御装置
JP2004171536A5 (ko)
US20080079991A1 (en) Information processing apparatus device driver deletion method and storage medium storing control program for executing the method
US8179554B2 (en) Printer, control method of a printer and computer-readable recording medium
JP4551643B2 (ja) Usbプリンタ及びusbスキャナ
JP2008500617A (ja) カードリーダに対するメモリカードのプラグイン又は取り外しを管理する方法及び当該方法を使用する装置
JP4242798B2 (ja) Usbストレージデバイス及びその制御装置
JP4087788B2 (ja) 情報処理装置及びその制御方法、プログラム
JP2006293638A (ja) 情報処理装置及び周辺装置
JP2005243046A (ja) Usbストレージデバイス及びプログラム
JP2005243046A5 (ko)
EP1594055A1 (en) System with application program and method for automatically installing the application program
JP4276219B2 (ja) Usbストレージデバイスの内部状態設定方法
JP2008201001A (ja) 印刷装置及び制御方法
JP2001188886A (ja) 情報処理周辺装置、情報処理システム
JP3814461B2 (ja) プリンタ、プリンタの制御方法、記憶媒体
KR20050108797A (ko) 유에스비를 이용한 홍보 장치

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
AMND Amendment
A302 Request for accelerated examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
A107 Divisional application of patent
AMND Amendment
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120430

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20130409

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20141205

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150608

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160602

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20170511

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20180518

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20190424

Year of fee payment: 14