新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 從硬件角度討論FPGA開發(fā)框架

從硬件角度討論FPGA開發(fā)框架

作者: 時間:2015-01-27 來源:網(wǎng)絡(luò) 收藏

  這個層面的探討需要對架構(gòu)和資源的特性與功能有深入的認(rèn)識。因此應(yīng)該由經(jīng)驗豐富的設(shè)計人員參與完成。在這個階段,您必須考慮與性能目標(biāo)、潛在風(fēng)險因素和FPGA資源利用率。

本文引用地址:http://butianyuan.cn/article/268662.htm

  在FPGA架構(gòu)定義階段,您有可能會發(fā)現(xiàn)系統(tǒng)級需求和架構(gòu)無法實現(xiàn),或是對實現(xiàn)在FPGA中而言存在高風(fēng)險。在這種情況下您必須重新評估和更新系統(tǒng)架構(gòu),以創(chuàng)建在FPGA中可實現(xiàn)的高級需求列表。

  您應(yīng)問問自己現(xiàn)有IP哪些可供使用,還必須創(chuàng)建哪些IP.此外,您還需要檢查I/O需求,以及把時鐘域和時鐘特性映射到FPGA時鐘資源的方法。其他關(guān)鍵問題包括:如何在FPGA上布局千兆位收發(fā)器(GT)資源;在SSI器件中是否已考慮到交叉SLR數(shù)據(jù)流;目標(biāo)時鐘頻率對設(shè)計功能而言是否實際。最后,您還必須評估您設(shè)計的目標(biāo)性能對選擇的FPGA而言是否實際。

  FPGA需求定義與劃分

  FPGA需求定義和劃分階段與系統(tǒng)和FPGA架構(gòu)定義緊密關(guān)聯(lián)并受這兩個階段的決策左右。FPGA需求定義指定義準(zhǔn)備在FPGA中實現(xiàn)的詳細(xì)需求,并用作明確的特性清單以供設(shè)計和測試工程團隊設(shè)計、測試和實現(xiàn)。FPGA需求定義與系統(tǒng)和FPGA架構(gòu)需求定義的不同之處在于FPGA需求是精確的。該清單定義了FPGA的細(xì)致要求,而不僅僅是系統(tǒng)的不同組件之間的功能劃分,或是穿越FPGA的數(shù)據(jù)流之間的功能劃分。

  這個階段的目的是清楚地定義FPGA工程團隊確切能實現(xiàn)和測試的內(nèi)容。在這個階段,用戶將把高級系統(tǒng)和FPGA架構(gòu)需求轉(zhuǎn)換成用于實現(xiàn)的具體需求。這樣做能夠帶來雙重好處。首先,單獨定義FPGA需求能突出強調(diào)系統(tǒng)和FPGA架構(gòu)的任何局限以及之前未曾考慮到或未曾預(yù)見到的狀況。其次,該步驟將為FPGA設(shè)計的開發(fā)和測試的順利執(zhí)行鋪平道路。

  為適當(dāng)?shù)孛枋鯢PGA需求,您必須建立清晰且簡明扼要的定義,以便提煉成單獨的需求。我們建議為各項需求添加標(biāo)簽或序號,使用易于判斷其能否實現(xiàn)的簡短描述來定義各項需求,避免用高級含糊的需求用語。只要足夠清晰扼要,您可以使用任何行業(yè)標(biāo)準(zhǔn)格式或?qū)S懈袷健?/p>

  避免使用含混或界定不清的用語,例如“快速”或“小型”。應(yīng)堅持使用有明確目標(biāo)的用語,如“400MHz”或“4.2K觸發(fā)器”。這樣定義的目的旨在確保將文檔分配給之前不了解系統(tǒng)或FPGA架構(gòu)的開發(fā)工程團隊進行實施時不再需要反復(fù)澄清。您需要檢查每個需求是否表述清楚、簡潔、明確且是否包含了所有必需的信息以避免反復(fù)澄清的必要。此外,還應(yīng)該注意需求中是否包括管腳和I/O定義?是否所有的高級需求都已經(jīng)分解為基本設(shè)計要素?未參與早期系統(tǒng)架構(gòu)定義的設(shè)計團隊是否能夠使用這些需求開發(fā)FPGA以及最后測試與驗證團隊是否能使用該文檔開發(fā)測試平臺和制定測試方案,明確驗證每一項需求是否通過。

  FPGA設(shè)計規(guī)劃

  該框架的這個階段用于為FPGA硬件的實際開發(fā)制定規(guī)劃,確保各項特性及開發(fā)工作的完成與整個產(chǎn)品開發(fā)的其他部分協(xié)調(diào)一致。

  這個階段的目標(biāo)是適當(dāng)?shù)匕旬?dāng)前的系統(tǒng)級需求、FPGA級需求和架構(gòu)體現(xiàn)到開發(fā)規(guī)劃中。在通過前面介紹的規(guī)劃階段之后,現(xiàn)在開發(fā)團隊一般會面臨兩種情況。

  第一種情況是系統(tǒng)與FPGA架構(gòu)以及需求理解良好,描述詳盡,最終,F(xiàn)PGA設(shè)計開發(fā)階段(即HDL編碼)和測試開發(fā)階段(仿真、測試臺)基本無需修改設(shè)計需求,順利執(zhí)行。

  第二種情況是系統(tǒng)架構(gòu)和FPGA需求仍然處在變動中。這樣的設(shè)計會在設(shè)計開發(fā)周期和測試開發(fā)階段面臨眾多變數(shù)和修改。

  雖然人人都想得到第一種情況的結(jié)果,但往往卻不能成功,最終落入第二種情況的境地。很明顯,這種情況更加難于管理。

  設(shè)計規(guī)劃的總體目標(biāo)應(yīng)是在開發(fā)周期的這個階段實現(xiàn)第一種情況。在第一種情況中,F(xiàn)PGA的開發(fā)簡單直觀,只需為實現(xiàn)和測試設(shè)計特性安排進度計劃。

  在第二種情況中,最重要的管理工作是確保落實充分理解的流程,以便評估和決定應(yīng)該進行哪些修改以及每種修改為總體開發(fā)進度計劃帶來的影響如何。這里可以運用多種項目管理理念和技巧。最重要的一點是完成上述修改評估和影響評估。

  就專門的FPGA規(guī)劃和開發(fā)而言,F(xiàn)PGA的優(yōu)勢之一在于能夠多次修訂硬件平臺和多次把硬件平臺下載到原型PCB上。設(shè)計團隊?wèi)?yīng)充分發(fā)揮這一功能的優(yōu)勢。因此建議的開發(fā)規(guī)劃是逐漸把特性添加到能夠工作的設(shè)計中。其思路是從能夠?qū)崿F(xiàn)主要通信接口的基本設(shè)計出發(fā),無需實現(xiàn)全部需求就能工作。

  這樣做能夠帶來雙重好處。首先可以確保隨時有一個可工作的設(shè)計,您可用來調(diào)試PCB和更大型系統(tǒng)。其次,調(diào)試實際的FPGA設(shè)計會簡單得多,因為可以檢查新添加的特性,確保新添加的特性不會干擾或中斷當(dāng)前可工作的設(shè)計。

  與FPGA設(shè)計開發(fā)同步,同樣重要的是為實現(xiàn)的FPGA設(shè)計準(zhǔn)備良好的仿真環(huán)境規(guī)劃。投資開發(fā)穩(wěn)健可靠的仿真環(huán)境,就可以復(fù)制現(xiàn)實數(shù)據(jù)流,在仿真中重現(xiàn)出錯條件,迅速隔離和判斷根本原因,從而不僅能減少設(shè)計缺陷,還能顯著縮短實驗室調(diào)試時間。

  開發(fā)穩(wěn)健可靠的測試仿真環(huán)境和開發(fā)FPGA本身一樣復(fù)雜,需要視同開發(fā)FPGA一樣規(guī)劃和考量。


上一頁 1 2 下一頁

關(guān)鍵詞: FPGA

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