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

          新聞中心

          EEPW首頁 > EDA/PCB > 設計應用 > 克服FPGA I/O引腳分配挑戰(08-100)

          克服FPGA I/O引腳分配挑戰(08-100)

          —— Solving FPGA I/O pin assiqnment challenges
          作者:Brian Jackson Xilinx, Inc.產品營銷經理時間:2009-02-25來源:電子產品世界收藏

            對于需要在PCB板上使用大規模器件的設計人員來說,分配是必須面對的眾多挑戰之一。 由于眾多原因,許多設計人員發表為大型器件和高級BGA封裝確定配置或布局方案越來越困難。 但是組合運用多種智能I/O規劃工具,能夠使引腳分配過程變得更輕松。

          本文引用地址:http://www.ex-cimer.com/article/91695.htm

            在PCB上定義器件的布局是一項艱巨的設計挑戰,即可能幫助設計快速完成,也有可能造成設計失敗。 在此過程中必須平衡FPGA 和 PCB兩方面的要求,同時還要并行完成兩者的設計。 如果僅僅針對PCB或FPGA進行引腳布局優化,那么可能在另一方面引起設計問題。

            為了解引腳分配所引起的后果,需要以可視化形式顯示出PCB布局和FPGA物理器件引腳,以及內部FPGA I/O點和相關資源。 不幸的是,到今天為止還沒有單個工具或方法能夠同時滿足所有這些協同設計需求。

            然而,可以結合不同的技術和策略來優化引腳規劃流程并積極采用 PinAhead技術等新協同設計工具來發展出一套有效的引腳分配和布局方法。 賽靈思公司在ISE軟件設計套件10.1版中包含了PinAhead。

            賽靈思公司開發了一種規則驅動的方法。首先根據PCB和FPGA設計要求定義一套初始引腳布局,這樣利用與最終版本非常接近的引腳布局設計小組就可以盡可能早地開始各自的設計流程。 如果在設計流程的后期由于PCB布線或內部FPGA性能問題而需要進行調整,在采用這一方法晨這些問題通常也已經局部化了,只需要在PCB或FPGA設計中進行很小的設計修改。

            步驟1: 評估設計參數

            那么,從哪里開始呢? 首先應當盡早制定I/O分配策略。 但沒有優化工具或完整的網表,完成這一任務可能很困難。

            首先,讓我們先回答幾個問題來確定PCB物理參數和限制:

            * PCB板有幾層、走線寬度以及過孔尺寸多大?

            * PCB參數對可使用的FPGA封裝類型(如BGA)有限制嗎?

            * PCB上有沒有FPGA必須使用的固定接口位置? 其它芯片、連接器或布局限制?

            * 哪些高速接口需要特別關注?

            能否將布局策略可視化,從而保證最短互連?

            你會發現畫一張PCB布局圖很有幫助。PCB布局圖上應當包括所有主要元器件以及關鍵接口和總線,從而可以幫助確定最佳的FPGA引腳分配。 請注意將元器件畫在PCB板的實際安裝面上。 標注出需要特別關注的接口,如高速總線和差分對(圖1)。

            下一步,檢查FPGA器件的布局來了解芯片上的物理資源所在。 列出設計中使用的不同電壓和時鐘,開始隔離設計需要的接口。 然后確定設計是否使用特殊的I/O接口資源,如千兆收發器(GT)、BUFR、IODELAY以及數字時鐘管理器。這些資源可能需要將有關的I/O引腳布署得盡量互相靠近。

            現在需要確定設計中使用的PowerPC、DSP48和RAM16等FPGA資源的位置。 將連接到I/O組的任何相關I/O盡量置于盡相關資源最近的地方。 然后看一下能否將某些I/O信號組合到接口,這對于引腳分配很有幫助。 最后,確定FPGA的配置模式。


          上一頁 1 2 3 4 下一頁

          關鍵詞: Xilinx FPGA I/O引腳

          評論


          相關推薦

          技術專區

          關閉
          看屁屁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); })();