




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、本文介紹了Synopsys公司推出的基于VMM的寄存器抽象層驗證技術(shù)和方案,簡稱RAL(Register Abstraction Layer)。該技術(shù)是Synopsys針對芯片驗證中如何簡便、高效地完成寄存器/存儲器相關(guān)的驗證任務(wù)這一問題而開發(fā)的解決方案。該方案構(gòu)建在 Synopsys的VMM驗證方法基礎(chǔ)上,使用了VMM中的通用技術(shù),可以在VMM的驗證環(huán)境中非常方便地集成和重用。 本文首先簡述了在芯片驗證中和寄存器/存儲器相關(guān)的任務(wù)需求,然后介紹RAL的基本結(jié)構(gòu)和相關(guān)模塊,隨后介紹如何在VMM的驗證環(huán)境中集成RAL,最后介紹如何通過RAL完成驗證過程中各種實際任務(wù)。本文中所有實例的源代碼均采用
2、SystemVerilog硬件描述驗證語言。驗證需求和寄存器/存儲器相關(guān)的驗證任務(wù)主要包括兩類,一類是對寄存器/存儲器本身功能的驗證,寄存器/存儲器是芯片中控制和數(shù)據(jù)的存儲場所,決定著芯片能否正常運行,因此,對寄存器/存儲器本身的功能的驗證,一般是整個驗證過程中最先要完成的任務(wù)。另一類和寄存器/存儲器相關(guān)的驗證任務(wù),是在對芯片進行其它功能驗證的過程中,驗證環(huán)境需要對寄存 器/存儲器進行操作,例如,用寫寄存器配置芯片的功能,用讀寄存器檢查芯片的狀態(tài)。這類對寄存器/存儲器進行操作的任務(wù),是在芯片驗證過程中,始終存在并且頻繁出現(xiàn)的。芯片中的寄存器/存儲器具有數(shù)量大和不斷變化的特點。一般來說,芯片中的
3、寄存器數(shù)目往往達到幾十個,上百個,甚至近千個,有的芯片有著為數(shù)不少的存儲器。而且,這些寄存器/存儲器的設(shè)計規(guī)范在不斷變化中,甚至在芯片的驗證過程中,寄存器/存儲器的設(shè)計仍在變化。這兩個特點使得測試平臺對寄存器/存儲器的維護十分困難。一旦在設(shè)計中增加或減少了寄存器/存儲器,或者修改了寄存器字段的長度、位置、屬性、初始值、或者修改了存儲器的容量、字長等等,工程師就必須在整個驗證環(huán)境和所有測試文件中,對于發(fā)生變化的寄存器/存儲器進行相應(yīng)的修改。這種維護工作是非常繁瑣,耗時和容易出錯的。因此,一方面,和寄存器/存儲器相關(guān)的驗證任務(wù)是不可缺少的,頻繁出現(xiàn)的;另一方面,測試平臺對寄存器/存儲器的維護是耗時
4、和容易出錯的。這樣一來,本可以花在驗證更復(fù)雜功能上的時間和精力,卻被花在相對簡單卻很耗時的寄存器/存儲器維護工作上了。這種矛盾導(dǎo)致了對簡便,高效的寄存器/存儲器驗證解決方案的強烈需求。Synopsys正是在這種強烈需求的背景下推出了基于VMM的寄存器/存儲器抽象層(RAL)驗證解決方案。該方案的中心思想是,在驗證環(huán)境中的一個特定模型內(nèi),進行寄存器/存儲器的管理、維護和操作,一旦寄存器/存儲器的設(shè)計規(guī)范發(fā)生變化,工程師對驗證環(huán)境和測試文件的維護修改工作將盡可能地降低到最少的程度。 基本結(jié)構(gòu)和工作機制Synopsys的VMM驗證環(huán)境是層次化的驗證環(huán)境,分為指令層(Command Layer)、功能
5、層(Functional Layer)、場景層(Scenario Layer)等,而RAL是隸屬于Functional Layer的。RAL的基本結(jié)構(gòu)包含三個部分,分別是RAL模型(RAL Model)、RAL處理器(RAL Transactor)以及RAL訪問管理器(RAL Access)。如圖1所示。 RAL的各個組成部分RAL Model封裝了DUT中寄存器/存儲器的一切描述信息,是DUT中寄存器/存儲器在測試環(huán)境中的映射,RAL Model為寄存器保存、維護鏡像值。但存儲器在RAL Model中是沒有鏡像值的,這是因為對存儲器的存取相對簡單,并且存儲器較大的存儲容量會導(dǎo)致較大的鏡像空間
6、,從而大大降低模擬效率。RAL Transactor負責(zé)把RAL Transaction轉(zhuǎn)換為Command Layer Transaction并傳遞給Command Layer中的BFM。RAL Access負責(zé)管理RAL Model和RAL Transactor之間的交互,它將RAL Model中的操作封裝為一個RAL Transaction傳遞給RAL Transactor,并根據(jù)這個Transaction完成后的結(jié)果或狀態(tài),更新RAL Model中的數(shù)據(jù)信息。BFM并不屬于RAL的范疇,它是VMM測試環(huán)境中Command Layer的一個模塊,負責(zé)將Command Layer Tran
7、saction驅(qū)動到DUT接口上實際的高低電平邏輯信號。 RAL的工作機制測試平臺對RAL Model進行的操作,會映射到對DUT內(nèi)寄存器/存儲器的操作。這種操作通過RAL Access,封裝在RAL Transaction中,傳遞到RAL Transactor, RAL Transactor又將這個Transaction翻譯為Command Layer的Transaction,傳遞給BFM,BFM將這個Transaction按照DUT的接口協(xié)議和時序,驅(qū)動DUT接口上的信號,實現(xiàn)對 DUT內(nèi)部寄存器/存儲器的存取訪問。RAL Access根據(jù)這個操作的結(jié)果和狀態(tài),維護RAL Model中的數(shù)
8、據(jù)信息。 RAL的實現(xiàn)Synopsys VMM的驗證環(huán)境是基于面向?qū)ο缶幊谭椒ㄩ_發(fā)的,因此,RAL是通過一系列的類(Class)來實現(xiàn)的。RAL庫提供了一系列的類,最大限度地封裝寄存器/存儲器相關(guān)的通用的數(shù)據(jù)結(jié)構(gòu)和方法,由此節(jié)省用戶開發(fā)寄存器/存儲器驗證環(huán)境的工作量,而用戶只需要通過擴展RAL庫中的基類來定義自己所需的類,添加待測芯片中的寄存器/存儲器的特定信息。 用RALF文件生成RAL Model雖然RAL庫提供了封裝寄存器/存儲器描述信息的一系列的基類,但和特定的待測芯片相關(guān)的寄存器/存儲器的設(shè)計規(guī)范,必須由用戶添加在各個RAL基類擴展而得的子類中。用戶必須對待測芯片中的每個寄存器字段,
9、每個寄存器,每個存儲器,以及由寄存器/存儲器構(gòu)成的集合,通過擴展相應(yīng)的基類來定義新的 類,從而封裝它們的設(shè)計規(guī)范信息。這個過程是比較繁瑣和耗時的。為了最大限度節(jié)省工程師的工作量,在Synopsys RAL驗證解決方案中,RAL Model不需要由用戶來實現(xiàn),而是由RAL模型生成器(簡稱ralgen)根據(jù)用戶編寫的RAL格式文件(采用.ralf為后綴名)自動生成的。用戶只需要按照簡明的RAL格式編寫寄存器/存儲器設(shè)計規(guī)范文件,再交給ralgen工具,就可自動生成RAL Model所需的所有的擴展類。 驗證環(huán)境集成將RAL集成在VMM驗證環(huán)境中,只需要以下四個步驟:第一步,構(gòu)建Command La
10、yer中和DUT的寄存器/存儲器訪問有關(guān)的Data, Channel和BFM的類。第二步,按照寄存器/存儲器設(shè)計規(guī)范,編寫RALF文件,然后用ralgen工具生成RAL Model。第三步,構(gòu)建RAL Transactor,實現(xiàn)RAL和CommandLayer間Transaction的翻譯。第四步,構(gòu)建頂層驗證環(huán)境,該環(huán)境包含圖1中所示的RAL Access、RAL Model和RAL Transactor。在驗證環(huán)境的build(過程中,簡化上述對象,并將RAL Model和RAL Transactor和RAL Access關(guān)聯(lián)起來。最后在hw_reset(過程中,實現(xiàn)對DUT的reset。
11、注意,在vmm_ral_env中,無需擴展reset_dut (,而只要擴展hw_reset(,而reset_dut(會自動調(diào)用hw_reset(。 實際應(yīng)用在將RAL集成到VMM驗證環(huán)境中以后,我們就可以在測試代碼中實現(xiàn)各種測試任務(wù)所要求的和寄存器/存儲器有關(guān)的操作。這里舉例說明一些最常用的應(yīng)用。用戶可根據(jù)自己的驗證要求,利用RAL實現(xiàn)更多更復(fù)雜的功能。1查詢寄存器/存儲器 查詢寄存器/存儲器或字段的各種屬性,例如字節(jié)數(shù),比特數(shù),訪問模式等。int byte_count, bit_count;byte_count = my_reg.get_n_bytes(;bit_count =
12、my_fld.get_n_bits(;vmm_ral:access_e access_mode;access_mode = my_fld.get_access(;int mem_size, bits_per_loc;mem_size = my_mem.get_size(;bits_per_loc = my_mem.get_n_bits(; 2寫單個字段3寫多個字段4讀某個字段或寄存器調(diào)用read(就可以進行讀操作并取得該字段或寄存器的值。vmm_rw:status_e status;bit63:0 value;5更新鏡像值RAL Model能根據(jù)測試平臺對寄存器的操作來維護其鏡像值
13、,但如果寄存器是被DUT內(nèi)部邏輯更新的,RAL Model便無法探測并對鏡像值進行這一更新。所以需要讀取寄存器并更新鏡像值。可以對字段,寄存器或者整個模型來更新鏡像值。vmm_rw:status_e status;6讀取并檢查字段的值檢查字段的值,是將鏡像值作為期望值,讀取該字段的值,和期望值比較。如果不同,就會產(chǎn)生出錯信息。同樣調(diào)用mirror(,但其check參數(shù)的值為vmm_ral:VERB。vmm_rw:status_e status;如果當(dāng)前鏡像值不是期望值,我們需要將期望值設(shè)置到鏡像中。有兩種方式,一種是predict(,無條件地將鏡像值強制設(shè)置為指定值;一種是set(,按照字段的訪問模式設(shè)置為指定值。例如,如果字段為只讀屬性,則鏡像值就不會被改變。vmm _rw:status_e status;或者7組合基本應(yīng)用,實現(xiàn)更復(fù)雜的測試任務(wù)sp; regsi.mirror(status, vmm_ral:VERB; if (status != vmm_rw:IS_O
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 新解讀《CB-T 3884-1999小艇 廁所污水的處理集存和再循環(huán)系統(tǒng)》新解讀
- 兒童創(chuàng)意美術(shù)課件《水墨畫參考作品圖10例》
- Brand KPIs for health insurance:Seguros Banorte in Mexico-英文培訓(xùn)課件2025.4
- 航道工程施工組織設(shè)計
- 初中英語七年級下冊統(tǒng)編教案 第二單元
- 物理中考二輪復(fù)習(xí)教案 1作圖專題2(力學(xué))
- 倉儲管理活動方案
- 【NishithDesai】全球能力中心-法律、監(jiān)管和稅務(wù)問題-2025.5
- 安徽省合肥市包河區(qū)校聯(lián)考2023-2024學(xué)年四年級下學(xué)期數(shù)學(xué)期末試卷(含答案)
- 代管班中午活動方案
- 2025年黑龍江、吉林、遼寧、內(nèi)蒙古高考物理真題(解析版)
- 國開2025年《資源與運營管理》形考任務(wù)1-4答案
- 上海市2023-2024學(xué)年八年級下學(xué)期期末數(shù)學(xué)練習(xí)卷(解析版)
- 10000中國普通人名大全
- T∕CWAN 0033-2021 鋁合金攪拌摩擦焊體積型缺陷相控陣超聲檢測規(guī)范
- 報廢機動車拆解有限公司應(yīng)急預(yù)案
- 基于微信小程序的連連看小游戲的設(shè)計與實現(xiàn)
- 國際汽車貿(mào)易檢驗、檢疫、索賠、仲裁與不可抗力
- (完整版)詳細化學(xué)物質(zhì)及其CAS注冊號清單
- 日本文學(xué)概論1
- 《鐵路貨車運用維修規(guī)程》2018年10月
評論
0/150
提交評論