USB通信协议——数据交易
表 传输类型、数据交易与封包的关系表
*每一个封包是往下端接口传递出去的,若是低速,前面还会再放置PRE封包。
因此,若要了解完整的USB通信协议就必须从数据域谈起。通过由下而上,从简易至复杂的通信协议单位来组合出各种复杂的通信协议,进而构建出完整的通信协议。
从表的第2栏中,可以知道其中包含了3种数据交易类型。这3种数据交易是根据其目的与数据流方向来决定的。其中,SETUP数据交易用来送出控制传输要求给设备;IN数据交易是数据从设各传回主机;OUT数据交易是将数据传送出去给设各。每一个数据交易中,包含了辨识、错误检核、状态以及控制信息,同样也包含了要交换的数据等。此外,一个完整的数据交易可能占用多个帧。但是数据交易却是一个实现USB通信协议的最基本的结构组成。也即是,在总线上没有任何通信能够去切断该数据交易的沟通过程。当然,除非是错误的USB通信过程。
此外,一个小量数据的传输也许仅需一个数据交易。如果是大量的数据,传输可能就需使用多个数据交易,每一次传输一部分数据。读者或许会认为表的通信协议的结构非常复杂。其中,尤其是第1栏所列的控制传输是较为严谨与必须去实现的。
评论