用了Microchip24LC16和24LC64后发现的问题

[复制链接]
16651|47
 楼主| 刘骁奖 发表于 2007-10-17 18:20 | 显示全部楼层 |阅读模式
很奇怪,我们一个产品用24LC16当然是Microchip的,大约是5000片,另一种24LC64大约是30000片之后,我们的客户反应存储出现了一些问题,有大约千分之二三的芯片丢失数据,数据区一般都变成0XFF吧,没有详细分析看,重新写入全部数据后就变正常了,读写24CXX是用模拟&nbsp;I2C的方式,写时软件有相关保护,同时硬件也做了写保护,因软件故障错误写入的可能很小吧,不知道是什么原因了,就各位FAE看看这是什么原因造成的。<br /><br />是不是Microchip的存储器制造技术还不过关呀?我们领导正在让我们试用CAT的存储器,周立功代理的那种。
yewuyi 发表于 2007-10-18 15:43 | 显示全部楼层

原来的系统都是5V系统掩盖了这个问题

因为过去生产的EE,其电压范围为4.5~5.5V,MCU系统也是5V系统,当去电再上电的话,在MCU复位的时候,EE也能跟着复位,即使没有同步复位,发生的概率极小极小,所以,过去的很多设计都没有注意这个问题。<br /><br />后来随着3V系统的推广,EE都能支持低电压工作了,有的甚至到1.8V还能工作,此时就比较容易发生电压跌落到1.8~4.5之间时,EE不被电源复位,而MCU却被BOD复位的现象,这就是产生问题的地方。<br /><br />SCL/SDA被挂死的问题,不管谁家的EE都是一样,这和CHIP无关,这是IIC协议确定的,在IIC协议里另有一个规定,不管SCL/SDA处于什么状态,如果连续发送9个CLK,都能让CHIP强制复位。<br /><br />所以,建议的做法:在MCU启动后,第一次读写EE的时候,先发送9个CLK防止SCL/SDA被挂死,然后进行START/STOP/READ/WRITE等操作。<br /><br />另一个解决的办法是用MCU拿出一个IO出来控制EE电源,当MCU被复位后,强制POWER&nbsp;DOWN一次EE的电源,这样也肯定能解开被挂死的EE。<br /><br />
yewuyi 发表于 2007-10-19 10:19 | 显示全部楼层

没有资料,很简单,9个CLK

把你原来的start改成:<br /><br />start--&gtstop--&gtstart--&gt9个CLK--&gtstop--&gtstart<br /><br />9个CLK的意思就是连续发0B1,1111,1111给EE,怎么发这9个‘1’不要再讲了把。<br /><br /><br />似乎MCP过去的一个有关EE的中文资料略微讲到这个,你自己找找看把。
yewuyi 发表于 2007-10-17 19:42 | 显示全部楼层

就EE质量来说

据我听到的说法:<br /><br />ROHM最好<br /><br />MCP/ST次之<br /><br />AT再次之<br /><br />CAT再次之<br /><br /><br /><br />呵呵,出问题的往往自己认为没有问题的地方。<br /><br />随便问一问你的MCU的复位电压多少?
 楼主| 刘骁奖 发表于 2007-10-18 09:54 | 显示全部楼层

是4.7V吧!

AT再次之,呵呵是ATMEL吗?这家公司的EEPROM是**呀,没有什么好的呀,还比CAT的高,不太相信.这两家的都用过,感觉CAT的周立功代理的那个,还不错的.
 楼主| 刘骁奖 发表于 2007-10-18 10:05 | 显示全部楼层

日本ROHM罗姆

ROHM株式会社,上帝这是日货,难怪我都没有听说过,第一次听,不过再好,我也不会去用的.我要是选了每年会用他几十W片的.<br />还是**持原则:<br />首先,美国<br />次之,欧洲<br />次之,台湾<br />次之,国内
yewuyi 发表于 2007-10-18 11:09 | 显示全部楼层

MCP的24LC64的电压范围是2.5~5.5V

一定要注意这个电压范围。<br /><br /><br />9个CLK发了吗?
martin 发表于 2007-10-18 11:28 | 显示全部楼层

EEPROM市场数据

EEPROM市场数据
 楼主| 刘骁奖 发表于 2007-10-18 12:06 | 显示全部楼层

martin这是那家统计的资料,那一年的?

  
yewuyi 发表于 2007-10-18 12:58 | 显示全部楼层

9个CLK发了没有?

