KR100937715B1 - USB Hub Device and Method for Intergration Management of USB Storages Using the Same - Google Patents

USB Hub Device and Method for Intergration Management of USB Storages Using the Same Download PDF

Info

Publication number
KR100937715B1
KR100937715B1 KR1020080033272A KR20080033272A KR100937715B1 KR 100937715 B1 KR100937715 B1 KR 100937715B1 KR 1020080033272 A KR1020080033272 A KR 1020080033272A KR 20080033272 A KR20080033272 A KR 20080033272A KR 100937715 B1 KR100937715 B1 KR 100937715B1
Authority
KR
South Korea
Prior art keywords
usb
storage device
usb storage
packet
hub device
Prior art date
Application number
KR1020080033272A
Other languages
Korean (ko)
Other versions
KR20090107799A (en
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 고려대학교 산학협력단
Priority to KR1020080033272A priority Critical patent/KR100937715B1/en
Publication of KR20090107799A publication Critical patent/KR20090107799A/en
Application granted granted Critical
Publication of KR100937715B1 publication Critical patent/KR100937715B1/en

Links

Images

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/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • 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/0604Improving or facilitating administration, e.g. storage management
    • 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]

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)
  • Information Transfer Systems (AREA)

Abstract

본 발명은 다양한 저장 용량을 가지는 다수의 USB 저장장치를 통합하여 하나의 USB 저장장치로 인식할 수 있도록 하는 USB 허브 장치 및 이를 이용한 USB 저장장치 통합 관리 방법에 관한 것이다. 본 발명에 따른 USB 허브 장치는 다수의 USB 저장장치를 호스트 컨트롤러와 연결하는 USB 허브 장치에 있어서, 상기 호스트 컨트롤러와 상기 다수의 USB 저장장치 사이의 트랜잭션을 제어하여 상기 호스트 컨트롤러가 상기 USB 허브 장치에 접속된 다수의 USB 저장장치를 하나의 USB 저장장치로 인식하게 하는 USB 저장장치 제어부를 포함한다. 본 발명의 USB 허브 장치에 의하면 다양한 저장 용량을 가진 다수의 USB 저장장치를 통합하여 하나의 USB 저장장치로 인식하여 사용할 수 있도록 함으로써, USB 저장장치를 효율적으로 사용할 수 있다.The present invention relates to a USB hub device for integrating a plurality of USB storage devices having various storage capacities so as to be recognized as a single USB storage device, and a method for managing the integrated USB storage device using the same. The USB hub device according to the present invention is a USB hub device for connecting a plurality of USB storage devices with a host controller, wherein the host controller controls the transaction between the host controller and the plurality of USB storage devices to the USB hub device. And a USB storage control unit for recognizing a plurality of connected USB storage devices as one USB storage device. According to the USB hub device of the present invention, a USB storage device can be efficiently used by integrating a plurality of USB storage devices having various storage capacities so as to be recognized as one USB storage device.

USB 저장장치, USB 허브 USB storage device, USB hub

Description

USB 허브 장치 및 이를 이용한 USB 저장장치 통합 관리 방법{USB Hub Device and Method for Intergration Management of USB Storages Using the Same}USB Hub Device and Method for Intergration Management of USB Storages Using the Same}

본 발명은 USB 허브 장치 및 이를 이용한 USB 저장장치 통합 관리 방법에 관한 것으로, 더욱 상세하게는 다양한 저장 용량을 가지는 다수의 USB 저장장치를 통합하여 하나의 USB 저장장치로 인식할 수 있도록 하는 USB 허브 장치 및 이를 이용한 USB 저장장치 통합 관리 방법에 관한 것이다.The present invention relates to a USB hub device and a method for integrated management of a USB storage device using the same. More specifically, a USB hub device for integrating a plurality of USB storage devices having various storage capacities to be recognized as a single USB storage device. And it relates to a USB storage device integrated management method using the same.

USB(Universal Serial Bus; 범용 직렬 버스, 이하 'USB'라고만 함)는 공통의 커넥터(connector)로 다양한 주변기기를 컴퓨터에 접속할 수 있게 하는 인터페이스(Interface) 규격이다. USB 인터페이스 주변기기(이하 'USB 디바이스'라고 함)는 컴퓨터의 사용 도중에 연결하여도 인식이 가능한 'Plug & Play'를 지원한다. 따라서 USB는 키보드, 마우스 또는 프린터와 같은 USB 디바이스와 컴퓨터와의 데이터 전송을 위한 입출력 장치로 널리 사용되고 있다.USB (Universal Serial Bus, or USB) is an interface standard that allows various peripherals to be connected to a computer through a common connector. USB interface peripherals (hereinafter referred to as 'USB devices') support Plug & Play, which can be recognized even when the computer is in use. Therefore, USB is widely used as an input / output device for data transmission between a USB device such as a keyboard, a mouse or a printer and a computer.

이러한 USB 디바이스 가운데 데이터의 저장을 위하여 사용되는 것을 USB 저장장치(USB Storage)라고 한다. USB 저장장치는 데이터 저장 수단에 따라 다양한 방식으로 구현될 수 있는데, 하드디스크를 이용한 외장형 하드디스크 드라이 브(External Hard Disk Drive)와 플래시 메모리를 이용한 USB 플래시 드라이브(USB Flash Drive)가 널리 사용되고 있다.Among these USB devices, one used for storing data is called a USB storage device. USB storage devices may be implemented in various ways according to data storage means. External hard disk drives using hard disks and USB flash drives using flash memory are widely used.

외장형 하드디스크 드라이브는 일반적으로 컴퓨터 내부에 설치되어 사용되는 하드디스크를 USB 2.0 또는 IEEE 1394와 같은 고속 외부 인터페이스를 통해 컴퓨터 외부에서 케이블로 접속하여 사용할 수 있도록 하는 장치이다. 외장형 하드디스크 드라이브는 컴퓨터에 일반적으로 사용되는 하드디스크를 사용하므로 대용량의 데이터를 저장할 수 있는 장점이 있으나 휴대가 불편하다.An external hard disk drive is a device that allows a hard disk, which is installed and used inside a computer, to be connected to the outside of the computer through a high speed external interface such as USB 2.0 or IEEE 1394. An external hard disk drive uses a hard disk generally used in a computer, so it can store a large amount of data, but it is inconvenient to carry.

USB 플래시 드라이브는 일반적으로 'USB 메모리'라고 불리며, 기존의 데이터 저장 수단인 플로피 디스크나 시디롬에 비하여 저장 용량도 크고, 휴대와 인식이 간편한 장점이 있다. 현재 상용화되어 있는 USB 메모리의 용량은 16MB에서 8GB까지 다양하며, 플래시 메모리 반도체 기술의 발달에 따라 그 저장 용량이 계속 증가하고 있다.USB flash drives are generally referred to as 'USB memory', and have a larger storage capacity, and are easier to carry and recognize than floppy disks or CD-ROMs, which are conventional data storage means. The capacity of commercially available USB memory varies from 16MB to 8GB, and storage capacity continues to increase with the development of flash memory semiconductor technology.

USB 디바이스는 호스트 컨트롤러를 통하여 컴퓨터와 연결된다. 호스트 컨트롤러는 '루트 허브'라고도 불리며, 일반적으로 컴퓨터의 USB 포트에 내장되어 있다. USB 디바이스에는 호스트 컨트롤러와 통신하기 위한 USB 포트와 USB 컨트롤러가 있으며, USB 저장장치의 경우에는 데이터 저장 수단(예컨대, 플래시 메모리 또는 하드디스크)이 내장되어 있다.The USB device is connected to the computer via the host controller. The host controller is also called the "root hub" and is usually built into the computer's USB port. The USB device includes a USB port and a USB controller for communicating with a host controller. In the case of a USB storage device, data storage means (for example, a flash memory or a hard disk) is built in.

USB 저장장치가 USB 포트를 통하여 컴퓨터에 연결되면 호스트 컨트롤러는 USB 저장장치에 대한 정보를 요청하고, 이에 따라 USB 저장장치는 디스크립트(Descript) 정보를 호스트 컨트롤러로 전송한다. 디스크립트 정보는 USB 저장장 치의 제조사 및 저장 용량 등에 대한 정보를 포함한다.When the USB storage device is connected to the computer through the USB port, the host controller requests information about the USB storage device, and the USB storage device transmits descriptive information to the host controller. Descriptive information includes information about the manufacturer and storage capacity of the USB storage device.

호스트 컨트롤러는 USB 저장장치로부터 디스크립트 정보를 획득한 후, 각 USB 저장장치를 구분하기 위하여 인식된 순서대로 고유 주소를 지정한다. USB 트랜잭션(Transaction)에서 주소는 7bit를 사용하므로 총 128개의 주소가 사용될 수 있으나, 0번지는 USB 저장장치의 초기 인식 주소로 사용되기 때문에 USB 저장장치에 할당될 수 있는 주소는 127개이다.After the host controller obtains the descriptive information from the USB storage device, the host controller assigns a unique address in the recognized order to distinguish each USB storage device. In the USB transaction, the address uses 7bit, so a total of 128 addresses can be used, but since address 0 is used as the initial recognition address of the USB storage device, the address that can be allocated to the USB storage device is 127.

