中文人妻av久久人妻18,国产福利91精品张津瑜,久久久久网站,一本色道久久综合亚洲精品东京热

歡迎光臨頂點(diǎn)光電子商城!專業(yè)的光電器件與集成電路采購平臺!
您好,請登錄 免費(fèi)注冊
首頁 > 資訊中心 > 行業(yè)資訊 > FPGA的開發(fā)流程詳解
FPGA的開發(fā)流程詳解

        FPGA是Field Programmable Gate Array的簡寫,中文全稱為現(xiàn)場可編程門陣列。FPGA的設(shè)計(jì)包括軟件設(shè)計(jì)和硬件設(shè)計(jì)兩大塊。軟件設(shè)計(jì)包含嵌入式C程序和HDL程序設(shè)計(jì),嵌入式C程序是最近才開始流行的。硬件設(shè)計(jì),顧名思義就是與硬件相關(guān)的,包括電路設(shè)計(jì)、配套硬件設(shè)計(jì)、輸入輸出接口設(shè)計(jì)等。

1-23021415361a22.jpg


        FPGA的開發(fā)離不開EDA開發(fā)軟件和編程工具,開發(fā)流程按照先后順序,依次為電路設(shè)計(jì)、輸入設(shè)計(jì)、功能仿真、綜合優(yōu)化、綜合后仿真、實(shí)現(xiàn)、布線后仿真、板級仿真和芯片編程、調(diào)試等。


一、方案驗(yàn)證

        在開始所有步驟之前,一定要進(jìn)行方案驗(yàn)證。工程師會根據(jù)項(xiàng)目要求,對整個(gè)系統(tǒng)進(jìn)行綜合考量,包括各項(xiàng)指標(biāo)、復(fù)雜程度,F(xiàn)PGA芯片的工作速度、成本、供貨渠道等。方案驗(yàn)證通過之后,就需要進(jìn)行系統(tǒng)設(shè)計(jì)和FPGA芯片選擇等籌備工作。

1-230214154313B0.png

二、電路設(shè)計(jì)

        FPGA電路設(shè)計(jì)通常都是采用金字塔式的邏輯,自上而下進(jìn)行的。首先需要把整個(gè)系統(tǒng)劃分成各個(gè)基本單元,然后再把各個(gè)單元進(jìn)行細(xì)化、分層,直到可以直接使用EDA器件庫。


三、輸入設(shè)計(jì)

        輸入設(shè)計(jì)就是將系統(tǒng)電路按照開發(fā)軟件的規(guī)范進(jìn)行表達(dá),使EDA工具能夠直接進(jìn)行操作。輸入設(shè)計(jì)的主要方法主要包括原理圖輸入法和硬件描述語言(HDL)法。其中,原理圖輸入法是最直接的表達(dá)方式,在早期FPGA芯片的發(fā)展過程中,就被廣泛應(yīng)用。原理圖輸入法從元器件庫中,將所需的器件全部調(diào)出,然后進(jìn)行原理圖的繪制。

1-230214154512533.png


        原理圖輸入法的優(yōu)點(diǎn)是直觀易懂,并且仿真很便捷;缺點(diǎn)是維護(hù)起來比較麻煩,涉及到模塊的構(gòu)造和重用時(shí),篇幅會大量增加,特別是需要進(jìn)行系統(tǒng)升級時(shí),基本上所有的原理圖都要進(jìn)行適當(dāng)修改,整體效率偏低。


        隨著各項(xiàng)指標(biāo)要求的演變,硬件描述語言(HDL)法逐漸成為現(xiàn)今開發(fā)中應(yīng)用最廣泛的方法。HDL法根據(jù)文本描述設(shè)計(jì),又可以分為行為HDL和普通HDL。


        行為HDL主要用在大型工程中,主流語言是VHDL和Verilog HDL,采用的是IEEE(美國電氣與電子工程師)標(biāo)準(zhǔn),其共同特點(diǎn)是利于自上而下的設(shè)計(jì),語言與芯片工藝無關(guān),可移植性好,有很優(yōu)秀的仿真和邏輯表述功能,輸入效率高,便于模塊劃分和移植。


        普通HDL主要用于小型設(shè)計(jì),包括CUR和ABEL,支持狀態(tài)機(jī)、邏輯方程和真值表等方式。


四、功能仿真

        功能仿真又稱為前仿真,僅對初步的功能進(jìn)行驗(yàn)證,沒有延遲信息,只是對所設(shè)計(jì)的電路進(jìn)行邏輯功能驗(yàn)證。在仿真前,需要將核心的輸入信號進(jìn)行序列組合,也就是利用HDL和波形編輯器建立測試向量和波形文件。仿真結(jié)果以信號波形和報(bào)告文件的形式呈現(xiàn),方便觀察各個(gè)信號節(jié)點(diǎn)的變化情況。如果出現(xiàn)錯(cuò)誤,就返回修改邏輯設(shè)計(jì)。


五、綜合優(yōu)化

        綜合優(yōu)化,簡單來說就是將高級抽象描述轉(zhuǎn)化為具體詳細(xì)的描述,根據(jù)目標(biāo)要求對所生成的邏輯連接進(jìn)行優(yōu)化,使設(shè)計(jì)層次更加平面化,以便實(shí)現(xiàn)FPGA布局布線。

