在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于Python軟硬件協(xié)同設(shè)計(jì)方法,仿真和校驗(yàn)的流程介紹

電子設(shè)計(jì) ? 作者:郭婷 ? 2018-11-23 09:26 ? 次閱讀

引言

現(xiàn)代系統(tǒng)設(shè)計(jì)許多都是由C/C++,Python等高級(jí)語(yǔ)言來(lái)完成,而且這些系統(tǒng)越來(lái)越復(fù)雜,涉及到的算法的運(yùn)算量也越來(lái)越大,許多算法需要用硬件實(shí)現(xiàn)來(lái)滿足算法的實(shí)時(shí)性要求.FPGA是一種可編程的邏輯器件,它具有便于修改,調(diào)試,并能并行地完成大量的運(yùn)算,從而提高算法的實(shí)時(shí)性,并且隨著硬件制造水平不斷地提高,F(xiàn)PGA的資源越來(lái)越大,工作頻率也越來(lái)越高,使得能在其上面完成的算法也越來(lái)越復(fù)雜.但是傳統(tǒng)的軟硬件分開(kāi)設(shè)計(jì)的方法由于軟硬件設(shè)計(jì)者采用不同的設(shè)計(jì)語(yǔ)言,存在軟硬件設(shè)計(jì)者之間難以溝通導(dǎo)致設(shè)計(jì)周期長(zhǎng)等問(wèn)題,這種設(shè)計(jì)方法已不能滿足快速地增長(zhǎng)的市場(chǎng)要求,如何將這些系統(tǒng)設(shè)計(jì)中的算法快速轉(zhuǎn)換為相應(yīng)的硬件來(lái)實(shí)現(xiàn),需要新的軟硬件協(xié)同設(shè)計(jì)方法.當(dāng)前基于C/C++的軟硬件協(xié)同設(shè)計(jì),有一個(gè)SystemC 標(biāo)準(zhǔn)化組織一直致力于這個(gè)工作,也有少量商業(yè)化工具例如Syn-opsys 公司Synphony C Compiler 和Calypto Design Sys-tems 公司的Catapult SL Synthesis 可以將C/C++算法轉(zhuǎn)換為相應(yīng)的硬件.Python是一種簡(jiǎn)單易學(xué)并且功能強(qiáng)大的編程語(yǔ)言,有許多算法是由Python來(lái)實(shí)現(xiàn),而且這些算法很多是免費(fèi).開(kāi)源的,和C/C++類似需要如何完成基于Python的軟硬件協(xié)同設(shè)計(jì).

1 基于Python 的軟硬件協(xié)同設(shè)計(jì)發(fā)展

由于Python的強(qiáng)大的軟硬件描述能力,近年來(lái)許多研究者在Python的軟硬件協(xié)同設(shè)計(jì)方面進(jìn)行了許多研究,其中Logaras E 提出了一種稱為SysPy(System Py-thon)可以使用Python 來(lái)描述硬件并將其自動(dòng)轉(zhuǎn)換為VHDL,Zhang mi采用PDSDL(Dynamic System Descrip-tion Language)來(lái)進(jìn)行系統(tǒng)建模和校驗(yàn)并可將系統(tǒng)轉(zhuǎn)換為Verilog的硬件描述,特別是Decaluwe J提出一種稱為MyHDL 的Python 擴(kuò)展包來(lái)進(jìn)行軟硬件協(xié)同設(shè)計(jì),Villar J I采用MyHDL 完成了一個(gè)接口設(shè)計(jì)實(shí)例.這些開(kāi)發(fā)工具各自具有自己的一些特點(diǎn),但是他們有一點(diǎn)是相同,就是采用Python來(lái)進(jìn)行軟硬件協(xié)同設(shè)計(jì).下面以MyHDL為例介紹基于Python的軟硬件協(xié)同設(shè)計(jì).

2 基于Python 的MyHDL 包簡(jiǎn)介

MyHDL采用Python擴(kuò)展包的形式使其能支持硬件設(shè)計(jì)和仿真并在仿真結(jié)果符合要求后可將軟件算法自動(dòng)轉(zhuǎn)換為相應(yīng)的采用Verilog 或VHDL 硬件描述,由于MyHDL包是基于Python的硬件擴(kuò)展,下面主要對(duì)MyH-DL硬件方面的一些主要特點(diǎn)做簡(jiǎn)要介紹.

2.1 數(shù)據(jù)類型

