《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 其他 > 入門:FPGA重要資源CLB、Slice、LUT介紹

入門:FPGA重要資源CLB、Slice、LUT介紹

2022-10-25
來源:FPGA設(shè)計(jì)論壇
關(guān)鍵詞: clb Slice 寄存器

  淺談XILINX FPGA CLB單元 之 進(jìn)位邏輯鏈(CARRY4原理分析,超前快速進(jìn)位邏輯結(jié)構(gòu))

  一、可配置邏輯塊(Configurable Logic Block, CLB)簡介

  CLB可配置邏輯塊是指實(shí)現(xiàn)各種邏輯功能的電路,是xilinx基本邏輯單元。下圖給出了一個(gè) SLICEM 的內(nèi)部結(jié)構(gòu)。

  其中包含4個(gè)6輸入LUT、進(jìn)位鏈、多路復(fù)用器和8個(gè)寄存器

  19bf988a-4638-11ed-96c9-dac502259ad0.png

  在Xilinx FPGA中,每個(gè)可配置邏輯塊(CLB)包含2個(gè)Slice。每個(gè)Slice 包含查找表、寄存器、進(jìn)位鏈和多個(gè)多數(shù)選擇器構(gòu)成。而Slice又有兩種不同的邏輯片:SLICEM和SLICEL。SLICEM有多功能的LUT,可配置成移位寄存器,或者ROM和RAM。邏輯片中的每個(gè)寄存器可以配置為鎖存器使用。今天寫這篇文章的目的主要是為了讓我們搞清楚FPGA重要資源CLB、Slice、LUT。

  二、進(jìn)位邏輯鏈

  CLB進(jìn)位模塊

  在CLB中,除了函數(shù)發(fā)生器之外,還提供了專用的快速超前進(jìn)位邏輯,以slice片中執(zhí)行快速算術(shù)加法和減法。7系列FPGA CLB具有兩個(gè)獨(dú)立的進(jìn)位鏈,如下圖所示。進(jìn)位鏈可級聯(lián)以形成更寬的加/減邏輯。

 1a160ef4-4638-11ed-96c9-dac502259ad0.png

  進(jìn)位邏輯鏈的結(jié)構(gòu)(CARRY4)

  7系列FPGA 每個(gè) SLICE有 4bit 的進(jìn)位鏈。進(jìn)位鏈向上延伸,每個(gè)slice的高度為四位。對于每個(gè)位,都有一個(gè)進(jìn)位多路復(fù)用器(MUXCY) 和專用的XOR門,用于用選定的進(jìn)位位加/減操作數(shù)。專用的進(jìn)位路徑和進(jìn)位多路復(fù)用器(MUXCY)也可以用于級聯(lián)函數(shù)發(fā)生器,以實(shí)現(xiàn)廣泛的邏輯功能。

1a33e2c6-4638-11ed-96c9-dac502259ad0.png

  CARRY4模塊

  CARRY4原語實(shí)例化每個(gè)slice中可用的快速進(jìn)位邏輯。該原語與LUT結(jié)合使用以構(gòu)建加法器和乘法器。下圖顯示了CARRY4原語。綜合工具通常會從算術(shù)HDL代碼中推斷出此邏輯,從而自動(dòng)正確連接此功能。

1a6137da-4638-11ed-96c9-dac502259ad0.png

  端口信號

  1)總輸出-O [3:0] 總和輸出提供加/減的最終結(jié)果。它們連接到slice AMUX / BMUX / CMUX / DMUX輸出。

  2)進(jìn)位輸出-CO [3:0] 進(jìn)位輸出提供每個(gè)位的進(jìn)位。CO [3]等效于COUT。如果通過COUT將CO [3]連接到另一個(gè)CARRY4原語的CI輸入,則可以創(chuàng)建更長的進(jìn)位鏈,并且專用路由將進(jìn)位鏈連接到一排片上。

  3)進(jìn)位輸出還可以選擇連接至sliceAMUX / BMUX / CMUX / DMUX輸出。

  三、CARRY4結(jié)構(gòu)能實(shí)現(xiàn)快速超前加法的原理

  CARRY4的原理過程:

  1)端口S[3:0]是要求數(shù)據(jù)的異或輸入;

  2)端口DI[3:0]是數(shù)據(jù)的輸入(a,b都可以),通過選擇器判斷是否是進(jìn)位標(biāo)志;

  3)MUXCY選擇器作為向下一級輸出標(biāo)志的選擇端口;

  對于一個(gè)全加器

  具體的原理可以參考之前的一篇博客: 數(shù)字電路基礎(chǔ)知識(四) 加法器-半加器、全加器與超前進(jìn)位加法器

  基本的進(jìn)位標(biāo)志和輸出如下。

  1a8115fa-4638-11ed-96c9-dac502259ad0.png

  對于CARRY4,端口S端其實(shí)是已經(jīng)做過亦或處理的輸入了。

  即:

  S=a@b //(@表示異或)

  端口D可以任選a、b輸入當(dāng)中的一個(gè),如選擇b

  輸出端:

  那么O端即表示輸出端:O = S@cin = a@b@cin

  進(jìn)位端:

  CO=(a@b)‘b +(a@b)cin //利用多路復(fù)用器:y=s'b+scin

  =(a'b+ab’)‘b+(a@b)cin

  =(a'b)’(ab‘)'b+(a@b)cin

  =(a+b’)(a'+b)b+(a@b)cin

  =(ab+b'b)(a'+b)+(a@b)cin

  =ab(a'+b)+(a@b)cin

  =(a@b)cin+ab

  所以此CARRY4結(jié)構(gòu)能夠?qū)崿F(xiàn)快速超前進(jìn)位加法器。



更多信息可以來這里獲取==>>電子技術(shù)應(yīng)用-AET<<

mmexport1621241704608.jpg

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。