打印

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

[复制链接]
14557|47
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
刘骁奖|  楼主 | 2007-10-17 18:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
很奇怪,我们一个产品用24LC16当然是Microchip的,大约是5000片,另一种24LC64大约是30000片之后,我们的客户反应存储出现了一些问题,有大约千分之二三的芯片丢失数据,数据区一般都变成0XFF吧,没有详细分析看,重新写入全部数据后就变正常了,读写24CXX是用模拟 I2C的方式,写时软件有相关保护,同时硬件也做了写保护,因软件故障错误写入的可能很小吧,不知道是什么原因了,就各位FAE看看这是什么原因造成的。

是不是Microchip的存储器制造技术还不过关呀?我们领导正在让我们试用CAT的存储器,周立功代理的那种。
来自 2楼
yewuyi| | 2007-10-18 15:43 | 只看该作者

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

因为过去生产的EE,其电压范围为4.5~5.5V,MCU系统也是5V系统,当去电再上电的话,在MCU复位的时候,EE也能跟着复位,即使没有同步复位,发生的概率极小极小,所以,过去的很多设计都没有注意这个问题。

后来随着3V系统的推广,EE都能支持低电压工作了,有的甚至到1.8V还能工作,此时就比较容易发生电压跌落到1.8~4.5之间时,EE不被电源复位,而MCU却被BOD复位的现象,这就是产生问题的地方。

SCL/SDA被挂死的问题,不管谁家的EE都是一样,这和CHIP无关,这是IIC协议确定的,在IIC协议里另有一个规定,不管SCL/SDA处于什么状态,如果连续发送9个CLK,都能让CHIP强制复位。

所以,建议的做法:在MCU启动后,第一次读写EE的时候,先发送9个CLK防止SCL/SDA被挂死,然后进行START/STOP/READ/WRITE等操作。

另一个解决的办法是用MCU拿出一个IO出来控制EE电源,当MCU被复位后,强制POWER DOWN一次EE的电源,这样也肯定能解开被挂死的EE。

使用特权

评论回复
来自 3楼
yewuyi| | 2007-10-19 10:19 | 只看该作者

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

把你原来的start改成:

start-->stop-->start-->9个CLK-->stop-->start

9个CLK的意思就是连续发0B1,1111,1111给EE,怎么发这9个‘1’不要再讲了把。


似乎MCP过去的一个有关EE的中文资料略微讲到这个,你自己找找看把。

使用特权

评论回复
地板
yewuyi| | 2007-10-17 19:42 | 只看该作者

就EE质量来说

据我听到的说法:

ROHM最好

MCP/ST次之

AT再次之

CAT再次之



呵呵,出问题的往往自己认为没有问题的地方。

随便问一问你的MCU的复位电压多少?

使用特权

评论回复
5
刘骁奖|  楼主 | 2007-10-18 09:54 | 只看该作者

是4.7V吧!

AT再次之,呵呵是ATMEL吗?这家公司的EEPROM是**呀,没有什么好的呀,还比CAT的高,不太相信.这两家的都用过,感觉CAT的周立功代理的那个,还不错的.

使用特权

评论回复
6
刘骁奖|  楼主 | 2007-10-18 10:05 | 只看该作者

日本ROHM罗姆

ROHM株式会社,上帝这是日货,难怪我都没有听说过,第一次听,不过再好,我也不会去用的.我要是选了每年会用他几十W片的.
还是**持原则:
首先,美国
次之,欧洲
次之,台湾
次之,国内

使用特权

评论回复
7
yewuyi| | 2007-10-18 11:09 | 只看该作者

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

一定要注意这个电压范围。


9个CLK发了吗?

使用特权

评论回复
8
martin| | 2007-10-18 11:28 | 只看该作者

EEPROM市场数据

EEPROM市场数据

使用特权

评论回复
9
刘骁奖|  楼主 | 2007-10-18 12:06 | 只看该作者

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

使用特权

评论回复
10
yewuyi| | 2007-10-18 12:58 | 只看该作者

