色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 經(jīng)過優(yōu)化的低成本FPGA中的高性能DSP功能

          經(jīng)過優(yōu)化的低成本FPGA中的高性能DSP功能

          作者: 時間:2007-09-28 來源:網(wǎng)絡(luò) 收藏
          受諸如視頻和靜態(tài)圖像使用的增多以及軟件無線電等可重復(fù)配置系統(tǒng)需求的增長,數(shù)字信號處理(DSP)的應(yīng)用繼續(xù)膨脹。其中許多應(yīng)用把重要的DSP處理要求和對成本的敏感性、對高性能的需求以及低成本的DSP解決方案結(jié)合在一起。

          通用的DSP芯片和FPGA是實現(xiàn)DSP功能的兩種普遍的方法。每種方法都各有優(yōu)點,其最適宜的方法因應(yīng)用要求的不同而各異。本文論述了通用DSP的功能,闡述了通用DSP和FPGA之間的差異,比較了現(xiàn)有的用FPGA實現(xiàn)DSP的解決方案,最后介紹了LatticeECP2M DSP的結(jié)構(gòu)以及實現(xiàn)DSP的設(shè)計方法。

          通用的DSP解決方案與FPGA實現(xiàn)方法的對比


          帶有加法、減法或累加運算的乘法器是大多數(shù)DSP應(yīng)用的核心。通用DSP芯片把這些功能的有效實現(xiàn)方法和一個通用微處理器結(jié)合在一起。乘法器的數(shù)目一般為數(shù)個,微處理器將數(shù)據(jù)串行地實現(xiàn)乘法或其它功能,中間結(jié)果存放在器或累加器中。性能的提高主要通過提升用于乘法的時鐘速度來實現(xiàn)。典型的時鐘速度從數(shù)十MHz到1GHz。其性能,用每秒百萬次乘法累加(MMAC)來衡量,通常為10到4000。更高性能要求的功能不得不分拆在多個DSP引擎中實現(xiàn)。這些芯片的價格從低端性能的幾美元到高端性能的數(shù)百美元。這種方法的優(yōu)點是能夠直接實現(xiàn)用諸如C這樣的高級編程語言編寫算法。

          面向DSP的FPGA能在一個芯片上并行地實現(xiàn)許多功能。通用的、器資源用來實現(xiàn)各個功能之間的互連、實現(xiàn)額外的功能、定序或在必要的情況下數(shù)據(jù)。一些基本的器件僅提供乘法器,需要用戶用所有其它的功能。更多的高級器件提供加法、減法和累加功能,作為一整套DSP模塊的一部分。FPGA通常擁有數(shù)十個乘法單元,可以在數(shù)百MHz的時鐘速度下工作。例如,LatticeECP2-70 FPGA擁有88個18x18的乘法器,運行速度可達(dá)325MHz,性能達(dá)到每秒28600MMAC。

          設(shè)計者經(jīng)常要實現(xiàn)結(jié)構(gòu)化的DSP功能,這在FPGA內(nèi)要占用大量的計算資源。通常在FPGA內(nèi)實現(xiàn)的結(jié)構(gòu)化功能為:有限脈沖響應(yīng)濾波器(FIR)、無限脈沖響應(yīng)濾波器(IIR)、快速傅立葉變換(FFT)和混頻器。每種功能都需要將乘法單元與加法、減法和累加結(jié)合在一起。圖1和圖2分別是典型的FIR濾波器和快速傅立葉變換(FFT)的實現(xiàn)方式。

          目前在低成本FPGA中實現(xiàn)DSP功能有幾種方法。第一種方法是使用器件內(nèi)的查找表(LUT)。這個方法提供相對低的性能而且占用許多FPGA資源。另外一種方法是在FPGA中用硬核實現(xiàn)乘法器。這減少了實現(xiàn)DSP所需的FPGA資源。然而正如前面所述,在FPGA中實現(xiàn)的大多數(shù)DSP功能需要在 乘法器之后進(jìn)行加、減和累加。這些功能要占用大量的FPGA資源,最后的數(shù)據(jù)寬度可達(dá)36位。因此經(jīng)常會在設(shè)計中形成瓶頸。為了面對這個挑戰(zhàn),最新的FPGA利用有效的硬在乘法器之后進(jìn)行可編程加、減和累加。用這種方法實現(xiàn)DSP功能后,大大減少了通用資源的使用,并能獲得很高的性能。

          LatticeECP2/M器件結(jié)構(gòu)


          LatticeECP2和LatticeECP2M系列重新定義了低成本FPGA,在更低的成本下?lián)碛懈嘧罴训腇PGA特性。器件含有sysDSP塊和工程預(yù)制的源同步I/O。在LatticeECP2M中有高達(dá)5.3M位的RAM塊、在LatticeECP2中有高達(dá)1.1M位的RAM塊。在LatticeECP2M中有3.125Gbps嵌入式SERDES,支持PCIexpress、Ethernet (1GbE 和 SGMII)以及多個其它標(biāo)準(zhǔn)。集成了以前只有高成本、高性能FPGA才有的特點和性能,這些系列的產(chǎn)品極大地擴(kuò)展了利用低成本FPGA的應(yīng)用范圍。

          LatticeECP2/M器件由一個低成本的FPGA結(jié)構(gòu)加上3個~42個sysDSP塊構(gòu)成(圖3為sysDSP塊)。圖4是ECP器件的整體結(jié)構(gòu)圖。圖中紅色部分是sysDSP塊,專門用來實現(xiàn)DSP的功能。LatticeECP2/M系列中的sysDSP塊支持三種數(shù)據(jù)寬度下(9、18和36)的四種功能單元。用戶為一個DSP塊選擇一種功能單元,然后選擇數(shù)據(jù)寬度和操作數(shù)的類型(帶符號/無符號)。sysDSP塊中的操作數(shù)可以是帶符號或者無符號的,但在一個功能單元中不可以混合使用。類似的,操作數(shù)的寬度在一個塊中必須相同。每個sysDSP塊中的資源可以經(jīng)過配置支持下面四種單元:
            ● MULT(乘法)
            ● MAC(乘法、累加)
            ● MULTADD(乘法、加/減)
            ● MULTADDSUM(乘法、加/減,累加)

          每個塊中可用的單元數(shù)目取決于數(shù)據(jù)寬度。該寬度有三種數(shù)值可供選擇:x9,x18和x36。數(shù)個這樣的單元可以連接起來,從而以并行方式實現(xiàn)DSP功能。

          DSP設(shè)計方法


          Lattice提供便捷的方法讓設(shè)計者處理sysDSP塊的這些性能,下面分別敘述這些方法:
            ●ispLEVER工具中的Module/IP Manager是一個圖形接口,可以迅速地產(chǎn)生實現(xiàn)DSP單元的模塊。這些模塊可以在HDL設(shè)計中被適當(dāng)?shù)夭捎谩?BR>  ●將特定的功能通過編代碼嵌入設(shè)計的HDL中,允許綜合工具推理出DSP塊的用法。
            ●采用一個Lattice Block套件在MathWork的 Simulink中實現(xiàn)設(shè)計。然后,ispLEVER軟件中的ispLeverDSP可以適當(dāng)?shù)貙⑦@些模塊轉(zhuǎn)換成HDL。
            ●直接在源代碼中用實例說明DSP組件。

          任何設(shè)計方法選擇取決于DSP運算規(guī)則的設(shè)計方法以及物理實現(xiàn)時所要求的控制程度。圖5展示了在MathWork的Simulink工具中使用Lattice Block套件的情形。

          結(jié)語

          DSP技術(shù)的應(yīng)用將進(jìn)一步發(fā)展。對DSP應(yīng)用中典型功能的分析表明:乘法器、加法、減法和累加單元的組合是必需的。LatticeECP2/M器件把DSP塊和低成本的FPGA結(jié)構(gòu)組合在一起。通過在sysDSP塊內(nèi)實現(xiàn)加法、減法、和累加功能,有很高的性能和LUT的利用率。



          關(guān)鍵詞: 存儲 布線 邏輯 構(gòu)造

          評論


          相關(guān)推薦

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

          關(guān)閉