weiqi7777

irun增量编译bind操作遇到的问题

使用irun的增量编译,可以在环境修改情况下,加快编译速度。在实际的使用过程中,在bind操作,遇到了编译的问题。下面将该问题进行分享。TB部分,有bind的操作,将一些模块,或者interface,bind到RTL的一些模块上,此时如果使用增量编译,出现bind不成功。如以下示例代

uvm中直接操作RTL信号

UVM提供了一种机制,可以直接对RTL中的信号进行操作,比如赋值,force,release。在uvm_hdl.svh文件中。提供了相关的操作RTL信号函数。文件中,定义了使用typedef定义了uvm_hdl_data_t类型,其实就是大小为1024bit的数据。然后根据宏UVM_HDL_NO_DPI,是否定义,从而决定

sv的数组参数传递

systemverilog中,如果一个函数的参数为数组,那么在外部调用这个函数时,可以向这个数组参数,传递一个真正的数组,也可以通过'{}方式,传递一个常量数组。这样,可以避免在外部定义一个数组,对数组进行赋值,然后进行传递。格式为以下:'{数组索引:值,数组索引:值

cadence vmanager(十一) 杂说

一、vmanagerweb查看reportsvmanager的web,可以查看reports。包括summary,metrice,vplan。在创建vmanagerserver的profile,会指定一个目录,存放profile生成的文件。在这个目录下,有目录vapi目录。web中report的内容,均在这个文件夹下。vapi目录下,是以project分

uvm中run_test

run_test是在uvm_globals.svh中定义的一个task,用于启动UVM。获取到uvm_root的单个实例,然后调用top的run_test函数。传入test_name的名字。在UVM-1.2中,获取uvm_root的单个实例,要通过uvm_coreservice_t的单个实例去获取。定义了一些变量。factory:工厂类单例testn

uvm中获取cmdlind内容

UVM中,会从cmdline中,获取内容。比如+UVM_TESTNAME,得到要执行的testcase的名字。一、uvm_cmdline_processor类uvm通过uvm_cmdline_processor类,来实现读取cmdline的内容。在这个类中,定义了3个队列。m_argv:保存cmdline的传参m_plus_argv:保存以+开头的cmdline参数

ARM访问实现自定义系统寄存器

ARMv8中,取消了协处理器,之前协处理器实现的功能,全部由系统寄存器来是实现。对于系统寄存器的访问,使用mrs,msr指令来访问。指令编码如下:L:1,mrs,读取系统寄存器值到通用寄存器中L:0,msr,将通用寄存器值写入到系统寄存器中而系统寄存器的编码,由op1,CRn

AMBA低功耗接口(二)P_Channel

为了满足复杂的power管理的需求,arm提供了P_Channel的低功耗接口,来满足这样的应用场景。一、P_ChannelP_Channel,提出了一个概念,叫powerstatetransition,power状态的切换。在P_Channel的应用场景中,power的状态有很多,这个是实现自己定义的。power的各个状态之

AMBA低功耗接口(一)Q_Channel

AMBA提供了,低功耗的接口。用于实现power控制功能。目前,AMBA里面,包含2种低功耗接口。Q-Channel:实现简单的power控制,如上电,下电。P-Channel:实现复杂的power控制,如全上电,半上电,1/4上电等。ARM引入这2种低功耗接口,是为了满足不同的应用场景下,对power

跟文件系统(二)busybox构建跟文件系统

rootfs有两种格式:nfs方式启动的文件夹形式的rootfs和用来烧录的镜像形式的rootfs。一、busybox移植1、busybox下载busybox是一个开源项目,源代码可以网上下载。官网:https://busybox.net/downloads/,有多个版本。下载完毕后,在linux下解压。得到以下的一些目录和文

跟文件系统 (一)跟文件系统简介

一、为什么需要根文件系统1、init进程的应用程序在根文件系统中linux在启动之后,会去执行init进程。将自己变为应用进程,而init进程就是linux的进程1,然后再由这个进程,去生成其他的进程。而这init进程,就是在根文件系统中,因此需要根文件系统,来向内核提供init进

cadence vmanager(十) vplan与vmanager结合使用的例子

下面,用vplan与vmanager结合使用,来对一个验证环境,实现MDV的验证。所验证的DUT,以及搭建的验证环境,是根据testbench.in网站上的systemverilog的demo来搭建的。demo的网站如下:http://www.testbench.in/SL_00_INDEX.html本demo,是使用vmanager的本地模式,如果使

cadence vmanager(九) vplanner介绍

验证计划,是整个验证的基础,这个会指导后面的验证过程。cadence提供了vplanner工具,对验证计划的管理,并且还提供了,各个feature和环境中coverage,checker的对应。将来在vmanager中,可以可视化的看到,各个feature的验证情况以及进度。一、vplanner软件的启动vpla

cadence vmanager(八) vmanager生成文件说明

vmanager在启动一个session之后,在生成很多文件,下面对这些文件,简要进行说明。下图是vmanager文件层次结构:顶层TOP-dir:是在vsif中,指定的session的顶层目录chain_N:此次session,生成文件指定的位置,默认是chain_0,可以在启动vsif文件时,指定已存在的sessio

cadence vmanager(七) vsif文件介绍

vsif(verificationsessioninputformatfile),是vmanager启动一个session,必备的一个文件,该文件,指定了待运行的test。vmanager工具,会从该文件中,提取出test以及test的run命令,使用自带的runner去运行这些test的run命令,并且收集run的结果,最后集中显示。vsif