引言
由於卷積核數據在計算過程中保持不變,更新較慢。這樣就可以利用LUT來存儲權重並同時進行乘法運算。LUT乘法器的實現很早就已經研究過,本論文正是在此基礎上,提出了用於實現可配置的卷積實現方法。基於LUT的乘法器不會受到FPGA中DSP資源的限制,能夠將神經網路加速應用於低端FPGA晶元。
01 LUT乘法器的實現
一個LUT有固定的輸入和輸出管腳,例如在xilinx的zynq系列器件中,LUT有5個輸入1個輸出或者4個輸入兩個輸出。如何用LUT來實現任意大小的乘法運算呢?這裡用到了一個基本的數學法則:因式分解。考慮一個補碼數據x,其有Bi bit,那麼表示為: