中国·芯片交易在线
首页 | 供应信息 | 求购信息 | 库存查询 | 新闻中心 | 展会资讯 | IC厂商 | 技术资料 | 自由区域
   新闻首页 |  行业动态 | 新品发布 | 政策法规 | 科技成果 | 模拟技术 | 嵌入系统 | 传感控制 | 存储设计  
当前位置:IC72首页>> IC新闻中心>> 存储设计 >>电子行业新闻正文

多CPU系统共享串行EEPROM

时间:2006/10/26 10:15:00  作者:  来源:ic72  浏览人数:1389
 
 

      1 引言

      随着微电子技术的飞速发展,单片机的价格已变得十分低廉,特别是ATMEL公司的89系列单片机,内置闪速(Flash)存储器,具有51系列单片机的内核,尤其是89C2051只有20个引脚,2K Flash程序存储器,本身已是一个完整的微处理机系统,具有很高的性能价格比。此类CPU可以作为可编程器件用于构成一个比较复杂的应用系统,此方法比使用PAL、GAL等产品的性能价格比更高。现今软件工程中比较流行的方法是面向对象的模块化设计,其思想是将复杂的系统划分成任务单一的模块,有利于多人共同开发大规模软件。工控机也大多采用模块化设计,根据工控具体情况可方便地组成应用系统。同样一个小的应用系统也可用单片机作为可编程器件模块来构成。即将系统划分成任务单一的模块,每个器件模块编程简单,性能可靠,抗干扰性能强,从而大大节省设计和编程时间。但同时也出现了一个怎样实现各器件模块间交换信息的问题,对于速度要求比较高时,可采用并行通信或并行RAM共享方案;而对速度要求比较低时,可采用串行通信方法,但此方案要占用CPU的串行口的资源,且多点对多点的通信编程也比较困难。而共享串行EEPROM的方案能够解决这一矛盾,下面以智能热量仪为例介绍此方案。

      2 系统的模块化设计

      根据具体情况将系统划分成若干功能单一的模块。划分的原则是:实时性强的任务由一独立器件模块来完成,信息在器件模块之间的交换要少,且时间性要求要低。

      根据智能热量仪要求将其划分成三个器件模块,功能框图如图1所示。CPU1完成智能热量仪物理量的采集,即温差、压力、流量、压差或频率的采集,并能输出控制信号,包括电流和开关量输出;CPU2实现人机对话功能:显示各物理量(温度、压力、压差、频率、瞬时流量或累积热量),接收仪表参数的输入等;CPU3完成与上位机间的通信和打印功能。EEPROM 93LC66连接这三个器件模块。为了编程方便,三个CPU的P1.0~P1.3都依次连接EEPROM的CS、CLK、DI、DO;而三个CPU的P1.4、P1.5则连在一起,作为EEPROM状态的标志,用来协调三个CPU的工作。

ic72 新闻中心

