可配置邏輯塊由4個相互連接的Slice和附加邏輯構(gòu)成,用于實現(xiàn)組合邏輯和時序邏輯。其拓?fù)浣Y(jié)構(gòu)如圖1所示,每一對Slice分布在同一列并共有一條獨立的進位鏈。
圖1 CLB拓?fù)浣Y(jié)構(gòu)
用于組成同一個CLB的4個Slice共用以下兩個函數(shù)發(fā)生器、兩個存儲單元、多層函數(shù)復(fù)用器、進位邏輯和算術(shù)邏輯,如圖2所示。左側(cè)的Slice通常用SliceM表示;右側(cè)的Slice對通常用SliceL表示,它們通過這些單元實現(xiàn)邏輯、算術(shù)和ROM的功能。除此之外,SliceM還可以用做兩種特殊的功能,即分布式RAM和16bit移位寄存器,分別用于數(shù)據(jù)存儲和數(shù)據(jù)移位操作。同時通過這個簡圖可以清楚了解除了SliceM所特有的功能外,在其他Slice中也同樣存在的各個單元和相互之間的連接關(guān)系。
基于RAM的函數(shù)發(fā)生器,也就是通常所說的查找表是用于實現(xiàn)邏輯功能的主要部件,而且SliceM中的分布式RAM和移位寄存器就是用它來實現(xiàn)的,分別用字母“G”和“F”來表示上一部分和下一部分的查找表。
圖2 SliceM簡圖
存儲單元可以通過編程用做D觸發(fā)器或鎖存器,可以提供數(shù)據(jù)與時鐘同步的功能。上一部分的存儲單元稱為“FFY”,下一部分的存儲單元稱為“FFX”。
多層函數(shù)復(fù)用器結(jié)構(gòu)(Wide-function multiplexers)通過高效地組合相關(guān)查找表來實現(xiàn)復(fù)雜的邏輯功能,每個Slice擁有兩個組這類的復(fù)用器,中間的F5MUX和FiMUX分別位于Slice的上下兩個部分。
進位邏輯由進位鏈和專用的算術(shù)邏輯門組成,用于完成快速高效的數(shù)學(xué)運算。進位鏈由5個復(fù)用器控制,分別為CYINIT、CY0F、CYMUXF、CY0G和CYMUXG。
算術(shù)邏輯包括1個異或門(XORG)、1個專用的乘累加(MULT-AND),異或門可以使1個Slice實現(xiàn)兩位全加操作,專用的乘累加用于提高乘法器邏輯的速度和效率。
Spartan-3的CLB具有大量的專用多路復(fù)用器,這些專用復(fù)用器可以提高多層復(fù)用結(jié)構(gòu)和多輸入函數(shù)的性能。比如,用一個32:1的復(fù)用器可以在同一級邏輯層實現(xiàn)一個79輸入的布爾邏輯函數(shù)。這些復(fù)用邏輯包括4個F5MUX、兩個FGMUX、1個FTMUX和1個FSMUX四種類型的復(fù)用結(jié)構(gòu)(器)。F5MUX表示可以用來建立任何5輸入的函數(shù),以此類推,F(xiàn)SMUX可以用來創(chuàng)建任何8輸入的函數(shù)。多路復(fù)用結(jié)構(gòu)如圖3所示,圖中MUXF5復(fù)用了兩個基本的LUT,最大可以實現(xiàn)一個9輸入函數(shù):MUXF6復(fù)用兩個MUXF5,相當(dāng)于4個LUT被復(fù)用,最大可以實現(xiàn)一個19輸入函數(shù);MUXF7復(fù)用兩個MUXF6,相當(dāng)于8個LUT被復(fù)用,最大可以實現(xiàn)一個39輸入函數(shù);而MUXF8復(fù)用兩個MUXF7,相當(dāng)于兩個基本的CLB單元(相鄰的)被復(fù)用,最大可以實現(xiàn)一個79輸入函數(shù)。
圖3 Spartan-3的多路復(fù)用結(jié)構(gòu)
從圖中還可以看出專用復(fù)用器有個很明顯的優(yōu)勢,就是有專用的布線資源來連接不同級別的復(fù)用器。雖然在同一個CLB中每個復(fù)用器都被設(shè)計成只有一個輸出端口,并且輸出都只被回連到CLB的輸入端。但是這些互連所用的布線資源都是0延時的,因此可以把同一個CLB中的所有復(fù)用器看做是一個串聯(lián)關(guān)系。
F5MUX復(fù)用器的輸出連到一個FiMUX的輸入端,F(xiàn)iMUX的輸出被連到同一個CLB中上一層的其他FiMUX;而FTMUX的輸出在需要的情況下還可以連接另一個CLB中。
概括起來,在Spartan-3、Spartan-3E、Spartan-3A和Spartan-3AN系列的每個基本的CLB單元是由4個Slice、兩個三態(tài)緩沖器TBUF構(gòu)成,其中包含8個查找表LUT、8個可編程觸發(fā)器、8個“乘累加”邏輯門和兩個算術(shù)進位鏈??梢栽谝粋€CLB中實現(xiàn)64位的分布式RAM或64位的基于查找表的移位寰存器(SRL16),并且提供豐富的多路復(fù)用結(jié)構(gòu)和數(shù)據(jù)通道,從而保證內(nèi)部互連的特性。
來源:ks990次