SIE表示串行接口引擎。SIE将USB收发器传送的信号转换为数据包。普通SIE负责基本的信号管理功能,包括:CRC发生和校验、位填充、时钟再生、发送和检查握手。智能SIE会进一步深入到USB协议,以处理高层协议问题,因此编程人员无需介入其操作。
以下是一个例子。USB主机向外设发出IN请求,并收到了有效数据,但数据触发是错误的,主机应该怎样处理?根据622页的USB规范标准,普通SIE会将该结果(数据正确,但数据触发是错误的)送给微处理器,转交给固件来正确响应。
以下是MAX3421E的智能SIE的行为。MAX3421E发送ACK握手包,但不转换数据触发或产生中断请求RCVDAV(接收数据准备好),如果产生中断则向CPU表示接收的数据是有效的。如果认为以错误的数据触发应答(ACK)数据包不可思议的话,请查阅MAX3421E编程指南了解更多信息。MAX3421E处理这些USB协议,因此固件无需干预。举一个例子,MAX3421E作为主机,其智能SIE自动产生1ms的帧标记。与MAX3421E连接的CPU通过写HXFR寄存器来发送主机包。如果在一帧内较靠后的时间写HXFR寄存器,剩余的帧时间太短,就可能导致帧标记冲突,这种情况下SIE会自动推迟到下一帧再发送。