日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

System Verilog学习小结

發(fā)布時間:2023/12/19 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 System Verilog学习小结 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

System Verilog課程小結

第一周

問題1:設計人員和驗證人員他們的協作關系體現在哪些地方?

1.設計人員和驗證人員都需要圍繞功能描述文檔開展工作
2.設計只有經過充分量化驗證,才有信心去流片
3.驗證人員需要懂設計才能很好地向設計人員反饋設計漏洞
4.設計初步實現后即需要驗證工作的加入
5.在系統由低向高的集成過程中,驗證與設計需在每一層展開工作,確保每一個階段的充分性

問題2:為什么芯片驗證的重要性目前越來越高?

答:早期的芯片開發(fā)工作由于晶體管數目少,電路規(guī)模也小,因而搭設電路時的難度和精度不是很高,且所需的成本以及糾錯能力要求不是很高。隨著現代集成電路設計技術的不斷推進,尤其到了7納米5納米這種關鍵技術節(jié)點,電路的規(guī)模和復雜程度空前,且流片失敗的代價非常高昂,這時在完整的產品出庫之前保證它的質量精度就顯得額外重要。而芯片驗證的工作目標即在于此。所以芯片驗證的重要性目前越來越高了。

問題3:在一個完成的驗證周期中,有哪些工作需要完成?
1.完成模塊功能描述;2.創(chuàng)建驗證計劃;3.開發(fā)驗證的環(huán)境;4.調試環(huán)境和HDL文件;
5.進行遞歸測試;6.進行硅后系統測試;7.進行逃逸分析。


第二周

問題1:四值邏輯的數據類型應該在哪些地方聲明,例如硬件部分,還是軟件部分,或者在其它結構中?為什么需要這么做?

四值邏輯的數據類型一般在描述硬件部分的代碼中聲明,用于描述邏輯電路的行為和狀態(tài)。
四值邏輯有0 1 X Z四種狀態(tài),相比二值邏輯能更好的模擬實際電路的狀態(tài),使仿真結果更加接近實際的電路綜合結果。

問題2:在處理枚舉類型變量和整形變量的相互賦值情況中,應該注意哪些容易出錯的地方?在從整形到枚舉類型轉換的過程中,有哪些方法?

整形變量不能直接賦值給枚舉類型變量,需先將整形變量轉為枚舉類型,而且注意整形變量的值不應超出枚舉類型變量的范圍值。
方法:‘利用()或者$cast(T,S)。

問題3:在狀態(tài)機或者組合電路中的case語句中的default分支或者if-else中的else分支語句,有時會把變量賦值為‘x’,這實際上只會影響仿真,但對綜合電路不產生影響,試問這么做是為什么?不影響電路綜合可能是由于什么原因?

添加default以及else語句是為了避免在硬件電路中綜合出鎖存器,這樣可以避免浪費更多資源還有一些靜態(tài)時序錯誤。不影響電路綜合的原因可能是在條件描述完備時不會出現其他情況,且在實際的電路中并不存在x信號。


第三周

問題1:模塊和接口之間的相近的地方有哪些?又有哪些差別?
相近:定義形式上相似,例化方式相同,都可以聲明變量和線網類型。
區(qū)別:模塊可以例化模塊和接口,但接口只能例化接口;模塊具有各種功能,接口只負責連線的分配;接口中的變量或者線網類型可以使用modport約束方向。

問題2:結構體和接口之間的聯系和差別有哪些地方?
結構體和接口中都可以包含許多例如線網變量等諸多信號,這些信號用在兩個模塊的連接時,結構體中并不能規(guī)定這些信號的方向,而在接口中,可以利用modport約束信號的方向,可降低模塊連接錯誤。接口能夠整合多個信號變成單一端口并應用于多個模塊,有利于設計復用。

問題3:在頂層連接DUT,interface,TB需要的步驟:
1.例化interface;2.例化DUT和TB等各個實例;3.聲明所需變量;4.設計端口的映射連接關系


第四周

問題1:激勵器(stimulator)對于它所生成的激勵,有什么辦法將其所有激勵數據保存下來?

問題2:對于實驗中的DUT設計,驗證環(huán)境組件checker比較器數據正確的邏輯是什么?如何利用monitor_in(監(jiān)測輸入接口)和monitor_out(監(jiān)測輸出接口)采取到的數據呢?

問題3:為什么大多數的功能都應該在模塊級驗證完成呢?

問題4:function和task的比較?

問題5:參數方向有哪些?差別在哪里?

