用途
Verilog/SystemVerilog Language 技能用于 Verilog 与 SystemVerilog 开发,遵循 IEEE 1364 与 IEEE 1800 标准,面向 FPGA 和 ASIC 设计,提供可综合 RTL 代码生成、正确构造使用与现代编码实践方面的专业知识。
主要能力
该技能支持 IEEE 1800-2017 SystemVerilog 标准,并保持 Verilog-2005 向后兼容。具体能力包括:
- 正确使用 always_ff、always_comb、always_latch 等 always 块变体;
- SystemVerilog 接口(interface)与 modport 定义;
- 使用 parameter 与 localparam 的参数化模块;
- packed 与 unpacked 数组;
- package 与 import;
- 阻塞与非阻塞赋值的正确应用;
- 厂商综合属性(如 Xilinx、Intel 相关属性)。
使用方式
技能以代码示例与规范形式给出各类构造的写法。例如:
- 时序逻辑使用 always_ff,组合逻辑使用 always_comb,仅在有意产生锁存器时使用 always_latch;
- 参数化模块中,用 parameter 定义可配置值,用 localparam 定义派生/内部常量,用 $clog2() 计算地址位宽;
- 接口中通过 modport 区分 master、slave、monitor 等角色;
- package 中定义 typedef、struct、常量与函数,并通过 import 引入;
- 时序逻辑使用非阻塞赋值(<=),组合逻辑使用阻塞赋值(=),不在同一块中混用。
该技能可与以下流程集成:verilog-systemverilog-design.js(主要 Verilog/SV 开发)、testbench-development.js(SV 测试平台生成)、rtl-module-architecture.js(模块设计)、uvm-testbench.js(UVM 环境开发)。
输出为结构化 schema,包含 module(名称、语言、标准、参数、端口、接口)、package(名称、类型、函数、常量)、compliance(是否可综合、always 块是否正确、是否无推断锁存器、时序逻辑中是否无阻塞赋值)以及 artifacts(产物文件清单)。
适用场景
适用于 FPGA 与 ASIC 的 RTL 模块设计、SystemVerilog 测试平台生成、UVM 环境开发等 HDL 开发工作。
限制
资料未提供该技能的收费、价格、平台支持范围或具体效果数据,暂未提供。