概況
在
通用微處理器中,乘法是由軟體實現的,它其實是由時鐘控制的一連串“移位—加法”操作。而對於DSP乘法器,則應具有以下基本基本功能:
要求在一個
時鐘周期里對兩個字長為b位的輸入由硬體作快速並行乘法; 應能通過格式控制來執行無符號或帶符號或混合的乘法操作、小數或整數乘法操作以及擴展精度或雙精度運算,並有合適的舍位方法;
應有輸入和輸出
暫存器,這樣可以鎖存數據,配合流水線操作。也可不用
暫存器,使乘法器在透明方式下工作,這樣可以有最小的等待時間。
在
數位訊號處理的濾波器、FFT、卷積及各種矢量運算中,由於要執行
Σb(n)*x(n - k) 一類的運算,這類運算的乘法和加法總是同時出現,因此DSP中就希望將乘法器和
加法器相結合,在一個
時鐘周期完成一次乘、加運算,並且累加乘法運算的結果。這樣的運算單元稱為乘法
累加器。
要求
對於乘法
累加器,除了要求能在一個
時鐘周期完成一次乘、加運算外,為了在累加時保證運算精度,還應在累加輸出
暫存器中包括足夠的保護位,因其在2b位的乘法輸出寬度之外,所以稱為擴展位。擴展位中的邏輯應該能用來預測
累加器的溢出,並且能緊急通知作重新定標度操作,即防溢出處理。