参数化与平台复用
返回知识网络总入口 · 寄存器与复用
核心结论
用配置、类型参数和通信边界适配环境,block 到 chip 重点调整驱动归属、事务入口、地址组合与场景编排。
关键机制
- 参数化处理位宽/类型差异,不同特化是不同类型,用 param_utils 注册,优先按类型创建/替换。
- agent 支持 active/passive,env 暴露必要 analysis/export,注入配置对象或句柄。
- chip 集中共享总线,组合 RAL 子 block/offset,再分发子模型。
- 去重复 driver/monitor,保留普通 sequence,系统级重组 virtual sequence。
- 拆小功能与小 sequence,避免布尔开关堆成万能场景。
小例子或流程
block:本地bus agent + reg block + 普通sequence
↓ chip集成
共享bus agent + 顶层map/submap + 子模型注入
↓
系统virtual sequence协调,内部接口转passive不直连外部接口的模块可由上层事务通路向 model 提供输入。
易错点
- 不在 block 硬编码 uvm_test_top、芯片路径或基址。
- 参数化 vif 的 set/get 特化要一致。
- 扩展机制不代替清晰接口与状态所有权。
关联知识
- env与agent:active/passive 支持系统集成复用。
- config_db:配置对象减少固定层次耦合。
- virtual_sequence:系统级重组编排,复用底层动作。
- RAL模型结构:submap 组合地址以复用模块模型。
- factory注册_创建与override:参数化类需要正确特化、注册和按类型替换。
- callback:稳定钩子允许 VIP 用户不修改驱动主体。