[問題] verilog中if else和case合成後的差別

看板Electronics作者 (你在哪)時間11年前 (2012/09/06 13:55), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/3 (看更多)
假設可能的a只有0~10000之間 case(a) 0:---------------\ . \ . 執行ins1 . / . / 10:---------------/ 11:----------------\ . \ . 執行ins2 . / . / 100:----------------/ 101:--------------\ . \ . \ . 執行ins3 . / 1000:--------------/ 1001:------------\ . \ . \ . 執行ins4 假設是個nmos . / 這個gate電壓為: 10000:------------/ 1:如果a=0 0:elsewhere ↓ 以上我可以想像每個case合成後變 以a=0的來說 ins1 ----| ̄ ̄|----->執行的內容 共有一萬個像這樣的transmitting gate組成一個超大多工器 各各平行 即同一時間只有一個transister會通 那寫成 if(a>1000) 執行ins4 else if(a>100) 執行ins3 else if(a>10) 執行ins2 else 執行ins1 應該也是合出上面同義(function上同義)case敘述所合成出的電路吧? 那這樣的話兩種寫法差在哪?寫code的方便性嗎?(如果要寫case就要寫一大堆) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.32.239.249
文章代碼(AID): #1GI3hWmo (Electronics)
文章代碼(AID): #1GI3hWmo (Electronics)