1. 程式人生 > 其它 >FPGA基本結構之slice

FPGA基本結構之slice

可以看到 一個 slice 有4個部分:4個6輸入查詢表,3個選擇器,一個CARRY4進位鏈,還有8個暫存器。

其中CARRY4可以用來實現加法器,具體如何實現很容易搜到。IO引腳 是可以直接接入CARRY4的DI端的。(IO的輸入端可能是下圖的AX,BX,CX,DX ?猜測)

淺談XILINX FPGA CLB單元 之 進位邏輯鏈(CARRY4原理分析,超前快速進位邏輯結構)

資料選擇器

下圖是一個16選1的資料選擇器的綜合實現圖,可以看出,sel訊號是能夠直接通過IO接入資料選擇器的。而且可以看出,選擇器MUXF的輸入是隻能從查詢表輸出的,並不能從IO送過來。因此綜合工具在實現資料選擇器的時候,會首先使用LUT,這樣就可以避免使用MUXF的資源。因為如果直接使用MUXF資源的話,但輸入只能從LUT獲得,LUT資源同樣也被消耗了。 但如果實現的功能查詢表無法實現時,就會使用 MUXF,避免使用其他的SLICE資源。 

關於SLICEM:

sliceM的LUT可以配置為 分散式RAM、ROM、移位暫存器,LUT6可以配置為32bit的移位暫存器,也就是說32位的移位暫存器只需要消耗一個LUT