제가되기때문에보다효과적이고공격적인전력공급정책이필요하게된다. 서스팬드 (Suspend) 상태의버스전력공급상태를원래의상태로복원하는작업을리쥼 (Resume) 이라 고부른다. USB 에서정의하는서스팬드는크게 2 가지로나뉜다. 하나는전역 (Global) 서스팬드이고다른하나는선택
|
|
- 용만 노
- 6 years ago
- Views:
Transcription
1 6 장 USB 전원관리 필자는이번장에서전원관리, 전력관리, 전원절약등의단어를혼용해서사용한다. 참고해서읽어 주기를바란다 노트북 PC에 USB 이동식디스크를꽂은상태로장시간동안 USB 이동식디스크를사용하지않고다른작업을하고있었다고가정해보자. 그동안 USB 버스로불필요한전력이낭비되어사용된결과가되었다. 그렇지않아도배터리가부족한상황이라면, 노트북 PC 사용자에게이런낭비문제는심각한문제가아닐수없다. USB 버스는이와같은전력공급에있어서보다공격적으로사용되는전력을절약할수있는방법을연구하고제시하고있다. 이번장에서는 USB 2 와 USB 3 각각에서버스전력사용을최소화하는요소들과관련된내용을배워 보도록하겠다. 그리고최근이슈되고있는 USB Type-C 와전원관리에대해서배워보도록하겠다. 6.1 버스리쥼 (Resume) 과서브팬드 (Suspend) USB 버스의전력사용을가장최소화하는방법은당연히사용중인 USB 디바이스를제거하는것 이다. 다시금디바이스를사용해야한다고판단될때, 다시 USB 디바이스를호스트 ( 허브 ) 에연결 한다. 이것만큼가장확실하게버스의전력사용량을줄이는방법은없다. 물론물리적으로디바이스를제거하지않는다하더라도 USB 호스트컨트롤로에게제공되는전력을끊어버리면이역시같은결과를가져오게될것이다. 물리적으로디바이스를제거하지않는상황에서이와같이 USB 호스트컨트롤로에게제공되는전력을끊어버리는상황은컴퓨터를최대절전모드로전환하는작업을예상할수있다. 이번장에서이와같은내용을설명하려는것이아니다. 버스에물리적으로연결되는상황에서또한호스트컨트롤로에게제공하던전력을그대로유지하는상황에서필요에따라보다적극적인방법을사용해서디바이스에게공급하던전력을가장경제적인공급이될수있도록하는것이목적이다. 당연히정상동작을하고있는디바이스에게악영향을끼쳐서도않된다. 호스트입장에서 USB 디바이스의전력공급을당분간줄여도무방할것이라는정확한판단이필요하다. USB 디바이스의전력공급을최대한줄이는상황을서스팬드 (Suspend) 상태라고부른다. USB 디바이스에게공급되던전력을많이줄이면줄일수록좋겠지만, 반면에다시원래대로환원 하는데걸리는시간이전력을줄이는양만큼오래걸린다. 결국많이줄이면복원하는데걸리는시간또한오래걸린다는뜻이된다. 이것이가장중요한문
2 제가되기때문에보다효과적이고공격적인전력공급정책이필요하게된다. 서스팬드 (Suspend) 상태의버스전력공급상태를원래의상태로복원하는작업을리쥼 (Resume) 이라 고부른다. USB 에서정의하는서스팬드는크게 2 가지로나뉜다. 하나는전역 (Global) 서스팬드이고다른하나는선택적 (Selective) 서스팬드이다. 호스트컨트롤로에게공급되는전력을줄이지않고, 또한사용중인 USB 디바이스를호스트에서제거하지않은상태로서스팬드시키는방법은 USB 2, USB 3 각각에서약간씩의차이는있지만공통적인의미를가지는방법이사용된다. 그것은버스상에그어떤의미있는패킷이송수신되지않을때, 이시간이지정된시간보다오랫동안지속되면호스트와디바이스는현재버스의전력공급상태를서스팬드시킬수있다. 예를들어, USB 2에서는 3ms 시간동안호스트와디바이스간에송, 수신되는패킷이없다면버스상태를서스팬드로전환한다. 보통서스팬드된버스는디바이스에게거의최소화된전력만사사용하는것허용한다. 왜냐하면, 마우스, 키보드등과같은입력장치들은오랜시간동안사용되지않고있다가도사용자가디바이스를움직이는행동을함으로써, 곧바로해당하는디바이스를다시사용할수있는상황 (Remote Wakeup) 으로전환해야하기때문이다. 이와같은상황을호스트가인식할수있도록디바이스는최소한의전력만버스를통해서공급받아사용하게될것이다. 전역서스팬드와선택적서스팬드는디바이스입장에서는크게다르지않다. 전역서스팬드는호스트컨트롤로가자신에게붙어있던모든루트허브측으로주기적으로전송하던 모든패킷 (SOF 포함 ) 을일정시간동안보내지않는상황을통해서진입된다. 일정시간동안호스트가그어떤패킷도연결된버스로보내지않기때문에호스트에연결된모든 허브, 모든디바이스는전부서스팬드상태로전환하게된다. 이와같은방식은사용하기에현실적 이지못하다는지적이있다. 대부분의운영체제도이방식을지원하지않는다. 이보다는대부분의운영체제는선택적서스팬드를지원한다. 선택적서스팬드는특정디바이스에게전달되던패킷을일정시간막는행위로인해해당하는디 바이스가연결된버스상태만서스팬드상태로전환하는것을의미한다. 이런방법을지원하려면 당연히허브가이와같은서스팬드를지원해야한다. 호스트컨트롤러는허브에게명령어를전송
3 하여이와같이허브의특정포트가서스팬드상태로전환할수있도록요청한다. 선택적서스팬드와관련해서, 디바이스가서스팬드상태를원하지않는다면, 다시리쥼절차를통해서디바이스는버스의상태가서스팬드상태로전환되지않도록막기도한다. 시중에있는디바이스들중에는이와같이버스가서스팬드상태로전환되지않도록조치하는디바이스가있다. 이와같은디바이스의이런행동은 USB 버스가요구하는기본적인전원관리방법을무시하는행동이기때문에운영체제가요구하는 USB 인증프로그램혹은 USB ORG 협회에서제공하는인증프로그램은이런행동을금지하고있다.( 인증을받지못한다는의미이다 ) 그림 6-1 서스팬드 (Suspend) 와리쥼 (Resume) [ 그림 6-1] 을보면, 서스팬드상태의버스를정상상태로전환하는리쥼시그널이호스트혹은디바이스에게요구되는것을알수있다. 이때, 디바이스가이와같은리쥼시그널을요구하는상황을원격깨우기기능이라고부른다. 원격깨우기기능 (Remote Wakeup) 을가지지않은디바이스는호스트에의해서만리쥼시그널이발생될수있다.
4 6.2 USB 2 전원관리 USB 2 는서스팬드상태의버스가원래대로전력사용량을복원하는데걸리는시간을효율적으로 관리하기위해서버스의전력사용상태를몇가지단계로나누어서설명한다 LPM(Link Power Management) USB 2 는다음과같은 4 가지의전원관리 ( 전력공급 ) 상태를규정하고있다. 표 6-1 USB Link Power Management 상태 LPM 상태 L0(On) L1(Sleep) L2(Suspend) L3(Off) 설명버스의전력이정상적으로공급되는상태 L0상태보다적은양의전력만사용하는상태. 디바이스가 VBUS 시그널로부터공급되는전력을어느정도까지만끌어사용해야하는지에대한정의가되어있지않다. 리셋신호, 호스트리쥼신호, 디바이스 Remote Wakeup등에의해서깨어날수있다 L1상태보다적은양의전력만사용하는상태. 디바이스가 VBUS 시그널로부터공급되는전력을끌어사용할수있는제한이스팩내부에명시되어있다. 리셋신호, 호스트리쥼신호, 디바이스 Remote Wakeup등에의해서깨어날수있다버스에전원공급이전혀없는상태. 디바이스가호스트에서제거된상태. 사용금지된상태. 리셋신호에의해서만 L0 상태로복원될수있다. L1 상태와 L2 상태는전력소비량만상대적으로다른상태이다. L1 상태에서 L0 상태로복원하는데 걸리는시간은 L2 상태에서 L0 상태로복원하는데걸리는시간보다짧다. L3 상태에서 L0 상태로복원하는과정은리셋신호에의해서만이루어진다. [ 그림 6-2] 는 LPM 에서규정한 4 가지상태간의전환과사건을명시하고있다.
5
6 그림 6-2 LPM 상태전환다이아그램 [ 그림 6-2] 를보면, 각각의상태가어떻게진입되는지와빠져나오게되는지를알수있다. L0 를제외한나머지모든상태는복원상태로전환하는데있어, L0 상태로만복원할수있다. (L1->L0, L2->L0, L3->L0) 표 6-2 L1 상태와 L2 상태의비교 L1(Sleep) L2(Suspend) 진입하기 LPM 확장트랜잭션을사용 3ms 동안패킷전송이없다 빠져나가기 호스트리쥼과 원격디바이스깨 호스트리쥼과 원격디바이스깨 우기기능 (LPM 트랜잭션을통해서활성화 / 비활성화됨 ) 우기기능 ( 소프트웨어를통해서활성화 / 비활성화됨 ) 사용되는신호 LS, FS Idle 시그널을유지한다 LS, FS Idle 시그널을유지한다 진입과빠져나가는지연시간 진입 : 최대 10us 빠져나오기 : 최대 70us에서 1ms 진입 : 최대 3ms 빠져나오기 : 최소 30ms 이상 링크전력소비량 최대 0.6mW 최대 0.6mW 디바이스전력소비량 스팩에서미정의됨 500uA 또는 2.5mA 이하 디바이스강제제거인식 인식할수있다 인식할수있다 HS 디바이스가서스팬드되면항상 FS 상태로우선전환된뒤에서스팬드된다. (3 장참고 )
7 프로토콜 LPM 확장트랜잭션은호환성을위해기존에사용되던 USB 2 트랜잭션의모습을그대로유지하 면서확장된프로토콜을사용한다. 표 6-3 PID 유형 PID 유형 PID 이름 PID 값 (4비트) 설명 토큰 (Token) OUT IN SOF SETUP 0001B 1001B 0101B 1101B 호스트에서디바이스로데이터를전송디바이스에서호스트로데이터를전송 Start Of Frame 신호로사용컨트롤파이프의 Setup명령을디바이스로전송 데이터 (Data) DATA0 DATA1 DATA2 MDATA 0011B 1011B 0111B 1111B 짝수 Data 패킷홀수 Data 패킷고대역폭등시성전송에서사용됨 Split과고대역폭등시성전송에서사용됨 Handshake ACK NAK STALL NYET 0010B 0101B 1110B 0110B 데이터를정상으로수신했다데이터를받거나보낼수없다엔드포인트가정지 (Halt) 되었다데이터를수신했지만, 아직처리중이다. 특별한목적 PRE ERR SPLIT PING EXT 1100B 1100B 1000B 0100B 0000B 토큰으로사용됨. Low Speed 에사용됨. Handshake에사용됨. Split 전송에러. 토큰으로사용됨. Split전송에사용 High Speed 컨트롤, 벌크엔드포인트흐름제어목적으로사용됨. 예약됨. LPM에서사용하고있음. [ 표 3-6] 를보면, USB 2 에서사용되는모든패킷 ID(PID) 를보여주고있다. 가장마지막항목인 EXT PID 값은 0000B 로서, 그값에서알수있듯이원래는사용되지않는값이다. 하지만, LPM 은 이값을선택해서자신의프로토콜에사용하기로결정했다.
8 그림 6-3 EXT PID 를사용한트랜잭션 [ 그림 6-3] 을보면, EXT PID를시작으로사용하는토큰패킷과이어지는확장된토큰패킷, 그리고파라미터를알수있다. 이와같은방법을사용하기때문에, 기존에 USB 2 를지원하는디바이스가맨앞에전달되는 PID를확인하여 EXT PID를발견하고또한디바이스자신이 LPM을지원한다면이와같은트랜잭션을올바르게처리하게된다. 현재사용하는 SubPID 값은이진수 0011B 값만정의되어사용되고있다. 표 6-4 [ 그림 6-3] 의 SubPID 를위한 Variable 필드의정의 비트 필드 설명 10:9 사용안됨 8 bremotewake 원격깨우기기능활성화여부 1 : 활성화 0 : 금지 7:4 HIRD 호스트가 L1 상태에서 L0 상태로리쥼시그널을유지하는시간 (Host Initiated Resume Duration)
9 값 유지시간 0000B 50us 0001B 125us 0010B 200us 0011B 275us B 1.2ms 3:0 blinkstate 해당하는트랜잭션에대해서디바이스가 ACK 패킷으로응답하는경우에디바이스는다음의상태로전환되어져야한다 값 설명 0001B L1(Sleep) [ 표 6-4] 에서 HIRD값 4비트가사용되고있다. L1상태에있는버스상태를 L0상태로전환하는작업 을호스트가요구하는경우, 호스트는리쥼시그널을일정시간동안유지하게된다. 이때사용되는 유지시간정보를 HIRD라고부른다. 디바이스는이값을사전에확인하여이값을사용하기에무리 가있다면절대로 LPM EXT PID 트랜잭션에대해서 ACK패킷을응답하면안된다. [ 표 6-4] 를보면, LPM 이규정하고있는 blinkstate 는 L1 상태만임을알수있다. L1 상태는 LPM EXT PID 를통해서진입할수있기때문이다. 그림 6-4 EXT PID 를사용한트랜잭션에대한디바이스의응답
10 [ 그림 6-4] 는 EXT PID 에대한디바이스의가능한응답패킷을보여주고있다. ACK 패킷으로응답하는경우는해당하는트랜잭션을받아들인다는의미가된다. 이경우, 디바이스는곧바로 L1상태로전환하지말아야한다. 스팩에서정의한기준시간만큼은기다려야한다. 왜냐하면, HS 속도를사용하는경우에는곧바로 L1 상태가되는것이아니라, FS 속도로먼저버스상태가전환된뒤에 L1상태가되기때문이다. [ 표 6-2] 에서보았던대로, L1 상태에서는 FS Idle상태를유지한다. NYET 패킷으로응답하는경우는아직이런트랜잭션을받아들이기어렵다는의미가된다. 다른 데이터패킷트랜잭션이아직진행중인경우가된다. STALL 패킷으로응답하는경우는해당하는트랜잭션을지원하지않는다는뜻이다 LPM 를정의하는 USB 디바이스프레임워크 USB 2 에서정의하고있는디스크립터 (Descriptor) 중에는 USB 2.0 확장디스크립터 (Extension Descriptor) 가있다. LPM 은이것을사용해서디바이스의 LPM 지원여부를호스트에알리고있다. 표 6-5 USB 2.0 확장디스크립터 (Extension Descriptor) 오프셋 필드 크기 ( 바이트 ) 값 설명 0 blength 1 수 디스크립터크기 ( 바이트 ) 1 bdescriptortype 1 상수 DEVICE CAPABILITY Type(0) 2 bdevcapabilitytype 1 상수 USB 2.0 EXTENSION Type(2) 3 bmattributes 4 비트맵 파라미터 비트 설명 1 LPM. LPM지원여부 나머지사용안함 (0) USB 2.0 은 Binary Device Object Store(BOS) 디스크립터를정의하고있다. LPM은 BOS 디스크립터내의 USB 2.0 확장디스크립터를사용한다. BOS 디스크립터자체는컨트롤명령 (GET_DESCRIPTOR) 을통해서얻을수있지만, 이와같은 BOS 디스크립터내부의다른디스크립터는직접얻는명령어가없다. 사용자는 BOS 디스크립터를모두읽어서해석 (Parsing) 하는과정을통해 USB 2.0 확장디스크립터의존재를확인할수있다.(8장에서참고 )
11 [ 표 6-5] 처럼디바이스는 USB 2.0 확장디스크립터를사용해서 LPM 기능을지원하는지여부를호 스트에게알려야한다. BOS 디스크립터를지원하는디바이스는반드시디바이스디스크립터 (Device Descriptor) 의 bcdusb 필드의값이 0x0201 이상의값을사용해야한다 허브와 LPM 호스트컨트롤러가특정디바이스의버스공급상태를 L1 상태로전환하거나 L0 상태로복원하는 작업은허브가가진기능을이용해서이루어진다. 이때문에허브는 LPM 기능을지원해야하는허브여야하며, LPM 과관련되어호스트가전달하는 명령어 ( 허브전용명령어 ) 를해석할수있어야한다 L0 -> L1 그림 6-5 호스트가컨트롤전송명령을통해 EXT PID 트랜잭션을하는모습
12 [ 그림 6-5] 를보면, 호스트컨트롤로에서허브로컨트롤전송명령 (SetandTestPortFeature) 을전송하고있다. 이명령어는관련된파라미터를담고있다. 허브는디바이스가연결된포트를 Idle 상태로전환한다음, LPM 트랜잭션을시작한다. 디바이스가응답패킷을응답하면, 허브는 LPM Completion Code 를사용해서호스트에게결과를알려주고있는모습이다. 그림 6-6 LPM 트랜잭션을사용하여 L0 상태에서 L1 상태로전환하는모습 [ 그림 6-6] 을보면, LPM 트랜잭션을통해서 L0 상태에서 L1 상태로전환하는모습과그에따른지 연시간정보를보여주고있다. TL1TokenRetry 값은디바이스가응답패킷을호스트 ( 허브 ) 로올려주는한계시간을정의한다. 이시 간은최소 8us 에서최대 10us 이내로정의된다. TL1Residency 값은최소한디바이스가유지해야하는 L1 시간을정의한다. 이시간은최소 50us 이상으로정의된다.
13 L1 -> L0 그림 6-7 디바이스측에서원격깨우기기능 (Remote Wakeup) 을사용해서 L1 상태에서 L0 상태로전 환하는모습 [ 그림 6-7] 을보면, L1 상태의디바이스측에서 Remote Wakeup 기능을사용해서버스상태를 L0 상태로전환하는모습을보여주고있다. 이런요청에대해실제빠르게전환되는모습과느리게전화되는모습을모두보여주고있다. 스팩에서는이와같은상태전환에따른시간상수를다음과같이정의한다. TL1HubDrvResume1 값은최소 50us 에서최대 1200us 이내로정의된다. TL1DevDrvResume 값은최소 50us 만정의된다. TL1ExitDevRecovery 값은최소 10us 만정의된다. TL1ExitLatency1 값은최소 60us 에서최대 1210us 이내로정의된다.
14 TL1ExitLatency2 값은최소 70us 에서최대 1000us 이내로정의된다. TL1HubDrvResume2 값은최소 60us 에서최대 990us 이내로정의된다. TL1HubReflect 값은최대 48us 만정의된다 허브가지원하는전용명령 LPM 기능을지원하는허브는다음과같은허브전용명령어를지원할수있어야한다. * CLEAR_PORT_FEATURE/ SET_PORT_FEATURE Feature Selector 를사용해서기능을활성화하거나해제하는명령어를지원한다. 표 6-6 허브가지원하는 Feature Selector Feature Selector 대상 (Recipient) 값 (Value) C_HUB_LOCAL_POWER 허브 0 C_HUB_OVER_CURRENT 허브 1 PORT_CONNECTION 포트 0 PORT_ENABLE 포트 1 PORT_SUSPEND(L2) 포트 2 PORT_OVER_CURRENT 포트 3 PORT_RESET 포트 4 PORT_POWER 포트 8 PORT_LOW_SPEED 포트 9 PORT_L1 포트 10 C_PORT_CONNECTION 포트 16 C_PORT_ENABLE 포트 17 C_PORT_SUSPEND 포트 18 C_PORT_OVER_CURRENT 포트 19 C_PORT_RESET 포트 20 PORT_TEST 포트 21 PORT_INDICATOR 포트 22 C_PORT_L1 포트 23
15 대부분 Feature Selector 는 USB 2 허브에서정의하고있는값이다. 이중에 LPM 은 PORT_L1 과 C_PORT_L1 을추가로정의해서사용한다. PORT_L1 은 L1 상태로전환시키는호스트의명령어에 사용된다. C_PORT_L1 은 PORT_L1 상태가변했는지여부를기록하는 Selector 이다. * GET_PORT_STATUS 포트의상태를확인하는명령어를지원한다. 표 6-7 허브가지원하는 Port Status 비트설명 0 Current Connect Status. 포트에디바이스가연결되어있는지여부 0 = 현재포트에는디바이스가연결되지않았다 1 = 현재포트에는디바이스가연결되었다 1 Port Enabled/Disabled. 소프트웨어에의해서포트가사용가능 / 사용불가능여부 0 = 현재포트가사용불가능상태 1 = 현재포트가사용가능상태 2 Suspend. 0 = 현재포트가서스팬드되지않았다 1 = 현재포트가서스팬드되었다 3 Over current. 0 = 현재포트의과잉전류신호가발견되지않았다 1 = 현재포트의과잉전류신호가발견되었다 4 Reset. 0 = 현재포트의리셋신호가발견되지않았다 1 = 현재포트의리셋신호가발견되었다 5 L1. 0 = 현재디바이스와연결된버스상태가 L1 상태가아니다 1 = 현재디바이스와연결된버스상태가 L1 상태이다 6-7 사용안함 8 Port Power. 0 = 현재포트가 Power Off 상태이다 1 = 현재포트가 Power Off 상태가아니다. 9 Low Speed Device Attached
16 0 = Full Speed/High Speed 디바이스가연결되었다 1 = Low Speed 디바이스가연결되었다 10 High Speed Device Attached 0 = Full Speed 디바이스가연결되었다 1 = High Speed 디바이스가연결되었다 11 Port Test Mode. SetPortFeature/ClearPortFeature 명령어에의해포트테스트모드에진입한여부를확인. 0 = 포트테스트모드상태가아님 1 = 포트테스트모드상태 12 Port Indicator Control. 포트의상태를표시하는불빛표시기능을컨트롤. 0 = 디폴트색상을사용함 1 = 소프트웨어가컨트롤하는색상을사용함 사용안함 [ 표 6-7] 은 USB 2 허브가지원하는포트상태값이다. 이중에 LPM 은비트 5 를추가정의해서사용 하고있다. 표 6-8 허브가지원하는 Port Change Status 비트설명 0 Connect Status Change. 0 = Current Connect Status 가변하지않았다 1 = Current Connect Status 가변했다 1 Port Enabled/Disable Change. 포트가 Port_Error 조건에의해서사용불가능할때만셋된다 2 Suspend Change. 0 = Suspend 상태가변하지않았다 1 = Suspend 상태가변했다 3 Over Current Indicator Change. 0 = 현재포트의 Over Current 상태가변하지않았다 1 = 현재포트의 Over Current 상태가변했다 4 Reset Change. 포트의리셋과정이모두끝났는지여부 0 = 현재포트의리셋신호가발견되지않았다 1 = 현재포트의리셋신호가발견되었다. 이후과정이모두끝났다. 5 L1 Change. L1상태였던현재의포트가지금은어떤상태인지를알린다 0 = 여전히변하지않았다
17 6-15 사용안함 1 = L1 상태를빠져나갔다 (L0 상태가되었다 ) [ 표 6-8] 은 USB 2 허브가지원하는포트상태가변할때값이다. 이중에 LPM 은비트 5 를추가정 의해서사용하고있다. [ 표 6-7] 의필드의내용이변했는지를확인하는용도로사용되고있다. * SET_AND_TEST 표 6-9 SET_AND_TEST 명령어포멧 bmrequesttype brequet wvalue windex wlength Data B SET_AND_TEST PORT_L 1 Feature Selector 비트 3..0 Port 7..4 HIRD Device Address 15 Remote Wakeup Enable 1 00H ACK 10H NYET 11H 타임아웃 호스트컨트롤로는허브에게 [ 표 6-9] 와같은컨트롤명령을전송하여 LPM L1 상태로버스의상태 를전환시킨다.
18 6.3 USB 3 전원관리 USB 3 전원관리의개요 USB 3 은 USB 2 보다다음과같은특징을통해서보다효과적인전원관리가이루어지도록수정 되었다. * 반복적인폴링 (Polling) 작업을줄였다 반복적인폴링작업은디바이스가준비된상태인지를확인하는대표적인 USB 버스의특징이다. USB 3 은폴링작업을하지않아도되도록프로토콜을수정하였다. 폴링작업은불필요한전력낭비 를가져온다. * 허브를통해서브로드캐스팅되는패킷수를줄였다 ITP 패킷 (U0 상태의링크에게만전송됨 ) 을제외하면더이상호스트는브로드캐스팅형태의패킷전 달방법을사용하지않는다. 이제 Route Address 정보를사용하여호스트가통신을원하는디바이 스에게만정확하게패킷을전송할수있게되었다. * 버스가사용되고있지않을때, 보다디바이스와호스트는보다저극적으로전력사용량을줄일 수있게되었다. * 호스트와디바이스는양쪽이모두전력사용량을줄이는요청을할수있게되었다. USB 2 에서 는이와같은요청은호스트의전유물이었다. * 디바이스수준과펑션수준각각에서서스팬드요청을할수있도록보다정교한전원관리가가능 해졌다.
19 링크전원관리 (Link Power Management) USB 3 은링크수준에서전원을관리하는프로토콜을정의하고있다. 링크상태는 Upstream Port 와 Downstream Port 각각의상태가함께정의되어진다. U0 부터 U3 까지모두 4 가지상태를정의하고 있다. 표 6-10 링크상태 링크상태 요약 설명 U0 링크활성화 동작이가능한평상시상태 U1 링크 Idle( 빠른나가기 ) Rx, Tx 회로가거부됨 U2 링크 Idle( 느린나가기 ) 클럭발생회로가거부됨 U3 링크서스팬드 인터페이스전력제거됨 그림 6-8 U0, U1, U2, U3
20 [ 그림 6-8] 에서, U0 상태는링크가정상적으로 Rx, Tx 를수행할수있는상태를의미한다. 모든 USB 3 SS 패킷이송, 수신될수있다. U1, U2 상태는링크 Idle 상태이다. U1 상태가 U2 상태보다는전력사용이높다. U1 상태는 U2 상태로전환될수있다. 이런작업은미리링크파트너양쪽에서정의하고있는타임아웃값에따라서자동으로전환된다. 이런경우를제외한모든상황에서 U1, U2, U3 상태는 Recovery 상태를거쳐서 U0 상태로만전환될수있다. 물론 U0 상태는 U1, U2, U3 상태로곧바로전환될수도있다. Recovery 상태는 Retraining 과정을통해서링크의상태를 U0 상태로전환할수있는지를확인한다. 이곳에서는설명을위해서 Recovery 상태를생략하도록하겠다. 독자들은특별한설명을하지않 더라도 U1, U2, U3 상태가 U0 상태로전환하기위해서는 LFPS 시그널을거친뒤에반드시 Recovery 상태로먼저전환된후에 U0 상태가된다는사실을기억해길바란다 U0 링크활성화상태 완전한동작이가능한링크상태이다. 모든 USB 패킷이송, 수신될수있다 U1 링크 Idle( 빠른나가기 ) 상태 링크파트너는각각 U0 에서 U1 상태로의전환을거절하거나수용할수있다. 전환명령은 LGO_U1 링크명령어에의해서요청된다. 거절할때는 LXU, 수용할때는 LAU 링크명령어에의해서대응된 다. U2 상태보다는 U0 상태로빠져나가는시간이빠르다. 다음과같은파라미터가중요하게다루어진다. * U1DevExitLat : 디바이스가 U1 상태에서 U0 상태로전환하는데걸리는시간정보를의미한다. 디바 이스가호스트에게보고한다. * PORT_U1_TIMEOUT : 링크의 Downstream Port 가사용하는타임아웃값으로써, PORT_U1_TIMEOUT 기능을사용하는경우, U0상태의링크는내부적으로타이머를구동한다. 타이머값은 U0상태의링크에서어떤패킷이라도송, 수신이발생하면다시리셋된다. 타이머값이 PORT_U1_TIMEOUT값이되면 Downstream Port 는링크파트너 (Upstream Port) 에게 U1상태로의
21 전환을명령한다. * U1_Enable : 링크의 Upstream Port 가호스트측으로 U0 상태에서 U1 상태로전환하는요청을발 생시키는기능여부를나타낸다. 표 6-11 U1 상태로진입을요청하는파라미터값 PORT_U1_TIMEOUT U1_Enable 전환요청하는포트 01H FEH 금지됨 Downstream Port FFH 허용됨 Upstream Port 01H FEH 허용됨 DP 또는 UP 0H 또는 FFH 금지됨 사용할수없다 [ 표 6-11] 을보면, PORT_U1_TIMEOUT 값이사용되면서 U1_Enable 기능이허용되면, 링크양쪽파트너는어느쪽이던지 U0상태의링크를 U1상태로전환하는요청을먼저할수있다는것을알수있다. PORT_U1_TIMEOUT 값이사용되면서 U1_Enable 기능이금지되면, U0상태의링크를 U1 상태로전환하는요청은호스트 ( 허브, DP) 에서만하게된다. U1 상태는 U0 상태로전화하거나 U2 상태로전환될수있다. U1 상태는 LFPS(Low Frequency Periodic Signal) 에의해서 U0 상태로전환된다.(4 장참고 ) 예를들어, 링크상태가 U1 상태에있을때, 디바이스가호스트로엔드포인트의준비상태를알리 기위해서 ERDY 패킷을보내고자한다면, 먼저링크의상태가 U0 상태로전환되어져야한다. 이런 경우 LFPS 시그널을사용해서 U0 상태로의전환을요청하게된다. U1 상태는특별한조건에의해서 U2 상태로전환될수있다. 더깊은잠들기상태로전환되는것 을의미한다. 이런조건은 PORT_U2_TIMEOUT 값을링크파트너양쪽이서로기억하고있어야한다. U1상태에진입한상태부터링크파트너양쪽은특별한타이머를사용해야한다. 이타이머는 U1 상태에얼마나체류하고있는지를나타낸다. 이값이 PORT_U2_TIMEOUT 값이되면링크파트너양쪽은별도의패킷교환작업이없이 U2상태로전환한다. 왜냐하면, 이미 U1상태에서는별도의패킷을송, 수신할방법이없기때문이다.
22 U2 링크 Idle( 느린나가기 ) 상태 링크파트너는각각 U0 에서 U2 상태로의전환을거절하거나수용할수있다. 전환명령은 LGO_U2 링크명령어에의해서요청된다. 거절할때는 LXU, 수용할때는 LAU 링크명령어에의해서대응된 다. U1 상태보다는 U0 상태로빠져나가는시간이느리다. 다음과같은파라미터가중요하게다루어진다. * U2DevExitLat : 디바이스가 U2 상태에서 U0 상태로전환하는데걸리는시간정보를의미한다. 디바 이스가호스트에게보고한다. * PORT_U2_TIMEOUT : 링크의 Downstream Port 가사용하는타임아웃값으로써, PORT_U2_TIMEOUT 기능을사용하는경우, U0상태의링크는내부적으로타이머를구동한다. 타이머값은 U0상태의링크에서어떤패킷이라도송, 수신이발생하면다시리셋된다. PORT_U1_TIMEOUT 타이머값이사용되지않고, PORT_U2_TIMEOUT 타이머값을사용하는경우, 내부타이머값이 PORT_U2_TIMEOUT 가되면 Downstream Port 는링크파트너 (Upstream Port) 에게 U2상태로의전환을명령한다. 또한, U1상태에서 U2상태로전환하는경우에는링크파트너각각의내부타이머의의해조건이만족되면자동으로 U2상태로전환된다. * U2_Enable : 링크의 Upstream Port 가호스트측으로 U0 상태에서 U2 상태로전환하는요청을발 생시키는기능여부를나타낸다. 표 6-12 U2 상태로진입을요청하는파라미터값 PORT_U2_TIMEOUT U2_Enable 전환요청하는포트 01H FEH 금지됨 Downstream Port FFH 허용됨 Upstream Port 01H FEH 허용됨 DP 또는 UP 0H 또는 FFH 금지됨 사용할수없다 [ 표 6-12] 을보면, PORT_U2_TIMEOUT 값이사용되면서 U2_Enable 기능이허용되면, 링크양쪽파 트너는어느쪽이던지 U0 상태의링크를 U2 상태로전환하는요청을먼저할수있다는것을알 수있다. PORT_U2_TIMEOUT 값이사용되면서 U2_Enable 기능이금지되면, U0 상태의링크를 U2
23 상태로전환하는요청은호스트 ( 허브, DP) 에서만하게된다. U1 상태는 U2 상태로자동으로전환될수있다. 링크의상태가 U1 상태로진입하면, 링크파트너내부의 U2 타이머가동작을시작한다. 이타이머의 값이 PORT_U2_TIMEOUT 값과같아지면, 링크는자동으로조용히 U1 상태에서 U2 상태로전환된다. U2 상태는 LFPS(Low Frequency Periodic Signal) 에의해서 U0 상태로전환된다.(4 장참고 ) U3 링크서스팬드상태 U3 상태는서스팬드 (Suspend) 상태로부른다. 가장깊은전력소비량이적은상태이다. 이상태에 들어간링크는다음과같은일을위해서만전력을사용할수있다. * Upstream Port 는 Warm 리셋시그널이언제든지들어오면감지할수있어야한다. * Upstream Port 는호스트에서요청하는 Wakeup 시그널 (LFPS) 을감지할수있어야한다. * Upstream Port 는원할때 Remote Wakeup 시그널을발생시킬수있어야한다.( 기능을가진경 우 ) * Downstream Port 는필요할때 Warm 리셋시그널을만들수있어야한다. * Downstream Port 는디바이스가제거되는시그널을감지할수있어야한다. * Downstream Port 는디바이스에서요청하는 Remote Wakeup 시그널을감지할수있어야한다. * Downstream Port 는필요할때디바이스로 Wakeup 시그널 (LFPS) 을전송할수있어야한다. U3 상태라하더라도 VBUS 는활성화상태로유지되어져야한다. 다만, 전력소비량을최소화해야 한다. U0 상태에서 U3 상태로전환하는작업은호스트측의소프트웨어에의해서만가능하다. 호스트 소프트웨어는허브에게전용명령어를전송한다. 허브는링크파트너에게 LGO_U3 링크명령어를발 생시킨다. 디바이스측의 Upstream Port 는이와같은 LGO_U3 명령어를거절할수없다.
24 U3 상태에서 U0 상태로전환하는작업은크게두가지의경우로나뉜다. * 호스트는 U3 상태의링크를 U0 상태로전환하기위해서, 소프트웨어를사용해서허브에게전용 명령어 (SetPortFeature) 를전송한다. 허브는이명령어를받으면, 링크파트너측으로 LFPS 시그널을 사용해서 U0 상태로전환한다. * 디바이스는 U3 상태의링크를 U0 상태로전환하기위해서 LFPS 시그널을전송한뒤, Function Wake Device Notification 패킷 (USB 3 의 Remote Wakeup 기능으로사용됨 ) 을호스트로전송한다 링크파워관리에있어서허브의역할 허브는링크파워관리와관련해서다음과같은 3 가지주요한역할을수행해야한다. * 허브는포트의링크파트너 (Upstream Port) 의상태를감시하고있어야한다. 허브는디바이스로부터 U1, U2, U3 상태를 U0 상태로전환하고자한다는요청 (Upstream Port 로부터 ) 이들어오면, 이를받으면자동으로처리하면서동시에허브의 Downstream Port 역시 U0 상태로 전환해야한다 그리고, U0 상태가아닌링크측으로전송해야하는패킷이호스트로부터도착하면패킷이향해야 하는 Downstream Port 를선택하고링크의상태를 U0 상태로전환하도록디바이스측으로요청 한다. * 허브는 U0 상태가아닌링크측으로패킷을전송해야하는경우, 지연관리 (Deferring) 매카니즘을 사용해야한다. 허브는 U0 상태가아닌링크로전달해야하는패킷을호스트로부터받으면, 이런흐름을막지않 고자연스럽게링크의상태를 U0 상태로전환함과동시에호스트가다음작업을진행할수있도 록유도하는지연관리매카니즘을사용한다. 자세한내용은 7 장에서배우도록하자. * 허브는 Downstream Port 의 Inactivity Timer(U1, U2) 를관리해야한다. 호스트의소프트웨어는다음 5 가지인터페이스를사용하여허브의전원관리기능을조절한다.
25 1) PORT_LINK_STATE Feature 대표적으로 Ux 상태간의전환을요청하는기능이다. 보통 U0->U3, U3->U0 로직접전환하는데 사용된다. U1, U2 에대한전환은타임아웃에의해서수행된다. 2) PORT_REMOTE_WAKE_MASK Feature 링크에연결된파트너측으로부터요청되는 Remote Wakeup 기능을금지하는기능을가지고있다. 3) C_PORT_LINK_STATE Port Change 링크의상태가 U3 상태에서 U0 상태로전환되었는지를확인하는용도로사용되는기능을제공한다. 그림 6-9 허브입장에서 PORT_U1_TIMEOUT vs PORT_U2_TIMEOUT 과상태전환
26 4) 허브입장에서 PORT_U1_TIMEOUT Feature 링크의상태를 U1 상태로전환하는요청을허브가링크파트너에게할것인지아닌지를결정한다. 이런상태전환이가능한경우에는내부타이머에의해서전환작업이진행된다. 이런상태전환이금지된경우에는조건에따라링크파트너에의해서만전환요청이발생될수있 거나전혀상태전환이불가능한경우가있다.
27 표 6-13 PORT_U1_TIMEOUT 기능과 U1 상태전환특성 PORT_U1_TIMEOUT U1 전환특성 전환요청 00H 요청, 수용모두금지됨 상관없다 01H FEH 허용됨 지정된타임아웃을사용해서 FFH 수용만허용됨 상관없다 PORT_U1_TIMEOUT 값이 00H 인경우, 해당하는링크는 U1 상태로전환될수없다. PORT_U1_TIMEOUT 값이 FFH 인경우, 해당하는링크는링크파트너가요구하는경우에만 U1 상태 로전환될수있다. 나머지의경우는타임아웃이발생하면 U1 상태로전환요청을할수있다. 5) 허브입장에서 PORT_U2_TIMEOUT Feature 링크의상태를 U2 상태로전환하는요청을허브가링크파트너에게할것인지아닌지를결정한다. 이런상태전환이가능한경우에는내부타이머에의해서전환작업이진행된다. 이런상태전환이금지된경우에는조건에따라링크파트너에의해서만전환요청이발생될수있 거나전혀상태전환이불가능한경우가있다. 표 6-14 PORT_U2_TIMEOUT 기능과 U2 상태전환특성 PORT_U2_TIMEOUT U2 전환특성 전환요청 00H 요청, 수용모두금지됨 상관없다 01H FEH 허용됨 지정된타임아웃을사용해서 FFH 수용만허용됨 상관없다 PORT_U2_TIMEOUT 값이 00H 인경우, 해당하는링크는 U2 상태로전환될수없다. PORT_U2_TIMEOUT 값이 FFH 인경우, 해당하는링크는링크파트너가요구하는경우에만 U0 상태 에서 U2 상태로전환될수있다. 이때, U1 상태에서 U2 상태로전환하는작업은불가능하다.
28 나머지의경우는타임아웃이발생하면 U2 상태로전환요청을할수있다 디바이스전원관리 (Device Power Management) USB 3 에서전원관리는링크전원관리와디바이스전원관리로구분되지만, 디바이스전원관리 는링크전원관리의 U0 상태와 U3( 서스팬드 ) 상태에서논의되는모든기술적인내용을공유한다. 디바이스전원관리디바이스전원관리는이를지원할수있는하드웨어매카니즘과소프트웨어 의적당한제어아래에서관리된다 Function Suspend 하나의디바이스에복수개의펑션 (Function) 을가지고있는복합장치 (Composite Device) 의경우, 각각의펑션이서스팬드상태에들어가는상황을소개하고있다. USB 3 에서는펑션수준의서스팬드를지원한다. 복합장치내의복수개의펑션중에어느한가지만 서스팬드상태로진입한다면, 당연히디바이스의 Upstream Port 는여전히 U0 상태를유지해야한다. 다른펑션들이아직도활성화중인상태이기때문이다. 하지만, 매카니즘적으로볼때, 특정펑션이서스팬드상태에진입한것은인정하기때문에이와같 이서스팬드상태에들어가있는펑션이리쥼요청 (Function Remote Wakeup) 을보낼수있는 TP(Function Wake Device Notification) 를정의하고있다. 펑션이서스팬드에진입하기위해서 FUNCTION_SUSPEND Feature 를사용한다. 이것은또한펑 션 Remote Wakeup 기능을활성화하는용도로도사용된다 Device Suspend 디바이스서스팬드는링크상태가 U3 상태로전환되는것을의미한다. 개별적인펑션들의서스팬드 상태의상관없이디바이스는원할때디바이스서스팬드상태로전환될수있다 호스트에서요청하는 Suspend 호스트는디바이스를다음과같은순서로서스팬드상태로전환시킬수있다.
29 * 필요하다면디바이스가원격깨우기기능을사용할수있도록활성화시킨다 * 호스트로부터허브전용명령 (SetPortFeature, PORT_LINK_STATE, U3) 명령어가허브의 Downstream Port 로전달된다. * 허브의 Downstream Port 는 LGO_U3 링크명령어를링크파트너에게전송한다. * 링크파트너 ( 디바이스 ) 는 U3 상태로전환을허용한다는의미로, LAU 링크명령어를허브에게응 답으로전송한다. * 허브의 Downstream Port 는디바이스로 U3 상태로전환한다는신호로서, LPMA 링크명령어를 보낸다. * 링크파트너양쪽은그들의 Transceiver 와 Receiver 를전기적으로 Idle 상태로전환시키고, U3 상 태로전환한다. 하나의허브가가진모든 Downstream Port 의링크 ( 연결된모든디바이스의상태가서스팬드됨 ) 가 서스팬드된다면, 허브의 Upstream Port 는자신의링크를서스팬드상태로전환시킨다 호스트에서요청하는 Wakeup 신호 호스트가서스팬드된링크의상태를 U0상태로전환하려면허브전용명령어를사용해서서스팬드된포트측으로 PORT_LINK_STATE(U0) 명령을전송한다. 허브의포트는자신의상태를 U0상태로전환한뒤, 허브에게 C_PORT_LINK_STATE Port Status Change 사실을인터럽트파이프를통해서알린다. 허브가가지고있는다른서스팬드된모든포트의상태를 U0상태로전환하는경우가아니라면, 호스트가요청하던 Wakeup 작업을마친다 디바이스에서요청하는 Wakeup 신호 서스팬드 (U3) 된디바이스가요청하는 Wakeup 신호를 Remote Wakeup 신호라고부른다.(U1, U2 상 태에서는 Remote Wakeup 신호를사용하지않는다 ). 이신호는다음과같은순서대로처리된다. * 디바이스는링크파트너에게 LFPS Wakeup 시그널을발생시킨다. * Remote Wakeup 신호는루트허브에게까지전달되어져야하기때문에, 링크파트너 ( 허브 ) 는자 신이받은 LFPS Wakeup 시그널을재귀적인방법으로루트허브에게까지전달한다. 루트허브는 디바이스로부터받은 LPFS 신호를그대로다시처음디바이스로부터 LFPS 신호를받았던외장허
30 브의 Downstream Port 에게내려보낸다. 호스트에서디바이스까지의모든링크상태가 U0 상태로 전환된다. * 링크상태가 U0 상태로전환되면, 디바이스내의펑션은 Function Wake Device Notification TP 패 킷을호스트로전송요청한다 플랫폼전원관리 LTM(Latency Tolerance Message) 기능은플랫폼이별도의추가비용없이, 전력소비량과성능요구량 간의적절한저울질을할수있도록허용하는기능이다. 통상전력소비량을올리면당연히성능이가장좋아지는것이일반적이다. 하지만, 어느정도성능을포기한다면상당한양의전력소비량을줄일수있는상황이발생될수 있다. 이와같은상황을효과적으로관리할수있도록지원하는방법이 LTM 기능이다. LTM 메시지는 TP 프로토콜형식을사용해서디바이스가호스트로전송한다. Latency Tolerance 라는단어를우리식으로풀면어떤단어로사용하는것이좋을까? 지연을참는정도?, 지연을얼마나참을수있을까? 이런식으로풀어야하는데, 필자는용어에 대한이해만된다면, 영문그대로사용하려고한다. 이때, LTM 메시지속에포함하는파라미터값을 BELT(Best Effort Latency Tolerance) 라고부른다. BELT 는말그대로, 가장효과가좋은 Latency Tolerance 을의미한다. 효과가좋다는것은디바이스입장에서가장효과가좋은값으로이값 (BELT) 을선택했다는뜻이 다. BELT 값은상황에따라서자주바뀐다. 그렇기때문에호스트는디바이스로부터전달되는 BELT 값 을항상감시하고있어야한다. BELT 값의디폴트는 1ms 시간을사용한다. 그림 6-10 BELT 와디바이스
31 [ 그림 6-10] 을보면 LTM 기능을지원하는디바이스내의 7 개의엔드포인트들이각각의자신의형편 에맞는 LT(Latency Tolerance) 값을제공하고있다. 디바이스는이중에서가장작은값 (125us) 을선 택했다. 이값은호스트에 LTM(BELT) 패킷의형태로전달되고있다. 가장작은값이 BELT 가되는이유는간단하다. LT 값이란디바이스가호스트로특정응답을바라는패킷을송신하는경우, 이에관한응답패킷이 호스트로부터지정된 LT 시간안에만디바이스로전달되면동작에는큰문제가없다. LT 는디바이스 가인정하는호스트의최대지연시간이된다. 그렇다면, [ 그림 6-10] 에서가장큰값 (2ms LT) 을사용하는엔드포인트입장에서는호스트가반응을 최대한 2ms 이내에만해주면동작에는문제가없다는뜻을알린셈이된다. 반면가장작은값 (125us) 을사용하는엔드포인트입장에서는호스트가반응을최대한 125us 이내 에만해주면동작에는문제가없다는뜻을알린셈이되므로, 이중에서작은값이채택되어야두 가지엔드포인트모두에있어서문제가되지않는다. 호스트는 BELT 값을사용해서, 현재디바이스가얼마큼의시간동안별다른반응이없어도무관한 지를확인하여, 필요하다면현재의링크상태를 U1 또는 U2 상태로전환해둘수있다. 이것은보다
32 적극적인링크에대한전원관리방법이라고볼수있다 System Exit Latency 와 BELT 디바이스가 BELT 값을통해서적극적인전원관리를돕는다. 호스트는 System Exit Latency 값을디 바이스로전송하여적당한 BELT 값이계산될수있도록돕는다. System Exit Latency 란? U1SEL 과 U2SEL 을의미한다. 이값은컨트롤전송명령 (SET_SEL) 을통해서 호스트에서디바이스로전달된다. 표 6-15 SET_SEL 명령어와 U1SEL, U2SEL, U1PEL, U2PEL bmrequesttype brequest wvalue windex wlength Data B SET_SEL 아래를참조 오프셋 이름 의미 0 U1SEL U1 System Exit Latency Time(us) 1 U1PEL U1 Device to Host Exit Latency Time(us) 2 U2SEL U2 System Exit Latency Time(us) 4 U2PEL U2 Device to Host Exit Latency Time(us) [ 표 6-15] 를보자. U1PEL 과 U2PEL 값은각각 U1, U2 상태의디바이스가 U0 상태로전환하고자하는요청을하는 경우, U0 상태로링크가전환되는데소요되는시간을의미한다. 사실링크의상태가 U0 상태로전환되는것도중요하지만, U0상태로전환된뒤에디바이스와호스트가통신을재개할수있어야하는것도중요하다. 이처럼링크의상태가 U0상태가된뒤, 디바이스와호스트가정상적인통신을재개할수있는데까지소요되는시간을 U1SEL, U2SEL 값이라고부른다. 그림 6-11 링크가 U0 상태로전환되고, 디바이스가호스트로부터응답패킷을받는그림
33 [ 그림 6-11] 을보자. U1PEL 과 U2PEL 이다루는시간은 t1 시간을의미한다. U1SEL 과 U2SEL 이다루는시간은 t1 + t2 + t4 시간을의미한다. 이와같은상황은링크의상태가 U1, U2 상태에있는상황에서디바이스가호스트와통신을재개 할필요가있을때고려해야하는시간정보를보여주고있다. 호스트는 SET_SEL 컨트롤전송명령을사용해서, 이와같은시간정보를디바이스에게전달하고, 디바이스는이값을사용해서적당한 BELT 값을만드는데사용해야한다. BELT = 엔드포인트가실제로기다릴수있는 LT U1SEL(U2SEL) 이라는간단한공식을사용할수있다 ( 사실은더복잡해야하지만여기서는간단하게사용한다 ).
34 이공식의의미대로라면, 디바이스가최적의호스트반응지연시간 (BELT) 값을계산할때, 반드시이값은디바이스 ( 엔드포인트 ) 가실제로기다릴수있는 LT 값에서 U1SEL혹은 U2SEL 값을빼야한다는것이다. 그렇지않으면호스트가가진지연시간이충분하게고려되지못하여, 실제로디바이스가요구하는 BELT값보다더긴시간의지연상황이발생할수있으며이런경우디바이스는오동작을일으키는상황이될수있다. 호스트가예상하는 BELT값의의미는이와같이엔드포인트가실제로기다릴수있는 LT값을의미하는것이아니라, 이값에서시스템이링크상태 U1, U2에서 U0로전환하는데소요하는지연시간 (System Exit Latency) 를뺀값을기대한다는것을꼭유념해야한다 Maximum Exit Latency 와 PING 등시성전송을사용하는경우, 정확한시간에맞추어서전송을해야하기때문에특히버스의전 원공급상태는더중요하게다루어져야한다. 그렇다고항상링크상태를 U0 상태로유지하는것은 전력낭비가크다. 따라서, 적당한시간동안 U1, U2 상태로링크상태를전환하는것이필요하다. 등시성전송을사용하는링크의상태가 U1, U2 상태로들어가지않고일정시간동안 U0 상태를유지 할수있도록사용하는프로토콜이 PING, PING_RESPONSE 프로토콜이다. 호스트가 PING 패킷을디바이스로전송하면, 디바이스는지정된시간안에 PING_RESPONSE 패킷 을호스트로응답해야한다. 이후, 지정된시간혹은호스트가최초로전송하는패킷이발생될때까 지링크상태는 U0 상태를유지하게된다. 호스트가 PING 패킷을디바이스로전송한뒤, 디바이스로부터 PING_RESPONSE 패킷이호스트로 전송되는데까지걸리는지연시간을 Maximum Exit Latency 라고부른다. 호스트가 PING 패킷을디바이스로전송할당시, 링크의상태가 U1, U2 상태였다면링크의상태가 우선 U0 상태로전환된다. 이후에디바이스가 PING 패킷을해석하게된다. 따라서, Maximum Exit Latency 값은이와같이링크의상태가 U1, U2 상태에있는저전력링크상태 를사용하는디바이스측으로 PING 패킷을보낸뒤, 디바이스로부터응답패킷 PING_RESPONSE 을 받을때까지소요될것으로예상되는최대지연시간이된다. Maximum Exit Latency 값은설명을위해서크게 4 가지상태값으로나누어서설명한다. 그림 6-12 PING 과 PING_RESPONSE 사이의시간지연
35 * Maximum Exit Latency t1(tmel1) tmel1 은 U1, U2 상태의링크를 U0 상태로전환하는데걸리는시간을의미한다. * Maximum Exit Latency t2(tmel2) tmel2 는호스트와디바이스간의연결된외장허브의모든경로를포함해서 PING 패킷이디바이스 로전송되는데걸리는소요시간을의미한다. * Maximum Exit Latency t3(tmel3) tmel3 은 PING 패킷을수신한디바이스가이것을처리해서 PING_RESPONSE 응답패킷을만들어 내는데걸리는시간을의미한다.
36 * Maximum Exit Latency t4(tmel4) tmel4 는디바이스가호스트로 PING_RESPONSE 패킷을올려보내는데소요되는시간을의미한다. 이시간은 tmel2와비슷한경로를사용하지만, 통상조금더걸릴수있는상황이예상될수있다. 디바이스에서호스트로전송하는모든패킷들은허브의 Upstream Port를공유하기때문에상황에따라서혼잡한트래픽이발생될수있다. 이때문에올라가는패킷들은나름대로우선순위를부여하고있다. DP 와 TP 가함께발생되는경우에는항상 DP 가먼저올라간다. 이런상황으로인해 TP 형태로사용되는 PING_RESPONSE 패킷은잠시전송이지연될수있다 U1, U2 Exit Latency 시간계산 U1, U2 상태의링크를 U0 상태로전환하는데걸리는시간을계산하는데있어서디바이스 ( 허브 ) 의반응시간정보를사용할수있다. 실제 U1상태의링크를 U0상태로전환한뒤, 링크상의유효한패킷을송, 수신할수있어야하지만 (System Exit Latency), 여기서는이부분을생각하지않고순수하게호스트지연시간을제외하고디바이스와관려된상태전환하는시간을추정해보도록하자. 호스트시스템설계자는이와같은계산방법을통해서대강어느정도시간이소요되어야링크 U1, U2 상태가 U0 상태로전환될수있는지를계산해야한다. 허브와디바이스는각각 U1DEL, U2DEL 값을제공한다. 이값은 Binary Device Object Store(BOS) 디스크립터내의 SuperSpeed Device Capability 디스크립터를통해서호스트에제공한다. 표 6-16 SuperSpeed Device Capability Descriptor 오프셋 필드 크기바이트 값 설명 0 blength 1 숫자 디스크립터크기 1 bdescriptortype 1 상수 DEVICE_CAPABILITY 2 bdevcapabilitytype 1 상수 SUPERSPEED_USB 3 bmattributes 1 비트맵 비트 설명 1 LTM 기능을사용함 나머지사용안함 4 wspeedssupported 2 비트맵 비트 0 LowSpeed 속도 1 FullSpeed 속도 2 HighSpeed 속도
37 3 SuperSpeed(Gen1) 나머지사용안함 6 bfunctionalitysupport 1 숫자 사용자에게모든기능이허용되는 가장 낮은 속도를 지정함. 보통 wspeedssupported 값을그대로사용함 7 bu1devexitlat 1 숫자 U1 Device Exit Latency. 디바이스가링크 U1 상태를 U0상태로전환하는데소요될것으로추정되는가장긴시간 값 의미 00H 0 01H 1us 이하 02H 2us 이하 03H 3us 이하 04H 4us 이하. 0AH 10us 이하 0BH-FFH 사용안함 8 bu2devexitlat 2 숫자 U2 Device Exit Latency. 디바이스가링크 U2 상태를 U0상태로전환하는데소요될것으로추정되는가장긴시간 값 의미 0000H H 1us 이하 0002H 2us 이하 0003H 3us 이하 0004H 4us 이하. 07FFH 2047us 이하 0800H-FFFFH 사용안함 [ 표 6-16] 을보면, bu1devexitlat 값과 bu2devexitlat 값을제공하고있다. 이값이 U1DEL, U2DEL 로사용된다.
38 그림 6-13 U1, U2 Exit Latency 시간을계산하기위한예시그림 [ 그림 6-13] 을잠시설명하도록한다. 호스트는 2 개의허브포트 (RP1, RP2) 를가지고있다. 이중에 RP2 포트는 Hub1 과연결되어링크 2(Link2) 를구성하고있다. Hub1 은 2 개의허브포트 (DP1, DP2) 를가지고있다. Hub1 의 DP2 포트는 Dev2 와링크 3(Link3) 을구성하고있다. 결국 Dev2 와호스트사이에 Hub1 이존재하는상황이다. 현재 Link2, Link3 는모두 U1( 또는 U2) 상태에있다고가정한다 호스트가 Link2, Link3 를 U0 로전환을요청하는시간계산 호스트가 Dev2 에게패킷을전송하기위해서는 Link2 와 Link3 를모두 U0 상태로전환해야한다. 다음과같은세부시간으로나눈다. * Link2 를 U1->U0 로전환하는데소요되는시간 : MAX( RP2 s U1DEL, Hub1 s U1DEL) * HSD, Host Scheduling Delay. 호스트가패킷을준비해서전송요청하는데소요되는시간
39 * HHDL, Hub Hdr Decode Latency, 호스트로부터전달받은패킷의 Route String 을해석하여 DP2 포트로패킷을보내도록준비하는지연시간 * Link3 를 U1->U0 로전환하는데소요되는시간 : MAX(Hub1 s U1DEL, Dev2 s U1DEL) 결국전체지연시간은다음과같다. MAX( RP2 s U1DEL, Hub1 s U1DEL) + HSD + HHDL + MAX(Hub1 s U1DEL, Dev2 s U1DEL) MAX(A, B) 는둘중에가장큰값을취한다는뜻이다. 여기서는두개의 U1DEL 값중에서큰값을선 택하는용도로사용되고있다. 가장큰지연시간이선택되는것이당연하다 디바이스 (Dev2) 가 Link3, Link2 를 U0 로전환을요청하는시간계산 디바이스가호스트에게패킷을전송하기위해서는 Link3 와 Link2 를모두 U0 상태로전환해야 한다. 이시간계산은조금주의를필요로하는데, 그것은동시에복수개의작업이진행될수있기 때문이다. 그림 6-14 디바이스 (Dev2) 가 Link3, Link2 를 U0 로전환하는시간
40 [ 그림 6-14] 를보면, 동시에두가지이상의작업이가능하다는것을알수있다. Hub1은 Dev2로부터 U0상태로의전환명령 (LFPS) 을받으면이때, 이것을 Hub1의 UP로전송한다. 이때지연시간은 HubPort2PortU1EL 로표기한다. HubPort2PortU1EL 시간이지나면, 곧바로 Hub1 의 UP와 RP2와의 Link3의상태가 U0상태로전환하는요청을시작한다. 디바이스에서호스트로전달하는패킷은 Route String을사용하지않기때문에주소해석과관련된별도의추가시간은필요하지않다. Link3 의상태가 U0 상태로전환되기이전에먼저 Link2 의상태가 U0 상태로전환될것이다. 결국최종적으로 Link3, Link2 의상태가 U0 상태로전환되는시간은다음과같이계산된다. MAX( thubport2portu1el, MAX( RP2 s U1DEL, Hub1 s U1DEL), MAX(Hub1 s U1DEL, Dev2 s U1DEL) ) 3 가지의시간중에서가장긴시간이최종적인지연시간으로계산된다 디바이스가요청하는적극적인전원관리정책 전원관리정책이잘적용되는노트북의경우그렇지않은노트북의경우와비교해서평균 15% 이 상배터리의수명이길다. 따라서보다적극적인전원관리정책이필요하다. 링크의 Downstream Port 와 Upstream Port 는각각 U0 상태에서 U1, U2 상태로전환요청을할수 있다. * Downstream Port 는 Inactivity Timer 를사용해서 U1, U2 상태로전환요청을할수있다. 타임아 웃값은소프트웨어에의해서지정된다. * Upstream Port 는 U2 상태로의전환을위해서 Inactivity Timer 를사용한다. 또한, 추가적인정보 를사용해서보다적극적으로상태전환을요청할수있다. 이번절에서는디바이스가 U0 상태의링크를 U1, U2 상태로전환요청하는정책을배운다 디바이스가 U0 상태의링크를 U1, U2 상태로전환하는데사용되는배경정보 허브의 Downstream Port 가 Inactivity Timer 에의해서전환요청하는작업만기다린다는것은디바 이스가소극적인전원관리정책을펼치는대표적인상황이다.
41 등시성전송을지원하는디바이스의경우, 서비스인터벌시간내에전송에사용하지않는시간동안 링크상태를 U1 상태로전환하는것은대표적인적극적인전원관리정책을보여준다. 디바이스는다음과같은정보들을사용해서적극적인전원관리정책을세울수있다. * 벌크엔드포인트에사용되는 Packet Pending 플래그 * 인터럽트엔드포인트에사용되는 End Of Burst(EOB) 플래그 * 등시성엔드포인트에사용되는 Last Packet 플래그 (LPF) * 데이터준비가될때까지기다리는데사용하는 NRDY 응답패킷 * U1, U2 의링크상태를 U0 상태로전환하는 U1PEL, U2PEL 시간 (SET_SEL 컨트롤전송명령 ) 링크상태를 U0 상태에서 U1, U2 상태로전환하는조건 디바이스는자신이가진모든엔드포인트의상태가 Idle 상태가되면, 링크상태를 U1 또는 U2 상 태로전환요청할수있다. 만일디바이스가보다오랫동안데이터통신을하지않는경우로예측된다면, 디바이스는링크상 태를 U1 상태보다는 U2 상태로전환할수도있다. 디바이스가 U1 상태혹은 U2 상태중에어느상태로전환요청할것인지는당시에호스트가전달해준 U1PEL, U2PEL 값을참고할수있다. 물론, 디바이스는 U1_Enable, U2_Enable (Feature Selector) 기 능이활성화되어있어야전환요청이가능하다 컨트롤엔드포인트 디바이스는컨트롤엔드포인트에대해다음과같은조건이만족되면 Idle 상태로간주한다. * 디바이스가셋업 (Configured) 되어있다 * 디바이스가컨트롤전송의데이터 Stage 단계에있지않다 * NRDY 패킷이전송되었거나, 호스트로부터받은마지막 ACK 패킷의 Packet Pending 플래그가 0 인상태에있다 * 디바이스가 ERDY 패킷을호스트로전송할계획이없다
42 벌크엔드포인트 디바이스는벌크엔드포인트에대해다음과같은조건이만족되면 Idle 상태로간주한다. * NRDY 패킷이전송되었거나, 호스트로부터받은마지막 ACK 패킷의 Packet Pending 플래그가 0 인상태에있다 * 디바이스가 ERDY 패킷을호스트로전송할계획이없다 인터럽트엔드포인트 디바이스는인터럽트엔드포인트에대해다음과같은조건이만족되면 Idle 상태로간주한다. * NRDY 패킷이전송되었거나, 호스트로부터받은마지막 ACK 패킷의 Packet Pending 플래그가 0 인상태에있다 * 디바이스가 ERDY 패킷을호스트로전송할계획이없다 등시성엔드포인트 Last Packet 플래그가사용되고서비스인터벌시간에전송할데이터를모두전송하면다음전송 이발생될때까지링크상태를 U1 상태로전환할수있다. 너무잦은 U1 상태와 U0 상태의전환은등시성엔드포인트의실시간전송율을낮추는요인으로작 용될수있다. 따라서디바이스는 PING 패킷을사용해서필요한경우, 링크의상태를 U0 상태로 유지할필요가있다 타임스탬프 (ITP) 패킷사용 디바이스가 ITP 패킷을사용하려는경우, 링크의상태가 U0 상태가되어야 ITP 패킷이전송되기때 문에디바이스는링크의상태를 U1, U2 상태에서 U0 상태로전환하는작업이필요하다. 이때, 버스인터벌 (125us) 시간을고려해서, 다음버스인터벌시간이전에 U0 상태로전환해야다음 버스인터벌경계에서 ITP 패킷을받을수있다.
43
44 6.3.4 Latency Tolerance Message(LTM) 의실제구현예시 우리는보통컴퓨터가 Idle 상태에서대기중이라하더라도디바이스는언제든지서비스를수행할 준비가되어있기를원한다. 이와같은상황은전원을불필요하게낭비하는요인이될수도있다. LTM 은 USB 디바이스가서비스를수행하는준비상태을조금더가지더라도전원낭비를줄이는 메카니즘을제공한다. 성능과전원사용량은비례하지만, 전원을줄이는양에비해성능이조금만떨어진다면 LTM 은효 과적인전원관리방법을제공하고있다고할수있겠다. LTM 은별도의하드웨어를구성할필요가없이, USB 가사용하는프로토콜을그대로활용하면서 이기능을사용할수있다. LTM 을활용하는방법은스팩에준하지않은여러가지모델로나타날수있다. 이번절에서는 LTM 을활용하는특별한예재모델을소개함으로서, 현실적으로 LTM 이어떤식으 로모델링되어응용될수있는지를소개하려고한다. 독자들은이방식을참고로하여, 자신만의특별한 LTM 모델을구상해보는것도재미있는일이될 것이다. 이번에제시하는모델은두개의 LTM 상태 (LTM-state) 를소개한다. 이상태는각각자신들에맞는 BELT(Best Effort Latency Tolerance) 값을사용한다. 이들은 LTM-active 와 LTM-idle 상태이다. 두가지상태모두전원을완전하게사용하는상태는아 니다.
45 ( 호스트의반응지연혹은반응지연시간이라는단어를사용하는것이어쩐지조금어색하다. 따라서, 영문그대로 Latency Tolerance 또는 LT 라고사용하겠다 ) Device 상태머쉰구현예재 두가지 LTM 상태를정의한다. LT-idle 상태 : 디바이스가 idle 상태이고비교적긴 LT 을사용할수있다. LT-active 상태 : 디바이스가호스트와데이타통신을해야할필요가있다고결정한상태이고비 교적짧은 LT 를사용한다. 그림 6-15 LT 상태다이아그램
46 LT-idle 상태에서 LTM BELT 값의최소값은 1 ms 로정한다. LT-active 상태에서 LTM BELT 값의최소값은 125us 로정한다 LT 상태변화 디바이스는 LT 상태가바뀌는상황이되면, 가능한빠른시간안에수정된 BELT 값을담은 LTM TP 를만들어서호스트로전송해야한다 LT-idle 상태에서 LT-active 상태로변화 디바이스가벌크혹은인터럽트전송등을해야할필요가있을때, LT-idle 상태는 LT-active 상태로 변한다.LT-active 상태로전환 다음상황에서이와같은상황이발생될수있다. * USB 이동식디스크를장시간사용하고있지않을때, 호스트가벌크 OUT 트랜잭션 (Packet Pending 비트가 TRUE) 을시작한다. 이런경우, 디바이스는 LT-idle 상태를 LT-active 상태로전환하 고, 곧바로적당한 BELT 값을호스트로전송한다. * 네트워크카드가장시간사용되지않고있다가, 특정데이타가외부로부터카드로들어왔다. 카드는호스트와통신을할필요가있기때문에, 디바이스의현재상태 LT-idle 를 LT-active 상태 로전환한다음, 호스트로 ERDY 패킷과함께 BELT 값을호스트로보낸다. * 멀티터치 Digitizer 가장시간사용되지않고있다가, 사용자가터치를건드렸다. 터치는데이타가 발생했기때문에, 디바이스의현재상태 LT-idle 을 LT-active 로바꾼뒤, ERDY 패킷과함께 BELT 값 을호스트로보낸다. 디바이스가 LT-idle 상태에서 LT-active 상태로전환할때, 디바이스는호스트로적당한 BELT 값을 담은 LTM TP 를보낸다.
47 LT-active 상태에서 LT-idle 상태로변화 디바이스는장시간사용되지않거나, 이를예상할때, 디바이스의현재상태 LT-active 를 LT-idle 상 태로전환한다. 상태를전환한뒤, 이에맞는적당한 BELT 값을 TP 에담아서호스트로전송한다. 필요에따라서링 크의상태를 U1 또는 U2 상태로전환할수도있다. 링크의상태가이미 U1 상태에있는경우, U2 상태로전환하려는상황이발생할때는다음과같은 순서를따른다. 1) 링크의상태를 U1 상태에서 U0 상태로전환한다 (TP 를보내기위해서 ) 2) U0 상태에서, 적당한 BELT 값을준비해서호스트로전달한다 3) 링크의상태를 U0 상태에서 U2 상태로전환한다 6.4 USB Type-C 와전원공급 USB 3.1 표준에서사용되는표준연결커넥터 (Connector) 보다작고얇고강인한커넥터와케이블 을제공하는 USB Type-C 스팩을소개하려고한다. 커넥터는리셉터클 (Receptacle) 과플러그 (Plug) 를포함하는용어로사용된다. USB Type-C 환경아래에서많이사용되는전원공급프로토콜은 USB Power Delivery Specification 2.0( 줄여서 USB PD 2.0) 이다. USB PD 아래에서최대전압 50V, 최대전류 5A 까지공급하는 USB 환경이가능하다 소개 USB Type-C 는 3 가지의구성요소를정의한다. * USB 2.0, USB 3.1 을지원하는 USB Type-C 리셉터클 * USB Full Feature Type-C 플러그 * USB 2.0 Type-C 플러그 본절에서는 USB 2.0 Type-C 플러그와관련된내용은설명을생략하도록하겠다.
48 그림 6-16 USB Type-C 리셉터클인터페이스 ( 전면부에서바라볼때 ) [ 그림 6-16] 을보면, Type-C 리셉터클의핀 (Pin) 용도를알수있다. 사용자가케이블의플러그를리셉터클에연결할때, 180 도회전이가능하다. 이와같은이유는리 셉터클의핀의의미가정의되어있는모습이서로대칭적이기때문에가능하다. 주의할점은동시에이런대칭적인핀이함께사용되는경우는없다는점이다. TX1+, TX1- 가사용되면항상 TX2+, TX2-, RX2+, RX2- 가사용되지않는다. RX1+, RX1- 가사용되면항상 RX2+, RX2-,TX2+, TX2- 가사용되지않는다. 결국총 24 개의핀이존재하지만해당하는핀이동시에모두사용될수없다는점이다. 어떤핀이사용될것인지는연결하는케이블과케이블끝에붙어있는플러그와플러그에연결되는 상대방파트너리셉터클의연결상태에따라서결정된다. SBU1, SBU2 핀은 Side Band 로불리우며, 보조로사용될수있다.
49 그림 6-17 USB Full Feature Type-C 플러그인터페이스 ( 전면부에서바라볼때 ) [ 그림 6-17] 을보면, 리셉터클에연결하는플러그의핀용도를알수있다. 리셉터클은회전이불가능하지만, 플러그는회전이가능하다는점에서플러그에만있는몇가지 특징이존재한다. * B6, B7 핀은사용되지않는다. 반면에여기에대칭되는 A6, A7 핀만사용된다. * B5 핀은 VConn (VConnector) 의의미를가진다. 이곳에대칭되는 A5 핀은 CC 의의미로사용된 다. 원래이곳은 [ 그림 6-16] 을보면, CC1, CC2 로사용되는리셉터클이대응되는핀이다. 이렇게두가지의특징을조금정확하게이해할필요가있다. CC 핀은 Configuration Channel 의약어로사용된다. 리셉터클은두개의 CC 핀을준비하고있지만, 케이블의끝에달려있는플러그는하나의 CC 핀만사용한다. 반면사용되지않는플러그의나머지 핀은 VConn 의용도로사용된다.
50 이와같은특징은회전이가능하다는케이블의특성으로인해, 원래방향인지아니면회전한것인 지를구분하기위한방법이필요하기때문에특정핀 (CC) 을사용해서이와같은상황을판단하기 위해서이다. 플러그의 A5(CC) 핀이연결되는리셉터클의해당하는핀이 A5(CC1) 인경우, 리셉터클의 B5 핀 (CC2) 은의미가달라진다. 이곳에연결되는플러그의 B5 핀의의미가 VConn 이기때문이다. 결국리셉 터클의 B5 핀은 VConn 의역할로사용되도록조정된다. 반면에플러그의 A5(CC) 핀이연결되는리셉터클의해당하는핀이 B5(CC2) 인경우, 리셉터클의 A5 핀 (CC1) 은의미가달라진다. 이곳에연결되는플러그의 B5 핀의의미가 VConn 이기때문이다. 결 국리셉터클의 A5 핀은 VConn 의역할로사용되도록조정된다 Configuration 과정 USB Type-C 에서사용되는 CC(Configuration Channel) 핀은크게 5 가지목적에서사용된다. * DFP(Downstream Facing Port) 와 UFP(Upstream Facing Port) 간의연결과제거검출과정 * 플러그의방향이바뀌거나케이블이꼬인상태로리셉터클에연결되는상태를검출하는과정 * 호스트와디바이스의역할결정과전원공급자를검출하는과정 호스트와디바이스의역할을결정하는데는다음과같은 3 가지모드가존재할수있다. 1) 호스트전용모드 플러그가연결되는양쪽포트중어느하나의포트가호스트 (DFP) 로사용 되도록정해지는모드이다 2) 디바이스전용모드 플러그가연결되는양쪽포트중어느하나의포트가디바이스 (UFP) 로 사용되도록정해지는모드이다. 3) 양쪽모드 (Dual Role) 플러그가연결되는양쪽포트중어느하나의포트가양쪽모드로사용 될수있는모드이다. 처음플러그가리셉터클에연결될때, 사용되는 CC 핀의생산자 (Source) 역할을담당하는곳이호 스트 (DFP) 가된다. 소비자 (Sink) 역할을담당하는리셉터클이디바이스 (UFP) 가된다.
51 호스트전용모드, 디바이스전용모드에서는해당하는포트의 CC 핀의상태가생산자인지소비 자인지가이미결정된상태를나타낸다. 그림 6-18 DRP(Dual Role Port) 포트가모드에따라서 CC1, CC2 를사용하는모습 [ 그림 6-18] 처럼, 이중역할을수행하는포트는 Rp(PullUp 저항 ) 에 CC 를연결하면데이터호스트, Rd(PullDown 저항 ) 에 CC 를연결하면데이터디바이스로동작하게된다. * USB Type-C VBus 전류검출과정 * USB PD(Power Delivery) 프로토콜의적용과정 가장많은전력을호스트가디바이스에게제공할수있는프로토콜로서, CC 핀혹은 VBus(USB 2.0) 핀을사용해서전력을제공하는호스트와소비하는디바이스를결정하는과정이다.
52 USB PD 프로토콜을사용하면, 다음과같은역할을결정한다. 1) 누가데이터호스트 (DFP) 인가? 누가데이터디바이스 (UFP) 인가? 누가 USB 호스트의역할을수행하는가를결정한다. 이와같은역할은동적으로서로바뀔수있다. 이것을데이터역할스왑 (Data Role Swap) 이라고부른다. 2) 누가전원 ( 전원공급 ) 호스트 (Power Source) 인가? 누가전원소비자 (Power Sink) 인가? VBus 를제공하는측을결정한다. USB Type-C 에서는데이터호스트와전원호스트가동일할필요 는없다. 이와같은역할은동적으로서로바뀔수있다. 이것을전원역할스왑 (Power Role Swap) 이라고부른다. 3) 누가 VConn 전원 ( 전원공급 ) 호스트 (Power Source) 인가? 누가 VConn 전원소비자 (Power Sink) 인가? VConn 을제공하는측을결정한다. USB Type-C 에서는플러그 (Plug) 가소비하는전원을 VConn 이라고부른다. 이것은 VBus와다른개념의전원공급을제공한다. USB Type-C 를지원하는케이블의플러그 (Plug) 는내부에컨트롤러를내장하고있는데, 이와같은컨트롤러가동작할수있도록지원하는전력공급원을 VConn 이라고부른다. 이와같이컨트롤러가내장된케이블을 Electronically Marked Cable 이라고부른다. 표 6-17 전원공급상태의옵션 동작모드 명목상의전원 최대전류 USB 2.0 5V 500mA USB 3.0 5V 900mA USB BC(Battery Charging) 1.2 5V 최대 1.5A USB Type-C Current@1.5A 5V 1.5A USB Type-C Current@3.0A 5V 3A USB PD 20V 까지프로그래밍가능 5A 까지프로그래밍가능 [ 표 6-17] 에따르면, USB 3.0 표준에있어서전원 (5V) 와최대전류 (900mA) 를곱하면, 전력량 4.5W 가된다. 이것이표면상최대공급전력량이된다. 그외나머지동작모드는이보다더많은전력량전제공하는것을허용하고있다. USB PD모드에서제공하는최대전원 (20V), 최대전류 (5A) 는최대공급전력량 100W 가된다. 보통 LCD 모니터 (30W), 타블렛 PC(1W) 의전력을소비하는것을
53 보면대단한용량임에는틀림없다. 하나의 PC 가 USB PD 를사용해서, 직렬로두대의모니터 (30W * 2 = 60W) 를충분히구동시킬수 있다는결론을가진다 USB PD(Power Delivery) 좁은의미로 USB PD를설명하면, USB Type-C 의 CC(Configuration Channel) 핀또는 VBus핀을데이터핀처럼사용해서커넥터양쪽끝에연결된포트중누가전원을공급할것인가를결정하는프로토콜이다. 넓은의미로는기존에사용되는모든 USB 인프라 (Infra) 의수정을최소화하면서가장적절한전원공급방법을호스트와디바이스가협상할수있도록허용하는프로토콜을의미한다. USB 에서전원공급이가능한디바이스는 USB 호스트, USB 디바이스, USB 허브그리고 USB 충전 기가있다. 그림 6-19 USB 에서전원공급이가능한디바이스
54 플러그 (Plug) 프로토콜개요 원어그대로 Electronically Marked Cable 라는용어가사용된다. 이것은 USB Type-C 케이블의특 성을 잘보여주는것으로서, 케이블양쪽에플러그내부에전원공급에의해서동작하는 IC(Integrated Circuit) 가내장된경우를의미한다. 이와같이플러그내부에 IC 를내장하고있기때 문에 USB Type-C 에서는이와같은 IC 를위해서별도의전원을공급해주어야한다. 이기능이 VConn 핀에의해서수행된다. 플러그프로토콜을 SOP*(Start Of Packet) 라고부른다. SOP* 는대상의종류에따라서 SOP, SOP, SOP 로구분된다. SOP 는 DFP(Downstream Facing Port) 와 UFP(Upstream Facing Port) 간의프로토콜을규정한다. SOP 는 DFP 또는 VConn 을공급하는공급자 (Source) 와리셉터클에연결된플러그와의프로토콜을 규정한다. SOP 는 DFP 또는 VConn 을공급하는공급자와케이블의가장끝단의플러그와의프로토콜을규정 한다. 그림 6-20 USB 에서전원공급이가능한디바이스
55 [ 그림 6-20] 을보면 SOP, SOP, SOP ( 합쳐서 SOP*) 의대상을잘보여주고있다. 이들프로토콜은 CC 핀또는 VBus(USB 2.0) 을데이터경로로사용하는프로토콜을규정한다. SOP* 프로토콜에서사용되는패킷은물리층 (Physical Layer) 과프로토콜층 (Protocol Layer) 에서다 루는각각의데이터를규정하고있다. 이중에서물리층에서수행하는수신작업을위한 Training 작업에사용되는데이터 (Preemable) 를 제외한나머지모든데이터가 4b5b 알고리즘에의해서인코딩된다. 그림 6-21 USB Power Delivery Packet 포멧
56 표 b5b 심볼인코딩테이블 심볼이름 4b 5b 설명 진수 진수 진수 진수 진수 진수 진수 진수 진수 진수 9 A 진수 A B 진수 B C 진수 C
57 D 진수 D E 진수 E F 진수 F Sync-1 K-code 시작동기 #1 Sync-2 K-code 시작동기 #2 RST-1 K-code Hard 리셋 #1 RST-2 K-code Hard 리셋 #2 EOP K-code End Of Packet Sync-3 K-code 시작동기 #3 [ 표 6-18] 은어떻게 4b 의문자를 5b 의데이터로변환하는지를보여주고있다. 이중에서 SOP* 에사용되는시작동기문자는 Sync-1, Sync-2, Sync-3 이다. 이들은다음과같은형 태로조합되어 4 개의문자로함께사용된다. 표 6-19 SOP 순서열문자 K-code 순서테이블속에 K-code 문자 1 Sync-1 2 Sync-1 3 Sync-1 4 Sync-2 SOP 신호는 4 개의문자 (Sync-1, Sync-1, Sync-1, Sync-2) 가순서대로이어지는형태의데이터를사 용한다. 표 6-20 SOP 순서열문자 K-code 순서테이블속에 K-code 문자 1 Sync-1 2 Sync-1 3 Sync-3 4 Sync-3
58 SOP 신호는 4 개의문자 (Sync-1, Sync-1, Sync-3, Sync-3) 가순서대로이어지는형태의데이터를사 용한다. 표 6-21 SOP 순서열문자 K-code 순서테이블속에 K-code 문자 1 Sync-1 2 Sync-3 3 Sync-1 4 Sync-3 SOP 신호는 4 개의문자 (Sync-1, Sync-3, Sync-1, Sync-3) 가순서대로이어지는형태의데이터를 사용한다. 그외에 Hard 리셋 (RST-1, RST-1, RST-1, RST-2), 케이블리셋 (RST-1, Sync-1, RST-1, Sync-3) 등의명 령어도사용된다. 이들은 CRC 와 EOP 가사용되지않는다. 사용되는모든데이터시그널은 CC 핀또는 VBus 핀을데이터처럼사용하게되는데, 이들은각 각 Binary Frequency Shift Keyed(BFSK), BMC(Biphase Mark Coding) 알고리즘을사용해서인코딩된 다. 관련된설명은생략하도록하겠다 디바이스정책 (Device Policy) 과정책엔진 (Policy Engine)
59 그림 6-22 USB Power Delivery 프로토콜스택 [ 그림 6-22] 를보자. 디바이스정책관리자 (Device Policy Manager) 는포트를위한정책엔진과의인터페이스를제공한다. 포트에대한로칼정책을관리하고, 포트에케이블이연결되는상황을감시한다. 전원공급에있어 서공급자포트와소비자포트를제어한다. 디바이스정책관리자가공급자포트를관리하는경우, 공급자포트를위한전원공급을관리한다. 디바이스정책관리자가소비자포트를관리하는경우, 소비자포트를위한전원소비정보를제공한 다. 정책엔진 (Policy Engine) 은각각의포트에대한로칼정책을구현한다. 이과정은프로토콜층이가 진메시지교환기능을사용한다. 프로토콜 (Protocol) 층은 DFP 와 UFP 간의메시지교환을책임진다.
60 물리 (Physical) 층은데이터시그널에대한인코딩과전송을책임진다 정책엔진과메시지시퀀스 (Message Sequence) 그림 6-23 기본적인메시지교환방식 [ 그림 6-23] 을보자. 메시지요청측의정책엔진 (Policy Engine) 은프로토콜 (Protocol) 층으로 Send Message 명령을사용해서메시지전송을요청한다. 이요청은수신측의프로토콜층으로전송된다. 이렇게전송된메시지는메시지수신측의정책엔진에게전달된다. 이어서, 메시지를잘받았다는 GoodCRC 응답패킷이전송된다. 이것은메시지를잘받았다는의미이지, 요청한메시지를처리했다는뜻이아니다. 이와같은메시지전달과정중에메시지송신프로토콜층은 CRCReceiveTimer 타이머를설치하여, 응답시간까지기다리는작업을수행한다. 또한, 메시지전달이성공하면내부적으로유지하는 MessageIDCounter 값을증가시킨다. 메시지수신프로토콜층은전달받은메시지내부의
61 MessageID 값을보관한다. 이하의설명에서는전원을공급하는공급자를소스 (Source) 라고부르고, 소비하는소비자를싱크 (Sink) 라고부르도록하겠다. 앞으로보여주는과정들은간단하게메시지가전달되는모습만보여주는방법으로설명하도록하 겠다 전원공급협상 (Power Negotiation) 그림 6-24 전원공급협상과정 [ 그림 6-24] 를보자. Source 와 Sink 간의전원공급을위한협상과정은다음으로구분된다. 1) Source 는자신의전원특성정보 (Source_Capabilities) 를위한 Capabilities 메시지를 Sink 로전송 한다.
62 2) Sink 는특성정보를확인하고, 자신이사용하려는전원공급수준을선택하여 Request 메시지를 Source 로전송한다. 3) Source 는수신한 Request 메시지의내용을확인하고, 수용하겠다는뜻의 Accept 메시지를 Sink 측으로전송한다. 4) Source 는 Sink 가요구했던전원공급수준으로현재상태를전환하고 Sink 로 PS_RDY 메시지를 전송한다. 5) Sink 는새로운전원공급수준을사용하기시작한다 Soft 리셋 (Soft Reset) 그림 6-25 Soft 리셋과정 [ 그림 6-25] 를보자. Reset 요청자와수신자간의 Soft 리셋과정은다음으로구분된다.
63 1) 요청자정책엔진은프로토콜층으로 Soft_Reset 메시지를전송하도록요청한다. 2) 프로토콜은내부에서관리하는 MessageIDCounter 변수와 RetryCounter 변수값을초기화한다. 3) 프로토콜은상대방측으로 Soft_Reset 메시지를전송한다. 4) 수신자는 GoodSRC 응답메시지를송신자측으로전송한다. 5) Reset 수신자는송신자가요청했던메시지를수락한다는의미로 Accept 메시지를 Reset 송신자 로전송한다. 6) 송신자는 Accept 메시지를잘받았다는의미로 GoodCRC 응답메시지를 Reset 수신자에게전 송한다 Hard 리셋 (Hard Reset) Hard 리셋명령은 USB Power Delivery 의동작상태를처음상태로되돌린다. 이와같은상태는 Dual Role의경우, 디폴트 Role로전환하는결과를가져오고, 디폴트전원, 전류등의공급및소비상태로전환한다. 이와같은리셋은 Source측에서요청하는경우와 Sink측에서요청하는경우로나뉜다.
64 그림 6-26 Hard 리셋과정 (Source 가요청하는경우 ) [ 그림 6-26] 를보자. Reset 요청자 (Source) 와수신자 (Sink) 간의리셋과정은다음으로구분된다. 1) 요청자정책엔진은프로토콜층으로 Hard_Reset 메시지를전송하도록요청한다. 또한, 내부적으로 NoResponseTimer 타이머루틴을설정한다. 그리고정책관리자에게현재전원공급상태를 USB Default 동작을위한상태로초기화하도록요청한다. 또한, 사용되는커넥터가 USB Type-C 이고 VConn 이사용되는상태였다면, VConn 의전원공급을끄도록요청한다. 2) 프로토콜은내부에서관리하는 MessageIDCounter 변수와 RetryCounter 변수값을초기화한다. 3) 프로토콜은물리측으로 Hard_Reset 메시지를전송한다. 4) 요청자측의물리층은 Hard_Reset 메시지를상대방물리층으로전송한다. 이어서채널사용을금 지 (Disable) 시킨다. 이것은이후 Hard_Reset_Complete 메시지가사용될때까지유지된다. 5) 이와같은작업은수신자측에서도마찬가지로이루어진다.
65 6) 수신자정책엔진은송신자정책엔진과마찬가지로초기화작업을수행한뒤, Power_Sink_Reset 요청을프로토콜층으로보낸다. 이명령은수신자측의물리층까지만전송하는명령으로 Hard_Reset_Complete 메시지가사용된다. 물리층은금지된채널사용을다시허용시킨다. 7) 송신자는적당한시간이지난뒤, 전원공급기 (Power Supply) 의상태가초기화되면, 송신자의물리층까지전송할 Power_Supply_Reset 명령을발생시킨다. 이명령은 Hard_Reset_Complete 메시지형태로물리층까지만전송된다. 이메시지에의해서물리층은금지된채널사용을다시허용한다. Hard 리셋과정이후에는전원공급협상과정이이어질수있다. 그림 6-27 Hard 리셋과정 (Sink 가요청하는경우 ) [ 그림 6-27] 를보자. Reset 요청자 (Sink) 와수신자 (Source) 간의리셋과정은 [ 그림 6-26] 의과정과방 향만반대인동일한과정으로진행된다.
66 Type-A/B 관련메시지처리순서 USB Power Delivery 는 USB Type-C 뿐만아니라이전스팩을사용하는 USB 2.0 도지원된다. 정책엔진은 USB 2.0 을사용하는경우를따로정의하고있다. USB 2.0 에서 Power Delivery 데이터 는 VBus 핀을사용한다 Type-A/B 전원공급역할교환 (Power Role Swap) 전원공급자 (Power Source) 를결정하는프로토콜을보여주고있다. 이프로토콜은 USB 버스의 VBus 전원을제공하는공급자를결정한다. 또한, 전원공급자의역할을교환하기도한다. 전원공급 자는전원소비자 (Power Sink), 전원소비자는전원공급자가된다 이어지는전원협상이없는 Type-A/B 전원공급역할교환 (Source 가요청하는 ) 전원공급역할을교환한뒤, 별다른전원협상을하지않는프로토콜을보여주고있다.
67 그림 6-28 전원공급역할교환과정 (Source 가요청하는경우, 이어지는전원협상이없다 ) [ 그림 6-28] 를보자. 요청자가현재전원공급자이다. 요청자는전원공급자역할을교환하기를요청 하는그림이다. 1) 요청자 (Source) 는 PR_Swap (Power Role) 메시지를수신자에게전송한다. 역할교환을요청한다. 2) 수신자 (Sink) 는 GoodCRC 응답메시지를요청자에게전송한다. 역할교환명령을수신했다는의미 이다. 3) 수신자는 Accept 메시지를송신자에게전송한다. 역할교환을허락하겠다는의미이다. 4) 요청자는 GoodCRC 응답메시지를수신자에게전송한다. 5) 요청자는 PD_RDY 메시지를수신자에게전송한다. 요청자는 VBus 의전원은최소화시킨다. 요청자가전원소비자가되었다. 6) 수신자는 GoodCRC 응답메시지를요청자에게전송한다.
68 7) 수신자는 PD_RDY 메시지를요청자에게전송한다. 수신자는 VBus 의전원을최대화시킨다. 수신자가전원공급자가되었다. 8) 요청자는 GoodCRC 응답메시지를수신자에게전송한다 이어지는전원협상이없는 Type-A/B 전원공급역할교환 (Sink 가요청하는 ) 전원공급역할을교환한뒤, 별다른전원협상을하지않는프로토콜을보여주고있다. 그림 6-29 전원공급역할교환과정 (Sink) 가요청하는경우, 이어지는전원협상이없다 ) [ 그림 6-29] 를보자. 요청자가현재전원소비자이다. 요청자는전원공급자역할을교환하기를요청 하는그림이다.
69 1) 요청자 (Sink) 는 PR_Swap (Power Role) 메시지를수신자에게전송한다. 역할교환을요청한다. 2) 수신자 (Source) 는 GoodCRC 응답메시지를요청자에게전송한다. 역할교환명령을수신했다는의 미이다. 3) 수신자는 Accept 메시지를요청자에게전송한다. 역할교환을허락하겠다는의미이다. 4) 요청자는 GoodCRC 응답메시지를수신자에게전송한다. 5) 수신자는 PD_RDY 메시지를요청자에게전송한다. 수신자는 VBus 의전원을최소화시킨다. 수신자가전원소비자가되었다. 6) 요청자는 GoodCRC 응답메시지를수신자에게전송한다. 7) 요청자는 PD_RDY 메시지를수신자에게전송한다. 요청자는 VBus 의전원을최대화시킨다. 요청자가전원공급자가되었다. 8) 수신자는 GoodCRC 응답메시지를수신자에게전송한다 Source 가요청하는 Hard 리셋과 Type-A/B 전원공급역할교환 Hard 리셋메시지를수행할때, 전원공급자역할이이전에이미스왑 (Swap) 된상태였다면, 원래의 디폴트상태로전환된다.
70 그림 6-30 Source 가요청하는 Hard 리셋과함께수행되는전원공급역할교환과정 1) 요청자 (Source) 는 Hard_Reset 메시지를수신자에게전송한다. 2) Hard_Reset 메시지가전달되는과정중에요청자와수신자측의물리층의동작이금지된다. 3) 요청자와수신자 (Sink) 는각각전원공급역할을스왑 (Swap) 한다. 디폴트전원공급역할자가결정 된다. 4) 수신자는전원공급자의역할을, 요청자는전원소비자의역할을수행한다. 5) 요청자와수신자는각각 Hard_Reset_Complete 메시지를통해서모든준비를마쳤음을각각의 물리층에게알린다. 6) 각각의물리층의동작이재개된다.
71 그림 6-31 Source 가요청하는 Hard 리셋과함께수행되는전원공급역할교환과정 Hard 리셋메시지를수행할때, 전원공급자역할이이전에이미스왑 (Swap) 된상태였다면, 원래의 디폴트상태로전환된다. 1) 요청자 (Sink) 는 Hard_Reset 메시지를수신자에게전송한다. 2) Hard_Reset 메시지가전달되는과정중에요청자와수신자측의물리층의동작이금지된다. 3) 요청자와수신자 (Source) 는각각전원공급역할을스왑 (Swap) 한다. 디폴트전원공급역할자가결 정된다. 4) 요청자는전원공급자의역할을, 수신자는전원소비자의역할을수행한다. 5) 요청자와수신자는각각 Hard_Reset_Complete 메시지를통해서모든준비를마쳤음을각각의 물리층에게알린다. 6) 각각의물리층의동작이재개된다.
72 Type-C 관련메시지처리순서 USB Type-C 에서 USB Power Delivery 데이터는 CC(Configuration Channel) 핀을사용한다. 정상동작중에각각의포트측의리셉터클 CC 핀에연결되는저항은전원공급자의경우, 풀업저항 (Rp), 전원소비자의경우, 풀다운저항 (Rd) 을사용한다. 이런연결상태를스왑 (Swap) 할수있는경 우전원공급자역할스왑기능을사용할수있다. Type-C 메시지교환은전원공급자의역할을교환하는메시지 (Power Role Swap), VConn 전원공급자 의역할을교환하는메시지 (VConn Role Swap) 그리고 Data 역할을교환하는메시지 (Data Role Swap) 등이존재한다 Source 측에서요청하는 Type-C 전원공급역할교환 (Power Role Swap) 그림 6-32 Source 가요청하는전원공급역할교환과정
73 [ 그림 6-32] 를보자. 요청자가현재전원공급자이다. 요청자는전원공급자역할을교환하기를요청 하는그림이다. 1) 요청자 (Source) 는 PR_Swap (Power Role) 메시지를수신자에게전송한다. 역할교환을요청한다. 2) 수신자 (Sink) 는 GoodCRC 응답메시지를요청자에게전송한다. 역할교환명령을수신했다는의미 이다. 3) 수신자는 Accept 메시지를송신자에게전송한다. 역할교환을허락하겠다는의미이다. 4) 요청자는 GoodCRC 응답메시지를수신자에게전송한다. 5) 요청자는 PD_RDY 메시지를수신자에게전송한다. 요청자는 VBus 의전원은최소화시킨다. 요청자가전원소비자가되었다. 리셉터클의 CC 핀은풀다운저항이연결된다. 6) 수신자는 GoodCRC 응답메시지를요청자에게전송한다. 7) 수신자는 PD_RDY 메시지를요청자에게전송한다. 수신자는 VBus 의전원을최대화시킨다. 수신자가전원공급자가되었다. 리셉터클의 CC 핀은풀업저항이연결된다. 8) 요청자는 GoodCRC 응답메시지를수신자에게전송한다.
74 Sink 측에서요청하는 Type-C 전원공급역할교환 (Power Role Swap) 그림 6-33 Sink 가요청하는전원공급역할교환과정 [ 그림 6-33] 를보자. 요청자가현재전원소비자이다. 요청자는전원공급자역할을교환하기를요청 하는그림이다. 1) 요청자 (Sink) 는 PR_Swap (Power Role) 메시지를수신자에게전송한다. 역할교환을요청한다. 2) 수신자 (Source) 는 GoodCRC 응답메시지를요청자에게전송한다. 역할교환명령을수신했다는의 미이다. 3) 수신자는 Accept 메시지를요청자에게전송한다. 역할교환을허락하겠다는의미이다. 4) 요청자는 GoodCRC 응답메시지를수신자에게전송한다. 5) 수신자는 PD_RDY 메시지를요청자에게전송한다. 수신자는 VBus 의전원을최소화시킨다. 수신자가전원소비자가되었다. 리셉터클의 CC 핀은풀다운저항이연결된다.
75 6) 요청자는 GoodCRC 응답메시지를수신자에게전송한다. 7) 요청자는 PD_RDY 메시지를수신자에게전송한다. 요청자는 VBus 의전원을최대화시킨다. 요청자가전원공급자가되었다. 리셉터클의 CC 핀은풀업저항이연결된다. 8) 수신자는 GoodCRC 응답메시지를수신자에게전송한다 전원소비자이면서 UFP 측에서요청하는 Type-C 데이터역할교환 (Data Role Swap) 전원을소비하는포트가 UFP 로사용되는경우, UFP 측에서데이터역할을교환하기를요청할수있 다. 전원공급자역할은그대로유지하면서데이터역할만교환한다. 데이터역할교환은 UFP 또는 DFP 측에서요청할수있다. 그림 6-34 전원소비자이면서 UFP 측에서요청하는 Type-C 데이터역할교환과정
76 [ 그림 6-34] 를보자. 요청자가현재전원소비자이다. 요청자는데이터역할을교환하기를요청하는 그림이다. 전원공급자역할은그대로유지한다. 1) 요청자는 DR_Swap (Data Role) 메시지를수신자에게전송한다. 역할교환을요청한다. 2) 수신자는 GoodCRC 응답메시지를요청자에게전송한다. 역할교환명령을수신했다는의미이다. 3) 수신자는 Accept 메시지를요청자에게전송한다. 역할교환을허락하겠다는의미이다. 4) 요청자는 GoodCRC 응답메시지를수신자에게전송한다. 전원공급관계는그대로유지된다. 수신자가 UFP 가되었다. 요청자가 DFP 가되었다 전원공급자이면서 UFP 측에서요청하는 Type-C 데이터역할교환 (Data Role Swap) 전원을공급하는포트가 UFP 로사용되는경우, UFP 측에서데이터역할을교환하기를요청할수있 다. 전원공급자역할은그대로유지하면서데이터역할만교환한다. 데이터역할교환은 UFP 또는 DFP 측에서요청할수있다. 그림 6-35 전원공급자이면서 UFP 측에서요청하는 Type-C 데이터역할교환과정
77 [ 그림 6-35] 를보자. 요청자가현재전원공급자이다. 요청자는데이터역할을교환하기를요청하는 그림이다. 전원공급자역할은그대로유지한다. 1) 요청자는 DR_Swap (Data Role) 메시지를수신자에게전송한다. 역할교환을요청한다. 2) 수신자는 GoodCRC 응답메시지를요청자에게전송한다. 역할교환명령을수신했다는의미이다. 3) 수신자는 Accept 메시지를요청자에게전송한다. 역할교환을허락하겠다는의미이다. 4) 요청자는 GoodCRC 응답메시지를수신자에게전송한다. 전원공급관계는그대로유지된다. 수신자가 UFP 가되었다. 요청자가 DFP 가되었다 전원제공자이면서 DFP 측에서요청하는 Type-C 데이터역할교환 (Data Role Swap) 전원을제공하는포트가 DFP 로사용되는경우, DFP 측에서데이터역할을교환하기를요청할수 있다. 전원공급자역할은그대로유지하면서데이터역할만교환한다.
78 데이터역할교환은 UFP 또는 DFP 측에서요청할수있다. 그림 6-36 전원제공자이면서 DFP 측에서요청하는 Type-C 데이터역할교환과정 [ 그림 6-36] 를보자. 요청자가현재전원제공자이다. 요청자는데이터역할을교환하기를요청하는 그림이다. 전원공급자역할은그대로유지한다. 1) 요청자는 DR_Swap (Data Role) 메시지를수신자에게전송한다. 역할교환을요청한다. 2) 수신자는 GoodCRC 응답메시지를요청자에게전송한다. 역할교환명령을수신했다는의미이다. 3) 수신자는 Accept 메시지를요청자에게전송한다. 역할교환을허락하겠다는의미이다. 4) 요청자는 GoodCRC 응답메시지를수신자에게전송한다. 전원공급관계는그대로유지된다. 수신자가 DFP 가되었다. 요청자가 UFP 가되었다.
79 전원소비자이면서 DFP 측에서요청하는 Type-C 데이터역할교환 (Data Role Swap) 전원을소비하는포트가 DFP 로사용되는경우, DFP 측에서데이터역할을교환하기를요청할수 있다. 전원공급자역할은그대로유지하면서데이터역할만교환한다. 데이터역할교환은 UFP 또는 DFP 측에서요청할수있다.
80 그림 6-37 전원소비자이면서 DFP 측에서요청하는 Type-C 데이터역할교환과정 [ 그림 6-37] 를보자. 요청자가현재전원소비자이다. 요청자는데이터역할을교환하기를요청하는 그림이다. 전원공급자역할은그대로유지한다. 1) 요청자는 DR_Swap (Data Role) 메시지를수신자에게전송한다. 역할교환을요청한다. 2) 수신자는 GoodCRC 응답메시지를요청자에게전송한다. 역할교환명령을수신했다는의미이다. 3) 수신자는 Accept 메시지를요청자에게전송한다. 역할교환을허락하겠다는의미이다. 4) 요청자는 GoodCRC 응답메시지를수신자에게전송한다. 전원공급관계는그대로유지된다. 수신자가 DFP 가되었다. 요청자가 UFP 가되었다 VConn 전원제공자이면서 DFP 측에서요청하는 Type-C VConn 전원공급역할교환 (VConn Role Swap)
81 DFP 측에서 VConn 을제공하고있던상황에서, DFP 측이 VConn 전원공급역할을교환하기를요청 하는과정을보여준다. 데이터역할교환은 DFP 측에서만요청할수있다. 그림 6-38 VConn 전원제공자이면서 DFP 측에서요청하는 Type-C VConn 전원공급역할교환과정 [ 그림 6-38] 를보자. 요청자 (DFP) 가현재 VConn 전원공급자이다. 요청자가 VConn 전원공급자역 할교환을요청하는그림이다. 1) 요청자는 VConn_Swap (VConn Role) 메시지를수신자에게전송한다. 역할교환을요청한다. 2) 수신자는 GoodCRC 응답메시지를요청자에게전송한다. 역할교환명령을수신했다는의미이다. 3) 수신자는 Accept 메시지를요청자에게전송한다. 역할교환을허락하겠다는의미이다. 4) 요청자는 GoodCRC 응답메시지를수신자에게전송한다. 5) 수신자는전력공급기를통해 VConn 공급을시작한다. 이어서 PS_RDY 메시지를요청자에게전
82 송한다. 6) 요청자는응답으로 GoodCRC 응답메시지를수신자에게전송한다. 이어서, 요청자는전력공급기 를통해 VConn 공급을끊어버린다. DFP 가 VConn 전력소비자가되었다 VConn 전원소비자이면서 DFP 측에서요청하는 Type-C VConn 전원공급역할교환 (VConn Role Swap) DFP 측에서 VConn 을소비하고있던상황에서, DFP 측이 VConn 전원공급역할을교환하기를요청 하는과정을보여준다. 데이터역할교환은 DFP 측에서만요청할수있다. 그림 6-39 VConn 전원소비자이면서 DFP 측에서요청하는 Type-C VConn 전원공급역할교환과정
83 [ 그림 6-39] 를보자. 요청자 (DFP) 가현재 VConn 전원소비자이다. 요청자가 VConn 전원공급자역 할교환을요청하는그림이다. 1) 요청자는 VConn_Swap (VConn Role) 메시지를수신자에게전송한다. 역할교환을요청한다. 2) 수신자는 GoodCRC 응답메시지를요청자에게전송한다. 역할교환명령을수신했다는의미이다. 3) 수신자는 Accept 메시지를요청자에게전송한다. 역할교환을허락하겠다는의미이다. 4) 요청자는 GoodCRC 응답메시지를수신자에게전송한다. 5) 요청자는전력공급기를통해 VConn 공급을시작한다. 이어서 PS_RDY 메시지를수신자에게전 송한다. 6) 수신자는응답으로 GoodCRC 응답메시지를요청자에게전송한다. 이어서, 수신자는전력공급기 를통해 VConn 공급을끊어버린다. DFP 가 VConn 전력공급자가되었다 PD 메시지 USB Power Delivery 에사용되는명령과파라미터는 CC 핀또는 VBus 핀을사용해서송, 수신된다. PD 메시지는컨트롤메시지 (Control Message) 와데이터메시지 (Data Message) 로구분된다. 컨트롤메시지는 16 비트, 데이터메시지는 48 비트에서 240 비트의크기를가진다 메시지구성 그림 6-40 USB Power Delivery Packet 포멧
84 [ 그림 6-40] 은 USB PD 패킷의포멧을보여준다. 사용되는메시지헤더 (Message Header) 는 [ 표 6-22] 과같은같이사용된다. 표 6-22 메시지헤더구성 비트필드이름 15 사용안함 Data Objects의개수 (Message Header 를따르는데이터 ) 컨트롤메시지 : 값 = 0, 데이터메시지 : 값!= Message ID 8 리셉터클 <-> 리셉터클 : Power Power Role 리셉터크 <-> 플러그, 원격플러그 : Cable Plug 7..6 스팩버젼 00b : 버전 b : 버전 Port Data Role 0b : UFP 1b : DFP
85 4 사용안함 3..0 Message Type 컨트롤메시지종류 Message Type 에따라서메시지의의미가결정된다. 표 6-23 메시지유형 (Message Type), 컨트롤메시지 비트 3..0 메시지유형 0000 사용안함 0001 GoodCRC 0010 GotoMin 0011 Accept 0100 Reject 0101 Ping 0110 PS_RDY 0111 Get_Source_Cap 1000 Get_Sink_Cap 1001 DR_Swap 1010 PR_Swap 1011 VCONN_Swap 1100 Wait 1101 Soft_Reset 사용안함 GoodCRC 메시지 GoodCRC 메시지는이전에받은메시지에대한수신여부를송신자에게알려주는역할로사용된 다. 이전에받은메시지의 Message ID 가그대로사용된다 GotoMin 메시지 GotoMin 메시지는전력을소비하는소비자에게전달되는메시지로서, 스팩에서정의하는최소한 의전력만소비하도록지시한다.
86 Accept 메시지 Accept 메시지는이전에받았던메시지요청 (PR_Swap, DR_Swap, VCONN_Swap, Soft_Reset) 에대해 서수용한다는의미로사용된다 Reject 메시지 Accept 메시지는이전에받았던메시지요청 (PR_Swap, DR_Swap, VCONN_Swap, Get_Sink_Cap, Get_Source_Cap) 에대해서거절한다는의미로사용된다 Ping 메시지 USB Type-A, B 에서만사용되는메시지이다. Source 에서 Sink 로주기적으로전송된다. Sink 가존재 하는지를확인하는목적으로사용된다 PS_RDY 메시지 전원공급기의역할을수행하는포트측에서전원공급준비를마쳤다는의미로사용하는메시지이다 Get_Source_Cap 메시지 현재연결된케이블의 Source 측의포트의특성정보를얻는데사용된다. Dual Role 의경우가아닌 Sink 측의포트는 Reject 메시지를응답한다. 자세한특성정보는 절을참고한다 Get_Sink_Cap 메시지 현재연결된케이블의 Sink 측의포트의특성정보를얻는데사용된다. Dual Role 의경우가아닌 Source 측의포트는 Reject 메시지를응답한다. 자세한특성정보는 절을참고한다 DR_Swap 메시지
87 DR_Swap 메시지는데이터역할 (Data Role) 을교환하는데사용된다. 해당하는메시지를수신하는 수신측에서다음과같은응답메시지가사용될수있다. Accept 메시지 : DR_Swap 요청을수용한다는의미이다. Reject 메시지 : DR_Swap 요청을거절한다는의미이다. Wait 메시지 : DR_Swap 요청을당장수용하지않지만, 가까운시간안에수용할때를알려주겠다는 의미이다. DR_Swap 메시지가수용되어도 VBus, VConn 공급자의역할은그대로유지된다 PR_Swap 메시지 PR_Swap 메시지는전원공급역할 (Power Role) 을교환하는데사용된다. 해당하는메시지를수신하 는수신측에서다음과같은응답메시지가사용될수있다. Accept 메시지 : PR_Swap 요청을수용한다는의미이다. Reject 메시지 : PR_Swap 요청을거절한다는의미이다. Wait 메시지 : PR_Swap 요청을당장수용하지않지만, 가까운시간안에수용할때를알려주겠다는 의미이다. PR_Swap 메시지가수용되어도 Data Role, VConn 공급자의역할은그대로유지된다. 양쪽파트너의포트는각각자신의 MessageIDCounter, RetryCounter 값을초기화한다 VCONN_Swap 메시지 VCONN_Swap 메시지는 VConn 전원공급역할 (VConn Role) 을교환하는데사용된다. 해당하는메시 지를수신하는수신측에서다음과같은응답메시지가사용될수있다. Accept 메시지 : VCONN_Swap 요청을수용한다는의미이다. Reject 메시지 : VCONN_Swap 요청을거절한다는의미이다. Wait 메시지 : VCONN_Swap 요청을당장수용하지않지만, 가까운시간안에수용할때를알려주 겠다는의미이다.
88 VCONN_Swap 메시지가수용되어도 Data Role, VBus 공급자의역할은그대로유지된다 Wait 메시지 Wait 메시지는 Request, PR_Swap, DR_Swap, VCONN_Swap 메시지에대한응답으로사용될수있 다. 곧바로요청하는메시지에대한처리를할수없을때응답으로사용된다 Soft_Reset 메시지 프로토콜영역의에러를회복하고, Message Counter 의상태를알려진초기상태로되돌린다. 전력 공급상태는그대로유지한다. Soft_Reset 메시지가성공적으로수행되면, 포트는선택적으로전력공급협상을다시진행할수있 다. Soft_Reset 메시지가실패하면, Hard_Reset 시그널링작업이진행된다. Hard_Reset 시그널링은 메시지형태를사용하지않는다. 순서열을사용한다. 표 6-24 Hard_Reset 순서열문자 K-code 순서테이블속에 K-code 문자 1 RST-1 2 RST-1 3 RST-1 4 RST 데이터메시지종류 Message Type 에따라서메시지의의미가결정된다. 표 6-25 [ 표 6-22] 의메시지유형 (Message Type), 데이터메시지 비트 3..0 메시지유형 0000 사용안함 0001 Source_Capabilities 0010 Request 0011 BIST
89 0100 Sink_Capabilities 사용안함 [ 표 6-25] 는데이터메시지로사용되는메시지유형값을보여주고있다. 그림 6-41 메시지 Payload 를포함하고있는 USB PD 패킷포멧 [ 그림 6-41] 을보면, Message Header(Control Message 또는 Data Message) 와뒤에이어지는최대 8 개의 Data Object 를보여주고있다. Data Object 는 Data Message 에경우사용되는필드이다. Data Object 의길이는 Message Header 의 Data Object 개수를나타내는필드에따라서가변적인 크기를가진다 Capabilities 메시지 Source_Capabilities 와 Sink_Capabilities 가여기에해당한다.
90 포트의특성정보를제공하는데사용된다. 여기에사용되는 Data Object 를 Power Data Object(PDO) 라고부른다. Capabilities 메시지는최소한하나이상의 Data Object(5V 고정전원공급기 Object) 를가진다. 추가로가질수있는 Data Object 는다음의것이있다. * 5V 이외에다른고정전원공급기 (fixed Supply) Object 를표현한다. 낮은수준에서높은수준의 순서대로표현한다. * 배터리전원공급기 Object 를표현한다. 낮은수준에서높은수준의순서대로표현한다. * 고정혹은배터리가아닌다른방식의전원공급기 Object 를표현한다. 낮은수준에서높은수준 의순서대로표현한다. 표 6-26 일반적인 Power Data Object 의포멧 비트 설명 B 값 파라미터 00b 고정전원공급기 01b 배터리전원공급기 10b 그외전원공급기 11b 사용안함 B29..0 PDO의종류에따라서가변 [ 표 6-26] 을보면, 3 가지형식의 PDO 가사용하는비트맵정보를설명하고있다. Capabilities 메시지가포함하는 Data Object 는가장앞부분에고정전원공급기 PDO 를시작으로 배터리, 그외전원공급기 PDO 정보가선택적으로따라온다 고정전원공급기 PDO(Power Source 의경우 ) 고정전원공급기 PDO 는 [ 표 6-27] 과같은포멧을사용한다. 표 6-27 고정전원공급기 Power Data Object 의포멧 비트 설명
91 B 고정전원공급기 B29 이중역할전력 (Dual Role Power) PW_Swap 메시지처리능력을가지고있는지여부를알려준다 B28 USB 서스팬드지원여부 USB에서정의하고있는서스팬드환경을그대로지원하는지여부를 알려준다 B27 외부전력공급됨여부 B26 USB 통신기능포함여부 B25 데이터역할교환가능여부 B 사용안함 B 최대전류 (Peak Current). 디폴트 0. 짧은시간동안과도한전류를제공할필요가있는경우에사용됨 B 제공하는 50mV 단위의전압량 B9..0 제공하는 10mA단위의최대전류량 배터리전원공급기 PDO(Power Source 의경우 ) 배터리전원공급기 PDO 는 [ 표 6-28] 과같은포멧을사용한다. 표 6-28 배터리전원공급기 Power Data Object 의포멧 비트 B B B B9..0 설명배터리전원공급기제공하는 50mV단위의최대전압량제공하는 50mV단위의최소전압량허용하는 250mW단위의최대전력량 그외전원공급기 PDO(Power Source 의경우 ) 그외전원공급기 PDO 는 [ 표 6-29] 과같은포멧을사용한다. 표 6-29 그외전원공급기 Power Data Object 의포멧 비트 B B B B9..0 설명그외전원공급기제공하는 50mV단위의최대전압량제공하는 50mV단위의최소전압량제공하는 10mA단위의최대전류량
92 고정전원소비기 PDO(Power Sink 의경우 ) 고정전원소비기 PDO 는 [ 표 6-30] 과같은포멧을사용한다. 표 6-30 고정전원소비기 Power Data Object 의포멧 비트 B B29 B28 B27 B26 B25 B B B9..0 설명고정전원소비기이중역할전력 (Dual Role Power) PW_Swap 메시지처리능력을가지고있는지여부를알려준다 5V이상의전압을요구하는 Sink의특성을가지고있는지외부전력공급됨여부 USB 통신기능포함여부데이터역할교환가능여부사용안함소비하는 50mV 단위의전압량동작가능한 10mA단위의전류량 배터리전원소비기 PDO(Power Sink 의경우 ) 배터리전원소비기 PDO 는 [ 표 6-31] 과같은포멧을사용한다. 표 6-31 배터리전원소비기 Power Data Object 의포멧 비트 B B B B9..0 설명배터리전원소비기소비하는 50mV단위의최대전압량소비하는 50mV단위의최소전압량동작가능한 250mW단위의전력량 그외전원소비기 PDO(Power Sink 의경우 ) 그외전원소비기 PDO 는 [ 표 6-32] 과같은포멧을사용한다. 표 6-32 그외전원소비기 Power Data Object 의포멧 비트 설명
93 B B B B9..0 그외전원소비기소비하는 50mV단위의최대전압량소비하는 50mV단위의최소전압량동작가능한 10mA단위의전류량 Request 메시지 Source_Capabilities 메시지는 Power Source측에서 Sink측으로전송하는특성정보를알려주는용도로사용되는메시지이다. 반면 Request 메시지는 Power Sink측에서 Source측으로사용하려는전력제공을요청하는메시지이다. Request 메시지에서사용하는 Object Position값은가장최근에 Power Source가제공한 Source_Capabilities 메시지와함께전달된 PDO의인덱스를지칭하는데사용된다. 이값은최소값 1부터시작한다. 이값을지정하는데 Source_Capabilities 메시지가전달해준 PDO정보가완전하게부합할필요는없다. Sink가소비하는전력을충분하게표현하는 PDO가있으면해당하는항목을가리키는값으로사용된다. Request 메시지가사용하는 Data Object 의형태는크게 2 가지형태를사용한다. 하나는고정전원 Power Data Object 와가변전원 Power Data Object 가공유하는형태이고, 다른 하나는배터리전원 Power Data Object 를위한형태이다. 표 6-33 고정및가변전원 Power Data Object 의포멧 (GiveBack 플래그가 0 인경우 ) 비트 설명 B31 사용안함 B Object Position( 최소값 1) B27 GiveBack 플래그 (0) B26 Capability Mismatch B25 USB 통신기능포함여부 B24 USB Suspend 지원안함 B 사용안함 B 동작에필요한 10mA단위의필요전류량 B mA단위의최대필요전류량 표 6-34 고정및가변전원 Power Data Object 의포멧 (GiveBack 플래그가 1 인경우 ) 비트 설명
94 B31 사용안함 B Object Position( 최소값 1) B27 GiveBack 플래그 (1) B26 Capability Mismatch B25 USB 통신기능포함여부 B24 USB Suspend 지원안함 B 사용안함 B 동작에필요한 10mA단위의필요전류량 B mA단위의최대필요전류량 표 6-35 배터리전원 Power Data Object 의포멧 (GiveBack 플래그가 0 인경우 ) 비트 설명 B31 사용안함 B Object Position( 최소값 1) B27 GiveBack 플래그 (0) B26 Capability Mismatch B25 USB 통신기능포함여부 B24 USB Suspend 지원안함 B 사용안함 B 동작에필요한 250mW단위의필요전력량 B mW단위의최대필요전력량 표 6-36 배터리전원 Power Data Object 의포멧 (GiveBack 플래그가 1 인경우 ) 비트 설명 B31 사용안함 B Object Position( 최소값 1) B27 GiveBack 플래그 (1) B26 Capability Mismatch B25 USB 통신기능포함여부 B24 USB Suspend 지원안함 B 사용안함 B 동작에필요한 250mW단위의필요전력량 B mW단위의최대필요전력량
95 여기서는 [ 표 6-33] 에서 [ 표 6-36] 까지나타난필드중에몇가지를부연설명하도록한다. * GiveBack 플래그 : 해당하는기능이활성화되면, Power Source는 Sink측으로최소전력사용상태로전환하라는의미로 GotoMin 메시지를사용할수있다. 전력공급을받던 Sink는특별한사정으로인해 Source로부터전력공급량이최소화될수있다. 이와같은상황은 Source에게받던전력공급량을되돌려준다 (GiveBack) 는의미로해석하게된다. * Capabilities Mismatch : Power Source 가제공하는전원공급조건은그어떤것도 Sink 가사용하기 에적합하지않다는의미로셋 (1) 된다. 이런경우, Power Sink 는 Sink_Capabilities 메시지를통해서 요구하는전원소비조건을 Source 에게알려야한다. * USB 통신기능 : USB 스팩에서규정하는 Suspend, Resume 기능에동작을하는지여부를알려준 다 BIST 메시지 포트가물리영역테스트모드로진입하는데에사용하는메시지이다. 이책에서는설명을생략하 도록하겠다 실예를통해 USB PD 를이해하기 실전에서어떤식으로 PD 메시지가송, 수신되고이에따라서전력소비가어떻게결정되는지를살 펴보기위해서몇가지예를들어설명하려고한다 데이터역할 (Data Role) 과전원공급역할 (Power Role) 이같은경우의예시 데이터역할 (Data Role) 과전원공급역할 (Power Role) 은통상적으로같은경우가일반적이다. USB Type-C 는이와같은상황을바꿀수있다. 먼저일반적인상황으로데이터역할과전원공급역할이동일한환경의예시를통해서 USB PD 가 어떤식으로메시지를교환하는지를알아보도록하자. [ 그림 6-42] 를보자. 노트북에모니터 1 를하나연결한다. 전원과데이터가케이블을통해서전달된다.
96 노트북은모니터 1 측으로 30W 전력을공급해야한다. 모니터 1 의내부에는허브가있다. 이허브의포트를통해서모니터 2 와또다시연결된다. 모니터 1 은모니터 2 측으로 30W 전력을공급해야한다. 결과적으로노트북은모니터 1 측으로 60W 의전력을공급해야한다. 그림 6-42 하나의노트북 + 두개의모니터 (Data Role = Power Role) 표 6-37 [ 그림 6-42] 환경에서전원공급과 PD 메시지가전달되는과정 단계 노트북 모니터1 모니터2 전력사용가능 (W) 모니터 1 1 AC전원공급 0 2 VBus 제공 연결됨 V@150mA 사용 3 Source Caps메시지전달 Source Cap메시지수신 0.75
97 4 Request메시지수신 Request메시지전달 V@1.5A(30W) 5 Accept메시지전달 Accept메시지수신 PS_RDY메시지전달 PS_RDY메시지수신 20V@1.5A(30W) 사용 30 모니터 2 7 모니터2연결확인 연결됨. VBus 제공안됨 30 8 Request메시지수신 Request메시지전달 VBus 제공안됨 30 20V@1.73A(34.6W) 9 Accept메시지전달 Accept메시지수신 VBus 제공안됨 PS_RDY메시지전달 PS_RDY메시지수신 VBus 제공안됨 VBus 제공 5V@150mA 사용 Source Caps메시지전달 Source Cpas메시지수신 V@0.9A(4.5W) 13 Request메시지수신 Request메시지전달 V@0.15A(0.75W) + Capability Mismatch 14 Accept메시지전달 Accept메시지수신 PS_RDY메시지전달 PS_RDY메시지수신 Get Sink Caps Get Sink Caps 34.6 메시지전달 메시지수신 17 Sink Caps메시지수신 Sink Caps메시지전달 V@1.5A 18 Request메시지수신 Request메시지전달 V@3A(60W) 19 Accept메시지전달 Accept메시지수신 PS_RDY메시지전달 PS_RDY메시지수신 Source Caps메시지전달 Source Cpas메시지수신 60 5V@0.9A(4.5W) 20V@1.5A(30W) 22 Request메시지수신 Request메시지전달 60 20V@1.5A(30W) 23 Accept메시지전달 Accept메시지수신 PS_RDY메시지전달 PS_RDY메시지수신 60
98 사용 부가설명 4: 모니터 1 은노트북측으로 20V@1.5A(30W) 의전력을제공하기를요청한다. 8: 모니터 1 은노트북측으로 20V@1.73A(34.6W) 의전력을제공하기를요청한다. 이값은기존의 30W + 약 4.5W 를포함하는크기값으로써, USB Super Speed 포트하나가정상적으로동작하는데 필요한최대전력 (PD 를사용하지않는경우 ) 량이다. 13: 모니터 2 는모니터 1 측으로 5V@0.15A(0.75W) 의전력을제공하기를요청한다. 동시에 Capability Mismatch 파라미터를기록한다. 이크기는 USB Super Speed 포트에연결되는디바이 스가요구하는최소전력 (PD 를사용하지않는경우 ) 량이다. 17: 모니터 2 는모니터 1 측으로 Sink Caps 메시지 (20V@1.5A) 를전달한다. 30W 를사용한다는것을 알린다. 18: 모니터 1 은모니터 2 로부터요구되는전력량 30W 를고려해서, 노트북측으로 20V@3A(60W) 의 전력을제공하기를요청한다. 20: 노트북은이제 60W 의전력이사용되는것을허락한상태이다. 21: 노트북으로부터요구된 60W 의전력사용을허락받은뒤, 모니터 1 은모니터 2 측으로새로운전 력공급특성정보를제공한다. 22: 모니터 2 는모니터 1 측으로 20V@1.5A(30W) 의전력을제공하기를요청한다 데이터역할 (Data Role) 과전원공급역할 (Power Role) 이다른경우의예시 데이터역할 (Data Role) 과전원공급역할 (Power Role) 이다른경우를살펴보도록하자. 처음상태 는이들의역할이같은상태에서시작하지만, 필요에의해서전원공급역할교환 (Power Role Swap) 이이루어진다. [ 그림 6-43] 를보자. AC 전원을공급받는모니터 2 가있다. 모니터 2 에모니터 1 을하나연결한다. 모니터 2 는모니터 1 측으 로 30W 전력을공급해야한다. 모니터 1 의내부에는허브가있다. 이허브의포트를통해서타블 렛과또다시연결된다. 모니터 1 은타블렛측으로 12W 전력을공급해야한다. 타블렛은충전까지
99 가능한상태이다. 결과적으로모니터 2 는모니터 1 측으로 42W 의전력을공급해야한다. 데이터역할 (Data Role) 에있어, 타블렛은모니터1을위해, 모니터1은모니터2를위해각각호스트의역할을수행한다. 하지만전원공급방향은반대방향이다. 타블렛의 DFP가초반에전원공급 Source역할로정해져있었다고가정하면, 전원이공급됨과동시에 PW_Swap 메시지에의해서타블렛의 DFP와모니터1의 UFP는서로의전력공급역할을교환해야한다. 초기에타블렛이전원공급역할을수행하지만, 잠시후타블렛은전원소비역할로전환된다. 타블렛은 12V@0.2A(2.4W) 의전력이제공되면동작이가능하다고가정한다. 또한, 12V@1A(12W) 의전력이제공되면충전도가능하다고가정한다. 이시나리오에서는처음에는동작이가능한 2.4W 의전력이제공되고, 이후에충전이가능한 12W 의전력이제공되는형태로진행해본다. 그림 6-43 하나의타블렛 + 두개의모니터 (Data Role!= Power Role)
를수있다. * 링크명령어 링크는양쪽파트너사이에지정된링크명령어 ( 프로토콜계층에서정의하지않은 ) 을별도로준비해 서사용한다. 링크명령어는링크상태의전환및흐름제어 (Flow Control) 등에사용된다. * 링크전원관리 USB 3 SS 에서는링크의버스전원사용상태가어떤상태인지를
4 장 USB 링크 (Link) USB 프로토콜에서링크가중요한역할로부각되기시작한것은 USB 3 슈퍼스피드 (SS) 로부터이 다. 링크는호스트 ( 루트허브포트 ) 또는외장허브의다운스트림포트 (DP) 와외장허브또는디바이스의 업스트림포트 (UP) 간의연결을의미한다. 이들간의서로를링크파트너 (Link Partner) 라고부른다. 이번장에서는 USB 링크에대한전체적인개념을배우도록한다.
More information1 장 USB(Universal Serial Bus) 기본개요 이번장에서는앞으로책에서소개하는 USB 와관련된개념을가볍게살펴보는시간을가진다. 구체적인내용은이어지는뒷장에서자세하게다룰것이다. [ 글을읽기전에잠시확인하자!] 저자의한마디 * USB 2.0 USB 릴리즈버젼의종류
1 부 USB 2(Low Speed, Full Speed, High Speed) 와 USB 3(Super Speed, Super Speed Plus) 를소개한다. 다양한 USB 트랜잭션을소개하고, USB 버스에서전원을효과적으로사용하는방법이어떻게소 개되어있는지를살펴본다. 1 장 USB(Universal Serial Bus) 기본개요 이번장에서는앞으로책에서소개하는
More information일반적인 네트워크의 구성은 다음과 같다
W5200 Errata Sheet Document History Ver 1.0.0 (Feb. 23, 2012) First release (erratum 1) Ver 1.0.1 (Mar. 28, 2012) Add a solution for erratum 1, 2 Ver 1.0.2 (Apr. 03, 2012) Add a solution for erratum 3
More information슬라이드 1
TCPdump 사용법 Neworks, Inc. (Tel) 070-7101-9382 (Fax) 02-2109-6675 ech@pumpkinne.com hp://www.pumpkinne.co.kr TCPDUMP Tcpdump 옵션 ARP 정보 ICMP 정보 ARP + ICMP 정보 IP 대역별정보 Source 및 Desinaion 대역별정보 Syn 과 syn-ack
More information이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론
이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론 2. 관련연구 2.1 MQTT 프로토콜 Fig. 1. Topic-based Publish/Subscribe Communication Model. Table 1. Delivery and Guarantee by MQTT QoS Level 2.1 MQTT-SN 프로토콜 Fig. 2. MQTT-SN
More informationMicrosoft Word _whitepaper_latency_throughput_v1.0.1_for_
Sena Technologies 백서 : Latency/Throughput Test September 11, 2008 Copyright Sena Technologies, Inc 2008 All rights strictly reserved. No part of this document may not be reproduced or distributed without
More information<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A638C0CFC2F72E BC8A3C8AF20B8F0B5E55D>
뻔뻔한 AVR 프로그래밍 The Last(8 th ) Lecture 유명환 ( yoo@netplug.co.kr) INDEX 1 I 2 C 통신이야기 2 ATmega128 TWI(I 2 C) 구조분석 4 ATmega128 TWI(I 2 C) 실습 : AT24C16 1 I 2 C 통신이야기 I 2 C Inter IC Bus 어떤 IC들간에도공통적으로통할수있는 ex)
More informationCAN-fly Quick Manual
adc-171 Manual Ver.1.0 2011.07.01 www.adc.co.kr 2 contents Contents 1. adc-171(rn-171 Pack) 개요 2. RN-171 Feature 3. adc-171 Connector 4. adc-171 Dimension 5. Schematic 6. Bill Of Materials 7. References
More information그룹웨어와 XXXXX 제목 예제
데이터통신 데이타링크제어 차례 회선원칙 (line discipline) 흐름제어 (flow control) 오류제어 (error control) 2 회선원칙 링크에연결된장치간의상대적인관계 대등 (peer-to-peer) 관계 주종 (primary-secondary) 관계 회선구성 점대점 (point-to-point) 구성 다중점 (multipoint) 구성
More information시스템, 네트워크모니터링을통한보안강화 네트워크의미래를제시하는세미나 세미나 NetFocus 2003 : IT 관리자를위한네트워크보안방법론 피지피넷 /
시스템, 네트워크모니터링을통한보안강화 네트워크의미래를제시하는세미나 세미나 NetFocus 2003 : IT 관리자를위한네트워크보안방법론 피지피넷 / 팀장나병윤!dewymoon@pgpnet.com 주요내용 시스템모니터링! 패킷크기와장비의 CPU 및 Memory 사용량! SNMP를장비의상태관찰 비정상적인트래픽모니터링! Packet 분석기의다양한트래픽모니터링도구를이용한비정상적인트래픽관찰!
More informationBY-FDP-4-70.hwp
RS-232, RS485 FND Display Module BY-FDP-4-70-XX (Rev 1.0) - 1 - 1. 개요. 본 Display Module은 RS-232, RS-485 겸용입니다. Power : DC24V, DC12V( 주문사양). Max Current : 0.6A 숫자크기 : 58mm(FND Size : 70x47mm 4 개) RS-232,
More informationThe Pocket Guide to TCP/IP Sockets: C Version
인터넷프로토콜 5 장 데이터송수신 (3) 1 파일전송메시지구성예제 ( 고정크기메시지 ) 전송방식 : 고정크기 ( 바이너리전송 ) 필요한전송정보 파일이름 ( 최대 255 자 => 255byte 의메모리공간필요 ) 파일크기 (4byte 의경우최대 4GB 크기의파일처리가능 ) 파일내용 ( 가변길이, 0~4GB 크기 ) 메시지구성 FileName (255bytes)
More informationMicrosoft Word - PEB08_USER_GUIDE.doc
0. PEB08 이란? PEB08(PIC EVALUATION BOARD 8bits) 은 Microchip 8bit Device 개발을쉽고편리하게할수있는보드입니다. 1. 다양한 8bit Device 지원 기존대부분의 8bit 보드의경우일부 Pin-Count만지원을하였지만, PEB08은 PIC10, PIC12, PIC16, PIC18의 DIP Type Package의모든
More information개요
Application Note (003) 시리얼인터페이스 (RS232/RS422/RS485) Version 1.0 솔내시스템주식회사 1. 개요 는 RS232, RS422, RS485등 3개의시리얼인터페이스를지원합니다. 사용자는 의설정용유틸리티인 ezconfig를이용해서 3개의인터페이스중에서하나를선택하여설정할수있습니다. 1.1. RS232 Ground를기준으로한전압을이용해서통신하는형태입니다.
More information[ 네트워크 1] 3 주차 1 차시. IPv4 주소클래스 3 주차 1 차시 IPv4 주소클래스 학습목표 1. IP 헤더필드의구성을파악하고요약하여설명할수있다. 2. Subnet ID 및 Subnet Mask 를설명할수있고, 각클래스의사용가능한호스트수와사설 IP 주소및네트
3 주차 1 차시 IPv4 주소클래스 학습목표 1. IP 헤더필드의구성을파악하고요약하여설명할수있다. 2. Subnet ID 및 Subnet Mask 를설명할수있고, 각클래스의사용가능한호스트수와사설 IP 주소및네트워크주소와 브로드캐스트주소를설명할수있다. 학습내용 1 : IP 헤더필드구성 1. Network Layer Fields 2. IP 헤더필드의구성 1)
More information슬라이드 제목 없음
ETOS-DPS-X Guide AC&T SYSTEM 1 ETOS-DPS-X 개요 ETOS-DPS-X Field Bus Network 중 Profibus-DP Network 에연결되는장비. ProfiBus-DP Network 시스템에 DP 통신을지원하지않는현장장비에대한통신서버기능구현. Profibus-DP Slave 동작하기때문에반드시 DP-Master 모듈이있는시스템에서적용가능.
More information드포인트가지원하는 MaxPacketSize가 8, 16, 32, 64 중에하나이기때문에, 호스트는 FS 디바이스가지원하는컨트롤엔드포인트의 MaxPacketSize 값을정확하게알아야한다. 이런정보는디바이스디스크립터 (Device Descriptor) 에포함되어있으며, 이
3 장 USB 통신속도별특징 USB 2 속도 ( 로우스피드, 풀스피드, 하이스피드 ) 와 USB 3 속도 ( 슈퍼스피드 ) 는단지속도의빠르기만차이를가지고있지않다. 각각의전송속도는다양한속성면에서서로다른특징을가지고있으며, 주변에서아직도로우스피드 ( 느린속도 ) 의주변장치를그대로사용하는현실적인면에서볼때, 로우스피드의속도가느리다는이유로이를관과할내용은아니다. 3.1
More informationMicrosoft Word - release note-VRRP_Korean.doc
VRRP (Virtual Router Redundancy Protocol) 기능추가 Category S/W Release Version Date General 7.01 22 Dec. 2003 Function Description VRRP 는여러대의라우터를그룹으로묶어하나의가상 IP 어드레스를부여해마스터로지정된라우터장애시 VRRP 그룹내의백업라우터가마스터로자동전환되는프로토콜입니다.
More information<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A634C0CFC2F72E BC8A3C8AF20B8F0B5E55D>
뻔뻔한 AVR 프로그래밍 The 4 th Lecture 유명환 ( yoo@netplug.co.kr) 1 시간 (Time) 에대한정의 INDEX 2 왜타이머 (Timer) 와카운터 (Counter) 인가? 3 ATmega128 타이머 / 카운터동작구조 4 ATmega128 타이머 / 카운터관련레지스터 5 뻔뻔한노하우 : 레지스터비트설정방법 6 ATmega128
More informationuntitled
Oracle DBMS 로그인의접근제어우회 취약점분석 2006. 2. 9 인터넷침해사고대응지원센터 (KISC) 본보고서의전부나일부를인용시반드시 [ 자료 : 한국정보보호진흥원 (KISA)] 룰명시하여주시기바랍니다. 개요 o 2005년이후 Oracle Critical Patch Update(CPU) 는 Oracle사제품대상으로다수의보안패치및보안패치와관련된일반패치를발표하는주요수단임
More information2009년 상반기 사업계획
네트워크계층프로토콜 쉽게배우는데이터통신과컴퓨터네트워크 학습목표 IPv6의필요성과헤더구조를이해한다. 이동 IP 프로토콜의터널링원리를이해한다. ARP/RARP의필요성을이해한다. ICMP의헤더와제어메시지를이해한다. IGMP의헤더와멀티캐스트그룹관리방식을이해한다. 2/27 1 절. IPv6 주소공간확장 IPv4의 32 비트에서 128 비트로확장 최대 2 128 개의호스트를지원
More informationMicrosoft PowerPoint - chap01-C언어개요.pptx
#include int main(void) { int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 프로그래밍의 기본 개념을
More informationISP and CodeVisionAVR C Compiler.hwp
USBISP V3.0 & P-AVRISP V1.0 with CodeVisionAVR C Compiler http://www.avrmall.com/ November 12, 2007 Copyright (c) 2003-2008 All Rights Reserved. USBISP V3.0 & P-AVRISP V1.0 with CodeVisionAVR C Compiler
More informationHLS(HTTP Live Streaming) 이용가이드 1. HLS 소개 Apple iphone, ipad, ipod의운영체제인 ios에서사용하는표준 HTTP 기반스트리밍프로토콜입니다. 2. HLS 지원대상 - 디바이스 : iphone/ipad/ipod - 운영체제 :
HLS(HTTP Live Streaming) 이용가이드 1. HLS 소개 Apple iphone, ipad, ipod의운영체제인 ios에서사용하는표준 HTTP 기반스트리밍프로토콜입니다. 2. HLS 지원대상 - 디바이스 : iphone/ipad/ipod - 운영체제 : ios 3.0 이상 - 콘텐츠형식 : MP4 (H264,AAC ), MP3 * 디바이스별해상도,
More informationBC6HP Korean.ai
제품설명서 BC6HP Microprocessor controlled highperformance rapid charger/discharger with integrated balancer, 250watts of charging power USB PC link and Firmware upgrade, Temperature sensor Charge current up
More information1_12-53(김동희)_.hwp
본논문은 2012년전력전자학술대회우수추천논문임 Cascaded BuckBoost 컨버터를 이용한 태양광 모듈 집적형 저전압 배터리 충전 장치 개발 472 강압이 가능한 토폴로지를 이용한 연구도 진행되었지만 제어 알고리즘의 용의성과 구조의 간단함 때문에 BuckBoost 컨버터 또는 Sepic 컨버터를 이용하여 연구 가 진행되었다[10][13]. 태양광 발전
More informationChapter ...
Chapter 4 프로세서 (4.9절, 4.12절, 4.13절) Contents 4.1 소개 4.2 논리 설계 기초 4.3 데이터패스 설계 4.4 단순한 구현 방법 4.5 파이프라이닝 개요*** 4.6 파이프라이닝 데이터패스 및 제어*** 4.7 데이터 해저드: 포워딩 vs. 스톨링*** 4.8 제어 해저드*** 4.9 예외 처리*** 4.10 명령어 수준
More informationMicrosoft Word - logic2005.doc
제 8 장 Counters 실험의목표 - Catalog counter 의동작원리에대하여익힌다. - 임의의 counter를통하여 FSM 구현방법을익힌다. - 7-segment display 의동작원리를이해한다. 실험도움자료 1. 7-segment display 7-segment는디지털회로에서숫자를표시하기위하여가장많이사용하는소자이다. 이름에서알수있듯이 7개의 LED(
More informationPowerPoint 프레젠테이션
BOOTLOADER Jo, Heeseung 부트로더컴파일 부트로더소스복사및압축해제 부트로더소스는웹페이지에서다운로드 /working 디렉터리로이동한후, wget으로다운로드 이후작업은모두 /working 디렉터리에서진행 root@ubuntu:# cp /media/sm5-linux-111031/source/platform/uboot-s4210.tar.bz2 /working
More information로거 자료실
redirection 매뉴얼 ( 개발자용 ) V1.5 Copyright 2002-2014 BizSpring Inc. All Rights Reserved. 본문서에대한저작권은 비즈스프링 에있습니다. - 1 - 목차 01 HTTP 표준 redirect 사용... 3 1.1 HTTP 표준 redirect 예시... 3 1.2 redirect 현상이여러번일어날경우예시...
More informationMicrosoft Word - FS_ZigBee_Manual_V1.3.docx
FirmSYS Zigbee etworks Kit User Manual FS-ZK500 Rev. 2008/05 Page 1 of 26 Version 1.3 목 차 1. 제품구성... 3 2. 개요... 4 3. 네트워크 설명... 5 4. 호스트/노드 설명... 6 네트워크 구성... 6 5. 모바일 태그 설명... 8 6. 프로토콜 설명... 9 프로토콜 목록...
More information1. What is AX1 AX1 Program은 WIZnet 사의 Hardwired TCP/IP Chip인 iinchip 들의성능평가및 Test를위해제작된 Windows 기반의 PC Program이다. AX1은 Internet을통해 iinchip Evaluation
1. What is AX1 AX1 Program은 WIZnet 사의 Hardwired TCP/IP Chip인 iinchip 들의성능평가및 Test를위해제작된 Windows 기반의 PC Program이다. AX1은 Internet을통해 iinchip Evaluation Board(EVB B/D) 들과 TCP/IP Protocol로연결되며, 연결된 TCP/IP
More information노트북 IT / 모바일 데스크탑 34 올인원PC 35 PC 소프트웨어 포터블SSD / SSD / 메모리카드 36 태블릿 37 휴대폰 39 PC 솔루션 IT / 모바일 IT / 모바일 노트북 29 삼성전자는 Windows 를 권장합니다. 삼성전자만의 편리하고 다양한 소프트웨어를 통해 초보자도 보다 쉽고 빠르게 이용 가능합니다. Easy Settings 삼성 패스트
More informationPowerPoint Template
SOFTWARE ENGINEERING Team Practice #3 (UTP) 201114188 김종연 201114191 정재욱 201114192 정재철 201114195 홍호탁 www.themegallery.com 1 / 19 Contents - Test items - Features to be tested - Features not to be tested
More informationPowerPoint 프레젠테이션
USB Communication - Packet Structure 2004. 1. 김현수 (mclapd) 세미나를시작하기전에 USB 의 Low Level Communication 에관련한사항만다루기때문에펌웨어또는드라이버, 애플리케이션에관련된것은언급하지않습니다. * 몇페이지의내용은 DevGuru 송지호님의글을인용하였습니다. USB Bus Topology 1.
More information2 Mitsubishi FX Series Computer Link MITSUBISHI FX SERIES COMPUTER LINK 시스템구성 시스템설정 사용예 사용예 사용예
Mitsubishi FX Series Computer Link 2 Mitsubishi FX Series Computer Link MITSUBISHI FX SERIES COMPUTER LINK... 1 1. 시스템구성... 3 2. 시스템설정... 4 3. 사용예... 6 3.1. 사용예 1... 6 3.2. 사용예 2... 9 4. 케이블연결도... 13 4.1.
More information경우 1) 80GB( 원본 ) => 2TB( 복사본 ), 원본 80GB 는 MBR 로디스크초기화하고 NTFS 로포맷한경우 복사본 HDD 도 MBR 로디스크초기화되고 80GB 만큼포맷되고나머지영역 (80GB~ 나머지부분 ) 은할당되지않음 으로나온다. A. Window P
Duplicator 는기본적으로원본하드디스크를빠르게복사본하드디스크에복사하는기능을하는것입니다.. 복사본 하드디스크가원본하드디스크와똑같게하는것을목적으로하는것이어서저용량에서고용량으로복사시몇 가지문제점이발생할수있습니다. 하드디스크는사용하려면, 디스크초기화를한후에포맷을해야사용가능합니다. Windows PC는 MBR과 GPT 2 개중에 1개로초기화합니다. -Windows
More information<4D F736F F F696E74202D E20B3D7C6AEBFF6C5A920C7C1B7CEB1D7B7A1B9D62E >
웹프로그래밍및실습 ( g & Practice) 문양세강원대학교 IT 대학컴퓨터과학전공 소켓 (Socket) (1/2) Socket 이란? 서버와클라이언트가서로특정한규약을사용하여데이터를전송하기위한방식 서버와클라이언트는소켓연결을기다렸다가소켓이연결되면서로데이터를전송 현재네트워크상에서의모든통신의근간은 Socket 이라할수있음 Page 2 1 소켓 (Socket) (2/2)
More informationNordic Chipset BLE Test Application Note
Nordic Chipset BLE Test Application Note 20151218 차례 차례........................................................................... ii 1. Nordic nrf52 Series 제품테스트방법...............................................
More information온라인등록용 메뉴얼
WIZPLAT Corporation User Manual Gigabit LAN Port + USB3.0 HUB 사용자 설명서 이번에는 Gigabit LAN Port + USB3.0 HUB 를 구입해 주셔서 대단히 감사합니다. 이 사용설명서에는 중요한 주의 사항과 제품의 취급방법이 설명되어 있습니다. 사용하기 전에 설명서를 잘 읽어 보신 후 본 제품을 바르고
More informationUltimate High Performance Audio tx-usb Operating Instructions Rev : 1.0
Ultimate High Performance Audio tx-usb Operating Instructions Rev : 1.0 www.sotm-audio.com 주의사항및 A/S 정보 사용자주의사항 반드시본사용설명서를모두읽은후제품을사용하십시오. 제품의분해, 개조등을하지마십시오. 제품에진동, 충격을가하지마십시오. 손상되거나피복이벗겨진 cable은사용하지마십시오.
More information<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A636C0CFC2F72E BC8A3C8AF20B8F0B5E55D>
뻔뻔한 AVR 프로그래밍 The 6 th Lecture 유명환 ( yoo@netplug.co.kr) 1 2 통신 관련이야기 시리얼통신 관련이야기 INDEX 3 ATmega128 시리얼통신회로도분석 4 ATmega128 시리얼통신컨트롤러 (USART) 분석 5 ATmega128 시리얼통신관련레지스터분석 6 ATmega128 시리얼통신실습 1 통신 관련이야기 동기
More informationSwitching
Switching 강의의목표 Switching/Switching Network의필요성을이해한다. 세가지대표적교환기술에열거하고그차이를설명할수있다. 각교환기술의장, 단점을비교하여설명할수있다. Packet Switching 에서 Fairness 문제와 Pipelining 을 패킷크기와연계하여설명할수있다. Soft Switch 개념을이해하고설명할수있다. 교재 Chapter
More information슬라이드 제목 없음
2006-11-02 경북대학교컴퓨터공학과 1 제 8 장인터넷프로토콜 : IP 데이터그램 단편화 검사합 옵션 IP 설계 IP 프로토콜 2006-11-02 경북대학교컴퓨터공학과 2 2006-11-02 경북대학교컴퓨터공학과 3 네트워크계층프로토콜 IP (Internet Protocol) TCP/UDP 세그먼트를받아서패킷별로경로선택 ICMP (Internet Control
More informationCisco FirePOWER 호환성 가이드
Cisco 호환성가이드 Cisco 호환성 이문서에서는 Cisco 소프트웨어와하드웨어의호환성및요건을다룹니다. 추가 릴리스또는제품정보는다음을참조하십시오. 설명서로드맵 : http://www.cisco.com/c/en/us/td/docs/security/firesight/ roadmap/firesight-roadmap.html Cisco ASA 호환성가이드 : http://www.cisco.com/c/en/us/td/docs/security/asa/compatibility/
More informationMicrosoft PowerPoint - 30.ppt [호환 모드]
이중포트메모리의실제적인고장을고려한 Programmable Memory BIST 2010. 06. 29. 연세대학교전기전자공학과박영규, 박재석, 한태우, 강성호 hipyk@soc.yonsei.ac.kr Contents Introduction Proposed Programmable Memory BIST(PMBIST) Algorithm Instruction PMBIST
More information설계란 무엇인가?
금오공과대학교 C++ 프로그래밍 jhhwang@kumoh.ac.kr 컴퓨터공학과 황준하 6 강. 함수와배열, 포인터, 참조목차 함수와포인터 주소값의매개변수전달 주소의반환 함수와배열 배열의매개변수전달 함수와참조 참조에의한매개변수전달 참조의반환 프로그래밍연습 1 /15 6 강. 함수와배열, 포인터, 참조함수와포인터 C++ 매개변수전달방법 값에의한전달 : 변수값,
More informationMicrosoft PowerPoint - tem_5
2014 년도 1 학기 (961805-501) 컴퓨터네트워크 2014.04.30 장문정 (cathmjang@gmail.com) 홍익대학교게임소프트웨어전공 네트워크계층 이장의목표 : 네트워크계층서비스에대한기본원리를이해 네트워크계층서비스모델 포워딩 (forwarding) vs. 라우팅 (routing) 네트워크계층프로토콜 : IP, DHCP, ICMP 등 라우팅알고리즘
More informationMicrosoft Word - PLC제어응용-2차시.doc
과정명 PLC 제어응용차시명 2 차시. 접점명령 학습목표 1. 연산개시명령 (LOAD, LOAD NOT) 에대하여설명할수있다. 2. 직렬접속명령 (AND, AND NOT) 에대하여설명할수있다. 3. 병렬접속명령 (OR, OR NOT) 에대하여설명할수있다. 4.PLC의접점명령을가지고간단한프로그램을작성할수있다. 학습내용 1. 연산개시명령 1) 연산개시명령 (LOAD,
More informationBS-K1217-M□□-3012_ProductGuide_KR_PDF
READER/WRITER MADE IN JAPAN System [ASLINK ] S-K1217-M-3012..,.,....,,. S-K1217-M08-3012 S-K1217-M12-3012 S-K1217-M18-3012 S-K1217-M30-3012 2() () / 1 2 1 DC..,,.,,,..,....... ' ARW-04 (Ver.04-1.01 ),
More information(MHT-SB112\273\347\276\347\274\255.hwp)
무한테크 Digital I/O Board MHT-SB112 경기도의왕시고천동 290-2 대영골든밸리 902 호 http:// Tel : 031-450 - 6737 Fax : 031-450 - 6738 Email : info@moohantechbiz 차례 1 사용되는용도및특징 2 구성요소 3 인터페이스구성 4 아날로그입력 5 통신프로토콜 6 딥스위치설정 7 PCB
More informationMicrosoft PowerPoint - chap06-2pointer.ppt
2010-1 학기프로그래밍입문 (1) chapter 06-2 참고자료 포인터 박종혁 Tel: 970-6702 Email: jhpark1@snut.ac.kr 한빛미디어 출처 : 뇌를자극하는 C프로그래밍, 한빛미디어 -1- 포인터의정의와사용 변수를선언하는것은메모리에기억공간을할당하는것이며할당된이후에는변수명으로그기억공간을사용한다. 할당된기억공간을사용하는방법에는변수명외에메모리의실제주소값을사용하는것이다.
More information그룹웨어와 XXXXX 제목 예제
데이터통신 부호화 (encoding) 부호화 (Encoding) 의개념 정보 Encoder 신호 1 Digital - to - Digital 2 Analog - to - Digital 3 Digital - to - Analog 4 Analog - to - Analog 2 1 Digital-to-Digital Encoding Digital 정보를 Digital
More informationBC6DX Korean.ai
제품설명서 BC6DX * 제품의성능개선을위하여예고없이사양이변경될수있습니다. * 무단복제금지 제품의특징 - 운영프로그램 - 이중입력전원회로 - 방전중개별셀전압평균화 - 최대한의안전장치들 - 사이클충전 / 방전 (Cyclic charging/discharging) - USB 를이용한 PC 통신 - 2 - 외부장치들 -, 버튼 - DEC, INC 버튼 - START/
More informationPowerPoint Presentation
Korea Tech Conference 2005 년 5 월 14 일, 서울 2005 년 5 월 14 일 CE Linux Forum Korea Tech Conference 1 Parallel port 를이용한가전제품 제어 임효준 LG 전자 imhyo@lge.com 2005 년 5 월 14 일 CE Linux Forum Korea Tech Conference 2
More information1아이리포 기술사회 모의고사 참조답안
아이리포지식창고 Data Link 계층프로토콜 STP 김우태컴퓨터시스템응용기술사 (matica5127@naver.com) STP(Spanning Tree Protocol) Concept + STP 을이해하기위한세가지개념 + STP 개요 - STP 정의 - Bridged LAN 에서의 Spanning Tree Algorithm - Bridge 구성에서의 Looping
More informationUSB Driver Interface(USBDI) 라고부른다. * 호스트컨트롤러드라이버 (xhcd) 호스트컨트롤러하드웨어와 USBD 사이에존재하는소프트 웨어영역을제공한다. * 호스트컨트롤러 (xhc) 보통 Low Speed, Full Speed, High Speed,
10 장 xhci(extensible Host Controller Interface) USB 호스트시스템 (Host System) 은많은수의하드웨어와소프트웨어영역으로구성된다. [ 그림 10-1] 은개념적인호스트시스템을구성하는각종영역이어떻게연결되는지를보여주는 블록다이어그램을보여준다. 그림 10-1 USB 3.0 시스템블록다이아그램 * 응용프로그램소프트웨어 (Application
More information歯설명서_020925_.PDF
GMPC-III (Protocol Converter-III) USER S MANUAL 1 1 1 4 2 5 2.1 5 2.2 5 2.3 6 3 7 3.1 7 4 8 4.1 8 4.2 8 5 GMPC-III 9 5.1 9 5.2 I-NET 9 5.3 ( ) 9 5.4 ( ) ( ) 10 6 12 6.1 12 7 GMPC-III 13 7.1 CPU 13 7.2
More information1 1. INTRODUCTION 2 2. DOWNLOAD Windows Desktop & Server Max OS X, Linux, Windows CE 2 3. API REFERENCE CAN_OpenVcp CAN_Op
USB2CAN USB2CAN-VCP USB2CAN-FIFO API Reference Manual ver. 1.00 Updated in November 2013 1 1. INTRODUCTION 2 2. DOWNLOAD 2 2-1. Windows Desktop & Server 2 2-2. Max OS X, Linux, Windows CE 2 3. API REFERENCE
More information시험인증기술동향 다만 USB 2.0 full-speed 기기에대한수요는 USB 2.0 high-speed 와 USB 3.0 기기들의등장으로인해상당부분감소될것으로예상된다. 3. USB 3.0 특징 VBUS D+ D- SSTX+ SSTX- SSRX+ SSRX- VBUS D
USB 3.0 (Super USB) 기술및시험인증동향 김동호 TTA 시험인증연구소방송통신융합실실장 1. 머리말 에출시되었으며, 매년 30 억개이상의제품들이 USB 인터페이스를장착해출시되고있다. USB 3.0 의경 USB(Universal Serial Bus) 는개인용컴퓨터주변장치연결을위한인터페이스로개발되었으나최근에는가전, 휴대폰, 셋톱박스, 자동차등산업전반에사용되는범용직렬인터페이스로그역할이확산되고있다.
More informationÀ̵¿·Îº¿ÀÇ ÀÎÅͳݱâ¹Ý ¿ø°ÝÁ¦¾î½Ã ½Ã°£Áö¿¬¿¡_.hwp
l Y ( X g, Y g ) r v L v v R L θ X ( X c, Yc) W (a) (b) DC 12V 9A Battery 전원부 DC-DC Converter +12V, -12V DC-DC Converter 5V DC-AC Inverter AC 220V DC-DC Converter 3.3V Motor Driver 80196kc,PWM Main
More informationBC6DX-II Korean.ai
제품설명서 * 제품의성능개선을위하여예고없이사양이변경될수있습니다. * 무단복제금지 제품의특징 - 운영프로그램 - 이중입력전원회로 ( 주의!, 두개의입력전원을동시에사용하지마십시요.) - 방전중개별셀전압평균화 - 최대한의안전장치들 - 사이클충전 / 방전 (Cyclic charging/discharging) - USB 를이용한 PC 통신 - 2 - 기기외부장치들 -,
More informationRS- 232, RS485 FND Display Module NET-SFND-4-23A RS-232, RS485 FND Display Module NET-SFND-4-23A MANUAL (Rev 1.0) Net-Control http
RS-232, RS485 FND Display Module NET-SFND-4-23A MANUAL (Rev 1.0) - 1 - 1. 정격사양. NET-SFND-4-23A Display Module 은 RS-232, RS-485 겸용입니다. 밝기조절기능을추가하여통신명령으로밝기를조절할수있습니다. 이기능을사용하여표시부를점멸시키거나점차밝아지거나어두워지는특수효과를낼수도있습니다.
More information<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F >
10주차 문자 LCD 의인터페이스회로및구동함수 Next-Generation Networks Lab. 5. 16x2 CLCD 모듈 (HY-1602H-803) 그림 11-18 19 핀설명표 11-11 번호 분류 핀이름 레벨 (V) 기능 1 V SS or GND 0 GND 전원 2 V Power DD or V CC +5 CLCD 구동전원 3 V 0 - CLCD 명암조절
More information슬라이드 1
마이크로컨트롤러 2 (MicroController2) 2 강 ATmega128 의 external interrupt 이귀형교수님 학습목표 interrupt 란무엇인가? 기본개념을알아본다. interrupt 중에서가장사용하기쉬운 external interrupt 의사용방법을학습한다. 1. Interrupt 는왜필요할까? 함수동작을추가하여실행시키려면? //***
More informationMango-E-Toi Board Developer Manual
Mango-E-Toi Board Developer Manual http://www.mangoboard.com/ http://cafe.naver.com/embeddedcrazyboys Crazy Embedded Laboratory www.mangoboard.com cafe.naver.com/embeddedcrazyboys CRZ Technology 1 Document
More information<4D F736F F F696E74202D FB5A5C0CCC5CDB8B5C5A9BFCD20BFC0B7F9C1A6BEEE20B1E2B9FD205BC8A3C8AF20B8F0B5E55D>
2011 년봄학기데이터통신 Chapter 05 데이터링크와오류제어기법 목차 마스터텍스트스타일을편집합니다둘째수준셋째수준데이터링크와회선제어 1 넷째수준다섯째수준흐름제어 (Flow Control) 기법 2 1 3 32 4 오류제어 (Error control) 기법 HDLC 프로토콜 Section 01 데이터링크와회선제어 데이터링크와데이터링크계층의기능마스터텍스트스타일을편집합니다
More information게시판 스팸 실시간 차단 시스템
오픈 API 2014. 11-1 - 목 차 1. 스팸지수측정요청프로토콜 3 1.1 스팸지수측정요청프로토콜개요 3 1.2 스팸지수측정요청방법 3 2. 게시판스팸차단도구오픈 API 활용 5 2.1 PHP 5 2.1.1 차단도구오픈 API 적용방법 5 2.1.2 차단도구오픈 API 스팸지수측정요청 5 2.1.3 차단도구오픈 API 스팸지수측정결과값 5 2.2 JSP
More informationchap 5: Trees
5. Threaded Binary Tree 기본개념 n 개의노드를갖는이진트리에는 2n 개의링크가존재 2n 개의링크중에 n + 1 개의링크값은 null Null 링크를다른노드에대한포인터로대체 Threads Thread 의이용 ptr left_child = NULL 일경우, ptr left_child 를 ptr 의 inorder predecessor 를가리키도록변경
More informationPowerPoint Presentation
객체지향프로그래밍 클래스, 객체, 메소드 ( 실습 ) 손시운 ssw5176@kangwon.ac.kr 예제 1. 필드만있는클래스 텔레비젼 2 예제 1. 필드만있는클래스 3 예제 2. 여러개의객체생성하기 4 5 예제 3. 메소드가추가된클래스 public class Television { int channel; // 채널번호 int volume; // 볼륨 boolean
More informationePapyrus PDF Document
S104PP (10.4 인치일체형페널 P) S104PP chassis, L Specifications 260 190 46 (W ) 1024 x 768 (4:3) 400 cd 4선압력방식 1.5Kg 245 x 184 (1T~5T 가능 ) Intel eleron J1900 Quard ore 2z Intel VL887 O, O 250 ~ 1T, 40 ~ SS 옵션가능
More informationMicrosoft Word - NAT_1_.doc
NAT(Network Address Translation) 1. NAT 개요 1 패킷의 IP 헤더의수신지주소, 발신지주소또는그주소를다른주소로변경하는과정 2 NAT기능을갖는장치를 NAT-BOX라함 ( 시스코라우터, 유닉스시스템, 윈도우의호스트혹은몇개의다른시스템일수있기때문에이렇게지칭하기도함 ) 3 NAT 기능을갖는장치는일반적으로스텁도메인 (Stub-domain)
More information원문 : USB in a NutShell, Beyond Logic. 번역자 : lifeisforu( ) 주의 : 허락받고번역한것이아니므로문제가되면삭제될수있습니다. 주의 : 번역
원문 : USB in a NutShell, Beyond Logic. 번역자 : lifeisforu( http://lifeisforu.tistory.com, lifeisforu@naver.com ) 주의 : 허락받고번역한것이아니므로문제가되면삭제될수있습니다. 주의 : 번역이개판이므로이상하면원문을참조하십시오. 주의 : 가독성을높이기위해서잘알려진용어나발음이비슷한용어는한글로표기합니다.
More informationC# Programming Guide - Types
C# Programming Guide - Types 최도경 lifeisforu@wemade.com 이문서는 MSDN 의 Types 를요약하고보충한것입니다. http://msdn.microsoft.com/enus/library/ms173104(v=vs.100).aspx Types, Variables, and Values C# 은 type 에민감한언어이다. 모든
More information<4D F736F F D C7C1B7CEC5E4C4C3C0BB20C0CCBFEBC7D B0E8BBEA20BAB8B0EDBCAD205FC3D6C1BE5F>
정상훈, 정광식, 윤성식 http://samplesoft.co.kr 2008-07-09 목차 1. 개요... 2 2. 본문... 3 2.1 CRC5 계산방법... 3 2.2 MATLAB을이용한 CRC5 소스... 6 2.2.1 MATLAB을이용한 CRC계산소스개요... 6 2.2.2 데이터입력... 7 2.2.3 FRAME #, CRC5 연산식시프트... 8
More informationPowerPoint Presentation
디지털 CMOS 인버터의동작및특성 IT CookBook, 최신 VLSI 설계, 조준동, 성균관대학교 학습목표 CMOS 인버터의동작과구조를익힌다. CMOS 인버터의출력전류, 출력전압의특성을알아본다. 노이즈마진을구한다. 목차 1.CMOS 인버터의동작및구조 2.CMOS 인버터의출력전류 / 전압특성 Section 01 CMOS 인버터의동작및구조 1.1 CMOS 인버터의동작.
More informationOSTSen-THL100 사용자설명서 Ver 1.1 Onsystech OSTSen-THL100 Ver1.1 1 of 8 Onsystech
OSTSen-THL100 사용자설명서 Ver 1.1 Onsystech OSTSen-THL100 Ver1.1 1 of 8 Onsystech 1. 제품소개 1) 제품특징 OSTSen-THL100은 UART 인터페이스를통하여온도, 습도, 조도데이터를제공하는센서모듈입니다. 이센서모듈은사용자가편리하게다양한분야에쉽게적용할수있도록소형으로제작되었습니다. PC에서 OSTSen-THL100의온도,
More informationMicrosoft Word - FunctionCall
Function all Mechanism /* Simple Program */ #define get_int() IN KEYOARD #define put_int(val) LD A val \ OUT MONITOR int add_two(int a, int b) { int tmp; tmp = a+b; return tmp; } local auto variable stack
More informationNetwork Security - Wired Sniffing 실습 ICNS Lab. Kyung Hee University
Network Security - Wired Sniffing 실습 ICNS Lab. Kyung Hee University Outline Network Network 구조 Source-to-Destination 간 packet 전달과정 Packet Capturing Packet Capture 의원리 Data Link Layer 의동작 Wired LAN Environment
More information놀이동산미아찾기시스템
TinyOS를이용한 놀이동산미아찾기시스템 윤정호 (mo0o1234@nate.com) 김영익 (youngicks7@daum.net) 김동익 (dongikkim@naver.com) 1 목차 1. 프로젝트개요 2. 전체시스템구성도 3. Tool & Language 4. 데이터흐름도 5. Graphic User Interface 6. 개선해야할사항 2 프로젝트개요
More information2 PX-8000과 RM-8000/LM-8000등의 관련 제품은 시스템의 간편한 설치와 쉬운 운영에 대한 고급 기술을 제공합니다. 또한 뛰어난 확장성으로 사용자가 요구하는 시스템을 손쉽게 구현할 수 있습니다. 메인컨트롤러인 PX-8000의 BGM입력소스를 8개의 로컬지
PX-8000 SYSTEM 8 x 8 Audio Matrix with Local Control 2 PX-8000과 RM-8000/LM-8000등의 관련 제품은 시스템의 간편한 설치와 쉬운 운영에 대한 고급 기술을 제공합니다. 또한 뛰어난 확장성으로 사용자가 요구하는 시스템을 손쉽게 구현할 수 있습니다. 메인컨트롤러인 PX-8000의 BGM입력소스를 8개의 로컬지역에
More informationMicrosoft PowerPoint - 4. 스캐닝-2.ppt [호환 모드]
정보보호 Scanning 목차 Ⅳ. 스캐닝 (Scanning) 1. 활성화된호스트식별 ping 침투테스트범위에있는 IP주소만목록화 현재동작중인시스템확인 ping Echo request 메시지를강제종료전까지계속전송 Echo request 메시지를 4 개전송후, 자동으로종료 Ping - ICMP(Internet Control messaging Protocol)
More information리눅스 프로세스 관리
프로세스 (Process) Process 프로그램이나명령어를실행하면메모리에적재되어실제로실행되고있는상태를의미 이러한프로세스들은프로세스가시작하면서할당받는프로세스식별번호인 PID(Process ID), 해당프로세스를실행한부모프로세스를나타내는 PPID(Parent Process ID), UID 와 GID 정보를통해해당프로세스가어느사용자에속해있는지, 프로세스가파일에대해갖는권한및프로세스가실행된터미널,
More information2주차: 입출력 제어 복습
마이크로프로세서 응용및실습 ` 13-14 주차 : 직렬통신 (2) 한철수 전자공학과 2/35 직렬통신과병렬통신 직렬통신 한가닥의선으로송수신할데이터를차례대로전송하는방식 장점 : 통신선로가적기때문에경제적임 단점 : 전송속도가느림. 송수신약속이복잡해짐 병렬통신 여러가닥의선으로동시에여러개의데이터를전송하는방식 장점 : 전송속도가빠름 단점 : 직렬통신보다비쌈 3/35
More informationePapyrus PDF Document
S104PP (10.4 인치일체형페널 P) S104PP chassis, L Specifications ooling System 260 190 46 (W ) 1024 x 768 (4:3) L 400 cd 4선압력방식 1.5Kg ase an(50 50) onector X 2 VS 고정방식, 매립브라켓고정방식 245 x 184 (1T~5T 가능 ) 12V/5 dapter
More informationPowerPoint Presentation
Class - Property Jo, Heeseung 목차 section 1 클래스의일반구조 section 2 클래스선언 section 3 객체의생성 section 4 멤버변수 4-1 객체변수 4-2 클래스변수 4-3 종단 (final) 변수 4-4 멤버변수접근방법 section 5 멤버변수접근한정자 5-1 public 5-2 private 5-3 한정자없음
More informationCPX-E-SYS_BES_C_ _ k1
CPX-E 8727 27-7 [875294] CPX-E-SYS-KO CODESYS, PI PROFIBUS PROFINET (). :, 2 Festo CPX-E-SYS-KO 27-7 ... 5.... 5.2... 5.3... 5.4... 5.5... 5 2... 6 2.... 6 2..... 6 2..2 CPX-E... 7 2..3 CPX-E... 9 2..4...
More informationAPI 매뉴얼
PCI-TC03 API Programming (Rev 1.0) Windows, Windows2000, Windows NT, Windows XP and Windows 7 are trademarks of Microsoft. We acknowledge that the trademarks or service names of all other organizations
More information½½¶óÀ̵å Á¦¸ñ ¾øÀ½
하나의그룹 FH/FDMA 시스템에서 겹쳐지는슬롯수에따른성능분석 구정우 jwku@eve.yonsei.ac.kr 2000. 4. 27 Coding & Information Theory Lab. Department of Electrical and Computer Engineering, Yonsei Univ. 차례 (Contents) 1. 도입 (Introduction)
More information입출력된다. 이러한무선 USB 시스템에서데이터의송신은 MMC(Micro-scheduled Management Command) 내에 USB 토큰 (Token) 을전달 (broadcast) 하며, 데이터와핸드쉐이크단계에서데이터송수신 (data communication) 의
명세서 발명의명칭 무선 USB 시스템의데이터송수신방법 {DATA COMMUNICATION METHOD OF WIRELESS USB SYSTEM} 발명의상세한설명 기술분야 본발명은무선 USB 시스템의데이터송수신방법에관한것으로서, 보다상세하게는슬라이딩윈도우방식 을사용하여데이터를버스트모드로송수신할때슬라이딩윈도우의상태를인식비트벡터나송신비트벡터를통해간편하게계산하여데이터를송수신하는무선
More informationOSTSen-MOS100 사용자설명서 Ver 1.1 Onsystech OSTSen-MOS100 Ver of 8 Onsystech
OSTSen-MOS100 사용자설명서 Ver 1.1 Onsystech OSTSen-MOS100 Ver 1.1 1 of 8 Onsystech 1. 제품소개 1) 제품특징 OSTSen-MOS100은 UART 인터페이스를통하여토양수분데이터를제공하는센서모듈입니다. 이센서모듈은사용자가편리하게다양한분야에적용할수있도록소형으로제작되었습니다. PC에서는 OSTSen-MOS100에서제공하는토양수분데이터를
More informationMD-C-035-1(N-71-18)
MD-C-035-1(N-71-18) KEPIC 적용사례 : MD-C-035-1(N-71-18) ( 승인일자 : 2010. 8. 31) 제목 : 용접으로제조되는 KEPIC-MNF 의 1, 2, 3 및 MC 등급기기지지물의추가재 료 (KEPIC-MN) 질의 : 품목이용접으로제작될경우, KEPIC-MDP의부록 IA, IB, IIA, IIB 및 VI에나열된것이외에추가로어떤재료가
More informationMicrosoft Word - ASG AT90CAN128 모듈.doc
ASG AT90128 Project 3 rd Team Author Cho Chang yeon Date 2006-07-31 Contents 1 Introduction... 3 2 Schematic Revision... 4 3 Library... 5 3.1 1: 1 Communication... 5 iprinceps - 2-2006/07/31
More information6. 설치가시작되는동안 USB 드라이버가자동으로로드됩니다. USB 드라이버가성공적으로로드되면 Setup is starting( 설치가시작되는중 )... 화면이표시됩니다. 7. 화면지침에따라 Windows 7 설치를완료합니다. 방법 2: 수정된 Windows 7 ISO
Windows 7 설치및 PCIE RAID 설정정보 DK173 초판 11월 2016 A. Windows 7 및 USB 드라이버설치 칩셋사양에따라 Windows 7 설치중에 USB 키보드 / 마우스를사용하려면시스템에서 USB 드라이버를사전로드해야합니다. 이절에서는 USB 드라이버사전로드방법과 Windows 7 설치방법에대해서설명합니다. 방법 1: SATA ODD
More informationSRC PLUS 제어기 MANUAL
,,,, DE FIN E I N T R E A L L O C E N D SU B E N D S U B M O TIO
More information인터럽트 (Interrupt) 범용입출력포트에서입출력의내용을처리하기위해매번입출력을요구하는플래그를검사하는일 (Pollong) 에대하여마이크로컨트롤러에게는상당한시간을소비하게만든다. 인터럽트란 CPU가현재처리하고있는일보다급하게처리해야할사건이발생했을때, 현재수행중인일을중단하고
CHAPTER 7 인터럽트 가. 레지스터구조이해하기 나. 엔코더제어하기 인터럽트 (Interrupt) 범용입출력포트에서입출력의내용을처리하기위해매번입출력을요구하는플래그를검사하는일 (Pollong) 에대하여마이크로컨트롤러에게는상당한시간을소비하게만든다. 인터럽트란 CPU가현재처리하고있는일보다급하게처리해야할사건이발생했을때, 현재수행중인일을중단하고급한일을처리한후에본래의일을다시수행하는것을말한다.
More information<4D F736F F F696E74202D C61645FB3EDB8AEC7D5BCBA20B9D720C5F8BBE7BFEBB9FD2E BC8A3C8AF20B8F0B5E55D>
VHDL 프로그래밍 D. 논리합성및 Xilinx ISE 툴사용법 학습목표 Xilinx ISE Tool 을이용하여 Xilinx 사에서지원하는해당 FPGA Board 에맞는논리합성과정을숙지 논리합성이가능한코드와그렇지않은코드를구분 Xilinx Block Memory Generator를이용한 RAM/ ROM 생성하는과정을숙지 2/31 Content Xilinx ISE
More informationPowerPoint 프레젠테이션
A 반 T2 - 김우빈 (201011321) 임국현 (201011358) 박대규 (201011329) Robot Vacuum Cleaner 1 Motor Sensor RVC Control Cleaner Robot Vaccum Cleaner 2 / Event Format/ Type Front Sensor RVC 앞의장애물의유무를감지한다. True / False,
More informationrptProductDatasheet
혜택 CoO( 소유비용 ) 절감, 50% 빠른예열소요시간, 전력소모가적은에너지효율성 간편한통합, 광범위한풀스케일, 플랜지및인터페이스, 2개의설정지점을갖춘표준 간단한하나의푸시버튼또는원격신호제로명령, 제로오프셋조정가능 빠른서비스및유지보수를위한진단포트 2년보증, 최신히팅개념및게이지보호기능을통한제품수명연장 까다로운플라스마분야에서도뛰어난신호안정성과반복성을기반으로장기적인재보정필요없음
More informationPathEye 공식 블로그 다운로드 받으세요!! 지속적으로 업그래이드 됩니다. 여러분의 의견을 주시면 개발에 반영하겠 습니다.
PathEye Mobile Ver. 0.71b 2009. 3. 17 By PathEye 공식 블로그 다운로드 받으세요!! http://blog.patheye.com 지속적으로 업그래이드 됩니다. 여러분의 의견을 주시면 개발에 반영하겠 습니다. PathEye 설치 1/3 최종 배포 버전을 다 운로드 받습니다. 다운로드된 파일은 CAB 파일입니다. CAB 파일에는
More information