FPGA開發(fā)流程課程設(shè)計(jì)_第1頁
FPGA開發(fā)流程課程設(shè)計(jì)_第2頁
FPGA開發(fā)流程課程設(shè)計(jì)_第3頁
FPGA開發(fā)流程課程設(shè)計(jì)_第4頁
FPGA開發(fā)流程課程設(shè)計(jì)_第5頁
已閱讀5頁,還剩41頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

ISE環(huán)境中FPGA開發(fā)與實(shí)現(xiàn)FPGA(Field-ProgrammableGateArray):即現(xiàn)場可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點(diǎn)。以硬件描述語言(Verilog或VHDL)所完成的電路設(shè)計(jì),可以經(jīng)過簡單的綜合和布局快速地?zé)罠PGA上進(jìn)行測試,是現(xiàn)代IC設(shè)計(jì)驗(yàn)證的技術(shù)主流。這些可編輯元件可以被用來實(shí)現(xiàn)一些基本的邏輯門電路(比如AND、OR、XOR、NOT)或者更復(fù)雜一些的組合功能比如解碼器或數(shù)學(xué)方程式。工作原理:FPGA采用了邏輯單元陣列LCA(LogicCellArray)這樣一個(gè)概念,內(nèi)部包括可配置邏輯模塊CLB(ConfigurableLogicBlock)、輸出輸入模塊IOB(InputOutputBlock)和內(nèi)部連線(Interconnect)三個(gè)部分。現(xiàn)場可編程門陣列(FPGA)是可編程器件。與傳統(tǒng)邏輯電路和門陣列(如PAL,GAL及CPLD器件)相比,F(xiàn)PGA具有不同的結(jié)構(gòu),F(xiàn)PGA利用小型查找表(16×1RAM)來實(shí)現(xiàn)組合邏輯,每個(gè)查找表連接到一個(gè)D觸發(fā)器的輸入端,觸發(fā)器再來驅(qū)動(dòng)其他邏輯電路或驅(qū)動(dòng)I/O,由此構(gòu)成了既可實(shí)現(xiàn)組合邏輯功能又可實(shí)現(xiàn)時(shí)序邏輯功能的基本邏輯單元模塊,這些模塊間利用金屬連線互相連接或連接到I/O模塊。FPGA的邏輯是通過向內(nèi)部靜態(tài)存儲(chǔ)單元加載編程數(shù)據(jù)來實(shí)現(xiàn)的,存儲(chǔ)在存儲(chǔ)器單元中的值決定了邏輯單元的邏輯功能以及各模塊之間或模塊與I/O間的聯(lián)接方式,并最終決定了FPGA所能實(shí)現(xiàn)的功能,F(xiàn)PGA允許無限次的編程.FPGA(Field-ProgrammableGateArray):即現(xiàn)場可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點(diǎn)。以硬件描述語言(Verilog或VHDL)所完成的電路設(shè)計(jì),可以經(jīng)過簡單的綜合和布局快速地?zé)罠PGA上進(jìn)行測試,是現(xiàn)代IC設(shè)計(jì)驗(yàn)證的技術(shù)主流。這些可編輯元件可以被用來實(shí)現(xiàn)一些基本的邏輯門電路(比如AND、OR、XOR、NOT)或者更復(fù)雜一些的組合功能比如解碼器或數(shù)學(xué)方程式。工作原理:FPGA采用了邏輯單元陣列LCA(LogicCellArray)這樣一個(gè)概念,內(nèi)部包括可配置邏輯模塊CLB(ConfigurableLogicBlock)、輸出輸入模塊IOB(InputOutputBlock)和內(nèi)部連線(Interconnect)三個(gè)部分?,F(xiàn)場可編程門陣列(FPGA)是可編程器件。與傳統(tǒng)邏輯電路和門陣列(如PAL,GAL及CPLD器件)相比,F(xiàn)PGA具有不同的結(jié)構(gòu),F(xiàn)PGA利用小型查找表(16×1RAM)來實(shí)現(xiàn)組合邏輯,每個(gè)查找表連接到一個(gè)D觸發(fā)器的輸入端,觸發(fā)器再來驅(qū)動(dòng)其他邏輯電路或驅(qū)動(dòng)I/O,由此構(gòu)成了既可實(shí)現(xiàn)組合邏輯功能又可實(shí)現(xiàn)時(shí)序邏輯功能的基本邏輯單元模塊,這些模塊間利用金屬連線互相連接或連接到I/O模塊。FPGA的邏輯是通過向內(nèi)部靜態(tài)存儲(chǔ)單元加載編程數(shù)據(jù)來實(shí)現(xiàn)的,存儲(chǔ)在存儲(chǔ)器單元中的值決定了邏輯單元的邏輯功能以及各模塊之間或模塊與I/O間的聯(lián)接方式,并最終決定了FPGA所能實(shí)現(xiàn)的功能,F(xiàn)PGA允許無限次的編程.FPGA(Field-ProgrammableGateArray):即現(xiàn)場可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點(diǎn)。以硬件描述語言(Verilog或VHDL)所完成的電路設(shè)計(jì),可以經(jīng)過簡單的綜合和布局快速地?zé)罠PGA上進(jìn)行測試,是現(xiàn)代IC設(shè)計(jì)驗(yàn)證的技術(shù)主流。這些可編輯元件可以被用來實(shí)現(xiàn)一些基本的邏輯門電路(比如AND、OR、XOR、NOT)或者更復(fù)雜一些的組合功能比如解碼器或數(shù)學(xué)方程式。工作原理:FPGA采用了邏輯單元陣列LCA(LogicCellArray)這樣一個(gè)概念,內(nèi)部包括可配置邏輯模塊CLB(ConfigurableLogicBlock)、輸出輸入模塊IOB(InputOutputBlock)和內(nèi)部連線(Interconnect)三個(gè)部分?,F(xiàn)場可編程門陣列(FPGA)是可編程器件。與傳統(tǒng)邏輯電路和門陣列(如PAL,GAL及CPLD器件)相比,F(xiàn)PGA具有不同的結(jié)構(gòu),F(xiàn)PGA利用小型查找表(16×1RAM)來實(shí)現(xiàn)組合邏輯,每個(gè)查找表連接到一個(gè)D觸發(fā)器的輸入端,觸發(fā)器再來驅(qū)動(dòng)其他邏輯電路或驅(qū)動(dòng)I/O,由此構(gòu)成了既可實(shí)現(xiàn)組合邏輯功能又可實(shí)現(xiàn)時(shí)序邏輯功能的基本邏輯單元模塊,這些模塊間利用金屬連線互相連接或連接到I/O模塊。FPGA的邏輯是通過向內(nèi)部靜態(tài)存儲(chǔ)單元加載編程數(shù)據(jù)來實(shí)現(xiàn)的,存儲(chǔ)在存儲(chǔ)器單元中的值決定了邏輯單元的邏輯功能以及各模塊之間或模塊與I/O間的聯(lián)接方式,并最終決定了FPGA所能實(shí)現(xiàn)的功能,F(xiàn)PGA允許無限次的編程.FPGA(Field-ProgrammableGateArray):即現(xiàn)場可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點(diǎn)。以硬件描述語言(Verilog或VHDL)所完成的電路設(shè)計(jì),可以經(jīng)過簡單的綜合和布局快速地?zé)罠PGA上進(jìn)行測試,是現(xiàn)代IC設(shè)計(jì)驗(yàn)證的技術(shù)主流。這些可編輯元件可以被用來實(shí)現(xiàn)一些基本的邏輯門電路(比如AND、OR、XOR、NOT)或者更復(fù)雜一些的組合功能比如解碼器或數(shù)學(xué)方程式。工作原理:FPGA采用了邏輯單元陣列LCA(LogicCellArray)這樣一個(gè)概念,內(nèi)部包括可配置邏輯模塊CLB(ConfigurableLogicBlock)、輸出輸入模塊IOB(InputOutputBlock)和內(nèi)部連線(Interconnect)三個(gè)部分?,F(xiàn)場可編程門陣列(FPGA)是可編程器件。與傳統(tǒng)邏輯電路和門陣列(如PAL,GAL及CPLD器件)相比,F(xiàn)PGA具有不同的結(jié)構(gòu),F(xiàn)PGA利用小型查找表(16×1RAM)來實(shí)現(xiàn)組合邏輯,每個(gè)查找表連接到一個(gè)D觸發(fā)器的輸入端,觸發(fā)器再來驅(qū)動(dòng)其他邏輯電路或驅(qū)動(dòng)I/O,由此構(gòu)成了既可實(shí)現(xiàn)組合邏輯功能又可實(shí)現(xiàn)時(shí)序邏輯功能的基本邏輯單元模塊,這些模塊間利用金屬連線互相連接或連接到I/O模塊。FPGA的邏輯是通過向內(nèi)部靜態(tài)存儲(chǔ)單元加載編程數(shù)據(jù)來實(shí)現(xiàn)的,存儲(chǔ)在存儲(chǔ)器單元中的值決定了邏輯單元的邏輯功能以及各模塊之間或模塊與I/O間的聯(lián)接方式,并最終決定了FPGA所能實(shí)現(xiàn)的功能,F(xiàn)PGA允許無限次的編程.FPGA(Field-ProgrammableGateArray):即現(xiàn)場可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點(diǎn)。以硬件描述語言(Verilog或VHDL)所完成的電路設(shè)計(jì),可以經(jīng)過簡單的綜合和布局快速地?zé)罠PGA上進(jìn)行測試,是現(xiàn)代IC設(shè)計(jì)驗(yàn)證的技術(shù)主流。這些可編輯元件可以被用來實(shí)現(xiàn)一些基本的邏輯門電路(比如AND、OR、XOR、NOT)或者更復(fù)雜一些的組合功能比如解碼器或數(shù)學(xué)方程式。工作原理:FPGA采用了邏輯單元陣列LCA(LogicCellArray)這樣一個(gè)概念,內(nèi)部包括可配置邏輯模塊CLB(ConfigurableLogicBlock)、輸出輸入模塊IOB(InputOutputBlock)和內(nèi)部連線(Interconnect)三個(gè)部分?,F(xiàn)場可編程門陣列(FPGA)是可編程器件。與傳統(tǒng)邏輯電路和門陣列(如PAL,GAL及CPLD器件)相比,F(xiàn)PGA具有不同的結(jié)構(gòu),F(xiàn)PGA利用小型查找表(16×1RAM)來實(shí)現(xiàn)組合邏輯,每個(gè)查找表連接到一個(gè)D觸發(fā)器的輸入端,觸發(fā)器再來驅(qū)動(dòng)其他邏輯電路或驅(qū)動(dòng)I/O,由此構(gòu)成了既可實(shí)現(xiàn)組合邏輯功能又可實(shí)現(xiàn)時(shí)序邏輯功能的基本邏輯單元模塊,這些模塊間利用金屬連線互相連接或連接到I/O模塊。FPGA的邏輯是通過向內(nèi)部靜態(tài)存儲(chǔ)單元加載編程數(shù)據(jù)來實(shí)現(xiàn)的,存儲(chǔ)在存儲(chǔ)器單元中的值決定了邏輯單元的邏輯功能以及各模塊之間或模塊與I/O間的聯(lián)接方式,并最終決定了FPGA所能實(shí)現(xiàn)的功能,F(xiàn)PGA允許無限次的編程.FPGA(Field-ProgrammableGateArray):即現(xiàn)場可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點(diǎn)。以硬件描述語言(Verilog或VHDL)所完成的電路設(shè)計(jì),可以經(jīng)過簡單的綜合和布局快速地?zé)罠PGA上進(jìn)行測試,是現(xiàn)代IC設(shè)計(jì)驗(yàn)證的技術(shù)主流。這些可編輯元件可以被用來實(shí)現(xiàn)一些基本的邏輯門電路(比如AND、OR、XOR、NOT)或者更復(fù)雜一些的組合功能比如解碼器或數(shù)學(xué)方程式。工作原理:FPGA采用了邏輯單元陣列LCA(LogicCellArray)這樣一個(gè)概念,內(nèi)部包括可配置邏輯模塊CLB(ConfigurableLogicBlock)、輸出輸入模塊IOB(InputOutputBlock)和內(nèi)部連線(Interconnect)三個(gè)部分?,F(xiàn)場可編程門陣列(FPGA)是可編程器件。與傳統(tǒng)邏輯電路和門陣列(如PAL,GAL及CPLD器件)相比,F(xiàn)PGA具有不同的結(jié)構(gòu),F(xiàn)PGA利用小型查找表(16×1RAM)來實(shí)現(xiàn)組合邏輯,每個(gè)查找表連接到一個(gè)D觸發(fā)器的輸入端,觸發(fā)器再來驅(qū)動(dòng)其他邏輯電路或驅(qū)動(dòng)I/O,由此構(gòu)成了既可實(shí)現(xiàn)組合邏輯功能又可實(shí)現(xiàn)時(shí)序邏輯功能的基本邏輯單元模塊,這些模塊間利用金屬連線互相連接或連接到I/O模塊。FPGA的邏輯是通過向內(nèi)部靜態(tài)存儲(chǔ)單元加載編程數(shù)據(jù)來實(shí)現(xiàn)的,存儲(chǔ)在存儲(chǔ)器單元中的值決定了邏輯單元的邏輯功能以及各模塊之間或模塊與I/O間的聯(lián)接方式,并最終決定了FPGA所能實(shí)現(xiàn)的功能,F(xiàn)PGA允許無限次的編程.FPGA:芯片主要由7部分完成,分別為:可編程輸入輸出單元、基本可編程邏輯單元、完整的時(shí)鐘管理、嵌入塊式RAM、豐富的布線資源、內(nèi)嵌的底層功能單元和內(nèi)嵌專用硬件模塊??删幊梯斎?輸出單元簡稱I/O單元,是芯片與外界電路的接口部分,完成不同電氣特性下對輸入/輸出信號(hào)的驅(qū)動(dòng)與匹配要求。FPGA內(nèi)的I/O按組分類,每組都能夠獨(dú)立地支持不同的I/O標(biāo)準(zhǔn)。通過軟件的靈活配置,可適配不同的電氣標(biāo)準(zhǔn)與I/O物理特性,可以調(diào)整驅(qū)動(dòng)電流的大小,可以改變上、下拉電阻。配置邏輯塊(CLB):是FPGA內(nèi)的基本邏輯單元。CLB的實(shí)際數(shù)量和特性會(huì)依器件的不同而不同,但是每個(gè)CLB都包含一個(gè)可配置開關(guān)矩陣,此矩陣由4或6個(gè)輸入、一些選型電路(多路復(fù)用器等)和觸發(fā)器組成。開關(guān)矩陣是高度靈活的,可以對其進(jìn)行配置以便處理組合邏輯、移位寄存器或RAM。在Xilinx公司的FPGA器件中,CLB由多個(gè)(一般為4個(gè)或2個(gè))相同的Slice和附加邏輯構(gòu)成。每個(gè)CLB模塊不僅可以用于實(shí)現(xiàn)組合邏輯、時(shí)序邏輯,還可以配置為分布式RAM和分布式ROM。數(shù)字時(shí)鐘管理模塊(DCM):業(yè)內(nèi)大多數(shù)FPGA均提供數(shù)字時(shí)鐘管理(Xilinx的全部FPGA均具有這種特性)。Xilinx推出最先進(jìn)的FPGA提供數(shù)字時(shí)鐘管理和相位環(huán)路鎖定。相位環(huán)路鎖定能夠提供精確的時(shí)鐘綜合,且能夠降低抖動(dòng),并實(shí)現(xiàn)過濾功能。嵌入式塊RAM(BRAM):大多數(shù)FPGA都具有內(nèi)嵌的塊RAM,這大大拓展了FPGA的應(yīng)用范圍和靈活性。塊RAM可被配置為單端口RAM、雙端口RAM、內(nèi)容地址存儲(chǔ)器(CAM)以及FIFO等常用存儲(chǔ)結(jié)構(gòu)。布線資源:連通FPGA內(nèi)部的所有單元,而連線的長度和工藝決定著信號(hào)在連線上的驅(qū)動(dòng)能力和傳輸速度。在實(shí)際中設(shè)計(jì)者不需要直接選擇布線資源,布局布線器可自動(dòng)地根據(jù)輸入邏輯網(wǎng)表的拓?fù)浣Y(jié)構(gòu)和約束條件選擇布線資源來連通各個(gè)模塊單元。從本質(zhì)上講,布線資源的使用方法和設(shè)計(jì)的結(jié)果有密切、直接的關(guān)系。內(nèi)嵌功能模塊:主要指DLL(DelayLockedLoop)、PLL(PhaseLockedLoop)、DSP和CPU等軟處理核(SoftCore)?,F(xiàn)在越來越豐富的內(nèi)嵌功能單元,使得單片F(xiàn)PGA成為了系統(tǒng)級(jí)的設(shè)計(jì)工具,使其具備了軟硬件聯(lián)合設(shè)計(jì)的能力,逐步向SOC平臺(tái)過渡。內(nèi)嵌專用硬核:是相對底層嵌入的軟核而言的,指FPGA處理能力強(qiáng)大的硬核(HardCore),等效于ASIC電路。為了提高FPGA性能,芯片生產(chǎn)商在芯片內(nèi)部集成了一些專用的硬核。例如:為了提高FPGA的乘法速度,主流的FPGA中都集成了專用乘法器;為了適用通信總線與接口標(biāo)準(zhǔn),很多高端的FPGA內(nèi)部都集成了串并收發(fā)器(SERDES),可以達(dá)到數(shù)十Gbps的收發(fā)速度。特點(diǎn):1)采用FPGA設(shè)計(jì)ASIC電路(專用集成電路),用戶不需要投片生產(chǎn),就能得到合用的芯片。2)FPGA可做其它全定制或半定制ASIC電路的中試樣片。3)FPGA內(nèi)部有豐富的觸發(fā)器和I/O引腳。4)FPGA是ASIC電路中設(shè)計(jì)周期最短、開發(fā)費(fèi)用最低、風(fēng)險(xiǎn)最小的器件之一。5)FPGA采用高速CMOS工藝,功耗低,可以與CMOS、TTL電平兼容。ISE的簡要介紹ISE軟件是Xilinx公司推出的FPGA/CPLD集成開發(fā)環(huán)境,不僅包含了邏輯設(shè)計(jì)所需的一切,還具有大量簡便易用的內(nèi)置式工具和向?qū)?,使得I/O分配、功耗分析、時(shí)序驅(qū)動(dòng)設(shè)計(jì)收斂、HDL仿真等關(guān)鍵步驟變得容易而直觀。因此要掌握XilinxFPGA開發(fā),就必須掌握ISE,這里我們簡單介紹下ISE基本操作和開發(fā)流程ISE功能簡介Xilinx是全球領(lǐng)先的可編程邏輯完整解決方案的供應(yīng)商,其開發(fā)工具ISE也在不斷地升級(jí)。ISE具有界面友好、操作簡單的特點(diǎn),再加上Xilinx的FPGA芯片占有很大的市場,使其成為非常通用的FPGA工具軟件。ISE作為高效的EDA設(shè)計(jì)工具集合,與第三方軟件揚(yáng)長補(bǔ)短,使軟件功能越來越強(qiáng)大,為用戶提供了更加豐富的Xilinx平臺(tái)。ISE的主要功能包括設(shè)計(jì)輸入、綜合、仿真、實(shí)現(xiàn)和下載,涵蓋了FPGA開發(fā)的全過程,從功能上講,其工作流程無需借助任何第三方EDA軟件。ISE功能簡介設(shè)計(jì)輸入:ISE提供的設(shè)計(jì)輸入工具包括用于HDL代碼輸入和查看報(bào)告的ISE文本編輯器(TheISETextEditor),用于原理圖編輯的工具ECS(TheEngineeringCaptureSystem),用于生成IPCore的CoreGenerator,用于狀態(tài)機(jī)設(shè)計(jì)的StateCAD以及用于約束文件編輯的ConstraintEditor。綜合:ISE的綜合工具不但包含了Xilinx自身提供的綜合工具XST,同時(shí)還可以內(nèi)嵌MentorGraphics公司的LeonardoSpectrum和Synplicity公司的Synplify,實(shí)現(xiàn)無縫鏈接。ISE功能簡介仿真:ISE本身自帶了一個(gè)具有圖形化波形編輯功能的仿真工具HDLBencher,同時(shí)又提供了使用ModelTech公司的Modelsim進(jìn)行仿真的接口。實(shí)現(xiàn):此功能包括了翻譯、映射、布局布線等,還具備時(shí)序分析、管腳指定以及增量設(shè)計(jì)等高級(jí)功能。下載:下載功能包括了BitGen,用于將布局布線后的設(shè)計(jì)文件轉(zhuǎn)換為位流文件,還包括了ImPACT,功能是進(jìn)行設(shè)備配置和通信,控制將程序燒寫到FPGA芯片中去。

