CN102122271A - 一种nand闪存控制器及其控制方法 - Google Patents

一种nand闪存控制器及其控制方法 Download PDF

Info

Publication number
CN102122271A
CN102122271A CN 201110048659 CN201110048659A CN102122271A CN 102122271 A CN102122271 A CN 102122271A CN 201110048659 CN201110048659 CN 201110048659 CN 201110048659 A CN201110048659 A CN 201110048659A CN 102122271 A CN102122271 A CN 102122271A
Authority
CN
China
Prior art keywords
flash memory
nand flash
register
address
write
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN 201110048659
Other languages
English (en)
Other versions
CN102122271B (zh
Inventor
聂火勇
钟思琦
刘旭君
周晓
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhuzhou CRRC Times Electric Co Ltd
Hunan CRRC Times Signal and Communication Co Ltd
Original Assignee
Zhuzhou CSR Times Electric Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhuzhou CSR Times Electric Co Ltd filed Critical Zhuzhou CSR Times Electric Co Ltd
Priority to CN 201110048659 priority Critical patent/CN102122271B/zh
Publication of CN102122271A publication Critical patent/CN102122271A/zh
Application granted granted Critical
Publication of CN102122271B publication Critical patent/CN102122271B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Read Only Memory (AREA)

Abstract

本发明公开了一种NAND闪存控制器及其控制方法,处理器总线接口时序发生器与处理器相连,接收处理器信息,对NAND闪存控制器中的寄存器进行初始化控制;命令锁存寄存器选择闪存芯片中的命令寄存器;地址寄存器选择闪存芯片中的地址寄存器;片选寄存器选择闪存芯片的工作或待机模式;读/写寄存器向闪存芯片中的寄存器写入命令/地址/数据信息;地址/数据寄存器为处理器和闪存芯片的数据/地址交换进行缓冲;忙状态寄存器指示闪存芯片当前工作状态;NAND闪存接口时序发生器实时检测NAND闪存控制器中寄存器的状态,向闪存芯片输出时序波形。本发明技术方案提高了时序的精确性和实时性、降低了CPU负荷,提高了可靠性。

Description

一种NAND闪存控制器及其控制方法
技术领域
本发明涉及一种嵌入式装置及其控制方法,尤其是涉及一种应用于嵌入式实时操作系统下,如QNX操作系统(一种多任务、多用户的分布式实时操作系统),以实现NAND闪存(NAND型闪存)控制器功能的一种控制器及其控制方法。
背景技术
目前,大多数嵌入式产品应用需要大容量、高密度的存储器,如机车录音监听、机车视频监控系统等。而在各种存储器中,主要有NOR型和NAND型两种非易失闪存技术的闪存(FLASH)。两者区别很大,NOR型闪存有独立的地址线和数据线,能够在芯片内执行应用程序,不必再把代码读到系统RAM中,NOR型闪存的效率很高,但价格比较贵,容量比较小;NAND型闪存更像硬盘,采用地址线和数据线是共用的I/O线,增加了NAND型闪存与CPU控制器接口的复杂度。再者,NAND型闪存操作速度、频率就比CPU低得多。因此,高速CPU访问相对低速的NAND型闪存就存在两者快慢速度不匹配的瓶颈问题。因此CPU处理器需要专用的NAND闪存控制器来进行存储设备数据交换。但在大多数通用高速CPU中,一般是不具有NAND型闪存控制器,因此在嵌入式产品开发中NAND型闪存存储器的应用将受到限制,加大了嵌入式存储设备的开发难度,延长了开发周期。
现有技术中有由福州瑞芯微电子有限公司于2007年10月08日申请,并于2008年04月16日公开,公开号为CN101162449的中国发明专利NAND FLASH控制器及其与NAND FLASH芯片的数据交互方法具体涉及一种NAND FLASH控制器,包括:命令和地址数据传输通道,连接所述总线时序接口和所述通道选择器,用于传输命令和地址数据;数据缓冲区,用于接收系统总线通过述总线时序接口传送的信息数据;控制寄存器,用于接收系统总线通过述总线时序接口配置的工作参数;逻辑控制器,用于依据工作参数在数据缓冲区写入或读取数据信息;通道选择器,用于依据工作参数接通DMA数据传输通道或命令和地址数据传输通道,将传输通道的数据传送至FLASH时序发生器。同时,该现有技术还公开了NAND FLASH控制器与NAND FLASH芯片数据交互方法。但该发明技术方案存在编码/解码复杂,CPU资源占用率高,通用平台移植性差等缺点。
发明内容
本发明所要解决的技术问题是针对无NAND闪存(NAND FLASH)控制器的通用CPU处理器在应用NAND型FLASH存储器时,存在接口总线复杂,CPU控制读写速度不匹配等技术缺陷,提供一种NAND闪存控制器及其控制方法,提高了时序精确性和实时性、同时降低了CPU负荷,保证了系统的可靠性。
本发明具体提供了一种NAND闪存控制器的实施方式,一种NAND闪存控制器,包括:处理器总线接口时序发生器、命令锁存寄存器、地址寄存器、片选寄存器、读/写寄存器、地址/数据寄存器、忙状态寄存器、NAND闪存接口时序发生器,
处理器总线接口时序发生器与处理器相连,接收处理器的信息,对NAND闪存控制器中的寄存器进行初始化控制;
命令锁存寄存器连接于处理器总线接口时序发生器和NAND闪存接口时序发生器之间,用于选择NAND闪存芯片中的命令寄存器;
地址寄存器连接于处理器总线接口时序发生器和NAND闪存接口时序发生器之间,用于选择NAND闪存芯片中的地址寄存器;
片选寄存器连接于处理器总线接口时序发生器和NAND闪存接口时序发生器之间,用于选择NAND闪存芯片的工作模式或待机模式;
读/写寄存器连接于处理器总线接口时序发生器和NAND闪存接口时序发生器之间,用于向NAND闪存芯片中的寄存器分别写入命令或地址或数据信息;
地址/数据寄存器连接于处理器总线接口时序发生器和NAND闪存接口时序发生器之间,为处理器和NAND闪存芯片的数据或地址交换进行缓冲;
忙状态寄存器连接于处理器总线接口时序发生器和NAND闪存接口时序发生器之间,指示NAND闪存芯片当前的工作状态;
NAND闪存时序发生器为最终连接NAND闪存芯片的接口,用于实时检测NAND闪存控制器中寄存器的状态,向NAND闪存芯片的物理引脚输出时序波形。
作为本发明一种NAND闪存控制器进一步的实施方式,NAND闪存控制器基于现场可编程逻辑门阵列FPGA进行设计;处理器运行基于QNX的操作系统,处理器通过QNX驱动管理NAND闪存控制器中的寄存器。
作为本发明一种NAND闪存控制器进一步的实施方式,处理器总线接口时序发生器通过地址总线、数据总线和控制总线与处理器相连, NAND闪存接口时序发生器通过地址/数据总线和数据总线与NAND闪存芯片相连。
作为本发明一种NAND闪存控制器进一步的实施方式,NAND闪存芯片数据宽度为8位;命令锁存寄存器命令锁存使能时,数据线上的命令在写上升沿时被锁存至命令锁存寄存器;地址寄存器地址锁存使能时,数据线上的地址在写上升沿时被锁存至地址寄存器;片选寄存器进行编程或者擦除操作时,忽略片选信号。
作为本发明一种NAND闪存控制器进一步的实施方式,地址/数据寄存器采用双向8位复用总线,在读写信号的配合下,用于向NAND闪存芯片中的寄存器分别发送数据或命令或地址信息,并通过双向8位复用总线读取NAND闪存芯片的相关数据。
本发明还提供一种NAND闪存控制方法的具体实施方式,一种对NAND闪存控制器进行控制的方法,包括处理器驱动控制步骤、NAND闪存控制器控制步骤和时序产生步骤,
处理器驱动控制步骤基于QNX操作系统下NAND闪存设备实现高可靠性文件系统ETFS的NAND闪存驱动,NAND闪存驱动包括对NAND闪存芯片的读、写、擦除、校验、复位、状态操作的全部动作;
NAND闪存控制器控制步骤是在可编程的FPGA中实现处理器接口时序和NAND闪存控制器各种操作寄存器控制信号的产生;
时序产生步骤完成NAND闪存芯片最终目标时序的产生。
作为本发明一种NAND闪存控制方法进一步的实施方式,NAND闪存控制方法包括QNX操作系统下驱动读操作读时序产生步骤,该步骤包括以下过程:
开始先写片选寄存器,产生片选信号,指示对NAND闪存芯片操作的开始;写命令锁存寄存器,产生命令开始信号;写地址/数据寄存器,向NAND闪存芯片发送读操作命令字;写命令锁存寄存器,结束当前命令传送;写地址寄存器,产生地址开始信号;向地址/数据寄存器写入需要对NAND闪存芯片进行操作的地址;写地址寄存器,产生地址结束信号;写命令锁存寄存器,产生命令开始信号;写地址/数据寄存器,向NAND闪存芯片发送读操作命令;写命令锁存寄存器,结束命令传送;通过读/写寄存器产生读信号,在信号有效期内读地址/数据寄存器中数据总线的数据;写片选寄存器,产生结束NAND闪存芯片的操作。
作为本发明一种NAND闪存控制方法进一步的实施方式,NAND闪存控制方法包括QNX操作系统下驱动写操作写时序产生步骤,该步骤包括以下过程:
开始先写片选寄存器,产生片选信号,指示对NAND闪存芯片操作的开始;写命令锁存寄存器,产生命令开始信号;写地址/数据寄存器,向NAND闪存芯片发送读操作命令字;写命令锁存寄存器,结束当前命令传送;写地址寄存器,产生地址开始信号;向地址/数据寄存器写入需要对NAND闪存芯片进行操作的地址;写地址寄存器,产生地址结束信号;通过读/写寄存器产生写信号,在信号有效期内往地址/数据寄存器中写入数据;写命令锁存寄存器,产生命令开始信号;写地址/数据寄存器,向NAND闪存芯片发送写操作命令;写命令锁存寄存器,结束命令传送;写片选寄存器,产生结束NAND闪存芯片的操作。
作为本发明一种NAND闪存控制方法进一步的实施方式,在通过驱动读操作读时序产生步骤和/或驱动写操作写时序产生步骤,正确完成产生所需的读写时序后,再对NAND闪存芯片进行读或写操作时,驱动中会开辟一缓冲区,缓冲区的结构分为主缓冲区和辅缓冲区两部分,主缓冲区用于暂存写入或读出的数据;辅缓冲区用于记录NAND闪存芯片上主存储区中的状态信息。
作为本发明一种NAND闪存控制方法进一步的实施方式,在第一次驱动需要完成对NAND闪存芯片所有存储块的扫描,通过快速读取块校验区的状态信息,填入ETFS文件系统的结构体中,完成对NAND闪存芯片的文件系统建立,从而实现应用程序对NAND闪存芯片的拷贝、格式化高级操作。
本发明相对于目前的扩展NAND闪存控制器应用技术,有如下突出的技术效果:本发明所描述的技术方案通过QNX操作系统中的NAND闪存驱动对FPGA上的NAND闪存寄存器进行控制和管理,很灵活方便与各种NAND闪存匹配,同时与闪存采用同步数据交换,提高CPU处理器对NAND闪存设备操作的可靠性;通过对FPGA内设的寄存器状态实时产生时序来驱动NAND闪存芯片,提高了时序精确性和实时性,降低了CPU负荷,提高了系统的可靠性,同时FPGA无延时输出,确保了NAND闪存时序的准确性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一种NAND闪存控制器的系统连接示意图;
图2是本发明一种NAND闪存控制器的内部结构组成框图;
图3是本发明一种NAND闪存控制方法具体应用于QNX操作系统下的驱动读操作的读时序产生程序流程图;
图4是本发明一种NAND闪存控制方法具体应用于QNX操作系统下的驱动写操作的写时序产生程序流程图;
图5是本发明一种NAND闪存控制方法具体应用于QNX操作系统下的数据缓冲结构示意图。
其中:1-处理器,2-NAND闪存控制器,3-NAND闪存芯片,4-处理器总线接口时序发生器,5-命令锁存寄存器,6-地址寄存器,7-片选寄存器,8-读/写寄存器,9-地址/数据寄存器,10-忙状态寄存器,11- NAND闪存接口时序发生器。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
作为本发明一种NAND闪存控制器及其控制方法的具体实施方式,本发明的实施方式以QNX操作系统为例,描述了一种基于QNX操作系统之下的NAND闪存控制器及其控制方法的技术实现方案。QNX操作系统是由加拿大QSSL公司(QNX Software System Ltd)开发的一种多任务、多用户的分布式实时操作系统,同时是一种商用的类Unix实时操作系统,主要应用于嵌入式系统。该操作系统既能运行于以Intel X86、Pentium等CPU为核心硬件环境下,也能运行于以PowerPC、MIPS等CPU为核心的硬件环境。QNX操作系统符合POSIX基本标准和实时标准,使其应用可以方便的进行移植。QNX操作系统广泛应用于音乐、媒体、数码消费系统,同时也可用于一些高安全要求级别的军用系统。
作为本发明一种NAND闪存控制器的具体实施方式,本发明所描述的NAND闪存控制器根据NAND闪存芯片的特性,在FPGA上设置了命令锁存寄存器5、地址寄存器6、片选寄存器7、读/写寄存器8、地址/数据寄存器9、忙状态寄存器10。并由处理器1中的QNX驱动管理FPGA上的寄存器。FPGA根据其寄存器的值来产生实际与NAND闪存芯片3的接口时序。在NAND闪存芯片3中,也包括有与FPGA上相对应的各种寄存器。
如图1所示的是基于QNX操作系统的NAND闪存控制器的系统连接示意图,整个系统包括处理器1(CPU),NAND闪存控制器2和NAND闪存芯片3。其中,NAND闪存控制器2包括处理器接口和NAND闪存接口,NAND闪存控制器2基于FPGA(现场可编程逻辑门阵列,Field Programmable Gate Array)设计,大大提高了电路的处理和响应速度,有效地保证了时序的精确性和实时性,同时也减轻了处理器CPU的负荷。处理器1通过系统总线与NAND闪存控制器2的处理器接口相连,NAND闪存控制器2的NAND闪存接口通过NAND接口总线与NAND闪存芯片3相连,处理器接口与NAND闪存芯片接口相连。
NAND闪存控制器2基于FPGA进行设计,主要负责与处理器1的数据交换和最终NAND闪存芯片时序的产生以及NAND闪存芯片状态的反馈。
处理器总线接口时序发生器4与处理器1(CPU)相连,按照系统总线的时序要求,接收处理器1的信息,对FPGA中的寄存器进行初始化控制,同时可选8位、16位、32位的数据传输宽度。目前市场上NAND闪存芯片8位的数据宽度有非常好的性价比,因此本发明具体实施方式采用选用8位的NAND闪存芯片。
如图2所示是基于QNX操作系统的NAND闪存控制器的内部结构组成框图,基于QNX操作系统的NAND闪存控制器包括处理器总线接口时序发生器4、命令锁存寄存器5、地址寄存器6、片选寄存器7、读/写寄存器8、地址/数据寄存器9、忙状态寄存器10、NAND闪存接口时序发生器11。系统总线主要包括地址总线、控制总线和数据总线,NAND接口总线主要包括数据总线和地址/数据总线。下面对各个电路模块介绍如下:
命令锁存寄存器5,当为高电平有效时,命令锁存使能。用于选择NAND闪存芯片中的命令寄存器。高电平时,数据线上的命令在写上升沿时被锁存至命令锁存寄存器5。
地址寄存器6,当为高电平有效时,地址锁存使能。用于选择NAND闪存芯片中的地址寄存器。高电平时,数据线上的地址在写上升沿时被锁存至地址寄存器6。低电平信号使地址寄存器6复位。对于整个地址序列,该信号必须保持高电平。
片选寄存器7, 低电平有效产生片选。用于选择NAND闪存芯片的工作模式或待机模式。片选寄存器为0:选择工作模式。片选寄存器为1:如果当前没有操作,选择待机模式。如果正在进行编程或者擦除操作,忽略这一片选信号。
读/写寄存器8,当处理器1为写操作时,且寄存器为低电平有效写使能。用于向NAND闪存芯片中的寄存器分别写入命令/地址/数据信息。 数据线上的信息在写上升沿被锁存至相应的寄存器。
当处理器1为读操作时,且寄存器低电平有效读使能。用于NAND闪存芯片之间传送数据/状态信息。数据线上的信息在读上升沿时有效。
地址/数据寄存器9,该寄存器为处理器1和NAND闪存芯片3的数据/地址交换的缓冲。在读写信号的配合下,采用双向8位复用总线,用于向NAND闪存芯片的寄存器分别发送数据/命令/地址信息。还可以通过这些线读取NAND 闪存的相关数据。
忙状态寄存器10,NAND闪存芯片的输出,指示NAND闪存芯片当前的工作状态。当寄存器为0,NAND闪存芯片还在执行某一操作,忙;当寄存器为1,NAND闪存芯片准备接收下一命令。
NAND闪存时序发生器11为最终连接NAND闪存芯片3的接口,该时序发生器11实时检测上述NAND闪存控制器2中各寄存器的状态,向NAND闪存芯片3的物理引脚输出时序波形。该引脚的波形必须符合标准的NAND闪存数据交换时序规范。
本发明一种具体实施方式所描述的一种NAND闪存控制方法在基于QNX操作系统下的应用实例,包括CPU处理器中驱动控制部分和FPGA控制和时序产生部分:
CPU处理器中驱动控制部分,是基于QNX操作系统下,为嵌入式的固态存储设备,特别是NAND闪存设备实现的一种高可靠性文件系统的ETFS(Embedded transaction filesystem)文件系统的NAND闪存驱动,该驱动中包含了对NAND闪存的读、写、擦除、校验、复位、状态等操作的全部动作。NAND 闪存作为一个慢速的存储设备,驱动开辟了缓冲区来解决CPU处理器与存储器速度访问瓶颈问题。
FPGA控制和时序产生部分,是在可编程FPGA中实现CPU处理器接口时序、FLASH各种操作寄存器、及最终NAND闪存芯片目标时序的产生。
QNX操作系统下驱动读操作读时序产生图3,开始先写片选寄存器7(00H),产生低电平片选信号,指示对NAND闪存芯片3操作的开始;写命令锁存寄存器5(01H),产生高电平命令开始信号,写地址/数据寄存器9向NAND闪存芯片3发送00H读操作命令字,写命令锁存寄存器5(00H),产生低电平信号,结束当前命令传送;写地址寄存器6(01H),产生高电平地址开始信号,写地址/数据寄存器9需要对NAND闪存芯片3进行操作的地址,写地址寄存器6(00H),产生低电平地址结束信号;写命令锁存寄存器5(01H),产生高电平命令开始信号,写地址/数据寄存器9向NAND闪存芯片3发送30H读操作命令,写命令锁存寄存器5(00H),产生低电平信号,结束命令传送;通过读/写寄存器8产生读信号;在期有效信号内读地址/数据寄存器9中数据总线的数据;写片选寄存器7(01H),产生高电平结束对NAND闪存芯片3的操作。
QNX操作系统下驱动写操作写时序产生图4,开始先写片选寄存器7(00H),产生低电平片选信号,指示对NAND闪存芯片3操作的开始;写命令锁存寄存器5(01H),产生高电平命令开始信号,写地址/数据寄存器9向NAND闪存芯片3发送80H读操作命令字,写命令锁存寄存器5(00H),产生低电平信号,结束当前命令传送;写地址寄存器6(01H),产生高电平地址开始信号,写地址/数据寄存器9需要对NAND闪存芯片3进行操作的地址,写地址寄存器6(00H),产生低电平地址结束信号;通过读/写寄存器8产生写信号;在期有效信号内往地址/数据寄存器9中写入数据;写命令锁存寄存器5(01H),产生高电平命令开始信号,写地址/数据寄存器9向NAND闪存芯片3发送10H写操作命令,写命令锁存寄存器5(00H),产生低电平信号,结束命令传送;写片选寄存器7(01H),产生高电平结束对NAND闪存芯片3的操作。
通过上述操作,在完成产生所需正确的读写时序后,再对NAND 闪存进行读、写操作时,驱动中会开辟一缓冲区,其结构分为主缓冲区和辅缓冲区两部分,主缓冲区由4块512字节RAM区组成共2048字节区域,用于暂存写入或读出的数据。辅缓冲区由64字节组成,主要记录NAND闪存芯片上主存储区中的状态信息,如芯片ID、块大小、行列块地址、ECC校验页区和ECC校码结果,结构如图5所示。驱动第一次需要完成对闪存所有存储块的扫描,通过快速读取块校验区的状态信息,填入ETFS文件系统的结构体中,完成对NAND 闪存的文件系统的建立从而实现应用程序对NAND闪存拷贝、格式化等高级操作。
采用CPU处理器中驱动程序管理NAND闪存时序,首先,避免了CPU处理器与FPGA间大规模数据时,FPGA无须开辟数据交换缓冲FIFO区,降低了FPGA的对LUT门的需求,减少了成本;再次,在驱动中设置块缓冲区结构,CPU数据总线FPGA无延时解析输出到NAND闪存芯片数据总线上,从而保证了数据的同步。采用FPGA产生时序,保证时序的精确性、同时也减轻了CPU处理器扇出负荷。
本发明的实施方式具体描述了基于QNX操作系统下的NAND闪存控制器及其控制方法,在此QNX操作系统作为一种典型的多任务、多用户分布式的实时操作系统,该系统下的NAND闪存控制器及其控制方法的技术方案也可以轻易地移植到其他的嵌入式实时操作系统,在此不应看做是对本发明保护范围的一种限制。本发明要求保护的范围包括但不限于基于QNX操作系统下的NAND闪存控制器及其控制方法。同时,本发明的NAND闪存控制器虽然基于FPGA进行设计,但是也可以使用CPLD等其他可编程逻辑器件以及数字逻辑电路实现,在此也不应看做是对本发明保护范围的一种限制。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种NAND闪存控制器,其特征在于:包括处理器总线接口时序发生器(4)、命令锁存寄存器(5)、地址寄存器(6)、片选寄存器(7)、读/写寄存器(8)、地址/数据寄存器(9)、忙状态寄存器(10)、NAND闪存接口时序发生器(11),
处理器总线接口时序发生器(4)与处理器(1)相连,接收处理器(1)的信息,对NAND闪存控制器(2)中的寄存器进行初始化控制;
命令锁存寄存器(5)连接于处理器总线接口时序发生器(4)和NAND闪存接口时序发生器(11)之间,用于选择NAND闪存芯片(3)中的命令寄存器;
地址寄存器(6)连接于处理器总线接口时序发生器(4)和NAND闪存接口时序发生器(11)之间,用于选择NAND闪存芯片(3)中的地址寄存器;
片选寄存器(7)连接于处理器总线接口时序发生器(4)和NAND闪存接口时序发生器(11)之间,用于选择NAND闪存芯片(3)的工作模式或待机模式;
读/写寄存器(8)连接于处理器总线接口时序发生器(4)和NAND闪存接口时序发生器(11)之间,用于向NAND闪存芯片(3)中的寄存器分别写入命令或地址或数据信息;
地址/数据寄存器(9)连接于处理器总线接口时序发生器(4)和NAND闪存接口时序发生器(11)之间,为处理器(1)和NAND闪存芯片(3)的数据或地址交换进行缓冲;
忙状态寄存器(10)连接于处理器总线接口时序发生器(4)和NAND闪存接口时序发生器(11)之间,指示NAND闪存芯片(3)当前的工作状态;
NAND闪存时序发生器(11)为最终连接NAND闪存芯片(3)的接口,用于实时检测NAND闪存控制器(2)中寄存器的状态,向NAND闪存芯片(3)的物理引脚输出时序波形。
2.根据权利要求1所述的一种NAND闪存控制器,其特征在于:所述的NAND闪存控制器(2)基于现场可编程逻辑门阵列FPGA进行设计;所述的处理器(1)运行基于QNX的操作系统,处理器(1)通过QNX驱动管理NAND闪存控制器(2)中的寄存器。
3.根据权利要求1或2所述的一种NAND闪存控制器,其特征在于:所述的处理器总线接口时序发生器(4)通过地址总线、数据总线和控制总线与处理器(1)相连,所述的NAND闪存接口时序发生器(11)通过地址/数据总线和数据总线与NAND闪存芯片(3)相连。
4.根据权利要求3所述的一种NAND闪存控制器,其特征在于:所述的NAND闪存芯片(3)数据宽度为8位;命令锁存寄存器(5)命令锁存使能时,数据线上的命令在写上升沿时被锁存至命令锁存寄存器(5);地址寄存器(6)地址锁存使能时,数据线上的地址在写上升沿时被锁存至地址寄存器(6);片选寄存器(7)进行编程或者擦除操作时,忽略片选信号。
5.根据权利要求4所述的一种NAND闪存控制器,其特征在于:所述的地址/数据寄存器(9)采用双向8位复用总线,在读写信号的配合下,用于向NAND闪存芯片(3)中的寄存器分别发送数据或命令或地址信息,并通过双向8位复用总线读取NAND闪存芯片(3)的相关数据。
6.一种对权利要求1所述的NAND闪存控制器进行控制的方法,其特征在于:
包括处理器驱动控制步骤、NAND闪存控制器控制步骤和时序产生步骤,
所述的处理器驱动控制步骤基于QNX操作系统下NAND闪存设备实现高可靠性文件系统ETFS的NAND闪存驱动,NAND闪存驱动包括对NAND闪存芯片的读、写、擦除、校验、复位、状态操作的全部动作;
NAND闪存控制器控制步骤是在可编程的FPGA中实现处理器接口时序和NAND闪存控制器各种操作寄存器控制信号的产生;
时序产生步骤完成NAND闪存芯片最终目标时序的产生。
7.根据权利要求6所述的一种NAND闪存控制方法,其特征在于:所述的NAND闪存控制方法包括QNX操作系统下驱动读操作读时序产生步骤,该步骤包括以下过程:
开始先写片选寄存器(7),产生片选信号,指示对NAND闪存芯片(3)操作的开始;写命令锁存寄存器(5),产生命令开始信号;写地址/数据寄存器(9),向NAND闪存芯片(3)发送读操作命令字;写命令锁存寄存器(5),结束当前命令传送;写地址寄存器(6),产生地址开始信号;向地址/数据寄存器(9)写入需要对NAND闪存芯片(3)进行操作的地址;写地址寄存器(6),产生地址结束信号;写命令锁存寄存器(5),产生命令开始信号;写地址/数据寄存器(9),向NAND闪存芯片(3)发送读操作命令;写命令锁存寄存器(5),结束命令传送;通过读/写寄存器(8)产生读信号,在信号有效期内读地址/数据寄存器(9)中数据总线的数据;写片选寄存器(7),产生结束NAND闪存芯片(3)的操作。
8.根据权利要求7所述的一种NAND闪存控制方法,其特征在于:所述的NAND闪存控制方法包括QNX操作系统下驱动写操作写时序产生步骤,该步骤包括以下过程:
开始先写片选寄存器(7),产生片选信号,指示对NAND闪存芯片(3)操作的开始;写命令锁存寄存器(5),产生命令开始信号;写地址/数据寄存器(9),向NAND闪存芯片(3)发送读操作命令字;写命令锁存寄存器(5),结束当前命令传送;写地址寄存器(6),产生地址开始信号;向地址/数据寄存器(9)写入需要对NAND闪存芯片(3)进行操作的地址;写地址寄存器(6),产生地址结束信号;通过读/写寄存器(8)产生写信号,在信号有效期内往地址/数据寄存器(9)中写入数据;写命令锁存寄存器(5),产生命令开始信号;写地址/数据寄存器(9),向NAND闪存芯片(3)发送写操作命令;写命令锁存寄存器(5),结束命令传送;写片选寄存器(7),产生结束NAND闪存芯片(3)的操作。
9.根据权利要求7或8所述的一种NAND闪存控制方法,其特征在于:在通过驱动读操作读时序产生步骤和/或驱动写操作写时序产生步骤,正确完成产生所需的读写时序后,再对NAND闪存芯片(3)进行读或写操作时,驱动中会开辟一缓冲区,缓冲区的结构分为主缓冲区和辅缓冲区两部分,主缓冲区用于暂存写入或读出的数据;辅缓冲区用于记录NAND闪存芯片(3)上主存储区中的状态信息。
10.根据权利要求9所述的一种NAND闪存控制方法,其特征在于:在第一次驱动需要完成对NAND闪存芯片(3)所有存储块的扫描,通过快速读取块校验区的状态信息,填入ETFS文件系统的结构体中,完成对NAND闪存芯片(3)的文件系统建立,从而实现应用程序对NAND闪存芯片(3)的拷贝、格式化高级操作。
CN 201110048659 2011-03-01 2011-03-01 一种nand闪存控制器及其控制方法 Active CN102122271B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201110048659 CN102122271B (zh) 2011-03-01 2011-03-01 一种nand闪存控制器及其控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201110048659 CN102122271B (zh) 2011-03-01 2011-03-01 一种nand闪存控制器及其控制方法

Publications (2)

Publication Number Publication Date
CN102122271A true CN102122271A (zh) 2011-07-13
CN102122271B CN102122271B (zh) 2012-12-26

Family

ID=44250833

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201110048659 Active CN102122271B (zh) 2011-03-01 2011-03-01 一种nand闪存控制器及其控制方法

Country Status (1)

Country Link
CN (1) CN102122271B (zh)

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103123599A (zh) * 2011-11-17 2013-05-29 慧荣科技股份有限公司 具系统修复数据的内嵌式内存及其系统修复方法
CN103514067A (zh) * 2012-06-28 2014-01-15 鸿富锦精密工业(深圳)有限公司 内存条
CN103593312A (zh) * 2012-08-13 2014-02-19 炬力集成电路设计有限公司 一种时序控制方法及nand flash控制器
CN107870885A (zh) * 2017-11-28 2018-04-03 国网技术学院 通信系统、装置及方法
CN107977325A (zh) * 2016-10-24 2018-05-01 三星电子株式会社 存储器控制器、存储器系统和操作存储器控制器的方法
CN107991947A (zh) * 2017-12-29 2018-05-04 上海应用技术大学 一种基于fpga的电磁阀驱动及其控制方法
CN108052379A (zh) * 2017-12-07 2018-05-18 北京兆易创新科技股份有限公司 Spi-nand的多任务操作方法和装置
CN108091366A (zh) * 2017-12-29 2018-05-29 中国电子科技集团公司第五十八研究所 Flash读取电路和读取方法
CN108108564A (zh) * 2017-12-29 2018-06-01 安徽皖通邮电股份有限公司 一种提高系统启动速度的装置和方法
CN109144907A (zh) * 2017-06-27 2019-01-04 北京忆芯科技有限公司 实现快速读取的方法及介质接口控制器
CN109597654A (zh) * 2018-12-07 2019-04-09 湖南国科微电子股份有限公司 寄存器初始化方法、基础配置表的生成方法及嵌入式系统
CN109635401A (zh) * 2018-12-04 2019-04-16 中国航空工业集团公司西安航空计算技术研究所 一种动态可配置存储控制器设计方法
CN111008171A (zh) * 2019-11-25 2020-04-14 中国兵器工业集团第二一四研究所苏州研发中心 一种带串行flash接口控制的通信ip电路
CN112685330A (zh) * 2019-10-17 2021-04-20 合肥格易集成电路有限公司 一种Nand闪存
CN112687316A (zh) * 2019-10-17 2021-04-20 合肥格易集成电路有限公司 一种提高读写速度的方法、装置及nand闪存
CN113010236A (zh) * 2021-02-26 2021-06-22 山东英信计算机技术有限公司 一种程序执行方法、装置、设备及存储介质
CN113179216A (zh) * 2021-04-23 2021-07-27 北京物芯科技有限责任公司 一种寄存器的远程配置方法、计算机设备及存储介质
CN114882935A (zh) * 2022-04-22 2022-08-09 西北核技术研究所 一种nand闪存的辐射效应实时测试方法、系统及终端设备
CN115905100A (zh) * 2022-12-27 2023-04-04 南方电网调峰调频发电有限公司检修试验分公司 一种龙芯2k1000实现励磁系统与fpga数据交互的方法及装置
WO2024148862A1 (zh) * 2023-01-09 2024-07-18 苏州元脑智能科技有限公司 一种硬盘控制系统、方法及相关组件

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040054864A1 (en) * 2002-09-13 2004-03-18 Jameson Neil Andrew Memory controller
CN101958152A (zh) * 2010-10-19 2011-01-26 华中科技大学 一种nand flash控制器及其应用

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040054864A1 (en) * 2002-09-13 2004-03-18 Jameson Neil Andrew Memory controller
CN101958152A (zh) * 2010-10-19 2011-01-26 华中科技大学 一种nand flash控制器及其应用

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103123599A (zh) * 2011-11-17 2013-05-29 慧荣科技股份有限公司 具系统修复数据的内嵌式内存及其系统修复方法
CN103514067A (zh) * 2012-06-28 2014-01-15 鸿富锦精密工业(深圳)有限公司 内存条
CN103593312A (zh) * 2012-08-13 2014-02-19 炬力集成电路设计有限公司 一种时序控制方法及nand flash控制器
WO2014026572A1 (zh) * 2012-08-13 2014-02-20 炬力集成电路设计有限公司 一种时序控制方法及nand flash控制器
CN107977325A (zh) * 2016-10-24 2018-05-01 三星电子株式会社 存储器控制器、存储器系统和操作存储器控制器的方法
CN107977325B (zh) * 2016-10-24 2022-12-13 三星电子株式会社 存储器控制器、存储器系统和操作存储器控制器的方法
CN109144907B (zh) * 2017-06-27 2021-08-10 北京忆芯科技有限公司 实现快速读取的方法及介质接口控制器
CN109144907A (zh) * 2017-06-27 2019-01-04 北京忆芯科技有限公司 实现快速读取的方法及介质接口控制器
CN107870885A (zh) * 2017-11-28 2018-04-03 国网技术学院 通信系统、装置及方法
CN108052379A (zh) * 2017-12-07 2018-05-18 北京兆易创新科技股份有限公司 Spi-nand的多任务操作方法和装置
CN108052379B (zh) * 2017-12-07 2021-03-09 北京兆易创新科技股份有限公司 Spi-nand的多任务操作方法和装置
CN108091366B (zh) * 2017-12-29 2021-01-29 中国电子科技集团公司第五十八研究所 Flash读取电路和读取方法
CN108091366A (zh) * 2017-12-29 2018-05-29 中国电子科技集团公司第五十八研究所 Flash读取电路和读取方法
CN107991947A (zh) * 2017-12-29 2018-05-04 上海应用技术大学 一种基于fpga的电磁阀驱动及其控制方法
CN108108564A (zh) * 2017-12-29 2018-06-01 安徽皖通邮电股份有限公司 一种提高系统启动速度的装置和方法
CN109635401A (zh) * 2018-12-04 2019-04-16 中国航空工业集团公司西安航空计算技术研究所 一种动态可配置存储控制器设计方法
CN109597654A (zh) * 2018-12-07 2019-04-09 湖南国科微电子股份有限公司 寄存器初始化方法、基础配置表的生成方法及嵌入式系统
CN109597654B (zh) * 2018-12-07 2022-01-11 湖南国科微电子股份有限公司 寄存器初始化方法、基础配置表的生成方法及嵌入式系统
CN112685330A (zh) * 2019-10-17 2021-04-20 合肥格易集成电路有限公司 一种Nand闪存
CN112687316A (zh) * 2019-10-17 2021-04-20 合肥格易集成电路有限公司 一种提高读写速度的方法、装置及nand闪存
CN112685330B (zh) * 2019-10-17 2024-01-19 合肥格易集成电路有限公司 一种Nand闪存
CN111008171A (zh) * 2019-11-25 2020-04-14 中国兵器工业集团第二一四研究所苏州研发中心 一种带串行flash接口控制的通信ip电路
CN113010236A (zh) * 2021-02-26 2021-06-22 山东英信计算机技术有限公司 一种程序执行方法、装置、设备及存储介质
CN113010236B (zh) * 2021-02-26 2024-01-19 山东英信计算机技术有限公司 一种程序执行方法、装置、设备及存储介质
CN113179216A (zh) * 2021-04-23 2021-07-27 北京物芯科技有限责任公司 一种寄存器的远程配置方法、计算机设备及存储介质
CN113179216B (zh) * 2021-04-23 2023-05-02 北京物芯科技有限责任公司 一种寄存器的远程配置方法、计算机设备及存储介质
CN114882935A (zh) * 2022-04-22 2022-08-09 西北核技术研究所 一种nand闪存的辐射效应实时测试方法、系统及终端设备
CN114882935B (zh) * 2022-04-22 2024-08-16 西北核技术研究所 一种nand闪存的辐射效应实时测试方法、系统及终端设备
CN115905100A (zh) * 2022-12-27 2023-04-04 南方电网调峰调频发电有限公司检修试验分公司 一种龙芯2k1000实现励磁系统与fpga数据交互的方法及装置
CN115905100B (zh) * 2022-12-27 2023-08-18 南方电网调峰调频发电有限公司检修试验分公司 一种龙芯2k1000处理器实现励磁系统与fpga数据交互的方法及装置
WO2024148862A1 (zh) * 2023-01-09 2024-07-18 苏州元脑智能科技有限公司 一种硬盘控制系统、方法及相关组件

Also Published As

Publication number Publication date
CN102122271B (zh) 2012-12-26

Similar Documents

Publication Publication Date Title
CN102122271B (zh) 一种nand闪存控制器及其控制方法
CN101573760B (zh) 具有处于相同分级层级的易失性及非易失性存储器装置的存储器系统及方法
CN112035381B (zh) 一种存储系统及存储数据处理方法
US8069328B2 (en) Daisy chain cascade configuration recognition technique
CN101681323B (zh) 装置引导的存储器屏障
US7802061B2 (en) Command-based control of NAND flash memory
CN103034603A (zh) 多通道闪存卡控制装置及其控制方法
CN101978356A (zh) 用单独循环冗余码帧的有效带内可靠性
CN108268414A (zh) 基于spi模式的sd卡驱动器及其控制方法
CN106126465B (zh) 一种数据传输方法及装置
CN103970665A (zh) 一种模拟spi flash的fpga系统及调试方法
CN101436171A (zh) 模块化通信控制系统
CN101354657A (zh) 现场可编程门阵列的加载方法及加载电路
CN101515221A (zh) 一种读数据的方法、装置和系统
CN102622191A (zh) 一种高速海量存储板
CN102981801A (zh) 一种本地总线数据位宽的转换方法及装置
CN101350218B (zh) 一种虚拟多端口存储器及其存储和读取数据的方法
CN115756556A (zh) 一种基于图形处理器的bios更新方法
CN101261611A (zh) 一种外围设备间的数据传输装置和传输方法
US9298378B2 (en) Logic device
CN101866695B (zh) 一种NandflashU盘控制器读写Norflash存储器的方法
US11698747B2 (en) Pulse amplitude modulation (PAM) for multi-host support in a memory sub-system
CN101930406B (zh) 非易失性存储器的写入错误管理方法、存储卡、及控制器
CN100585627C (zh) 基于flash总线的sd卡控制电路及其读写方法
CN208077160U (zh) 基于spi模式的sd卡驱动器

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: 412001 Hunan Province, Zhuzhou Shifeng District Tian Xin era Road No. 169

Patentee after: ZHUZHOU CRRC TIMES ELECTRIC Co.,Ltd.

Address before: 412001 Hunan Province, Zhuzhou Shifeng District Tian Xin era Road No. 169

Patentee before: ZHUZHOU CSR TIMES ELECTRIC Co.,Ltd.

CP01 Change in the name or title of a patent holder
TR01 Transfer of patent right

Effective date of registration: 20170616

Address after: 21, building 7, building 410000, Renmin East Road, Changsha Economic Development Zone, Hunan

Patentee after: HUNAN CRRC TIMES SIGNAL & COMMUNICATION Co.,Ltd.

Address before: 412001 Hunan Province, Zhuzhou Shifeng District Tian Xin era Road No. 169

Patentee before: ZHUZHOU CRRC TIMES ELECTRIC Co.,Ltd.

TR01 Transfer of patent right