도 1은 호스트 컨트롤러와 USB 저장장치의 연결을 보여주는 블록도이다. 도 1에 도시된 바와 같이 호스트 컨트롤러(100)는 버스(Bus)를 통해 127개의 주소로 구분된 USB 저장장치(200)를 인식하여 데이터를 저장 수단(210)에 저장할 수 있다. USB는 호스트 중심의 버스이기 때문에 USB 저장장치(200) 내부에서 발생하는 저장에 관한 제어는 호스트 컨트롤러(100)에서 담당할 수 없다. 따라서 엔드포인트(Endpoint)(201)라고 하는 저장 공간에 버스(Bus)에서 전송된 데이터를 임시 보관한 후 USB 저장장치(200)의 제어를 통해 저장 및 삭제가 이루어진다.1 is a block diagram illustrating a connection between a host controller and a USB storage device. As illustrated in FIG. 1, the host controller 100 may recognize a USB storage device 200 divided into 127 addresses through a bus and store data in the storage means 210. Since the USB is a host-centric bus, the host controller 100 may not be responsible for control of storage occurring in the USB storage device 200. Therefore, after temporarily storing data transmitted from the bus in a storage space called an endpoint 201, storage and deletion are performed under the control of the USB storage device 200.

USB 저장장치는 데이터의 저장 및 삭제를 위한 저장장치이다. 따라서 호스트 컨트롤러와 USB 저장장치 사이의 데이터 전송 및 상태 파악을 위하여 토큰 패킷(Token Packets), 데이터 패킷(Data Packets) 및 상태 패킷(Handshake Packets)을 사용한다.The USB storage device is a storage device for storing and deleting data. Therefore, Token Packets, Data Packets, and Status Packets are used for data transmission and status detection between the host controller and the USB storage device.

토큰 패킷은 초기화 후 전송되는 패킷으로 SETUP, IN, OUT 패킷으로 구성되며, 토큰 패킷 이후에 어떤 패킷이 전송될지를 알려준다. 또한 토큰 패킷은 해당 USB 저장장치의 주소를 알려주고, 호스트 컨트롤러가 제어하는 BUS와 저장장치 내 부 저장수단 간의 데이터 교환을 위한 공간인 엔트포인트가 어디인지를 알려준다. 구체적으로 SETUP 패킷은 제어 전송(control transfer)을 시작하기 위하여 사용되고, IN 패킷은 호스트가 'Read'하기 원하는 USB 저장장치의 주소를 알려주며, OUT 패킷은 호스트가 'Send'하기 원하는 USB 저장장치의 주소를 알려준다. 토큰 패킷은 도 2에 도시된 바와 같은 형식으로 만들어져야 한다.Token packet is a packet transmitted after initialization and consists of SETUP, IN, and OUT packets, and informs which packet is transmitted after the token packet. In addition, the token packet informs the address of the corresponding USB storage device and tells where the endpoint, which is a space for data exchange between the BUS controlled by the host controller and the internal storage means. Specifically, the SETUP packet is used to initiate a control transfer, the IN packet indicates the address of the USB storage device that the host wants to 'read', and the OUT packet indicates the address of the USB storage device that the host wants to 'Send'. Tells. The token packet should be made in the format as shown in FIG.

도 2를 참조하면, 토큰 패킷은 싱크 필드(Sync), 패킷 식별 필드(PID), 주소 필드(ADDR), 엔트포인트 필드(ENDP), CRC 필드(CRC5) 및 EOP 필드(EOP)로 이루어진다. 싱크 필드(Sync)는 클럭(clock) 동기화를 위해 사용되며, 모든 패킷들은 반드시 하나의 싱크 필드(Sync)로 시작해야 한다. 패킷 식별 필드(PID)는 전송되는 패킷의 타입을 나타낸다. 주소 필드(ADDR)는 7bit로 구성되며 패킷이 목적으로 하는 USB 저장장치의 주소를 나타낸다. 엔드포인트 필드(ENDP)는 4bit로 구성되며 16개의 엔드포인트를 나타낼 수 있다. CRC 필드(CRC5)는 패킷 검증코드로서 토큰 패킷은 5bit의 CRC(Cyclic Redundancy Check)를 이용하여 주소와 엔드포인트를 보호한다. EOP 필드(EOP)는 패킷의 끝(End of Packet)을 나타낸다.Referring to FIG. 2, the token packet includes a sync field Sync, a packet identification field PID, an address field ADDR, an endpoint fieldENDP, a CRC field CRC5, and an EOP field EOP. Sync field (Sync) is used for clock synchronization, all packets must start with one sync field (Sync). The packet identification field (PID) indicates the type of packet to be transmitted. The address field (ADDR) consists of 7 bits and indicates the address of the USB storage device for which the packet is intended. The endpoint field (ENDP) consists of 4 bits and may represent 16 endpoints. The CRC field (CRC5) is a packet verification code, and a token packet protects an address and an endpoint by using a 5-bit cyclic redundancy check (CRC). The EOP field (EOP) indicates the end of a packet.

데이터 패킷은 실제 데이터 전송에 사용되는 패킷으로 최대 데이터 전송 크기는 로우(Low) 스피드에서는 8byte, 풀(Full) 스피드에서는 1024byte이다. 데이터 패킷은 도 3에 도시된 바와 같은 형식을 가진다. 도 3을 참조하면, 데이터 패킷은 싱크 필드(Sync), 패킷 식별 필드(PID), 데이터 필드(Data), CRC 필드(CRC16) 및 EOP 필드(EOP)로 이루어진다. 데이터 필드(Data)의 크기는 0 ~ 1023byte까지 이며 데이터 패킷의 크기는 전송 형태에 따라 다르게 나타난다. CRC 필드(CRC16)는 데이 터 패킷의 검증코드로서 데이터 패킷은 16bit의 CRC(Cyclic Redundancy Check)를 이용하여 데이터를 보호한다. 싱크 필드(Sync), 패킷 식별 필드(PID) 및 EOP 필드(EOP)에 대한 설명은 도 2와 동일하다.The data packet is used for actual data transmission. The maximum data transmission size is 8 bytes at low speed and 1024 bytes at full speed. The data packet has a format as shown in FIG. Referring to FIG. 3, a data packet includes a sync field (Sync), a packet identification field (PID), a data field (Data), a CRC field (CRC16), and an EOP field (EOP). The size of the data field (Data) is from 0 to 1023 bytes, and the size of the data packet varies depending on the transmission type. The CRC field CRC16 is a verification code of the data packet, and the data packet protects the data by using a 16-bit cyclic redundancy check (CRC). The description of the sync field Sync, the packet identification field PID, and the EOP field EOP is the same as FIG. 2.

상태 패킷은 트랜잭션(Transaction)의 결과 즉 데이터 전송이 성공하였는지, 실패하였는지를 알려주기 위해 사용되는 패킷으로 ACK 패킷, NAK 패킷 및 STALL 패킷으로 구성된다. ACK 패킷은 데이터가 성공적으로 전송되었음을 알려주는 패킷이다. NAK 패킷은 데이터가 준비되지 않아, USB 저장장치가 데이터를 전송하거나 받을 수 없음을 알려주는 패킷이다. STALL 패킷은 USB 저장장치가 호스트의 중재를 요청하는 상태로서, 엔트포인트 내부적으로 오류가 발생하여 올바른 동작을 하지 못할 때 사용된다. 상태 패킷은 도 4에 도시된 바와 같은 형식을 가진다. 도 4를 참조하면, 상태 패킷은 싱크 필드(Sync), 패킷 식별 필드(PID) 및 EOP 필드(EOP)로 이루어지며, 상기 필드에 대한 설명은 도 2와 동일하므로 생략한다.The status packet is a packet used to indicate the result of a transaction, that is, whether the data transmission succeeded or failed. It consists of an ACK packet, a NAK packet, and a STALL packet. The ACK packet is a packet indicating that data was transmitted successfully. The NAK packet is a packet indicating that the USB storage device cannot transmit or receive data because no data is prepared. The STALL packet is a state in which a USB storage device requests host arbitration. It is used when an error occurs internally and the endpoint does not operate properly. The status packet has a format as shown in FIG. Referring to FIG. 4, the status packet is composed of a sync field (Sync), a packet identification field (PID), and an EOP field (EOP). The description of the field is the same as FIG.

상기한 바와 같은 종래의 USB 저장장치는 저장 공간 비교를 위한 전처리 과정을 거치지 않는 문제점이 있다. 따라서 USB 저장장치의 남아 있는 저장 공간보다 용량이 큰 단일 파일 데이터의 저장 요구시, 데이터 전송 트랜잭션(Transaction)을 완료한 후, USB 저장장치의 저장 공간 부족에 의한 NAK 패킷을 수신하여 저장을 취소하게 된다.Conventional USB storage device as described above has a problem that does not go through the pre-processing for the storage space comparison. Therefore, when a request is made to save a single file of data larger than the remaining storage space of the USB storage device, after completing a data transfer transaction, the NAK packet may be received due to insufficient storage space of the USB storage device to cancel the storage. do.

또한 종래의 USB 저장장치는 컴퓨터에 각각 연결되었을 때, 모두 별개의 저장 공간으로 인식되므로, 다수의 파일을 포함하는 대규모 데이터 저장시, 각각의 USB 저장장치의 남은 저장 용량을 사용자가 파악한 후, 그 남은 용량에 따라 사용 자가 스스로 파일을 구분하여 데이터를 저장하여야 하는 불편이 있다.In addition, since conventional USB storage devices are all recognized as separate storage spaces when connected to a computer, when a large-scale data storage including a large number of files is stored, the user knows the remaining storage capacity of each USB storage device. It is inconvenient for the user to save the data by dividing the file by the user according to the remaining capacity.

본 발명의 목적은 다양한 저장 용량을 가지는 다수의 USB 저장장치를 통합하여 하나의 USB 저장장치로 인식할 수 있도록 하는 USB 허브 장치 및 이를 이용한 USB 저장장치 통합 관리 방법을 제공하기 위한 것이다.An object of the present invention is to provide a USB hub device and a USB storage device integrated management method using the same to integrate a plurality of USB storage devices having a variety of storage capacity to be recognized as a single USB storage device.

