一种NAND FLASH控制器及其应用制造技术

技术编号:5136345 阅读:237 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种NAND?FLASH控制器,包括总线接口逻辑、功能寄存器组、主控逻辑、多用通路和闪存接口逻辑,所述总线接口逻辑用于将控制器通过系统总线连接到微处理器系统;所述功能寄存器组通过总线接口逻辑接收并存储微处理器系统发送来的控制参数;所述多用通路用于连接所述总线接口逻辑和所述闪存接口逻辑,以使微处理器系统能够与所述闪存芯片进行直接通讯;所述闪存接口逻辑与闪存芯片连接,根据主控逻辑和/或多用通路发送的信息产生对闪存芯片的操作时序,实现对闪存芯片的控制操作,本发明专利技术通过所述的潜伏命令寄存器和数据计数寄存器来实现后续命令的自动执行,不需要微处理器干预,减少了处理器开销,提高了性能。

【技术实现步骤摘要】

本专利技术涉及存储控制器领域,特别涉及一种NAND FLASH控制器及其应用。
技术介绍
闪存(FLASH)是一种电可擦除的非易失性半导体存储器。由于闪存的存储密度 大、功耗低、掉电数据不丢失以及抗震性好,在嵌入式设备领域已经非常普及。近年来,随着 闪存的存储密度进一步增加,单片存储容量达到8G字节以上,所以在很多场合已经开始逐 步取代传统磁盘。这也对闪存控制器的性能提出了更高的要求,为了更好的满足计算机系 统对存储性能的要求,迫切需要设计更高速的闪存控制器。常见的闪存有两种或非型(NOR)、与非型(NAND)。与非型闪存(NANDFLASH)的容 量更大,价格更低,多用于大容量数据存储,比如U盘、数码相机存储卡等。NAND FLASH芯 片的外部接口与NOR FLASH不同,本专利技术所述的NAND FLASH控制器仅可用于NAND FLASH。 后文中“闪存”一词也仅指NAND FLASH。NAND FLASH的基本操作有读、写、擦除。写操作也被称为编程操作。读和写操作 的基本单位是页,擦除操作的基本单位是块。目前市面常见的NAND FLASH的页大小为2K 字节或4K字节,每个块包含64个页或128个页。NAND FLASH的外部接口的地址线和数据 线是复用的,不能直接寻址。对NAND FLASH的读、写和擦除操作是通过发送命令的方式完 成的,一条命令包含多个步骤,以读操作为例,包括如下步骤发送页读命令字一,发送地址 信息,发送页读命令字二,等待NAND FLASH芯片将数据准备好,数据读出。NAND FLASH的这 种接口方式在一定程度上限制了系统的性能。另外,不同厂家生产的NAND FLASH芯片的命 令集不完全相同,即使同一厂家的不同型号的NAND FLASH的命令集也不完全相同,这就要 求NAND FLASH控制器具有兼容各种命令的能力。传统的NAND FLASH控制器的实现方式有两种,即软件方式和硬件方式。软件方式 通过微处理器上运行的驱动程序来发送命令,优点在于灵活性高、兼容性好,但是性能会受 到一定影响。硬件方式通过硬件逻辑来完成命令的发送,性能较好,但是由于各个厂家的闪 存芯片命令集的不兼容,并且NAND FLASH控制器很难在硬件上实现所有的命令,所以其兼 容性受限。
技术实现思路
本专利技术目的在于提供一种NAND FLASH控制器,该NAND FLASH控制器能够将NAND FLASH芯片与微处理器系统连接,使得微处理器系统可以对NAND FLASH芯片进行访问。该 NAND FLASH控制器还可以减少微处理器被中断的次数,在一定程度上提高系统性能。另外, 该 NANDFLASH控制器还提供对各种NAND FLASH芯片的兼容性。本专利技术涉及一种NAND FLASH控制器,包括总线接口逻辑、功能寄存器组、主控逻 辑、多用通路、闪存接口逻辑。所述总线接口逻辑用于与系统总线连接。所述功能寄存器组用于接收系统总线发送来的控制参数。所述主控逻辑用于根据所述功能寄存器组所存放的控制参数来控制所述闪存接 口逻辑产生闪存芯片所需的操作时序。所述多用通路用于连接所述总线接口逻辑和所述闪存接口逻辑,以使微处理器能 够与所述闪存芯片进行命令字、地址和数据的传送;所述闪存接口逻辑在主控逻辑和/或多用通路的控制下,产生对闪存芯片的操作 时序,包括产生片选信号。其中,所述的功能寄存器组包括片选寄存器、潜伏命令寄存器、数据计数寄存器, 所述片选寄存器用于存放当前片选值,片选值指示了哪个闪存芯片当前被选中,所述潜伏 命令寄存器用于存放下一条将要发送到闪存的命令字,该命令字由所述主控逻辑在本次写 操作的数据传送步骤之后发送给闪存,不需要系统总线经由所述多用通路来传送,所述数 据计数寄存器用来预设本次操作预计将传入到闪存的数据量,一旦数据传送数量达到预 设的字节数,所述的主控逻辑将向闪存芯片发送潜伏命令寄存器中的命令字。所述的主控逻辑包括中断生成器。所述中断生成器根据闪存的忙闲信号来产生中 断信号,该中断信号用来通知系统总线上的微处理器进行后续操作。本专利技术所述NAND FLASH控制器不使用硬件产生对闪存芯片的各种操作命令,而是 由上层的驱动软件来控制命令的组织和发送,这样只需要简单修改驱动软件即可方便地与 各种不同的闪存芯片的命令集保持兼容。所述NAND FLASH控制器通过所述潜伏命令寄存 器和数据计数寄存器,减少了对微处理器的中断,并且同时支持非整页的数据读写操作。应用本专利技术所述NAND FLASH控制器对闪存芯片进行读写操作时,数据的传输既可 以由微处理器来执行,也可以由直接内存访问控制器(DMAC)来执行。使用DMAC来执行数 据传输的方式称为DMA方式。在非DMA方式下,命令、地址和数据都由微处理器来发送或接收,微处理器通过总 线接口逻辑,经由多用通路和闪存接口逻辑与闪存芯片进行交互。在DMA方式下,命令、地址由微处理器发送,数据由DMAC来传送。在DMA方式下, 执行闪存芯片写入操作时,为了能够减少微处理器被中断的次数,可以通过使用所述潜伏 命令寄存器和数据计数寄存器来让NANDFLASH控制器自动执行紧随数据之后的命令字。由 于闪存的页读操作过程的数据阶段之后没有后续命令字,所以页读操作不需要使用所述潜 伏命令寄存器。当闪存芯片由忙碌状态转到空闲状态时,所述中断发生器可以产生中断信号。该 中断信号可以通知微处理器进行后续操作。本专利技术的技术效果体现在本专利技术利用硬件功能部件,采用微处理器运行的驱动软件来组织和发送所需命 令,弥补了软件带来的性能损失,兼顾了硬件性能。使系统灵活性高、兼容性好。通过所述 的潜伏命令寄存器和数据计数寄存器来实现后续命令的自动执行,不需要微处理器干预, 减少了处理器开销,提高了性能;附图说明图1为本专利技术的NAND FLASH控制器的一种实施实例的结构示意图;图2为本专利技术的功能寄存器组的构成;图3为本专利技术的应用实例;图4为本专利技术的实施实例提供的通过NAND FLASH控制器从闪存读取数据的流程图;图5为本专利技术的实施实例提供的通过NAND FLASH控制器采用DMA方式向闪存写 入数据的流程图。具体实施例方式图1所示为本专利技术的NAND FLASH控制器的一种具体实施实例的结构示意图,该 NAND FLASH控制器101的具体实施由硬件来完成。如图1所示,NAND FLASH控制器101包括总线接口逻辑102、功能寄存器组103、 主控逻辑104、多用通路105、闪存接口逻辑106。所述总线接口逻辑102用于与系统总线109连接。所述功能寄存器组103用于接收并存储系统总线109发送来的信息。所述主控逻辑104用于根据所述功能寄存器组103所存放的信息来控制所述闪存 接口逻辑106的工作。所述多用通路105连接所述总线接口逻辑102和所述闪存接口逻辑106,用来传送 闪存107读写所需的命令字、地址和数据。所述闪存接口逻辑106在主控逻辑104和/或多用通路105的控制下,产生对闪 存芯片107的操作时序,包括产生片选信号108。所述的功能寄存器组103包括片选寄存器201、潜伏命令寄存器202、数据计数寄 存器203。如图2所示,本实例中的寄存器位宽都为32位。所述片选寄存本文档来自技高网
...