標(biāo)準(zhǔn)Python的int類型已經(jīng)具有許多硬件設(shè)計(jì)所需要特征,但是在硬件設(shè)計(jì)中由于包含許多位操作和處理,MyHDL設(shè)計(jì)了intbv類,提供索引和切片操作來(lái)支持位的操作和處理.

2.2 模塊,端口信號(hào)

在MyHDL采用函數(shù)來(lái)對(duì)硬件的模塊進(jìn)行建模,My-HDL也有信號(hào)對(duì)象,類似于VHDL語(yǔ)言的信號(hào),采用信號(hào)作為函數(shù)的參數(shù)來(lái)定義模塊的端口.

2.3 發(fā)生器

發(fā)生器是MyHDL 的一個(gè)關(guān)鍵概念,用來(lái)建立并發(fā)性模型,對(duì)應(yīng)于Verilog的always塊或者VHDL的進(jìn)程.

2.4 自動(dòng)轉(zhuǎn)換

在一定限制條件下,MyHDL使用toVerilog()或者toVHDL()函數(shù)將MyHDL設(shè)計(jì)自動(dòng)轉(zhuǎn)換為相應(yīng)的Veril-og或者VHDL代碼,如果符合MyHDL可綜合子集的要求,就可使用MyHDL完成可硬件綜和的代碼并在FPGA上實(shí)現(xiàn).

2.5 仿真

MyHDL通過(guò)Cosimulation對(duì)象使其能支持仿真,對(duì)于自動(dòng)轉(zhuǎn)換的Verilog 代碼或者VHDL 代碼,MyHDL 還可作為硬件校驗(yàn)語(yǔ)言來(lái)對(duì)轉(zhuǎn)換后的Verilog或VHDL進(jìn)行協(xié)同仿真和校驗(yàn).

3 采用MyHDL 的硬件設(shè)計(jì)優(yōu)點(diǎn)

Verilog和VHDL是當(dāng)前的主流硬件設(shè)計(jì)語(yǔ)言,但是使用基于Python的MyHDL作為硬件設(shè)計(jì)也具有許多優(yōu)點(diǎn)使得其可以作為設(shè)計(jì)者特別是硬件設(shè)計(jì)的初學(xué)者另外一種較好的選擇.

3.1 MyHDL使用成本低

MyHDL是免費(fèi)的并且開(kāi)源,在使用MyHDL設(shè)計(jì)的工具鏈中同樣可以使用大量的免費(fèi)工具比如ICArus,IVERILOG仿真工具,GTKWAVE查看仿真波形,從而可以減少設(shè)計(jì)成本.

3.2 在硬件設(shè)計(jì)中使用先進(jìn)的軟件開(kāi)發(fā)技術(shù)

由于Python本身是一種軟件開(kāi)發(fā)語(yǔ)言,現(xiàn)代軟件開(kāi)發(fā)的先進(jìn)方法比如快速應(yīng)用開(kāi)發(fā),測(cè)試驅(qū)動(dòng)開(kāi)發(fā)都在Python上得以體現(xiàn),由于硬件描述語(yǔ)言的硬件設(shè)計(jì)和軟件開(kāi)發(fā)具有一定的相似性,采用MyHDL可以使用最新的軟件開(kāi)發(fā)技術(shù).

3.3 軟硬件設(shè)計(jì)可以采用同樣的開(kāi)發(fā)環(huán)境

Python是算法實(shí)現(xiàn)的一種理想的語(yǔ)言,很多算法都由Python實(shí)現(xiàn),通常算法的軟硬件實(shí)現(xiàn)由不同工程師來(lái)實(shí)現(xiàn),軟件工程師使用Python,硬件工程師使用通用的硬件描述語(yǔ)言,例如Verilog或VHDL,硬件工程師和軟件工程師之間存在一條鴻溝,而采用MyHDL,就可以在同一個(gè)Python環(huán)境實(shí)現(xiàn)算法設(shè)計(jì),仿真和校驗(yàn).

3.4 其他優(yōu)點(diǎn)

對(duì)于沒(méi)有一定硬件設(shè)計(jì)經(jīng)驗(yàn)的設(shè)計(jì)者,通常采用Verilog 設(shè)計(jì)會(huì)混淆阻塞和非阻塞賦值,不清楚Verilog的符號(hào)運(yùn)算,采用VHDL進(jìn)行設(shè)計(jì)又不理解VHDL的信號(hào)概念,會(huì)覺(jué)得VHDL的類型和位寬轉(zhuǎn)換很繁瑣,但是如果采用基于Python 的MyHDL 包作為設(shè)計(jì)語(yǔ)言,這些都將不成為問(wèn)題.

4 基于Python 的軟硬件設(shè)計(jì)流程

