DSP48最早出現在XilinxVirtex-4 FPGA中,但就乘法器而言,Virtex-II和Virtex-II Pro中就已經有了專用的18x18的乘法器,不過DSP48可不只是乘法器,其功能更加多樣化。DSP48基本結構如下圖所示(圖片來源:ug073, Figure 2-1)。DSP48中的核心單元是18x18的乘法器。從圖中不難看出,DSP48可實現基本數學函數P=Z±(X+Y+CIN)。這里X、Y和Z是圖中3個MUX的輸出。根據圖中MUX的輸入,上述數學函數可以變為P=A*B+C或P=A*B+PCIN,后者需用級聯DSP48。因為PCIN和PCOUT是專用走線相連。同時,與Virtex-II不同,Virtex-II中,相鄰的DSP48和Block RAM共享互連資源,而在Virtex-4中,DSP48和Block RAM有獨立的布線資源。
此外,從資源角度看,Virtex-4SX55包含的DSP48最多,一共8列512個DSP48,在全流水模式下,可運行到的最高頻率為500MHz。
在Virtex-5中,引入了增強型DSP48,稱之為DSP48E,其基本結構如下圖所示(圖片來源ug193, Figure 1-1)。這種增強體現在以下幾點:乘法器變為25x18;A端口變為30位,其中低25位可用于乘法器的輸入,A和B可拼接為48位,從而可實現{A,B}+C(兩個48位數據相加);乘法器之后不再是簡單的累加器,而是功能更為多樣的ALU(算術邏輯單元),可實現算術運算和邏輯運算。這里特別介紹一下ALU,ALU支持SIMD功能(Single InstructionMultiple Data),使得ALU可配置為2個24位的加法器或者4個12位的加法器。從資源角度看,Virtex-5 SX240T包含的DSP48E最多,共1056個,在全流水模式下,可運行到的最高頻率為550MHz。
在Virtex-6和7系列FPGA中,DSP48E功能進一步增強,稱之為DSP48E1,其基本結構如下圖所示(圖片來源ug369, Figure 1-1)。最顯著的變化是在DSP48E中添加了預加器(可實現25位的加法運算),這對于系數對稱的濾波器而言非常有利,可將乘法器資源減半。
在UltraScale和UltraScale Plus系列FPGA中,引入了DSP48E2,其基本結構如下圖所示(圖片來源ug579,Figure 2-1)。相比于DSP48E1,其中的乘法器變為27x18,端口D的位寬也由25位變為27位,這樣預加器可支持27位的加法運算。預加器的輸出可同時送給乘法器的兩個輸入端口,從而很容易實現平方運算。同時,增加了一個MUX,對應圖中的W。ALU可實現Z+W+X+Y。
對比DSP48、DSP48E、DSP48E1和DSP48E2,如下表所示。
Tcl之$$a 80%的概率...... AI Engine到底是什么?
ACAP不可不知的幾個基本概念
HLS中循環的并行性(2)
HLS中循環的并行性(1)
HLS優化方法DATAFLOW你用了嗎
HLS中如何控制流水程度
如何查看可綜合C代碼的中間結果
如何在C代碼中插入移位寄存器
HLS IP Library? HLS Math Library:csim ?C/RTL co-sim(2) HLS Math Library:csim ?C/RTL co-sim(1) 用Tcl實現Vivado設計全流程(1) 借助Elaborated Design優化RTL代碼 (a-b)^2如何高效實現? 如何快速找到組合邏輯生成的時鐘 并行加法的高效實現 加法樹還是加法鏈?
兩個數相加,三個數相加有什么不同
加法運算很簡單? AXI-4 Lite與AXI-4 Memory Mapped有什么區別? 深入理解AXI-4 Memory Mapped 接口協議 AXI是Interface還是Bus? 如何閱讀時序報告 時序報告要看哪些指標 如何使set_max_delay不被覆蓋 一些小巧的IP IP是用DCP還是XCI? 如果使用第三方綜合工具,Xilinx IP… IP生成文件知多少 IP的約束需要處理嗎? IP為什么被Locked? copy_ip你用過嗎? IP是XCI還是XCIX 如何降低OSERDES/CLK和CLKDIV的Clock Skew 如何獲取Device DNA 談談設計復用 過約束到底怎么做 時序收斂之Baseline 什么情況下要用OOC綜合方式 異步跨時鐘域電路該怎么約束 如何復用關鍵路徑的布局布線信息 Vivado學習資料有哪些? 異步跨時鐘域電路怎么設計 ECO都有哪些應用 FPGA中的CLOCK REGION和SLR是什么含義 FPGA中的BEL, SITE, TILE是什么含義 約束文件有哪些 如何高效復用Block的位置信息? 如何復用關鍵寄存器的位置信息 部分可重配置都生成哪些.bit文件 VIO你用對了嗎 Device視圖下能看到什么 Schematic視圖下能看到什么 都是pin,有什么區別 都是net,有什么區別 如何快速查找目標cell 學習筆記:深度學習與INT8 學習筆記:多層感知器 學習筆記:單層感知器的局限性 學習筆記:單層感知器基礎知識 學習筆記:神經網絡學習算法 學習筆記:神經網絡模型 學習筆記:ReLU的各種變形函數 學習筆記:神經元模型(2) 學習筆記:神經元模型(1) 學習筆記:深度學習之“深” 學習筆記:深度學習之“學習” 學習筆記:人工智能、機器學習和深度學習 2019文章匯總
責任編輯:xj
原文標題:DSP48演變史
文章出處:【微信公眾號:Lauren的FPGA】歡迎添加關注!文章轉載請注明出處。
-
dsp
+關注
關注
554文章
8059瀏覽量
350068 -
Xilinx
+關注
關注
71文章
2171瀏覽量
122014 -
FGPA
+關注
關注
1文章
25瀏覽量
16051
原文標題:DSP48演變史
文章出處:【微信號:Lauren_FPGA,微信公眾號:FPGA技術驛站】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論