首页
会员中心
到顶部
到尾部
其他电子电气

闪存电子硬盘设计

时间:2020/10/27 9:23:34  作者:  来源:  查看:0  评论:0
内容摘要:设计方案收集和选择3.1 设计思路本次设计的电子硬盘,主要应由供电电路、硬盘控制器、闪速存储器芯片组成,接口采用题目要求的IDE接口。供电电路是电子硬盘的动力来源,它把主机通过IDE接口输入的+5v电压转换为各块芯片所需的工作电压,电子硬盘的稳定首先来自电源输入的稳定,因此供电电...

设计方案收集和选择
3.1 设计思路
本次设计的电子硬盘,主要应由供电电路、硬盘控制器、闪速存储器芯片组成,接口采用题目要求的IDE接口。供电电路是电子硬盘的动力来源,它把主机通过IDE接口输入的+5v电压转换为各块芯片所需的工作电压,电子硬盘的稳定首先来自电源输入的稳定,因此供电电路的设计是整个电路设计中十分重要的一环。硬盘控制器作为主机和闪速存储器的传输纽带,通过总线与IDE接口和闪速存储器实现数据传递,通过各种控制信号控制对闪速存储器存储区域的读写操作。同时,硬盘控制器可以接受来自主机的控制信号,并通过该信号改变电子硬盘的工作方式。闪速存储器作为电子硬盘的存储介质,主要功能在于长期、稳定和安全地保证数据的储存。
经过大量网络和文献资料的搜集和整理工作,我最后挑选出两个比较合适的方案。我将在下面的叙述中对这两个方案做出具体的分析和比较,以确定最终的设计方案。
3.2 方案1简介
方案1包括硬盘控制器MX9691L,程序存储器MX28F2100T,数据总线驱动器74F245(2片),控制总线驱动器74F244,闪速存储器芯片K9F5608U0B(32M*8bit,2片),44pin 标准IDE接口。
    硬盘控制器采用的是旺宏公司生产的电子硬盘专用控制器MX9691L,为128脚LQFP封装,具有宽工作电压范围3.3~5V,可提供标准的PCMCIA和IDE接口。它的内部包括MX93011的DSP内核 21MIPS、1KB的缓冲数据区、PCMCIA/ATA接口、Flash存储器接口和时钟、复位电路等。
采用MX9691作为Flash硬盘的驱动控制器有很多优点。MX9691为旺宏公司生产的专用硬盘驱动控制芯片,优化功能强大,没有冗余模块且封装紧凑,便于进一步小型化和降低功耗。MX9691支持PIO Mode-4、Multi-word DMA Mode-2两种最新的传输模式,与三星公司的Flash存储芯片兼容性好,不需再增加其它电路,因此可靠性高。旺宏公司对MX9691有强大的软件支持,很多固件可以直接购买。因为MX9691支持在线编程,升级和维护非常简单。另外,MX9691为低功耗设计,它有3种节电模式:Idle、Standby和Sleep。MX9691可以通过查询自己的工作状态,自动进入相应的节电模式,因此功耗很低[14]。MX9691L的功能框图如图3-1所示:

 
图3-1  MX9691L的功能框图

Flash 芯片采用的是三星公司生产的K9F5608U0B。它是48脚表面封装器件,采用TSOP-48封装,内部具有(32M+1024K)×8bit的存储空间,共32768行,528列,其中后备的16列位于512列到527列。它内部有一个528字节的数据寄存器,可以用于页读、页编程操作时数据的存储转换。它可以进行528字节为一页的页读和写操作,并可以进行以16K为一块的块擦除操作。
K9F5608U0B的突出优点在于:命令、地址和数据信息均通过8条I/O线传输,寻址单元的地址线不作为芯片的引出脚,24位地址分三次写入地址锁存器,译码后找到相应的单元[15]。
Flash硬盘工作原理框图如图3-2所示,硬盘控制器MX9691是CPU与Flash存储器进行数据交换的控制通道。数据交换不仅可以采用程序控制方式和中断控制方式,还可以采用直接存储器存取方式(DMA)。在DMA方式下,MX9691内部的DMA控制器利用数据缓冲区可以与IDE适配器直接进行数据高速交换。因为采用周期窃取技术(cycle stealing) 使得数据传送工作对系统总线具有较高的使用权。因为采用高速的MX93011 DSP内核(21Mips),进行主机到缓冲区的突发数据传送时速率可以达到20MB/s。同时,MX9691还支持PIO模式4(16.6MB/s)和DMA模式2(16.6MB/s)。

                                                               DB1
                                                                                            DB1
                                                               CE1
         DB
                                                               DB2
         CB                                                                                DB2
                            DB                                CE2
 
                         DMA控制

                                                                                                       2片   
                                    DB    AB     CB