1.可以通過接口緩存保存,用于后續(xù)查看使用,如monitor的采樣功能,此外還可以存放在monitor或checker內部,而后通過monitor與checker之間的通信實現數據傳輸。
2.用compare函數對比較payload[]隊列(用來參考的數據)和pkt2cmppayload[]隊列(用來參考的數據)和pkt2cmp_payload[]pkt2cmpp?ayload[]隊列取樣的數據)中存儲的數據來驗證接收到的payload是否正確。
將monitor采集到的數據裝入數據對象trans,通過定義方法mon_trans()和put_trans()監(jiān)視和傳輸有效數據,并在checker中使用。
3.模塊具有完整的功能,符合灰盒驗證思路。若對多模塊系統作為整體進行驗證,會有以下問題
a. 會有錯誤定位,在內部的定位需要連接monitor
b. 整體工作量并沒有減少
c. 內部模塊難以充分激勵
4.function內不消耗仿真時間,task可能消耗仿真時間。即function只能用于與純粹的數字或邏輯運算,而task則可能會被運用于需要耗時的信號采集或驅動場景。
function不能調用task,task可以調用function。
function可以有單一的返回值也可以沒有返回值。
有返回值的function可以作為表達式中的操作數。
5.input是從外部復制傳入的形式參數,output是由被調用方法產生并復制傳遞給外部的形式參數,inout表示的是進入方法和退出方法時分別被復制兩次,ref類似軟件中的指針,在調用方式時不會有任何復制行為,而是直接引用或修改外部傳入的數據對象。
inout和ref類型均可使得形式參數在方法中被調用,并且將輸出給外部,不同的是,inout只有在方法結束之后才傳遞到外部,而ref可以在方法執(zhí)行過程中直接修改數據對象無須等到方法執(zhí)行結束。


第五周

問題1:鏈表和SV中的哪些數組類型(定長數組、動態(tài)數組、隊列、關聯數組)相似,相似的特性有哪些?

鏈表與SV中的隊列類似。
實際上,SV中的隊列是一種結合了鏈表和數組優(yōu)點的數據類型,SV中的隊列既可以像數組一樣通過索引實現對任意元素的訪問,又可以像鏈表一樣在任意位置插入或刪除元素。
但本質上,SV中的隊列中的元素是連續(xù)存放的(基于數組實現),所以在隊列的頭或者尾存取元素很快,而如果需要在隊列中間插入或者刪減元素,則需要額外的時間進行數據搬移。


第六周

問題1:類和結構體的聯系和差別有哪些?

聯系:類和結構體都可以封裝成員變量
差別:類還可以封裝成員方法,類需要使用new()來創(chuàng)建對象

問題2:類和模塊的聯系和差別有哪些?
聯系:
1.類和模塊內都可以包含方法和數據變量。
2.類和模塊都可以被例化調用。
區(qū)別:
1.類中不可以有過程塊語句;2.類中的成員變量和方法默認是動態(tài)的,而模塊默認是靜態(tài)的;3.類聲明后必須創(chuàng)建(new)才能夠使用,而模塊聲明/例化后就可以使用;4.類可以進行賦值以及拷貝,模塊不行;5.子類可以繼承父類,并且可以擴展,模塊不行。

問題3:為什么類的靜態(tài)方法不能訪問類的非靜態(tài)成員變量?

靜態(tài)方法是屬于類的,在類加載的時候就會分配內存,可以通過類名直接訪問。非靜態(tài)成員變量屬于實例對象,只有在對象實例化之后才存在,然后通過類的對象去訪問。
類的非靜態(tài)成員存在前類的靜態(tài)方法已經存在了,無法用靜態(tài)方法去訪問一個不存在的非靜態(tài)成員。

問題4:如果有同名的模塊,那么在編譯過程中應該怎么解決“同名”問題?

Class的對象中允許同名成員出現,因為在調用構建函數時會使用新的空間,就算是復制也是新建對象后Copy,而使用時則需要注意索引的問題。
①this關鍵字可明確索引當前所在對象的成員,但是僅限非靜態(tài)成員,約束,覆蓋組使用。正常索引原則為由近到遠,即會索引最近的同名成員(方法成員),加入this后會變成指向類成員。
②super關鍵字可訪問當前對象其父類成員。
③local、protected關鍵字可以保護成員,分別只能由本身、本身及其子類訪問,限制了程序中的索引。


第七周

問題1:隨機測試相比于定向測試,就你目前的認識,你認為有哪些優(yōu)缺點?

