基於FPGA的乘法器原理介紹及設計實現

基於FPGA的乘法器原理介紹及設計實現

引言

在軟件設計裏兩個數的相乘可以直接“*”,但是在FPGA的設計裏面,如果直接將兩個數相乘,不僅會佔用大量的cell單元,而且會大大減慢硬件的運算速度。而在越來越多的FPGA設計應用領域,乘法器都被廣泛應用到。本文設計的便是一款計數精度高,計數速度快,節省電路資源的乘法器。通過移位相加的原理來實現乘法器的設計實現。

乘法器原理介紹

乘法器原理介紹圖

乘法器的設計實現

首先介紹乘法器的設計端口:
乘法器的設計端口
接下來介紹乘法器的設計核心:
乘法器的設計核心圖

乘法器的仿真驗證

乘法器的仿真testbench設計如下:
testbench的仿真設計圖
按照上面的testbench仿真設計所示,乘數1:mul_data1= 21;乘數2:mul_data2=31;
那麼仿真結果應該爲muliplicator=25*31=775;
如下圖所示,mul_en使能開啓後,進入乘法運算,muliplicator=775,乘法完成信號mul_done=1同時拉高。
功能仿真波形圖

設計總結

乘法器具有以下優點:
1:通過移位相加的操作代替乘法,具有節省電路資源的優點;
2:計數精度與預期的一致,且計數速度快,所消耗的時鐘不多。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章