999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于OVM的網絡協議處理芯片驗證平臺的設計

2014-04-12 00:00:00雷英王海濤
現代電子技術 2014年1期

摘 要: 針對一款網絡協議處理芯片,為了保證其設計的正確性,提升驗證效率,基于OVM架構,通過SystemVerilog語言搭建了具有受約束的隨機激勵生成、錯誤注入、覆蓋率收集、正確性自檢查等功能的驗證平臺。通過該驗證平臺對芯片進行了全方位的高效驗證,實現了一次流片成功。基于OVM的驗證平臺具有良好的可重用性和可擴展性,相對于傳統的編寫定向測試激勵的方法,在驗證的高效性、完備性上具有顯著的優勢。

關鍵詞: OVM; SystemVerilog語言; 網絡協議處理芯片; 隨機激勵; 驗證平臺

中圖分類號: TN47?34; TN492 文獻標識碼: A 文章編號: 1004?373X(2014)01?0137?04

0 引 言

隨著集成電路設計技術發展和設計規模的不斷膨脹,對設計正確性的驗證所耗費的時間越來越長。驗證工作大約占據整個項目周期70%左右的時間[1]。驗證工作全面與否和效率的高低直接關系到集成電路產品設計的成敗和上市的時間。

傳統的通過Verilog語言撰寫定向測試激勵的方式只能適應規模較小的設計,對于超大規模的集成電路的正確性驗證則難以勝任。SystemVerilog語言是近幾年發展起來的、并在大規模集成電路的驗證工作上迅速得到廣泛應用的、一門集設計與驗證為一體的硬件驗證語言,它引入面向對象編程的思想,并且支持覆蓋率收集、受約束的隨機化等對驗證來講非常重要的特性。基于SystemVerilog語言,可以構建由覆蓋率驅動的并且受約束的隨機激勵驗證平臺[2?3]。

隨機激勵對于測試復雜設計十分關鍵。定向測試可以找出設計中預期的漏洞,而隨機測試則能夠找出預料不到的漏洞。搭建隨機激勵驗證平臺花費的時間很長,但其回報卻很高。每個隨機測試都可以共享這個通用的驗證平臺,而不像每個定向測試都要從零開始編寫。受約束的隨機激勵驗證平臺找起漏洞來會比定向測試快很多。

OVM是Cadence和Mentor兩家公司聯合推出的仿真驗證方法學,它是業界第一個開源的仿真驗證資源庫,它為驗證工程師提供了開源的基類設計代碼,可以用于構建可復用的驗證環境,并且支持事務級傳輸模型的接口通信[4]。

本文基于OVM架構,通過SystemVerilog語言,給出了一款網絡協議處理芯片驗證平臺的設計。

1 OVM簡介

OVM驗證平臺由可重用的稱之為OVM驗證組件(OVCs)的驗證環境構成。OVC可以是針對接口協議、子模塊或者完整的系統而構建的驗證環境。每個OVC遵循相同的結構,可以對具體的協議或設計執行仿真、檢查和覆蓋率收集。OVC被用于驗證待測設計(DUT)的正確性。OVC可以加速DUT驗證平臺的創建[5]。

典型的OVC環境如圖1所示。

圖1 OVC環境示意圖

一個完整的OVC環境由Data Item、Driver、Sequencer、Monitor、Agent、Environment組成,詳細描述見參考文獻[5]。

2 驗證平臺的設計實現

2.1 驗證對象的描述

圖2所示為網絡協議處理芯片的簡易結構。芯片對外提供四組接口:兩組網絡接口、一組配置管理接口、一組SRAM接口。兩組網絡接口相互通信,從一個網口輸入的網絡數據包經協議處理單元處理后從另一個網口輸出;配置管理口與外部CPU通信,實現芯片的初始化配置、狀態監控; SRAM接口與外部存儲器連接,提供網絡數據處理過程中所需的中間數據緩存的通道。

圖2 網絡協議處理芯片結構

2.2 驗證平臺的結構

針對該網絡協議處理芯片構建的驗證平臺結構如圖3所示。芯片的SRAM接口與標準的SRAM模型對接,實現讀寫時序的控制和數據的交互;其他的三組接口分別構建獨立的可重用的OVM驗證組件(OVC);Virtual Sequencer容納各個OVC的sequencer,控制各個OVC隨機序列的生成和管理;Scoreboard收集各OVC提供的監測數據,通過與參考模型(RM)的輸出結果進行比較,確認芯片輸出的正確性;根據芯片的測試驗證需求,組合相關的測試序列,生成多組test,供芯片測試驗證。

2.3 驗證平臺的設計

2.3.1 OVC設計

芯片驗證平臺包含GMAC OVC1、GMAC OVC2和CFG OVC三個獨立的驗證組件。本文以GMAC OVC1為例,詳述OVC的構建方法。

(1) Data Item

GMAC OVC1為網絡接口的驗證組件,驅動網絡接口的數據為以太網數據包。以太網數據包可以采用分層的方法逐級構建。首先構建鏈路層的MAC數據包,對MAC頭各字段進行隨機化定義和約束;然后構建網絡層的IP數據包,對IP頭的各字段進行隨機化定義和約束,IP數據包繼承于鏈路層的MAC數據包;最后構建傳輸層的ICMP、UDP、TCP等協議包,這些數據包繼承于網絡層的IP包。通過這種面向對象的分層構建方法,使該Data Item具有良好的擴展性,在不同的應用中,根據實際需求可方便地對網絡層和傳輸層的數據包進行擴展。

