KR20060094494A - 컴퓨터 시스템 및 그 제어 방법 - Google Patents

컴퓨터 시스템 및 그 제어 방법 Download PDF

Info

Publication number
KR20060094494A
KR20060094494A KR1020060018149A KR20060018149A KR20060094494A KR 20060094494 A KR20060094494 A KR 20060094494A KR 1020060018149 A KR1020060018149 A KR 1020060018149A KR 20060018149 A KR20060018149 A KR 20060018149A KR 20060094494 A KR20060094494 A KR 20060094494A
Authority
KR
South Korea
Prior art keywords
scsi command
predetermined
cbw
information processing
scsi
Prior art date
Application number
KR1020060018149A
Other languages
English (en)
Other versions
KR100781926B1 (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
Application filed by 엔이씨 일렉트로닉스 가부시키가이샤 filed Critical 엔이씨 일렉트로닉스 가부시키가이샤
Publication of KR20060094494A publication Critical patent/KR20060094494A/ko
Application granted granted Critical
Publication of KR100781926B1 publication Critical patent/KR100781926B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01HELECTRIC SWITCHES; RELAYS; SELECTORS; EMERGENCY PROTECTIVE DEVICES
    • H01H23/00Tumbler or rocker switches, i.e. switches characterised by being operated by rocking an operating member in the form of a rocker button
    • H01H23/02Details
    • H01H23/12Movable parts; Contacts mounted thereon
    • H01H23/16Driving mechanisms
    • H01H23/20Driving mechanisms having snap action
    • H01H23/205Driving mechanisms having snap action using a compression spring between tumbler and an articulated contact plate
    • 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/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • 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/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01HELECTRIC SWITCHES; RELAYS; SELECTORS; EMERGENCY PROTECTIVE DEVICES
    • H01H23/00Tumbler or rocker switches, i.e. switches characterised by being operated by rocking an operating member in the form of a rocker button
    • H01H23/02Details
    • H01H23/12Movable parts; Contacts mounted thereon
    • H01H23/14Tumblers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Information Transfer Systems (AREA)
  • Bus Control (AREA)

Abstract

컴퓨터 시스템은, SCSI (Small Computer System Interface) 명령을 CBW (Command Block Wrapper) 에 통합시키고, USB (Universal Serial Bus) 프로토콜에 기초하여 CBW 를 송신하도록 구성된 정보 프로세싱 장치; 및 정보 프로세싱 장치로부터 송신된 CBW 를 수신하고, SCSI 명령이 소정의 SCSI 명령인 경우 GPIO (General Purpose Input/Output) 인터페이스의 상태를 나타내는 소정 레지스터의 값을 정보 프로세싱 장치로 송신하도록 구성된 주변 장치를 포함한다. 정보 프로세싱 장치는 애플리케이션 프로그램에 기초하여 SCSI 명령을 내릴 수도 있다. 주변 장치는 SCSI 명령이 소정의 SCSI 명령이 아닌 경우 SCSI 명령에 대응하는 프로세스를 수행한다.
컴퓨터 시스템, 애플리케이션 프로그램, USB 프로토콜, SCSI 명령

Description

컴퓨터 시스템 및 그 제어 방법 {COMPUTER SYSTEM AND CONTROL METHOD OF THE SAME}
도 1 은 본 발명의 컴퓨터 시스템을 나타내는 개략도.
도 2 는 본 발명의 컴퓨터 시스템의 구성을 나타내는 블록도.
도 3 은 SCSI 밴더 명령의 포맷을 나타내는 도면.
도 4 는 CBW 의 포맷을 나타내는 도면.
도 5 는 실제 CBW 의 예를 나타내는 도면.
도 6 은 정보 프로세싱 장치와 외부 주변 디바이스 사이의 통신에서 본 발명의 컴퓨터 시스템의 동작을 나타내는 흐름도.
도 7 은 CSW 포맷을 나타내는 도면.
도 8 은 본 발명의 컴퓨터 시스템의 세부 동작을 나타내는 흐름도.
도 9 는 애플리케이션 프로그램에 의해 실행되는 프로세스의 예를 나타내는 흐름도.
※도면의 주요부분에 대한 부호의 설명
10 : 정보 프로세싱 장치 11, 23 : 메모리
12, 22 : CPU 13, 21 : USB 인터페이스
14 : 애플리케이션 프로그램 15 : 표준 디바이스 드라이버
24 : 레지스터 25 : GPIO 인터페이스
26 : IDE 인터페이스 27 : SCSI 프로세싱 프로그램
28 : 버튼 스위치 30 : IDE 디바이스
1. 발명의 기술분야
본 발명은 정보 프로세싱 장치 및 주변 디바이스를 갖는 컴퓨터 시스템 및 그 제어 방법에 관한 것이다.
2. 관련 기술의 설명
종래에는, 개인용 컴퓨터로부터 외부 주변 디바이스로 USB (Universal Serial Bus) 를 통해 데이터의 백업이 수행되는 경우, 개인용 컴퓨터는 USB 프로토콜의 인터럽션 전달을 이용하고, 개인용 컴퓨터에 의한 주기적 폴링 (polling) 을 통해 일정 간격으로 외부 주변 디바이스의 범용 입/출력 (GPIO) 값을 판독한다.
그러나, 개인용 컴퓨터가 변경되거나 또는 운영 시스템이 변경되는 경우, 주변 디바이스용 디바이스 드라이버가 다시 설치되어야만 한다. 이러한 작업은, 최종 사용자가 백업을 신속하게 수행할 수 없으므로 최종 사용자에게는 성가신 일이다. 또한, 개발시에는 애플리케이션 프로그램뿐만 아니라 디바이스 드라이버도 개발하는 것이 요구된다.
제 1 종래 예로서 일본 공개 특허 공보 (JP-P-2004-164362A) 에는 버스 인터 페이스를 통해 휴대용 스토리지 디바이스에 접속되고 그 휴대용 스토리지 디바이스와 상이한 내장형 스토리지 디바이스를 갖는 백업 디바이스가 개시되어 있다. 이 백업 디바이스는 제 1 백업 제어기와 제 2 백업 제어기를 포함한다. 제 1 백업 제어기는 외부 백업 설정 요청을 수신하고 백업 폴더를 준비하며 그 백업 폴더를 휴대용 스토리지 디바이스에 기록한다. 백업 폴더가 준비되는 경우, 제 2 백업 제어기는 스토리지 디바이스를 백업 송신지로, 휴대용 스토리지 디바이스를 백업 수신지로 특정하는 고유 식별 번호를 포함하는 식별 파일을 준비하고, 그 식별 파일을 백업 송신지의 스토리지 디바이스 및 백업 수신지의 휴대용 스토리지 디바이스에 기록한다.
또한, 제 2 종래 예로서 일본 공개 특허공보 (JP-P2001-344192A) 에는 밴더 특정 데이터 (vendor specific data) 를 송/수신하는 방법이 개시되어 있는데, 여기에서, 매스 스토리지 클래스 (mass storage class) 의 일반 명령은, USB 를 통해 그 명령에 대응하는 동작을 실행하도록 지시하기 위해 표준 (standard) 인터페이스 드라이버를 사용하여 접속되는 디바이스로 전송된다. 이 종래의 방법에서, 송신측 장치는 소정 규정 (rule) 에 따라 밴더 특정 데이터를 인터페이스 (I/F) 일반 데이터와 클래스 고유 데이터 중 하나의 데이터내에 통합시키고, 밴더 특정 데이터를 포함하는 결합 데이터를 IF 일반 데이터 또는 클래스 고유 데이터로서 수신측 장치에 송신한다. 수신측 장치는 밴더 특정 데이터를 포함하는 그 결합 데이터를 수신하고, 그 수신된 결합 데이터로부터 밴더 특정 데이터를 분리하여 추출한다. 따라서, 밴더 특정 데이터가 전달된다.
본 발명의 목적은, 주변 디바이스의 레지스터 값이 SCSI 명령을 사용하여 판독될 수 있고 그 레지스터 값에 대응하는 프로세스가 수행되는, 주변 디바이스를 포함하는 컴퓨터 시스템을 제공하는 것이다.
본 발명의 일 양태에서, 컴퓨터 시스템은, SCSI (Small Computer System Interface) 명령을 CBW (Command Block Wrapper) 내에 통합시키고 USB (Universal Serial Bus) 프로토콜에 기초하여 CBW 를 송신하도록 구성된 정보 프로세싱 장치; 및 정보 프로세싱 장치로부터 송신된 CBW 를 수신하고 SCSI 명령이 소정의 SCSI 명령인 경우, GPIO (General Purpose Input/Output) 인터페이스의 상태를 나타내는 소정 레지스터의 값을 정보 프로세싱 장치로 송신하도록 구성된 주변 장치를 포함한다.
여기서, 정보 프로세싱 장치는 애플리케이션 프로그램에 기초하여 SCSI 명령을 내릴 수도 있다. 주변 장치는, SCSI 명령이 소정의 SCSI 명령이 아닌 경우 SCSI 명령에 대응하는 프로세스를 수행한다.
이 경우, 정보 프로세싱 장치는 소정의 SCSI 명령을 내리기 위해 애플리케이션 프로그램을 실행하고 그 소정의 SCSI 명령을 CBW 에 통합시키기 위해 디바이스 드라이버를 실행하도록 구성된 프로세싱 섹션; 및 USB 프로토콜에 기초하여 CBW 를 주변 장치로 송신하고 레지스터 값을 수신하도록 구성된 USB 인터페이스를 포함할 수도 있다. 프로세싱 섹션은, 레지스터 값이 소정 값인 경우 소정 값에 대응하 는 프로세스를 수행하기 위해 애플리케이션 프로그램을 실행할 수도 있다. 이 경우, 소정의 SCSI 명령은 소정의 레지스터를 특정하는 데이터를 포함할 수도 있다.
또한, 주변 장치는, 정보 프로세싱 장치로부터 송신된 CBW 를 수신하도록 구성된 USB 인터페이스; 및 수신된 CBW 에 포함된 SCSI 명령이 소정의 SCSI 명령인지 여부를 결정하기 위해 SCSI 프로세싱 프로그램을 수행하도록 구성된 프로세싱 섹션을 포함한다. 프로세싱 섹션은, 수신된 CBW 에 포함된 SCSI 명령이 소정의 SCSI 명령인 경우 레지스터 값을 판독하여 레지스터 값을 USB 인터페이스로 송신할 수도 있고, USB 인터페이스는 그 레지스터 값을 정보 프로세싱 장치로 송신할 수도 있다.
이 경우, 주변 장치의 프로세싱 섹션은, 수신된 CBW 에 포함된 SCSI 명령이 소정의 SCSI 명령이 아닌 경우 수신된 CBW 에 포함된 SCSI 명령에 대응하는 프로세싱을 수행할 수도 있다.
또한, 컴퓨터 시스템은 소정 값을 레지스터에서의 레지스터 값으로 설정하도록 구성된 입력 디바이스를 더 포함할 수도 있다.
여기서, 정보 프로세싱 장치는, 레지스터 값이 소정 값인 경우 주변 장치로 데이터를 송신할 수도 있고 주변 장치는 그 데이터를 백업할 수도 있다.
또한, 정보 프로세싱 장치는, 레지스터 값이 소정 값인 경우 정보 프로세싱 장치로부터 주변 장치를 전기적으로 분리시키는 프로세스를 수행할 수도 있다.
또한, 정보 프로세싱 장치는, 레지스터 값이 소정 값이 아닌 경우 소정 시간 이후에 SCSI 명령을 내린다.
본 발명의 다른 양태에서, 주변 장치는, GPIO (General Purpose Input and Output) 인터페이스; GPIO 인터페이스의 상태를 나타내는 값을 저장하도록 구성된 레지스터; 장치로부터 송신된 CBW (Command Block Wrapper) 를 수신하도록 구성된 USB (Universal Serial Bus) 인터페이스; 및 수신된 CBW 에 포함된 SCSI 명령이 소정의 SCSI 명령인지 여부를 결정하기 위해 SCSI (Small Computer System Interface) 프로세싱 프로그램을 실행하도록 구성된 프로세싱 섹션을 포함한다. 프로세싱 섹션은, 수신된 CBW 에 포함된 SCSI 명령이 소정의 SCSI 명령인 경우, 레지스터로부터 레지스터 값을 판독하여 USB 인터페이스로 레지스터 값을 송신하고, USB 인터페이스는 그 레지스터 값을 장치로 송신한다.
여기서, 프로세싱 섹션은, 수신된 CBW 에 포함된 SCSI 명령이 소정의 SCSI 명령이 아닌 경우 수신된 CBW 에 포함된 SCSI 명령에 대응하는 프로세싱을 수행할 수도 있다.
또한, 주변 장치는, 소정 값을 레지스터에서의 레지스터 값으로 설정하도록 구성된 입력 디바이스를 더 포함할 수도 있다.
또한, 주변 장치는, 데이터를 저장하도록 구성된 스토리지 섹션을 더 포함할 수도 있다. 주변 장치는, 레지스터 값이 소정 값인 경우 장치로부터 송신되어 USB 인터페이스에 의해 수신된 데이터를 스토리지 섹션에 백업시킬 수도 있다.
또한, 주변 장치는, 외부 스토리지 장치에 접속된 또 다른 인터페이스를 더 포함할 수도 있다. 프로세싱 섹션은, 레지스터 값이 소정 값인 경우 데이터가 백업되도록, USB 인터페이스에 의해 장치로부터 수신된 데이터를 또 다른 인터페이스를 통해 외부 스토리지 장치로 송신할 수도 있다.
또한, 주변 장치는, 레지스터 값이 소정 값인 경우 장치에 의해 전기적 분리 가능 상태로 설정될 수도 있다.
본 발명의 또 다른 양태에서, 컴퓨터 시스템의 제어 방법은, 애플리케이션 프로그램에 기초하여 정보 프로세싱 장치에서 SCSI (Small Computer System Interface) 명령을 내림으로써; 디바이스 드라이버에 기초하여 정보 프로세싱 장치에서 SCSI 명령을 CBW (Command Block Wrapper) 내로 통합시킴으로써; USB (Universal Serial Bus) 프로토콜에 기초하여 정보 프로세싱 장치로부터 주변 장치로 CBW 를 송신함으로써; 주변 장치에 의해 CBW 를 수신함으로써; CBW 에 포함된 SCSI 명령이 소정의 SCSI 명령인지 여부를 결정함으로써; SCSI 명령이 소정의 SCSI 명령인 경우 주변 장치로부터 정보 프로세싱 장치로 GPIO (General Purpose Input/Output) 인터페이스의 상태를 나타내는 소정의 레지스터 값을 송신함으로써; 및 정보 프로세싱 장치에 의해 주변 장치로부터 송신되는 레지스터 값에 대응하는 프로세스를 수행함으로써 달성된다.
여기서, 그 제어 방법은, 레지스터 값이 소정 값이 아닌 경우 소정 시간 이후에 정보 프로세싱 장치로부터 SCSI 명령을 추가로 내림으로써 달성될 수도 있다.
또한, 그 제어 방법은, 수신된 CBW 에 포함된 SCSI 명령이 소정의 SCSI 명령이 아닌 경우 주변 장치에 의해, 수신된 CBW 에 포함된 SCSI 명령에 대응하는 프로세싱을 추가로 수행함으로써 달성될 수도 있다.
또한, 레지스터 값에 대응하는 프로세스를 수행하는 것은, 정보 프로세싱 장치에서의 데이터를 주변 장치로 송신함으로써 달성될 수도 있다.
바람직한 실시형태의 설명
이하, 첨부된 도면을 참조하여 본 발명의 컴퓨터 시스템을 상세하게 설명한다. 본 발명의 컴퓨터 시스템은 도 1 에 도시된 바와 같이, 정보 프로세싱 장치 (10) 와 외부 주변 디바이스 (20) 를 포함한다. 정보 프로세싱 장치 (10) 와 외부 주변 디바이스 (20) 는 USB (Universal Serial Bus) 를 사용함으로써 서로 통신한다. USB 는 정보 프로세싱 장치와 주변 디바이스 사이의 데이터 송신의 표준들 중 하나의 표준이다. 여기서, 정보 프로세싱 장치 (10) 가 개인용 컴퓨터이고, 외부 주변 디바이스 (20) 가 IDE (Integrated Drive Electronics) 디바이스가 접속되는 USB-IDE 브리지인 예를 설명한다. 그러나, 본 발명은 전술한 예로 한정되는 것은 아니다.
정보 프로세싱 장치 (10) 는 외부 주변 디바이스 (20) 의 범용 입/출력 (GPIO) 인터페이스의 레지스터 값을 판독하기 위해 SCSI 명령 (밴더 특정 SCSI 명령) 을 CBW (Command Block Wrapper) 의 형태로 변환하고 그 CBW 를 USB 프로토콜을 사용하여 외부 주변 디바이스 (20) 로 송신한다. 범용 입/출력 (GPIO) 인터페이스는 다양한 커스텀 (custom) 접속들을 허용하는 플렉서블 병렬 인터페이스이다. 또한, CBW 에는, 다른 데이터가 SCSI 명령에 추가된다.
외부 주변 디바이스 (20) 는, SCSI 명령에 응답하여 범용 입/출력 (GPIO) 인터페이스의 레지스터 값을 USB 통신을 통해 정보 프로세싱 장치 (10) 로 송신한다. 정보 프로세싱 장치 (10) 는 외부 주변 디바이스 (20) 로부터 수신된 레지스터 값에 대응하는 소정 프로세스를 실행한다.
도 2 는 본 발명의 실시형태에 따른 컴퓨터 시스템의 구성을 도시하는 블록도이다. 도 2 를 참조하면, 정보 프로세싱 장치 (10) 는 메모리 (11), CPU (12) 및 USB 인터페이스 (13) 를 포함한다. 외부 주변 디바이스 (20) 는 USB 인터페이스 (21), CPU (22), 메모리 (23), 레지스터 (24), 범용 입/출력 (GPIO) 인터페이스 (25) 및 IDE 디바이스 (30) 가 접속되는 IDE 인터페이스 (26) 를 포함한다.
메모리 (11) 는 애플리케이션 프로그램 (14) 및 표준 디바이스 드라이버 (15) 를 저장한다. 표준 디바이스 드라이버 (15) 는 주변 디바이스 (20) 에 전용은 아니다. CPU (12) 는 메모리 (11) 로부터 애플리케이션 프로그램 (14) 및 표준 디바이스 드라이버 (15) 를 판독하여 이들을 실행한다. USB 인터페이스 (13) 는 USB 통신 네트워크를 통해 또 다른 USB 인터페이스와 통신한다. USB 통신 네트워크는 유선 네트워크 또는 무선 네트워크일 수도 있다.
애플리케이션 프로그램 (14) 이 CPU (12) 에 의해 실행되는 경우, CPU (12) 는 밴더에 의해 고유하게 정의되는 SCSI 명령으로서 SCSI (Small Computer System Interface) 밴더 명령 (밴더 특정 SCSI 명령) 을 내린다. CPU (12) 는 애플리케이션 프로그램 (14) 에 기초하여 SCSI 밴더 명령에 더하여 일반 표준하의 SCSI 명령을 내릴 수도 있다. 또한, SCSI 명령에 응답하여 외부 주변 디바이스 (20) 로부터 소정 값이 수신되는 경우, CPU (12) 는 애플리케이션 프로그램 (14) 에 기 초하여 소정 값에 대응하는 프로세스를 수행한다. SCSI 명령을 내리는 애플리케이션 프로그램 (14) 의 일부와 소정 값에 대응하는 프로세스를 수행하는 애플리케이션 프로그램 (14) 의 일부는 상이한 프로그램들로서 제공될 수도 있다. 표준 디바이스 드라이버 (15) 는 OS (Operating System : 운영 시스템) 상에 설치된다. 표준 디바이스 드라이버 (15) 가 CPU (12) 에 의해 실행되는 경우, SCSI 명령은 CBW 의 포맷으로 변환되고 CBW 는 USB 인터페이스 (13) 로부터 USB 인터페이스 (21) 로 송신된다.
정보 프로세싱 장치 (10) 와 외부 주변 디바이스 (20) 사이에 통신이 수행되는 경우, USB 인터페이스 (13) 는 USB 인터페이스 (21) 와 통신하기 위해 USB 통신 네트워크를 사용한다. 여기서 USB 인터페이스 (13) 는 표준 디바이스 드라이버 (15) 로부터 전송된 CBW 를 USB 통신 규정에 따라 USB 인터페이스 (21) 로 송신한다. USB 통신 규정에서, USB 매스 스토리지 클래스에 기초한 프로토콜이 사용된다. USB 매스 스토리지 프로토콜에 기초한 프로토콜에서, SCSI 명령은 CBW 의 형태로 USB 패킷내에 통합된다. 또한, 인터럽션 전달은 포함되지 않는다.
USB 는 고속 직렬 통신에서 다양한 주변 디바이스에 정보 프로세싱 장치 (10) 를 접속하는 인터페이스이다. 하드 디스크 또는 CD 드라이버와 같은 대용량 저장 디바이스가 주변 디바이스 (20) 로서 접속될 수도 있다. 이들 디바이스들은 USB 규정에서는 USB 매스 스토리지 클래스로 칭해진다. 또한, USB 매스 스토리지 클래스로의 고유한 요청들, 프로토콜, CBW, 및 CSW (Command Status Wrapper) 가 정의된다. USB 매스 스토리지 클래스는 USB 클래스들 중의 하나의 클래스이며, 대용량 저장 디바이스로서 분류되는 USB 디바이스를 다루는 클래스이다. 통상적으로, 이것은 USB 스토리지 클래스로서 단축될 수도 있다.
도 3 은 SCSI 밴더 명령의 포맷의 일 예를 도시한다. 도 3 을 참조하면, SCSI 명령은 0 번째 바이트부터 5 번째 바이트까지의 6 바이트 영역을 가진다. SCSI 명령의 0 번째 바이트는 동작 코드를 위한 것이고, 1 번째 바이트는 예약 (Reserved) 이며, 2 번째 바이트는 피처를 위한 것이고, 3 번째 바이트는 설정 값을 위한 것이며, 4 번째 바이트는 길이를 위한 것이고, 5 번째 바이트는 예약이다. 따라서, 값들이 저장된 영역들이 정의된다. 레지스터 (24) 들 중에서 어느 레지스터가 액세스되어야 하는지는 제 2 바이트에서의 데이터에 기초하여 특정된다.
그 다음에, 도 4 및 도 5 를 참조하여, CBW 의 포맷을 이하 설명한다. CBW 의 데이터 영역은 0 번째 바이트에서 30 번째 바이트까지의 31 바이트 영역으로 고정된다. 31 바이트 중에서, 0 번째 바이트에서 14 번째 바이트까지의 영역은 또 다른 데이터를 위한 영역이다. 0 번째 바이트에서 제 3 바이트까지의 영역은 CBW 시그너처를 위한 것이고, 임의의 CBW 는 동일 값으로 고정된다. 4 번째 바이트에서 7 번째 바이트까지의 영역은 CBW 태그를 위한 것이다. 8 번째 바이트에서 11 번째 바이트까지의 영역은 데이터 전달 길이를 위한 것이고, 전달될 데이터의 길이를 나타낸다. 12 번째 바이트는 데이터 전달 방향을 위한 것이고 데이터 전달 방향을 나타낸다. 13 번째 바이트는 CBWLUN (CBW Logical Device Number) 를 포함하고, 14 번째 바이트는 SCSI 명령의 길이를 나타내는 CBWCB (CBW Command Block) 를 포함한다. 15 번째 바이트에서 30 번째 바이트까지의 영역 은 CBWCB 를 위한 것이고 SCSI 명령이 그 내부에 통합되거나 삽입된다. 이 예에서는 16 바이트의 영역이 SCSI 명령을 위해 설정된다. 그러나, 모든 SCSI 명령이 항상 16 바이트인 것은 아니다.
도 2 를 참조하면, 메모리 (23) 는 SCSI 프로세싱 프로그램 (27) 을 저장한다. USB 인터페이스 (21) 는 USB 프로토콜을 사용함으로써 정보 프로세싱 장치 (10) 의 USB 인터페이스 (13) 와 통신하고 USB 인터페이스 (13) 로부터 CBW 를 수신한다. CPU (22) 는 USB 인터페이스 (21) 로부터 CBW 를 수신하고 CBW 에 기초하여 메모리 (23) 에 저장된 SCSI 프로세싱 프로그램 (27) 을 실행한다. SCSI 프로세싱 프로그램 (27) 이 CPU (22) 에 의해 실행되는 경우, CPU (22) 는, CBW 에 포함된 SCSI 명령이 일반 규정하의 SCSI 명령인지 또는 밴더에 의해 고유하게 정의된 SCSI 밴더 명령인지를 결정한다. CBW 에 포함된 SCSI 명령이 SCSI 밴더 명령인 것으로 결정되는 경우, CPU (22) 는 SCSI 프로세싱 프로그램 (27) 에 기초하여 범용 입/출력 (GPIO) 인터페이스 (25) 에 대응하는 레지스터 (24) 들 중 하나에 저장된 값을 판독한다. CBW 에 포함된 명령이 SCSI 밴더 명령인지 여부를 결정하기 위한 SCSI 프로세싱 프로그램의 일부와 레지스터 (24) 의 값을 판독하기 위한 SCSI 프로세싱 프로그램의 일부는 상이한 프로그램들로서 제공될 수도 있다.
범용 입/출력 (GPIO) 인터페이스 (25) 는 버튼 스위치 (28) 과 같은 입력 디바이스로부터 신호를 수신하고, 그 수신된 신호에 대응하는 값을 레지스터 (24) 들 중 대응하는 하나의 레지스터 (24) 에 저장한다. 여기서, 버튼 스위치 (28) 는 외부 주변 디바이스 (20) 와 통신하는 외부 디바이스일 수도 있다. 레지스터 (24) 내에 기록될 수 있는 값을 신호로서 송신하기 위한 통신 디바이스가 버튼 스위치 (28) 대신에 사용될 수도 있다.
본 발명에서, SCSI 밴더 명령은, 범용 입/출력 (GPIO) 인터페이스 (25) 와 관련된 몇몇 레지스터 (24) 에 액세스하는 것이 가능하도록 하는데 사용된다. 또한, SCSI 프로세싱 프로그램 (27) 은, SCSI 밴더 명령에 따라 범용 입/출력 터미널 (GPIO) (25) 에 대응하는 레지스터 (24) 들 중 하나에 저장된 레지스터 값을 판독하기 위한 프로그램이다. 주기적으로 하나의 레지스터 (24) 에 액세스가 수행되어 레지스터 (24) 의 값이 판독된다.
IDE 인터페이스 (26) 는 IDE 통신 규정에 따라 IDE 디바이스와 접속한다. IDE 는 디바이스와 저장 디바이스를 접속시키는 방법들 중 하나이다. IDE 디바이스 (30) 의 예로는, 하드 디스크, CD-ROM 드라이버, MO 드라이버, 또는 DVD 드라이버가 있다. 그러나, 실제로는 전술한 예로 한정되는 것은 아니다. IDE 디바이스 (30) 는 외부 주변 디바이스 (20) 에 내장될 수도 있다. 외부 주변 디바이스 (20) 와 IDE 디바이스 (30) 가 결합되는 예로는, USB-ID 브리지를 갖는 IDE 인터페이스 HDD (Hard Disk Drive : 하드 디스크 드라이버) 가 있다. 또한, 복수의 IDE 디바이스 (30) 가 외부 주변 디바이스 (20) 에 접속될 수도 있다.
도 5 에 도시된 바와 같이, [동작 코드 (Operating Code)]에 따라, 어떤 타입의 SCSI 명령이 수신되는지를 결정하도록 SCSI 프로세싱 프로그램 (27) 이 외부 주변 디바이스 (20) 에 설치된다. 예를 들어, [동작 코드] 가 F6 인 경우, 외부 주변 디바이스 (20) 는, SCSI 명령이 범용 입/출력 (GPIO) 인터페이스에 액세스 할 수 있는 SCSI 밴더 명령이라는 것을 인식한다. [피처(Feature)]의 값에 따라 GPIO 에 대해 레지스터 중 어느 레지스터가 액세스되는지가 결정된다.
도 6 은 정보 프로세싱 장치 (10) 와 외부 주변 디바이스 (20) 사이의 통신 동작을 도시한다. 이 동작은 USB 매스 스토리지 클래스의 프로토콜에 기초한다. 여기서, 일반 규정에 기초한 SCSI 명령이 사용된다.
정보 프로세싱 장치 (10) 는 SCSI 명령을 포함하는 CBW 를 외부 주변 디바이스 (20) 로 송신한다 (단계 S101). 외부 주변 디바이스 (20) 가 CBW 를 수신하는 경우, 외부 주변 디바이스 (20) 는 SCSI 명령의 컨텐츠를 디코딩한다 (단계 S102). SCSI 명령의 컨텐츠에 의존하여, 다음의 3 개 프로세스 즉, 정보 프로세싱 장치 (10) 가 데이터를 외부 주변 디바이스 (20) 송신하는 제 1 프로세스, 외부 주변 디바이스 (20) 가 데이터를 정보 프로세싱 장치 (10) 로 송신하는 제 2 프로세스, 데이터가 전달되지 않는 제 3 프로세스 중의 임의의 프로세스가 수행된다 (단계 S103). 예를 들어, 데이터가 외부 주변 디바이스 (20) 내에 기록되어야 하는 경우, 데이터는 정보 프로세싱 장치 (10) 로부터 외부 주변 디바이스 (20) 로 전송된다. 이 예에서, SCSI 밴더 명령에 따라, 외부 주변 디바이스 (20) 는 레지스터 (24) 의 값을 정보 프로세싱 장치 (10) 로 송신한다. 그 후, 외부 주변 디바이스 (20) 는 CSW (Command Status Wrapper) 를 정보 프로세싱 장치 (10) 로 송신한다 (단계 S104). CSW 는, 데이터가 전달되기까지 시퀀스가 정상적으로 종료되는지 (데이터가 전달되지 않는 경우도 있음) 여부를 정보 프로세싱 장치 (10) 에 통지하는 상태 워드를 포함한다.
이하, 도 7 을 참조하여 CSW 의 포맷을 설명한다. CSW 는 0 번째 바이트부터 12 번째 바이트까지의 13 바이트의 전체 데이터 길이를 가진다. 0 번째 바이트에서 3 번째 바이트까지의 영역은 CSW 시그너처이고, 임의의 CSW 는 동일 값으로 고정된다. 4 번째 바이트에서 7 번째 바이트까지의 영역은 CSW 태그이다. CSW 의 태그는 CBW 의 태그의 값과 동일하고, CSW 및 CBW 는 서로 쌍을 이룬다. 8 번째 바이트에서 11 번째 바이트까지의 영역은 CSW 데이터 레지듀 (Residue) 이고, 그 영역은 데이터 전달 단계 (data transfer phase) 에서 전달되어진 데이터와 CBW 의 8 번째 바이트에서 11 번째 바이트까지의 영역에서 나타내진 데이터와의 사이의 길이에서 차이값을 저장한다. 12 번째 바이트는 CSW 상태이고 이것은 정상적으로 종료되는지 여부를 나타내는 상태 정보이다. 예를 들어, 정상적으로 종료되는 것은 10H 로서 표시되고, 기록 (write) 이 비정상적인 경우에 있는 것은 11H 로서 표시된다.
도 8 은 본 발명의 전체 컴퓨터 시스템에서의 동작을 도시한다. CPU (12) 는 정보 프로세싱 장치 (10) 의 메모리 (11) 에 저장된 애플리케이션 프로그램 (14) 을 판독하여 그 애플리케이션 프로그램 (14) 을 실행하고, 그리고 레지스터 (24) 의 값을 판독하기 위해 표준 디바이스 드라이버 (15) 에 SCSI 밴더 명령을 내린다 (단계 S201). 표준 디바이스 드라이버 (15) 는 그 SCSI 밴더 명령 또는 SCSI 명령을 CBW (Command Block Wrapper) 의 형태로 변환하고 USB 인터페이스 (13) 에 전송한다 (단계 S202). USB 인터페이스 (13) 는 CBW 를 통신 규정 (USB 매스 스토리지 클래스에 기초한 프로토콜) 에 따라 외부 주변 디바이스 (20) 로 송신한다 (단계 S203).
외부 주변 디바이스 (20) 의 USB 인터페이스 (21) 는 CBW 를 수신하고 CPU (22) 로 전송한다 (단계 S204). CPU (22) 는 메모리 (23) 에 저장된 SCSI 프로세싱 프로그램 (27) 을 판독하여 그것을 실행한다 (단계 S205). CPU (22) 는 CBW 에 포함된 SCSI 명령이 SCSI 밴더 명령인지 여부를 SCSI 프로세싱 프로그램에 기초하여 결정한다 (단계 S206). 이 때, CBW 가 SCSI 밴더 명령 이외의 임의의 SCSI 명령들을 포함하는 경우, CPU (22) 는 SCSI 명령의 컨텐츠에 따라, IDE 디바이스 (30) 로부터 데이터를 판독하거나 또는 IDE 디바이스 (30) 내로 데이터를 기록하기 위한 프로세스와 같은 소정 프로세스를 수행한다. CBW 가 SCSI 밴더 명령을 포함하는 경우, CPU (22) 는 SCSI 프로세싱 프로그램 (27) 에 기초하여 범용 입/출력 (GPIO) 인터페이스 (25) 용의 레지스터 (24) 들 중 하나의 레지스터 값을 판독하기 위한 프로세스를 수행하고, 판독된 레지스터 값을 외부 주변 디바이스 (20) 의 USB 인터페이스 (21) 로 전송한다 (단계 S208). 외부 주변 디바이스 (20) 의 USB 인터페이스 (21) 는 판독된 레지스터 값을 정보 프로세싱 장치 (10) 의 USB 인터페이스 (13) 로 송신한다 (단계 S209).
정보 프로세싱 장치 (10) 의 USB 인터페이스 (13) 는 판독된 레지스터 값을 수신하고 판독된 레지스터 값을 CPU (12) 에 전송한다 (단계 210). 이 때, CPU (12) 는 표준 디바이스 드라이버 (15) 를 사용할 수도 있다. CPU (12) 는 메모리 (11) 에 저장된 애플리케이션 프로그램 (14) 을 판독하여 실행한다 (단계 S211). CPU (12) 는 애플리케이션 프로그램 (14) 에 기초하여, 레지스터 값이 소정 값과 일치하는지 여부를 결정한다 (단계 S212). 레지스터 (24) 의 값이 소정 값과 일치하지 않는 경우, CPU (12) 는 소정 시간 이후에 애플리케이션 프로그램 (14) 에 기초하여 레지스터 값을 판독하기 위해 SCSI 명령을 표준 디바이스 드라이버 (15) 에 다시 내리고, 소정 프로세스를 실행한다 (단계 S207).
한편, 레지스터 값이 소정 값과 일치하는 경우, CPU (12) 는 애플리케이션 프로그램 (14) 에 기초하여 소정 값에 대응하는 프로세스를 수행한다 (단계 S213). 예를 들어, 레지스터 값이 일정 값 또는 그 이상인 경우, CPU (12) 는 데이터의 백업을 수행하거나 또는 정보 프로세싱 장치 (10) 로부터 주변 디바이스 (20) 를 안전하게 전기적으로 분리시킨다. 이 때, 수행될 프로세스는 레지스터 값에 의존하여 특정될 수도 있다. 또한, 상한의 임계값과 하한의 임계값이 설정되고, 레지스터 값이 임계값들 사이의 범위내에 있는 경우, 그 레지스터 값에 대응하는 프로세스가 실행될 수도 있다. 소정 값에 대응하는 프로세스로부터 소정 시간 이후에, CPU (12) 는 애플리케이션 프로그램 (14) 에 기초하여 레지스터 (24) 의 컨텐츠를 판독하기 위해, SCSI 명령을 표준 디바이스 드라이버 (15) 에 다시 내린다 (단계 S207). 그 후, 애플리케이션 프로그램 (14) 은 소정의 프로세스를 수행한다.
도 9 는 애플리케이션 프로그램 (14) 에 기초하여 CPU (12) 에 의해 실행되는 프로세스를 도시한다. CPU (12) 는 애플리케이션 프로그램에 기초하여 타이머에 따라 SCSI 밴더 명령을 주기적으로 내리고, 전술한 바와 같이 표준 디바이스 드라이버 (15) 를 통해 레지스터 값을 판독하며, 푸쉬 버튼 (버튼 스위치 (28)) 이 눌려졌는지 여부를 모니터링한다 (단계 S301). 이 때, 푸쉬 버튼이 눌려진 경우, 소정 값이 레지스터 (24) 에 저장된다. 레지스터 값이 소정 값이라고 검출하는 경우, CPU (12) 는 애플리케이션 프로그램 (14) 에 기초하여 소정의 프로세스를 수행한다. 여기서, 소정의 프로세스에서는, 정보 프로세싱 장치 (10) 의 HDD 와 같은 저장 디바이스로부터 백업 수신지인 외부 저장 디바이스 (IDE 디바이스 (30)) 로 데이터의 백업이 수행된다 (단계 S302). 외부 저장 디바이스는 USB-IDE 브리지 (외부 주변 디바이스 (20)) 의 IDE 디바이스 인터페이스 (IDE 인터페이스 (26)) 에 접속된다. 그 이후, 동작 흐름은 다시 단계 S301 에서의 프로세스로 리턴한다.
디바이스의 안전한 분리는, 데이터의 백업과 유사하게 수행된다. 즉, 버튼이 눌려진 경우, 레지스터 값은 소정 값으로 설정된다. 이 때, CPU (12) 는, IDE 디바이스 인터페이스 (26) 으로 구성되는 USB 디바이스와 IDE 디바이스를 안전하게 분리하기 위해, 애플리케이션 프로그램 (14) 에 기초하여 소정의 프로세스를 수행한다. 데이터의 백업 및 디바이스의 분리 이외의 프로세스들이 실행되는 경우, 이들 프로세스들도 유사하게 실행된다.
전술한 바와 같이, 본 발명의 컴퓨터 시스템에서, 더 상위 층 프로토콜에서 SCSI 명령을 사용하는 통신 유닛과 IDE 디바이스 사이의 브리지 칩이 범용 입/출력 (GPIO) 인터페이스를 가지는 경우, 개인용 컴퓨터는 SCSI 명령을 사용함으로써 범용 입/출력 인터페이스용 레지스터에 액세스할 수 있다. 또한, 개인용 컴퓨터는 SCSI 명령을 사용함으로써 애플리케이션 프로그램 (14) 에 따라 일정 간격으로 GPIO 에 대한 레지스터 값을 판독할 수 있다. 따라서, 레지스터 값에 기초하여 내장된 HDD 로부터 외부 저장 디바이스로 데이터 백업이 수행될 수 있거나 또는, 외부 저장 디바이스가 개인용 컴퓨터로부터 안전하게 분리될 수도 있다.
본 발명에서, 예비로 설치된 표준 디바이스 드라이버는 범용 입/출력 (GPIO) 인터페이스용 레지스터의 레지스터 값을 판독하는데 사용된다. 따라서, 전용 디바이스 드라이버가 필요하지 않으며, 칩과 프로그램에 대한 개발 단계들이 축소될 수 있어 개발 비용의 감소를 가져온다.
최종 사용자에게는, 디바이스 드라이버를 설치하는 작업이 요구되지 않으므로 애플리케이션 프로그램을 도입하는 것이 용이하다. 또한, 외부 디바이스를 분리하기 위한 프로세스가 버튼의 동작을 통해 용이하게 수행될 수 있으며 종래 방법에서의 복잡한 프로세스도 용이하게 수행될 수 있다.
또한, 본 발명은 전용 디바이스 드라이버를 요구하지 않는다. 그러므로, 본 발명은 USB 매스 스토리지 클래스의 통신 방법을 다룬다. 따라서, 전자 디바이스가 CBW 에 포함된 SCSI 밴더 명령에 따라 제어될 수 있는 경우, 전자 디바이스는 외부 주변 디바이스 (20) 로서 사용될 수 있다. 또한, 전자 디바이스가 사용되는 경우, 전자 디바이스용 새로운 디바이스 드라이버를 새롭게 설치하는 것이 요구되지 않는다.
본 발명에 따르면, 주변 디바이스의 레지스터 값이 SSCSI 명령을 사용하여 판독될 수 있고 그 레지스터 값에 대응하는 프로세스가 수행되는, 주변 디바이스를 포함하는 컴퓨터 시스템 및 그 제어 방법을 제공할 수 있는 이점이 있다.

Claims (20)

  1. SCSI (Small Computer System Interface) 명령을 CBW (Command Block Wrapper) 내에 통합시키고, USB (Universal Serial Bus) 프로토콜에 기초하여 상기 CBW 를 송신하도록 구성된 정보 프로세싱 장치; 및
    상기 정보 프로세싱 장치로부터 송신된 상기 CBW 를 수신하고, 상기 SCSI 명령이 소정의 SCSI 명령인 경우, GPIO (General Purpose Input/Output) 인터페이스의 상태를 나타내는 소정 레지스터의 값을 상기 정보 프로세싱 장치로 송신하도록 구성된 주변 장치를 구비하는, 컴퓨터 시스템.
  2. 제 1 항에 있어서,
    상기 정보 프로세싱 장치는 애플리케이션 프로그램에 기초하여 상기 SCSI 명령을 내리며,
    상기 주변 장치는, 상기 SCSI 명령이 상기 소정의 SCSI 명령이 아닌 경우 상기 SCSI 명령에 대응하는 프로세스를 수행하는, 컴퓨터 시스템.
  3. 제 2 항에 있어서,
    상기 정보 프로세싱 장치는,
    상기 소정의 SCSI 명령을 내리기 위해 상기 애플리케이션 프로그램을 실행하고, 상기 소정의 SCSI 명령을 상기 CBW 에 통합시키기 위해 디바이스 드라이버를 실행하도록 구성된 프로세싱 섹션; 및
    상기 USB 프로토콜에 기초하여 상기 CBW 를 상기 주변 장치로 송신하고, 상기 레지스터 값을 수신하도록 구성된 USB 인터페이스를 구비하고,
    상기 프로세싱 섹션은, 상기 레지스터 값이 소정 값인 경우 상기 소정 값에 대응하는 프로세스를 수행하기 위해 애플리케이션 프로그램을 실행하는, 컴퓨터 시스템.
  4. 제 3 항에 있어서,
    상기 소정의 SCSI 명령은 상기 소정 레지스터를 특정하는 데이터를 포함하는, 컴퓨터 시스템.
  5. 제 1 항에 있어서,
    상기 주변 장치는,
    상기 정보 프로세싱 장치로부터 송신된 상기 CBW 를 수신하도록 구성된 USB 인터페이스; 및
    수신된 CBW 에 포함된 상기 SCSI 명령이 상기 소정의 SCSI 명령인지 여부를 결정하기 위해 SCSI 프로세싱 프로그램을 수행하도록 구성된 프로세싱 섹션을 구비하고,
    상기 프로세싱 섹션은, 수신된 CBW 에 포함된 상기 SCSI 명령이 상기 소정의 SCSI 명령인 경우 상기 레지스터 값을 판독하여 상기 레지스터 값을 상기 USB 인터 페이스로 송신하고,
    상기 USB 인터페이스는 상기 레지스터 값을 상기 정보 프로세싱 장치로 송신하는, 컴퓨터 시스템.
  6. 제 5 항에 있어서,
    상기 주변 장치의 상기 프로세싱 섹션은, 수신된 CBW 에 포함된 상기 SCSI 명령이 상기 소정의 SCSI 명령이 아닌 경우 수신된 CBW 에 포함된 상기 SCSI 명령에 대응하는 프로세싱을 수행하는, 컴퓨터 시스템.
  7. 제 5 항에 있어서,
    소정 값을 상기 레지스터에서의 상기 레지스터 값으로 설정하도록 구성된 입력 디바이스를 더 구비하는, 컴퓨터 시스템.
  8. 제 1 항 내지 제 7 항 중 어느 한 항에 있어서,
    상기 정보 프로세싱 장치는, 상기 레지스터 값이 소정 값인 경우 데이터를 상기 주변 장치로 송신하고,
    상기 주변 장치는 상기 데이터를 백업하는 (back up) 하는, 컴퓨터 시스템.
  9. 제 1 항 내지 제 7 항 중 어느 한 항에 있어서,
    상기 정보 프로세싱 장치는, 상기 레지스터 값이 소정 값인 경우 상기 정보 프로세싱 장치로부터 상기 주변 장치를 전기적으로 분리시키는 프로세스를 수행하는, 컴퓨터 시스템.
  10. 제 1 항 내지 제 7 항 중 어느 한 항에 있어서,
    상기 정보 프로세싱 장치는, 상기 레지스터 값이 상기 소정 값이 아닌 경우 소정 시간 이후에 상기 SCSI 명령을 내리는, 컴퓨터 시스템.
  11. GPIO (General Purpose Input and Output) 인터페이스;
    상기 GPIO 인터페이스의 상태를 나타내는 값을 저장하도록 구성된 레지스터;
    장치로부터 송신된 CBW (Command Block Wrapper) 를 수신하도록 구성된 USB (Universal Serial Bus) 인터페이스; 및
    수신된 CBW 에 포함된 SCSI 명령이 소정의 SCSI 명령인지 여부를 결정하기 위해 SCSI (Small Computer System Interface) 프로세싱 프로그램을 실행하도록 구성된 프로세싱 섹션을 구비하고,
    상기 프로세싱 섹션은, 수신된 CBW 에 포함된 상기 SCSI 명령이 상기 소정의 SCSI 명령인 경우 상기 레지스터로부터 레지스터 값을 판독하여 상기 레지스터 값을 상기 USB 인터페이스로 송신하고,
    상기 USB 인터페이스는 상기 레지스터 값을 상기 장치로 송신하는, 주변 장치.
  12. 제 11 항에 있어서,
    상기 프로세싱 섹션은, 수신된 CBW 에 포함된 상기 SCSI 명령이 상기 소정의 SCSI 명령이 아닌 경우 상기 수신된 CBW 에 포함된 상기 SCSI 명령에 대응하는 프로세싱을 수행하는, 주변 장치.
  13. 제 11 항에 있어서,
    소정 값을 상기 레지스터에서의 상기 레지스터 값으로 설정하도록 구성된 입력 디바이스를 더 구비하는, 주변 장치.
  14. 제 11 항 내지 제 13 항 중 어느 한 항에 있어서,
    데이터를 저장하도록 구성된 스토리지 섹션을 더 구비하고,
    상기 주변 장치는, 상기 레지스터 값이 소정 값인 경우 상기 장치로부터 송신되어 상기 USB 인터페이스에 의해 수신된 데이터를 스토리지 섹션에 백업하는, 주변 장치.
  15. 제 11 항 내지 제 13 항 중 어느 한 항에 있어서,
    외부 스토리지 장치에 접속된 또 다른 인터페이스를 더 구비하고,
    상기 프로세싱 섹션은, 상기 레지스터 값이 소정 값인 경우, 상기 데이터가 백업되도록 상기 USB 인터페이스에 의해 상기 장치로부터 수신된 데이터를 상기 또 다른 인터페이스를 통해 상기 외부 스토리지 장치로 송신하는, 주변 장치.
  16. 제 11 항 내지 제 13 항 중 어느 한 항에 있어서,
    상기 레지스터 값이 소정 값인 경우 상기 장치에 의해 전기적 분리 가능 상태로 설정되는, 주변 장치.
  17. 애플리케이션 프로그램에 기초하여 정보 프로세싱 장치에서 SCSI (Small Computer System Interface) 명령을 내리는 단계;
    디바이스 드라이버에 기초하여 상기 정보 프로세싱 장치에서 상기 SCSI 명령을 CBW (Command Block Wrapper) 내에 통합시키는 단계;
    USB (Universal Serial Bus) 프로토콜에 기초하여 상기 CBW 를 상기 정보 프로세싱 장치로부터 주변 장치로 송신하는 단계;
    상기 주변 장치에 의해 상기 CBW 를 수신하는 단계;
    상기 CBW 에 포함된 상기 SCSI 명령이 소정의 SCSI 명령인지 여부를 결정하는 단계;
    상기 SCSI 명령이 상기 소정의 SCSI 명령인 경우, 상기 주변 장치로부터 상기 정보 프로세싱 장치로 GPIO (General Purpose Input/Output) 인터페이스의 상태를 나타내는 소정의 레지스터 값을 송신하는 단계; 및
    상기 정보 프로세싱 장치에 의해 상기 주변 장치로부터 송신되는 상기 레지스터 값에 대응하는 프로세스를 수행하는 단계를 포함하는, 컴퓨터 시스템 제어 방법.
  18. 제 17 항에 있어서,
    상기 레지스터 값이 소정 값이 아닌 경우 소정 시간 이후에 상기 정보 프로세싱 장치로부터 상기 SCSI 명령을 내리는 단계를 더 포함하는, 컴퓨터 시스템 제어 방법.
  19. 제 17 항에 있어서,
    수신된 CBW 에 포함된 상기 SCSI 명령이 상기 소정의 SCSI 명령이 아닌 경우 상기 주변 장치에 의해, 상기 수신된 CBW 에 포함된 SCSI 명령에 대응하는 프로세싱을 수행하는 단계를 더 포함하는, 컴퓨터 시스템 제어 방법.
  20. 제 17 항에 있어서,
    상기 레지스터 값에 대응하는 프로세스를 수행하는 상기 단계는, 상기 정보 프로세싱 장치에서의 데이터를 상기 주변 장치로 송신하는, 컴퓨터 시스템 제어 방법.
KR1020060018149A 2005-02-24 2006-02-24 컴퓨터 시스템 및 그 제어 방법 KR100781926B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005049559A JP2006235994A (ja) 2005-02-24 2005-02-24 ブリッジシステム、ブリッジシステム制御方法、情報処理機器、周辺機器及びプログラム
JPJP-P-2005-00049559 2005-02-24

Publications (2)

Publication Number Publication Date
KR20060094494A true KR20060094494A (ko) 2006-08-29
KR100781926B1 KR100781926B1 (ko) 2007-12-04

Family

ID=36914186

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060018149A KR100781926B1 (ko) 2005-02-24 2006-02-24 컴퓨터 시스템 및 그 제어 방법

Country Status (5)

Country Link
US (1) US8135871B2 (ko)
JP (1) JP2006235994A (ko)
KR (1) KR100781926B1 (ko)
CN (1) CN100507882C (ko)
TW (1) TWI330319B (ko)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100401280C (zh) * 2005-06-08 2008-07-09 北京飞天诚信科技有限公司 通用串行总线数据传输方法
CA2657184A1 (en) * 2006-07-13 2008-01-17 Trek 2000 International Ltd. Portable device with user interface
JP2008152316A (ja) * 2006-12-14 2008-07-03 Nec Access Technica Ltd 通信システム、デバイス、ホスト、通信方法およびプログラム
US20080263242A1 (en) * 2007-04-18 2008-10-23 Adrian Bica Usb flash media extender
US20110016253A1 (en) * 2009-07-16 2011-01-20 Musa Ibrahim Kakish Auto-function USB port
KR101177184B1 (ko) 2010-01-19 2012-08-24 에스케이씨앤씨 주식회사 스마트카드가 내장된 유에스비 동글과 호스트 사이의 통신 방법 및 이를 위한 유에스비 동글장치
US9116905B1 (en) 2010-06-30 2015-08-25 Emc Corporation System and method for cataloging data
US8595749B1 (en) * 2010-06-30 2013-11-26 Emc Corporation System and method for cataloging data
CN102541776B (zh) * 2010-12-22 2016-02-03 安凯(广州)微电子技术有限公司 应用处理器芯片上模拟实现接触式智能ic卡接口的方法
DE102011075096A1 (de) * 2011-05-02 2012-11-08 Testo Ag Datenkommunikation über USB-Mass-Storage-Interface
CN102609382B (zh) * 2011-11-01 2014-12-10 大连捷成实业发展有限公司 Gpio接口时序控制方法及系统
CN103984655A (zh) * 2014-04-29 2014-08-13 三星半导体(中国)研究开发有限公司 数据访问的处理方法和装置
CN105224479A (zh) * 2015-10-29 2016-01-06 上海斐讯数据通信技术有限公司 用于poe交换机的poe驱动系统
US10635816B2 (en) * 2016-04-04 2020-04-28 Wyse Technology L.L.C. Restricting reprogramming of a redirected USB device
JP2018063563A (ja) * 2016-10-12 2018-04-19 Jns株式会社 コンピュータ装置及びコンピュータシステム
US20190050366A1 (en) * 2017-08-14 2019-02-14 Qualcomm Incorporated Device, event and message parameter association in a multi-drop bus
CN107391049B (zh) * 2017-09-08 2023-05-26 南宁磁动电子科技有限公司 存储连接设备及存储系统
CN110175050B (zh) * 2019-05-29 2022-10-14 深圳创龙智新科技有限公司 外围设备控制方法、装置、系统、电子设备及存储介质

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05265911A (ja) * 1992-03-24 1993-10-15 Toshiba Corp インタ−フェイス機能拡張システムおよびインタ−フェイス機能拡張方法
US6018779A (en) * 1997-12-15 2000-01-25 Emc Corporation System for encapsulating a plurality of selected commands within a single command and transmitting the single command to a remote device over a communication link therewith
TW501000B (en) 2000-01-05 2002-09-01 Iomega Corp Storage device in an expansion slot of a computer input device
JP2001344192A (ja) 2000-05-31 2001-12-14 Fuji Photo Film Co Ltd ベンダ固有情報の送受信方法及び情報処理装置並びに提供媒体
US7039727B2 (en) 2000-10-17 2006-05-02 Microsoft Corporation System and method for controlling mass storage class digital imaging devices
JP3680763B2 (ja) * 2001-05-14 2005-08-10 セイコーエプソン株式会社 データ転送制御装置及び電子機器
JP3870717B2 (ja) * 2001-05-14 2007-01-24 セイコーエプソン株式会社 データ転送制御装置及び電子機器
TW514791B (en) 2001-05-28 2002-12-21 Via Tech Inc Structure, method and related control chip for accessing device of computer system with system management bus
US6601119B1 (en) * 2001-12-12 2003-07-29 Lsi Logic Corporation Method and apparatus for varying target behavior in a SCSI environment
US7873028B2 (en) * 2002-01-25 2011-01-18 Quanta Computer, Inc. Method and apparatus for a flexible peripheral access router
JP4242798B2 (ja) 2002-05-29 2009-03-25 株式会社ハギワラシスコム Usbストレージデバイス及びその制御装置
JP3513147B2 (ja) 2002-05-29 2004-03-31 株式会社ハギワラシスコム Usbストレージデバイス及びその制御装置
US7159065B1 (en) * 2002-06-20 2007-01-02 Cypress Semiconductor Corporation Method for issuing vendor specific requests for accessing ASIC configuration and descriptor memory while still using a mass storage class driver
US6925519B2 (en) * 2002-07-25 2005-08-02 Lsi Logic Corporation Automatic translation from SCSI command protocol to ATA command protocol
US20040136224A1 (en) * 2002-09-06 2004-07-15 John Hamer One button external backup
JP4331932B2 (ja) 2002-11-14 2009-09-16 株式会社アイ・オー・データ機器 バックアップ方法、バックアップ用プログラム及びバックアップ用プログラムの記録媒体
US7149840B1 (en) * 2003-03-25 2006-12-12 Cypress Semiconductor Corp. Universal serial bus interface to mass storage device using speculative write commands
TWI261757B (en) 2003-04-30 2006-09-11 Hagiwara Sys Com Co Ltd USB storage device
US20050015611A1 (en) * 2003-06-30 2005-01-20 Poisner David I. Trusted peripheral mechanism
US7010638B2 (en) * 2003-08-29 2006-03-07 Texas Intruments Incorporated High speed bridge controller adaptable to non-standard device configuration
US7363395B2 (en) * 2003-12-31 2008-04-22 Intel Corporation Intermediate device capable of communicating using different communication protocols
US7086583B2 (en) * 2004-01-20 2006-08-08 Standard Microsystems Corporation Systems and methods for power reduction in systems having removable media devices
US20060251087A1 (en) * 2005-05-03 2006-11-09 Ng Weiloon Processing an information payload in a communication interface

Also Published As

Publication number Publication date
US20060190666A1 (en) 2006-08-24
CN1825294A (zh) 2006-08-30
TWI330319B (en) 2010-09-11
TW200707201A (en) 2007-02-16
CN100507882C (zh) 2009-07-01
US8135871B2 (en) 2012-03-13
KR100781926B1 (ko) 2007-12-04
JP2006235994A (ja) 2006-09-07

Similar Documents

Publication Publication Date Title
KR100781926B1 (ko) 컴퓨터 시스템 및 그 제어 방법
JP3641230B2 (ja) メモリカードを制御するための装置および方法
JP5140100B2 (ja) 多機能半導体記憶装置
US20060174049A1 (en) USB to SATA bridge system
JP4346853B2 (ja) 電子装置及びその制御方法
US7007127B2 (en) Method and related apparatus for controlling transmission interface between an external device and a computer system
CN101110039B (zh) 终端设备自安装及自启动系统及方法
US9104895B2 (en) Method for accessing a portable data storage medium with auxiliary module and portable data storage medium
JPH1153485A (ja) コンピュータシステム、記憶装置、変換システム、及び記録媒体
US20060251087A1 (en) Processing an information payload in a communication interface
US8904094B2 (en) Memory system in which extended function can easily be set
JP2008015629A (ja) カード型周辺機器およびホスト機器
US7124235B2 (en) USB apparatus with switchable host/hub functions and control method thereof
KR20020036717A (ko) 마이크로컴퓨터 및 그 제어 방법
JP3641239B2 (ja) メモリカードを制御するための装置および方法
EP1394682B1 (en) Data transfer control device, program and method of fabricating an electronic instrument
US20050198425A1 (en) Combined optical storage and flash card reader using single ide or sata port and method thereof
JP4644569B2 (ja) 複数チップの起動方法
JP4622770B2 (ja) 通信システム、情報処理装置、周辺装置、及び通信方法
US7039746B2 (en) Interface circuit, disc controller, disc drive apparatus and interface control method
JP4793798B2 (ja) マイクロコンピュータ
KR20010000941A (ko) 스마트미디어 카드 독출/기입 장치 및 그 방법
EP1524595B1 (en) Removable media device, host device, program and recording medium thereof
KR100604825B1 (ko) 펌웨어 다운로드 방법
JP4952710B2 (ja) コンピュータシステム

Legal Events

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

Payment date: 20111028

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20121114

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee