官术网_书友最值得收藏!

1.5 DSP塊

本節將介紹Cyclone 10 GX器件內DSP塊的性能、資源、架構和應用。

1.5.1 DSP塊特性

Cyclone 10 GX器件中可變精度的DSP塊支持定點運算和浮點運算。

1.定點運算

(1)高性能、功耗優化和完全寄存的乘法操作;

(2)18位和27位字長;

(3)每個DSP塊有兩個18×19的乘法器或27×27的乘法器;

(4)內建加法、減法和64位雙累加寄存器,用于組合乘法結果;

(5)當禁止預加法器時,級聯19位或27位,當預加法器用于生成濾波器應用的抽頭延遲線時級聯18位;

(6)級聯64位輸出總線,將輸出結果從一個塊傳到下一個塊,而無須外部邏輯支持;

(7)硬件預加法器支持19位和27位模式,用于對稱濾波器;

(8)用于實現濾波器的18位和27位模式的內部系數寄存器組;

(9)具有分布式輸出加法器的 18 位和 27 位脈動有限沖激響應(Finite Impulse Response,FIR)濾波器;

(10)支持偏向的舍入支持。

2.浮點運算

(1)完全硬化的架構,支持乘法、加法、減少法、乘法-加法和乘法-減法;

(2)具有累加功能的乘法,以及動態累加器的復位控制功能;

(3)具有級聯求和功能的乘法;

(4)具有級聯減法功能的乘法;

(5)復雜的乘法;

(6)直接矢量點積;

(7)脈動FIR濾波器。

1.5.2 DSP塊資源

Cyclone 10 GX器件中用于定點運算的DSP資源如表1.25所示,用于浮點運算的DSP資源如表1.26所示。

表1.25 Cyclone 10 GX器件中用于定點運算的DSP資源

表1.26 Cyclone 10 GX器件中用于浮點運算的DSP資源

1.5.3 DSP塊架構

Cyclone 10 GX器件內可變精度DSP塊的構成元素如表1.27所示。

表1.27 Cyclone 10 GX器件內可變精度DSP塊的構成元素

用于定點算術18×19模式的可變精度的DSP塊的內部架構如圖1.61所示。

用于定點算術27×27模式的可變精度的DSP塊的內部架構如圖1.62所示。

用于浮點算術模式的可變精度的DSP塊的內部架構如圖1.63所示。

1.5.4 DSP塊應用

本節通過幾個設計實例,說明Cyclone 10 GX器件內DSP塊的使用方法。

1.帶有流水線有符號乘法的實現

一個帶有流水線的有符號數乘法器的 Verilog HDL 描述如代碼清單 1-19 所示,并且在“Assignment Editor”對話框中進行條件約束,如圖1.64所示,將第一級流水線放置在I/O塊中實現,而剩余的兩級輸入流水線在 DSP 塊的兩級流水線寄存器中實現,乘法的結果通過DSP內的流水線寄存器輸出。

圖1.61 用于定點算術18×19模式的可變精度的DSP塊的內部結構

圖1.62 用于定點算術27×27模式的可變精度的DSP塊的內部結構

圖1.63 用浮點算術模式的可變精度的DSP塊的內部結構

圖1.64 “Assignment Editor”對話框

代碼清單1-19 一個帶有流水線的有符號數乘法器的Verilog HDL描述

帶有流水線的有符號乘法器適配后的網表結構如圖 1.65 所示。該設計在底層 DSP 快內的布局和布線如圖1.66所示。

圖1.65 帶有流水線的有符號乘法器適配后的網表結構

圖1.66 帶有流水線的有符號乘法器適配后在DSP塊內的布局和布線

2.乘和累加運算的實現

一個乘和累加運算的 Verilog HDL 描述如代碼清單 1-20 所示。乘和累加運算映射后的網表結構(注:此處為了便于顯示,沒有使用適配后的網表結構)如圖1.67所示。

圖1.67 乘和累加運算映射后的網表結構

代碼清單1-20 一個乘和累加運算的Verilog HDL描述

思考與練習1-9:請讀者打開Chip Planner,查看乘和累加運算在兩個DSP塊內部的布局和布線。

3.浮點運算的實現

在設計中調用浮點IP核實現浮點數運算的Verilog HDL描述如代碼清單1-21所示。浮點運算映射后的網表結構(注:此處為了便于顯示,沒有使用適配后的網表結構)如圖 1.68所示。

圖1.68 浮點運算映射后的網表結構

代碼清單1-21 調用浮點IP核實現浮點數運算的Verilog HDL描述

思考與練習 1-10:請讀者打開 Chip Planner,查看浮點運算在 DSP 塊內部的布局和布線,并與圖1.68給出的結構進行比較。

主站蜘蛛池模板: 青州市| 新宾| 汝南县| 澎湖县| 邢台县| 贵港市| 镇坪县| 临湘市| 和平县| 隆子县| 苏尼特右旗| 新干县| 东乡族自治县| 安乡县| 乌拉特后旗| 延安市| 郎溪县| 永泰县| 法库县| 济源市| 鸡泽县| 金沙县| 阿城市| 蕲春县| 高青县| 青铜峡市| 黑水县| 道真| 乌兰察布市| 洪湖市| 仁布县| 五指山市| 当涂县| 资溪县| 伊金霍洛旗| 乳山市| 霍山县| 晋城| 自贡市| 海门市| 平果县|