




已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
信息論基礎(chǔ)實驗報告FPGA實驗報告 學院 電子信息工程學院 專業(yè) 通信工程 姓名 李聰 學號 11211060 同組成員: 閆科 吳文文 韓富瑋 羅玉明 指導教師 張立軍 作者: 李聰 時間 2014年5月03日 目錄實驗(一)認識FPGA開發(fā)板3一、實驗目的3二、實驗原理31.FPGA組成32.FPGA設計流程33實驗思路:5三、實驗步驟53.1新建ISE工程53.2添加源文件63.3代碼綜合83.4添加約束文件83.5布線93.6生成比特流并下載到FPGA上9四、實驗拓展12設計思路:12源文件13約束文件14仿真文件14五、思考題15測試程序:15仿真波形17六、實驗感想與收獲176.1、感想176.2、一些Verilog語句歸納:18七附錄:201.Kintex-7 FPGA 主要包括特性:202.FPGA主要原理213.FPGA的基本特點:224.FPGA一些應用22實驗(一)認識FPGA開發(fā)板一、實驗目的1、了解FPGA開發(fā)流程2、了解Xilinx KC705 開發(fā)平臺二、實驗原理1.FPGA組成FPGA是Field Programmable Gate Array 的縮寫,即現(xiàn)場可編程門陣列,它是在CPLD的基礎(chǔ)上發(fā)展起來的新型高性能可編程邏輯器件,它一般采用SRAM工藝,也有一些專用器件采用Flash工藝或反熔絲(Anti-Fuse)工藝等。FPGA 的集成度很高,其器件密度從數(shù)萬系統(tǒng)門到數(shù)千萬系統(tǒng)門不等,可以完成極其復雜的時序與組合邏輯電路功能,適用于高速、高密度的高端數(shù)字邏輯電路設計領(lǐng)域。FPGA的基本組成部分有可編程輸入/輸出單元、基本可編程邏輯單元、嵌入式RAM、豐富的布線資源、底層嵌入功能單元、內(nèi)嵌專用硬核等。2.FPGA設計流程一般來說,完整的FPGA設計流程包括電路設計與輸入、功能仿真、綜合優(yōu)化、綜合后仿真、布局布線、布局布線后仿真、板級驗證與加載配置調(diào)試等主要步驟,如圖1所示。(1) 電路設計與輸入。電路設計與輸入是指通過某些規(guī)范的描述方式,將工程師電路構(gòu)思輸入給EDA 工具。常用的設計輸入方法有硬件描述語言(HDL)和原理圖設計輸入方法等。HDL語言中,應用最為廣泛的是VHDL和Verilog HDL。(2)功能仿真。電路設計完成后,要用專用的仿真工具對設計進行功能仿真,驗證電路功能是否符合設計要求。(3)綜合優(yōu)化。綜合優(yōu)化(Synthesize)是指將HDL 語言、原理圖等設計輸入翻譯成由與、或、非門,RAM,觸發(fā)器等基本邏輯單元組成的邏輯連接(網(wǎng)表),并根據(jù)目標與要求(約束條件)優(yōu)化所生成的網(wǎng)表,輸出edf和edn等標準格式的網(wǎng)表文件,供FPGA廠家的布局布線器進行實現(xiàn)。(4)綜合后仿真。綜合完成后需要檢查綜合結(jié)果是否與原設計一致,做綜合后仿真。在仿真時,把綜合生成的標準延時文件反標到綜合仿真模型中去,可估計門延時帶來的影響。(5)實現(xiàn)與布局布線。綜合結(jié)果的本質(zhì)是一些與、或、非門,觸發(fā)器,RAM 等基本邏輯單元組成的邏輯網(wǎng)表,它與芯片實際的配置情況有較大差距。此時,應該使用FPGA廠商提供的軟件工具,根據(jù)所選芯片型號,將綜合輸出的邏輯網(wǎng)表適配到具體FPGA器件上,這個過程叫做實現(xiàn)過程。在實現(xiàn)過程中,最主要的過程就是布局布線。所謂布局(Place)是指將邏輯網(wǎng)表中的硬件原語或者底層單元合理地適配到FPGA內(nèi)部的固有硬件結(jié)構(gòu)上;所謂布線(Route)是指根據(jù)布局的拓撲結(jié)構(gòu),利用FPGA內(nèi)部的各種連線資源,合理正確連接各個元件的過程。(6)時序仿真與驗證。將布局布線的時延信息反標到設計網(wǎng)表中,所進行的仿真就叫時序仿真或布局布線后仿真,簡稱后仿真。布局布線后仿真的主要目的在于發(fā)現(xiàn)時序違規(guī)(Timing Violation),即不滿足時序約束條件或者器件固有時序規(guī)則(建立時間、保持時間)的情況。(7)板級仿真與驗證。在有些高速設計情況下還需要使用第三方的板極驗證工具進行仿真與驗證。這些工具通過對設計的IBIS、HSPICE等模型的仿真,能較好地分析高速設計的信號完整性、電磁干擾(EMI)等電路特性等。(8)對器件下載調(diào)試。設計開發(fā)的最后步驟是在線調(diào)試或者將生成的配置文件寫入芯片中進行測試。示波器和邏輯分析儀是邏輯設計的主要測試工具。以上任何仿真或者驗證步驟出現(xiàn)問題,就需要根據(jù)錯誤的定位返回到相應的步驟更改或者重新設計。本實驗采用的是Xilinx公司的帶有Kintex-7 FPGA的KC705開發(fā)平臺。Xilinx 的7 系列FPGA 包括Artix-7,Kintex-7 和Virtex-7 三個系列。具有超高端連接帶寬,邏輯容量和信號完整性,提供低成本,小型尺寸和大容量的要求嚴格的高性能應用。其中,Kintex-7 FPGA具有較高的性價比,其組成的收發(fā)器從600Mbps到最高的6.6 Gbps,達到28.05Gbps。主要用在航空電子、LED背光的平板電視和3D TV、LTE基帶、手持超聲設備、多模式無線電、Prosumer數(shù)碼單反照相機和視頻IP網(wǎng)關(guān)。圖1FPGA開發(fā)流程3實驗思路:為了了解并掌握 FPGA 開發(fā)流程,本實驗在 KC705平臺設計設計一個分頻計數(shù)的實驗,用 FPGA 內(nèi)部邏輯控制 LED 燈的亮滅。KC705 平臺自帶的8個LED 燈原理圖如圖3所示,當 GPIO 輸入端為高電平時,二極管導通,燈變亮。當輸入端為低電平時,二極管截止,燈變暗。本實驗通過Verilog 代碼進行計數(shù)分頻,控制GPIO_LED_0的周期性變化。在Verilog 代碼設計中,把分頻輸出信號與GPIO_LED_0管腳相連,大家就可以感受到分頻產(chǎn)生的效果了。在代碼里,使用的200M的差分時鐘,一個周期是5ns,在代碼里24位計數(shù)器cnt進行循環(huán)計數(shù),一個周期有224個時鐘周期,大約是80ms,所以LED0 以80ms為周期變化。三、實驗步驟3.1新建ISE工程(a) 打開 ISE 軟件,新建工程,如圖 4 所示圖 4 新建 ISE 工程圖5 輸入工程名稱和路徑然后輸入工程名稱和路徑,其余選擇默認選項,點擊 finish,如圖 5 所示。新建工程結(jié)束之后,右擊新建的工程名稱,選擇 add new source,可以向工程中添加源文件,在這里選擇verilog module,在左側(cè)對話框輸入文件名稱和路徑,如圖 6 所示。3.2添加源文件圖6 添加verilog源文件回到設計頁面,可以發(fā)現(xiàn)在工程下面多了一個.v 文件,點開文件,輸入下面代碼:module clk_div(clk_p,clk_n,rst,clk_div); input clk_p,rst;input clk_n;/定義輸出輸入端口,差分輸入的脈沖,復位輸入output clk_div;/定義輸出端口reg clk_div;/為了操作方便定義了一個與輸出端口同名的寄存器reg23:0 count;/定義24位變量用于分頻是計數(shù)wire clk;always (posedge clk)/always例化語句,每到下降沿是執(zhí)行if(rst)/檢查是否有按鍵按下begincount = 1b0;/對輸出和計數(shù)值進行初始化clk_div = 1b0;endelseif ( count!=24hffffff)/計數(shù)最大值為ffffff,如果沒有加到ffffff折繼續(xù)加begincount = count + 1b1;endelse /計數(shù)到ffffff個時鐘周期后開始對計數(shù)值初始化,然后輸出電平求反begincount = 1b0;clk_div = clk_div;end/差分時鐘例化原語IBUFDS UUT_IBUFG(.I(clk_p),.IB(clk_n),.O(clk);Endmodule代碼功能分析:這段程序的主要功能就是對輸入時鐘進行分頻,每到ffffff個時鐘周期,輸出則求一次反,這樣輸出的脈沖則會是對時鐘脈沖ffffff分頻。3.3代碼綜合代碼輸入完成之后對代碼進行綜合,雙擊Synthesize-XST,綜合成功后會顯示對號或感嘆號,如圖7所示。如果是感嘆號,代表有警告,可右擊Synthesize-XST查看綜合報告,對這里出現(xiàn)的警告可以忽略。圖10 布局布線3.4添加約束文件(c)為了使我們的代碼與硬件映射,還需要進行管腳約束,管腳約束文件格式為ucf,與添加 verilog module 文件相同的方法,添加一ucf文件,不同的是在圖8的左側(cè)界面中選擇 Implementation Consraints File。 圖 8 添加 ucf 文件回到設計界面,開始編輯ucf文件,打開KC705的datasheet,我們可以找到要使用的 LED0與FPGA 管腳AB8相連,如圖9所示圖 9 LED0 與 FPGA 管腳對應關(guān)系 同樣的方法,再對時鐘和復位信號進行配置。時鐘選用 200M 的 system clock source,復位信號選用 SW3,確定了管腳對應關(guān)系之后,開始編輯 ucf 文件,輸入下列內(nèi)容,其中 IOSTANDARD 為電壓約束,在 KC705 的 datasheet 中可以找到。NET clk_p LOC=AD12 |IOSTANDARD=LVDS; /200MNET clk_n LOC=AD11 |IOSTANDARD=LVDS; /200MNET rst LOC=AG5|IOSTANDARD=LVCMOS15;/sw3NET clk_div LOC=AB8 |IOSTANDARD=LVCMOS15;/LED03.5布線d) 以上工作做完之后,就要對代碼進行布局布線,生成可下載的比特流,如圖 10 所示,雙擊 Generate Programming File。圖10 布局布線3.6生成比特流并下載到FPGA上上面步驟完成之后,開始將生成的比特流下載到FPGA板,如11 所示,連接開發(fā)板與電腦 圖 11 連接 FPGA 與電腦點擊 configure target device,打開 Impact,如圖 12 所示12 打開iMPACT 軟件點擊箭頭所示按鈕,出現(xiàn)圖 13 界面,點擊 OK圖13掃描設備如圖 14 所示,軟件識別出所連接設備,點擊 OK圖 14 設別設備雙擊設備,找到生成的比特流,出現(xiàn)圖 15 對話框選擇 no圖 15 生成 PROM然后選擇 program,將比特流下載到 FPGA 板,下載成功后出現(xiàn) program successed 標志,如圖 16 所示圖16 下載比特流成功(f)觀察實驗結(jié)果。按下 SW3,發(fā)現(xiàn) LED0 是滅的,然后它會由 暗到明周期性的變化,如圖 17,18 所示 圖 17 LED0 變亮圖 18 LED0 變暗四、實驗拓展設計思路:在看了實驗指導書之后,我發(fā)現(xiàn)實現(xiàn)輸出的波形都是方波,這時候,我打算改一下程序,讓它輸出PWM波,通過占空比來改變燈的亮度,通過PWM波的頻率來改變閃爍的頻率,經(jīng)過仿真和下載到FPGA上面,得到了比較好的效果。如圖19,計數(shù)值count一直線性增長,輸入脈沖每來一個上升沿,計數(shù)值就會加1,當計數(shù)值達到duty cycle(占空比)時,則輸出低電平,當達到frequence時候,則計數(shù)值會變?yōu)?,同時輸出高電平,通過改變frequence計數(shù)值和duty cycle值來分別改變頻率和占空比圖19源文件module vanpersie(clk_p,clk_n,clk_div,rst1,rst2,rst3);inputrst1,rst2,rst3;/rst1復位,rst2用于改變燈閃爍的頻率,rst3用于改變燈閃爍的亮度,rst4用于改變閃爍的模式input clk_p, clk_n;/差分時鐘輸入口output clk_div;reg clk_div;reg23:0 count;/計數(shù)值reg23:0 freqence;/設置輸出脈沖的頻率reg23:0 duty;/用于設置輸出脈沖的占空比reg0:0 i=0;/標志i初始化為0用來判斷按鍵是否釋放wire clk;always(posedge clk)/輸入脈沖下降沿時執(zhí)行if(rst1)&(!i)/判斷是否按下按鍵rst1,rst1用于初始化begini=1b1;/按鍵按下則將標志位置位freqence = 24hffffff;/初始化頻率,這是后輸出脈沖的頻率等于上一個實驗輸出方波頻率duty = 24hffffff;/占空比先設置為1,這是輸出脈沖一直未高電平count = 1b0;/初始化計數(shù)值為0clk_div = 1b1;/輸出為高電平endelse if(rst2)&(!i)/判斷按鍵rst2是否有按下(rst2用于改變頻率,變?yōu)樵瓉韮杀叮゜egini=1b1;/有按鍵按下則置位標志位freqence = freqence/2d2;/每按一下,frequence計數(shù)值變?yōu)樵瓉硪话耄l率變?yōu)樵瓉韮杀秂ndelse if(rst3)&(!i)/判斷rst3是否按下,rst3用于改變占空比begini=1b1;/置位標志位i,用于顯示按鍵已經(jīng)按下duty = duty/2d2;/duty減半,占空比變?yōu)樵瓉硪话雃ndelse if(!rst1)&(!rst2)&(rst3)/如果此時沒有按鍵按下begin i=1b0;/復位標志位i,用于告訴系統(tǒng)沒有按鍵按下if(count!=freqence)/如果計數(shù)值沒有達到frequence則計數(shù)值加1 begin count =duty)/如果計數(shù)值達到duty則輸出低電平clk_div =1b0;else;end else/否則(計數(shù)值達到frequence),置位輸出,復位計數(shù)值beginclk_div =1b1;count = 1b0;endend/差分時鐘例化原語IBUFDS UUT_IBUFG(.I(clk_p), .IB(clk_n), .O(clk);Endmodule約束文件NET rst1 LOC=AG5 | IOSTANDARD=LVCMOS15;/sw3NET rst2 LOC=AB12| IOSTANDARD=LVCMOS15;/sw4NET rst3 LOC=AC6| IOSTANDARD=LVCMOS15;/sw5NET clk_div LOC=AB8 |IOSTANDARD=LVCMOS15;/LED0NET clk_p LOC=AD12 |IOSTANDARD=LVDS; /200MNET clk_n LOC=AD11 |IOSTANDARD=LVDS; /200M仿真文件module vanpersie_test;/定義模塊/ Inputs/定義輸入reg clk_p;reg clk_n;reg rst1;reg rst2;reg rst3;/ Outputs/定義輸出wire clk_div;/ Instantiate the Unit Under Test (UUT)vanpersie uut (.clk_p(clk_p), .clk_n(clk_n), .clk_div(clk_div), .rst1(rst1), .rst2(rst2), .rst3(rst3);/ Add stimulus here initial begin/ Initialize Inputs/初始化clk_p = 0;clk_n = 1;rst1 = 1;/先按下按鍵rst1,這樣先對輸出初始化rst2=0;rst3 =1;/按下rst3,這樣輸出的方波占空比減半#100; / Add stimulus here forever begin rst3=1;#100;rst3=0; clk_p=#1 clk_p; clk_n=clk_n; end endinitial begin#80;rst1 = 0;/釋放按鍵rst2=0;#200;rst3 = 0; end endmodule五、思考題(1)本實驗中代碼實現(xiàn)的是偶數(shù)分頻,試編寫奇數(shù)分頻,如3分頻代碼。 1 首先,完全可以通過計數(shù)器來實現(xiàn),如進行三分頻,通過待分頻時鐘上升沿觸發(fā)計數(shù)器進行模三計數(shù),當計數(shù)器計數(shù)到鄰近值進行兩次翻轉(zhuǎn),比如可以在計數(shù)器計數(shù)1時,輸出時鐘進行翻轉(zhuǎn),計數(shù)到2時再次進行翻轉(zhuǎn)。即是在計數(shù)值在鄰近的1和2進行了兩次翻轉(zhuǎn)。這樣實現(xiàn)的三分頻占空比為1/3或者2/3。2. 如果要實現(xiàn)占空比為50%的三分頻時鐘,可以通過待分頻時鐘下降沿觸發(fā)計數(shù),和上升沿同樣的方法計數(shù)進行三分頻,然后下降沿產(chǎn)生的三分頻時鐘和上升沿產(chǎn)生的時鐘進行相或運算,即可得到占空比為50%的三分頻時鐘。這種方法可以實現(xiàn)任意的奇數(shù)分頻。測試程序:方法一:/上升沿觸發(fā)的分頻設計modulethree(clkin,clkout);inputclkin;/定義輸入端口outputclkout;/定義輸出端口reg1:0step1,step;always(posedgeclkin)/數(shù)組step在上升沿是加1,對上升沿獨立技術(shù)begin case(step) 2b00:step=2b01;2b01:step=2b10;2b10:step=2b00;default:step=2b00;endcaseendalways(negedgeclkin)/數(shù)組step1在下降沿是加1,對下降沿獨立計數(shù)begin case(step1) 2b00:step1=2b01;2b01:step1=2b10;2b10:step1=2b00;default:step1=2b00;endcaseendassignclkout=(step1|step11);/采用差分脈沖輸出,輸出的式step,step1第二位求或的反,得到三分頻沖(占空比為1/3或者2/3)endmodule方法二:/如 果dutycycle=50%,可以第一個周期第二個周期輸出原先clock,第三個周期輸出低,這樣可以實現(xiàn)三分頻,輸出是占空比1:1的三分頻.modulethree(clk,throut)inputclkoutputthrout; regq1,q2,d,throut;always(posedgeclk)/q1用于記錄上升沿,有1和0兩種狀態(tài)if(!d)q1=1b1; else q1=q1always(negedgeclk)/q2用于記錄下降沿,有1和0兩種狀態(tài)if(!d)q2=1b1;else q2=q2always(q1orq2)/用or語句,每當q1,q2中其中一個有變化時d=q1&q2/d記錄差分時鐘 always(posedged)/當d發(fā)生變化時候則輸出求反,得到占空比50%的三分頻脈沖throut=throut;endmodule 仿真波形(2)本實驗中把比特流下載到FPGA開發(fā)板是通過USB接口,除USB之外還有哪些下載方式? 奇數(shù)倍分頻有兩種實現(xiàn)方法:下載FPGA里面 有三種方式JTAG:下載sof文件,掉電丟失可以將sof轉(zhuǎn)換為jic文件,用EPCSx配置,掉電不丟失AS:下載pof文件,配置EPCSx,掉電不丟失PS:比較老的下載方式,很少使用六、實驗感想與收獲6.1、感想通過這次FPGA實驗,我有很深的感觸。之前在做實驗之前,就對FPGA早有耳聞,最早是在學習verilog時候老師提到過fpga是可編程電路,能夠并行地處理數(shù)據(jù),運算快,后來在實驗室參觀的時候,老師提到FPGA說現(xiàn)在數(shù)據(jù)處理能力要求越來越高,很多時候,會用到FPGA,它速度很快,普通電腦做一些數(shù)據(jù)處理可能要花費將近一年時間,而FPGA則只要花費一天,因為是程序執(zhí)行可以是并行的,因此速度快,在很多領(lǐng)域內(nèi)都有很廣的用途。后來在實驗課上,助教老師給我們介紹了FPGA和xilinux的軟件ISE,我越來越喜歡這款開發(fā)工具,因為功能強大,運算能力強,普通的DSP芯片做數(shù)據(jù)處理時候時序控制能力較弱,而且受到時鐘約束,在越來越追求速度的今天,它時序控制能力強(時序能力強,沒有指令周期,速度快),控制能力較強的特點得到了很好的發(fā)揮,而且ISE軟件還帶有仿真器,能夠在沒有硬件的時候能夠比較好地仿真出時序邏輯。回去后,自己開始仿真,發(fā)現(xiàn)很多時候都出問題,最開始是編譯不通過,對verilog語言數(shù)據(jù)表示,塊語句,always,assign,case,if等例化語句很不熟悉,時常就寫錯編譯不通過,仿真文件編寫時候理解有問題,得不到想要的結(jié)果,因為這些原因,我花費了很長的一段時間去適應,理解,最后,我做了一些總結(jié)如下。6.2、一些Verilog語句歸納:過程語句有:initial、always(可綜合) initial語句常用于仿真中的初始化,initial過程塊中的語句僅執(zhí)行一次;always塊內(nèi)的語句則是不斷重復執(zhí)行的;一般來說always語句使用方法是always ()begin/過程賦值/if-else,case,casex,casez選擇語句/while,repeat,for循環(huán)/task,function調(diào)用end注意:1.always過程語句通常是帶有觸發(fā)條件的,觸發(fā)條件寫在敏感信號表達式中,只有當觸發(fā)條件滿足時,其后的“begin-end”塊語句才能被執(zhí)行2.其中敏感信號表達式為事件表達式或敏感信號列表當表達式中變量的值改變,就會引發(fā)塊內(nèi)語句的執(zhí)行應列出影響塊內(nèi)取值的所有信號,用“or”連接。塊語句有:begin-end(可綜合)、fork-join塊語句是由塊標志符begin-end或fork-join界定的一組語句,當塊語句只包含一條語句時,塊標志符可以缺省。注意:begin-end串行塊中的語句按串行方式順序執(zhí)行。assign為持續(xù)賦值語句,主要用于對wire型變量的賦值。比如:assign c=a&b; 在上面的賦值中,a、b、c三個變量皆為wire型變量,a和b信號的任何變化,都將隨時反映到c上來。賦值語句有:assign、=、=。(均可綜合)非阻塞(non_blocking)賦值方式 賦值符號為“=” 非阻塞賦值在整個過程塊結(jié)束時才完成賦值操作阻塞(blocking)賦值方式 賦值符號為“=”, 如:b= a; 阻塞賦值在該語句結(jié)束時就立即完成賦值操作,即b的值在該條語句結(jié)束后立刻改變。條件語句有:if-else、case(前兩個可綜合)、casez、casexif-else語句使用方法有以下3種:(1)if(表達式) 語句1;(2)if(表達式) 語句1; else 語句2;(3)if(表達式1) 語句1; else if(表達式2) 語句2; else if(表達式3) 語句3; else if(表達式n) 語句n; else 語句n+1;case (敏感表達式) 值1: 語句1;/case分支項 值2: 語句2; 值n: 語句n; default:語句n+1; endcase循環(huán)語句(for、forever、repeat、while)(1)forever:連續(xù)地執(zhí)行語句;多用在“initial”塊中,以生成時鐘等周期性波形。(2)repeat:連續(xù)執(zhí)行一條語句n次。(3)while:執(zhí)行一條語句直到某個條件不滿足。(4)for:有條件的循環(huán)語句(唯一可綜合)。七附錄:1.Kintex-7 FPGA 主要包括特性:(1)基于6輸入查找表(LUT)技術(shù),可配置為分布式內(nèi)存的,先進的高性能FPGA邏輯。(2)36kB 雙端口RAM塊,內(nèi)置片上數(shù)據(jù)緩沖的FIFO邏輯。(3)高性能的Select IO技術(shù),支持高達1866 Mb/s的DDR3接口。(4)強大的時鐘管理瓷磚(CMT),結(jié)合鎖相環(huán)(PLL)和混合模式時鐘管理器(MMCM),用于實現(xiàn)高精度和低抖動。(5)低成本,線焊接,無蓋倒裝芯片,高信號完整性,倒裝芯片封裝,可以方便在同一系列產(chǎn)品之間互換。所有型號都具有無鉛封裝,并具有可選鉛封裝。本實驗采用的Kintex-7 FPGA 的KC705 評估板提供了一個硬件環(huán)境,用于Kintex-7 XC7K325T-2FFG900C FPGA 的設計開發(fā)和評估,KC705開發(fā)平臺如圖2所示。圖2 KC705開發(fā)平臺從圖中可以看出 KC705 板提供了許多嵌入式處理系統(tǒng)的共同特性,開發(fā)板資源介紹如表 1 所示。2.FPGA主要原理FPGA采用了邏輯單元陣列LCA(Logic Cell Array)這樣一個概念,內(nèi)部包括可配置邏輯模塊CLB(Configurable Logic Block)、輸入輸出模塊IOB(Input Output Block)和內(nèi)部連線(Interconnect)三個部分。 現(xiàn)場可編程門陣列(FPGA)是可編程器件,與傳統(tǒng)邏輯電路和門陣列(如PAL,GAL及CPLD器件)相比,F(xiàn)PGA具有不同的結(jié)構(gòu)。FPGA利用小型查找表(161RAM)來實現(xiàn)組合邏輯,每個查找表連接到一個D觸發(fā)器的輸入端,觸發(fā)器再來驅(qū)動其他邏輯電路或驅(qū)動I/O,由此構(gòu)成了既可實現(xiàn)組合邏輯功能又可實現(xiàn)時序邏輯功能的基本邏輯單元模塊,這些模塊間利用金屬連線互相連接或連接到I/O模塊。FPGA的邏輯是通過向內(nèi)部靜態(tài)存儲單元加載編程數(shù)據(jù)來實現(xiàn)的,存儲在存儲器單元中的值決定了邏輯單元的邏輯功能以及各模塊之間或模塊與I/O間的聯(lián)接方式,并最終決定了FPGA所能實現(xiàn)的功能,F(xiàn)PGA允許無限次的編程。3.FPGA的基本特點:1)采用FPGA設計ASIC電路,用戶不需要投片生產(chǎn),就能得到合用的芯片。 -2)FPGA可做其它全定制或半定制ASIC電路的中試樣片。 3)FPGA內(nèi)部有豐富的觸發(fā)器和IO引腳。4)FPGA
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 提高公司財務團隊服務水平的培訓計劃
- 提升前臺溝通技巧的工作計劃
- 醫(yī)院財務管理優(yōu)化的策略與效果計劃
- 學習資源共享平臺建設計劃
- 《貴州創(chuàng)泰礦業(yè)有限公司修文縣龍場鎮(zhèn)高倉老二洞鋁鐵礦山礦產(chǎn)資源綠色開發(fā)利用方案(三合一)》專家組評審意見
- 第二單元課題2氧氣-教學設計-2024-2025學年九年級化學人教版上冊
- 2025年鎮(zhèn)江道路運輸從業(yè)資格證模擬考試年新版
- 2025年湖州資格證模擬考試
- 2025年湖北貨車資格證考試題
- 2025年遼陽貨運從業(yè)資格證模擬考試下載題
- 核心素養(yǎng)導向下的高中歷史大單元教學設計研究課題設計論證
- 員工入職登記表
- 2024年新疆維吾爾自治區(qū)招聘事業(yè)單位工作人員考試真題
- 科技創(chuàng)新在環(huán)境保護中的重要作用研究報告
- 2025年濟源職業(yè)技術(shù)學院單招職業(yè)技能測試題庫學生專用
- 《金融市場分析方法》課件
- 卵巢癌的篩查:如何進行卵巢癌的早期篩查
- 2025年南網(wǎng)數(shù)字集團公開選聘高頻重點模擬試卷提升(共500題附帶答案詳解)
- 5G基站建設的審批流程與標準
- 西門子S7-1200 PLC應用技術(shù)項目教程(第3版) 考試復習題
- 人工智能在招聘行業(yè)的應用
評論
0/150
提交評論