乘加器
乘加器
在許多科學計算和工程應用中,乘加操作是一種基本的操作。乘加操作將乘法運算的結果與另外一個操作數融合相加得到最終結果.以節省整個乘加操作的執行延遲。一般而言,在數字信號處理器的指令集中都會包含相應的定點乘加操作。
在通用微處理器中,乘法是由軟體實現的,它其實是由時鐘控制的一連串“移位—加法”操作。而對於DSP乘法器,則應具有以下基本基本功能:
要求在一個時鐘周期里對兩個字長為b位的輸入由硬體作快速并行乘法;應能通過格式控制來執行無符號或帶符號或混合的乘法操作、小數或整數乘法操作以及擴展精度或雙精度運算,並有合適的舍位方法;
Σb(n)*x(n - k) 一類的運算,這類運算的乘法和加法總是同時出現,因此DSP中就希望將乘法器和加法器相結合,在一個時鐘周期完成一次乘、加運算,並且累加乘法運算的結果。這樣的運算單元稱為乘法累加器。
對於乘法累加器,除了要求能在一個時鐘周期完成一次乘、加運算外,為了在累加時保證運算精度,還應在累加輸出寄存器中包括足夠的保護位,因其在2b位的乘法輸出寬度之外,所以稱為擴展位。擴展位中的邏輯應該能用來預測累加器的溢出,並且能緊急通知作重新定標度操作,即防溢出處理。