摘要:介绍一种专用高速硬盘存储设备,可以脱离微机平台实现将高速数据送入SCSI硬盘。给出了该设备的系统结构和硬件设计方法。
关键词:SCSI SCSI协议控制器 高速数据存储
在高速数据采集存储系统中,数据存储是一项关键技术。通常的做法是把数据存入大容量存储器中,采集结束后再进行数据处理和保存。这种方法。持续采集时间受存储器容量的限制,在许多场合可能无法满足要求;而存储器容量的增加,其价格也会成倍增长。因此,从存储容量、读写速度和单位成本等方面综合考虑,采用高速硬盘直接数据存储是很有优势的。
对于硬盘而言,在持续高速数据存储中,关键是它的持续数据传输速率(sustained transfer rate)能否满足要求。目前,15000r/min的小型计算机系统接口SCSI(Small Computer System Interface)硬盘,总线数据传输速率为80~320MB/s,持续数据传输速率大于40MB/s。而PC机普遍配置的IDE硬盘,虽然它的总线数据传输速率可以达到33~100MB/s,但持续数据传输速率只有15MB/s左右,性能低于SCSI硬盘。
本文设计了一种专用高速硬盘存储设备,它脱离微机平台实时将高速数据送入SCSI硬盘,持续存储速率可达35MB/s(使用Seagate公司生产的ST336752LW型硬盘)。
1 SCSI总线及硬盘
SCSI是美国ANSI9.2委员会定义的计算机和外设之间的接口标准,最初是以磁盘存储设备为主,但由于它的灵活性、设备独立等特点,使之不仅在磁带设备、打印设备、光盘驱动设备等外设中得到普遍应用,也在许多I/O设备和计算机网络、计算机工业控制等领域不断发展。随着外设速率的不断提高,SCSI的性能几乎每5年提高一倍,目前Ultra320 SCSI总线数据传输速率可达320MB/s。
SCSI是设备无关的输入输出总线,可以挂接多达8个以上的设备。对于SCSI总线上的设备,如果是任务的触发者,则称为启动设备;如果是任务的执行者,则称为目标设备。通常启动设备先选择一个目标设备,继而由目标设备决定继续控制总线或释放总线,直到完成任务。本文的专用高速硬盘存储设备采用单启动、单目标结构。
SCSI硬盘在标识硬盘扇区时使用了线性的概念,即硬盘只有顺序的第1扇区、第2扇区…第n扇区,不像IDE硬盘的“柱面/磁头/扇区”三维格式。这种线性编排方式访问延时最小,可加快硬盘存取速率,尤其在持续大容量数据存储时,所显现的优势较明显。目前,操作系统内部也使用线性编号的扇区,其目的是加快介质存取速度,加大介质访问容量。
综上所述,该专用高速硬盘存储设备使用SCSI总线不仅数据传输速率高,而且在需要时可以增加设备中的硬盘数量来扩展存储空量,甚至可以把硬盘替换为其它SCSI存储设备。
2 系统结构设计
为了实现SCSI协议和硬盘存储,一般需要有微处理器、DMA控制器、SCSI协议控制器、数据缓存器等硬件支持和相应的软件控制模块。
%26;#183;微处理器用来控制设备中各部件的工作,实现设备本身的特定功能。该专用高速硬盘存储设备实现数据的持续高速存储,要求处理数据的速度高。通常这些需要传输和处理大量数据的设备均选用数字信号处理器DSP作为微处理器。同时,SCSI协议中许多复杂的控制功能也需要这个微处理器来实现。
%26;#183;传送大量数据大多会采用直接存储器访问DMA(Direct Memory Access)方式,因此需要独立的DMA控制器或选用内置DMA控制器的微处理器。出于简化电路和提高速率的考虑,该设备采用复杂可编程逻辑器件CPLD构造了一个独立的DMA控制器。
%26;#183;要实现SCSI协议需要有SCSI协议控制器。DSP中通常不会集成SCSI协议控制器,因此一般情况下,需要选择通用的SCSI协议控制器,辅助DSP实现SCSI协议和通信。
%26;#183;在设备的输入接口部分,需要有数据缓存单元。普通的存储器在写入的同时不能读取;采用双口随机存储器RAM虽然可以解决并发访问的问题,但它必需的双边地址译码又是不可忽视的问题。对于单纯的数据存储设备,不需要对数据做压缩、信号分析等预处理工作,缓存单元在结构上相当于先进先出(First In First Out,FIFO)队列,先到的数据先被存储。所以采用专用FIFO芯片,可以去掉复杂的缓存器译码电路,大大简化系统设计。而且,采用专用FIFO芯片,整个设备从外部数据接口看来,就是一个写不满的FIFO,也大大简化了对设备数据接口的操作。
专用高速硬盘存储设备的框图如图1所示。图1中各方框表示一个基本模块,括号中文字表示具体实现的器件,虚线左侧部分不属于设备模块。
该高速硬盘存储设备设计中向处理器选用了TI公司生产的TMS320F206,SCSI协议控制器选用了Qlogic公司生产的FAS368M,DMA控制器和其它外围逻辑转换电路选用了ALTERA公司生产的CPLD器件EPM7064。
TMS320C206是TI公司生产的CPLD器件EPM7064。
TMS320C206是TI公司生产的TMS320系列单片数字信号处理器中的一种低价格、高性能的定点DSP芯片。该芯片功耗低,处理能力强,指令周期最短为25ns,运算能力达40MIPS,片内具有32KB的闪烁存储器和4.5KB的RAM,是最早使用闪烁存储器的DSP芯片之一。由于闪烁存储器具有比ROM灵活、比RAM便宜的特点,因此使用TMS320F206不仅降低了成本、减小了体积,同时系统升级也比较方便。
FAS368M是与SCSI-3标准完全兼容的SCSI协议控制器,它支持启动设备与目标设备两种模式,同步数据传输速率为40MB/s。另外,FAS368M支持最大50 MB/s的快速DMA数据传。由于采用分离的微处理器总线和DMA总线结构,因此能以较高速率产生响应而不会造成瓶颈效应。
3 硬件电路及功能描述
TMS320F206、FAS368M、EMP7064和IDT7208之间的具体连接线路如图2所示。
3.1 FAS368M的信号及内部寄存器说明
图2中FAS368M的主要信号和控制逻辑如下:
%26;#183;ACK、ATM、BSY、CD、IO、MSG、REQ、RST、SD0~15、SDP0~1、SEL及其差分信号,都是FAS368M与SCSI总线的接口信号。
%26;#183;CS信号是读写FAS368M内部寄存器片选信号。
%26;#183;RD、WR是FAS368M内部寄存器的读写信号。
%26;#183;FAS368M的TNI端对应TMS320F206的外部中断INT1,当其有效时,表明有错误产生(如校验出错)、一个事件需要服务(如FAS368M作为目标设备被选中)或已结束某服务(如DMA结束)。
%26;#183;DREQ,FAS368M使DREQ有效向DMA控制器(EPM7064)发出DMA传输请求。
%26;#183;DACK,EPM7064对FAS368M DMA请求信号DREQ的响应。
%26;#183;DBWR,DMA数据写信号。当DREQ和DACK信号均有效时,EPM7064控制该信号和缓存器IDT7208的RD信号,实现数据从IDT7208向FAS368M的同步快速传输。
FAS368M在TMS320F206的控制下实现所有的SCSI物理协议,包括仲裁、选择、消息、命令、数据、状态等各阶段规定的信号电平转化等。在设备中TMS320F206对FAS368M的控制是通过对其寄存器的读写来实现的。
%26;#183;指令寄存器(Command Register),TMS320F206通过向指令寄存器写入相应指令,实现诸如FAS368M的初始化与复位、SCSI总线分配与复位、SCSI总线各阶段的迁移等所有针对FAS358M和SCSI总线的控制。
%26;#183;FIFO寄存器(FIFO Register)是一个16字的FIFO寄存器,硬盘和FAS368M之间的数据都要通过FIFO寄存器。它有两方面的用途:当FAS368M通过SCSI总线向硬盘传送数据和命令时,可以先把要传送的数据和命令放在FIFO寄存器,等SCSI总线空闲,并获得总线控制权以后再开始传送;另一方面,由SCSI总线传送到FAS368M的数据,也可因为TMS320F206或DMA控制器忙而停止,数据先送到FIFO寄存器空出SCSI总线,等TMS320F206或DMA控制器空闲再从FIFO寄存器读取数据。
%26;#183;传输计数寄存器(Transfer Count Register)是一个减计数器,它通常用来保存一次DMA命令所要传输数据的字节数。
%26;#183;中断寄存器(Interrupt Register),FAS368M所有的信息都以中断的方式通知TMS320F206。TMS320F206通过读取中断寄存器和其他状态寄存储器判断FAS368产生中断的原因,决定下一步操作,从而实现FAS368M对TMS320F206的通信。
3.2 EPM7064内部逻辑和作用
设备中的DMA控制器由CPLD器件EPM7064实现,这主要有下面几方面的考虑:
(1)设备接口缓存器采用专用FIFO芯片IDT7208,它的数据总线可以和FAS368M的DMA数据总线直接连接,不需要复杂的缓存器地址译码电路。因此,DMA控制器不需要数据与地址总线,硬件连线可以大大减少。而配合FAS368M DMA数据传输的时序,DMA控制器只需在DMA传输请求信号DREQ有效且IDT7208空信号EF无效时,使DMA传输响应信号DACK有效,随后在时钟信号CLK驱动下连续产生同步的IDT7208读信号RD和DMA写信号DBWR,实现从IDT7208到FAS368M的DMA传输;反之,则使DMA传输响应信号DACK无效,随后停止产生IDT7208读信号RD和DMA写信号DBWR,中断从IDT7208到FAS368M的DMA传输。这些时序逻辑完全可以用一片小的CPLD器件实现,因此选用EPM7064设计了该DMA控制器。
(2)FAS368M支持高达50MB/s的快速DMA传输。一般的专用DMA控制器芯片难以胜任,而且专用DMA控制器与FAS368M的连接需要一定的逻辑转换电路,外围硬件连线也较多。同时,它还必须在TMS320F206的控制下与FAS368M一起协调工作才能实现DMA传输,又增加了软件的复杂程度。
(3)使用EPM7064除了实现DMA控制器的功能外,还可以把整个设备电路中的一些译码、逻辑转换等模块一并设计进去,在很大程序上减小了设备的体积,同时也为设备的改进和升级提供了方便。
在硬件设计的基础上,DSP微处理器还需要一个软件模块负责对相关硬件控制和协调,最终实现SCSI协议、硬盘的控制和DMA传输等。对DSP微处理器的编程,需要完整掌握SCSI-3协议标准和FAS368M的命令集,工作量比较大,同时程序的优劣也关系到系统的存储速度和可靠性。由于篇幅限制,软件设计本文不再多述。
编辑: 引用地址:一种专用高速硬盘存储设备的设计与实现
小广播
热门活动
换一批
更多
最新缓冲存储文章
更多热门文章
更多每日新闻
- Allegro MicroSystems 在 2024 年德国慕尼黑电子展上推出先进的磁性和电感式位置感测解决方案
- 左手车钥匙,右手活体检测雷达,UWB上车势在必行!
- 狂飙十年,国产CIS挤上牌桌
- 神盾短刀电池+雷神EM-i超级电混,吉利新能源甩出了两张“王炸”
- 浅谈功能安全之故障(fault),错误(error),失效(failure)
- 智能汽车2.0周期,这几大核心产业链迎来重大机会!
- 美日研发新型电池,宁德时代面临挑战?中国新能源电池产业如何应对?
- Rambus推出业界首款HBM 4控制器IP:背后有哪些技术细节?
- 村田推出高精度汽车用6轴惯性传感器
- 福特获得预充电报警专利 有助于节约成本和应对紧急情况
更多往期活动
- TI直播:精讲“双向CLLLC谐振、双有源电桥(DAB)参考设计”
- ADI有奖下载活动之7 可编程逻辑控制器(PLCs)解决方案
- 评论赢好礼|TI SK-AM64评估套件测评
- 有奖直播:低功耗、小尺寸&高温环境、带触摸功能——瑞萨电子最新16位RL78/G系列单片机介绍
- 看是德科技5G精彩专题,让你了解更多关于5G的那些事~ 下载赢好礼!
- Mentor线上研讨会丨FPGA仿真验证平台ModelSim应用进阶
- EEWorld邀你来拆解(第五期):拆拆排插学评电路
- 【EEWORLD第七届社区明星人物】9月明星人物
- 邀请函:EEWorld 十五周年嘉年华系列活动开启,有你真好!
- 有奖直播:安森美电感式位置传感器接口 NCS32100
11月16日历史上的今天
厂商技术中心