| 你这样换个顺序没区别 理解先阻塞和非阻塞赋值吧 |
szczyb1314 发表于 2018-12-5 16:30 谢谢,我再琢磨琢磨 |
| 在时钟边沿的触发下,移位寄存器一位一位的移动 |
业未央 发表于 2018-12-5 16:27 阻塞赋值,就像是一个移位寄存器一样的 |
szczyb1314 发表于 2018-12-5 16:16 谢谢老哥,刚开始学,语法不太熟 |
1210568312 发表于 2018-12-5 15:59 我理解了,else中的语句是串行的两个语句需要两个时钟周期来执行,d1保存的实际就是上一个时钟rxd的状态 |
业未央 发表于 2018-12-5 15:26 是的,而且是并行执行的,d0 = rxd指的是,将上一个时钟沿下rxd的值赋值给d0; d1 = d0 指的是,将上一个时钟沿下 d0的值赋值给d1(同时这也是上上个时钟下rxd的值); |
1210568312 发表于 2018-12-5 15:12 你好,else语句中rxd赋值给d0 d0赋值给d1这两个语句在每个时钟节拍中都会执行吧 |
| d1和d0的值并一样哦兄弟,d0是rxd延时一个时钟节拍得到的,d1是d0延时一个时钟节拍得到的。 所以d1是rxd延时2个时钟节拍得到的,你最好结合仿真看一下波形,一目了然 |
| 要理解阻塞赋值啊兄弟, assign start_flag = uart_rx_d1&(~uart_rxd_d0);是说前一拍是1后一拍是0的时候赋值为1,不就是下降沿,重点是阻塞赋值理解下 |
/1
|手机版|OpenEdv-开源电子网
( 粤ICP备12000418号-1 )
GMT+8, 2026-7-27 13:37
Powered by OpenEdv-开源电子网
© 2001-2030 OpenEdv-开源电子网