<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          最佳FPGA和專用DSP

          作者: 時間:2009-06-15 來源:網(wǎng)絡(luò) 收藏

            選擇

            做為這些通用功能應(yīng)用,大多數(shù)應(yīng)用的核心是乘、加、減或累加。通用芯片與通用微處理器結(jié)合能有效地實現(xiàn)這些功能。乘法器數(shù)量通常1~4個,而微處理器通過乘和其他功能定序通過的數(shù)據(jù),存儲中間結(jié)果在存儲器或累加器。主要靠提高乘法所用的時鐘速度來提高性能。典型時鐘速度為幾十MHz~1GHz。性能用每秒MMAC(百萬乘累加)度量,典型值10~4000。

            需要較佳功能必須并聯(lián)組合多個DSP引擎。這種方法的主要優(yōu)點是直接實現(xiàn)用高級編程語言(如C語言)編寫的算法。

            DSP定向的能在一個芯片上并行實現(xiàn)很多功能。通用發(fā)送、邏輯和存儲器資源互連功能、執(zhí)行加法功能、定序和存儲數(shù)據(jù)。某些基本器件僅提供乘法支持,需要用戶建造其他邏輯功能。更復(fù)雜的器件提供加、減和累加功能做為DSP構(gòu)建單元的一部分。通常帶有幾十乘法器單元,可工作在幾百M(fèi)Hz的時鐘頻率。

            DSP 選擇

            Altera公司的Cyclone FPGA不包含DSP定向的元件,這使得實現(xiàn)大的DSP功能而不消耗大量的外部資源變得困難。然而,CycloneII包含乘法器功能,Xilinx公司的SpartanIII FPA家族具有基本的乘法器功能。沒有DSP功能時,必須消耗大量的FPGA資源來實現(xiàn)一般設(shè)計中的加、減、累加和流水線寄存器。

            Lattice公司專為DSP應(yīng)用設(shè)計了ECP-DSP器件(圖4)。它含有與4和10個集成sysDSP單元連接的低成本FPEA結(jié)構(gòu)。sysDSP單元以3個數(shù)據(jù)通路寬度(9,18和36)支持4個功能單元。用戶為DSP單元選擇一個功能單元,然后選擇其操作數(shù)的寬度和類型(符號/無符號)。sysDSP單元中的操作數(shù)可以帶符號或無符號,但在功能單元中不能混合。

            同樣,在一個單元中操作數(shù)寬度不能混合。每個sysDSPK中的資源可配置來支持MULT(乘)、MAC(乘累加)、MULTADD(乘加/減)和MULTADDSUM(乘加/減和)元件。


          圖4 ECP-DSP框圖

            每個單元中可用的元件數(shù)取決于所選擇的數(shù)據(jù)通路寬度。把若干個元件連接起來可并聯(lián)實現(xiàn)DSP功能。

            sysDSP單元在輸入,中間和輸出級具有內(nèi)置任選流水線寄存器。如需要,輸入也可能并行輸入或跨過陣列移位。也為帶符號和不帶符號運(yùn)算和加減之間動態(tài)轉(zhuǎn)換提供選擇。在sysDSP單元中可得到流水線寄存器、和、減和累加。在一般的功能中,一般需要用加、和或累加組合乘法。概念簡單的流水線寄存器在寬數(shù)據(jù)通路中實現(xiàn)要消耗大量的資源。用sysDSP單元實現(xiàn)這些功能可使通用FPGA資源消耗較低、性能較高,允許采用較低速度等級的更小器件。


          上一頁 1 2 下一頁

          關(guān)鍵詞: FPGA DSP

          評論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();