본 발명에 따른 USB 허브 장치는 다수의 USB 저장장치를 호스트 컨트롤러와 연결하는 USB 허브 장치에 있어서, 상기 호스트 컨트롤러와 상기 다수의 USB 저장장치 사이의 트랜잭션을 제어하여 상기 호스트 컨트롤러가 상기 USB 허브 장치에 접속된 다수의 USB 저장장치를 하나의 USB 저장장치로 인식하게 하는 USB 저장장치 제어부를 포함한다.The USB hub device according to the present invention is a USB hub device for connecting a plurality of USB storage devices with a host controller, wherein the host controller controls the transaction between the host controller and the plurality of USB storage devices to the USB hub device. And a USB storage control unit for recognizing a plurality of connected USB storage devices as one USB storage device.

실시예로서, 상기 USB 저장장치 제어부는 상기 USB 허브 장치에 접속된 모든 USB 저장장치의 디스크립션 정보를 수집한 후, 하나의 디스크립션 정보로 가공하여 상기 호스트 컨트롤러로 전송하는 디스크립션 통합부; 및 상기 USB 허브 장치에 접속된 다수의 USB 저장장치에 순차적으로 로컬 주소를 지정하는 주소 관리부를 포함한다.The USB storage device controller may include a description integrator configured to collect description information of all USB storage devices connected to the USB hub device, process the description information into one description information, and transmit the description information to the host controller; And an address management unit for sequentially assigning local addresses to a plurality of USB storage devices connected to the USB hub device.

다른 실시예로서, 상기 USB 저장장치 제어부는 상기 USB 허브 장치와 상기 호스트 컨트롤러의 연결 중에 새로운 USB 저장장치가 상기 USB 허브 장치에 접속되거나 접속된 USB 저장장치가 접속 해제된 경우 발생하는 전체 저장 용량의 변화 및 USB 저장장치의 주소 변화를 관리하는 접근 제어 관리부를 더 포함한다.In another embodiment, the USB storage device controller may be configured to generate a total storage capacity that occurs when a new USB storage device is connected to the USB hub device or the connected USB storage device is disconnected while the USB hub device is connected to the host controller. The apparatus may further include an access control manager configured to manage the change and the address change of the USB storage device.

또 다른 실시예로서, 상기 USB 저장장치 제어부는 상기 호스트 컨트롤러와 상기 USB 허브 장치에 접속된 USB 저장장치 사이의 트랜잭션을 제어하는 트랜잭션 검사부를 더 포함한다.In another embodiment, the USB storage controller further includes a transaction checker for controlling a transaction between the host controller and the USB storage device connected to the USB hub device.

본 발명에 따른 USB 저장장치 통합 관리 방법은 상기 USB 허브 장치가 호스트 컨트롤러로부터 상기 USB 허브 장치에 접속된 USB 저장장치의 디스크립션 정보를 요청하는 상태 패킷을 수신하는 단계; 상기 USB 허브 장치가 상기 USB 허브 장치에 접속된 모든 USB 저장장치로부터 각각의 디스크립션 정보를 취득하는 단계; 상기 USB 허브 장치가 상기 각각의 디스크립션 정보에서 저장 용량 정보를 추출하여 각각의 저장 용량을 합산하는 단계; 및 상기 USB 허브 장치가 상기 USB 허브 장치에 접속된 전체 USB 저장장치를 위한 새로운 디스크립션 정보를 생성하여 상기 호스트 컨트롤러로 전송하는 단계를 포함한다.In accordance with another aspect of the present invention, there is provided a method of managing integrated USB storage devices, the method comprising: receiving, by a USB hub device, a status packet requesting description information of a USB storage device connected to the USB hub device from a host controller; Obtaining, by the USB hub device, respective description information from all USB storage devices connected to the USB hub device; The USB hub device extracting storage capacity information from the description information and summing each storage capacity; And generating, by the USB hub device, new description information for all USB storage devices connected to the USB hub device, and transmitting the new description information to the host controller.

실시예로서, 상기 USB 저장장치 통합 관리 방법은 상기 USB 허브 장치가 상기 각각의 디스크립션 정보를 통해 접속된 USB 저장장치의 수를 파악하는 단계; 및 상기 USB 허브 장치가 접속된 USB 저장장치에 로컬 주소를 순차적으로 지정하는 단계를 더 포함한다.The USB storage device integrated management method may further include: determining the number of USB storage devices that are connected to the USB hub device through the description information; And sequentially assigning local addresses to the USB storage device to which the USB hub device is connected.

본 발명에 따른 USB 저장장치 통합 관리 방법의 다른 측면은 상기 USB 허브 장치가 상기 USB 허브 장치에 접속되어 있던 USB 저장장치가 접속 해제되는 것을 감지하는 단계; 상기 USB 허브 장치가 상기 접속 해제된 USB 저장장치에 분리 저장된 데이터가 존재하는지를 판단하는 단계; 상기 판단 결과 상기 접속 해제된 USB 저장장치에 분리 저장된 데이터가 있는 경우, 상기 USB 허브 장치가 파일 로그를 검사하여 상기 분리 저장된 데이터가 상기 접속 해제된 USB 저장장치의 다음 주소의 USB 저장장치에 함께 저장된 데이터인지를 판단하는 단계; 상기 판단 결과 상기 분리 저장된 데이터가 상기 접속 해제된 USB 저장장치의 다음 주소의 USB 저장장치에 함께 저장된 경우, 상기 접속 해제된 USB 저장장치의 다음 주소의 USB 저장장치에 저장된 첫 번째 파일에 대한 접근을 금지하는 단계; 및 상기 판단 결과 상기 분리 저장된 데이터가 상기 접속 해제된 USB 저장장치의 다음 주소의 USB 저장장치에 함께 저장된 것이 아닌 경우, 상기 접속 해제된 USB 저장장치의 이전 주소의 USB 저장장치에 저장된 마지막 파일에 대한 접근을 금지하는 단계를 포함한다.Another aspect of the integrated USB storage device management method according to the present invention comprises the steps of: detecting that the USB storage device connected to the USB hub device is disconnected; Determining, by the USB hub device, whether there is data stored separately in the disconnected USB storage device; If there is data stored in the disconnected USB storage device as a result of the determination, the USB hub device examines a file log and the separated data is stored together in the USB storage device of the next address of the disconnected USB storage device. Determining whether it is data; If the separated data is stored together in the USB storage device of the next address of the disconnected USB storage device, the access to the first file stored in the USB storage device of the next address of the disconnected USB storage device is determined. Inhibiting; And when the separated stored data is not stored together in the USB storage device of the next address of the disconnected USB storage device, the last file stored in the USB storage device of the previous address of the disconnected USB storage device. Prohibiting access.

실시예로서, 상기 USB 저장장치 통합 관리 방법은 상기 USB 허브 장치가 상기 접속 해제된 USB 저장장치의 로컬 주소를 폐기하는 단계; 및 상기 USB 허브 장치가 상기 USB 허브 장치에 접속된 USB 저장장치의 전체 저장 용량 정보를 갱신하여 상기 호스트 컨트롤러로 전송하는 단계를 더 포함한다.The USB storage device integrated management method may further include: discarding, by the USB hub device, a local address of the disconnected USB storage device; And updating, by the USB hub device, the total storage capacity information of the USB storage device connected to the USB hub device and transmitting the updated storage capacity information to the host controller.

본 발명에 따른 USB 저장장치 통합 관리 방법의 또 다른 측면은 상기 USB 허브 장치가 상기 USB 허브 장치에 새로운 USB 저장장치가 접속되는 것을 감지하는 단계; 상기 USB 허브 장치가 상기 새로운 USB 저장장치로부터 디스크립션 정보를 취득하여 용량 정보를 추출하는 단계; 상기 USB 허브 장치가 상기 USB 허브 장치에 원래 접속되어 있던 USB 저장장치의 저장 용량에 상기 새로 접속된 USB 저장장치의 저장 용량을 합산하는 단계; 및 상기 USB 허브 장치가 전체 USB 저장장치를 위한 새로운 디스크립션 정보를 생성하여 상기 호스트 컨트롤러로 전송하는 단계를 포함한다.Another aspect of the integrated USB storage device management method according to the present invention comprises the steps of: detecting that the USB hub device is connected to the new USB storage device; Extracting, by the USB hub device, capacity information by obtaining description information from the new USB storage device; Adding the storage capacity of the newly connected USB storage device to the storage capacity of the USB storage device originally connected to the USB hub device; And generating, by the USB hub device, new description information for the entire USB storage device and transmitting the new description information to the host controller.

실시예로서, 상기 USB 저장장치 통합 관리 방법은 상기 USB 허브 장치가 상기 USB 허브 장치에 접속된 새로운 USB 저장장치에 로컬 주소를 지정하는 단계를 더 포함한다.The USB storage device management method may further include assigning a local address to a new USB storage device connected to the USB hub device.

본 발명에 따른 USB 저장장치 통합 관리 방법의 또 다른 측면은 상기 USB 허브 장치가 호스트 컨트롤러로부터 전송된 데이터 패킷을 상기 USB 허브 장치에 접속된 USB 저장장치에 전송하여 데이터를 저장하는 단계; 상기 USB 허브 장치가 상기 USB 저장장치에 의하여 NAK 패킷 또는 STALL 패킷이 발행되었는지를 판단하는 단계; 상기 판단 결과 NAK 패킷 또는 STALL 패킷이 발행된 경우, 상기 NAK 패킷 또는 STALL 패킷이 상기 호스트 컨트롤러로 전송되지 못하게 보류시키는 단계; 상기 USB 허브 장치가 상기 USB 저장장치에 사용가능한 공간이 남아 있는지를 판단하는 단계; 상기 판단 결과 상기 USB 저장장치에 사용 가능한 공간이 없는 경우, 상기 USB 허브 장치가 상기 USB 저장장치 다음 주소의 USB 저장장치로 데이터 패킷이 전송될 수 있도록 로컬 주소를 변경하는 단계; 상기 USB 허브 장치가 상기 변경된 USB 저장장치에 의하여 ACK 패킷이 발행되었는지 여부를 판단하는 단계; 및 상기 판단 결과 ACK 패킷이 발행된 경우, 상기 데이터가 분리 저장되었음을 알리기 위한 파일 로그를 생성하는 단계를 포함한다.Another aspect of the integrated USB storage device management method according to the present invention comprises the steps of: storing data by the USB hub device transmitting a data packet transmitted from a host controller to a USB storage device connected to the USB hub device; Determining, by the USB hub device, whether a NAK packet or a STALL packet is issued by the USB storage device; If the NAK packet or STALL packet is issued as a result of the determination, suspending the NAK packet or STALL packet from being transmitted to the host controller; Determining, by the USB hub device, whether available space remains on the USB storage device; Changing the local address so that the USB hub device can transmit a data packet to the USB storage device next to the USB storage device when there is no space available on the USB storage device as a result of the determination; Determining, by the USB hub device, whether an ACK packet is issued by the changed USB storage device; And generating a file log for notifying that the data has been separately stored when an ACK packet is issued as a result of the determination.

본 발명에 따른 USB 저장장치 통합 관리 방법의 또 다른 측면은 상기 USB 허브 장치가 상기 USB 허브 장치에 접속된 USB 저장장치로부터 전송된 데이터 패킷을 호스트 컨트롤러로 전송하여 호스트에서 데이터 읽기가 수행되는 단계; 상기 USB 허브 장치가 상기 USB 저장장치에 의하여 NAK 패킷 또는 STALL 패킷이 발행되었는 지를 판단하는 단계; 상기 판단 결과 NAK 패킷 또는 STALL 패킷이 발행된 경우, 상기 NAK 패킷 또는 STALL 패킷이 호스트 컨트롤러로 전송되지 못하게 보류시키는 단계; 상기 USB 허브 장치가 상기 USB 저장장치의 저장 공간이 모두 사용되고 있는지를 판단하는 단계; 상기 판단 결과 상기 USB 저장장치의 저장 공간이 모두 사용되고 있는 경우, 상기 데이터의 파일 로그를 검사하여 이전 또는 다음 로컬 주소의 USB 저장장치 중 어느 하나를 선택하는 단계; 및 상기 USB 허브 장치가 상기 데이터 패킷의 로컬 주소를 상기 선택된 USB 저장장치의 로컬 주소로 변경하는 단계를 포함한다.Another aspect of the integrated USB storage device management method according to the present invention comprises the steps of performing a data read from a host by the USB hub device transmits a data packet transmitted from a USB storage device connected to the USB hub device to a host controller; Determining, by the USB hub device, whether a NAK packet or a STALL packet has been issued by the USB storage device; If the NAK packet or STALL packet is issued as a result of the determination, suspending the NAK packet or STALL packet from being transmitted to a host controller; Determining, by the USB hub device, whether all of the storage space of the USB storage device is used up; If the storage space of the USB storage device is used up as a result of the determination, checking a file log of the data and selecting one of the USB storage devices at the previous or next local address; And changing, by the USB hub device, a local address of the data packet to a local address of the selected USB storage device.

본 발명의 USB 허브 장치에 의하면 다양한 저장 용량을 가진 다수의 USB 저장장치를 통합하여 하나의 USB 저장장치로 인식하여 사용할 수 있도록 함으로써, USB 저장장치를 효율적으로 사용할 수 있다.According to the USB hub device of the present invention, a USB storage device can be efficiently used by integrating a plurality of USB storage devices having various storage capacities so as to be recognized as one USB storage device.

본 발명은 호스트 컨트롤러와 USB 저장장치 사이의 트랜잭션을 제어함으로써, 다양한 저장 용량을 가지는 다수의 USB 저장장치를 통합하여 하나의 USB 저장장치로 인식할 수 있도록 하는 USB 허브 장치 및 이를 이용한 USB 저장장치 통합 관리 방법을 제안한다.The present invention integrates a USB hub device and a USB storage device using the same, by integrating a plurality of USB storage devices having various storage capacities by controlling a transaction between the host controller and the USB storage device. Suggest a management method.

이하 본 발명의 바람직한 실시예에 따른 상세한 설명을 첨부된 도면들을 참조하여 설명한다. 아래에는 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다.Hereinafter, a detailed description of a preferred embodiment of the present invention will be described with reference to the accompanying drawings. In the following description, when it is determined that a detailed description of a related known function or configuration may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted.

먼저 도 5 및 도 6을 참조하여 본 발명에 따른 USB 허브 장치를 설명하고, 이어서 도 7 내지 도 11을 참조하여 본 발명의 USB 허브 장치를 이용한 USB 저장장치 통합 관리 방법을 설명한다.First, a USB hub device according to the present invention will be described with reference to FIGS. 5 and 6, and then a USB storage device integrated management method using the USB hub device according to the present invention will be described with reference to FIGS. 7 to 11.

도 5는 본 발명의 실시예에 따른 USB 허브 장치를 개략적으로 나타낸 도면이다. 도 5를 참조하면, USB 허브 장치(300)는 호스트 컨트롤러(100)에 접속할 수 있는 USB 포트 및 다수의 USB 저장장치(200)와 접속할 수 있는 다수의 USB 포트를 구비하며 USB 저장장치 제어부(310)를 포함한다. USB 저장장치 제어부(310)는 호스트 컨트롤러(100)와 USB 저장장치(200) 사이의 트랜잭션을 제어하여 USB 허브 장치(300)에 접속된 다수의 USB 저장장치(200)를 하나의 USB 저장장치로 인식하게 한다.5 is a view schematically showing a USB hub device according to an embodiment of the present invention. Referring to FIG. 5, the USB hub device 300 includes a USB port that can be connected to the host controller 100 and a plurality of USB ports that can be connected to the plurality of USB storage devices 200. ). The USB storage controller 310 controls a transaction between the host controller 100 and the USB storage device 200 to convert the plurality of USB storage devices 200 connected to the USB hub device 300 into one USB storage device. Make it aware.

한편 USB 저장장치(200)는 USB 통신을 위한 USB 포트, USB 컨트롤러(205) 및 저장수단(210)을 포함한다. 일례로 USB 저장장치(200)는 저장수단이 플래시 메모리인 USB 플래시 드라이브(USB Flash Drive)일 수 있다.Meanwhile, the USB storage device 200 includes a USB port for USB communication, a USB controller 205, and a storage means 210. For example, the USB storage device 200 may be a USB flash drive whose storage means is a flash memory.

도 6은 본 발명의 실시예에 따른 USB 저장장치 제어부의 세부 구성을 보여주는 블록도이다. 도 6을 참조하면, USB 저장장치 제어부(310)는 디스크립션 통합부(311), 접근 제어 관리부(313), 주소 관리부(315) 및 트랜잭션 검사부(317)를 포함한다.6 is a block diagram illustrating a detailed configuration of a USB storage controller according to an embodiment of the present invention. Referring to FIG. 6, the USB storage controller 310 includes a description integration unit 311, an access control manager 313, an address manager 315, and a transaction checker 317.

디스크립션 통합부(311)는 USB 허브 장치(300)에 접속된 모든 USB 저장장치(200)의 디스크립션 정보를 수집한 후 하나의 디스크립션 정보로 가공하여 호스 트 컨트롤러(100)로 전송함으로써 호스트 컨트롤러(100)가 USB 허브 장치(300)에 접속된 모든 USB 저장장치(200)를 하나의 USB 저장장치로 인식하도록 한다.The description integration unit 311 collects description information of all the USB storage devices 200 connected to the USB hub device 300, processes the description information into one description information, and transmits the description information to the host controller 100. ) To recognize all the USB storage device 200 connected to the USB hub device 300 as one USB storage device.

구체적으로 살펴보면, USB 허브 장치(300)가 호스트 컨트롤러(100)에 연결된 경우 호스트 컨트롤러(100)는 USB 저장장치(200)에 대한 디스크립션 정보를 요청하게 된다. 이에 따라 디스크립션 통합부(311)가 USB 허브 장치(300)에 접속된 모든 USB 저장장치(200)들로부터 디스크립션 정보를 전송받은 후, 전송받은 디스크립션 정보에서 각 USB 저장장치(200)의 저장 용량 정보를 추출하여 각 저장 용량을 합산한다. 합산된 전체 USB 저장장치(200)의 저장 용량은 USB 허브 장치(300)의 디스크립션 정보로 가공되어 호스트 컨트롤러(100)로 전송된다. 따라서 호스트 컨트롤러(100)는 USB 허브 장치(300)에 접속된 모든 USB 저장장치(200)를 하나의 USB 저장장치로 인식하게 된다.In detail, when the USB hub device 300 is connected to the host controller 100, the host controller 100 requests description information about the USB storage device 200. Accordingly, after the description integration unit 311 receives description information from all the USB storage devices 200 connected to the USB hub device 300, the storage capacity information of each USB storage device 200 from the received description information. Extract and sum each storage capacity. The total storage capacity of the total USB storage device 200 is processed into description information of the USB hub device 300 and transmitted to the host controller 100. Therefore, the host controller 100 recognizes all the USB storage devices 200 connected to the USB hub device 300 as one USB storage device.