在現(xiàn)代系統(tǒng)設(shè)計(jì)中,軟件工程師采用Python等高級(jí)語(yǔ)言,而硬件系統(tǒng)設(shè)計(jì)多采用Verilog,VHDL硬件描述語(yǔ)言,在如何將Python描述的軟件映射為相應(yīng)的硬件上,軟硬件開(kāi)發(fā)者之間的交流存在一道天然的鴻溝,而采用Py-thon來(lái)進(jìn)行軟硬件協(xié)同設(shè)計(jì)就可以解決這一個(gè)問(wèn)題,基于Python的軟硬件協(xié)同設(shè)計(jì)的流程如圖1所示.

基于Python軟硬件協(xié)同設(shè)計(jì)方法,仿真和校驗(yàn)的流程介紹

首先采用Python進(jìn)行系統(tǒng)設(shè)計(jì),然后根據(jù)系統(tǒng)性能要求進(jìn)行軟硬件劃分,對(duì)于系統(tǒng)性能要求比較高的部分采用Python的MyHDL擴(kuò)展包的形式來(lái)由硬件實(shí)現(xiàn),同時(shí)采用Python來(lái)編寫硬件測(cè)試平臺(tái).測(cè)試仿真如果不符合系統(tǒng)設(shè)計(jì)要求可以重新進(jìn)行軟硬件劃分,如果測(cè)試仿真結(jié)果不正確,可重新修改.仿真通過(guò)后可以用MyHDL擴(kuò)展包自動(dòng)將Python轉(zhuǎn)換為Verilog代碼,這時(shí)的Python測(cè)試平臺(tái)無(wú)需修改還可以與轉(zhuǎn)換后的Verilog代碼一起進(jìn)行混合仿真,如果仿真通過(guò)就可以進(jìn)行硬件的綜合,下載,測(cè)試階段,這與傳統(tǒng)的硬件設(shè)計(jì)過(guò)程相同.

5 結(jié)語(yǔ)

