什么是Dialog/Silego推荐的方法来创建一个信号,在特定的时间(例如,2小时)后,芯片通电?
对于这样的长时间,我们正在级联两个CNT / DLY块,其中第一组件被配置为计数器并用作第二的时钟,第二组件被配置为延迟块。我们尝试在港口中使用POR,但这导致信号立即走高。似乎一旦POR完成(POR变高),延迟块会采样值,以便最终成为初始值。
解决方案,似乎是工作是使用DFF与POR在nRESET设置初始极性为低。DFF的时钟来自第一个计数器使用的相同的OSC0/64。这是产生这种延迟正脉冲的可靠方法吗?你有更好的方法来完成这个简单的任务吗?
谢谢,我们非常感谢您的帮助!
设备:
设备数量:
SLG46537
你好,亚瑟,
感谢您在我们的论坛发帖!我们会尽我们所能帮忙的。您是正确的,要在上电时为信号创建一个长延迟,解决方案是将计数器块与延迟块级联,并使用POR信号设置输入延迟。通常不需要DFF来在启动时在Delay块上保持一个低值,尽管您的DFF解决方案应该可以正确工作。
我已经从您的附加PDF重新创建了设置,但我没有注意到您的GreenPAK设计所经历的相同行为。从PDF的图像来看,GreenPAK的零件号看起来像SLG4653X系列,对吗?
如果您能够提供关于设置的进一步信息,我可以继续尝试重新创建您的设计行为。具体地说:
1.在添加DFF之前,你的设计是什么样子的?
2.这是否在模拟或编程芯片上?
3.你的VDD需要多长时间才能升到最大值?
我们建议的一个最佳实践是将计数器的“边缘选择”值更改为“高级重置”,但我认为仍然将其设置为“上升”并不会妨碍你的设计。
请让我知道我可以进一步帮助!
附加的PDF中的设置正常工作 - 电源后大约10秒内置于高信号。但它感觉有点“黑客”,因为它依赖于25kHz / 64时钟启动延迟。
澄清:
1.原始设计具有问题(在添加DFF之前)是POR直接进入POR的地方。请参阅新附加的图片。
2.问题出现在一个模拟芯片上,所以我没有继续编程。我已经验证了基于dff的设计在仿真和编程芯片上都工作。
3.为了进行仿真,我使用GreenPAK高级开发平台,VDD由车载PMIC提供。
鉴于POR序列的时间,是DFF方法实现此功能的可靠方法吗?有更好的实现吗?
DFF方法是解决您所经历的不正确延迟启动的行为的可靠方法,但我可以理解为什么您觉得添加DFF有点粗糙。通常,POR组件不会在初始化Delay块之前被解析。附件是数据表的PDF页,显示了POR信号的操作顺序;POR_CORE发生在POR_OUT之前。
您所看到的问题可能是由仿真造成的,而不是芯片。当模拟器与GreenPAK一起使用时,它将在配置矩阵内的连接之前启动GreenPAK。这可能导致POR信号在输入DLY0块之前被解释。如果你有一个备用芯片,它可能是值得看看这个问题是否与程序芯片持续。
如果这个设计面临的问题真的依赖于POR的时间与延迟块的初始化,那么可以使用其他方法来延迟或解除POR信号。你可能想尝试的DFF的两个替代方案是:
1.使用Filter块来解除POR信号。
2.使用P DLY块添加一个边缘延迟。
这两个想法都不会依赖于内部振荡器,但将需要与您的设计进行测试,以确认他们工作如预期。
谢谢Alex详尽的回答!
我之前确实遇到过POR序列,这部分造成了混淆,因为它似乎应该在POR断言高之前初始化DLY块。您关于仿真模式的回答很有意义,非常感谢!
我已经尝试用一个P - DLY块实现设计,它工作的广告。再次感谢!