兩個(gè)數(shù)相加,三個(gè)數(shù)相加有什么不同 接下來(lái),我們考慮4個(gè)32-bit有符號(hào)數(shù)相加該如何實(shí)現(xiàn),其中目標(biāo)時(shí)鐘頻率仍為400MHz。以UltraScale Plus系列芯片為目標(biāo)芯片。 第一種方案:四個(gè)數(shù)直接相加此方案對(duì)應(yīng)的電路圖如下圖所示。這里不難看出關(guān)鍵路徑是三個(gè)加法器所在路徑,這將是時(shí)序收斂的瓶頸。
此電路對(duì)應(yīng)的SystemVerilog代碼如下圖所示。
從綜合后的結(jié)果來(lái)看,邏輯級(jí)數(shù)最高為7。
第二種方案:加法樹(shù)
加法樹(shù)的結(jié)構(gòu)如下圖所示,兩兩相加。與第一種方案相比,可以有效降低邏輯級(jí)數(shù)。
此電路對(duì)應(yīng)的SystemVerilog代碼如下圖所示。
從綜合后的結(jié)果來(lái)看,邏輯級(jí)數(shù)最高為6。 第三種方案:加法鏈之所以選用加法鏈的結(jié)構(gòu)是因?yàn)?a target="_blank">DSP48本身就是這種鏈?zhǔn)浇Y(jié)構(gòu)。對(duì)應(yīng)的電路如下圖所示。其中a0和a1端口有一級(jí)寄存器,a2端口有兩級(jí)寄存器,a3端口有三級(jí)寄存器。
此電路對(duì)應(yīng)的SystemVerilog代碼如下圖所示。
接下來(lái),我們對(duì)這三種方案進(jìn)行比較,如下圖所示。不難看出,第一種方案邏輯級(jí)數(shù)最高,消耗的LUT也最多,時(shí)序結(jié)果也是最差的(盡管達(dá)到了收斂的目的)。后兩種方案不相上下。
如果將這三種方案通過(guò)綜合屬性USE_DSP使其映射到DSP48上,結(jié)果如何呢?如下圖所示。不難看出,第一種方案只消耗了兩個(gè)DSP,資源利用率最低,但時(shí)序也是最糟糕的。后兩種方案都用了三個(gè)DSP,但第三種方案由于可以很好地匹配硬件結(jié)構(gòu),故時(shí)序最好。
對(duì)比下來(lái)不難得出這樣的結(jié)論:寫(xiě)RTL代碼時(shí),盡可能地做到代碼風(fēng)格與硬件結(jié)構(gòu)相匹配,可達(dá)到更好的性能。
Tcl之$$a 80%的概率...... AI Engine到底是什么?
ACAP不可不知的幾個(gè)基本概念
嵌套的for循環(huán),到底對(duì)哪個(gè)執(zhí)行pipeline更好
HLS中循環(huán)的并行性(2)
HLS中循環(huán)的并行性(1)
HLS優(yōu)化方法DATAFLOW你用了嗎
HLS中如何控制流水程度
Vivado HLS學(xué)習(xí)資料有哪些
如何查看可綜合C代碼的中間結(jié)果
如何在C代碼中插入移位寄存器
HLS IP Library? HLS Math Library:csim ?C/RTL co-sim(2) HLS Math Library:csim ?C/RTL co-sim(1) 加法運(yùn)算很簡(jiǎn)單? AXI-4 Lite與AXI-4 Memory Mapped有什么區(qū)別? 深入理解AXI-4 Memory Mapped 接口協(xié)議 AXI是Interface還是Bus? 如何閱讀時(shí)序報(bào)告 時(shí)序報(bào)告要看哪些指標(biāo) 如何使set_max_delay不被覆蓋 一些小巧的IP IP是用DCP還是XCI? 如果使用第三方綜合工具,Xilinx IP… IP生成文件知多少 IP的約束需要處理嗎? IP為什么被Locked? copy_ip你用過(guò)嗎? IP是XCI還是XCIX 如何降低OSERDES/CLK和CLKDIV的Clock Skew 如何獲取Device DNA 談?wù)勗O(shè)計(jì)復(fù)用 過(guò)約束到底怎么做 時(shí)序收斂之Baseline 什么情況下要用OOC綜合方式 異步跨時(shí)鐘域電路該怎么約束 如何復(fù)用關(guān)鍵路徑的布局布線信息 Vivado學(xué)習(xí)資料有哪些? 異步跨時(shí)鐘域電路怎么設(shè)計(jì) ECO都有哪些應(yīng)用 FPGA中的CLOCK REGION和SLR是什么含義 FPGA中的BEL, SITE, TILE是什么含義 約束文件有哪些 如何高效復(fù)用Block的位置信息? 如何復(fù)用關(guān)鍵寄存器的位置信息 部分可重配置都生成哪些.bit文件 VIO你用對(duì)了嗎 Device視圖下能看到什么 Schematic視圖下能看到什么 都是pin,有什么區(qū)別 都是net,有什么區(qū)別 如何快速查找目標(biāo)cell 學(xué)習(xí)筆記:深度學(xué)習(xí)與INT8 學(xué)習(xí)筆記:多層感知器 學(xué)習(xí)筆記:?jiǎn)螌痈兄鞯木窒扌?學(xué)習(xí)筆記:?jiǎn)螌痈兄骰A(chǔ)知識(shí) 學(xué)習(xí)筆記:神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法 學(xué)習(xí)筆記:神經(jīng)網(wǎng)絡(luò)模型 學(xué)習(xí)筆記:ReLU的各種變形函數(shù) 學(xué)習(xí)筆記:神經(jīng)元模型(2) 學(xué)習(xí)筆記:神經(jīng)元模型(1) 學(xué)習(xí)筆記:深度學(xué)習(xí)之“深” 學(xué)習(xí)筆記:深度學(xué)習(xí)之“學(xué)習(xí)” 學(xué)習(xí)筆記:人工智能、機(jī)器學(xué)習(xí)和深度學(xué)習(xí) 2019文章匯總
原文標(biāo)題:加法樹(shù)還是加法鏈?
文章出處:【微信公眾號(hào):Lauren的FPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
-
電路圖
+關(guān)注
關(guān)注
10354文章
10725瀏覽量
532339 -
32-bit
+關(guān)注
關(guān)注
0文章
7瀏覽量
6427
原文標(biāo)題:加法樹(shù)還是加法鏈?
文章出處:【微信號(hào):Lauren_FPGA,微信公眾號(hào):FPGA技術(shù)驛站】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論