1 引言
在便携式电子产品如U盘、MP3播放器、数码相机中,常常需要大容量、高密度的存储器,而在各种存储器中,NAND FLASH以价格低、密度高、效率高等优势成为最理想的器件。但NAND FLASH的控制逻辑比较复杂,对时序要求也十分严格,而且最重要的是NAND FLASH中允许存在一定的坏块(坏块在使用过程中还可能增加),这就给判断坏块、给坏块做标记和擦除等操作带来很大的难度,于是就要求有一个控制器,使系统用户能够方便地使用NAND FLASH,为此提出了一种基于FPGA的NAND FLASH控制器的设计方法,并用VHDL给予实现,Modelsim得出仿真结果,并在ALTERA公司的EP2C35F672器件中得到验证。FPGA与NAND FLASH接口图如图1所示。
2 NAND FLASH操作
NAND FLASH器件的管脚分为控制信号、I/O二类,地址和数据是复用I/O管脚。通常NAND FLASH器件包括一定数目BLOCK,每个BLOCK包括一定数目的PAGE,每个NAND FLASH器件把BLOCK,PAGE按照行列地址进行寻址,基于这种特殊的结构,NAND FLASH有如下工作特性:
2.1 READ ID
NAND FLASH器件ID包括:Manufacture ID,device ID以及容量大小,这些重要的信息是判断NAND FLASH的重要凭证,因此将这些信息读出来加以判断就显得特别重要。在CLE为高,WE#上升沿,在I/O输入90H命令让NAND FLASH进入读ID状态,接着在ALE为高,WE#上升沿,在I/O输入00H地址,在等待tWHR将RE#置为读,在RE#连续4个上升沿将ID读出。仿真图如图2所示。
2.2 判断坏块
NAND FLASH作为一种特殊的储存器件,内部集成电路使得BLOCK与BLOCK是相互独立的,因此一定数目坏块的存在不会影响其他BLOCK。但坏块总数是有一定的限制的,超过一定的数目后器件将认为不能再使用。在出厂前厂家会在器件的每个BLOCK的第一页和第二页的列地址为2048标注上坏的信息,FFh代表此BLOCK是好,非FFh代表此BLOCK是坏。但是这些重要信息在执行Erase和Programming命令的时候会被擦除掉,因此,我们在做这些操作之前应该将坏块识别出来如图3所示,并加以标注或者用好的块来代替,以方便以后的访问。随着使用时间的推移,坏块的数目还会增加,因此我们必须随时更新坏块链表。坏块识别时序仿真图如图4所示。
3擦除操作
一般芯片进行PROGRAM/ERASE的次数是100 000 cycles,第一个BLOCK次数更多,一般可用于存放boot code或者重要的信息。由于擦除操作是以BLOCK为基准,也就是每执行一次擦除操作将会擦除指定的BLOCK,所以在执行擦除时必须注意共享区域里的重要信息如坏块标识、ECC校验等。以免被擦除掉,擦除掉了及时恢复,擦除操作仿真如图5所示。
4编程操作及其他操作
编程操作和擦除操作相似,只不过编程操作是以页为单位,在执行编程操作时同样也要注意共享区域里的重要信息以免被覆盖掉,重要信息被覆盖后要及时恢复。其他操作如复位还有有些芯片厂家各自新的操作等,但总体来说主流芯片都支持以上几种操作。
5 结 语
在实际应用中,使用ALTERA公司的Cyclone2 FP-GA器件进行设计,设计输入采用VHDL来完成,实现了上述的NAND FLASH控制器接口电路。此外,由于采用了通用性设计思想,可以对不同厂家不同的芯片进行控制和操作,具有一定的通用性。
关键字:擦除 管脚 执行 存放
引用地址:
基于FPGA的NAND FLASH控制器
推荐阅读最新更新时间:2024-05-02 20:37
MSP430F5529的IO口管脚的中断学习笔记
非常简单的一个程序,在F5529的开发板上用按键的IO中断控制LED的亮灭: #include int main(void) { WDTCTL = WDTPW + WDTHOLD; // Stop watchdog timer P1DIR |= BIT0; //将LED1对应的IO口P1.0设置为输出 P1OUT &= ~BIT0; //初始化该灯设置为灭 P1DIR &= ~BIT7; //将按键1对应的IO口P1.7设置为输入 P1IFG &= ~BIT7; //初始化清空中断标志位 P1IE |= BIT7; //P1.7中断使能 P1IES |= BIT7; //
[单片机]
用万用表测量判断结型场效应管的管脚、好坏、放大能力及主要参数方法
注:以下测量方法以指针式为例,若使用数字式万用表,注意红黑表笔与内电池的连接刚好相反。 1、用万用表测量判断结型场效应管的管脚(电极) 测试电路示意图如图1所示,由管子结构可知(可参考《 什么是结型场效应管,它的原理是什么 》一文),栅极g到漏极d与源极s之间为两个pn结。而漏、源极之间是对称结构,呈纯电阻性,即正反向电阻基本相等,根据这一特点用万用表便可很容易判断各电极(管脚)。方法是:在不知管型的情况下,首先确定漏、源极,再确定栅极。 图1 用万用表测试结型声效应管管脚(极性) 万用电表置r×1k档,然后反复测试管子的三个电极,只要其中两脚的正、反向测试电阻值相等,约为几千欧姆时,这两个极必定是漏、源极。当然为了验证还
[测试测量]
自动化和机器人技术中的执行器应用
什么是执行器?
那么,什么是执行器?
如果你快速进行百度搜索,你会发现很多不同的答案。分析响应得出一个共同的主题——执行器是一种使物体移动或操作的设备。
好吧……再深入一点,我们发现执行器接收能量源并用它来移动物体。换句话说,执行器将能量源转换为物理运动。
执行器使用 3 种能源来产生物理机械运动。
–气动执行器由压缩空气操作。
–液压执行器使用各种液体作为能源。
–电动执行器使用某种形式的电能进行操作。
执行器示例
让我们看一下执行器的一些典型示例。
气动执行器通过顶部接收气动。该气动信号对隔膜板施加压力。该压力将使阀杆向下移动,从而移
[机器人]
科技部严查863项目执行情况 方舟3号搁浅之谜
一项由科技部牵头的、专门对国家863重点项目完成情况进行严格审查的秘密行动正在开展,并已棋至中盘。 5月中旬,接近科技部的知情人士向本报透露,由于科技领域接连发现造假、挪用资金等现象,作为主管国家科技发展的最高决策部门,包括科技部部长徐冠华等均多次指示要严查科技领域的各种腐败行为。“‘863计划’是我国高技术研究发展的标杆,更是容不得沙子。”该人士表示。 随着调查的逐步深入,已在公众视野中消失了3年多的方舟科技(北京)有限公司(以下简称方舟科技),引起了科技部有关部门的注意。 方舟科技曾是中关村的明星。早在2001年7月,该公司即独立研发出国内首枚具有自主知识产权的32位实用化微处理器(CPU)芯片,被媒体称
[焦点新闻]
先进半导体委任袁以沛为非执行董事
电子网消息,先进半导体董事会在2017年8月7日举行的临时股东大会上宣布,关于选举袁以沛为第五届董事会非执行董事、蒋守雷为独立非执行董事,及张彦为第五届监事会股东代表监事,均获股东以投票表决方式通过。 另外,董事会一致同意委任袁以沛为第五届董事会审计及风险管理委员会及提名委员会成员,委任蒋守雷为第五届董事会审计及风险管理委员会、薪酬委员会及提名委员会成员,自2017年8月7日起生效。 此外,监事会一致同意委任张彦为第五届监事会主席,自2017年8月7日起生效。 截至2017年3月31日,先进半导体今年第一季度实现营业额约为2.22亿元人民币,较去年同期之1.47亿元增长约50.95%;公司普通股股东应占本期综合收益约为
[半导体设计/制造]
多核与多执行绪的嵌入式系统解决方案
在嵌入式装置中建置多核心(包含同质或异质)以及多执行绪技术,的确能带来诸多效益,尤其是改进系统效能方面最为明显。 尽管RISC嵌入式技术所面临的挑战越来越多,但是在维持以往嵌入式软件资源兼容性的前提之下,能够改善其未来适用性,并且有效提升新系统的效能表现,使其不失为良好的解决方案。 应用决定多核或多绪 多核心与多执行绪在效能表现上有其帮助,但是效能与这些技术的内建其实并没有绝对关系,会造成这样的原因主要是应用环境的需求。以手机为例,整合于手机内的SoC芯片虽然是属于多核心架构的一环,但是手机采用的SoC芯片多为应用处理器,其整合的核心并非完全属于同性质架构,同质多核心在嵌入式系统实际应用上的案例其实非常少。
[嵌入式]
小牛电动首席执行官:暂无造车计划,年产量有望增至200万
据报道,电动踏板车制造商小牛电动的首席执行官近日表示,小牛电动暂时没有造车计划。他称:“我们专注于市内出行。” 李彦表示,他的公司计划在中国的小城市扩建销售网络,会加快零售店铺设的步伐。目前,小牛电动主要在常州生产两轮电动车。他也表示,该公司也在扩大生产能力,从今年下半年开始,有望将年产量增加一倍至 200 万辆。 李彦指出,去年,小牛电动在全球一共售出 600892 辆两轮电动车,较 2019 年增长月 43%。中国市场贡献了 95% 的销售量,并且大部分销售量来自中国的前 20-30 大城市。 他还透露,该公司正在与东南亚共享乘车公司 Gojek 商量小牛电动踏板车的供应,以增加小牛电动在该地区的市场份额。 李彦
[嵌入式]
如何改进8051微控制器创建可执行高达33MIP的高性能直接替代品
本文介绍了达拉斯半导体如何改进传统的8051微控制器,创建可执行高达33MIP的高性能直接替代品。多个数据指针、扩展内存寻址(高达 16MB)和闪存等附加功能提高了设备的速度和实用性。 系统设计人员知道,微控制器是任何嵌入式系统的核心,而这正是行动发生的地方。ADI公司的全资子公司达拉斯半导体一直在重新定义无处不在的8051微控制器。也许过去10年中最大的改进是在指令执行速度方面。我们的 1 个机器周期时钟处理器达到了一个非凡的性能目标 — 每个机器周期 1 个时钟,目前为每秒 33 万条指令 (MIPS)。利用这一内核,我们的安全、联网和混合信号 8051 微控制器系列继续为功能集成和创新设定标准。 为什么基于古老的 8
[单片机]