一种解决FLASH SM9968编程出错设计方法.docVIP

一种解决FLASH SM9968编程出错设计方法.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一种解决FLASH SM9968编程出错设计方法

一种解决FLASH SM9968编程出错设计方法   摘 要: 在计算机的使用中,发现在给个别模块FLASH SM9968加载程序时报错。通过进一步分析,确定了报错的原因是由于写信号有效时地址不稳定造成的。修改驻留在PC上的控制程序,使写使能信号在片选使能信号有效后2 μs(软件可调)有效,而地址稳定时间需要片选有效后200 ns,因此保证了写信号有效之前地址已处于稳定状态,解决了加载程序出错的问题。   关键词: FLASH SM9968; 加载程序; 写使能信号; 片选使能信号   中图分类号: TN702?34 文献标识码: A 文章编号: 1004?373X(2013)07?0138?03   0 引 言   FLASH SM9968在使用中发现有个别模块有编程出错的问题,经分析:导致在板编程故障的原因是片选信号有效时,地址信号不稳定。在程序中增加等待,满足芯片写对时序的要求。分析并解决设计阶段考虑不全面的问题。在使用中发现了设计阶段的不足,解决了编程出错的问题。   1 故障定位及影响分析   用户在通过开发系统对模块上的FLASH编程时发现有一块出错,其他模块正常。   该CPU模块编程时与开发系统的连接方式如图1所示,模块编程是运行PC机上驻留的在板编程软件通过开发系统访问CPU模块上的FLASH实现的。CPU模块采用开放总线式设计,开发系统作为CPU模块的一个总线主设备,通过总线请求获得总线控制权,通过总线可以直接访问CPU模块上的资源。编程时由开发系统根据FLASH的时序要求提供数据、地址和控制信号,其访问方式      CPU模块与开发系统的连接示意图   可以看出数据、地址线经过板内245、244驱动后通过CPLD接入FLASH,而控制信号经CPLD译码后接入FLASH。      开发系统访问FLASH示意图   采用用户开发系统进行编程时,用逻辑分析仪观察FLASH的写过程,测量数据、地址、片选和写信号,发现数据、地址都正确到达FLASH的相关管脚上,用出错单元地址触发时,得到故障单元时序关系所示。   显示错误单元BA00H在写操作的状态下,片选信号有效时,地址线上有跳动。用逻辑分析仪多次观察不同的出错地址单元,当片选信号变低为有效时,地址线均处于非稳定状态由此可以确定,导致在板编程故障的原因是片选信号有效时,地址信号不稳定。      故障单元的访问时序图   2 原因分析   对图3中片选有效时信号放大后,得到波形如图4所示,发现在片选有效后200 ns地址信号才处于稳定状态。      访问FALSH放大后波形   根据FLASH SM9968手册的说明:   (1)写操作   当[CE]和[WE]都为低电平、[OE]为高电平时,写操作被初始化。SM9968由[CE]和[WE]共同控制写周期。也就是说,[CE]和[WE]两者中无论哪一个下降沿后发生,地址就在那一时刻被锁存。同样无论哪一个上升沿先发生,数据就在那一时刻被锁存。当一个字节写操作被初始化后,它就会自动在5 ms完成。   (2)[WE]控制写周期   FLASH手册要求的写时序如图5所示,写时间要求见表1。   根据图5和表1可知,FLASH写过程中,写信号有效前,要求地址保持时间[tAH]至少为50 ns,数据建立时间[tDS]至少为50 ns。   结合图3,图4可以看出,写信号变低后,地址保持了28.40 ns又发生了变化,不满足地址保持50 ns的要求,因此在地址不稳定的情况下,数据未能正确写入指定单元单元。      FLASH手册要求的写时序   FLASH手册要求的写时间要求   [Symbol\Parameter\Min.\Max.\[tWC] /ms\Write Cycle Time\\10\[tAS] /ns\Address Setup Time\0\\[tAH] /ns\Address Hold Time\50\\[tCS] /ns\Write Hold Time\0\\[tCH] /ns\Write Hold Time\0\\[tCW] /ns\[OE] Pulse Width\100\\[tDES] /ns\[OE] HIGH Setup Time\10\\[tOEH] /ns\[OE] HIGH Hold Time\10\\[tWP] /ns\[WE] Pulse Width\100\\[tWPH] /ns\[WE] HIGH Recovery\100\\[tDV] /ns\Data Valid\\1\[tDS] /ns\Data Setup\50\\[tDH] /ns\Data Hold\0\\]   在用承制方开发系统编程时,未发现这种写过程中发生的地址线上的跳变。   采用承制方开发系统进行在板编

文档评论(0)

bokegood + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档