0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

详解串行总线中的SATA协议

OpenFPGA 来源:OpenFPGA 作者:碎碎思 2021-11-01 10:53 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

书接上回-《串行总线技术(一)-串行总线结构(以PCIe为例)》《串行总线技术(二)-串行总线中的先进设计理念及SerDes/PMA介绍》,今天详解SATA协议。

简介SATA(Serial Advanced Technology Attachment,高级技术附加装置)是在2002年作为并行ATA(Parallel ATA,PATA)的替代技术而引人的。由于SATA是一种串行协议,与并行ATA相比,它所需要的引脚数少、连接器尺寸也小。第一代SATA(也被称为SATA1.0)以1.5Gbps速度运行。SATA2.0的运行速度翻倍至3.0Gbps,在SATA3.0中,运行速度进一步翻倍至6.0GbpS。

SATA架构SATA组成部分包括两种类型:SATA宿主(SATA host)和SATA设备(SATA device)。

SATA宿主通常位于个人计算机中。SATA宿主可以有一个或者多个端口。SATA宿主的每一个端口连接一个SATA设备。即使SATA宿主具有多个端口,各个端口的运行也是彼此独立的,同时每一个SATA设备的运行都独立于其他SATA设备。

SATA宿主集成在芯片组内部,在芯片组内部,SATA宿主的前端连接至芯片组内部的PCle总线或AHB/AXI总线上。SATA宿主采用寄存器接口层进行数据通信,该寄存器接口层被称为高级宿主控制器接口(Advanced Host Controller Interface,AHCI)。AHCI为DMA数据传送提供了基于寄存器的接口。在软件中有操作指令,软件存储在存储器中。然后,软件对宿主寄存器空间进行置位表示指令已就绪。SATA宿主从存储器中取出指令并将它们传送给SATA设备。

SATA设备接收到来自宿主的指令并加以执行。在SATA设备的后端,通常是硬盘控制器。SATA协议层将SATA指令传递给硬盘控制器,由它来执行指令(从硬盘中读出数据或者将数据写入硬盘)。SATA支持本地命令排序(Native Command Queuing,NCQ),即硬盘控制器通过SATA协议接收多条指令、并按照最佳顺序加以执行。

SATA协议分为三层(复杂协议都具有分层管理机制):传输层、链路层和物理层。物理层最接近物理链路,具有8b/10b编解矶、扰码/解扰等功能。另外,它还关注链路训练和初始化。数据链路层是中间层次,关注链路对链路的通信。数据链路报文长度同定(4字节),称为原语(primitive)。SATA采用全双工通信协议,但与PCle类似,发送和接收线路不同时进行数据传送。当一方将数据发送到TX通道上时,另一方发送原语。原语用于传递控制信息,如R-OK(接收数据无差错)、R_ERR(接收数据有差错)、HOLD(发给发送方的流控信,让其暂停发送数据)。

最上面一层被称为传输层,它与应用层相连。它接收来自应用层的指令和数据,并以帧信息结构(Frame Information Structure,FIS)的形式传递给另一方。FIS中包括头部、净载荷数据和循环冗余检验码,其净载荷长度可变。

SATA的其他变种eSATA

eSATA代表外部SATA(External SATA)。它采用更好的连接器和更长的屏蔽线缆,最长可达2米。它针对的是外部硬盘。

mSATA

mSATA代表小型化SATA(mini-SATA)。它针对的是移动应用和小型固态电子存储设备。它有类似于mini-PCIe卡的外形尺寸,面向笔记本和上网本设备。

快速SATA

SATA Express代表快速SATA。它是将SATA协议和PCIe接口结合在一起的新协议。SATA Express连接器可以接插一个x2的PCIe设备或者两个SATA设备。

带宽最高可达16Gbps带宽(现在最快的SATA 3.2标准带宽为16Gbps),SATA Express标准将会如其名称所描述的,把SATA软件架构和PCI-Express高速界面结合在一起。SATA国际组织称SATA Express标准将会带来新一代更快的存储装置和对应的主板接口,并且还能兼容现有的SATA设备。SATA国际组织主席Mladen Luksic称该标准将使固态与混合硬盘受益于新一代PCI-Express 3.0的高带宽从而打破性能瓶颈,标准的具体细节将在年内制定完成。SATA国际组织同时表示除SATA Express外,还有针对集成在主板上的嵌入式单芯片SSD存储解决方案的SATA µSSD标准,面向移动设备如平板电脑等。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • SATA
    +关注

    关注

    0

    文章

    271

    浏览量

    86092
  • 串行接口
    +关注

    关注

    3

    文章

    504

    浏览量

    44991

原文标题:串行协议之SATA

