作者e758e (e758e)
看板Electronics
标题[问题] Verilog latch问题
时间Mon May 24 17:03:02 2021
各位前辈好,小弟在学校考试时遇到了一题在问有没有latch的简单程式,
老师给的答案是有latch,以下是我的问题和过程
(1)哪个才是latch的定义
1.有incomplete的叙述
2.每个可能的输入都要有一个对应的输出,否则会产生latch
虽然看起来很像,但从题目中去思考会有点差异。
(2)以下为我实际用Quartus去模拟的结果,并多了两个对照组
https://imgur.com/a/ilwZuYH
共有6章图片
(3)依照合成出来的电路图来说是没有latch的,那从waveform可以看出有没有latch吗 ?
(4)若问题(1)的答案是1,那题目中很明显的是incomplete叙述,
要怎麽解释合成出来的电路没有latch?
(5)若问题(1)的答案是2, 当x=4'bx000时(x000的x是don't care),y=0
那麽就表示每一个可能的input之下,y都会有值,
那麽就跟合出来没有latch的电路说的通了
(6)请问大神们,这样到底有没有latch呢......
还是当有争议时就看合成出来的结果?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 220.129.54.218 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Electronics/M.1621846984.A.1CE.html
1F:→ ViewMoon: 你把 quartus 当作不可信,就不用纠结了 05/24 21:31
我是相信Quartus的... 只是老师不认为答案是没latch,让我很纳闷
2F:→ wildwolf: 有 default 值(写在前面或是最後有 else)就不会有 latch 05/25 07:50
3F:→ wildwolf: 所以只有第三个例子会有latch产生,跟 quartus 结果相符 05/25 07:52
感谢,只要所有有可能出现的input,它的output值能被决定就不会有latch
4F:推 mmonkeyboyy: 其实问题在於这verilog语法 .... 唉 05/25 11:28
5F:→ mmonkeyboyy: 通常你要有else 就不会有latch 05/25 11:29
6F:→ mmonkeyboyy: 如果是else if 你通常就会有latch (状态没列完) 05/25 11:29
7F:→ mmonkeyboyy: 第一个没有的原因是因为你有y=0 先定义了所有y可能性 05/25 11:30
8F:→ mmonkeyboyy: 这 能的话就别用verilog 了 学学 always_comb 等 05/25 11:31
9F:→ mmonkeyboyy: 用法吧 05/25 11:31
感谢回覆,那能请问问题(1)的答案应该要选2会比较精确是吗?
因为可能还会再跟老师讨论,要想办法说服他
※ 编辑: e758e (220.129.54.218 台湾), 05/25/2021 20:21:54
※ 编辑: e758e (220.129.54.218 台湾), 05/25/2021 20:24:32