Welcome

覆盖率统计与UVM中的覆盖模型

覆盖目标与覆盖模型 为减少资源浪费,覆盖率被用作指导验证资源分配的基准,通过识别设计中已测试和未测试的部分来实现。覆盖率定义为已达成验证目标的百分比,作为评估验证项目进度的指标,从而减少验证设计所需的仿真周期。 总体而言,覆盖率指标主要分为两大类:一类是能从设计代码中自动提取的指标,例如代码覆盖率;另一类是用户自定义的指标,用于将验证环境与设计意图或功能特性相匹配。后者被称为功能覆盖率,是用户自定义的指标,用于衡量测试计划中列出的功能特性是否已得到充分验证。该指标可用于评估测试计划中定义的有趣场景、边界情况、规范不变量或其他适用设计条件是否已被观察、验证和测试。 | | 同义词 | 定义 | 关联 | | — | — | — | — | | 覆盖率 | coverage | 覆...

Read more

用Github Actions来编译LaTeX

CJK字体 第一步 使用xu-cheng/latex-action@v3编译LaTeX,中文字体缺失。尝试安装Noto CJK字体,但是安装完后latex找不到字体 第二步 决定将字体文件放在项目文件夹里 环境是texlive2022,XeLaTeX编译,使用xeCJK宏包 代码是 \setCJKmainfont[ BoldFont={fonts/NotoSansCJKsc-VF.ttf}, ItalicFont={fonts/NotoSerifCJKsc-VF.ttf}, Extension=.ttf ]{fonts/NotoSerifCJKsc-VF.ttf} 包括一条警告: Font shape TU/fonts/NotoSerifCJKsc...

Read more

使用picker与toffee框架进行芯片验证

芯片验证基础 验证框架 以FIFO为例 先用picker工具将Verilog转化为对应语言的dut(这里是Python). --rw 1写入波形文件, -c开启覆盖率: picker export FIFO.v --sname FIFO -w FIFO.fst --lang python --sim verilator --rw 1 -c pytest运行python写的测试: python -m pytest . -sv --toffee-report 如果用--toffee-report选项, 每次运行会在reports/生成覆盖率报告与波形文件 testcase and fixture 用pytest运行装饰符所标志的testcase, fifo_env为环境, fi...

Read more

阅读yosys源码

see https://deepwiki.com/YosysHQ/yosys 工作流程 Subsystem Function Data Format yosys_setup Initialize environment - run_frontend Read in HDL HDL source → AST → RTLIL run_pass Transform/optimize design RTLIL run_backen...

Read more