如何建立一個面積效率高的電路,該電路使用4輸入LUT(查找表)對15位輸入中的設定位數進行計數。輸出顯然是4位(計數0-15)。有人聲稱可以使用9個LUT。計數15位輸入中設定位數的電路
6
A
回答
1
我可以做到這一點。它是第一個櫃檯(4桌),然後是一個帶有進位(3和3桌)的2階段加法器。
我懷疑有一種方法可以做得更好,因爲我沒有完全使用每個LUT,但有時候一個簡單的設計是值得的額外成本。我嘗試了其他方法,仍然需要10.
祝你的作業。 (:
2
那麼,我會讓你開始。查找表之間的第一層將是這樣的:他們的
0 0 0 0 = 00
0 0 0 1 = 01
0 0 1 0 = 01
0 0 1 1 = 10
0 1 0 0 = 01
0 1 0 1 = 10
0 1 1 0 = 10
0 1 1 1 = 11
1 0 0 0 = 01
1 0 0 1 = 10
1 0 1 0 = 10
1 0 1 1 = 11
1 1 0 0 = 10
1 1 0 1 = 11
1 1 1 0 = 11
1 1 1 1 = 00
價差4在你的十五位輸入,以輸出並通過兩個新的查找表看起來像這樣通過他們:
0 0 0 0 = 000
0 0 0 1 = 001
0 0 1 0 = 010
0 0 1 1 = 011
0 1 0 0 = 001
0 1 0 1 = 010
0 1 1 0 = 011
0 1 1 1 = 100
1 0 0 0 = 010
1 0 0 1 = 011
1 0 1 0 = 100
1 0 1 1 = 101
1 1 0 0 = 011
1 1 0 1 = 100
1 1 1 0 = 101
1 1 1 1 = 110
...等等。當然,你將不得不解決第一層產生相同輸出的所有零和全部問題。
而我可能是完全錯誤的。
-4
這裏用一些C代碼來計算位數: C code to count the number of '1' bits。您必須將其轉換爲硬件。
相關問題
- 1. 計數整數中的設定位數?
- 2. 設計電路檢測位置
- 3. 計算平均數,中位數和用戶輸入的整數
- 4. 15位二進制64位小數?
- 5. 使用佔位符設計輸入
- 6. C位移位奇數結果過去15位移位左移
- 7. 將一個15位數字計算到MySQL的BIGINT列中
- 8. 數字輸入字段中的兩位數佔位符
- 9. 在Verilog中,在8位輸入中計數並輸出1的個數?
- 10. 一位數字輸入結果到兩位數輸出組件
- 11. 如何在cpp中輸入小數點後的特定位數?
- 12. 移位輸入參數
- 13. LMC計劃尋找3位輸入的中位數和最小位數之間的差異?
- 14. 確定char中設定的位數
- 15. 輸出二進制輸入平方的電路設計
- 16. 無法計數作爲輸入的位數
- 17. 計算中位數
- 18. 計算中位數
- 19. 在C計數位中旋轉的位
- 20. 計算字符的位數和位數
- 21. MySQL:計數中位數值
- 22. 設置通過用戶輸入打印的小數位數
- 23. 位置固定的輸入
- 24. 我應該在邏輯電路設計中消除輸入嗎?
- 25. 位計數
- 26. 設置數字中的特定位
- 27. 快速計算__m128i寄存器中的設定位數
- 28. python opencv中位數電影
- 29. 計數位數組中的個數
- 30. 如何思考數字電路設計
硬件問題在這個論壇上通常沒有得到很好的迴應 – samoz 2009-07-15 01:00:03