[問題] VHDL算質數
我有一個Diligent Nexys 2的版
問題是我想算一個質數, 我設置了四個Case
假如: 8/2=4, 8=>Divident, 2=>Divisor, 4=>Quotient, 0=>Fractional (因為沒有餘數)
我設置了4個Case
Case 1跟2: 如果Divisor或Dividend是0, 加到1, 如果Divisor 是1, 加到2
Case 3: 如果Divident = Divisor, 那就是質數, 因為以下
Case 4: Quotient < Dividend, and Fractional = 0, 那他就不是質數
Case 5: Quotient < Dividend, and Fractional > 0, 那他可能是質數, 所以Divisor+1
我的RAM裡面存了X"00000008", X"00000004", X"00000005", X"0000000C", X"00000082"
小螢幕上面應該顯示2, 因為第二位才是質數, 可是他顯示0000 or 8888
重點是我的螢幕不明原因只顯是亂碼或是0000, 我也Debug了很久找不出問題
我全部都有設定Reset, Division Core只需要一個Clock Period就可以算出值, 不懂
為什麼會一出現亂碼
Code在下面:
https://gist.github.com/721246
請各位大大麻煩給個提示...在這個問題上超過48小時了
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 71.183.68.91
※ 編輯: BlackMatrix 來自: 71.183.68.91 (11/30 14:08)
※ 編輯: BlackMatrix 來自: 71.183.68.91 (11/30 14:09)