数字IC设计随笔之六(DVE中波形数据alias显示)

DVE中波形信号alias的定义

在使用VCS做仿真时,将波形中状态值显示为容易理解的具有实际有意义的字符串,将会大大提高debug的效率。

在DVE窗口中选择需要别名替换的信号,然后点击菜单signal—set radix—user defined—edit显示编辑用户定义基数对话框,点击New、Delete新建或者删除定义的别名。可以通过两种方式实现,一种是列表形式,一种是TCL脚本。

  • 列表方式

列表方式的实现非常简单,只需要将波形值与显示字符串做称列表即可。
在这里插入图片描述

  • TCL脚本方式

TCL方式需要定义一个TCL proc,波形中的数据以参数的方式输入,然后TCL proc返回对应的字符串,可以用switch或者if-else实现。

在这里插入图片描述
下面简单示例代码为CPU中指令译码部分的相关处理,将取到的指令数据处理为具有实际意义的指令码,可以更方便的理解cpu执行的行为。

proc inst_alias { arg }  {
 
 set hex [expr 0x$arg]
 set opcode [ expr $hex & 0x0000007F]
 
 set fun1 [ expr [ expr $hex >> 12] & 0x7]
 
  #Proc contents here ... 
  switch $opcode {
    19 {
        switch $fun1 {
        0 {
            set results "ADDI"
           }
        }
    }
    23 {
        set results "AUIPC"
    }
    99 {
        switch $fun1 {
            0  {
            set results "BEQ"
            }
            1 {
            set results "BNE"
            }
        } 
    }
  }
  return $results
}

上述内容仅记录实现的方法,如有错误,还请各位同行指出。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1入门 5 基本要求: 5 启用调试 5 编译时间选项 6 必要文件 6 调用DVE 7 64位技术支持平台 8 后台处理程序: 8 交互式界面 9 脚本命令(Scripts): 9 DVE的日志文件 10 在命令行运行仿真 10 DVE与VCS, SystemVerilog, 和NTB (OV 和 SV) 10 VCS MX和VHDL 11 检查点还原的方法 12 C,C++,和System C代码 12 在GUI界面运行仿真 13 后台处理程序(Post-processing) 13 创建并且运行一个交互式的会话 14 运行仿真 15 工具栏的应用 16 模拟器(Simulator)菜单命令的应用 17 命令行的应用 18 保存会话或布局图 18 保存一个布局图会话 20 载入已保存的会话(session) 20 关闭数据库 20 退出DVE 21 2 图形化界面应用 22 DVE窗口属性概述 22 DVE窗格(panes) 23 管理DVE窗口 23 管理目标窗格 24 停放与移除窗口和窗格 25 拖拽和删除一个已停放的窗口 25 菜单栏和工具栏的应用 26 菜单栏参考 27 文件菜单 28 编辑菜单 29 视图查看菜单 30 仿真菜单 32 信号菜单 34 作用域菜单 36 追踪菜单 37 窗口 38 信号 39 模拟器 39 时间操作 40 扩大或缩小 41 扩大或缩小和变动记录 41 上下文记录命令菜单的应用 42 设置显示的首选项(Preferences) 42 自定义显示 42 3 使用层次数据和信号群组窗格 49 层次窗格 49 给信号赋值 50 4 使用源窗口 51 管理交互仿真的断点 51 控制源窗口的行断点 51 在对话框管理断点 52 行断点 52 时间断点 53 信号断点 54 断言断点 55 任务/函数断点 56 编辑断点 57 5 运用波形窗口 58 建立目标窗口 58 设置波形窗口首选项 58 重命名信号组 60 过滤信号 60 添加信号分离器 60 设置复制信号的显示 60 创建一个用户定义基数 61 管理用户定义基数 61 导入和导出一个用户定义基数 62 运用波形窗 62 制定波形显示 63 指针和标记 64 使用指针 64 运用标记 65 移动,隐藏和删除标记 67 扩展和收缩波形信号 68 在图像窗搜索 68 比较信号,域和组 68 建立总线并设置表达式 70 使用总线/表达式对话框 70 总线/表达式列表框 71 显示/隐藏细目表格 71 创建一个总线 72 修改总线成分 73 管理表达式列表 73 移位信号 74 8 断言与覆盖率 75 SV断言的编译 75 断言结果的观察 75 显示标准的设置 76 断言的调试 77 观察波形窗口断言的失效 78 观察断言失效时间增量 79 源代码的定位 80 9 动态驱动和载入的跟踪 81 跟踪功能 82 支持的功能 83 不支持的功能 83 Vera的功能 83 跟踪驱动程序 84 跟踪载入 85 Vera的功能 86

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值