9个CLK发了没有?

只要告诉我,有还是没有就可以了。

使用特权

评论回复
11
martin| | 2007-10-18 13:41 | 只看该作者

回答7楼问题

很显然这个数据是Microchip的,应该是06年数据。这些数据是给内部看的,我贴在这里有些违规,当然我也删掉了一些敏感信息。是否客观您要自己判断了。
另外,回到顶楼的问题,对于MCHP的EEPROM产品,因芯片自身品质问题而产生的“芯片数据丢失”现象,从MCHP开始生产EEPROM至今,没有发现过(这里指的是FA坏片分析),这是PEEC存储单元的设计以及测试条件保证的。如果你怀疑品质有问题,导致了数据丢失,可以向MCHP要求做坏片分析FA。
说句凭经验而且你不爱听的话,99%以上的可能是,你的设计导致的数据丢失。

附上MCHP的EEPROM简要测试过程:
晶圆级测试的典型测试流程
第一次晶圆测试
 全部产品裸片在25°C下测试
 参数和功能测试
 存储器单元的极限测试
耐用性测试(筛选出所有故障裸片)
 在第一次晶圆测试和第二次晶圆测试之间,所有裸片都在250°C 下进行了24小时的数据保存烘烤
 相当于使用1.2eV活化能,在85°C 下工作,数据保存期可达100多年
第二次晶圆测试
 全部产品裸片在85°C下测试
 校验存储器单元的极限参数
 参数和功能测试

使用特权

评论回复
12
yewuyi| | 2007-10-18 13:52 | 只看该作者

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

使用特权

评论回复
13
刘骁奖|  楼主 | 2007-10-18 14:52 | 只看该作者

yewuyi兄

9个CLK指的在那里发,这点M和其它公司有区别吗?

亲爱的yewuyi兄,是确计时序中的那个CLK吗?上帝,其它EE没有这条要求吧!

刚查了程序是有的呀!如果没有这会的话,我想一片EE都读写不能的!

使用特权

评论回复
14
刘骁奖|  楼主 | 2007-10-19 10:13 | 只看该作者

yewuyi兄,我真是大开眼界了

老兄你有这方面的资料吗,给我看看先,这里先谢谢了

使用特权

评论回复
15
刘骁奖|  楼主 | 2007-10-19 10:48 | 只看该作者

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

哈哈,欢迎老兄来我们的网站看看,多多指点一下  www.mcubbs.com
本来原来还有一个www.mcusun.com的名字,后来不用了!

使用特权

评论回复
16
yewuyi| | 2007-10-19 11:49 | 只看该作者

你是歌林的?

使用特权

评论回复
17
刘骁奖|  楼主 | 2007-10-19 12:09 | 只看该作者

不是

单片机社区(我们只做技术交流,不卖东东)
我们原来还有一个名字"单片机精英联盟"

使用特权

评论回复
18
Wxy8030| | 2007-10-19 17:12 | 只看该作者

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

我写了一程序,以下为主循环部分(不停的读24C64,器件中都事先写为0x55):
while(1)
{
    if(Read_24C64(x) == 0x55)   //x为要读的地址
        {
            LedOn;
        }
        else
        {
            LedOff;
        }
        
        x++;
}

然后我不停的复位单片机,但并未出现读出的值不对的情况...........

使用特权

评论回复
19
judge| | 2007-10-19 19:21 | 只看该作者

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

使用特权

评论回复
20
yewuyi| | 2007-10-19 19:30 | 只看该作者

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

如果你从EE读数据,正好此时读到数据位为0,那么MCU控制SCL产生一个沿跳变后,这个0就从EE里面出来了,如果此时MCU被复位,EE但没有被复位,此时EE输出0的状态不会变化,但MCU复位来并重新来读写EE,此时,你说会发生那些情况呢?

这是SDA被挂死的一种情况。


MCP的EE出货量还是很大的,估计今年冲到第二没问题。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

36

主题

430

帖子

22

粉丝