最近在做FPGA,关于复位,一会儿是高电平复位,一会儿是低电平复位。
Reset什么时候是高电平,什么时候是低电平,我分不清。
尤其是锁相环方面,我看了一些网上的资料,发现PLL锁相环IP的复位是高电平复位。 这是什么原因呢?
我认为最好理解为什么,而且你不能假装理解。 刚开始学习的时候,需要了解基本的概念和原理,这样才能保证以后做工程的时候不会迷茫。
本文内容:
1. 什么是“重置”以及为什么需要重置? ”
2.低电平复位
3.高电平复位
4. 锁相环PLL IP核中“reset”的说明
5. 总结
文本:
1. 什么是“重置”以及为什么需要重置?
重置,顾名思义,就是回到之前的位置。
先前的位置在书面上称为“初始状态”。
1.1 为什么需要复位?
不管是单片机、CPU、DSP等处理器,都有一个复位rst,就是为了防止程序跑掉、失控、疯狂增长,所以得省一手按一个按钮什么的
将一切恢复到“初始状态”的机制,恢复到原来的形状,恢复到原来的位置。
这个概念在产品中也存在。 一般家里购买的路由器、手机等都有一个小孔。 可以用针刺进去恢复出厂设置。 这也是利用了“防止失控,留手恢复原状”的思路。
复位包括软复位、上电复位、硬件复位。
1.2 这里主要讲硬件复位。
硬件复位是通过复位按钮实现复位功能。
按下此按钮可实现重置。
这种按钮按下时会关闭,松开时会自动弹回。
一般情况下,我们不希望芯片被复位,不复位也是常态。
2.低电平复位
只需使用低电平即可复位。
更通俗的讲,当该引脚(复位引脚)为低电平时,就生效,使能。
2.1 那么,如何设计硬件呢?
记住我上面说的,不重置是常态。
既然是低电平复位,那么高电平时就是正常状态,即:没有按下复位按钮时,该引脚应该长期处于高电平。
在硬件中,只需拉起该引脚即可。 如下所示:
2.2 那么,如何用逻辑代码来表达呢?
重置的英文单词是reset;
否定在英语中的意思是:消极、阴性、消极的意思。 这里是低电平的意思。
为了简化,rst_n一般用来表示“低电平类型”复位。
rst_n 表示低电平复位。
3.高电平复位
同理,高电平复位意味着正常状态应该是低电平。
3.1 然后需要将硬件引脚拉低至地。
如下所示:
2.2 那么,如何用逻辑代码来表达呢?
重置的英文单词是reset;
为了简化,rst一般用来表示“高电平类型”复位。 因为低级复位已经用“-n”来区分,所以这里不需要加后缀来区分。
rst 表示高电平复位。
这种清晰的命名使代码更具可读性。
4. 锁相环PLL IP核中“reset”的说明
在做FPGA逻辑设计时,最常用的是PLL IP核。 网上很多教程直接说PLL IP核复位到高电平,要注意。
所以为什么? 这种说法完全正确吗?
我们先看一下调用IP核的步骤。
该复位可以设置,并且不一定必须是高电平。
例如:
这里我们可以设置为:高电平复位。
我们也可以设置为:低电平复位。
5. 总结
我在这里重置一下,从概念到具体,整理一下我的理解和想法。
这里再次重置PLL IP,仔细研究一下。
我终于感到踏实、踏实,走好每一步,避免以后的工程设计出现“地基不牢、地动山摇”的情况。
继续做~~~
结局~