标签:app wrapper 引入 div roc src document qpi 设备
https://mp.weixin.qq.com/s/U4GAEogQMwo0PIxeU6n8jg
简单介绍ExampleRocketSystem的实现。
1. ExampleRocketSystem
ExampleRocketSystem是一个顶层模块的样例,包含一个Rocket子系统,一系列的外部设备和接口:
1) 继承自RocketSubsystem
2) 包含一系列外部设备和接口
配合ExampleRocketSystemModuleImp中引入的特征(trait)进行实现:
3) lazy val module是ExampleRocketSystemModuleImp类的实例
4) 进行必要的内部节点连接
A. 连接cbus和sbus
这里不需要跨时钟域。
B. 连接pbus和cbus
这里的跨域类型为同步跨域,外设的时钟可能较慢。
C. 连接fbus和sbus
D. 连接sbus和mbus
其中:
a. 根据配置,生成存储总线的一致性管理模块;
b. 系统总线作为上游连接到一致性管理模块的输入;
c. 一致性管理模块再作为上游节点连接到内存总线;
d. 如果内存包括多个bank,则包含一个BankBinder,以对上游提供统一的视图;
5) 结构示意图
引用自:https://carrv.github.io/2017/papers/cook-diplomacy-carrv2017.pdf
2. ExampleRocketSystemModuleImp
ExampleRocketSystemModuleImp与ExampleRocketSystem配对使用:
ExampleRocketSystemModuleImp实现ExampleRocketSystem的具体逻辑。不过这个类的层次比较高,具体的实现逻辑都已经在其组成模块中已经实现了,所以这里的定义中不包含类体,而只是继承RocketSubsystemModuleImp和引入一系列外设和接口的实现。
3. 附录
略
Rocket - system - ExampleRocketSystem
标签:app wrapper 引入 div roc src document qpi 设备
原文地址:https://www.cnblogs.com/wjcdx/p/13298464.html