[发明专利]一种基于FPGA的SATA接口数据流控制器及控制方法有效
申请号: | 201610700006.9 | 申请日: | 2016-08-22 |
公开(公告)号: | CN106354686B | 公开(公告)日: | 2019-03-26 |
发明(设计)人: | 王将;符永逸 | 申请(专利权)人: | 广州慧睿思通信息科技有限公司 |
主分类号: | G06F13/42 | 分类号: | G06F13/42;G06F5/14 |
代理公司: | 广州市华学知识产权代理有限公司 44245 | 代理人: | 黄磊;郑浦娟 |
地址: | 511442 广东省*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于FPGA的SATA接口数据流控制器及控制方法,包括基元检测和控制模块、速率匹配模块、ROM模块、CRC计算和校验模块、数据加扰和解扰模块、数据选通模块以及SATA物理层模块;通过基元检测和控制模块实现对基元的有效控制,在发送数据时通过基元检测和控制模块对数据流进行AlignP基元的插入,在接收数据时速率匹配模块根据FIFO状态通过针去掉AlignP基元或无用的扰码序列实现打孔操作,通过插入AlignP基元实现插入操作,简化了SATA协议链路层和物理层的数据流控制的实现,简单有效实现对SATA协议基元控制和数据流速率匹配,解决了由于时钟频偏时间积累造成FIFO溢出的问题。 | ||
搜索关键词: | 一种 基于 fpga sata 接口 数据流 控制器 控制 方法 | ||
【主权项】:
1.一种基于FPGA的SATA接口数据流控制器,其特征在于,包括基元检测和控制模块、速率匹配模块、ROM模块、CRC计算和校验模块、数据加扰和解扰模块、数据选通模块以及SATA物理层模块;所述基元检测和控制模块发送基元信号至SATA物理层模块,用于SATA协议基元的检测以及基元的交互应答处理,并且针对进入SATA物理层的数据流每隔256个时钟周期插入2个时钟周期的AlignP基元;所述基元检测和控制模块分别发送控制信号至CRC计算和校验模块、数据加扰和解扰模块以及数据选通模块,用于对数据加扰和解扰模块、CRC计算和校验模块以及数据选通模块进行使能控制;所述ROM模块存储一个一定长度的加扰多项式计算值,用于实现重复基元的加扰;对于进入SATA物理层模块需要加扰的重复基元,其扰码值是从ROM模块读出的加扰多项式计算值异或该基元后的结果;所述CRC计算和校验模块,在发送帧数据时用于计算CRC值并且将CRC值置于数据最后;在接收帧数据时,用于针对解扰后的帧数据进行CRC校验;所述数据加扰和解扰模块,在发送帧时用于对包括CRC值在内的帧进行加扰,加扰后的数据发送给SATA物理层模块;在接收帧时,用于对接收到的帧进行解扰;所述SATA物理层模块包括发送数据模块和接收数据模块,其中发送数据模块接收来自基元检测和控制模块、ROM模块以及数据加扰和解扰模块发送的信号,经过8B/10B编码、并串转换以及预加重控制后发送到从设备;接收数据模块接收从设备发送的数据,经过线性均衡器、恢复时钟、串并转换、逗点序列检测以及8B/10B解码后发送给速率匹配模块;速率匹配模块接收SATA物理层模块发送的数据,速率匹配模块发送数据至基元检测和控制模块以及数据选通模块,通过基元检测和控制模块判断速率匹配后的数据是帧数据还是无用的扰码序列;所述速率匹配模块采用FIFO结构,接收数据时,速率匹配模块根据FIFO状态进行速率匹配的打孔或插入操作,其中在打孔操作时,写入数据中去掉AlignP基元或无用的扰码序列,在插入操作时,在读出的FIFO数据中插入AlignP基元;数据选通模块接收基元检测和控制模块发送的控制信号,当基元检测和控制模块判断速率匹配模块发送的数据是帧数据时,控制数据选通模块将帧数据发送给数据加扰和解扰模块进行解扰;当基元检测和控制模块判断速率匹配模块发送的数据是无用的扰码序列时,控制数据选通模块将无用的扰码序列丢弃。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州慧睿思通信息科技有限公司,未经广州慧睿思通信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610700006.9/,转载请声明来源钻瓜专利网。