從上面分析可以看出基于Python的MyHDL既是一種軟硬件協(xié)同設(shè)計(jì)方法,同時(shí)其也是Python的擴(kuò)展包,使得整個(gè)開(kāi)發(fā)過(guò)程僅使用一種Python語(yǔ)言,并可以很方便地將一個(gè)軟件算法快速地轉(zhuǎn)換為其相應(yīng)的硬件實(shí)現(xiàn),從而完成一個(gè)軟硬件系統(tǒng)設(shè)計(jì).由于Python目前的可綜合子集的限制和其本身還處在發(fā)展階段,基于Python的軟硬件設(shè)計(jì)還主要用于系統(tǒng)的建模方面,將其用于芯片設(shè)計(jì)的應(yīng)用還不是很多,有研究者比較過(guò)MyHDL與傳統(tǒng)硬件設(shè)計(jì)語(yǔ)言的實(shí)現(xiàn),對(duì)于小規(guī)模的應(yīng)用優(yōu)勢(shì)不是很明顯.但是隨著現(xiàn)代系統(tǒng)的算法越來(lái)越復(fù)雜性,系統(tǒng)規(guī)模也不斷增大,相對(duì)于傳統(tǒng)的軟硬件設(shè)計(jì)方法采用Python來(lái)進(jìn)行軟硬件協(xié)同設(shè)計(jì)的優(yōu)勢(shì)就會(huì)體現(xiàn)出來(lái),系統(tǒng)設(shè)計(jì).仿真.校驗(yàn)的速度會(huì)大大提高,采用Python進(jìn)行系統(tǒng)設(shè)計(jì)的產(chǎn)品能更快地進(jìn)入市場(chǎng).隨著基于Python系統(tǒng)設(shè)計(jì)方法和工具的發(fā)展,基于Python的軟硬件協(xié)同設(shè)計(jì)方法將會(huì)有廣泛的應(yīng)用前景.

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 編程語(yǔ)言
    +關(guān)注

    關(guān)注

    10

    文章

    1951

    瀏覽量

    35023
  • C++
    C++
    +關(guān)注

    關(guān)注

    22

    文章

    2114

    瀏覽量

    73899
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4811

    瀏覽量

    85080
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    基于FPGA的軟硬件協(xié)同仿真加速技術(shù)

    在系統(tǒng)設(shè)計(jì)中,硬件復(fù)雜電路設(shè)計(jì)的調(diào)試與仿真工作對(duì)于設(shè)計(jì)者來(lái)說(shuō)十分困難。為了降低仿真復(fù)雜度,加快仿真速度,本文提出利用FPGA加速的思想,實(shí)現(xiàn)軟硬件
    發(fā)表于 03-25 11:52 ?5449次閱讀

    基于SoPC的狀態(tài)監(jiān)測(cè)裝置的嵌入式軟硬件協(xié)同設(shè)計(jì)

    工作。一般而言,還要經(jīng)過(guò)模塊的行為描述、對(duì)模塊的有效性檢查、軟硬件劃分、硬件綜合、軟件編譯、軟硬件集成,軟硬件協(xié)同
    發(fā)表于 01-22 16:41

    基于Altera FPGA的軟硬件協(xié)同仿真方法介紹

    摘要:簡(jiǎn)要介紹軟硬件協(xié)同仿真技術(shù),指出了在大規(guī)模FPGA開(kāi)發(fā)中軟硬件協(xié)同
    發(fā)表于 07-04 06:49

    如何去實(shí)現(xiàn)一種基于SoPC的軟硬件協(xié)同設(shè)計(jì)呢

    什么是軟硬件協(xié)同設(shè)計(jì)呢?片上可編程系統(tǒng)SoPC是什么?如何去實(shí)現(xiàn)一種基于SoPC的軟硬件協(xié)同設(shè)計(jì)呢?基于SoPC的軟硬件
    發(fā)表于 12-24 07:15

    基于EDA 的嵌入式系統(tǒng)軟硬件劃分方法

    基于EDA 的嵌入式系統(tǒng)軟硬件劃分方法Hardware/Software Partitioning Method Based on Estimation of Distribution 摘要:針對(duì)嵌入式系統(tǒng)軟硬件
    發(fā)表于 12-05 16:34 ?26次下載

    基于SOC的USB主設(shè)備的軟硬件協(xié)同驗(yàn)證

    基于SOC 的USB 主設(shè)備的軟硬件協(xié)同驗(yàn)證李棟1,李正衛(wèi)2(桂林電子科技大學(xué)通信與信息工程系,廣西 桂林 541004)摘 要:本文首先介紹了SOC 軟硬件
    發(fā)表于 12-14 11:31 ?15次下載

    基于軟硬件協(xié)同設(shè)計(jì)的低功耗生理信號(hào)處理ASIC設(shè)計(jì)

    摘 要 文主要介紹了一種采用軟硬件協(xié)同設(shè)計(jì)策略的用于生理信號(hào)處理的低功耗醫(yī)學(xué)集成芯片。軟硬件協(xié)同設(shè)計(jì)能達(dá)到性能和設(shè)計(jì)靈活性的最大化。系統(tǒng)
    發(fā)表于 06-19 10:29 ?24次下載

    面向HDTV應(yīng)用的音頻解碼軟硬件協(xié)同設(shè)計(jì)

    摘要:該文以Dolby實(shí)驗(yàn)室的音頗AC3算法為基礎(chǔ),研究了在RISC核Virgo上HDTV音頻解碼的軟硬件協(xié)同設(shè)計(jì)方法,提出了通過(guò)對(duì)程序關(guān)鍵子函數(shù)建模來(lái)實(shí)現(xiàn)軟硬件劃分的
    發(fā)表于 07-02 21:56 ?32次下載

    FPGA-SoPC軟硬件協(xié)同設(shè)計(jì)

    本內(nèi)容詳細(xì)介紹了FPGA-SoPC軟硬件協(xié)同設(shè)計(jì)
    發(fā)表于 05-09 15:59 ?41次下載
    FPGA-SoPC<b class='flag-5'>軟硬件</b><b class='flag-5'>協(xié)同</b>設(shè)計(jì)

    可測(cè)性DSP軟硬件協(xié)同仿真驗(yàn)證平臺(tái)設(shè)計(jì)

    針對(duì)數(shù)字信號(hào)處理器的不同仿真和驗(yàn)證要求,提出了一種可測(cè)性軟硬件協(xié)同仿真和驗(yàn)證平臺(tái)的設(shè)計(jì). 采用可配置IP 模塊和總線結(jié)構(gòu),實(shí)現(xiàn)了硬件平臺(tái)可配
    發(fā)表于 06-09 17:54 ?39次下載
    可測(cè)性DSP<b class='flag-5'>軟硬件</b><b class='flag-5'>協(xié)同</b><b class='flag-5'>仿真</b>驗(yàn)證平臺(tái)設(shè)計(jì)

    嵌入式軟硬件協(xié)同設(shè)計(jì)在氣象主采集器中研究

    本文介紹了嵌入式系統(tǒng)的現(xiàn)狀,分析了傳統(tǒng)嵌入式設(shè)計(jì)方法的不足和 軟硬件協(xié)同設(shè)計(jì) 方法的特點(diǎn)與優(yōu)越性,以軟硬
    發(fā)表于 08-04 17:50 ?33次下載
    嵌入式<b class='flag-5'>軟硬件</b><b class='flag-5'>協(xié)同</b>設(shè)計(jì)在氣象主采集器中研究

    利用FPGA軟硬件協(xié)同系統(tǒng)驗(yàn)證SoC系統(tǒng)的過(guò)程和方法

    設(shè)計(jì)了一種基于FPGA的驗(yàn)證平臺(tái)及有效的SoC驗(yàn)證方法介紹了此FPGA驗(yàn)證軟硬件平臺(tái)及軟硬件協(xié)同驗(yàn)證架構(gòu),討論和分析了利用FPGA
    發(fā)表于 11-17 03:06 ?4467次閱讀
    利用FPGA<b class='flag-5'>軟硬件</b><b class='flag-5'>協(xié)同</b>系統(tǒng)驗(yàn)證SoC系統(tǒng)的過(guò)程和<b class='flag-5'>方法</b>

    基于FPGA的軟硬件協(xié)同測(cè)試設(shè)計(jì)影響因素分析與設(shè)計(jì)實(shí)現(xiàn)

    軟硬件的開(kāi)發(fā)階段中,測(cè)試結(jié)果直接關(guān)系到這個(gè)軟硬件能否順利進(jìn)行調(diào)試應(yīng)用。其中,硬件的測(cè)試往往容易受外界因素的影響,如環(huán)境、計(jì)算機(jī)設(shè)備等,可以通過(guò)一些仿真軟件來(lái)避免外界環(huán)境的影響,但是其
    發(fā)表于 11-18 05:46 ?1976次閱讀

    軟硬件協(xié)同設(shè)計(jì)機(jī)遇與挑戰(zhàn)分析

    軟硬件協(xié)同設(shè)計(jì)是指對(duì)系統(tǒng)中的軟硬件部分使用統(tǒng)一的描述和工具進(jìn)行集成開(kāi)發(fā),可完成全系統(tǒng)的設(shè)計(jì)驗(yàn)證并跨越軟硬件界面進(jìn)行系統(tǒng)優(yōu)化,軟硬件
    發(fā)表于 11-25 03:45 ?763次閱讀

    軟硬件協(xié)同設(shè)計(jì)是系統(tǒng)芯片的基礎(chǔ)設(shè)計(jì)方法學(xué)

    軟硬件協(xié)同仿真驗(yàn)證是對(duì)軟硬件功能設(shè)計(jì)的正確性及性能進(jìn)行驗(yàn)證和評(píng)估。傳統(tǒng)設(shè)計(jì)中,硬件和軟件通常是分開(kāi)獨(dú)立開(kāi)發(fā)設(shè)計(jì)的,到系統(tǒng)設(shè)計(jì)后期才將
    的頭像 發(fā)表于 08-12 11:28 ?3516次閱讀
    主站蜘蛛池模板: 午夜亚洲精品 | 国产真实野战在线视频 | 一级欧美视频 | 国产在线麻豆自在拍91精品 | 国产午夜亚洲精品 | 亚洲一区二区三区播放在线 | 综合亚洲一区二区三区 | 天天做天天爱天天爽综合区 | 欧美最猛黑人xxxx黑人猛交黄 | 四虎影视网址 | 国产网红主播chinese | 操操片| 天天做天天添婷婷我也去 | 日本特级黄色录像 | 亚洲精品国产美女在线观看 | 俄罗斯aaaaa一级毛片 | 天天躁日日2018躁狠狠躁 | 国产一区二区三区欧美精品 | 龙口护士门91午夜国产在线 | 亚洲综合校园春色 | 四虎影院在线视频 | 啪啪网站色大全免费 | 亚洲资源在线播放 | 色片在线| 综合亚洲色图 | 综合伊人久久 | 91精品啪国产在线观看免费牛牛 | 日本在线不卡视频 | 亚洲一本视频 | 国产免费播放一区二区三区 | 久久精品国产乱子伦多人 | 天天摸日日 | 亚洲精品自拍区在线观看 | 俄罗斯一级成人毛片 | 很黄很黄的网站免费的 | 伊人天伊人天天网综合视频 | 久久精品女人天堂 | 欧美三级影院 | 欧美日韩一日韩一线不卡 | 月夜免费观看高清在线完整 | 永久免费人成网ww555kkk手机 |