한편 USB 허브 장치(300)에 접속된 USB 저장장치(200) 중에서 어느 하나가 접속 해제되거나 USB 허브 장치(300)에 새로운 USB 저장장치(200)가 접속된 경우, 디스크립션 통합부(311)는 USB 허브 장치(300)에 현재 접속되어 있는 USB 저장장치(200)의 전체 저장 용량 변화를 반영한 새로운 디스크립션 정보를 호스트 컨트롤러(100)로 전송하여 USB 허브 장치(300)에 접속된 USB 저장장치(200)의 전체 저장 용량을 갱신한다.On the other hand, if any one of the USB storage device 200 connected to the USB hub device 300 is disconnected or the new USB storage device 200 is connected to the USB hub device 300, the description integration unit 311 is USB The USB storage device 200 connected to the USB hub device 300 by transmitting new description information reflecting the change in the total storage capacity of the USB storage device 200 currently connected to the hub device 300 to the host controller 100. To update the total storage capacity.

주소 관리부(315)는 USB 허브 장치(300)에 접속된 USB 저장장치(200)에 순차적으로 로컬 주소를 지정한다. 호스트 컨트롤러(100)가 USB 허브 장치(300)에 전송한 데이터 패킷은 상위 주소의 USB 저장장치(200)부터 순차적으로 저장된다. 또한 주소 관리부는 USB 허브 장치(300)에 접속되어 있던 USB 저장장치(200)가 접속 해제된 경우 해당 USB 저장장치(200)의 로컬 주소를 폐기한다. USB 허브 장치(300)에 새로운 USB 저장장치(200)가 접속된 경우, 주소 관리부(315)는 해당 USB 저장장치(200)에 새로운 로컬 주소를 지정한다.The address manager 315 sequentially assigns local addresses to the USB storage device 200 connected to the USB hub device 300. The data packet transmitted from the host controller 100 to the USB hub device 300 is sequentially stored from the USB storage device 200 of the upper address. In addition, the address manager discards the local address of the USB storage device 200 when the USB storage device 200 connected to the USB hub device 300 is disconnected. When a new USB storage device 200 is connected to the USB hub device 300, the address manager 315 assigns a new local address to the corresponding USB storage device 200.

접근 제어 관리부(313)는 USB 허브 장치(300)와 호스트 컨트롤러(100)의 연결 중에 새로운 USB 저장장치(200)가 USB 허브 장치(300)에 접속되거나, USB 허브 장치(300)에 접속된 USB 저장장치(200)가 접속 해제된 경우 발생하는 전체 USB 저장장치의 저장 용량 변화 및 USB 저장장치의 주소 변화를 관리한다.The access control manager 313 is connected to the USB hub device 300 or the new USB storage device 200 is connected to the USB hub device 300 during the connection between the USB hub device 300 and the host controller 100. The storage device 200 manages a change in the storage capacity of the entire USB storage device and a change in the address of the USB storage device, which are generated when the storage device 200 is disconnected.

구체적으로 살펴보면, 호스트 컨트롤러(100)에 연결중인 USB 허브 장치(300)에 접속되어 있던 USB 저장장치(200)가 접속 해제된 경우, 접근 제어 관리부(313)는 디스크립션 통합부(311)를 통해 전체 USB 저장장치의 저장 용량을 갱신하도록 하는 한편 주소 관리부(315)를 통하여 접속 해제된 USB 저장장치의 로컬 주소를 폐기하도록 한다. 또한 접속 해제된 USB 저장장치에 분리 저장된 데이터가 있는 경우 해당 데이터의 파일 로그를 검사하여 접속 해제된 USB 저장장치의 이전 주소의 USB 저장장치에 저장된 마지막 파일 또는 다음 주소의 USB 저장장치에 저장된 첫 번째 파일에 대한 접근을 금지한다.Specifically, when the USB storage device 200 connected to the USB hub device 300 connected to the host controller 100 is disconnected, the access control management unit 313 may be configured as a whole through the description integration unit 311. The storage capacity of the USB storage device may be updated, and the local address of the disconnected USB storage device may be discarded through the address manager 315. In addition, if there is any data stored in the disconnected USB storage device, the file log of the data is examined and the first file stored in the USB storage device at the previous address of the disconnected USB storage device or the first stored in the USB storage device at the next address. Prohibit access to the file.

한편 호스트 컨트롤러(100)에 연결중인 USB 허브 장치(300)에 새로운 USB 저장장치(200)가 접속된 경우, 접근 제어 관리부(313)는 해당 USB 저장장치의 디스크립션 정보를 디스크립션 통합부(311)에 전송하여 USB 허브 장치(300)에 접속된 전체 USB 저장장치의 저장 용량을 갱신하도록 한다. 또한 주소 관리부(315)를 통해 새로 접속된 USB 저장장치에 새로운 로컬 주소를 지정하도록 한다.On the other hand, when the new USB storage device 200 is connected to the USB hub device 300 connected to the host controller 100, the access control manager 313 transfers the description information of the corresponding USB storage device to the description integration unit 311. By transmitting to update the storage capacity of the entire USB storage device connected to the USB hub device (300). In addition, the address manager 315 assigns a new local address to the newly connected USB storage device.

트랜잭션 검사부(317)는 토큰 패킷 및 상태 패킷을 제어한다. 구체적으로, 트랜잭션 검사부(317)는 호스트 컨트롤러(100)로부터 IN 패킷과 OUT 패킷을 수신하면 주소 관리부(315)에 신호를 전송하여, 해당 패킷의 주소를 USB 허브 장치(300)에 접속된 USB 저장장치(200)의 로컬 주소로 변경하도록 한다. 따라서 호스트는 해당 USB 저장장치에 데이터를 저장하거나(Send), 해당 USB 저장장치에 저장된 데이터를 읽을 수 있다(Read).The transaction checker 317 controls the token packet and the status packet. In detail, when the transaction checker 317 receives the IN packet and the OUT packet from the host controller 100, the transaction checker 317 transmits a signal to the address manager 315, and stores the address of the packet in the USB storage device connected to the USB hub device 300. To the local address of the device 200. Therefore, the host may store data in the corresponding USB storage device (Send) or read data stored in the USB storage device (Read).

한편 호스트에서 전송한 데이터가 USB 저장장치의 저장 용량을 초과하는 경우 해당 USB 저장장치(200)의 USB 컨트롤러(205)는 NAK 패킷 또는 STALL 패킷을 호스트 컨트롤러(100)에 전송하여 해당 파일의 전송을 취소하게 된다. 트랜잭션 검사부(317)는 이 경우 해당 USB 저장장치(200)의 USB 컨트롤러(205)가 발행한 NAK 패킷 또는 STALL 패킷이 호스트 컨트롤러(100)로 전송되지 못하도록 하는 한편, 주소 관리부(315)를 통해 다음 주소의 USB 저장장치로 데이터 패킷이 전송될 수 있도록 로컬 주소를 변경하도록 한다. 이 경우 주소 관리부(315)는 호스트에서 전송한 데이터가 분리 저장되었음을 알리기 위한 파일 로그를 생성한다.On the other hand, if the data transmitted from the host exceeds the storage capacity of the USB storage device, the USB controller 205 of the USB storage device 200 transmits a NAK packet or STALL packet to the host controller 100 to transfer the file. You will cancel. In this case, the transaction checker 317 prevents a NAK packet or a STALL packet issued by the USB controller 205 of the corresponding USB storage device 200 from being transmitted to the host controller 100, and then through the address manager 315. Change the local address so that data packets can be sent to the USB storage device at the address. In this case, the address manager 315 generates a file log for notifying that the data transmitted from the host is separated and stored.

또한 호스트가 2개 이상의 USB 저장장치(200)에 분리 저장된 데이터의 읽기를 진행하는 경우, 해당 USB 저장장치(200)의 USB 컨트롤러(205)가 NAK 패킷 또는 STALL 패킷을 호스트 컨트롤러(100)로 전송하여 해당 데이터의 읽기 작업을 취소하게 된다. 트랜잭션 검사부(317)는 이 경우 해당 USB 저장장치(200)의 USB 컨트롤러(205)가 발행한 NAK 패킷 또는 STALL 패킷이 호스트 컨트롤러(100)로 전송되지 못하도록 하는 한편, 주소 관리부(315)를 통해 현재 읽기 작업이 진행중인 USB 저장장치의 로컬 주소를 순차적으로 다음 로컬 주소로 변경하여 읽기 작업이 수행되도록 한다. 트랜잭션 검사부(317)가 ACK 패킷이 발행된 것을 인지하면 읽기 작업이 완료된 것으로 간주한다.In addition, when the host proceeds to read data separately stored in two or more USB storage devices 200, the USB controller 205 of the corresponding USB storage device 200 transmits a NAK packet or a STALL packet to the host controller 100. Will cancel the read operation of the data. In this case, the transaction checking unit 317 prevents the NAK packet or STALL packet issued by the USB controller 205 of the corresponding USB storage device 200 from being transmitted to the host controller 100, and is currently transmitted through the address manager 315. The read operation is performed by sequentially changing the local address of the USB storage device that is being read to the next local address. When the transaction check unit 317 recognizes that the ACK packet is issued, it is considered that the read operation is completed.

