otp控制设计注意事项

otp是one-time-programmable的简写,通常直接用otp指一种一次性可编程的存储器,可用于存储芯片的出厂信息,包括晶圆厂编号、封装厂编号、芯片id、lot_ibatch_id等信息,也可以用于存储单个芯片的固定参数信息,比如芯片内部时钟校准参数等。otp存储器的作用和efuse相同,单从控制设计角度看,它们是有较大区别的,但它们的控制设计注意事项是相同的。从其他角度(比如成本、面积等)也是有区别的,网上有较多文章可供参考,后面有时间在将区别这部分的笔记补充上。

要清楚otp的控制设计注意事项,首先需要明白otp的使用场景,然后才是具体的控制设计及其注意事项。

otp这种一次性可编程的存储器是由相应的厂商生产,作为芯片的设计者只是otp或者efuse的使用者,只需要根据它的datasheet上的时序要求设计对它的读写操作。otp芯片的特点是只可以编写一次,一旦被烧写后则不能进行第二次烧写操作,所以烧写之前需对需要烧写进otp中的数据进行多次check用于确保烧写正确。

包含otp的芯片,用户在使用时otp的场景如下:芯片上电,然后把otp中存储的参数自动读出放到相应寄存器中,这些寄存器有可能只包含了芯片的出厂信息,但也有包含芯片的控制信息或者计算参数等信息。芯片出厂信息可用于溯流芯片,一旦芯片出现生产线相关的问题方便追溯。芯片的控制信息或者计算参数同样重要,这些参数能决定芯片的性能或成败,比如芯片内部的时钟校准参数,烧写到otp的时钟校准参数是针对该片芯片的最佳时钟性能参数,如果读出的时钟校准参数是错误的,则会导致时钟不是最佳,可能会导致芯片的性能下降,无法满足需求从而被淘汰;又如电源参数出现错误导致某些模块的电源达不到要求,无法工作。

otp最初是没有有效数据的,在给到用户之前需要由测试人员将有效数据烧写到otp中,然后在芯片使用时上电后才会读取正确数据,芯片才能正常工作。在测试人员烧写otp时,也存在芯片上电,自动读取的过程,同时也会存在otp烧写的过程。因此在设计otp控制逻辑时至少需要考虑到以下几点:

1 芯片上电时,需要考虑电源的稳定性,是否上电复位信号释放时表示电源已经稳定,满足所需要求;

2 芯片上电时,用于otp控制逻辑中的时钟信号不稳定,可能存在时钟频率从低到高的情况,因此要确保otp读取数据在极端情况下满足时序要求;

3 芯片上电时,是否需要把otp中所有的数据读取到可控制芯片状态的寄存器中,因为在芯片第一次上电时otp里并无有效数据;

4 控制芯片状态寄存器的读写设计:是否只存放otp中读出的数据,是否可由外部配置(比如通过spi),寄存器的初始状态(这个可能决定芯片基础的运行);

5  otp读写时序是否需要寄存器可配;

6 otp读写时是否存在多种时钟频率的情况,如果不能确定或者规定使用一种时钟频率,最好使用寄存器可配otp的读写时序延时要求;需要考虑实际时钟频率存在不标准的情况,如频率偏大或偏小的情况;

7 需考虑到otp不能自动把数据读取放到相应的寄存器中情况的处理,可由外部命令将otp的数据读取到寄存器中;

8 需考虑到otp不能被正常烧写,是否可由外部命令烧写;

9 otp的数据信号、控制信号不能存在毛刺;

10 otp的数据信号、控制信号是否需要使用level_shifter;

关于otp其它相关的注意事项可以参考如下链接,比如电源的控制、isolation的插入问题都讲得很详细:

芯片设计:OTP-CSDN博客

如果想要查看相应的otp,可以去如下网站申请:

eMemory Technology Inc

简而言之,就是无论在什么情况下都要满足otp的烧写和读取时序,除非芯片制造残缺损坏。先记录到这里,如果有错误,欢迎指出。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值