基于XCR3032的大容量FLASH存储器接口设计

发布者:WhisperingWave最新更新时间:2012-02-01 来源: dzsc关键字:XCR3032  FLASH存储器  K9K1G08U0M  Verilog  HDL 手机看文章 扫描二维码
随时随地手机看文章

  FLASH存储器(FLASH Memory)是非易失存储器,即使在供电电源关闭后仍然能保留信 息, 可以对存储器单元块进行擦除和再编程,并且不需要额外的编程电压。FLASH存储器具有工 作电压低、擦写速度快、功耗低、寿命长、价格低廉、控制方法灵活、体积小等优点。近年 来,FLASH存储器在嵌入式系统代码存储和大容量数据存储领域中得到了广泛的应用。本文 介绍了使用XCR3032实现K9K1G08U0M与微控制器的接口原理,给出了VerilogHD L实现程序。对大容量FLASH存储器的接口设计具有一定的参考价值。

  1XCR3032

  XCR3032是Xilinx公司生产的CoolRunner XPLA3系列CPLD。他具有如下特点:

  低功耗供电电压仅为2.7~3.6 V。他采用Fast Zero PowerTM( FZP)技术,使得器件的静态电流非常低(小于100 μA);频率为10 MHz时,工作电流仅为1 06mA,比其他公司的CPLD小50%~67%。

  高性能具有32个宏单元,器件所有信号具有等延时,与路径无关,t PD最快可达5 ns。最高运行时钟频率可达200 MHz,多时钟资源使得设计更加方便 。

  总线接口友好特别适合应用于3.3 V系统中,可无需外接上拉电阻而与5 V器件直接接口。

  具有Port Enable管脚使得JTAG管脚具有在系统可编程接口和通用I/O口 2种功能。芯片不处于编程状态时,仍可用作一般I/O口。

  快速ISP编程可达至少1万次的编程擦除次数。

  XCR3032最显著的特点是低功耗和高速度。特别适用于手持、移动等功耗比较低的系统中。 如PDA、笔记本电脑、移动电话等领域。

  2K9K1G08U0M

  K9K1G08U0M是韩国三星(Samsung)公司采用NAND技术生产的128 MB大容量、高可靠、非 易 失性FLASH存储器,具有高密度、高性能的特点。该器件所提供的片内控制器、状态寄存器 和专用命令集使其可以灵活地运用在各种存储系统电路中。他的最大优点是8位I/O端口是地 址、数据和命令的多路复用,这样不但大大减少了芯片的引脚数,而且简化了系统的连线, 便于系统以后扩充芯片容量而不需改变系统板结构设计。

  K9K1G08U0M对于诸如文件存储、声 音和音频信号处理、智能仪器设备等要求大容量非易失性存储的应用场合提供了一种极佳的 解决方案。他的典型特性如下:

  (1)工作电压:2.7~3.6 V

  (2)自动编程和擦除

  页编程:(512+16)B
  块擦除:(16 k+512)B
  (3)可进行528 B/页读操作

  随机访问:12μs(最大值)
  页面连续访问:50μs(最小值)
  (4)快速写周期时间

  编程时间:200μs(典型值)
  块擦除时间:2 ms(典型值)
  (5)硬件数据保护

  在电源电压VCC<2 V时,内部电压探测器禁止编程/擦除操作。

  使用寿命达100 k次编程、擦除,数据可保存达10年,48脚TSOP封装。K9K1G08U0M的功能组成框图如图1所示。他与控制器的接口信号除8个I/O线外, 还包括地址锁存使能ALE,命令锁存使能CLE,片选信号CE,读使能信号RE ,写I/O信号WE,写保护WP控制线,操作状态指示信号 R/B等控制线,因此主控制器可以方便地实现对他的控制。K9K1G08U0M的地址、数据和命令信号输入都使用8位的I/O口,当CE为低 时,命令、地址和数据在WE变低时由I/O写入,并在WE的上升沿锁 存。通过命令锁存信号CLE和地址锁存信号ALE可实现命令和地址对I/O的复用。K9K1G 08U0M的引脚特性及常用命令见参考文献[4]。

  3接口方法

  K9K1G08U0M与微控制器常规接口方法是使用专用的口线模拟ALE,CLE并在CE,RE,的时序配合下完成所有的命令。这种方法的缺点是占用微控制器宝贵的 硬件资源,并要求软件严格控制他们之间的时序,增加了程序运行时间和软件复杂度,降低 了程序的运行效率。而且对于使用5 V电源的微控制器,由于K9K1G08U0M电源电压是3 V,所 以他们之间的接口还存在逻辑电平转换的问题。

  本文提出的方法使用1片XCR3032 CPLD就可以完美地解决上述问题,高效地完成K9K1G08U 0 M的全部功能,而无需占用额外的口线,微控制器只需以固定的地址向XCR3032寻址,通过XC R3032产生的输出信号实现对K9K1G08U0M的控制。XCR3032有如下作用:

  (1)对微控制器送出的最低4位地址信息进行译码。

  (2)分析地址总线的命令并根据命令内容提供K9K1G08U0M的相应接口信号。

  (3)监控K9K1G08U0M的R/B的输出。

  综上所述,利用XCR3032实现的K9K1G08U0M与微控制器接口电路如图2所示。

 

  根据K9K1G08U0M的接口时序要求,XCR3032要根据微控制器最低4位地址线解码出K9K1G08U0 M相对应的操作。XCR3032的输出信号状态取决于微控制器输入的地址信息。假设XCR3032的 基地址是B,不同的输入地址值所对应的输出操作和基本功能如表1所示。

  当微控制器送出地址是B+0需要读取K9K1G08U0M数据、状态和ID时候RD信号置0 。当微控制器送出地址是B+0并且要求写数据地址或者微控制器送出地址是B+1要求写命令时 应置0。

  4Verilog-HDL语言的实现

  经过上述分析可知,输入XCR3032的信号有微控制器读写信号WRIte, READ ,地址总线低4位address[3:0],
  
  使用Verilog语言设计组合逻辑和时序 逻辑具有很高的效率。由于篇幅所限,相关变量的声明在此略去,部分Verilog-HDL 代码如下:
  
  
  

  5结语

  完整程序经过Xilinx Project Navigator 6.1编译、调试、仿真,利用并口下载电缆通 过 JTAG接口下载到XCR3032中后,使用C8051F021单片机进行接口实验,证明使用该接口方法K9 K1G08U0M的各项功能和命令均可实现。现已成功应用于国家“863”计划项目“海洋生态环 境自动监测技术”中。

