Skip to content

Waveforms

wenjiapeng edited this page Oct 24, 2026 · 1 revision

波形与存储器查看

打开与基本操作

默认点击 .vcd 即打开内置波形查看器;已有自定义编辑器关联时,使用“重新打开方式”选择 VCD 波形查看器。右上角“查看文本”可返回原文。仿真成功后默认自动打开新 VCD。

在左侧按名称/完整层级搜索,按 scope 筛选并添加信号。目录与名称/读值栏的边界可拖动调整宽度。图形颜色跟随 IDE 明暗主题。

操作 手势/按键
放置 A 点击波形
放置 B Shift + 点击
适配 A/B 区间 “A ↔ B”
全程显示 工具栏或 F
缩放 Ctrl/Command + 滚轮,以指针为中心
平移 拖动波形,或 Shift + 滚轮
找前后边沿 选中目标行后左右箭头或工具栏
多选 Ctrl/Command 切换,Shift 连选,Ctrl/Command+Shift 扩展
右键菜单 保留已选多行;未选行上右键只操作该行
排序 拖动名称,多选时整体移动
Analog 行高 拖动该行下边界,范围 60–480 px
取消未完成拖动 Escape

可用工具栏输入时间跳转,例如 125 ns。A/B 读值和边沿导航查询真实事件,不依赖缩小视图的抽样像素。

格式、背景色与分组

总线逐位展开、背景高亮与分组菜单

右键 显示格式 子菜单选择 Hex、Binary、有/无符号十进制、Analog 或浮点。多选混合位宽时,仅启用全部所选行适用的格式。

右键 背景高亮 可对单条或多条信号设置颜色;淡底贯穿名称和波形,X/Z 的诊断颜色仍保留。选中后右键新建分组、加入已有组或解除分组;分组可折叠,并可整体排序。

总线逐位展开

点击总线名称左侧展开图标,或使用 Enter/右键 展开总线为 bit。按原声明方向排列,支持升序、降序及非零/负下标。没有记录范围时注明“位位置”,不伪装成 RTL 索引。

父总线保留,每个 bit 可独立着色、分组和显示。收起只隐藏位行,再展开恢复局部设置;明确移除信号或清空布局会释放相应设置。总可见行数有限制,超限时说明原因。

输入/输出/双向端口与内部信号有不同角色图标。普通 VCD 没有端口方向字段,角色来自工作区 RTL 匹配;无法唯一确认时显示未知,不靠 i_/o_ 名称猜测。

浮点位模式

格式 位宽
FP64 64
FP32 32
TF32 19 位紧凑编码或 32 位容器
BF16 16
FP16 16
FP8(E3M4) 8

FP8 E3M4 使用本项目约定的偏置 3,全 1 指数保留为 Inf/NaN;它不是 IEEE 754 规定的独立格式。X/Z 与 NaN 分别显示。real/realtime 是已有实数值,不重新解释为浮点位模式;不会自动猜测宽总线中的多个浮点 lane。

一维与二维 mem

二维mem与A/B精确值

点击 存储器,选择已记录的数组:mem[addr] 显示字数组,mem[row][col] 显示矩阵。地址保留实际起点和稀疏性;packed 范围决定 word 位宽。

表格共用 A/B 游标,显示两个时刻的精确值与变化标记。点击单元添加/定位对应波形;“定位”输入地址或 行,列。— 表示缺初值,“未 dump”表示文件中没有该单元,X/Z 保持原值。

必须在仿真时 dump 需要的元素。部分仿真器将二维数组展平成线性名称,VCD 没有行列元数据时只能显示字数组,无法恢复原二维声明。当前内置查看器仅支持 VCD,未提供 FSDB 查看。

保存布局与重新仿真

工具栏 保存布局/加载布局 使用 .svwave.json,保存信号路径、顺序、格式、颜色、分组、展开位、行高、栏宽、游标及时间视口。重新仿真后按声明路径匹配,不能唯一匹配的条目会提示,不猜测连接。布局文件不包含全部事件数据。

重新仿真前旧视图会按写入目标关闭,结束后加载新数据;日常持久复用请保存布局文件。仿真说明

导出技术文档图片

A/B区间与图片导出选项

点击 导出图片,选择“文档黑白线稿”或“当前界面主题”,输出 SVG/PNG。有效且不同的 A/B 默认决定导出时间区间,否则使用当前时间视口。可选择全部已添加信号或仅所选行,保留分组/展开状态和 Analog 行高。

SVG 适合技术文档与后续编辑。PNG 按图幅预算调整分辨率;超预算时改用 SVG、减少信号或缩短区间,不静默裁剪。密集跳变有明确标记,不伪造未分辨的脉冲。

100–500 MB 文件

后台 worker 流式加载,页面按可见信号和时间窗查询。4.0 已实测 100/500 MiB 合成 VCD;实际内存取决于事件密度、总线宽度和信号数,不保证任意同尺寸文件均可加载。默认有文件、存储和响应预算,超限会说明原因。

缩小后出现密集区时应放大再判断窄脉冲。A/B 精确读值和真实边沿导航仍可用于核对。

详细行为、容量与测量条件

Clone this wiki locally