国产精品久久久久aaaa_午夜精品成人一区二区视频_在线观看日韩_欧美日韩精品一区二区三区蜜桃_女人被狂躁后的视频免费_日本成人在线播放

首頁(yè) 新聞 > 科技 > 正文

FPGA攻略之Testbench篇

Testbench,就是測(cè)試平臺(tái)的意思,具體概念就多不介紹了,相信略懂FPGA的人都知道,編寫(xiě)Testbench的主要目的是為了對(duì)使用硬件描述語(yǔ)言(HDL)設(shè)計(jì)的電路進(jìn)行仿真驗(yàn)證,測(cè)試設(shè)計(jì)電路的功能、部分性能是否與預(yù)期的目標(biāo)相符。初學(xué)者往往把寫(xiě)RTL代碼當(dāng)成重點(diǎn),不愿寫(xiě)Testbench,包括小朱同學(xué)也是,僅僅使用QuartusII自帶的仿真產(chǎn)生幾個(gè)激勵(lì),然后觀察一下最后輸出的波形就完事了,甚至某些時(shí)候直接忽視仿真,拿單片機(jī)在線調(diào)試那一套來(lái)對(duì)付FPGA,直接把代碼下載到板子里看效果,若與預(yù)期不符,再修改代碼,再次下載到板子,如此反復(fù),直到某一天實(shí)在玩不下去了。

本文引用地址:http://www.eepw.com.cn/article/184677.htm

同志們,FPGA真不帶這么玩的!趕緊禁止自己使用QuartusII自帶的仿真,甭畫(huà)波形圖了,你畫(huà)成大師也沒(méi)用(也成不了大師,QuartusII只能做極初級(jí)的仿真)!如果你立志從事FPGA行業(yè),那么會(huì)寫(xiě)Testbench才你的敲門(mén)磚,而且別想著去公司寫(xiě)RTL代碼了,向毛主席保證,公司一定是讓你來(lái)寫(xiě)Testbench的。再趕緊把你的FPGA開(kāi)發(fā)板有多遠(yuǎn)扔多遠(yuǎn)(別丟,還是要用的),F(xiàn)PGA不是單片機(jī),學(xué)習(xí)FPGA并不那么需要開(kāi)發(fā)板。打個(gè)比方,學(xué)習(xí)FPGA是兩萬(wàn)五千里長(zhǎng)征,那么使用開(kāi)發(fā)板連三千里都占不到,遠(yuǎn)遠(yuǎn)不到。對(duì)于FPGA,仿真驗(yàn)證才是核心,這么講吧,驗(yàn)證占到整個(gè)設(shè)計(jì)工作的70%,前仿真、后仿真、功能仿真、時(shí)序仿真、行為級(jí)仿真、RTL級(jí)仿真、綜合后仿真、門(mén)級(jí)仿真、布局布線后仿真……好吧,別暈,本篇只講Testbench,Modelsim仿真咱們下篇再討論。

一個(gè)最基本的Testbench包含三個(gè)部分,信號(hào)定義、模塊接口和功能代碼。借用一下特權(quán)同學(xué)總結(jié)的編寫(xiě)Testbench的三個(gè)基本步驟:

1、對(duì)被測(cè)試設(shè)計(jì)的頂層接口進(jìn)行例化;  2、給被測(cè)試設(shè)計(jì)的輸入接口添加激勵(lì);  3、判斷被測(cè)試設(shè)計(jì)的輸出相應(yīng)是否滿足設(shè)計(jì)要求。

逐步解決編寫(xiě)Testbench的這三點(diǎn):

首先“對(duì)被測(cè)試設(shè)計(jì)的頂層接口進(jìn)行例化”,這一步相對(duì)比較簡(jiǎn)單,例化就是,但端口多時(shí)也夠喝一壺的,而且要分wire、reg,有時(shí)會(huì)弄錯(cuò),別難過(guò),其實(shí)可以偷個(gè)懶,通過(guò)Quartus II自動(dòng)生成一個(gè)Testbench的模板,選擇Processing -> Start -> Start Test Bench Template Writer,等待完成后打開(kāi)剛才生成的Testbench,默認(rèn)是保存在simulation\Modelsim文件夾下的.vt格式文件。這一步就不多講了,偷懶就挺好。