圖3 驗證平臺結構

在逐層構建數據包時,除產生正確的數據包外,為了檢驗芯片的容錯能力,還需注入一定比例的錯誤數據包,如同步頭錯誤、CRC校驗和錯誤、IP頭校驗和錯誤等。

(2) Sequencer

Sequencer中寄存著不同種類的sequence,這些sequence產生不同類型的數據包,在task body()中生成。示例代碼如下:

virtual task body();

case(ip_sel) //包類型選擇

TCP: begin

[′ovm_do_with](tcp_packet0,{tcp_packet0.packet_type==IP_PACKET; tcp_packet0.ip_type==TCP; }) end //生成TCP包

UDP: begin

[′ovm_do_with](udp_packet0,{udp_packet0.packet_type==IP_PACKET; udp_packet0.ip_type==UDP; }) end //生成UDP包

ICMP: begin

[′ovm_do_with](icmp_packet0,{icmp_packet0.packet_type==IP_PACKET; icmp_packet0.ip_type==ICMP; }) end

//生成ICMP包

endcase

endtask: body

(3) Driver

Driver從Sequencer中獲取Data Item,然后將其轉換成DUT網絡接口支持的邏輯方式和時序方式驅動到接口。

Driver與Sequencer之間的通信通過OVM提供的TLM端口實現。

seq_item_port.get_next_item(req);

//TLM端口,從sequencer中取出新的數據序列

drive_frame(req); //自定義任務,驅動數據序列到DUT端口

seq_item_port.item_done();

//TLM端口,通知sequencer取出的數據序列處理完

(4) Monitor

Monitor監測GMAC1的接口,收集輸入、輸出數據序列,并進行功能覆蓋率統計。

功能覆蓋率通過covergroup中的coverpoint和cross來實現,示例如下:

covergroup cover_ip_packet;

ip_total_len: coverpoint ip_collected.ip_total_len

//創建覆蓋點ip_total_len

{ bins small_packet[]={[21:46]};

bins normal_packet[]={[47:1500]}; }

ip_protocal: coverpoint ip_collected.ip_protocal

//創建覆蓋點ip_protocal

{ bins icmp = {1};

bins tcp = {6};

bins udp = {17}; }

cross ip_total_len,ip_protocal;

主站蜘蛛池模板: 国产玖玖视频| 亚欧美国产综合| 国产成人亚洲欧美激情| 免费看美女自慰的网站| 国产精品成人AⅤ在线一二三四| 国产精品一区在线麻豆| 麻豆国产原创视频在线播放| 国产精品九九视频| 久久久久久久97| 欧美日韩专区| 国产乱子伦手机在线| 波多野结衣中文字幕一区二区| 一本一道波多野结衣一区二区 | 人人看人人鲁狠狠高清| 亚洲人成影视在线观看| 成人在线第一页| 亚洲无码91视频| 国产欧美成人不卡视频| 九九热视频精品在线| 色婷婷国产精品视频| 999精品在线视频| 午夜国产小视频| 视频在线观看一区二区| 在线观看亚洲精品福利片| 中文字幕无码电影| 日韩小视频网站hq| 丁香综合在线| 日韩欧美中文在线| 亚洲资源站av无码网址| 中文字幕天无码久久精品视频免费| 亚洲欧美日韩综合二区三区| 国产超薄肉色丝袜网站| 久久婷婷五月综合97色| 综合亚洲网| 日韩视频精品在线| 亚洲av日韩综合一区尤物| 澳门av无码| 亚洲免费福利视频| 国产美女免费| 夜夜操天天摸| 中文字幕在线视频免费| 精品伊人久久久大香线蕉欧美| 国产精品无码AV中文| 欧美日韩国产综合视频在线观看| 亚洲第一页在线观看| 亚洲人成成无码网WWW| 亚洲欧美成人综合| 亚洲高清资源| 欧美成人一区午夜福利在线| 亚洲高清免费在线观看| 欧美日韩高清在线| 国产aaaaa一级毛片| 日本免费福利视频| 伊人蕉久影院| 久久精品人妻中文系列| 亚洲一区二区在线无码| 91av国产在线| 欧美一级大片在线观看| 蜜桃视频一区| 国产亚洲欧美在线中文bt天堂| 婷婷激情五月网| 国产va在线观看| 亚洲欧美综合另类图片小说区| 亚洲高清国产拍精品26u| 国产在线视频导航| 亚洲一区无码在线| 亚洲资源在线视频| 成年人久久黄色网站| 久久精品人人做人人爽电影蜜月 | 国产精品极品美女自在线看免费一区二区 | 午夜国产小视频| 国产精品亚洲一区二区三区在线观看| 日本不卡视频在线| 国产一区二区色淫影院| 色吊丝av中文字幕| 久久免费视频6| 国产精品天干天干在线观看 | 国产区人妖精品人妖精品视频| 四虎永久在线精品国产免费| 波多野结衣视频网站| 一级毛片视频免费| 成人国内精品久久久久影院|