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

          新聞中心

          EEPW首頁 > 測試測量 > 設(shè)計應(yīng)用 > FPGA電路設(shè)計: 如何應(yīng)對電源相關(guān)問題的挑戰(zhàn)

          FPGA電路設(shè)計: 如何應(yīng)對電源相關(guān)問題的挑戰(zhàn)

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

            引言

            在設(shè)計可編程門陣列()電路時,必須極端重視問題,從而使最終產(chǎn)品能在所有可能的條件下無缺陷工作并處于最優(yōu)狀態(tài)。 電路有兩項需考慮的問題: 電路上電要求和電路功耗分析。這篇文章針對這兩方面的要求,討論您可能遇到的問題,以及解決方案。

            目前FPGA所面臨的問題

            FPGA電路通常需要多路輸入。為優(yōu)化開機時的電流拖曳,防止鎖死和永久性的電路損壞,同時也為了防止開機接通時的毛刺干擾和降低開機接通的功耗,這些電源輸入必須具有精確的上電序列以及正確的電壓變化率。如何實現(xiàn)復(fù)雜多路供電的精確控制是FPGA驗證過程中的難點。此外,隨著項目的發(fā)展,F(xiàn)PGA指標(biāo)通常會發(fā)生變化,靈活簡單的上電參數(shù)調(diào)整方式也是工程師在進行前期電路設(shè)計時所需要的。

            在產(chǎn)品設(shè)計過程中,還需要測試各種工作條件下的FPGA電路功耗,捕獲大電流尖峰的精確輪廓,并帶有時戳,以確定尖峰出現(xiàn)的時間,從而確定設(shè)計必須提供的最大電源功耗??赡苓€需要為電源資源有限的產(chǎn)品(如電池供電設(shè)備)進行進一步功耗優(yōu)化設(shè)計。

            實例: 為 Xilinx Spartan-3 FPGA 設(shè)置上電規(guī)則并進行功耗分析

            以Spartan-3系列FPGA為例,該FPGA電路需要四路供電,包括VCCINT(內(nèi)核電源),VCCAUX(輔助電源),VCCO(I/O電源)和VINTF(接口電源)。其中VINTF用于為配置器件如NOR Flash PROM 或微控器供電的供電。為正確配置 FPGA,要在FPGA上電前 1毫秒開啟,這一上電間隔保證了配置器件已完成上電,并準(zhǔn)備好向FPGA發(fā)送來自存儲器的配置。其他三路供電時序沒有嚴(yán)格要求,但如果VCCINT 在 VCCAUX 之前,或與其同時上電,F(xiàn)PGA將消耗過多的內(nèi)核電流。這一過度的電流拖曳將更快降低電池壽命,并導(dǎo)致負(fù)責(zé)功率分配的設(shè)計人員選擇更大功率的調(diào)整器。

            為驗證不同上電時序?qū)PGA電路消耗電流的影響,使用安捷倫 N6705A直流功耗分析儀按圖1所示與FPGA電路進行連接。

          使用多路電源為FPGA電路供電時的連接和設(shè)置


            圖1 使用多路電源為FPGA電路供電時的連接和設(shè)置


          上一頁 1 2 3 4 下一頁

          關(guān)鍵詞: FPGA 電路設(shè)計 電源

          評論


          相關(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); })();