精華區beta CSSE 關於我們 聯絡資訊
如題... 最近剛學verilog看到$random [(seed)] <---這個解釋是 a 32-bit random number of signed integer 意思是說有2的32次方個數值嗎? 假設 always #5 Y= $random%60; \\有限制,隨機在-59~59間產生數據輸出 這邊我也不太懂...? 如果今天隨機輸出的值是32 那換成表示是2bit 10000 那在時序圖上的表示是如何呢? 因為在時序圖上只能看到high low這樣的脈波阿... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.124.134.12
micklin:那個英文的意思是「一個32位元的有號隨機數」 07/24 20:30
這個我瞭解 只是我的意思是說當我輸入%60時 會跑-59~59 所以最大值就是%2^32 這個數值對嗎? 那如果我#5 5ns後動作那個Y= $random%60 有什麼意義... 因為在時序圖上5ns動作後 假設隨機值是32那 5ns到10ns間這個值是多少?......看時序圖 也只有high low 這樣 看不出他的值 那如果只有high low...那為什麼要設60? 而不假設%1 就好 同樣都只有high low不是嗎@@? ※ 編輯: kid0368 來自: 140.124.134.12 (07/24 20:38) 假設說今天F = X&Y Text bench中設定 always #5 X=$random%60 always #5 Y=$random%60 再假設X隨機值16 Y隨機值15 那F會變成什麼??.... 謝謝= =" ※ 編輯: kid0368 來自: 140.124.134.12 (07/24 20:43)
kid0368:還是說這整個就只是假設= ="沒有意義.... 07/24 20:48
micklin:i don't know verilog 07/25 00:22
firejox:我猜%是mod的意思 07/25 00:24
firejox:如果是%1就會變成0 (逃~~ 07/25 00:25
kid0368:我記得%是Mod XDD好像是樓上說的這樣 07/25 20:46
kid0368:但樓上的大大= ="可以解釋一下為什麼MOD 1 會等於0 07/25 20:57
kid0368:我突然忘記要怎麼解釋了...是說任何數對1取餘數 07/25 20:57
kid0368:商數只能為0 所以餘數不是1 嗎= =" 07/25 20:58
firejox:MOD n 出來的值是-(n-1) ~ n-1 07/25 21:02
firejox:假如可以除下去就不能算餘數呀~ 07/25 21:04
firejox:有負號會是指亂數是負的情況(以電腦而言) 07/25 21:06
firejox:被除數=除數*商數+餘數 07/25 21:07
kid0368:我懂了 @@ 感謝T^T 07/25 21:11