一. 概述
這里以7系列的FPGA為例,先從整體上去了解一下FPGA內(nèi)部可編程邏輯資源的結(jié)構(gòu)。了解FPGA器件的內(nèi)部資源與結(jié)構(gòu)有利于我們優(yōu)化設(shè)計(jì)與評(píng)估設(shè)計(jì)資源。
現(xiàn)在的FPGA里面有很多存儲(chǔ)資源,DSP(數(shù)字信號(hào)處理)資源,布線通道,I/O資源,當(dāng)然最根本的還是CLB(Configurable Logic Block)。Xilinx的資源分布采用ASMBL架構(gòu)。下圖是一個(gè)抽象的結(jié)構(gòu)圖,相同資源以列方式排布。這篇文章主要講解CLB資源。
二. CLB資源介紹
CLB資源的分布以縱向相連,如下圖所示。每個(gè)CLB由兩個(gè)Slice組成。同一個(gè)CLB里面的兩個(gè)Slice之間沒有互連線。
	
每個(gè)Slice里面有4個(gè)6輸入的LUT(look-up tables(查找表))和8個(gè)存儲(chǔ)單元(Storage)以及進(jìn)位邏輯(Carry Logic)和多路選擇器(Multiplexers)。同時(shí)Slice有兩種。
普通的Slice叫SLICEL,電路結(jié)構(gòu)如下,最左邊一列就是4個(gè)LUT,第二列為Carry Logic,以及紅色框框出來的存器單元。
	
第二種Slice叫SLICEM,電路結(jié)構(gòu)如下。除了LUTS與SLICEL的LUTS不同之外,其余結(jié)構(gòu)都一樣。這就是SLICEM與SLICEL之間的區(qū)別,利用SLICEM的LUTS還可以構(gòu)成RAM,ROM,以及Shift Registers(移位寄存器)。
	
一個(gè)CLB里面含有一個(gè)SLICEM和SLICEL或者含有兩個(gè)SLICEL。
Slice就是通過LUTS以及Carry Logic和Multiplexers之間的互連來形成組合邏輯,再通過Storage elements構(gòu)成寄存器以形成時(shí)序邏輯。
同時(shí)借助SLICEM的LUTS,還可以構(gòu)成RAM,ROM,Shift Registers資源。
下表是一個(gè)CLB可以擁有的資源數(shù)以及可以形成大小為多少的RAM與Shift Registers。我們可以借助這些信息去評(píng)估設(shè)計(jì)需要多少資源和選擇什么型號(hào)的FPGA器件。
- 
                                FPGA
                                +關(guān)注
關(guān)注
1652文章
22231瀏覽量
628548 - 
                                CLB
                                +關(guān)注
關(guān)注
0文章
30瀏覽量
6304 
原文標(biāo)題:FPGA內(nèi)部可編程邏輯資源的結(jié)構(gòu),CLB資源介紹
文章出處:【微信號(hào):FPGAer_Club,微信公眾號(hào):FPGAer俱樂部】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
什么是可編程邏輯
可編程邏輯器件
【FPGA - 基礎(chǔ)知識(shí)(零)】FPGA芯片資源介紹 精選資料推薦
什么是PLD(可編程邏輯器件)
    
可編程邏輯器件FPGA/CPLD結(jié)構(gòu)與應(yīng)用
基于FPGA進(jìn)行可編程邏輯設(shè)計(jì)
    
現(xiàn)場可編程邏輯門陣列器件 FPGA原理及應(yīng)用設(shè)計(jì)
    
關(guān)于可編程邏輯推動(dòng)基于MCU的設(shè)計(jì)的分析和應(yīng)用
    
FPGA CPLD可編程邏輯器件的在系統(tǒng)配置方法
    
          
        
        
FPGA內(nèi)部可編程邏輯CLB資源分析
                
 
    
           
            
            
                
            
評(píng)論