本文简要地介绍了机顶盒硬盘接口技术以及文件系统的实现要点,并通过两个例子(PVR和NVOD)说明了具有硬盘接口的机顶盒的用途。 文/陶雄飞华中科技大学 文/张健葛新中国电子设备系统工程总公司 外部接口更加丰富将是数字机顶盒硬件发展的趋势之一,比如通过USB接口可以实现和数码相机以及其它USB设备相连,通过ATA接口可以挂接硬盘实现节目存储等功能。 本文主要研究如何在机顶盒上实现硬盘的接口,同时通过实例说明了带硬盘接口的机顶盒的应用。 1硬盘接口及驱动 某些机顶盒解码芯片内嵌ATAPI接口,如STi5517,而大多数机顶盒解码芯片都具有外部接口总线,如SC2005的EBUS总线,通过配置时序可以模拟ATA接口总线的时序。通过简单的外围接口电路, 图1ATA接口电路示意图 将硬盘接到ATAPI或模拟的ATA接口,就可以实现CPU对硬盘的控制。图1是解码芯片和ATA硬盘的接口电路示意图。 ATA硬盘有PIO模式和DMA模式两种传输方式,PIO是ProgrammedInputOutput(可编程输入输出)的缩写,目前的PIO有1、2、3、4四种模式。DMA模式分为SingleWord和MultiWord两种模式,它们和PIO模式所对应的速率如表1所示。 传输模式传输速率 SinglewordDMA02.1Mbit/s PIOmode03.3Mbit/s SinglewordDMA1,multiwordDMA04.2Mbit/s PIOmode15.2Mbit/s PIOmode2,singlewordDMA28.3Mbit/s PIOmode311.1Mbit/s MultiwordDMA113.3Mbit/s PIOmode4,multiwordDMA216.6Mbit/s Ultra-ATAMultiwordDMA333.3Mbit/s 表1ATA的传输模式和速率 在图1中的接口方式下,解码器与硬盘之间的数据传输只能采用PIO方式。如果解码器具有支持DMA传输的的ATA接口,那么就可以通过DMA方式从硬盘读取数据以及向硬盘写入数据。 硬盘的底层驱动主要包括实现硬盘探测、诊断和初始化,以及硬盘的读、写等,通过以下的几个函数来实现这些操作。
文/姚春光国防科技大学