East1203
  • Home
  • Archives
    Archives Categories Tags
  • source
  • About
  •   
  •   

SV——SV实现callback

0. 介绍用SV实现回调的功能。 回调思路可以让我们在top层向验证平台注入代码到我们预留的“钩子”(hook)中,实现一些功能,比如:在driver回调可以实现错误注入,收集激励到scoreboard中,收集覆盖率等。 这篇文章介绍在driver中回调,实现对driver驱动的transaction的控制,可以产生不同的激励,比如错误激励。 1. 结构图 driver中有一个回调的“钩子”——是

2019-08-23
Verification System Verilog
IC SV

shell中的grep

grep主要用来进行字符串数据对比,然后将符合用户需要的字符串打印出来。 1. 查找特定字符串1grep -n [-A] [-B] "要查找的字符串" --color=auto filename option description -n 显示行在文件中的行号 -A 后面跟数字,所匹配行之后的几行也会打印 -B 后面跟数字,所匹配行之前的几行也会打印

2019-08-19
linux
linux vim

shell中的sed

中兴面试被提问到:在vim中删除包含特定字符串的行。当时说不会,后来想了想可以用sed或者perl里的匹配替换。 0. sedsed是个管道命令,可以对数据进行替换、删除、新增、选取特定行等功能。 1. 命令格式1sed -ndfr [动作] 1.1 参数 参数 -n 只有被sed处理的行才会打印出来 -e 直接在命令行上输入sed命令,如果和-i参数配合用会保存源文件。 -

2019-08-19
linux
linux vim

UVM——sequence(一)

在UVM中,将激励生成和测试平台分开,使平台只编译一次,但可以运行多个激励,要实现这一点需要sequence机制、factory机制和config_db机制。 在不同的测试用例中,将不同的sequence设置成sequencer的main_phase中的default_sequence。当sequencer执行到main_phase时,发现有default_sequence,就启动sequence

2019-08-08
Verification UVM
IC SV Verification UVM

UVM——sequence(二)

6. virtual sequence​ 如果被嵌套的sequence需要在不同的sequencer中启动,也就是需要sequence之间同步,那么此时的嵌套sequence就是virtual sequence。它不产生transaction,只是控制其它sequence产生transaction发送给不同的sequencer,这就是为什么是virtual。 ​ virtual seq

2019-08-08
Verification UVM
IC SV Verification UVM

Verilog——文件读写

1. 读取文件读取文件是之前在CSDN中整理的,链接 $readmemb和$readmemh用来从文件中读取数据到存储器中。 读取的内容只包括:空白位置(空格、换行、制表格(tab和form-feeds),注释行、二进制或十六进制的数字。 数字中不能包含位宽说明和格式说明,其中readmemb要求每个数字是二进制数,readmemh要求每个数字必须是十六进制数字。数字中不定值x或X,高阻值z或Z,

2019-08-07
Verilog
IC Verilog

Verilog——分频器

在面试比试中经常出现的奇数时钟分频电路。 1. 不用时钟下降沿触发的3分频电路12345678910111213141516module ClockDiv( // 3 分频 input clk_i, input rst_n, output clk_o );reg [2:0] cnt;always@(posedge clk_i or negedge rst_n) begi

2019-08-06
Verilog
IC Verilog

UVM——callback机制

参考UVM_CALLBACK—VerificationGuide网站 《UVM实战1》 1. 介绍Where callbacks can be implemented?Callbacks can be implemented in an object or component. What are the benefits of callback?Different flavors of the c

2019-07-30
Verification UVM
IC SV Verification UVM

UVM——RAL

1. 寄存器模型介绍每个IP都有总线接口,连接到总线上,用来对DUT中寄存器进行配置,改变其行为。 再验证环境中,如果改变了DUT的行为,那么参考模型需要知道DUT做了哪些改变,并同步改变,否则参考模型和当前DUT的功能不一致。 参考模型要想获得寄存器值,需要做两件事: 在参考模型中启动sequence用来产生一个读取DUT寄存器的操作。 读取的值传递给参考模型。 如果有了寄存器模型,可以直接

2019-07-30
Verification UVM
IC SV Verification UVM

SV——SV与C的接口

在Verilog中,通过VPI可以引用C程序,听说挺复杂的(,当然我不会)。在SV中引入了DPI(direct programming Interface),可以通过在SV中简单的设置,就可以引用C语言。 1. SV简单引用C先看一个例子 123456789101112131415// tb.svimport "DPI-C" function int factorial(inp

2019-07-27
Verification System Verilog
IC SV Verification
1…34567…16

Search

Hexo Fluid
总访问量 次 总访客数 人