图3.18传输层结构框图
传输层结构框图见图3.18。本论文在实现时把它分成了一个传输层主控模块
和与每类FIS对应的封装、解封装处理模块。应用层接口负责提供应用层映像寄
存器的访问接口。FIS封装模块根据SATA协议规定的FIS帧结构格式,将应用层
命令封装成各类型的FIS,内部集成8个32bit位宽的FIFO,满足控制类型FIS数
据大小。FIS解封装模块通过内部集成的8个32bit位宽的FIFO存储链路层数据,
并将其去除封装,还原成控制命令。数据帧采用64个32bit位宽的数据FIFO作为
缓存。传输层主控状态机控制整个传输层工作,当接收到链接层的R SOF信号为
高时,表明有FIS需要解包,状态机就检测接收FIFO,并读取第一BYTE的数据
来分析FIS类型,如果有效就通知解包模块进行解包。当应用层向传输控制模块
发出FIS传送命令时,传输层主控模块首先向链接层控制模块发送X RDY控制基
元,等待主机方响应,如果接收到主机方的R RDYp控制基元,传输层主控模块
就使能相应的FIS封装模块,等待封装模块完成后进入空闲状态。
由于传输层主控状态机模型庞大,数据通路复杂,下面只重点分析设备方发
送接收Register FIS和DATA FIS的状态变迁过程,其他FIS处理请参考此流程,
本章不再详细叙述。
图3.19设备发送接收Register FIS.Device to Host
2022-06-20 10:33:14
4.22MB
sata
1