色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

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

基于python的用于構(gòu)建仿真及測(cè)試用例的lib庫(kù)cocotb

OpenFPGA ? 來(lái)源:似猿非猿的FPGA ? 作者:似猿非猿的FPGA ? 2021-10-13 17:01 ? 次閱讀

對(duì)于從事ASIC行業(yè)及FPGA行業(yè)的小伙伴來(lái)說(shuō),仿真是一件必不可少的事情。或許有人是驗(yàn)證大拿,UVM高手,但相較于軟件豐富的驗(yàn)證框架,對(duì)于各種各樣的場(chǎng)景單純的SV構(gòu)建測(cè)試用例是否便捷值得推敲。

何為cocotb

cocotb is a coroutine based cosimulation library for writing VHDL and Verilog testbenches in Python.

21世紀(jì),python成了一門(mén)吃香的語(yǔ)言。cocotb是一套基于python的用于構(gòu)建仿真及測(cè)試用例的lib庫(kù),它的框架為:

可以看到,在cocotb的框架里,我們的待測(cè)試邏輯運(yùn)行在仿真器中(VCS、Verilator等),而我們的測(cè)試框架及測(cè)試用例均以python的形式構(gòu)建,雙方通過(guò)仿真器提供的各種標(biāo)準(zhǔn)接口進(jìn)行通信。及設(shè)計(jì)代碼為Verilog/VHDL/Systemverilog,而測(cè)試代碼為Python。

存在即合理,為什么這么搞?因?yàn)镻ython寫(xiě)起來(lái)簡(jiǎn)單唄!在能夠正常實(shí)現(xiàn)對(duì)DUT的接口驅(qū)動(dòng)的同時(shí)借助python豐富的lib庫(kù)能夠讓我們快速的構(gòu)建測(cè)試用例及參考模型。而借助軟件現(xiàn)成的測(cè)試框架能夠極大加速驗(yàn)證流程。想想單純的一個(gè)圖像處理的仿真用純Systemverilog的方式進(jìn)行驗(yàn)證在進(jìn)行測(cè)試數(shù)據(jù)生成及最后結(jié)果對(duì)比要多少腳本……

cocotb安裝

按照cocotb手冊(cè)給出的安裝流程,在CentOS里安裝步驟為:
#Preparesudo yum install make gcc gcc-c++ libstdc++-devel python3 python3-devel python3-pip#install cocotbpip install cocotb##pip may belong to a different Python installation# to what you expect. Use pip -V to check. If this #prints “(python 2.7)”, use pip3 or python3 -m pip #inplaceofpipinthecommandshown.
在安裝過(guò)程中,有遇到“Python.h: No such file or directory”,解決辦法為:
1.可以先查看一下含python-devel的包yumsearchpython|greppython-devel2.64位安裝python-devel.x86_64,32位安裝python-devel.i686,我這里安裝:sudoyuminstallpython-devel.x86_643. 進(jìn)入/usr/include/python2.7看一下現(xiàn)在有沒(méi)有Python.h,版本不同目錄名不同,我這里是2.7版本。其實(shí)也可以看到很多.h文件,python需要庫(kù)或頭文件都在這個(gè)地方。
安裝后可以查看到:
$cocotb-config -v1.4.1.dev0
對(duì)于沒(méi)有VCS等收費(fèi)EDA license的小伙伴建議安裝Verilator:
sudo apt-get install git make autoconf g++ flex bison -y  # First time prerequisitesgit clone http://git.veripool.org/git/verilator   # Only first timeunsetenv VERILATOR_ROOT  # For csh; ignore error if on bashunset VERILATOR_ROOT  # For bashcdverilatorautoconf        # Create ./configure script./configuremake -j$(nproc)sudomakeinstall

example

在cocotb中給出的example中,endian_swapper例子的測(cè)試框架為:

e07e8c38-2a05-11ec-82a8-dac502259ad0.png

測(cè)試框架和我們?cè)谄匠5臏y(cè)試框架行為基本相同,不同是cocotb為Driver、Monitor、Scoreboard等都提供了基礎(chǔ)類(lèi)庫(kù)供調(diào)用,對(duì)于搭建仿真平臺(tái)應(yīng)該有較好的幫助。而cocotb中提供的TestFactory,能夠方便的進(jìn)行測(cè)試用例的生成:
factory = TestFactory(run_test)factory.add_option("data_in",                 [random_packet_sizes])factory.add_option("config_coroutine",        [None, randomly_switch_config])factory.add_option("idle_inserter",           [None, wave, intermittent_single_cycles, random_50_percent])factory.add_option("backpressure_inserter",   [None, wave, intermittent_single_cycles, random_50_percent])factory.generate_tests()
這里根據(jù)輸入的參數(shù),factory會(huì)生成32個(gè)testcase用于測(cè)試,感覺(jué)還是蠻高效的。在仿真完成后,能夠自動(dòng)匯總測(cè)試結(jié)果:

寫(xiě)在最后