이하 도 7 내지 도 11을 참조하여, 본 발명의 바람직한 실시예에 따른 USB 저장장치 통합 관리 방법을 상세히 설명한다. 도 7은 본 발명의 바람직한 제1실시예에 따른 USB 저장장치 통합 관리 방법을 나타낸 순서도이다. 도 7을 참조하면, 먼저 본 발명에 따른 USB 허브 장치가 호스트 컨트롤러에 연결되면, 상기 호스트 컨트롤러가 상기 USB 허브 장치에 접속된 USB 저장장치의 디스크립션 정보를 요청한다(S701). 단계 S703에서 상기 USB 허브 장치는 상기 USB 허브 장치에 접속된 USB 저장장치의 디스크립션 정보를 취득할 수 있는지를 판단한다. 판단 결과 상기 디스크립션 정보를 취득할 수 있는 경우, 상기 USB 허브 장치에 접속된 모든 USB 저장장치로부터 상기 디스크립션 정보를 전송받아(S705), 각각의 디스크립션 정보에서 저장 용량 정보를 추출한다(S707).7 to 11, the USB storage device integrated management method according to an embodiment of the present invention will be described in detail. 7 is a flowchart illustrating a method for integrated USB storage device management according to a first embodiment of the present invention. Referring to FIG. 7, when a USB hub device according to the present invention is connected to a host controller, the host controller requests description information of the USB storage device connected to the USB hub device (S701). In step S703, the USB hub device determines whether description information of the USB storage device connected to the USB hub device can be acquired. If it is determined that the description information can be obtained, the description information is received from all USB storage devices connected to the USB hub device (S705), and the storage capacity information is extracted from the description information (S707).

이후 단계 S709에서 상기 추출된 각 USB 저장장치의 용량 정보를 합산한 후, 상기 USB 허브 장치를 위한 하나의 새로운 디스크립션 정보를 생성한다(S711). 단계 S713에서 상기 새로운 디스크립션 정보를 상기 호스트 컨트롤러로 전송하여 하나의 USB 저장장치 주소를 획득한다. 이에 따라 상기 호스트 컨트롤러는 상기 USB 허브 장치에 접속된 다수의 USB 저장장치를 하나의 USB 저장장치로 인식하게 된다.Thereafter, in step S709, capacity information of each extracted USB storage device is added, and one new description information for the USB hub device is generated (S711). In step S713, the new description information is transmitted to the host controller to obtain one USB storage device address. Accordingly, the host controller recognizes a plurality of USB storage devices connected to the USB hub device as one USB storage device.

한편 단계 S715에서 상기 USB 허브 장치는 상기 각각의 디스크립션 정보를 통해 상기 USB 허브 장치에 접속된 USB 저장장치의 개수를 파악한 후, 상기 USB 허브 장치에 접속된 USB 저장장치에 순차적으로 로컬 주소를 지정한다(S717). Meanwhile, in step S715, the USB hub device determines the number of USB storage devices connected to the USB hub device through the description information, and sequentially assigns local addresses to the USB storage devices connected to the USB hub device. (S717).

도 8은 본 발명의 바람직한 제2실시예에 따른 USB 저장장치 통합 관리 방법을 나타낸 순서도이다. 도 8을 참조하면, 먼저 본 발명에 따른 USB 허브 장치와 호스트 컨트롤러의 연결 중에 상기 USB 허브 장치가 상기 USB 허브 장치에 접속되어 있던 USB 저장장치가 접속 해제되는 것을 감지한다(S801). 이후 상기 USB 허브 장치는 해당 로컬 주소 사용 여부를 판단하고(S803), 상기 판단 결과 해당 로컬 주소가 사용된 경우 단계 S805로 진행하고, 상기 판단 결과 로컬 주소가 사용되지 않은 경우 단계 S815로 진행하여 해당 로컬 주소를 폐기한다.8 is a flowchart illustrating a USB storage device integrated management method according to a second embodiment of the present invention. Referring to FIG. 8, first, during connection of a USB hub device and a host controller according to the present invention, it is detected that the USB storage device connected to the USB hub device is disconnected (S801). Thereafter, the USB hub device determines whether the corresponding local address is used (S803). If the local address is used as a result of the determination, the process proceeds to step S805. If the local address is not used, the process proceeds to step S815. Discard the local address.

단계 S805에서 상기 USB 허브 장치는 상기 접속 해제된 USB 저장장치에 분리 저장된 데이터가 있는지를 판단하고, 상기 판단 결과 분리 저장된 데이터가 있는 경우 단계 S807로 진행한다. 상기 판단 결과 분리 저장된 데이터가 없는 경우 단계 S815로 진행하여 해당 로컬 주소를 폐기한다. 단계 S807에서 상기 USB 허브 장치는 상기 분리 저장된 데이터의 파일 로그를 검사하여, 상기 분리 저장된 데이터가 상기 접속 해제된 USB 저장장치의 다음 주소의 USB 저장장치에 함께 저장된 데이터인지를 판단한다(S809).In step S805, the USB hub device determines whether there is data stored separately in the disconnected USB storage device, and if there is data stored separately, the process proceeds to step S807. If there is no separate stored data as a result of the determination, the flow advances to step S815 to discard the local address. In step S807, the USB hub device examines the file log of the separately stored data, and determines whether the separately stored data is data stored together with the USB storage device of the next address of the disconnected USB storage device (S809).

상기 판단 결과 상기 분리 저장된 데이터가 상기 접속 해제된 USB 저장장치의 다음 주소의 USB 저장장치에 함께 저장된 경우, 단계 S811로 진행하고 상기 판 단 결과 상기 분리 저장된 데이터가 상기 접속 해제된 USB 저장장치의 다음 주소의 USB 저장장치에 함께 저장된 것이 아닌 경우, 단계 S813으로 진행한다. 단계 S811에서 상기 USB 허브 장치는 상기 접속 해제된 USB 저장장치의 다음 주소의 USB 저장장치에 저장된 첫 번째 파일에 대한 접근을 금지한다. 단계 S813에서 상기 USB 허브 장치는 상기 접속 해제된 USB 저장장치의 이전 주소의 USB 저장장치에 저장된 마지막 파일에 대한 접근을 금지한다.If the separated data is stored together in the USB storage device of the next address of the disconnected USB storage device, the determination proceeds to step S811 and as a result of the determination, the separated stored data is next to the disconnected USB storage device. If the address is not stored together in the USB storage device, the flow proceeds to step S813. In step S811, the USB hub device prohibits access to the first file stored in the USB storage device at the next address of the disconnected USB storage device. In step S813, the USB hub device prohibits access to the last file stored in the USB storage device of the previous address of the disconnected USB storage device.

한편 도시하지 않았지만, 상기 USB 허브 장치는 USB 저장장치의 접속 해제에 따른 전체 저장 용량의 변화를 동적으로 갱신하여 상기 호스트 컨트롤러로 전송한다.Although not shown, the USB hub device dynamically updates the change in the total storage capacity according to the disconnection of the USB storage device and transmits it to the host controller.

도 9는 본 발명의 바람직한 제3실시예에 따른 USB 저장장치 통합 관리 방법을 나타낸 순서도이다. 도 9를 참조하면, 단계 S901에서 본 발명에 따른 USB 허브 장치와 호스트 컨트롤러의 연결 중에 상기 USB 허브 장치가 상기 USB 허브 장치에 새로운 USB 저장장치가 접속되는 것을 감지한다. 이후 상기 USB 허브 장치는 상기 새로 접속된 USB 저장장치의 디스크립션 정보를 획득할 수 있는지를 판단하고(S903), 상기 판단 결과 상기 디스크립션 정보를 획득할 수 있는 경우 단계 S905로 진행하여 상기 새로운 USB 저장장치로부터 디스크립션 정보를 전송받는다. 단계 S907에서 상기 USB 허브 장치는 상기 새로운 USB 저장장치로부터 전송받은 디스크립션 정보에서 저장 용량 정보를 추출한다.9 is a flowchart illustrating a method for integrated USB storage device management according to a third embodiment of the present invention. Referring to FIG. 9, in step S901, the USB hub device detects that a new USB storage device is connected to the USB hub device while the USB hub device and the host controller are connected. Thereafter, the USB hub device determines whether it is possible to obtain description information of the newly connected USB storage device (S903), and if it is possible to obtain the description information as a result of the determination, the process proceeds to step S905 and the new USB storage device. The description information is transmitted from. In step S907, the USB hub device extracts storage capacity information from the description information received from the new USB storage device.

이후 상기 USB 허브 장치는 상기 USB 허브 장치에 원래 접속되어 있던 USB 저장장치의 저장 용량에 상기 새로 접속된 USB 저장장치의 저장 용량을 합산한 후(S909), 상기 USB 허브 장치를 위한 하나의 새로운 디스크립션 정보를 생성한다(S911). 단계 S913에서 상기 새로운 디스크립션 정보를 상기 호스트 컨트롤러로 전송하여 상기 USB 허브 장치의 저장 용량을 갱신한다. 한편 단계 S915에서 상기 USB 허브 장치는 상기 새로 접속된 USB 저장장치에 로컬 주소를 지정한다.Thereafter, the USB hub device adds the storage capacity of the newly connected USB storage device to the storage capacity of the USB storage device originally connected to the USB hub device (S909), and then one new description for the USB hub device. Generates information (S911). In step S913, the new description information is transmitted to the host controller to update the storage capacity of the USB hub device. Meanwhile, in step S915, the USB hub device assigns a local address to the newly connected USB storage device.

