基于PLD的嵌入式系统外存模块设计.doc_第1页
基于PLD的嵌入式系统外存模块设计.doc_第2页
基于PLD的嵌入式系统外存模块设计.doc_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于PLD的嵌入式系统外存模块设计 1存储器扩展方法解决方案 在对MCS96系列单片机的使用中发现64K字节的存储空间用来存放程序能满足绝大多数的使用需求(通常用户的应用程序不到10K字节)但如果使用其进行数据存储控制则会带来存储空间上的严重不足通过对实际应用的统计分析发现在很多情况下数据的 存取仅限于顺序的连续操作利用这个特点可以对数据存储空间进行简化设计具体的说就是通过对同一个地址连续读或者连续写来进行批量数据的存取从而节省地址空间在16位CPU中可以将任何一段64K字(2的16次方)的存储空间映射到两个地址(一个作为读取的位置一个作为写入的位置)采用这样的映射方法可以将内存最大扩展到2G字(2的31次方)但这样的设计同时也带来了诸多逻辑控制上的困难随着可编程逻辑器件(PLD)包括FPGA、EPLDE44、CPLD等的迅速发展数字逻辑电路的设计得到了大大简化从而使这种存储器扩展想法可以得到实现 2存储器扩展方法的具体实现 下面以笔者设计的系统为例来详细说明这种存储器扩展方法的实现该系统是一个多功能数据采集设备能够以最高40k次s的速率进行12位AD转换并且可以将采集到的数据保存至FlashROM中以防止掉电丢失技术参数要求如下:最多可以保存32K字节的采样数据;可以同时存储4段系统工作配置程序每段4K字节共计16K字节;由于FlashROM自身的特点在写人数据后的编程阶段不能进行读写操作因此为了保证系统采样和单片机运行的正常进行需要额外增加32K字节的RAM作为数据缓存;系统程序、中断服务程序等共占用56K字节(FlashROM和RAM各保留28K字节)总计需要存储空间136K字节这个需求已经超过96系列单片机的64K字节寻址范围为此设计了一个存储器模块其结构如图2所示图2FlashROM采用ATMEL公司的AT29C1024容量为128K字节数据线宽度为16位;RAM存储器由两片CY7C199组成数据线宽度为16位容量为64K字节80C196单片机的ALE为地址锁存信号WE为写有效信号RD为读有效信号READY为准备就绪信号MCS96系列单片机支持8位和16位两种工作模式为了提高系统的性能选择16位工作模式96系列单片机地址是按照字节的方式来计算的因此在16位工作模式下的A0=0没有实际意义在通常的读写情况下取经过锁存后的AD1AD15地址作为A1A15而A16=0 下面以读FlashROM为例介绍地址扩展方法对于可以直接寻址的地址EPLD作为锁存器将AD0AD15分时的地址数据总线分开生成独立的地址和数据总线在这里定义了两个特殊的地址:FlashROM数据块的读地址AddressFR和读位置指针地址AddressFRP首先向AddressFRP写入一个16位的二进制数该数代表了将要读取的数据块的首地址16位表示范围是065535因此可以指定的首地址范围是64K字即128K字节;然后连续地从AddressFR进行读取操作每读一次位置指针会自动加1而不需要重新设置如果需要读取新的位置只需要向AddressFRP地址写入新的位置数据即可该功能在EPLD器件内部的实现方法见图3计数器可同步设置初值、同步计数在AHDL语言中声明为1pmcounter5其中CNTEN为计数使能控制当CNTEN为高电平时每当CLOCK上升沿到来时计数器便会自动加一从而实现了地址自动增加的功能;CLOCK为同步时钟输入端上升沿有效;SLOAD为计数器

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论