之所以探索下cocotb,主要原因是雖然SpinalHDL測(cè)試框架和cocotb差不多,但目前SpinalHDL尚未集成對(duì)VCS仿真器的集成(而我又沒(méi)打算自己集成進(jìn)去)。而在做FPGA設(shè)計(jì)時(shí),若代碼里集成了Xilinx/Altera的IP,那么在SpinalHDL的框架里就沒(méi)辦法進(jìn)行仿真了,而cocotb則是一個(gè)不錯(cuò)的選擇(若可以選,我仍選SpinalHDL,設(shè)計(jì)仿真一條龍,當(dāng)然現(xiàn)在也可以,對(duì)于Mem、FIFO等常用IP SpinalHDL還是有提供的,或者我們自己按需定制實(shí)現(xiàn)IP也可以的,SpinalHDL寫(xiě)IP簡(jiǎn)直不要太爽)。

責(zé)任編輯:haq
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(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)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1630

    文章

    21796

    瀏覽量

    605257
  • 軟件
    +關(guān)注

    關(guān)注

    69

    文章

    5007

    瀏覽量

    87951

原文標(biāo)題:cocotb初探

文章出處:【微信號(hào):Open_FPGA,微信公眾號(hào):OpenFPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    用于MySQL和MariaDB的Python連接器:可靠的MySQL數(shù)據(jù)連接器和數(shù)據(jù)庫(kù)

    用于 MySQL 和 MariaDB 的 Python 連接器 Python Connector for MySQL 是一種可靠的連接解決方案,用于
    的頭像 發(fā)表于 01-17 12:18 ?103次閱讀
    適<b class='flag-5'>用于</b>MySQL和MariaDB的<b class='flag-5'>Python</b>連接器:可靠的MySQL數(shù)據(jù)連接器和數(shù)據(jù)<b class='flag-5'>庫(kù)</b>

    用于Oracle的Python連接器:可訪問(wèn)托管以及非托管的數(shù)據(jù)庫(kù)

    用于 Oracle 的 Python 連接器 適用于 Oracle 的 Python 連接器是一種可靠的連接解決方案,用于
    的頭像 發(fā)表于 01-14 10:30 ?94次閱讀

    是德科技助力三星電子驗(yàn)證FiRa 2.0安全測(cè)距測(cè)試用

    是德科技(Keysight Technologies,Inc.)成功助力三星電子,在其Exynos Connect U100芯片組上驗(yàn)證了FiRa 2.0安全測(cè)試用。此次驗(yàn)證得益于是德科技提供的超寬帶 (UWB)測(cè)試解決方案,
    的頭像 發(fā)表于 11-18 10:08 ?228次閱讀

    如何使用Python構(gòu)建LSTM神經(jīng)網(wǎng)絡(luò)模型

    構(gòu)建一個(gè)LSTM(長(zhǎng)短期記憶)神經(jīng)網(wǎng)絡(luò)模型是一個(gè)涉及多個(gè)步驟的過(guò)程。以下是使用Python和Keras庫(kù)構(gòu)建LSTM模型的指南。 1. 安裝必要的庫(kù)
    的頭像 發(fā)表于 11-13 10:10 ?541次閱讀

    端到端測(cè)試用怎么寫(xiě)

    編寫(xiě)端到端測(cè)試用是確保軟件系統(tǒng)從頭到尾能夠正常工作的關(guān)鍵步驟。以下是一個(gè)詳細(xì)的指南,介紹如何編寫(xiě)端到端測(cè)試用: 一、理解端到端測(cè)試 端到
    的頭像 發(fā)表于 09-20 10:29 ?541次閱讀

    是德科技獲得5G NR FR1 1024-QAM 解調(diào)測(cè)試用的認(rèn)證

    是德科技(Keysight Technologies,Inc.)日前宣布獲得了基于3GPP TS 38.521-4測(cè)試規(guī)范的 5G NR FR1 1024-QAM 解調(diào)測(cè)試用的認(rèn)證。這些測(cè)試
    的頭像 發(fā)表于 07-31 16:46 ?978次閱讀

    鑒源實(shí)驗(yàn)室·ISO 26262中測(cè)試用的得出方法-等價(jià)類(lèi)的生成和分析

    標(biāo)準(zhǔn)規(guī)范中給出了單元、集成、系統(tǒng)測(cè)試各階段的建議測(cè)試使用方法,設(shè)計(jì)生成測(cè)試用的建議方法包括需求分析、等價(jià)類(lèi)的生成和分析、邊界值分析、基于已有經(jīng)驗(yàn)和知識(shí)的錯(cuò)誤推測(cè)等等,從本篇開(kāi)始我們
    的頭像 發(fā)表于 07-30 15:37 ?576次閱讀
    鑒源實(shí)驗(yàn)室·ISO 26262中<b class='flag-5'>測(cè)試用</b><b class='flag-5'>例</b>的得出方法-等價(jià)類(lèi)的生成和分析

    是德科技獲得窄帶非地面網(wǎng)絡(luò)標(biāo)準(zhǔn)的新測(cè)試用驗(yàn)證

    是德科技(Keysight Technologies,Inc.)日前宣布,該公司針對(duì)3GPP Rel-17標(biāo)準(zhǔn)中關(guān)于NB-IoT NTN技術(shù)的新一致性測(cè)試用獲得驗(yàn)證通過(guò)。這些測(cè)試用
    的頭像 發(fā)表于 07-26 14:13 ?750次閱讀

    python寫(xiě)驗(yàn)證環(huán)境cocotb

    本文介紹了cocotb的安裝、python tb文件的寫(xiě)法、用xrun仿真cocotb的腳本等,我們來(lái)看看體驗(yàn)如何。
    的頭像 發(fā)表于 07-24 09:38 ?605次閱讀
    用<b class='flag-5'>python</b>寫(xiě)驗(yàn)證環(huán)境<b class='flag-5'>cocotb</b>

    鴻蒙語(yǔ)言基礎(chǔ)類(lèi)庫(kù):ohos.application.testRunner TestRunner 測(cè)試

    TestRunner模塊提供了框架測(cè)試的能力。包括準(zhǔn)備單元測(cè)試環(huán)境、運(yùn)行測(cè)試用
    的頭像 發(fā)表于 07-12 09:32 ?338次閱讀

    LitePoint與三星電子合作支持FiRa 2.0物理層安全測(cè)距測(cè)試用

    先進(jìn)無(wú)線測(cè)試解決方案提供商LitePoint與三星電子宣布緊密合作,支持FiRa 2.0物理層(PHY)一致性測(cè)試規(guī)范內(nèi)定義的新安全測(cè)試用
    的頭像 發(fā)表于 05-16 11:26 ?614次閱讀

    RA2在e2 studio環(huán)境生成LIB庫(kù)操作

    RA2在e2 studio環(huán)境生成LIB庫(kù)操作
    的頭像 發(fā)表于 05-15 08:06 ?576次閱讀
    RA2在e2 studio環(huán)境生成<b class='flag-5'>LIB</b><b class='flag-5'>庫(kù)</b>操作

    DEKRA被CSA指定為Zigbee統(tǒng)一測(cè)試工具開(kāi)發(fā)和優(yōu)化新功能和測(cè)試用

    DEKRA德凱被CSA聯(lián)盟(Connectivity Standards Alliance,CSA)指定負(fù)責(zé)為Zigbee統(tǒng)一測(cè)試工具(Zigbee Unified Test Harness,ZUTH)開(kāi)發(fā)和優(yōu)化新功能和測(cè)試用
    的頭像 發(fā)表于 04-09 14:10 ?562次閱讀

    PTCRB的測(cè)試用類(lèi)認(rèn)證等級(jí)分類(lèi)介紹

    PTCRB的測(cè)試用類(lèi)認(rèn)證等級(jí)CategoryA/B/EA類(lèi)項(xiàng):測(cè)試用在商用系統(tǒng)上經(jīng)過(guò)完全驗(yàn)證;必測(cè)項(xiàng)且需要結(jié)果為PASSB類(lèi)項(xiàng):測(cè)試用
    的頭像 發(fā)表于 03-14 16:46 ?436次閱讀
    PTCRB的<b class='flag-5'>測(cè)試用</b>類(lèi)認(rèn)證等級(jí)分類(lèi)介紹

    是德科技首批3GPP Release 16 16/32測(cè)試用獲得批準(zhǔn)

    本次驗(yàn)證涵蓋單個(gè)和多個(gè)預(yù)編碼矩陣指示符測(cè)試用,主要面向在頻分雙工和時(shí)分雙工頻段上運(yùn)行的 16/32 通道發(fā)射機(jī)
    的頭像 發(fā)表于 02-21 14:14 ?461次閱讀
    主站蜘蛛池模板: 高清国产免费观看视频在线 | 无套暴躁白丝秘书 | 儿媳妇完整版视频播放免费观看 | 你是淫荡的我的女王 | 久久久国产精品免费A片蜜臀 | 成年女人色毛片免费 | 亚洲精品无码国产爽快A片百度 | 久久伊人精品青青草原2021 | 国产亚洲精品看片在线观看 | 第一次玩老妇真实经历 | 国产日韩欧美三级 | 精品一区二区免费视频蜜桃网 | 极品少妇粉嫩小泬啪啪AV | 久久女婷五月综合色啪 | 久久精品AV麻豆 | 任你躁精品一区二区三区 | 亚洲精品无码成人AAA片 | 先锋资源av | 天美传媒 免费观看 | 中文字幕精品无码一区二区 | a视频在线观看免费 | 蜜桃狠狠色伊人亚洲综合网站 | 美女张开腿让男人桶爽无弹窗 | 亚洲欧洲一级 | 特级淫片大乳女子高清视频 | 欧美日韩中文在线字幕视频 | 久久精品免费看网站 | 91久久偷偷看嫩草影院无费 | 年轻老师毛茸茸自由性 | 日韩精品亚洲专区在线影院 | 5566av资源| 免费观看视频成人国产 | 欧美巨大xxxx做受高清 | 看全色黄大色大片免费久黄久 | 在线天天看片视频免费观看 | 曰本熟妇乱妇色A片在线 | 无敌在线视频观看免费 | 免费在线观看黄色网址 | 亚洲欧美一区二区三区九九九 | 久久亚洲欧美国产综合 | 久久热在线视频精品1 |