新聞中心

        EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > FPGA工程師手記:FPGA系統(tǒng)設(shè)計(jì)黃金法則

        FPGA工程師手記:FPGA系統(tǒng)設(shè)計(jì)黃金法則

        作者: 時間:2013-07-22 來源:網(wǎng)絡(luò) 收藏

        不管你是一名邏輯設(shè)計(jì)師、硬件或系統(tǒng),甚或擁有所有這些頭銜,只要你在任何一種高速和多協(xié)議的復(fù)雜系統(tǒng)中使用了,你就很可能需要努力解決好器件配置、電源管理、IP集成、信號完整性和其他的一些關(guān)鍵設(shè)計(jì)問題。

        本文引用地址:http://www.104case.com/article/189562.htm

        不過,你不必獨(dú)自面對這些挑戰(zhàn),因?yàn)樵诋?dāng)前業(yè)內(nèi)領(lǐng)先的公司里工作的應(yīng)用每天都會面對這些問題,而且他們已經(jīng)提出了一些將令你的設(shè)計(jì)工作變得更輕松的設(shè)計(jì)指導(dǎo)原則和解決方案。掌握設(shè)計(jì)的三大黃金法則,讓你設(shè)計(jì)更輕松。

        一.面積與速度的平衡互換原則

        這里的面積指的是FPGA的芯片資源,包括邏輯資源和I/O資源等;這里的速度指的是FPGA工作的最高頻率(和DSP或者ARM不同,F(xiàn)PGA設(shè)計(jì)的工作頻率是不固定的,而是和設(shè)計(jì)本身的延遲緊密相連)。 在實(shí)際設(shè)計(jì)中,使用最小的面積設(shè)計(jì)出最高的速度是每一個開發(fā)者追求的目標(biāo),但是“魚和熊掌不可兼得”,取舍之間展示了一個開發(fā)者的智慧。

        1.速度換面積

        速度優(yōu)勢可以換取面積的節(jié)約。面積越小,就意味著可以用更低的成本來實(shí)現(xiàn)產(chǎn)品的功能。速度換面積的原則在一些較復(fù)雜的算法設(shè)計(jì)中常常會用到。在這些算法設(shè)計(jì)中,流水線設(shè)計(jì)常常是必須用到的技術(shù)。在流水線的設(shè)計(jì)中,這些被重復(fù)使用但是使用次數(shù)不同的模塊將會占用大量的FPGA資源。對FPGA的設(shè)計(jì)技術(shù)進(jìn)行改造,將被重復(fù)使用的算法模塊提煉出最小的復(fù)用單元,并利用這個最小的高速代替原設(shè)計(jì)中被重復(fù)使用但次數(shù)不同的模塊。當(dāng)然,在改造的過程中必然會增加一些其他的資源來實(shí)現(xiàn)這個代替的過程。但是只要速度具有優(yōu)勢,那么增加的這部分邏輯依然能夠?qū)崿F(xiàn)降低面積提高速度的目的。

        可以看到,速度換面積的關(guān)鍵是高速基本單元的復(fù)用。

        2.面積換速度

        在這種方法中面積的復(fù)制可以換取速度的提高。支持的速度越高,就意味著可以實(shí)現(xiàn)更高的產(chǎn)品性能。一些注重產(chǎn)品性能的應(yīng)用領(lǐng)域可以采用并行處理技術(shù),實(shí)現(xiàn)面積換速度。

        二.硬件可實(shí)現(xiàn)原則

        FPGA設(shè)計(jì)通常會使用HDL語言,比如Verilog HDL或者VHDL。當(dāng)采用HDL語言來描述一個硬件電路功能的時候,一定要確保代碼描述的電路是硬件可實(shí)現(xiàn)的。

        Verilog HDL語言的語法與C語言很相似,但是它們之間有著本質(zhì)的區(qū)別。C語言是基于過程的高級語言,編譯后可以在CPU上運(yùn)行。而Verilog HDL語言描述的本身就是硬件結(jié)構(gòu),編譯后是硬件電路。因此,有些語句在C語言的環(huán)境中應(yīng)用是沒有問題的,但是在HDL語言環(huán)境下就會導(dǎo)致結(jié)果不正確或者不理想。如:

        for(i=0;i16;i++)

        DoSomething();

        在C語言中運(yùn)行沒有任何問題,但是在Verilog HDL的環(huán)境下編譯就會導(dǎo)致綜合后的資源嚴(yán)重浪費(fèi)。

        三.同步設(shè)計(jì)原則

        同步電路和異步電路是FPGA設(shè)計(jì)的兩種基本電路結(jié)構(gòu)形式。

        異步電路的最大缺點(diǎn)是會產(chǎn)生毛刺。同步設(shè)計(jì)的核心電路是由各種觸發(fā)器構(gòu)成的。這類電路的任何輸出都是在某個時鐘的邊沿驅(qū)動觸發(fā)器產(chǎn)生的。所以,同步設(shè)計(jì)可以很好地避免毛刺的產(chǎn)生。



        評論


        相關(guān)推薦

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

        關(guān)閉
        主站蜘蛛池模板: 屏南县| 竹山县| 东辽县| 道孚县| 芒康县| 滨州市| 恭城| 祁东县| 体育| 徐汇区| 襄城县| 北流市| 丰台区| 汉沽区| 仙居县| 沁源县| 武清区| 丰原市| 都兰县| 泽普县| 浦北县| 宜春市| 平顺县| 民乐县| 华坪县| 社旗县| 高尔夫| 阳信县| 沁水县| 北海市| 二手房| 靖安县| 大埔区| 马鞍山市| 西安市| 明星| 东山县| 禹州市| 双峰县| 衡南县| 称多县|