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

          新聞中心

          EEPW首頁(yè) > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 針對(duì)未來(lái)十年 “All Programmable”器件的顛覆之作

          針對(duì)未來(lái)十年 “All Programmable”器件的顛覆之作

          —— 使設(shè)計(jì)者更好、更快地創(chuàng)建系統(tǒng)而且所用的芯片更少
          作者: 時(shí)間:2012-04-27 來(lái)源:電子產(chǎn)品世界 收藏

            流程自動(dòng)化,非流程強(qiáng)制化

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

            在 設(shè)計(jì)套件構(gòu)建過(guò)程中,工具團(tuán)隊(duì)遵循這樣的原則“自動(dòng)化設(shè)計(jì)方式,不強(qiáng)制設(shè)計(jì)方式”。Feist 說(shuō):“不管用戶用 C、C++、SystemC、VHDL、Verilog、System Verilog、MATLAB 還是 Simulink 開(kāi)始編程,也不管他們用的是我們的 IP 還是第三方的 IP,我們提供了一種實(shí)現(xiàn)所有流程自動(dòng)化,幫助客戶提高生產(chǎn)力的方法。我們還充分考慮到我們的用戶的各種技能水平和偏好,既能滿足需要全按鍵式流程的客戶的要求,也能滿足在設(shè)計(jì)流程的每一步都進(jìn)行分析的客戶的要求,甚至還能滿足那些認(rèn)為用 GUI 的是低手,喜歡用 TCL 以命令行或批處理模式完成全部設(shè)計(jì)流程的客戶的要求。用戶能夠根據(jù)自己的特定需求,選用套件功能。”

            為進(jìn)一步增強(qiáng)所有用戶的設(shè)計(jì)體驗(yàn), 設(shè)計(jì)套件中加入了某些奇妙的新功能,同時(shí)為深受客戶贊譽(yù)的 FPGA 編輯器增加了芯片編輯器功能。

            IP 封裝器、集成器和目錄

            的工具架構(gòu)團(tuán)隊(duì)把重點(diǎn)放在新套件專門的 IP 功能設(shè)計(jì)上,以便于 IP 的開(kāi)發(fā)、集成與存檔。為此,賽靈思開(kāi)發(fā)出了 IP 封裝器、IP 集成器和可擴(kuò)展 IP 目錄三種全新的 IP 功能。

            Feist 表示:“今天很難找到不采用IP 的 IC 設(shè)計(jì)。我們采用業(yè)界標(biāo)準(zhǔn),提供專門便于 IP 開(kāi)發(fā)、集成和存檔/維護(hù)的工具,這都有助于我們生態(tài)系統(tǒng)合作伙伴中的 IP 廠商和客戶快速構(gòu)建 IP,提高設(shè)計(jì)生產(chǎn)力。目前已有 20 多家廠商提供支持該最新套件的 IP。”

            采用 IP 封裝器,賽靈思的客戶、賽靈思公司自己的 IP 開(kāi)發(fā)人員和賽靈思生態(tài)環(huán)境合作伙伴可以在設(shè)計(jì)流程的任何階段將自己的部分設(shè)計(jì)或整個(gè)設(shè)計(jì)轉(zhuǎn)換為可重用的內(nèi)核,這里的設(shè)計(jì)可以是 RTL、網(wǎng)表、布局后的網(wǎng)表甚至是布局布線后的網(wǎng)表。IP 封裝器可以創(chuàng)建 IP 的 IP-XACT 描述,這樣用戶使用新型 IP 集成器就能方便地將 IP 集成到未來(lái)設(shè)計(jì)中。IP 封裝器在 XML 文件中設(shè)定了每個(gè) IP 的數(shù)據(jù)。Feist 說(shuō)一旦 IP 封裝完成,用 IP 集成器功能就可以將 IP 集成到設(shè)計(jì)的其余部分。

            Feist 說(shuō):“IP 集成器可以讓客戶在互聯(lián)層面而非引腳層面將 IP 集成到自己的設(shè)計(jì)中??梢詫?IP 逐個(gè)拖放到自己的設(shè)計(jì)圖(canvas)上,IP 集成器會(huì)自動(dòng)提前檢查對(duì)應(yīng)的接口是否兼容。如果兼容,就可以在內(nèi)核間劃一條線,然后集成器會(huì)自動(dòng)編寫連接所有引腳的具體 RTL。”

            Feist 表示:“這里的重點(diǎn)是可以取出已用 IP 集成器集成的四五個(gè)模塊的輸出,然后通過(guò)封裝器再封裝。這樣就成了一個(gè)其他人可以重新使用的 IP。這種 IP 不一定必須是 RTL,可以是布局后的網(wǎng)表,甚至可以是布局布線后的網(wǎng)表模塊。這樣可以進(jìn)一步節(jié)省集成和驗(yàn)證時(shí)間。”

            第三大功能是可擴(kuò)展 IP 目錄,它使用戶能夠用他們自己創(chuàng)建的 IP 以及賽靈思和第三方廠商許可的 IP 創(chuàng)建自己的標(biāo)準(zhǔn) IP 庫(kù)。賽靈思按照 IP-XACT 標(biāo)準(zhǔn)要求創(chuàng)建的該目錄能夠讓設(shè)計(jì)團(tuán)隊(duì)乃至企業(yè)更好的組織自己的 IP,供整個(gè)機(jī)構(gòu)共享使用。Feist 稱賽靈思系統(tǒng)生成器 (System Generator) 和 IP 集成器均已與 可擴(kuò)展 IP 目錄集成,故用戶可以輕松訪問(wèn)編目 IP 并將其集成到自己的設(shè)計(jì)項(xiàng)目中。

            Vivado 產(chǎn)品營(yíng)銷總監(jiān) Ramine Roane指出:“以前第三方 IP 廠商用 Zip 文件交付的IP格式各異,而現(xiàn)在他們交付的 IP,不僅格式統(tǒng)一,可立即使用,而且還與 Vivado 套件兼容。”

            Vivado HLS 把 ELS帶入 主流

            可能 Vivado 設(shè)計(jì)套件采用的眾多新技術(shù)中,最具有前瞻性的要數(shù)新的 Vivado HLS(高層次綜合)技術(shù),這是賽靈思 2010 年收購(gòu) AutoESL 后獲得的。在收購(gòu)這項(xiàng)業(yè)界最佳技術(shù)之前,賽靈思對(duì)商用 ESL 解決方案進(jìn)行了廣泛評(píng)估。市場(chǎng)調(diào)研公司 BDTI 的研究結(jié)果幫助賽靈思做出了收購(gòu)決策。

            Feist 表示:“Vivado HLS 全面覆蓋 C、C++、SystemC,能夠進(jìn)行浮點(diǎn)運(yùn)算和任意精度浮點(diǎn)運(yùn)算。這意味著只要用戶愿意,可以在算法開(kāi)發(fā)環(huán)境而不是典型的硬件開(kāi)發(fā)環(huán)境中使用該工具。這樣做的優(yōu)點(diǎn)在于在這個(gè)層面開(kāi)發(fā)的算法的驗(yàn)證速度比在 RTL 級(jí)有數(shù)量級(jí)的提高。這就是說(shuō),既可以讓算法提速,又可以探索算法的可行性,并且能夠在架構(gòu)級(jí)實(shí)現(xiàn)吞吐量、時(shí)延和功耗的權(quán)衡取舍。”

            設(shè)計(jì)人員使用 Vivado HLS 工具可以通過(guò)各種方式執(zhí)行各種功能。為了演示方便,F(xiàn)eist 講解了用戶如何通過(guò)一個(gè)通用的流程進(jìn)行 Vivado HLS 開(kāi)發(fā) IP 并將其集成到自己的設(shè)計(jì)當(dāng)中。



          關(guān)鍵詞: 賽靈思 器件 Vivado

          評(píng)論


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