您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 销售管理 > 硬件设计参考USB接口设计
Intel1994USBUniversalSerialBusUSBUSBPlug&PlayUSBUSBUSBMOTOROLA830%MOTOROLA8CSICMPURAMEPROMSPISCIUSBMOTOROLA1996USB8USB68HC05BD9A68HC05JB268HC08KL868HC08KH12USBUSB68HC05JB4USBUSBUSBUSBUSBUSBUSBUSBMOTOROLAUSBUSB68HC05JB4USBPC1USBUSBUniversalSerialBusIntelCompaqMicrosoftIBMDECNorthernTelecomNEC19941119962USB1.0USB127USB12Mbps19992USB2.012Mbps120-240MbpsUSBPlug&PlayUSBPCI/OPCUSBUSBUSB(hub)PCHubHubHubHubUSB5Hub1272.1USBHost(RootTier)Tier1Tier2Tier3Tier4Hub1Hub2NodeHostRootHubNodeHub3Hub4NodeNodeNodeNodeNode2.1USB22.2USBUSBUSB2.2......5metersmaxVBusGNDD+D-VBusGNDD+D- 2.2USBD+D-VBusGND5V(Hub)USB12Mb(fullspeed)1.5MbUSBUSB5m3mABAB2.3USBUSBHub(endpoint)(pipe)3USBUSB(0)012USBUSBUSB0USBUSB0USB2.3USBUSBLogicalDeviceFunctionPhysicalDeviceUSBBusInterfaceActualcommunicationsflowLogicalcommunicationsflow2.3USB42.3.1HubHubUSBUSBHub2.4HubHUBUpstreamPortPort#1Port#7Port#6Port#5Port#4Port#2Port#32.4USBHub2.3.2USBUSBUSB1.Hub2.Hub3.4.HubHub100mA005.06.,Hub52.3.3USBUSBUSB2.3.4USBHub()USB2.4USBUSBUSBUSBUSBUSBUSB2.5USBUSB()USBUSBD(HCD)ClientSWUSBHostControllerHostUSBSystemSWActualcommunicationsflowLogicalcommunicationsflow2.5USB62.5USB2.6USBSIESIEHostControllerUSBBusInterfaceUSBBusInterfaceUSBSystemSWmanagesdevicesUSBLogicalDeviceacollectionofendpointsInterconnectPhysicalDeviceHostUSBWireBuffersTransfersTransactionsDataPerEndpointInterfaceSpecificFunctionacollectionofinterfacesDefaultPipetoEndpointZeroPipeBundletoaninterfacePipe,representsconnectionabstractionbetweentwohorizontalentitiesDatatransportmechanism(USB-relevantformatoftransporteddataNoUSBFormatUSBFramedDataUSBFramedDataUSBFramedDataNoUSBFormatInterfacexEndpointZeroClientSWmanagesaninterfaceMechanical,Electrical,ProtocolUSBDeviceUSBHost2.6USBUSBUSB(0)USBD(USBdriverinterface)(IRPI/ORequestPacket)USBHCD(hostcontrollerdriverinterface)IRPUSB(transfer)IRPUSB;HCDUSB(transaction)(packet)7IRPUSBUSBUSBframeUSB1msSOF1msUSBUSB:(ControlTransfer1//2setupstatusUSB34816326485USB6(IsochronousTransfer)12USB340102356790%(InterruptTransfer)12USB3464885690%7(BulkTransfer)12USB34816326456,2.7IRPtransfertransaction2.6.3DataFlowTypesControlTransferInterruptTransferIsochronousTransferBulkTransferAcontroltransferisanOUTSetuptransactionfollowedbymultipleINorOUTDatatransactionsfollowedbyone“oppositeofdatadirection”StatusTransaction.OneormoreINDataTransactions.OneormoreIN/OUTDataTransactions.OneormoreIN/OUTDataTransactions.IRPTransactionTransactionTransactionAlltransfersarecomposedofoneormoretransactions.AndanIRPcorrespondstooneormoretransfers.IRPSetupTransactionDataTransactionIRPINTransactionINTransactionIRPTransactionTransactionTransactionIRPTransactionTransactionTransactionStatusTransactionAdditionalControlTransfers2.7USB92.6USB()(TokenPacket)(HandshakePacket)2.6.1(SYNCfield)SYNC8SYNCPID()SYNC(PacketIdentifierField)PIDSYNCPIDPIDPID(AddressField)(ADDR)PIDADDR612700(ENDP)40(endpoint0)2016(FrameNumberField)11(1ms)1XFF0SOFSOF(DataField):01023CRC102.6.2(TokenPacked)IN()OUT()SETUP()SOF(StartofFrame)INOUTSETUP2.8ADDRPID8bits7bitsENDP4bitsCRC55bits2.8INOUTSETUPOUTSETUPADDRENDPINTokenSOFEOP(EndofPacket)Token3EOPSOF2.9(1ms0.05)SOFSOFFrameNumberPID8bits11bitsCRC55bits2.9SOFData0Data1PIDDATACRC2.10PIDCRC1616bitsDATA0-1023bytes8bits2.10DATA11(HandshakePacket)PID2.11HandshakeHandshakePID8bits2.11PIDHandshake(1)ACK(2)NAK(3)STALLNAKSTALLSpecial:PIDPREpreamble,6.52.6.3bulktransaction:2.12NAKSTALLNAKSTALL12TokenDataFunctionHostINOUTIdleDATA0/DATA1ACKDATA0/DATA1IdleACKNAKSTALLIdleSTALLNAK2.122.13(sequencebit)PID2.6.3OUT(0)OUT(0/1)IN(0)IN(1)IN(0/1)DATA1......DATA0DATA0DATA1DATA0/1DATA0/1OUT(1)BulkWriteBulkRead2.13(controltransaction):controltransfertransactionstage:2.1413FunctionHostIdleDATA0ACKSETUPIdleTokenDataHandshake2.142.15PIDSETUP(0)OUT(1)OUT(0/1)IN(0)IN(0/1)SetupStageDataStageControlWriteStatusStageDATA0DATA0......DATA1DATA1DATA1IN(1)OUT(1)DATA0DATA0/1DATA0/1OUT(0)IN(1)ControlReadDATA0DATA1SETUP(0)IN(1)No-dataControlDATA0DATA1SETUP(0)SetupStageStatusStage2.15(interrupttransaction):2.1614DeviceHostTokenHandshakeIdleDataINIdleACKDATA0/DATA1NAKIdleSTALL2.16(isochronoustransaction):2.17TokenIdleIdleINOUTDATA0/DATA1DataDATA0/DATA1FunctionHost2.17152.6.4USBData0Data1PIDdatatogglesequencebit(PID)ACK2.182.192.20Tx(0)Rx(0-1)Tx(0-1)Rx(1)DATA0ACKTx(1)Rx(1-0)Tx(1-0)Rx(0)DATA1ACKTransferiTransferi+1AcceptdataAcceptdata2.18Tx(0)Rx(0-0)Tx(0-0)Rx(0)DATA0NAKTx(0)Rx(0-1)Tx(0-1)Rx(1)DATA0ACKTransferiRetryTransferiAcceptdataRejectdata2.19Tx(0)Rx(0-1)Tx(0-0)Rx(1)DATA0FailedACKTx(0)Rx(1)Tx(0-1)Rx(1)DATA0ACKTransferiTransferi(retried)Tx(1)Rx(1-0)Tx(1-0)Rx(0)DATA1ACKTransferi+1IgnoredataAcceptdata2.2016(PIDData0Data1)NAKACKACKNAKACK2.6.5Hub2.21 SYNCPIDSYNCPIDTokensentatlowspeed...ENDPEOPHubdisableslowspeedportoutputsSYNCPIDSYNCPIDPreamblesentatfullspeedHandshakes
本文标题:硬件设计参考USB接口设计
链接地址:https://www.777doc.com/doc-3446298 .html