只要告诉我,有还是没有就可以了。
martin 发表于 2007-10-18 13:41 | 显示全部楼层

回答7楼问题

很显然这个数据是Microchip的,应该是06年数据。这些数据是给内部看的,我贴在这里有些违规,当然我也删掉了一些敏感信息。是否客观您要自己判断了。<br />另外,回到顶楼的问题,对于MCHP的EEPROM产品,因芯片自身品质问题而产生的“芯片数据丢失”现象,从MCHP开始生产EEPROM至今,没有发现过(这里指的是FA坏片分析),这是PEEC存储单元的设计以及测试条件保证的。如果你怀疑品质有问题,导致了数据丢失,可以向MCHP要求做坏片分析FA。<br />说句凭经验而且你不爱听的话,99%以上的可能是,你的设计导致的数据丢失。<br /><br />附上MCHP的EEPROM简要测试过程:<br />晶圆级测试的典型测试流程<br />第一次晶圆测试<br />&nbsp;全部产品裸片在25°C下测试<br />&nbsp;参数和功能测试<br />&nbsp;存储器单元的极限测试<br />耐用性测试(筛选出所有故障裸片)<br />&nbsp;在第一次晶圆测试和第二次晶圆测试之间,所有裸片都在250°C&nbsp;下进行了24小时的数据保存烘烤<br />&nbsp;相当于使用1.2eV活化能,在85°C&nbsp;下工作,数据保存期可达100多年<br />第二次晶圆测试<br />&nbsp;全部产品裸片在85°C下测试<br />&nbsp;校验存储器单元的极限参数<br />&nbsp;参数和功能测试
yewuyi 发表于 2007-10-18 13:52 | 显示全部楼层

我个人认为基本就是9个CLK的问题

  
 楼主| 刘骁奖 发表于 2007-10-18 14:52 | 显示全部楼层

yewuyi兄

9个CLK指的在那里发,这点M和其它公司有区别吗?<br /><br />亲爱的yewuyi兄,是确计时序中的那个CLK吗?上帝,其它EE没有这条要求吧!<br /><br />刚查了程序是有的呀!如果没有这会的话,我想一片EE都读写不能的!
 楼主| 刘骁奖 发表于 2007-10-19 10:13 | 显示全部楼层

yewuyi兄,我真是大开眼界了

老兄你有这方面的资料吗,给我看看先,这里先谢谢了
 楼主| 刘骁奖 发表于 2007-10-19 10:48 | 显示全部楼层

呵呵,受教育了,我好好找找相关资料看一下!

哈哈,欢迎老兄来我们的网站看看,多多指点一下&nbsp;&nbsp;www.mcubbs.com<br />本来原来还有一个www.mcusun.com的名字,后来不用了!
yewuyi 发表于 2007-10-19 11:49 | 显示全部楼层

你是歌林的?

  
 楼主| 刘骁奖 发表于 2007-10-19 12:09 | 显示全部楼层

不是

单片机社区(我们只做技术交流,不卖东东)<br />我们原来还有一个名字"单片机精英联盟"<br />
Wxy8030 发表于 2007-10-19 17:12 | 显示全部楼层

请教:SCL/SDA被挂死的问题在哪种情况下会发生?

我写了一程序,以下为主循环部分(不停的读24C64,器件中都事先写为0x55):<br />while(1)<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;if(Read_24C64(x)&nbsp;==&nbsp;0x55)&nbsp;&nbsp;&nbsp;//x为要读的地址<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LedOn;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LedOff;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x++;<br />}<br /><br />然后我不停的复位单片机,但并未出现读出的值不对的情况...........<br />
judge 发表于 2007-10-19 19:21 | 显示全部楼层

解答的不错。但对于MCHP的数据有怀疑

  
yewuyi 发表于 2007-10-19 19:30 | 显示全部楼层

举例说明,Wxy8030可能更容易理解

如果你从EE读数据,正好此时读到数据位为0,那么MCU控制SCL产生一个沿跳变后,这个0就从EE里面出来了,如果此时MCU被复位,EE但没有被复位,此时EE输出0的状态不会变化,但MCU复位来并重新来读写EE,此时,你说会发生那些情况呢?<br /><br />这是SDA被挂死的一种情况。<br /><br /><br />MCP的EE出货量还是很大的,估计今年冲到第二没问题。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

36

主题

430

帖子

22

粉丝
快速回复 在线客服 返回列表 返回顶部