ISE軟件基本硬件要求:CPU奔騰3以上,內(nèi)存大于256MB,硬盤大于10GB的安裝環(huán)境。本實(shí)驗(yàn)指導(dǎo)使用的集成環(huán)境是ISE13.1。使用ISE13.1完成一個(gè)8255IPcore的設(shè)計(jì),其內(nèi)容包括:工程的建立;8255IPcore的設(shè)計(jì);設(shè)計(jì)綜合和查看綜合結(jié)果;設(shè)計(jì)下載到FPGA芯片實(shí)驗(yàn)連線說明。ISE用戶界面ISE軟件的用戶界面標(biāo)題欄:主要顯示當(dāng)前工程的名稱和當(dāng)前打開的文件名稱。菜單欄:主要包括文件(File)、編輯(Edit)、視圖(View)、工程(Project)、源文件(Source)、操作(Process)、窗口(Window)和幫助(Help)等8個(gè)下拉菜單。工具欄:主要包含了常用命令的快捷按鈕。靈活運(yùn)用工具欄可以極大地方便用戶在ISE中的操作。在工程管理中,此工具欄的運(yùn)用極為頻繁。工程管理區(qū):提供了工程以及其相關(guān)文件的顯示和管理功能,主要包括源文件視圖(SourceView),快照視圖(SnapshotView)和庫視圖(LibraryView)。源文件編輯區(qū):源文件編輯區(qū)提供了源代碼的編輯功能。過程管理區(qū):本窗口顯示的內(nèi)容取決于工程管理區(qū)中所選定的文件。相關(guān)操作和FPGA設(shè)計(jì)流程緊密相關(guān),包括設(shè)計(jì)輸入、綜合、仿真、實(shí)現(xiàn)和生成配置文件等。信息顯示區(qū):顯示ISE中的處理信息,如操作步驟信息、警告信息和錯(cuò)誤信息等。狀態(tài)欄:顯示相關(guān)命令和操作的信息開發(fā)環(huán)境的啟動(dòng)新建工程新建工程輸入工程名top_8255及其要保存的位置新建工程選擇器件參數(shù)工作區(qū)可看到新建的工程top_8255添加源文件也可以選擇newsource手動(dòng)輸入verilog文件。綜合綜合,就是將HDL語言、原理圖等設(shè)計(jì)輸入翻譯成由與、或、非門和RAM、觸發(fā)器等基本邏輯單元的邏輯連接(網(wǎng)表),并根據(jù)目標(biāo)和要求(約束條件)優(yōu)化所生成的邏輯連接,生成EDF文件。綜合工具可以使用第三方EDA工具(如Synplify/SynplifyPro),Xilinx在ISE中提供了自帶的綜合工具XST(XilinxSynthesisTechnology),XST內(nèi)嵌在ISE3以后的版本中,并且在不斷完善。此外,由于XST是Xilinx公司自己的綜合工具,對于部分Xilinx芯片獨(dú)有的結(jié)構(gòu)具有更好的融合性。完成了輸入、仿真以及管腳分配后就可以進(jìn)行綜合和實(shí)現(xiàn)了。在過程管理區(qū)雙擊Synthesize-XST,就可以完成綜合。雙擊checksyntax檢查verilog文件有無語法錯(cuò)誤若沒有,會(huì)出現(xiàn)綠色的勾,有警告會(huì)出現(xiàn)嘆號(hào),有錯(cuò)誤會(huì)出現(xiàn)紅色的叉。雙擊synthesize開始綜合添加約束文件FPGA設(shè)計(jì)中的約束文件有3類:用戶設(shè)計(jì)文件(.UCF文件)、網(wǎng)表約束文件(.NCF文件)以及物理約束文件(.PCF文件),可以完成時(shí)序約束、管腳約束以及區(qū)域約束。3類約束文件的關(guān)系為:用戶在設(shè)計(jì)輸入階段編寫UCF文件,然后UCF文件和設(shè)計(jì)綜合后生成NCF文件,最后再經(jīng)過實(shí)現(xiàn)后生成PCF文件。本節(jié)主要介紹UCF文件的使用方法。約束文件的后綴是.ucf,所以一般也被稱為UCF文件。創(chuàng)建約束文件有兩種方法,一種是通過新建方式,另一種則是利用過程管理器來完成。第一種方法:新建一個(gè)源文件,在代碼類型中選取“ImplementationConstrainsFile”,在“FileName”中輸入文件名。單擊“Next”按鍵進(jìn)入模塊選擇對話框,選擇需要約束的模塊,然后單擊“Next”進(jìn)入下一頁,再單擊“Finish”按鍵完成約束文件的創(chuàng)建。第二種方法:在工程管理區(qū)中,將“Sourcefor”設(shè)置為“Synthesis/Implementation”?!癈onstrainsEditor”是一個(gè)專用的約束文件編輯器,雙擊過程管理區(qū)中“UserConstrains”下的“CreateTimingConstrains”就可以打開“ConstrainsEditor”。添加約束文件在UCF文件中描述管腳分配的語法為:NET“端口名稱”LOC=引腳編號(hào);需要注意的是,UCF文件是大小敏感的,端口名稱必須和源代碼中的名字一致,且端口名字不能和關(guān)鍵字一樣。但是關(guān)鍵字NET是不區(qū)分大小寫的。在工程管理區(qū)中,將“Sourcefor”設(shè)置為“Synthesis/Implementation”,然后雙擊過程管理區(qū)中“UserConstrains”下的“EditConstraints(Text)”就可以打開約束文件編輯器,就會(huì)新建當(dāng)前工程的約束文件。約束文件編輯窗口添加用戶約束

約束XC3S200部分引腳分配如圖實(shí)現(xiàn)

所謂實(shí)現(xiàn)(Implement)是將綜合輸出的邏輯網(wǎng)表翻譯成所選器件的底層模塊與硬件原語,將設(shè)計(jì)映射到器件結(jié)構(gòu)上,進(jìn)行布局布線,達(dá)到在選定器件上實(shí)現(xiàn)設(shè)計(jì)的目的。實(shí)現(xiàn)主要分為3個(gè)步驟:翻譯(Translate)邏輯網(wǎng)表,映射(Map)到器件單元與布局布線(Place&Route)。翻譯的主要作用是將綜合輸出的邏輯網(wǎng)表翻譯為Xilinx特定器件的底層結(jié)構(gòu)和硬件原語。映射的主要作用是將設(shè)計(jì)映射到具體型號(hào)的器件上(LUT、FF、Carry等)。布局布線步驟調(diào)用Xilinx布局布線器,根據(jù)用戶約束和物理約束,對設(shè)計(jì)模塊進(jìn)行實(shí)際的布局,并根據(jù)設(shè)計(jì)連接,對布局后的模塊進(jìn)行布線,產(chǎn)生FPGA/CPLD配置文件。

實(shí)現(xiàn)在翻譯過程中,設(shè)計(jì)文件和約束文件將被合并生成NGD(原始類型數(shù)據(jù)庫)輸出文件和BLD文件,其中NGD文件包含了當(dāng)前設(shè)計(jì)的全部邏輯描述,BLD文件是轉(zhuǎn)換的運(yùn)行和結(jié)果報(bào)告。在映射過程中,由轉(zhuǎn)換流程生成的NGD文件將被映射為目標(biāo)器件的特定物理邏輯單元,并保存在NCD(展開的物理設(shè)計(jì)數(shù)據(jù)庫)文件中。映射的輸入文件包括NGD、NMC、NCD和MFP(映射布局規(guī)劃器)文件,輸出文件包括NCD、PCF(物理約束文件)、NGM和MRP(映射報(bào)告)文件。布局和布線(Place&Route):通過讀取當(dāng)前設(shè)計(jì)的NCD文件,布局布線將映射后生成的物理邏輯單元在目標(biāo)系統(tǒng)中放置和連線,并提取相應(yīng)的時(shí)間參數(shù)。布局布線的輸入文件包括NC

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論