SATA支持ATAPI的设计要点

由于sata应用于atapi device,传输效能不是最重要的考量,软、硬件的兼容性才是最重要的课题,因此在设计上也就更不容易掌握。本文将对sata支持atapi组件的ic设计,作一简单的介绍,希望读者能对sata应用于atapi组件所应考量的设计要点能有更清楚的了解。
sata支持atapi的设计要点
在sata相关硬盘与主机板上的sata控制器上,所谓的sata ic的设计模式,可分为原生型设计(native design)与桥接设计(bridge design)两种:
? 原生型设计:所谓原生型设计,指的是未透过桥接(bridge)接口的转换,直接将sata的讯号转换为其它接口的讯号。例如:pci to sata控制卡,所谓的原生设计,指的就是由pci讯号直接转换为sata讯号,并未经过任何接口的转接。
? 桥接设计:所谓的桥接设计,指的是透过桥接接口的转换,直接将市场上现有的接口转换为sata接口。例如:市场上本来就有pci to ata的接口,透过增加ata转sata的接口,马上就可以整合成pci to sata的控制接口。此设计模式也是厂商导入sata产品的最快方式。
目前市面上sata硬盘,大多数都采用桥接设计模式,也就是在原有的硬盘控制芯片上,再外接一个pata(parallel ata) to sata bridge chip。即可成为支持sata的硬盘。至于光储存装置(如dvd+rw、cd-rw等)导入sata的solution,也是以桥接器设计方式最为容易。但是atapi device(如dvd+rw、cd-rw等)在sata的设计上却有很多的限制,尤其是兼容性的问题。如果采用pata to sata bridge chip 加上光储存既有的控制芯片,即可提供sata dvd+rw、cd-rw 的解决方案,但是pata to sata bridge chip在支持atapi的设计考量,却完全反映到sata光储存装置的兼容性。以下即是sata应用于atapi device设计上所需注意的事项。
大体来说,sata应用于atapi device设计上的问题可以分为以下几类:
1. protocol issue(传输协议问题)
这类的问题,通常都是发生在既有的pata规格与最新的sata规格有部分的差异所造成的。几个常见的情况包含了下列例子:
? pio dr0 data block 超过 8k的问题
此一问题与原来atapi规格上并未有此规范有关(请参考表2)。而sata spec. 定义data fis不可超过8k的大小,但是光储存媒体依照atapi的规范,往往有许多cd-r、cd-rw、dvd+rw的pio dr0 data block超过8k的大小限制,此时pata to sata bridge就必须考量此种因sata与atapi传输协议不同的地方,妥善处理,系统才能正常运作。
? odd word 问题
就sata规格的定义,sata的传输是以dw(double word)为基础的传输,但是有一些atapi的op code是以odd word 传输为主(请参考表3),所以sata bridge 势必要了解transfer count的相关信息以解决这些问题。如果没有适当处理,系统将会把过剩的word data传输到host端的内存或光储存媒体,而造成系统错误。
就以往光储存媒体的习惯来说,有一些光驱的运作会送出intrq以准备接收command 封包。但是在sata的通讯协议中,sata host端并不会送出intrq,这样将会造成系统的当机,因为软件必须收到intrq才会开始执行送出command封包的动作。因此pata to sata bridge的设计上就必须补偿规格上缺憾的问题。
? transfer count问题
由于各式各样的cd-r或dvd空白片格式,将使得sata bridge很难去了解盘片完整的transfer count,而sata bridge将无法得知何时数据将会结束。这往往需要非常robust的方法去处理transfer count的问题,sata bridge也并须能补偿protocol缺憾的问题。
2. vendor specific command issue(制造商的特有指令问题)
这类问题通常为光驱厂商都有自己的vendor specific command,而此类command并未遵循atapi规格的规范,而此种模式在现有的光驱市场是非常普遍的现象。但是也造成了sata设计上的困难。
? update optical media flash rom问题
每一家系统厂商更新flash rom的程序顺序往往都是厂商特有的vendor specific command。而有些厂商的更新程序往往会与sata传输协议有所出入,这也就会造成了兼容性的问题。
例如:持续的写入sec count register对于pata及atapi规格是有意义的,但是对于sata而言却是会被忽略的。
3. violate atapi spec issue(违反atapi规格问题)
光驱接口反应未遵守规格的规定,这在pata时期即是如此。与硬盘相比,硬盘的operational behavior与command set基本上都相当遵守ata spec.的规范,但是光储存装置对于atapi spec.却往往有违反规格的情形发生。而pata to sata bridge就必须有能力补偿atapi装置违反atapi spec.的运作差异(operational variations)。
所谓的作业差异,一般来说,许多atapi装置都会在某些地方不符合atapi规格,进而产生所谓的「运作差异」,它们会以不同的形式出现,使得事前预测变得极为困难。atapi时序差异(timing variations)就是atapi装置常见的一种差异,这是因为随着atapi装置在pio或udma模式下工作,atapi总线handshaking signal的宽度也会有所不同,数据脉冲讯号(data strobe)就是例子。此时除非pata to sata桥接组件在他的sata/atapi实体接口中提供可调整时序,否则采用这种组件的电路板就无法弥补atapi装置的时序差异,系统厂商也将被迫选择不同的atapi装置或桥接组件;无论厂商采用哪种方式,产品上市的时间与未来的兼容性问题都会受到影响。
光驱接口反应未遵守规格的项目还包含以下各点:
? status反应
? interrupt反应
? signature反应是错误的
? 运作反应违反atapi规格

AMD匠心之作 挑战性能与体积的极限
什么是四声道环绕?
莫仕技术能力 | 柔性印刷电路机电设计
NFC技术为电商平台的“货真价实”保驾护航
编带机是电子元器件封装生产线上的一种重要设备
SATA支持ATAPI的设计要点
中国金属硅市场需求稳步上升,2020年金属硅价格持续走低
冷凝器坏了有什么现象
Safran助力东方中科完成C-V2X场景仿真测试方案
后起之秀 虽迟未晚!这款轻量云服务器乱拳打死老师傅
晶振输出频率异常怎么办?
网格化大气环境监测微型站实现远程警示
国内10万一台,苹果Vision Pro供应商曝光
小米6最新消息:小米6四曲面设计真机就长这样?2.5D+背部3D弧面玻璃,售价小幅上涨,这样的小米6你喜欢吗?
鸿蒙3.0将于2021年下半年正式登录手机“-到底是真还是假?
ADI推出16位、310 MSPS、双通道模数转换器
“新型半导体低维量子结构与器件”创新群体的最新研究成果
三种完整的硬件Fire Wall解决方案
LTM4622 4 相、1V/10A 输出超薄型 μModule 解决方案
一种有效回收LiTFSI的策略