[发明专利]SATA协议加速模块、主机与硬盘通信方法及固态硬盘控制器有效
申请号: | 201511023341.1 | 申请日: | 2015-12-31 |
公开(公告)号: | CN105607874B | 公开(公告)日: | 2017-03-22 |
发明(设计)人: | 赵志强;马翼;田达海;彭鹏;杨万云;姜黎;向平;周士兵 | 申请(专利权)人: | 湖南国科微电子股份有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 长沙正奇专利事务所有限责任公司43113 | 代理人: | 卢宏 |
地址: | 410131 湖南省*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | sata 协议 加速 模块 主机 硬盘 通信 方法 固态 控制器 | ||
1.一种应用于固态硬盘控制器的SATA协议加速模块,其特征在于,包括接收控制模块(71)、发送控制模块(72)、信息提取模块(74)、DMA接口控制模块(78)、CPU接口控制模块(77)、寄存器控制模块(76)、指令执行模块(75)和指令RAM模块(73),其中接收控制模块(71)与SATA接口控制模块(1)相连,接收控制模块(71)通过DMA接口控制模块(78)与Dram控制模块(3)相连,接收控制模块(71)依次通过信息提取模块(74)、CPU接口控制模块(77)与CPU(2)相连,CPU接口控制模块(77)通过寄存器控制模块(76)与指令执行模块(75)相连,CPU接口控制模块(77)与指令RAM模块(73)相连,指令执行模块(75)还分别与信息提取模块(74)、接收控制模块(71)、指令RAM模块(73)和发送控制模块(72)相连,DMA接口控制模块(78)还与发送控制模块(72)相连,发送控制模块(72)还与SATA接口控制模块(1)相连;其中,
接收控制模块(71)用于通过SATA接口控制模块(1)接收来自主机的数据帧和非数据帧,同时根据指令执行模块(75)的控制传递接收到的数据帧和非数据帧,其中数据帧通过DMA接口控制模块(78)传递至Dram控制模块(3),由Dram控制模块(3)中的DMA搬移到Dram颗粒(6);非数据帧传递至信息提取模块(74);
发送控制模块(72)用于接收指令执行模块(75)和DMA接口控制模块(78)的请求传输SATA帧,并将接收到的内容通过SATA接口控制模块(1)传至主机;其中非数据帧的内容由指令执行模块(75)提供,数据帧的内容由DMA接口控制模块(78)提供;
信息提取模块(74)一方面用于将接收到的非数据帧中的主机发送到设备的帧通过CPU接口控制模块(77)发送至CPU(2),另一方面用于从接收到的非数据帧中的主机发送到设备的帧中提取出ATA命令信息以及控制和状态信息;
DMA接口控制模块(78)用于数据帧的传输,根据接收控制模块(71)和发送控制模块(72)的请求,通过Dram控制模块(3)将数据从Dram颗粒(6)读取或写入;
CPU接口控制模块(77)用于适配CPU(2)总线接口时序;
寄存器控制模块(76)用于控制指令执行模块(75)的运行,寄存器控制模块(76)内部包括寄存器和命令描述符;寄存器的内容由CPU(2)控制,寄存器的值用于控制指令执行模块(75)的跳转判断、操作执行行为;命令描述符是描述一条ATA命令详细信息的数据结构,所述ATA命令详细信息包括命令类型,命令TAG,搬移数据的长度、地址以及控制信息,命令描述符由CPU(2)根据收到的主机发送到设备的帧产生,并写入寄存器控制模块(76)内部的命令描述符RAM;
指令RAM模块(73)中用于存储指令序列,所述指令序列根据SATA命令层协议生成并由CPU(2)写入;
指令执行模块(75)用于根据SATA命令层的协议处理收到的ATA命令,指令执行模块(75)通过解析指令序列并执行操作来控制SATA帧的收发,完成SATA命令层交互;指令执行模块(75)包括三个基本操作:接收帧并跳转、发送帧并跳转、根据跳转条件跳转,发送帧的内容和跳转条件由信息提取模块(74)、寄存器和命令描述符提供。
2.如权利要求1所述的应用于固态硬盘控制器的SATA协议加速模块,其特征在于,所述指令序列中指令的数据结构为“操作码+控制码+跳转码”,其中,
操作码用于控制本指令序列所在状态的行为操作,所述行为操作包括三种,第一种为从主机接收预期的帧,并跳转到另一个状态;第二种为发送一个帧到主机,并跳转到另一个状态;第三种为不接收也不发送帧,并跳转到另一个状态;
控制码包含需要发送到主机的帧的相关信息或者预期从主机接收到的帧的相关信息,所述相关信息来源于信息提取模块(74)和寄存器控制模块(76);
跳转码包含跳转到下一个状态的条件和下一个状态的地址信息,跳转条件包括是否成功发送帧到主机、接收到的帧是否符合预期、数据帧是否成功发送或者接收完成、是否检测到有SATA异常,不同的条件跳转到不同的状态。
3.如权利要求1或2所述的应用于固态硬盘控制器的SATA协议加速模块,其特征在于,指令RAM模块(73)中的指令序列是在上电时由CPU(2)写入指令RAM模块(73)。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于湖南国科微电子股份有限公司,未经湖南国科微电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201511023341.1/1.html,转载请声明来源钻瓜专利网。