1-23021415463NU.jpg


        從層次上來看,綜合優(yōu)化主要是將輸入設(shè)計(jì)編譯成邏輯連接網(wǎng)表,以便和觸發(fā)器、RAM、與或非門等基本邏輯單元進(jìn)行連接。真實(shí)具體的門級電路還要利用FPGA制造商的布局布線功能,再根據(jù)綜合后的邏輯連接網(wǎng)表來繪制,也就是標(biāo)準(zhǔn)門級結(jié)構(gòu)網(wǎng)表。因此,綜合優(yōu)化并非最終的門級電路。


        另外需要注意的是,為了確保標(biāo)準(zhǔn)門級結(jié)構(gòu)網(wǎng)表的轉(zhuǎn)換,在編寫HDL程序時(shí),必須要針對特定綜合器的風(fēng)格進(jìn)行匹配。


六、綜合后仿真

        綜合后仿真,是檢查綜合結(jié)果與原設(shè)計(jì)是否一致的步驟,通過把綜合生成的標(biāo)準(zhǔn)延時(shí)文件,反標(biāo)注到綜合仿真模型中,來對門延時(shí)影響進(jìn)行評估。該步驟并不能對線延時(shí)進(jìn)行評估,因此和布線后的實(shí)際情況有差距。

1-230214154IY52.png


        現(xiàn)階段綜合工具已經(jīng)比較成熟,對于一般的設(shè)計(jì)而言,通常這一步驟可以省略。但是,如果布局布線之后,出現(xiàn)電路結(jié)構(gòu)與設(shè)計(jì)意圖不符的情況,還是需要通過綜合仿真來查找問題根源。


七、實(shí)現(xiàn)與布局布線

        實(shí)現(xiàn),就是將綜合生成的邏輯網(wǎng)表在FPGA芯片上進(jìn)行配置,完成布局布線。展開來說,布局是將邏輯網(wǎng)表中的硬件與底層單元,在FPGA芯片內(nèi)部的固有硬件結(jié)構(gòu)上進(jìn)行合理的配置,以便達(dá)到最優(yōu)的面積和最優(yōu)的速度。布線則是在布局拓?fù)浣Y(jié)構(gòu)的基礎(chǔ)之上,結(jié)合FPGA芯片內(nèi)部的各種接口,準(zhǔn)確連接各個(gè)元器件。由于布局布線需要用到FPGA芯片內(nèi)部的所有硬件和接口,因此必須選擇FPGA芯片原廠提供的工具。

1-230214154T3B9.gif


        由于FPGA的結(jié)構(gòu)十分復(fù)雜,尤其是在時(shí)序約束條件下,必須要用到時(shí)序驅(qū)動引擎來完成布局布線。完成布線之后,軟件工具可以自動生成報(bào)告,展示設(shè)計(jì)中各資源的使用情況。


八、后仿真

        后仿真,也叫時(shí)序仿真,主要是將布局布線后的延時(shí)信息,反向標(biāo)注到設(shè)計(jì)網(wǎng)表中,以便檢查是否有時(shí)序違規(guī)存在,比如保持時(shí)間、建立時(shí)間等是否滿足器件的固有時(shí)序規(guī)則或時(shí)序約束條件。


        后仿真可以精確、完整的展示延遲信息,因此能很好的反饋芯片時(shí)間工作時(shí)的情況。

1-230214155002129.png


        后仿真的意義重大。因?yàn)椴煌現(xiàn)PGA芯片的內(nèi)部延時(shí)不同,布局布線方案也會給延時(shí)造成影響。因此,在完成布局布線之后,對整個(gè)系統(tǒng)以及各個(gè)模塊進(jìn)行后仿真,可以驗(yàn)證時(shí)序關(guān)系、評估系統(tǒng)性能,對檢查和消除設(shè)計(jì)風(fēng)險(xiǎn)具有重大意義。


九、板級仿真及驗(yàn)證

        在高速電路設(shè)計(jì)中,還需要進(jìn)行板級仿真。板級仿真主要是對高速系統(tǒng)的電磁干擾和信號完整等指標(biāo)進(jìn)行檢查,通常采用第三方工具進(jìn)行。


十、編程與調(diào)試

        芯片的編程與調(diào)試是整個(gè)FPGA開發(fā)流程的最后一步。芯片編程需要先生成使用所需的數(shù)據(jù)文件,即位數(shù)據(jù)流文件,然后再將數(shù)據(jù)文件上傳到FPGA芯片內(nèi)。

1-23021415523A45.jpg


        芯片編程需要在一定的條件下進(jìn)行,比如編程時(shí)序、編程算法和編程電壓等。在FPGA的設(shè)計(jì)過程中,邏輯分析儀是一種重要的調(diào)試工具。邏輯分析儀價(jià)格比較貴,且需要引出大量的測試管腳。不過,主要的FPGA芯片廠家都會提供內(nèi)嵌的邏輯分析儀,比如Xilinx賽靈思內(nèi)嵌的ChipScope和Altera阿爾特拉內(nèi)嵌的SignalTapII、SignalProb等。


        通過廠家內(nèi)嵌邏輯分析儀,可以幫助客戶降低成本,同時(shí)減小FPGA芯片邏輯資源的占用,實(shí)用性非常強(qiáng)。