【技术保护点】
一种NAND FLASH控制器,包括:总线接口逻辑(102)、功能寄存器组(103)、主控逻辑(104)、多用通路(105)和闪存接口逻辑(106),其特征在于,所述总线接口逻辑(102)用于将NAND FLASH控制器通过系统总线(109)连接到微处理器系统(301),使NAND FLASH控制器能够与微处理器系统(301)进行通讯;所述功能寄存器组(103)通过总线接口逻辑(102)接收并存储微处理器系统(301)发送来的控制参数,用于提供给主控逻辑(104)来控制闪存芯片的工作;所述多用通路(105)用于连接所述总线接口逻辑(102)和所述闪存接口逻辑(106),以使微处理器系统(301)能够与所述闪存芯片直接进行命令字、地址和数据的传送;所述闪存接口逻辑(106)与闪存芯片连接,根据主控逻辑(104)和/或多用通路(105)发送的信息产生对闪存芯片的操作时序,实现对闪存芯片的操作。

【技术特征摘要】
一种NAND FLASH控制器,包括总线接口逻辑(102)、功能寄存器组(103)、主控逻辑(104)、多用通路(105)和闪存接口逻辑(106),其特征在于,所述总线接口逻辑(102)用于将NAND FLASH控制器通过系统总线(109)连接到微处理器系统(301),使NAND FLASH控制器能够与微处理器系统(301)进行通讯;所述功能寄存器组(103)通过总线接口逻辑(102)接收并存储微处理器系统(301)发送来的控制参数,用于提供给主控逻辑(104)来控制闪存芯片的工作;所述多用通路(105)用于连接所述总线接口逻辑(102)和所述闪存接口逻辑(106),以使微处理器系统(301)能够与所述闪存芯片直接进行命令字、地址和数据的传送;所述闪存接口逻辑(106)与闪存芯片连接,根据主控逻辑(104)和/或多用通路(105)发送的信息产生对闪存芯片的操作时序,实现对闪存芯片的操作。2.根据权利要求1所述的一种NANDFLASH控制器,其特征在于,所述控制参数包括片 选值,用于指示当前被选中的闪存芯片,主控逻辑(104)根据该片选值,通过闪存接口逻辑 (106)选中相应的闪存芯片(107),其中,该片选值存储于所述功能寄存器组(103)的片选 寄存器中。3.根据权利要求1或2所述的一种NANDFLASH控制器,其特征在于,所述控制参数还 包括发送到闪存芯片的命令字二和用于记录传入到闪存的数据量的计数值,其中,该命令 字二由所述主控逻辑(104)在本次写操作的数据传送完成之后发送给闪存,用于启动所述 闪存芯片开始工作;该计数值用于预设将传入到闪存的数据量,每传输一个字节,该计数值 自动减一,直到减为零即数据传送数量达到预设的字节数,其中,所述命令字二和计数值分 别存储于所述功能寄存器组(103)的潜伏命令寄存器和数据计数寄存器中。4.根据权利要求1-3之一所述的一种NANDFLASH控制器,其特征在于,所述的主控逻 辑(104)包括中断生成器(1041),该中断生成器(1041)根据闪存(107)的忙闲信号来产生 中断信号,用于通知微处理器系统(301)闪存芯片已进入就绪状态,可以进行后续操作。5.根据权利要求1-4之一所述的一种NANDFLASH控制器,其特征在于,所述的微处理 器系统(301)包括微处理器(302)、RAM(304)和直接内存访问控制器(303)。6.根据权利要求5所述的一种NANDFLASH控制器,其特征在于,所述的命令、地址和数 据均由微处理器(302)来执行发送或接收,微处理器(302)通过总线接口逻辑(109),经由 多用通路(105)和闪存接口逻辑(106)与闪存芯片(107)进行交互。7.根据权利要求5所述的一种NANDFLASH控制器,其特征在于,所述的命令、地址由微 处理器(302)发送,而数据由直接内存访问控制器(303)来传送。8.根据权利要求1-7之一所述的一种NANDFLASH控制器,其特征在于,执行闪存芯片 写入操作时,通过使用所述潜伏...

【专利技术属性】
技术研发人员:刘景宁冯丹童薇王柳峥申风有胡洋秦亦
申请(专利权)人:华中科技大学
类型:发明
国别省市:83[中国|武汉]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1