其次“給被測(cè)試設(shè)計(jì)的輸入接口添加激勵(lì)”,一般時(shí)序設(shè)計(jì)必然涉及到最基本的兩個(gè)信號(hào)——clk、rst_n(時(shí)鐘、復(fù)位),肯定有童鞋會(huì)講可以沒(méi)有rst_n,是可以沒(méi)有,但何必呢,讓代碼更健壯一點(diǎn)不很好嘛,別鉆牛角尖。下面攻克clk、rst_n的寫(xiě)法:

首先先講一下timescale,因?yàn)橄胍M(jìn)行仿真首先要規(guī)定時(shí)間單位,而且最好在Testbench里面統(tǒng)一規(guī)定時(shí)間單位,而不要在工程代碼里定義,因?yàn)椴煌哪K如果時(shí)間單位不同可能會(huì)為仿真帶來(lái)一些問(wèn)題,而timescale本身對(duì)綜合也就是實(shí)際電路沒(méi)有影響。 `timescale 1ns/ 1ps表示仿真的單位時(shí)間為1ns,精度為1ps。

clk大體上有三種寫(xiě)法 :

上述三種代碼的目的就是產(chǎn)生系統(tǒng)時(shí)鐘,給clk一個(gè)初值后,不斷重復(fù)執(zhí)行:每10ns翻轉(zhuǎn)一次clk,從而生成一個(gè)周期為20ns,頻率50MHz的方波信號(hào)。第一、二種基本類似,第三種比較簡(jiǎn)單,少了一個(gè)initial,放在了always里初始化。

三種方法都無(wú)一例外地給clk賦了初值,因?yàn)樾盘?hào)的缺省值為Z,如果不賦初值,則反相后還是Z,時(shí)鐘就一直處于高阻Z狀態(tài)。小朱同學(xué)一般選中第一種,看個(gè)人喜歡。

根據(jù)復(fù)位方式的不同,rst_n一般有兩種寫(xiě)法:

關(guān)鍵詞: FPGA Quartus Testbench 開(kāi)發(fā)板 異步復(fù)位

最近更新

關(guān)于本站 管理團(tuán)隊(duì) 版權(quán)申明 網(wǎng)站地圖 聯(lián)系合作 招聘信息

Copyright © 2005-2018 創(chuàng)投網(wǎng) - www.pdssy.com.cn All rights reserved
聯(lián)系我們:33 92 [email protected]
豫ICP備2020035879號(hào)-12

 

主站蜘蛛池模板: 新版天堂资源中文在线 | 亚洲综合色视频在线观看 | 国产黄色麻豆视频 | 1234成人网站 | 青娱乐中文字幕 | 中文字幕在线第一页 | 91久久青青草原免费 | 一区二区三区在线观看免费 | 欧美视频在线观看一区二区 | 精品久久香蕉国产线看观看亚洲 | 欧美精品一区二区免费 | 久久成人免费观看草草影院 | 国产情侣啪啪 | 国产黄色在线观看 | 一区二区三区四区高清视频 | 欧美性生活区 | 国产综合久久 | 电视剧知青1至45集免费观看 | 国产在线观看91一区二区三区 | 亚洲成人日韩 | 在线国产一区 | 日韩极品视频 | 亚洲欧美精品 | 一本色道久久88综合亚洲精品高清 | 五月天激情视频在线观看 | 狠狠综合久久综合鬼色 | av播放在线 | 欧美日韩精品久久久免费观看 | 亚洲色图国产 | 一级做a爱过程免费视频麻豆 | 亚洲国产综合人成综合网站00 | 久久精品国产久精国产 | 99在线精品视频 | 日韩午夜在线 | 国产萝控精品福利视频免费观看 | 欧美视频福利 | a三级毛片 | 欧美三区在线观看 | 操人视频免费 | 国产乱码精品一区二区三上 | 人人干免费 |