基于LUT的FPGA具有很高的集成度,其器件密度從數萬門到數千萬門不等,可以完成極其複雜的時序與邏輯組合的邏輯電路功能,因此其适用于高速、高密度的高端數字邏輯電路設計領域。其組成部分主要有可編程輸入/輸出單元、基本可編程邏輯單元、内嵌SRAM、豐富的布線資源、底層嵌入功能單元、内嵌專用單元等。FPGA的主要設計和生産廠家有賽靈思、Altera、Lattice、Actel、Atmel和QuickLogic等,其中最大的是美國賽靈思公司,在可編程市場中占有50%以上的份額,比其他所有競争對手市場份額的總和還多。
FPGA是由存放在片内RAM中的程序來設置其工作狀态的,因此,工作時需要對片内的RAM進行編程。用戶可以根據不同的配置模式,采用不同的編程方式。
目前,FPGA市場占有率最高的兩大公司——賽靈思公司和Altera生産的FPGA都是基于SRAM工藝的,需要在使用時外接一個片外存儲器以保存程序。上電時,FPGA将外部存儲器中的數據讀入片内RAM,完成配置後,進入工作狀态;掉電後SRAM存儲的數據丢失,内部邏輯消失。這樣,FPGA能反複使用,且無須專門的FPGA編程器,隻需配備一片存儲代碼的FLASH存儲器即可。
圖1-1 Virtex系列産品XC2V3000的内部結構
1.可配置邏輯塊(CLB)
如圖1-2所示,XC2V3000的CLB模塊由4個相同的Slice和附加邏輯構成,用于實現組合邏輯和時序邏輯。
每個Slice由2個4輸入函數發生器、進位邏輯、算術邏輯、存儲邏輯和函數複用器組成。算術邏輯包括1個異或門(XORG)與1個專用與門(MULTAND),1個異或門可以使1個Slice實現2位全加操作,專用與門用于提高乘法器的效率。進位邏輯由專用進位信号和函數複用器(MUXC)組成,共同實現快速的算術加減法操作。具體結構詳見圖1-3和圖1-4。
圖1-2 Virtex系列産品
圖1-3 Virtex系列産品
圖1-4 Virtex系列産品Slice結構
2.可編程輸入/輸出單元(IOB)
可編程輸入/輸出單元簡稱IOB,提供FPGA内部邏輯與外部封裝引腳之間的接口,用于完成不同電氣特性下對輸入/輸出信号的驅動和匹配。根據當前使用的I/O接口标準的不同,需要設置不同的接口電壓V cco 和參考電壓V REF 。XC2V3000的I/O引腳分布在8個Bank中,同一個Bank的接口電壓V cco 必須保持一緻,不同Bank的接口電壓V cco 允許不同。
如圖1-5所示,XC2V3000的IOB模塊含有6個存儲單元,可以單獨配置為邊沿D觸發器或鎖存器,也可以成對實現DDR(Double-Data-Rate)輸入和DDR輸出。
DDR寄存器的結構見圖1-6。
3.嵌入式塊RAM(BRAM)
XC2V3000的Block SelectRAM資源豐富,其單位容量為18Kb雙端口RAM,可以自由設定數據寬度和深度縱橫比,并支持三種并發讀/寫(Read-During-Write)模式。
圖1-5 Virtex系列産品
圖1-6 DDR寄存器結構
4.豐富的布線資源
布線資源連通FPGA内部所有的單元,IOB、CLB、BRAM、DCM等都使用相同的内連陣列。XC2V3000内部共有16條全局時鐘線,用于芯片内部全局時鐘和全局複位/置位的布線。24條縱橫交錯的長線資源實現了芯片Bank間的高速通信和第二全局時鐘信号的布線。
5.底層内嵌功能單元
XC2V3000集成了豐富的内嵌功能模塊,如DCM(數字時鐘管理器)、DCI(數字控制阻抗)、MicroBlaze軟處理器核等,使其具有軟、硬件聯合設計的能力,可以用有限的資源完成系統級的設計任務。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!