文章出处:【微信号:Open_FPGA,微信公众号:OpenFPGA】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Xilinx FPGA串行通信协议介绍

    Xilinx FPGA因其高性能和低延迟,常用于串行通信接口设计。本文深入分析了Aurora、PCI Express和Serial RapidIO这三种在Xilinx系统设计关键的串行通信
    的头像 发表于 11-14 15:02 1808次阅读
    Xilinx FPGA<b class='flag-5'>串行</b>通信<b class='flag-5'>协议</b>介绍

    普源DS1102E示波器在SATA信号分析的应用

    )信号分析的具体应用及其优势。   SATA信号作为现代计算机存储设备中常用的数据传输协议,具有高速、串行传输的特点。分析SATA信号需要
    的头像 发表于 09-09 11:41 495次阅读

    详解 EtherCAT 网关模块总线协议:架构与数据传输机制

    EtherCAT总线协议转换网关介绍 捷米特EtherCAT总线协议网关介绍   EtherCAT协议概述 EtherCAT
    的头像 发表于 07-16 14:46 1540次阅读
    <b class='flag-5'>详解</b> EtherCAT 网关模块<b class='flag-5'>总线</b><b class='flag-5'>协议</b>:架构与数据传输机制

    LIN协议:汽车电子的隐形功臣

    率的串行通信总线,属于局部互联网。LIN由汽车行业开发,用作经济高效的子总线系统,其属于CAN的下层网络,是SAE规范的汽车A类网络,适用于对总线性能要求不高的车
    的头像 发表于 07-01 11:40 1678次阅读
    LIN<b class='flag-5'>协议</b>:汽车电子<b class='flag-5'>中</b>的隐形功臣

    NVMe协议研究扫盲

    。SSD最初遵循为HDD设计的现有主机接口协议,例如串行高级技术附件(Serial Advanced Technology Attachment, SATA)和串行附加SCSI(SAS
    发表于 06-02 23:28

    探秘EtherCAT总线协议转换网关

    EtherCAT总线协议转换网关介绍 捷米特EtherCAT总线协议网关介绍 EtherCAT协议概述   EtherCAT
    的头像 发表于 04-09 10:05 2975次阅读
    探秘EtherCAT<b class='flag-5'>总线</b><b class='flag-5'>协议</b>转换网关

    iic协议与其他总线协议比较

    在现代电子系统总线协议扮演着至关重要的角色,它们允许不同的电子组件之间进行通信和数据交换。I2C协议是其中一种流行的总线
    的头像 发表于 02-05 13:36 1213次阅读

    I2C总线数据包结构详解

    I2C(Inter-Integrated Circuit)总线是一种用于连接微控制器和各种外围设备的通信协议。它使用两条线:串行数据线(SDA)和串行时钟线(SCL),实现了设备之间的
    的头像 发表于 01-17 15:46 1385次阅读

    总线通信协议解析及应用

    在现代计算机系统总线通信协议扮演着至关重要的角色。它们定义了数据如何在处理器、内存、输入/输出设备等组件之间传输。 总线通信协议的基本概
    的头像 发表于 12-31 10:07 1899次阅读

    如何选择合适的总线协议

    在现代电子系统总线协议扮演着至关重要的角色,它负责协调各个组件之间的数据传输。选择合适的总线协议可以确保系统的高性能、可靠性和可扩展性。
    的头像 发表于 12-31 09:41 961次阅读

    基于Xilinx的A7系列FPGA的CAN总线协议开发

    一、CAN总线协议介绍 CAN是 Controller Area Network 的缩写(以下称为 CAN ),是 ISO 国际标准化的串行通信协议。可以用来满足“多
    的头像 发表于 12-21 14:49 3069次阅读
    基于Xilinx的A7系列FPGA的CAN<b class='flag-5'>总线</b><b class='flag-5'>协议</b>开发

    SATA硬盘的性能优化技巧

    在当今的计算机系统,硬盘是存储数据的核心部件之一。SATA串行高级技术附件)硬盘因其较高的性能和较低的成本而广泛使用。然而,即使是最先进的SATA硬盘,也可能因为多种原因而性能下降
    的头像 发表于 12-19 14:41 2526次阅读

    SATA硬盘与NVMe硬盘的比较

    。 1. 接口和传输协议 SATA硬盘: SATA(Serial ATA)是一种串行接口,用于连接主板和硬盘。 SATA硬盘使用的是AHCI
    的头像 发表于 12-19 14:40 6841次阅读

    SATA硬盘的故障排除方法

    SATA硬盘,即串行高级技术附件(Serial ATA)硬盘,是现代计算机中常用的存储设备。当SATA硬盘出现故障时,可能会影响数据的存取和计算机的正常运行。以下是一些常见的SATA
    的头像 发表于 12-19 14:36 4846次阅读