图3-2  Flash硬盘工作原理框图

硬盘控制器在与Flash存储器进行数据通信操作时,数据已被放入内存中,MX9691首先把内存中的数据读入内部高速缓存中,然后通过识别接收的指令类型和查询FAT得到要寻址的Flash存储器的编号。在对Flash存储器进行写操作前,先把要写入的信息依次放到数据总线上,经过TW的时间,待数据(包括指令、地址和数据)稳定后,通过对要寻址的Flash存储器编号的解码,从端口#601FH输出FCE片选信号选中相应的Flash芯片。在WR#和WRFLASH#同时有效时,数据被写入相应的Flash存储单元中。读操作与此类似。MX9691L的读操作时序和写操作时序分别如图3-3和图3-4所示:


 
图3-3  MX9691L的读操作时序

 
图3-4  MX9691L的写操作时序

MX28F2100T为程序存贮器,它通过标准ATA接口经编译的可执行文件可以对它直接在线编程。74F245和74F244为总线驱动器,在所选Flash存储器较多时可以提高总线驱动能力。
考虑到电子硬盘应用的广泛性,在接口方面选择了44pin标准ATA接口。44pinIDE接口定义完全与便携式计算机硬盘相同,也可以通过转接口转为40pin数据口和4pin电源口,实现与台式机主板兼容。44pin标准IDE接口定义如表3-1所示:

表3-1  44pin标准IDE接口定义
引脚号 信号名称及描述 引脚号 信号名称及描述
1 RST# 2 GND
3 DATA7 4 DATA8
5 DATA6 6 DATA9
7 DATA5 8 DATA10
9 DATA4 10 DATA11
11 DATA3 12 DATA12
13 DATA2 14 DATA13
15 DATA1 16 DATA14
17 DATA0 18 DATA15
19 GND 20 KEY-PIN
21 IDE$PDREQ 22 GND
23 IDE$PIOWR* 24 GND
25 IDE$PIORR* 26 GND
27 IDE$PIORDYR 28 PLL-Vcc
29 IDE$PDACK* 30 GND
31 ISA$IRQ14 32 PLL-Vcc
33 IDE$A1 34 NC
35 IDE$A0 36 IDE$A2
37 IDE$CS0* 38 IDE$CS1*
39 -HD_LED1 40 GND
41 Vcc 42 Vcc
43 GND 44 GND

3.2 方案2简介
方案2包括硬盘控制器SST55LD019A,闪速存储器芯片K9F5608U0B(32M*8bit,2片),供电部分300mA CMOS 线性稳压器AME8800,44pin标准IDE接口。
硬盘控制器使用的是SST公司生产的SST55LD019A,它使用100pin的TQFP封装,具有低功耗(工作电压3.3v-5v)、主机读取速度快(最快可达10M/s)、稳定性好(可在-40℃~85℃的工业环境下稳定运行)、兼容性好(支持PIO Mode-4、Multi-word DMA Mode-2两种最新的传输模式,兼容标准NAND型Flash Memory)等优点。
SST55LD019A主要包括微处理器单元(MCU)、内部直接存储器接入(DMA)、电源管理单元(PMU)、SRAM缓冲器、嵌入式闪存文件系统、纠错编码(ECC)、串行通信接口(SCI)和多任务接口。
① 微处理器单元(MCU):微处理器单元把ATA/IDE信号转换成闪存芯片所需的数据和控制信号。
② 内部直接存储器接入(DMA):ATA闪存盘控制器使用内部DMA允许常用数据从缓冲区转移到闪存芯片。这种执行方式可以减少微处理器使用传统的、基于固件的连接方式,从而增加了数据转移的速率。
③ 电源管理单元(PMU):电源管理单元控制ATA闪存盘控制器的电源消耗,它通过使没有工作的电路部分进入休眠状态,极大地降低了闪存盘控制器的电源消耗。
④ SRAM缓冲器对ATA闪存盘控制器的正常运行发挥了重大作用,它优化了主机和闪存芯片之间的数据转移。
⑤ 嵌入式闪存文件系统是ATA闪存盘控制器的一个集成部分。它包括了实现以下操作的MCU固件:
a. 转换主机信号以便对闪存芯片进行读写。
b. 通过把对闪存芯片的写入扩展到所有未被使用的地址空间,从而极大地降低了闪存芯片的损耗程度并增加芯片的使用寿命。
c. 维护数据文件的结构路径。
d. 管理被选择的保护区域的系统安全性。
⑥ 纠错编码(ECC):ATA闪存盘控制器利用72bit的Reed-Solomon错误检测码纠错编码,这两种编码提供了每个512字节数据块对以下错误的免疫性:
a.3个随机12bit的符号错误(可修正)。
b.25bit的单突变码错误(可修正)。
c.61bit的单突变码错误和15bit的双突变码错误(可检测)。
d.6个随机12bit的符号错误(可检测)。
    ⑦    串行通信接口(SCI):串行通信接口被设计为使用户能够重新启动
初始化过程和定制驱动识别信息。
⑧    多任务接口:多任务接口通过允许并发读取、编程和擦除操作来成倍增加闪存设备,实现快速、持续的写入操作[16]。
SST55LD019A的功能结构框图如图3-5所示:

 
图3-5  SST55LD019A的功能结构框图

    由于三星公司生产的闪速存储器芯片对ATA闪存盘控制器有着良好的兼容性,因此,方案2中的闪速存储器芯片同样采用了2片三星公司的K9F5608U0B,构成64M的容量。
方案2特别地把整个电路的供电部分作为重点,采用了AME公司生产的AME8800。AME8800是一种CMOS线性稳压器(LDO),它采用SOT23封装,主要优点有:很低的压降,误差精确到1.5%以内的稳定300mA电流输出,自动过温保护和过流保护,可在出厂时预置输出电压等(本次设计使用的AME8800输出电压在出厂时被设为3.3v)[17]。AME8800的典型应用电路图如图3-6所示:

 
图3-6  AME8800的典型应用电路图

    同样考虑到和便携式电脑和台式机主板兼容性的原因,方案2中同样采用了44pin标准IDE接口。
2.3 方案比较和最终选择
对比方案1和方案2,主要的区别在于硬盘控制器和供电部分的选择。
1、 硬盘控制器的比较:由图3-1和图3-5,我们可以列出以下表格:

表3-2  MX9691L和SST55LD019A的功能结构对比
功能模块 MX9691L SST55LD019A
微控制器单元 MX93011 DSP CORE MCU
PCMCIA/ATA接口(并行) 支持 支持
SCI接口(串行) 不支持 支持
SRAM缓冲器 有 有
内部DMA(内部直接存储器访问) 不支持 支持
内部ECC(纠错编码) 有 有
内部电源管理 无 PMU
多任务接口(支持多片闪存芯片) 支持 支持
嵌入式Flash文件系统 无 有
内部时钟源和复位电路 有 有

从表3-2可以看出,SST55LD019A和MX9691L相比,主要有以下优点:
a、提供了对串行通信方式的支持。
b、内部提供了嵌入式Flash文件系统,可以省去外接程序存储器的麻烦。
c、通过对内部DMA的支持大大提高了数据转移的速率。
d、出色的内部电源管理也能够通过休眠不工作的模块来降低电路的功耗。因此,相对而言,以SST55LD019A作为硬盘控制器较为合适。
2、供电部分的比较:方案1中并没有采用专门的供电电路,而是直接从44pin标准IDE接口的41和42脚输入+5v电压,直接供给硬盘控制器和闪存芯片,虽然+5v输入电压仍在芯片的可靠工作范围之内,但是仅仅依靠芯片外围的几个模拟元件无法保证稳定的电压和电流输出,当输入电流或工作电压超过电路负荷时也无法采取必要的安全措施来保护电路。而方案2中采用了专门的供电用芯片CMOS线性稳压器AME8800,可以既保证较低的压降又能精确地保证300mA的稳定电流输出,同时它自带的过流保护和过温保护功能也能在突发情况下自动切断电源,保护电路的安全。因此,从电路稳定供电和安全的角度看,方案2是比较合适的。
除了以上两个主要区别外,由于方案1中还额外采用了一片程序存储器,两片总线驱动器和一片总线控制器,使得电路的结构过于复杂,功耗也较高,因此,从电路的复杂性和整体功耗角度看,方案2也是比较合适的。
综合以上几点,最后我选择了方案2作为本次毕业设计的最终方案。
 

Tags:硬盘



相关评论
广告联系QQ:45157718 点击这里给我发消息 电话:13516821613 杭州余杭东港路118号雷恩国际科技创新园  网站技术支持:黄菊华互联网工作室 浙ICP备06056032号