关键字:XCR3032  FLASH存储器  K9K1G08U0M  Verilog  HDL 引用地址:基于XCR3032的大容量FLASH存储器接口设计

上一篇:HDMI接口的噪声抑制方法
下一篇:基于DSP Builder的VGA接口设计

推荐阅读最新更新时间:2024-05-02 21:52

SyncFlash存储器在ARM嵌入式系统中的应用
随着嵌入式处理器的迅速发展,32位RISC处理器的应用越来越广泛,许多基于ARM核的微处理器都集成了SDRAM控制器。应用系统中一般都是采用SDRAM存储器作内存、NOR Flash作程序存储器。这种应用存在着缺点,而本文介绍的采用SyncFlash(即同步Flash存储器)设计嵌入系统的方法能很好地克服这些不足。 SyncFlash存储器 在嵌入式应用系统中用作程序存储器的器件一般是EPROM、NOR Flash、EEPROM等。大家都比较熟悉Flash 存储器,应用也很多,而SyncFlash存储器相对较陌生,目前应用也较少。SyncFlash存储器就是在NOR Flash的基础上增加了同步接口(所有信号均在时钟上升沿锁存
[单片机]
Sync<font color='red'>Flash存储器</font>在ARM嵌入式系统中的应用
关于Verilog简易UART的FPGA/CPLD实现
测试 平台:MACHXO640   可编程语言:Verilog   随机测试:是   波特率:9600   误码率: 1%oooooo   目标:在xo640上实现一个简单的 UART ,能够解析 串口 数据,并在 寄存器 中存储,用FIFO实现数据的传递。那么后期可以通过 开发板 上的 串口 经 CPLD 访问各种数据。比如PC=C PLD =E EPROM 等等,极大方便后期的开发和调试。   下面介绍一下重点:   1、Speed波特率及采样设置   这里的原理是:根据实际的波特率和 板卡 所使用的 晶振 频率,在容许的误差范围内(串口有一定的容错率)进行分频。这里强调一点,做法可以分为以下两类:分频与不分频。
[嵌入式]
基于XCR3032的大容量FLASH存储器接口设计
  FLASH存储器(FLASH Memory)是非易失存储器,即使在供电电源关闭后仍然能保留信 息, 可以对存储器单元块进行擦除和再编程,并且不需要额外的编程电压。FLASH存储器具有工 作电压低、擦写速度快、功耗低、寿命长、价格低廉、控制方法灵活、体积小等优点。近年 来,FLASH存储器在嵌入式系统代码存储和大容量数据存储领域中得到了广泛的应用。本文 介绍了使用XCR3032实现K9K1G08U0M与微控制器的接口原理,给出了VerilogHD L实现程序。对大容量FLASH存储器的接口设计具有一定的参考价值。   1XCR3032   XCR3032是Xilinx公司生产的CoolRunner XPLA3系列CPLD
[嵌入式]
基于Verilog HDL的I2C总线分析器
  1 引言   在医疗保健、临床医学和医疗救护中,血氧、心电、血压、呼吸、脑电波等生理信号都是非常重要的指标。针对临床应用,已经报道了将血氧、血压等检测应用于咽喉、食管等体内循环 ,提高了准确性和及时性 ,这种方法正处在研究阶段,I 2C总线分析仪可以扩展医疗监测仪实现包括体外循环的多种方法同时检测和比较。现在医疗仪器短缺,一台带 I 2C扩展接口的监测仪可实现多人同时使用,资源得到有效利用。可见,实时、准确记录各项人体基本体征参数,同时具有便携式特点的医疗监测仪对健康监护、检测技术和医学研究具有重大意义。如何扩展医疗检测仪的功能成为热点问题。   目前扩展检测仪接口的方法很多,多通道是最常用的方法,具有数据通道相对独立
[嵌入式]
基于FPGA的数字闭环光纤陀螺仪模拟表头设计
光纤陀螺是激光陀螺的一种,是惯性技术和光电子技术紧密结合的产物。它利用Sagnac干涉效应,用光纤构成环形光路,并检测出随光纤环的转动而产生的两路超辐射光束之间的相位差,由此计算出光纤环旋转的角速度。光纤陀螺仪主要由两个部分组成。伺服于表头的调制解调电路根据输入的电信号,经过相应的变换后形成反馈信号送至表头的相位调制器中。在实际的应用过程中,相应的调制解调电路应该根据温度、振动等情况做出相应的改变,才能最大限度地保证陀螺的精度要求。本文设计了一种基于FPGA的测试系统,模拟光纤陀螺仪的表头,并检测调制解调电路的性能。 模拟表头的基本原理及结构 表头的主要功能是将Sagnac效应产生的光程差所引起的相位变化通过回路耦合器转换为
[嵌入式]
异步与同步清零Verilog hdl表达程序
带异步清0、异步置1 的D 触发器 module DFF1(q,qn,d,clk,set,reset); input d,clk,set,reset; output q,qn; reg q,qn; always @(posedge clk or negedge set or negedge reset) begin if (!reset) begin q = 0; //异步清0,低电平有效 qn = 1; end else if (!set) begin q = 1; //异步置1,低电平有效 qn = 0; end else begin q = d; qn = ~d; end end endmodule 带同步清0、同步置1
[单片机]
小广播
热门活动
换一批
更多
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

更多精选电路图
换一换 更多 相关热搜器件
更多每日新闻
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved