一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

如何創(chuàng)建一個(gè)high-level和object-oriented的模型

芯片驗(yàn)證工程師 ? 來源:芯片驗(yàn)證工程師 ? 2023-06-23 21:30 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

UVM register layer classes用于為DUV中的memory-mapped寄存器和內(nèi)存的read/write操作創(chuàng)建一個(gè)high-levelobject-oriented的模型。

這種抽象機(jī)制允許驗(yàn)證環(huán)境和測試用例從模塊級(jí)遷移到系統(tǒng)級(jí),而無需進(jìn)行任何修改。寄存器模型還可以在寄存器之間移動(dòng)唯一命名的字段,而不需要在驗(yàn)證環(huán)境或測試用例中進(jìn)行修改(因?yàn)?strong>寄存器模型是按照字符串索引操作的,而不是按照字段offset操作的)。

UVM還提供了一個(gè)寄存器測試sequence庫,你可以用來驗(yàn)證DUV中registers和memories的功能。

register model通常也是層次結(jié)構(gòu)的。Blocks可以包含registers、register filesmemories,以及其他Blocks。

register layer classes支持front-door a和back-door訪問。

由于register layer classes涉及眾多的細(xì)節(jié),所以通常是由model generator從設(shè)計(jì)中的registers和memories的規(guī)格生成的。

d31a3bd6-11b3-11ee-962d-dac502259ad0.png

register model 是一個(gè)register block的實(shí)例,它可以包含任意數(shù)量的registers、register files、memories和其他blocks。一個(gè)block通常對(duì)應(yīng)于一個(gè)設(shè)計(jì),它有自己的處理器接口,地址解碼以及memory-mapped registers和memories。每個(gè)register file包含任意數(shù)量的registers和其他register files。每個(gè)寄存器包含任意數(shù)量的字段(fields),它們反映(mirror)了硬件中相應(yīng)域段的值。

d3371d1e-11b3-11ee-962d-dac502259ad0.png

如果一個(gè)memories作為設(shè)計(jì)模塊地址空間的一部分通過寄存器模型進(jìn)行訪問,那么該memories被認(rèn)為是寄存器模型的一部分。

所有的數(shù)據(jù)域段都被建模為fields。fields代表一組連續(xù)的比特,完全包含在一個(gè)register中。

一個(gè)register可以橫跨多個(gè)地址,重復(fù)的結(jié)構(gòu)可以被建模為register arrays, register file arrays或者block arrays。下圖顯示了一個(gè)包含兩個(gè)寄存器(分別有2個(gè)和3個(gè)字段)、一個(gè)內(nèi)部存儲(chǔ)器和一個(gè)外部存儲(chǔ)器的設(shè)計(jì)。

d34e7c84-11b3-11ee-962d-dac502259ad0.png

相應(yīng)的寄存器模型如下:

d3630f6e-11b3-11ee-962d-dac502259ad0.png

當(dāng)使用 register model時(shí),fields、registers和memory是通過其相應(yīng)的抽象類中的讀寫方法(不通過地址,而是通過字符串名稱)來訪問的。寄存器模型通過適當(dāng)?shù)目偩€驅(qū)動(dòng)將這些抽象的訪問變成特定地址的實(shí)際讀寫。

例 如,上圖所示的CONFIG寄存器中的字段ADDR可以通過CODEC.CONFIG.ADDR.read() 方 法 訪 問 。同 樣 , BFR 存 儲(chǔ) 器 中 的 位 置“7”可以用CODEC.BFR.write(7,value)方法訪問。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5433

    瀏覽量

    124371
  • 接口
    +關(guān)注

    關(guān)注

    33

    文章

    8993

    瀏覽量

    153685
  • 模型
    +關(guān)注

    關(guān)注

    1

    文章

    3517

    瀏覽量

    50380

原文標(biāo)題:UVM寄存器模型概述

文章出處:【微信號(hào):芯片驗(yàn)證工程師,微信公眾號(hào):芯片驗(yàn)證工程師】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    Object-Oriented Python入門編程():認(rèn)識(shí)類別

    請(qǐng)先安裝開發(fā)環(huán)境請(qǐng)看==> 詳細(xì)說明1.類別是資料型態(tài)我們常說,3 是個(gè)整數(shù),這句話表達(dá)了:3 是物件,而整數(shù)是類別。若用電腦的術(shù)語,就相當(dāng)於:3 是項(xiàng)資料,其型態(tài)是「整數(shù)」。傳統(tǒng)
    發(fā)表于 12-07 10:37

    Object-Oriented Programming in

    This chapter applies a different programming paradigm to G: Object-Oriented Programming(OOP). New
    發(fā)表于 03-02 14:18 ?28次下載

    C++ Network Programming (Volum

    C++ Network Programming :Over the past decade, concurrent object-oriented network programminghas
    發(fā)表于 05-03 12:23 ?0次下載
    C++ Network Programming (Volum

    基于POOSL 的系統(tǒng)性能建模與性能分析

    本文介紹了面向?qū)ο蟮牟⑿忻枋稣Z言(POOSL,Parallel Object-Oriented Specification Language)的基本語義語法及相關(guān)的建模工具,并通過對(duì)個(gè)基本的包交換系統(tǒng)的建模和分析,說明了利用P
    發(fā)表于 06-10 16:10 ?8次下載

    High-Level Modeling and Synthe

    As the miniaturization of semiconductor technology continues, electronic systemson chips offer a more extensive and more complex functionality withbetter performance, higher frequencies and less power consumption. Whereasdig
    發(fā)表于 07-23 11:37 ?0次下載
    <b class='flag-5'>High-Level</b> Modeling and Synthe

    Research on the Approach to As

    Object Petri Net (OPN) which combines Petri net with object-oriented theory gives an effective
    發(fā)表于 08-31 09:07 ?14次下載

    high-level protocol for CAN-bu

    high-level protocol for CAN-bus:Fieldbus networks from the OSI network modelpoint-of-view usually
    發(fā)表于 09-15 07:58 ?11次下載

    TPS65192,pdf(9 Channel Level S

    and monitors. The device converts the logic-level signals generated by the Timing Controller (T-CON) to the high-level signals used by
    發(fā)表于 11-03 22:59 ?47次下載

    什么是CHILL (CCITT High Level Lan

    什么是CHILL (CCITT High Level Language)  英文縮寫: CHILL (CCITT High Level Language) 中文譯名:
    發(fā)表于 02-22 10:47 ?657次閱讀

    Getting Started with Vivado High-Level Synthesis

    Xilinx公司講述:Getting Started with Vivado High-Level Synthesis
    的頭像 發(fā)表于 06-04 13:47 ?4018次閱讀
    Getting Started with Vivado <b class='flag-5'>High-Level</b> Synthesis

    如何在HIGH LEVEL SYNTHESIS之前查找代碼問題的資料說明

    為了顯著加快驗(yàn)證速度,處理每天都會(huì)變化的復(fù)雜算法,很多公司轉(zhuǎn)向采用 High-Level Synthesis (HLS) 方法。但是,要利用在更高抽象度開展設(shè)計(jì)帶來的相關(guān)性能改進(jìn),采用 C++ 或
    發(fā)表于 05-21 17:11 ?6次下載
    如何在<b class='flag-5'>HIGH</b> <b class='flag-5'>LEVEL</b> SYNTHESIS之前查找代碼問題的資料說明

    高層次綜合技術(shù)(High-level synthesis)的概念

    說起高層次綜合技術(shù)(High-level synthesis)的概念,現(xiàn)在有很多初學(xué)者簡單地把它理解為可以自動(dòng)把c/c++之類地高級(jí)語言直接轉(zhuǎn)換成底層硬件描述語言(RTL)的技術(shù)。其實(shí)更準(zhǔn)確的表述是:由更高抽象度的行為描述生產(chǎn)電路的技術(shù)。
    的頭像 發(fā)表于 02-08 17:26 ?8762次閱讀
    高層次綜合技術(shù)(<b class='flag-5'>High-level</b> synthesis)的概念

    SystemVerilog中class的基本概念

    class,是面向?qū)ο缶幊蹋?b class='flag-5'>object-oriented programming (OOP))的基礎(chǔ),而OOP可以讓你創(chuàng)建更高抽象級(jí)別的驗(yàn)證環(huán)境(如UVM)。
    的頭像 發(fā)表于 11-14 09:11 ?2164次閱讀

    SystemVerilog中class是什么意思

    class,是面向?qū)ο缶幊蹋?b class='flag-5'>object-oriented programming (OOP))的基礎(chǔ),而OOP可以讓你創(chuàng)建更高抽象級(jí)別的驗(yàn)證環(huán)境(如UVM)。
    的頭像 發(fā)表于 11-14 09:11 ?1655次閱讀

    SystemVerilog中的類的繼承

    繼承是基于類的面向?qū)ο缶幊?object-oriented pro - gramming)的最重要特性之
    的頭像 發(fā)表于 11-15 09:47 ?1212次閱讀