優(yōu)點:對于較大規(guī)模的設計,隨機測試相比定向測試可以產生更完備的測試向量,測試的覆蓋范圍更大,能夠找出預料不到的漏洞。
缺點:隨機測試的環(huán)境復雜度更高,帶來了更高的封裝要求,同時建立隨機測試環(huán)境周期也更長。


第八周

問題1:我們在使用信箱mailbox時,如何可以限定其容量為8,并且只能存放string類型呢?那么,是否類似的方法也可以限定一個存放字符串的隊列其最大容量為8呢?

可以采用typedef mailbox #(string)string_mailbox;string_mailbox sm = new(8);
不能用類似的方法限定一個存放字符串的隊列的最大容量,因為隊列空間是動態(tài)的,自動分配的。

問題2:用bit key=0來實現的類似旗語的功能,來保護對共享資源的訪問,是否有不安全的地方?

在旗語進程和鑰匙數目少的情況下可使用,但存在明顯安全隱患。該操作用數字表示key的個數而非對key進行實例化,鑰匙不具有獨立性,僅僅是強制改變鑰匙數量,從而無法實現阻塞式和非阻塞式操作,同時也無法保證程序中鑰匙的總數是合法值。


第九周

問題1:對于目前的DUT,要完成對它的功能測試,從接口時序、路由功能來看,需要考慮哪些功能和對應的測試場景?

需要考慮的功能:1.各個輸入端能否正確發(fā)送到任意輸出端;2.每個輸入端是否互不干擾;3.輸出端是否支持多個不同源的包
需要考慮的測試場景:1.單通道輸入,單通道輸出;2.多通道輸入,多通道輸出;3.多通道輸入,單通道輸出;4.單通道輸入,多通道輸出

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的System Verilog学习小结的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 久久久久久麻豆 | 欧美日韩 一区二区三区 | 性猛交ⅹxxx富婆视频 | 奇米影视盒| 波多野结衣久久久久 | 一区二区三区毛片 | 午夜少妇影院 | 国产激情无套内精对白视频 | 成人免费播放视频 | 成人黄色小说视频 | 国产激情免费 | 成人午夜影院在线观看 | 欧美成人午夜视频 | 一区二区三区在线观看av | 欧美在线视频一区 | 国产女优在线播放 | www.蜜臀 | 一级片一区 | 亚洲人视频在线观看 | 亚洲精品6 | 午夜黄色小视频 | 久草视频在线资源 | 国产毛片一区二区 | 6—12呦国产精品 | 特级毛片av | 91挑色| av中文字幕第一页 | 91精选 | 奇米久久 | 手机看片日韩国产 | 中文字幕久久网 | 欧美区国产区 | 国产高清视频 | 人人爱人人插 | 国产一区二区三区在线 | 超碰女| 久久精品视频在线 | 在线免费观看你懂的 | 国产女18毛片多18精品 | 色姑娘久 | 久久免费视频99 | 国产精品第一页在线观看 | av网站免费播放 | 久久精品国产亚洲AV黑人 | 爱爱一级 | 久草综合在线 | 亚洲免费观看高清完整版在线 | 亚洲精品www久久久 一级aaa毛片 | hd极品free性xxx护士 | 国产女同91疯狂高潮互磨 | av手机在线看 | 成人伊人网站 | 婷婷色在线观看 | 福利视频h | 深夜福利视频在线 | 诱惑av | 夜夜爽爽| 在线v| 无码视频一区二区三区 | 日本免费在线观看视频 | 亚洲乱码一区二区 | 日韩在线观看精品 | 亚洲乱码国产乱码精品精大量 | 成人午夜影视在线观看 | 色一情一区二 | 美女131爽爽爽 | 国产精品99无码一区二区视频 | 蝌蚪网在线视频 | 高清不卡一区二区三区 | 你懂的网址在线观看 | 日本一区二区三区视频在线观看 | 亚洲精品天堂在线观看 | v8888av | 国产1页 | 中国人与拘一级毛片 | 国产又粗又猛又黄又爽无遮挡 | 日韩一级淫片 | 成人一区二区三区在线观看 | 久久国产麻豆 | 毛片黄色片 | 成年人在线免费观看网站 | 国产精品18久久久久久vr下载 | 欧美孕交视频 | 在线免费观看日韩 | 中国免费看的片 | 五月丁香久久婷婷 | 亚洲最大福利网站 | 午夜电影一区 | 免费看a网站| 日本一区二区三区免费看 | 午夜精品视频在线 | 成人aaaaa| 欧美二区视频 | 色黄大色黄女片免费中国 | 亚洲福利在线视频 | 91片黄在线观 | 91人人干| 日本老小玩hd老少配 | 欧美两根一起进3p做受视频 |