图1 智能热量仪组成框图

      3 分时共享EEPROM

      电路的核心器件是EEPROM(93LC66),它同时与三个CPU的P1.0~P1.3相接,所以,三个CPU只能分时访问EEPROM。也就是说,同一时间只能有一个CPU访问它,不访问时将P1.0~P1.3初始化为高电平,否则会出现竞争。这就要求CPU在访问EEPROM前,必须知道EEPROM的状态,为此,将三个CPU的P1.4、P1.5分别连接在一起作为标志,三者的状态编码00、01、10分别表示CPU1至CPU3中的哪一个在访问EEPROM;CPU都不访问EEPROM时,各CPU初始化标志P1.4、P1.5为高电平,即11。某CPU要访问EEPROM时,先测试标志P1.4、P1.5,若为11,说明此时CPU可以访问EEPROM,立即将标志P1.4、P1.5置成此CPU的标志码,表示EEPROM处于忙状态,其它CPU不能再访问EEPROM;该CPU访问完EEPROM后,再将P1.4、P1.5置为高电平。为了防止几个CPU同时测试P1.4、P1.5位,可规定CPU1访问EEPROM的优先级比CPU2、CPU3的高。CPU2或CPU3在测试完P1.4、P1.5后,若为11,此CPU立即将P1.4、P1.5置成自己的标志,再测试一下置为1的位是否还为1;若为0,说明有其它CPU在同时访问EEPROM,则退出等待;若还为1,则进行访问EEPROM。

      CPU1将采集来的数据进行处理,根据EEPROM内的仪表参数计算出瞬时的流量和热量,进行热量的累积,每5s将数据写入EEPROM一次,并根据瞬时量计算出输出量送给D/A转换电路,输出控制电流;CPU2定时地从EEPROM内读出各物理量暂存在CPU内,根据从键盘接收的命令显示相应的物理量,还可将键盘送来的仪表参数写入EEPROM;CPU3也定时地从EEPROM内读出数据存在CPU内,定时或立即打印出来,并和上位机进行串行通信。各CPU在分时使用EEPROM的工作过程中,已实现了数据交换。

      4 延长EEPROM工作寿命的方法

      各CPU频繁地擦写串行EEPROM,93LC´ ´ 系列的EEPROM擦写次数典型值为100万次,这是指某一位由1写为0或由0写为1的次数。而实际上写入EEPROM的数据,对于某一位来说,写入的数据并不是每次都是要变化的,实际测试可证明擦写次数大于500万次。按300万次算,若5s写一次,只能写150天左右,显然,这是不能满足要求的。为此,可采用一种利用存储器空间延长EEPROM工作寿命的方法。其方法为:数据存放的地址不是固定的,而是用一个固定的基地址加上EEPROM内的一个单元的内容(即偏移地址)作为真正的地址;若发现存储单元已坏(写入和读出的内容不同),则偏移地址加一,重新写入。如果采用100倍的存储器空间冗余,可将EEPROM的实际寿命延长100倍。对于智能热量仪,写入EEPROM的数据为14字节,采用35倍冗余,选用93LC66,可使其寿命大于14年。

      5 结束语

      串行EEPROM(以93LC66为例)数据的读过程时间比较短,约为150ms(89C51的晶振频率为12MHz),但写过程时间较长,技术手册给出的是每字节4ms,实测为2ms。根据各CPU完成任务不同,可将读写程序放在不同位置来实现。

      这种多CPU共享串行EEPROM的设计方法,各模块的任务比较单一,又具有独立性,因而降低了编程的工作量,也方便调试。若系统需要多于三个CPU时,和EEPROM连接的四条线类似总线方式与其它CPU相连,再增加一条或几条状态线即可。构成的系统如果要增加功能,可再增添一个或几个模块即可,而不影响原来设计的硬件和软件,这就解决了过去一旦产品设计完成再想添加功能就很困难的问题。

 
【相关文章】
·片外FIash存储器IAP的n种方案
·外挂Flash的引导装载设计
·为通信结构设备挑选电源供应设计
·气体传感器的研究及发展方向
·多CPU系统共享串行EEPROM
·交换接口控制器的可扩展设计
 
 
IC新闻搜索
 
热点新闻
基于红外超声光电编码器的室内移动小车定位系
基于闪烁存储器的TMS320VC5409DSP并行引导装载方法
非移动市场需求飙升,ARM预计2010年出货量超50亿片
一种快速响应的电容式湿度传感器感湿薄膜设计
利用特殊应用模拟开关改进便携式设计
无线传感器网络跨层通信协议的设计
基于ARM9内核Processor对外部NAND FLASH的控制实现
基于GSM技术的汽车防盗系统的设计
热电阻在烟叶初烤炕房温度控制中的应用
高速数据转换系统对时钟和数据传输的性能要求
友情连接
 关于我们  IC论坛  意见反馈  设置首页  广告服务  用户帮助  联系我们
copyright:(1998-2005) IC72 中国·芯片交易在线
(北京)联系电话:(010)82614113、82614123 传真:(010)82614123 客户服务:service@IC72.com 库存上载:IC72@IC72.com
在线MSN咨询:ic72sale8@hotmail.com 通信地址:北京市西城区西直门内大街2号大厦15层 邮政编码:100013
(深圳)联系方式: 在线MSN咨询:ic72sale6@hotmail.com 在线QQ咨询:191232636 通信地址:深圳市福田区振华路
注 册 号: 1101081318959(1-1)

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9