電子工程網(wǎng)
標題: FPGA實戰(zhàn)演練邏輯篇8:FPGA開發(fā)流程 [打印本頁]
作者: rousong1989 時間: 2015-3-31 09:29
標題: FPGA實戰(zhàn)演練邏輯篇8:FPGA開發(fā)流程
FPGA開發(fā)流程(特權(quán)同學版權(quán)所有)
本文節(jié)選自特權(quán)同學的圖書《FPGA設(shè)計實戰(zhàn)演練(邏輯篇)》(特權(quán)同學版權(quán)所有)
配套例程下載鏈接:http://pan.baidu.com/s/1pJ5bCtt
如圖1.6所示。這個流程圖是一個相對比較高等級的FPGA開發(fā)流程,從項目的提上議程開始,設(shè)計者需要進行FPGA功能的需求分析,然后進行模塊的劃分,比較復(fù)雜和龐大的設(shè)計,則會通過模塊劃分把工作交給一個團隊的多人協(xié)作完成。各個模塊的具體任務(wù)和功能劃分完畢(通常各個模塊間的通信和接口方式也同時被確定),則可以著手進行詳細設(shè)計,包括代碼的編寫、綜合優(yōu)化、實現(xiàn)(映射或布局布線),為了保證設(shè)計達到預(yù)期要求,各種設(shè)計的約束輸入以及仿真驗證也穿插其間。最終在EDA工具上驗證無誤,則可以生產(chǎn)下載配置文件燒錄到實際器件中進行板級的調(diào)試工作。從圖中的箭頭示意不難看出,設(shè)計的迭代性是FPGA開發(fā)過程中的一個重要特點,這也就要求設(shè)計者從設(shè)計一開始就要非常認真細致,來不得半點的馬虎,否則后續(xù)的很多工作量可能就是不斷的返工。(特權(quán)同學版權(quán)所有)
圖1.6 FPGA開發(fā)流程
當然了,對于沒有實際工程經(jīng)驗的初學者而言,這個流程圖可能不是那么容易理解。不過沒有關(guān)系,我們會簡化這個過程,從實際操作角度,以一個比較簡化的順序的方式來理解這個流程。如圖1.7所示,從大的方面來看,F(xiàn)PGA開發(fā)流程不過是三個階段,第一個階段是概念階段,或者也可以稱之為架構(gòu)階段,這個階段的任務(wù)是項目前期的立項準備,如需求的定義和分析、各個設(shè)計模塊的劃分;第二個階段是設(shè)計實現(xiàn)階段,這個階段包括編寫RTL代碼、并對其進行初步的功能驗證、邏輯綜合和布局布線、時序驗證,這一階段是詳細設(shè)計階段;第三個階段是FPGA器件實現(xiàn),除了器件燒錄和板級調(diào)試外,其實這個階段也應(yīng)該包括第二個階段的布局布線和時序驗證,因為這兩個步驟都是和FPGA器件緊密相關(guān)的。我們這么粗略的三個階段劃分并沒有把FPGA整個設(shè)計流程完全的孤立開來,恰恰相反,從我們的階段劃分中,我們也看到FPGA設(shè)計的各個環(huán)節(jié)是緊密銜接、相互影響的。當然了,可能這些繁瑣的步驟依然讓你“云里霧里”,其實并不是每個步驟都要人工來完成,很多工作量其實是設(shè)計工具自身來執(zhí)行的,如邏輯綜合、布局布線,這些步驟具體實現(xiàn)的底層細節(jié)不見得你需要非常清楚,但是你必須關(guān)注他們的結(jié)果是否符合設(shè)計預(yù)期的功能和性能。總而言之,F(xiàn)PGA的開發(fā)流程雖然有些復(fù)雜,但是隨著學習的逐步深入,對流程全貌由更深入的認知,你會發(fā)現(xiàn)其實FPGA開發(fā)并沒有想象中那么困難。(特權(quán)同學版權(quán)所有)
圖1.7 簡化的FPGA開發(fā)流程
| 歡迎光臨 電子工程網(wǎng) (http://www.4huy16.com/) |
Powered by Discuz! X3.4 |