微型硬盘驱动技术和嵌入式应用整合方案
2008-02-23 05:28:09来源:互联网 阅读 ()
现在,硬盘驱动器采用的主流接口是高技术配置接口标准(ATA),即IDE接口,而且绝大多数硬盘驱动器都采用了并行ATA接口。部分硬盘驱动器同时也支持CF (Compact Flash)规范、安全数字输入/输出(SDIO)标准和串行ATA规范。由于并行ATA和CF是便携手持市场的最普遍的两个标准,因此本文侧重讨论这两个规范。CF 3.0规范能够在和标准IDE完全相同的真IDE模式下操作。和CF2.1相比,CF3.0增加了极端直接内存访问(Ultra DMA)模式。
通常,硬盘驱动器并无需支持任何的模式。现在,1.8英寸硬盘能够支持任何的模式,1英寸硬盘能支持到UDMA4模式。考虑到便携消费类市场对尺寸和功耗的需要,因此本文侧重于讨论1.8英寸或更小尺寸的硬盘驱动器。这些微硬盘的实际数据吞吐量远小于他们的理论值。硬盘的直径直接影响了数据传输率。例如,1英寸硬盘驱动器比2.5英寸硬盘驱动器要慢许多,这是因为硬盘外直径变小,意味着外围磁轨的最快线速度也将同样变小。
图1主ATA控制和CPLD解决方案:采用一个外部总线接口或GPIO端口和一个用于连接逻辑电路的CPLD,主CPU控制ATA时序和和硬盘相关的任务。
现在,大多数便携式低功耗嵌入式处理器都支持CF接口,但是缺乏专用的IDE控制器。虽然CF3.0支持真IDE模式和ATA规范的部分标准,但是这种方法必须依靠处理器本身来控制ATA时序和建立数据连接。而且从系统角度来看,这种模式在传输大量数据时效率不高。在嵌入式领域,当设计师采用硬盘驱动器技术时,能够选用CF接口、通用I/O端口或一个带有用于连接某些逻辑电路的CPLD的外部总线接口等方案来实现连接。这使得他们能够采用现有的主处理器架构和软件环境来更快地推出产品,取得市场先机。尽管这种方法简单且经济,但在采用这种方法前,设计师必须充分理解他对系统性能的影响。因此,在选择一个特定的系统方案之前,有必要为终端应用确定一个清楚的、可量化的性能目标。因为只有这样,才能够应用该目标来指导系统划分过程和决定是否有必要改善性能。
图2 局部总线接口和QuickLogic IDE控制:采用一个外部总线接口或GPIO端口和外部硬件中的专用QuickLogic IDE控制器来加速对硬盘驱动器(HDD)的读写。
外部总线接口和CPLD
长处
本方案只需要控制信号和主处理器的部分寻址信号和CPLD连接,来产生硬盘驱动器所需的接口信号。当系统中存在其他设备共享数据总线时,还需要额外的分离逻辑部件将总线和系统的其他部分分离开来。从硬件角度来讲,这个方案很简单、直接而且提供了应用所需的存储。然而,系统设计是需要考虑数据吞吐量的可能瓶颈和对主处理器的影响。若要设计一个性价比高和有竞争力的解决方案,需要满足以下两条件中至少一个:硬盘读写的数据中不包括极大数量的数据文档或丰富的多媒体内容;性能和数据吞吐量不是系统的关键性需要。
缺点
当处理器负责产生和控制ATA时序的时候,他将浪费额外的周期来处理时序和数据移动。系统中,性能瓶颈的多少取决于是否存在DMA控制器,连同主处理器在外部总线接口和主内存之间的数据传输效率。假如再加上微处理器在每次数据读写中对来自硬盘驱动器的IO-RDY信号反应的等待时间,将形成一个很严重的性能瓶颈。由于本方案直接和每个驱动器相关的任务挂钩,因此对CPU占用率产生了很大的影响。主CPU的绝大多数时间将被用来为硬盘服务,而不是执行和应用相关的任务。实际应用中,数据传输的最大速率请参见表1。
外部总线接口和QuickLogic IDE控制器
长处
本方案通过在硬件中增加一个外部IDE控制器,来加速硬盘驱动器数据传输和读写控制,从而降低了流程中主处理器的负载。在本方案中,只有主处理器的本地存储器总线连接到IDE桥接设备。外部IDE控制器拥有一片用于数据双向传输缓冲的容量为512字节的嵌入式内存。缓冲内存使得主处理器实现了直接在512字节扇区内执行读写操作而不必等待中断或外部连接IDE设备的准备。在等待中断信号或IDE控制器发送的512字节扇区数据准备完毕信号的同时,主处理器能够不间断地运行其他任务。
在数据扇区准备好后,再调用中断机制,这使得系统能够实现比轮流检测机制更好的性能。和中断机制不同,轮流检测在增加了软件投入的同时也降低了系统的性能。
假如在CPU中,存在供外部设备使用的DMA控制器,通过对主内存数据扇区的DMA操作,能够进一步提升系统性能。由于硬盘消耗大量的静态电流,因此微瓦FPGA能够关闭硬盘的电源来降低不读取数据时硬盘的功耗。同样的机理也被iPOD所采用。使用微瓦FPGA来控制硬盘功耗的主要长处是,能够在数据传输完成以后,切断电流关闭硬盘来节省功耗。理论上,他还能够被用来在上电的同时,启动硬盘驱动器和初始化寄存器。在该流程完成后,他将发送一个中断信号到CPU,以减少处理器在处理断电和上电任务的负载。由于无需CPU参和这个过程,从而在更高程度上实现了无缝连接。
使用QuickLogic超低功耗IDE控制器设备作为低功耗嵌入式处理器的配套芯片,大大提高了整体的系统吞吐量、降低了硬盘驱动器相关任务的CPU占用率、通过降低硬盘驱动器的工作时间来降低系统功耗。相对基于SRAM和Flash技术,QuickLogic低功耗Vialink互联技术大大降低了功耗。采用SRAM和Flash技术方案的设计将消耗几百mA的电流。对简单CPLD方案而言,只需要增加少量成本,采用低功耗IDE桥控制器就能够实现提升高能效系统性能,最终改善终端用户的使用效果。
图3 采用专用的QuickLogic IDE和SDRAM控制:通过对主存储器的直接存取,采用外部硬件中专用的QuickLogic IDE和SDRAM控制器来加速硬盘驱动器的读写速率。
缺点
本硬件方案既简单又直接,但设计师需要考虑和主微处理器架构和等待时间相关的数据吞吐量的潜在瓶颈。因此必须认真考虑平台的系统性能。例如,在便携式媒体处理器中,有可能存在图像处理器共享同一个总线。因此,假如希望得到更高的性能,能够考虑采用Quick Logic IDE和SDRAM控制器设计方案。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
下一篇: 嵌入式浏览器Konqueror/E的实现
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash