与非门快闪存储器的物理接口、接口方法和管理设备的制作方法

文档序号:6650772阅读:197来源:国知局
专利名称:与非门快闪存储器的物理接口、接口方法和管理设备的制作方法
技术领域
本发明涉及一种接口设备,具体地讲,涉及一种为与非门快闪存储器而提供的物理接口;更进一步讲,涉及一种在控制器(例如嵌入式处理器)和与非门快闪存储器之间提供接口的物理接口、接口方法和用于与非门快闪存储器的管理设备。
背景技术
与非门快闪存储器(以下简称闪存)自身没有存储控制器,其结构可看作是由许多的小区块组成的,每块都能存储一定数量的信息,类似于硬盘的簇。闪存的读写也是以块和页为单位来进行的,使用例如8比特的I/O端口存取数据。闪存容量大、成本低、可以达到比较高的速度,所以应用较为广泛。闪存的基本工作方式是按顺序读取,一个区块写入或读取结束再接着下一个,是“串行”方式而不是“并行”方式,操作上也是如此,比如区块上已有信息,就一定要先擦除,再写入,其它操作也是一样的。
闪存管理主要由例如嵌入式中央处理器(简称为CPU)依靠软件完成。CPU除了需要对闪存作出使用策略的管理,还需要对具体的读写进行干预。通用的做法是CPU使用较高频率的主频,在读写闪存时使用固件(firmware)的读写函数通过操作一个简单的由锁存器(latch)构成的物理接口来生成闪存的接口时序。
现有技术的物理接口存在着以下问题1)CPU消耗比较高。由于实际上整个读写时序是由固件函数生成,而CPU执行一条汇编指令需要若干个时钟周期,所以CPU必须工作在比闪存读写接口高几倍的频率上,不利于使用低端降低成本;2)高的主频会造成更高的功耗;3)管理整个时序操作会占用很大的资源;4)使用固件来管理接口时序使得兼容多种闪存变得很困难;5)另外由于不同闪存接口读写速度有较大差别,现有技术的物理接口很难充分发挥不同闪存的最佳速度。

发明内容
本发明的目的在于提供性能优异的闪存物理接口。它管理整个闪存的操作时序,简化嵌入式CPU的工作,降低对CPU的要求,降低功耗,并且提供灵活的对多种闪存的支持。
本发明的上述目的通过提供用于与非门快闪存储器的物理接口和接口方法以及管理设备而实现。
根据第一方面,提供一种为与非门快闪存储器提供接口的物理接口,包括协议选择单元,根据和与非门快闪存储器有关的全局参数选择相应的协议;波形生成单元,根据协议选择单元所选择的协议,基于外部时钟产生操作与非门快闪存储器所需的波形。
根据第二方面,提供一种管理与非门快闪存储器的设备,包括物理接口,和与非门快闪存储器相连,用于对与非门快闪存储器进行管理操作;所述物理接口包括协议选择单元和波形生成单元;其中,协议选择单元根据和与非门快闪存储器有关的全局参数选择相应的协议,波形生成单元根据协议选择单元所选择的协议,基于外部时钟产生操作与非门快闪存储器所需的波形;控制器,与物理接口相连;当控制器需要管理与非门快闪存储器时,控制器用和与非门快闪存储器本身无关的控制指令指示物理接口管理与非门快闪存储器,物理接口根据控制指令产生操作与非门快闪存储器所需的波形,对与非门快闪存储器进行管理操作。
在第二方面中,所述控制器优选是嵌入式微处理器或基带。进一步优选的是,所述物理接口通过DMA方式与嵌入式微处理器或基带交换数据;并且/或者,嵌入式处理器或基带通过中断方式控制物理接口。
优选的是,管理设备包括数据传输通道控制单元,它和物理接口相连,以便从/向与非门快闪存储器读/写数据。进一步优选的是,所述数据传输通道控制单元和物理接口通过DMA方式进行数据交换。
根据第三方面,提供一种电子设备,包括如第一方面提供的物理接口或如第二方面提供的管理与非门快闪存储器的设备。
根据第四方面,提供一种为与非门快闪存储器提供物理接口的接口方法,包括根据和与非门快闪存储器有关的全局参数选择相应的协议;根据所选择的协议,基于外部时钟产生驱动与非门快闪存储器所需的波形。
根据本发明的闪存控制用物理接口能显著节约例如嵌入式微处理器的资源,从而可以使用低端CPU降低成本,同时对CPU主频要求降低故而可以降低功耗;能灵活支持多种闪存,并且能适应各种速度的闪存。


本发明的优选实施方案的这些以及其他特征在结合附图阅读详细描述之后将变得一目了然,在附图中图1是根据本发明的一个实施例的闪存管理设备的示意图;图2是波形生成模块结构的一个示意图;以及图3是波形生成模块所生成的波形示意图,包括图3(a)、图3(b)和图3(c)。
具体实施例方式图1是根据本发明的一个实施例的闪存管理设备的示意图。在图1中,闪存管理设备包括嵌入式微处理器10、微处理器数据存储器20、直接存储器存取(简称DMA)控制单元30、数据传输通道控制单元40、中断处理单元50、物理接口单元60、时钟单元70、和全局参数设定单元80。该闪存管理设备用于连接与非门快闪存储器(简称闪存)90并且对其进行管理操作。所述管理操作包括读、写、回拷读(Copybackread)、回拷写(Copybackwrite)、和擦除(Erase)。
所述嵌入式微处理器10对闪存90进行行为上的管理,其对闪存的操作由所述物理接口单元60来完成。当嵌入式微处理器10需要管理闪存时,它向物理接口单元60发出管理操作指令,所述管理操作指令规范的是闪存90的一些基本功能,例如读、写、擦除闪存等。这些基本功能在不同闪存中具体实现的方式并不相同。物理接口单元60结合闪存的自身特点,将管理操作指令具体化为对闪存的实际控制和操作指令和时序。
所述嵌入式微处理器10还可以控制DMA控制单元30选择物理接口60的数据流向。所述物理接口单元60和所述DMA控制单元30通过所述中断控制单元50与所述嵌入式微处理器单元10交互。
所述物理接口60通过所述DMA控制单元30实现数据在闪存90与所述数据传输通道控制单元40或者微处理器数据存储器20之间的传输。所述DMA控制单元30操作从物理接口60中传出的数据,DMA控制单元30与其他模块的数据交换则通过数据传输通道控制单元40仲裁并且传输。
另一方面,需要所述嵌入式微处理器10管理的数据则通过DMA方式送入微处理器数据存储器20。这里,微处理器数据存储器可以是例如静态随机存取存储器。
使用DMA方式可以减少使用微处理器传输数据的时间,提高数据传输的速度。需要指出,除DMA控制方式以外,本发明还可以采用其它的传输控制方式,只要是能够实现数据传输。例如,在一个替代性实施例中,嵌入式微处理器可以通过端口(port)方式从闪存中读取数据。
所述中断控制单元50对来自于所述DMA控制单元30和物理接口单元60的中断进行仲裁并发给所述嵌入式微处理器10。通常,当一个操作指令完成,或者发生编程错误,或者在读出的时候发生不可修复ECC错误等条件下,会发生中断请求。需要指出,可以采用轮询的方式来替代中断方式。
所述时钟单元70根据一个锁相环(PLL)(未图示)输出的高频时钟,分频得到一个频率与占空比可调的时钟。该时钟可用来生成具体的接口时序。不同的闪存可能有不同的时序要求。比如说两种指令集一样但是速度不一样的闪存,它们的时序指令结构是一样的,但是它们要求的时序速度可能是不一样的。通过调节时钟的频率和占空比,就可以使得物理接口满足不同闪存的要求。通常,可以根据闪存的读/写使能信号最小周期、高电平最小有效持续时间和低电平最小有效持续时间来调整时钟的频率和占空比,使得时钟信号的高电平持续时间大于且逼近闪存的高电平最小有效持续时间,时钟信号的低电平持续时间大于且逼近闪存的低电平最小有效持续时间,时钟信号的周期大于且逼近闪存的读/写使能信号最小周期。
优选地,嵌入式微处理器可以根据闪存类型、接口速度,具体配置时钟单元70中相应的寄存器从而调节时钟的频率和占空比。除了嵌入式微处理器外,其他单元如基带(Baseband)等也可以实现配置功能。
所述全局参数设定单元80为所述物理接口60提供与闪存有关的全局参数。全局参数主要包括闪存的页(page)类型、存储器(memory)结构、坏块标志方式、厂商、容量大小以及特殊指令等。这些参数可由嵌入式微处理器根据具体的闪存来配置,也可以由其他单元如基带等来完成。
所述物理接口60根据全局参数并且基于频率和占空比不同的所述时钟,来生成速度不同的接口时序,从而满足支持不同速度闪存的需求。
下文以读操作为例,描述闪存管理设备的工作流程。
上电后,所述嵌入式微处理器单元10分别指示时钟单元70和全局参数设定单元80配置完成用于物理接口60的时钟和全局参数。
当所述数据传输通道控制单元40需要从闪存90读取一定的数据时,它先对所述DMA控制单元30提出请求,DMA控制单元通过中断控制单元50对嵌入式微处理器10提出请求。根据该请求,所述嵌入式微处理器10对DMA控制单元30和物理接口单元60进行配置并且触发物理接口的读操作。物理接口60根据全局参数对协议进行选择并完成从闪存读出数据。其后,数据通过DMA控制单元30送到数据传输通道控制单元40的例如静态随机存取存储器(sram)中。DMA控制单元30读操作完成后将通过中断控制单元50通知嵌入式微处理器10。
相反,如果嵌入式微处理器10需要从闪存90中读取数据,它配置DMA控制单元30和物理接口60,将数据读入微处理器数据存储器20。
接下来,对物理接口60的结构进行描述。如图1所示,所述的物理接口60包括一个接口协议模块62和一个波形生成模块64。所述接口协议模块62根据全局参数设定单元80提供的闪存类型、厂商等信息选择适当的接口协议以满足对不同闪存的支持要求。协议选择的主要目的是针对不同闪存而选择相应的指令集。所述波形生成模块64使用为物理接口单元60提供的时钟,根据接口协议模块62所选择的接口协议生成真实的接口波形。通过选择适当的时钟,可使闪存的速度最大化。
图2是波形生成模块结构的一个示意图。如图2所示,波形生成模块64包括寄存器组110、有限状态机120、条件判断模块130和波形生成逻辑140,它们在来自时钟单元的时钟(未图示)的协调和控制下工作。
寄存器组110将接口协议模块62所选择好的指令集存储下来,并且供有限状态机120、条件判断模块130和波形生成逻辑140引用。条件判断模块130对从寄存器组110读出的内容以及状态机120的状态进行判断,并为有限状态机120提供包括判断结果在内的一些必要的参数,有限状态机120具体控制着波形生成的步骤,而有限状态机120的输出被引用到波形生成逻辑140,具体生成接口波形。
下文以三星32MB小页类型的闪存为例,描述以上实施例的闪存管理设备的工作过程。
在当前的闪存是三星32MB小页(page)类型的闪存的情况下,协议选择模块62会依据有关全局参数设定好以下内容根据全局参数中的厂商信息得知是三星闪存,选择在使用读状态(read status)指令时返回的状态结果以三星方式处理;根据容量大小,依据最大容量设定地址范围;根据页类型,选择小页类型指令集;根据特殊指令参数可知该闪存不支持copybackread和copybackprogram,故而使用读(read)和页编程(pageprogram)代替。
当嵌入式微处理器需要对该闪存做一次copyback的时候,它先向物理接口60发出copybackread命令。波形生成模块64根据协议选择模块62设定小页类型的读指令的要求生成相应接口波形,例如根据地址选择读指针,根据最大地址范围选择输入地址的字节数,根据小页指令对CE的要求控制CE等等。波形生成模块64将读出的数据放入相应的缓存(未图示)中,并完成ECC纠错检查。然后,物理接口60向嵌入式微处理器发出中断请求,表明已经完成copybackread。
嵌入式微处理器接下来向物理接口60发出一个copybackprogram,波形生成模块64将根据协议选择使用小页类型的pageprogarm代替copybackprogram,并且根据其他协议选择的内容发出pageprogarm的波形将缓存中的内容写入闪存中。最后,波形生成模块64将使用读状态指令读出编程后闪存的状态,依据协议选择的要求使用三星的状态(status)定义方式进行分析。如果编程正确,物理接口60将发出正确完成的中断;如果编程错误,将发出编程错误的中断。
图3是根据上述实施例波形生成模块64生成的对闪存进行回拷(copyback)的波形的示意图。图3包括图3(a)、图3(b)和图3(c)三个部分。图3(a)示意了使用读实现回拷读的过程,图3(b)示意了使用页编程实现回拷写的过程,而图3(c)则示意了读状态的过程。
嵌入式微处理器对闪存的其它操作可依相似方式加以实现,这里不一一赘述。
需要指出,本发明中的嵌入式微处理器可以由很多控制器单元代替。可替代的控制器单元例如有纯硬件的闪存控制器、基带、数字信号处理器(DSP),以及其他需要对闪存进行操作的单元。
此外,数据传输通道控制单元可以面向和外接多种装置或设备。例如,它可以通过通用串行总线(USB)通道与PC(个人计算机)相连,可以通过基带通道从手机上网中下载上传文件,可以通过数字信号处理装置和模数转换器(DAC)进行midi,mp3的播放,可以通过模数转换器(ADC)进行录音,也可以与图像处理模块相联实现播放闪存中的多媒体文件或者将摄像拍照下的文件存入闪存中。
在本发明的实施方案中CPU不对读写过程做具体的操作,只负责触发的动作,所以CPU工作的频率可以比较低,并且因而减少功耗。另外,由于工作频率要求降低而且CPU参与的工作大大减少,减少了对CPU的依赖,故此可使用低端CPU降低成本。
此外,在本发明中,物理接口可以依据与非门快闪存储器的特点(比如不同的指令集和速度)对与非门快闪存储器实施具体的管理操作,而CPU无需了解与非门快闪存储器的特点。因此,这样的结构较易于兼容不同类型的与非门快闪存储器。
本发明的闪存管理设备在和各种与非门快闪存储器组合之后,可以应用于包括但不限于手机、掌上电脑、PDA和数码相机等电子便携设备及各种信息家电。例如可应用于u盘、移动电话、和数码相机的存储部件,以及mp3,mp4等播放器。
虽然本发明的实施方案已经在前述的说明书中公开,但本领域内的技术人员应该理解的是,在前述说明书和附图所展示的技术方案的基础上还可以做出许多改进和其他变更。因此,需要理解的是,本发明因此不限于在上面所公开的具体实施方案,许多改进和其他实施方案均应包括在附加的权利要求范围内。比如,在上述实施例中时钟单元70和全局参数设定单元80虽然是外置于物理接口60之外,但是它们也可以被设置在物理接口60之中。而且,虽然在这里和在下面的权利要求书中使用特定的术语,但是它们在使用时仅具有通用和描述的意义,而不是为了限制所描述的发明的目的,也不是为了限制下面的权利要求书的目的。
权利要求
1.一种为与非门快闪存储器提供接口的物理接口,包括协议选择单元,根据和与非门快闪存储器有关的全局参数选择相应的协议;波形生成单元,根据协议选择单元所选择的协议,基于外部时钟产生操作与非门快闪存储器所需的波形。
2.如权利要求1所述的物理接口,其特征在于所述外部时钟由一个时钟单元提供。
3.如权利要求1或2所述的物理接口,其特征在于该时钟的频率和/或占空比可调。
4.如权利要求1或2所述的物理接口,其特征在于所述全局参数由一个全局参数设定单元提供。
5.如权利要求4所述的物理接口,其特征在于由嵌入式微处理器或基带为全局参数设定单元配置全局参数。
6.一种管理与非门快闪存储器的设备,包括物理接口,和与非门快闪存储器相连,用于对与非门快闪存储器进行管理操作;所述物理接口包括协议选择单元和波形生成单元;其中,协议选择单元根据和与非门快闪存储器有关的全局参数选择相应的协议,波形生成单元根据协议选择单元所选择的协议,基于外部时钟产生操作与非门快闪存储器所需的波形;控制器,与物理接口相连;当控制器需要管理与非门快闪存储器时,控制器用和与非门快闪存储器本身无关的控制指令指示物理接口管理与非门快闪存储器,物理接口根据控制指令产生操作与非门快闪存储器所需的波形,对与非门快闪存储器进行管理操作。
7.如权利要求6所述的管理与非门快闪存储器的设备,其特征在于所述控制器是嵌入式微处理器或基带。
8.如权利要求7所述的管理与非门快闪存储器的设备,其特征在于所述物理接口通过DMA方式与嵌入式微处理器或基带交换数据。
9.如权利要求7所述的管理与非门快闪存储器的设备,其特征在于嵌入式处理器或基带通过中断方式控制物理接口。
10.如权利要求7所述的管理与非门快闪存储器的设备,其特征在于包括数据传输通道控制单元,它和物理接口相连,以便从/向与非门快闪存储器读/写数据。
11.如权利要求10所述的管理与非门快闪存储器的设备,其特征在于所述数据传输通道控制单元和物理接口通过DMA方式进行数据交换。
12.电子设备,包括如权利要求1-4之一所述的物理接口或权利要求5-10之一的管理与非门快闪存储器的设备。
13.一种为与非门快闪存储器提供物理接口的接口方法,包括根据和与非门快闪存储器有关的全局参数选择相应的协议;根据所选择的协议,基于外加时钟产生驱动与非门快闪存储器所需的波形。
全文摘要
本发明提供用于与非门快闪存储器的物理接口、管理设备和接口方法。该物理接口包括协议选择单元,根据与非门快闪存储器的全局参数选择相应的协议;和波形生成单元,根据协议选择单元所选择的协议,基于外部时钟产生操作与非门快闪存储器所需的波形。该接口和方法以及管理设备显著节约控制与非门快闪存储器操作的电子装置例如嵌入式微处理器的资源,从而可以使用低端CPU降低成本,同时对微处理器主频要求降低可以降低功耗;能灵活支持多种闪存,并且能适应各种速度的闪存。
文档编号G06F3/06GK1752917SQ200510123578
公开日2006年3月29日 申请日期2005年11月21日 优先权日2005年11月21日
发明者张 浩, 史大北 申请人:北京中星微电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1