도 10은 본 발명의 바람직한 제4실시예에 따른 USB 저장장치 통합 관리 방법을 나타낸 순서도이다. 도 10을 참조하면, 단계 S1001에서 본 발명에 따른 USB 허브 장치가 호스트 컨트롤러로부터 전송된 데이터 패킷을 상기 USB 허브 장치에 접속된 USB 저장장치에 전송하여 저장한다. 이때 상기 데이터 패킷은 상기 USB 저장장치의 로컬 주소에 따라 순차적으로 저장되도록 하는 것이 바람직하다. 이후 상기 USB 허브 장치는 상기 데이터 패킷이 저장되고 있는 USB 저장장치로부터 NAK 패킷 또는 STALL 패킷이 발행되었는지 여부를 판단하고(S1003), 상기 판단 결과 NAK 패킷 또는 STALL 패킷이 발행된 경우 단계 S1005로 진행하여 상기 NAK 패킷 또는 STALL 패킷이 상기 호스트 컨트롤러로 전송되지 못하게 보류시킨다.10 is a flowchart illustrating a method for integrated USB storage device management according to a fourth embodiment of the present invention. Referring to FIG. 10, in step S1001, the USB hub device according to the present invention transmits and stores a data packet transmitted from a host controller to a USB storage device connected to the USB hub device. In this case, the data packet is preferably stored sequentially according to the local address of the USB storage device. Thereafter, the USB hub device determines whether a NAK packet or STALL packet is issued from the USB storage device storing the data packet (S1003). If the NAK packet or STALL packet is issued as a result of the determination, the process proceeds to step S1005. Suspend the NAK packet or STALL packet from being sent to the host controller.

단계 S1007에서 상기 USB 허브 장치는 상기 USB 저장장치에 사용 가능한 저장 공간이 남아 있는지를 판단하고, 상기 판단 결과 상기 USB 저장장치에 사용 가능한 저장 공간이 없는 경우, 단계 S1009로 진행하여 상기 USB 저장장치 다음 주소의 USB 저장장치로 데이터 패킷이 전송될 수 있도록 로컬 주소를 변경한다. 이후 상기 USB 허브 장치는 상기 NAK 패킷 또는 STALL 패킷을 취소하고(S1011), 상기 변 경된 USB 저장장치에 의하여 ACK 패킷이 발행되었는지를 판단한다(S1013). 상기 판단 결과 ACK 패킷이 발행된 경우, 단계 S1015로 진행하여 상기 데이터가 분리 저장되었음을 알리기 위한 파일 로그를 생성하여 저장한다. 한편 상기 판단 결과 ACK 패킷이 발행되지 않은 경우, 단계 S1003으로 진행한다.In step S1007, the USB hub device determines whether there is available storage space in the USB storage device. If there is no storage space available in the USB storage device as a result of the determination, the process proceeds to step S1009 to the next USB storage device. Change the local address so that data packets can be sent to the USB storage device at the address. Thereafter, the USB hub device cancels the NAK packet or STALL packet (S1011), and determines whether an ACK packet is issued by the changed USB storage device (S1013). When the ACK packet is issued as a result of the determination, the flow proceeds to step S1015 to generate and store a file log for notifying that the data has been separately stored. On the other hand, if no ACK packet is issued as a result of the determination, the flow proceeds to step S1003.

도 11은 본 발명의 바람직한 제5실시예에 따른 USB 저장장치 통합 관리 방법을 나타낸 순서도이다. 도 11을 참조하면, 단계 S1101에서 본 발명에 따른 USB 허브 장치가 상기 USB 허브 장치에 접속된 USB 저장장치로부터 전송된 데이터 패킷을 호스트 컨트롤러로 전송하여 호스트에서 데이터 읽기가 수행된다. 이후 상기 USB 허브 장치가 상기 USB 저장장치에 의하여 NAK 패킷 또는 STALL 패킷이 발행되었는지를 판단하고(S1103), 상기 판단 결과 NAK 패킷 또는 STALL 패킷이 발행된 경우 단계 S1105로 진행하여 상기 NAK 패킷 또는 STALL 패킷이 상기 호스트 컨트롤러로 전송되지 못하게 보류시킨다.11 is a flowchart illustrating a method for integrated USB storage device management according to a fifth embodiment of the present invention. Referring to FIG. 11, in step S1101, a USB hub device according to the present invention transmits a data packet transmitted from a USB storage device connected to the USB hub device to a host controller to read data from the host. Thereafter, the USB hub device determines whether a NAK packet or STALL packet is issued by the USB storage device (S1103). If the NAK packet or STALL packet is issued as a result of the determination, the process proceeds to step S1105 and the NAK packet or STALL packet. It suspends the transfer to the host controller.

단계 S1107에서 상기 USB 허브 장치는 상기 USB 저장장치의 저장 공간이 모두 사용되고 있는지를 판단하고, 상기 판단 결과 상기 USB 저장장치의 저장 공간이 모두 사용되고 있는 경우, 상기 데이터의 파일 로그를 검사하여 이전 또는 다음 로컬 주소의 USB 저장장치 중 어느 하나를 선택한다(S1109). 단계 S1111에서 상기 USB 허브 장치는 상기 데이터 패킷의 로컬 주소를 상기 선택된 USB 저장장치의 로컬 주소로 변경한다. 이후 상기 USB 허브 장치는 상기 NAK 패킷 또는 STALL 패킷을 취소하고(S1113), 상기 선택된 USB 저장장치에 의하여 ACK 패킷이 발행되었는지를 판단한다(S1115). 상기 판단 결과 ACK 패킷이 발행된 경우, 호스트에서 읽기 작업이 완료된 것으로 간주하고, 상기 판단 결과 ACK 패킷이 발행되지 않은 경우 단계 S1103으로 진행한다.In step S1107, the USB hub device determines whether the storage space of the USB storage device is used up, and if the storage space of the USB storage device is used up as a result of the determination, examines the file log of the data before or next to it. One of the USB storage devices of the local address is selected (S1109). In step S1111, the USB hub device changes the local address of the data packet to the local address of the selected USB storage device. Thereafter, the USB hub device cancels the NAK packet or STALL packet (S1113), and determines whether an ACK packet is issued by the selected USB storage device (S1115). If the ACK packet is issued as a result of the determination, it is assumed that the read operation is completed in the host. If the ACK packet is not issued as the determination result, the process proceeds to step S1103.

이상에서, 본 발명의 상세한 설명에서는 구체적인 실시예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 상술한 실시예에 국한되어 정해져서는 안되며 후술하는 특허청구범위뿐만 아니라 이 발명의 특허청구범위와 균등한 것들에 의해 정해져야 한다.In the above description of the present invention, specific embodiments have been described, but various modifications are possible without departing from the scope of the present invention. Therefore, the scope of the present invention should not be limited to the above-described embodiments, but should be defined by the equivalents of the claims of the present invention as well as the following claims.

도 1은 호스트 컨트롤러와 USB 저장장치의 연결을 개략적으로 나타낸 도면.1 is a diagram schematically illustrating a connection between a host controller and a USB storage device.

도 2는 토큰 패킷의 구성을 보여주는 도면.2 is a diagram showing the configuration of a token packet.

도 3은 데이터 패킷의 구성을 보여주는 도면.3 shows the configuration of a data packet.

도 4는 상태 패킷의 구성을 보여주는 도면.4 shows the configuration of a status packet.

도 5는 본 발명의 실시예에 따른 USB 허브 장치를 개략적으로 나타낸 도면.5 is a schematic representation of a USB hub device according to an embodiment of the invention.

도 6은 도 5에 도시된 USB 저장장치 제어부의 세부 구성을 나타낸 도면.FIG. 6 is a diagram illustrating a detailed configuration of the USB storage controller shown in FIG. 5; FIG.

도 7은 본 발명의 바람직한 제1실시예에 따른 USB 저장장치 통합 관리 방법을 보여주는 순서도.7 is a flowchart showing a USB storage device integrated management method according to a first embodiment of the present invention.

도 8은 본 발명의 바람직한 제2실시예에 따른 USB 저장장치 통합 관리 방법을 보여주는 순서도.8 is a flowchart illustrating a method for integrated USB storage device management in accordance with a second preferred embodiment of the present invention.

도 9는 본 발명의 바람직한 제3실시예에 따른 USB 저장장치 통합 관리 방법을 보여주는 순서도.9 is a flowchart showing a method of integrated USB storage device management according to a third embodiment of the present invention.

도 10은 본 발명의 바람직한 제4실시예에 따른 USB 저장장치 통합 관리 방법을 보여주는 순서도.10 is a flowchart showing a method of integrated USB storage device management according to a fourth embodiment of the present invention.

도 11은 본 발명의 바람직한 제5실시예에 따른 USB 저장장치 통합 관리 방법을 보여주는 순서도.11 is a flowchart showing a method of managing integrated USB storage device according to a fifth embodiment of the present invention.

<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>

300 : USB 허브 장치 310 : USB 저장장치 제어부300: USB hub device 310: USB storage device control unit

311 : 디스크립션 통합부 313 : 접근 제어 관리부311: description integration unit 313: access control management unit

315 : 주소 관리부 317 : 트랜잭션 검사부315: address management unit 317: transaction inspection unit

Claims (13)

삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete USB 허브 장치를 이용하여 USB 저장장치를 통합 관리하는 방법에 있어서,In the method for integrated management of a USB storage device using a USB hub device, 상기 USB 허브 장치가 상기 USB 허브 장치에 접속되어 있던 USB 저장장치가 접속 해제되는 것을 감지하는 단계;Detecting that the USB hub device has been disconnected from the USB hub device; 상기 USB 허브 장치가 상기 접속 해제된 USB 저장장치에 분리 저장된 데이터가 존재하는지를 판단하는 단계;Determining, by the USB hub device, whether there is data stored separately in the disconnected USB storage device; 상기 판단 결과 상기 접속 해제된 USB 저장장치에 분리 저장된 데이터가 있는 경우, 상기 USB 허브 장치가 파일 로그를 검사하여 상기 분리 저장된 데이터가 상기 접속 해제된 USB 저장장치의 다음 주소의 USB 저장장치에 함께 저장된 데이터인지를 판단하는 단계;If there is data stored in the disconnected USB storage device as a result of the determination, the USB hub device examines a file log and the separated data is stored together in the USB storage device of the next address of the disconnected USB storage device. Determining whether it is data; 상기 판단 결과 상기 분리 저장된 데이터가 상기 접속 해제된 USB 저장장치의 다음 주소의 USB 저장장치에 함께 저장된 경우, 상기 접속 해제된 USB 저장장치의 다음 주소의 USB 저장장치에 저장된 첫 번째 파일에 대한 접근을 금지하는 단계; 및If the separated data is stored together in the USB storage device of the next address of the disconnected USB storage device, the access to the first file stored in the USB storage device of the next address of the disconnected USB storage device is determined. Inhibiting; And 상기 판단 결과 상기 분리 저장된 데이터가 상기 접속 해제된 USB 저장장치의 다음 주소의 USB 저장장치에 함께 저장된 것이 아닌 경우, 상기 접속 해제된 USB 저장장치의 이전 주소의 USB 저장장치에 저장된 마지막 파일에 대한 접근을 금지하는 단계를 포함하는 USB 저장장치 통합 관리 방법.If the separated data is not stored together in the USB storage device at the next address of the disconnected USB storage device, access to the last file stored in the USB storage device at the previous address of the disconnected USB storage device; Prohibiting the integrated USB storage device comprising the step of inhibiting. 청구항 8에 있어서, 상기 USB 저장장치 통합 관리 방법은,The method of claim 8, wherein the integrated USB storage device management method, 상기 USB 허브 장치가 상기 접속 해제된 USB 저장장치의 로컬 주소를 폐기하는 단계; 및Discarding, by the USB hub device, the local address of the disconnected USB storage device; And 상기 USB 허브 장치가 상기 USB 허브 장치에 접속된 USB 저장장치의 전체 저장 용량 정보를 갱신하여 호스트 컨트롤러로 전송하는 단계를 더 포함하는 USB 저장장치 통합 관리 방법.The USB hub device further comprises the step of updating the total storage capacity information of the USB storage device connected to the USB hub device and transmitting to the host controller. 삭제delete 삭제delete USB 허브 장치를 이용하여 USB 저장장치를 통합 관리하는 방법에 있어서,In the method for integrated management of a USB storage device using a USB hub device, 상기 USB 허브 장치가 호스트 컨트롤러로부터 전송된 데이터 패킷을 상기 USB 허브 장치에 접속된 USB 저장장치에 전송하여 데이터를 저장하는 단계;Transmitting, by the USB hub device, a data packet transmitted from a host controller to a USB storage device connected to the USB hub device to store data; 상기 USB 허브 장치가 상기 USB 저장장치에 의하여 NAK 패킷 또는 STALL 패킷이 발행되었는지를 판단하는 단계;Determining, by the USB hub device, whether a NAK packet or a STALL packet is issued by the USB storage device; 상기 판단 결과 NAK 패킷 또는 STALL 패킷이 발행된 경우, 상기 NAK 패킷 또는 STALL 패킷이 상기 호스트 컨트롤러로 전송되지 못하게 보류시키는 단계;If the NAK packet or STALL packet is issued as a result of the determination, suspending the NAK packet or STALL packet from being transmitted to the host controller; 상기 USB 허브 장치가 상기 USB 저장장치에 사용가능한 공간이 남아 있는지를 판단하는 단계;Determining, by the USB hub device, whether available space remains on the USB storage device; 상기 판단 결과 상기 USB 저장장치에 사용 가능한 공간이 없는 경우, 상기 USB 허브 장치가 상기 USB 저장장치 다음 주소의 USB 저장장치로 데이터 패킷이 전송될 수 있도록 로컬 주소를 변경하는 단계;Changing the local address so that the USB hub device can transmit a data packet to the USB storage device next to the USB storage device when there is no space available on the USB storage device as a result of the determination; 상기 USB 허브 장치가 상기 변경된 USB 저장장치에 의하여 ACK 패킷이 발행되었는지 여부를 판단하는 단계; 및Determining, by the USB hub device, whether an ACK packet is issued by the changed USB storage device; And 상기 판단 결과 ACK 패킷이 발행된 경우, 상기 데이터가 분리 저장되었음을 알리기 위한 파일 로그를 생성하는 단계를 포함하는 USB 저장장치 통합 관리 방법.And generating a file log for notifying that the data has been separately stored when an ACK packet is issued as a result of the determination. USB 허브 장치를 이용하여 USB 저장장치를 통합 관리하는 방법에 있어서,In the method for integrated management of a USB storage device using a USB hub device, 상기 USB 허브 장치가 상기 USB 허브 장치에 접속된 USB 저장장치로부터 전송된 데이터 패킷을 호스트 컨트롤러로 전송하여 호스트에서 데이터 읽기가 수행되는 단계;Reading data from a host by the USB hub device transmitting a data packet transmitted from a USB storage device connected to the USB hub device to a host controller; 상기 USB 허브 장치가 상기 USB 저장장치에 의하여 NAK 패킷 또는 STALL 패킷이 발행되었는지를 판단하는 단계;Determining, by the USB hub device, whether a NAK packet or a STALL packet is issued by the USB storage device; 상기 판단 결과 NAK 패킷 또는 STALL 패킷이 발행된 경우, 상기 NAK 패킷 또는 STALL 패킷이 상기 호스트 컨트롤러로 전송되지 못하게 보류시키는 단계;If the NAK packet or STALL packet is issued as a result of the determination, suspending the NAK packet or STALL packet from being transmitted to the host controller; 상기 USB 허브 장치가 상기 USB 저장장치의 저장 공간이 모두 사용되고 있는지를 판단하는 단계;Determining, by the USB hub device, whether all of the storage space of the USB storage device is used up; 상기 판단 결과 상기 USB 저장장치의 저장 공간이 모두 사용되고 있는 경우, 상기 데이터의 파일 로그를 검사하여 이전 또는 다음 로컬 주소의 USB 저장장치 중 어느 하나를 선택하는 단계; 및If the storage space of the USB storage device is used up as a result of the determination, checking a file log of the data and selecting one of the USB storage devices at the previous or next local address; And 상기 USB 허브 장치가 상기 데이터 패킷의 로컬 주소를 상기 선택된 USB 저장장치의 로컬 주소로 변경하는 단계를 포함하는 USB 저장장치 통합 관리 방법.And changing, by the USB hub device, a local address of the data packet to a local address of the selected USB storage device.
KR1020080033272A 2008-04-10 2008-04-10 USB Hub Device and Method for Intergration Management of USB Storages Using the Same KR100937715B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080033272A KR100937715B1 (en) 2008-04-10 2008-04-10 USB Hub Device and Method for Intergration Management of USB Storages Using the Same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080033272A KR100937715B1 (en) 2008-04-10 2008-04-10 USB Hub Device and Method for Intergration Management of USB Storages Using the Same

Publications (2)

Publication Number Publication Date
KR20090107799A KR20090107799A (en) 2009-10-14
KR100937715B1 true KR100937715B1 (en) 2010-01-20

Family

ID=41551248

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080033272A KR100937715B1 (en) 2008-04-10 2008-04-10 USB Hub Device and Method for Intergration Management of USB Storages Using the Same

Country Status (1)

Country Link
KR (1) KR100937715B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070082406A (en) * 2006-02-16 2007-08-21 주식회사 엠트론 Hard disk drive using several flash memory cards
KR20080075644A (en) * 2007-02-13 2008-08-19 김기정 Method for usb mass storage unification, usb mass storage unification module and usb mass storage hub device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070082406A (en) * 2006-02-16 2007-08-21 주식회사 엠트론 Hard disk drive using several flash memory cards
KR20080075644A (en) * 2007-02-13 2008-08-19 김기정 Method for usb mass storage unification, usb mass storage unification module and usb mass storage hub device

Also Published As

Publication number Publication date
KR20090107799A (en) 2009-10-14

Similar Documents

Publication Publication Date Title
JP4676378B2 (en) Data storage device and data storage method
JP5102915B2 (en) Storage apparatus and data verification method thereof
KR101196547B1 (en) A method for deterministic sas discovery and configuration
KR100781926B1 (en) Computer system and control method of the same
TW201118877A (en) Flash memory device, data storage system, and operation method of a data storage system
CN103793347B (en) The method and structure of the SAS expander of the routing property of its port of self-configuring
JP2007199975A (en) Data-processing system and data-processing method
KR101654807B1 (en) Data storage device and method for operating thereof
JP2003242470A (en) External connecting device and host device
WO2013153577A1 (en) Data transfer method and storage system adopting data transfer method
JP4178809B2 (en) Externally connected device and host device
CN112765055B (en) Control unit of storage device
CN112764669B (en) Hardware accelerator
JP2005165444A (en) Disk array device and method for controlling it
TW201229770A (en) Operation method for a computer system
JP4575410B2 (en) Semiconductor memory device and operation method thereof
JP2008532144A (en) Method for sending extended command to USB device and its protocol
JP4394533B2 (en) Disk array system
JP2019204463A (en) Storage system and control method therefor
KR100937715B1 (en) USB Hub Device and Method for Intergration Management of USB Storages Using the Same
WO2014057518A1 (en) Storage apparatus and data processing method
JP2012504788A (en) Storage device and data guarantee method
EP3999972B1 (en) An apparatus and method for processing flush requests within a packet network
JP7179489B2 (en) Storage system and its control method, program, and storage control system
US20050262297A1 (en) Disk drive connected to host system via memory interface circuit, and interface connecting method

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130111

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140110

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20150112

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160726

Year of fee payment: 7

R401 Registration of restoration
LAPS Lapse due to unpaid annual fee