Skip to main content
建模的方法
使用python语法进行module的定义
- python语法用来描述module之间的关系和
- 定义latch的存储器
- 定义module的算法和输入输出
- 配置一些固定的规格参数
针对throughput和latency的建模
- 传递的标准信息都是 inst
- 定义一个通用的TL(throughput latency)的Module
- 支持配置 thread 通道数量
- 处理inst的latency
- 处理inst的throughput:输入的通道的数量,输出的通道数量
- 内部stand-by的容量
- TL可以被递归的进行组合
- TL可以通过简单的python脚本定义输入和输出inst的转换规则
- 激励是一种特殊的Module
- TL可以支持自动的生成统计信息和time line图标
基于生产和消费的硬件模型抽象
- 定义资源,生产,消费的抽象
- 内置抽象功能的仿真:容量,带宽throughput,规格,延迟latency,功耗
- 支持建立资源的依赖关系
- 内置的调度算法支持:轮询、贪心、自动调度探索的算法
- 用于仿真评估的现成运行库、工具库
- 定义
- 对象的生产
- 对象的缓存、处理、转换、调度、流转
- 对象的消费
- flow plan,Place and router 规划
- 完全抽象后是可以求解一个方案,但是把所有的因素都考虑进去很慢
- 建模抽象,不能只是一个计算器,而是要能做到抽象的抽象,怎么快速得对问题进行分析??
- 建模过程:
- 定义工厂,生产和消费的产品以及速度,每个工厂就是一个硬件模块,并行工作
- 定义产品,产品可以分大小,工厂消费不同大小的产品
- 总线1:工厂「生产一个数据,消费一个数据」
- 总线2:工厂「生产一个数据,消费一个数据」
- 总线3:工厂「生产一个总线1,消费一个总线2」
微架构建模
- 延迟模型
- 发送请求,固定延迟,返回请求
- 硬件资源竞争
- 存储器的深度/credit/valid
- 地址相关的bank,读写口竞争,structure harzd
- RAW、WAW等 Data harzd
- 数据流模拟:cache line
- 优先级
- 算法
- 调度算法
数字电路仿真的抽象要素Logicsim
- 状态 Latch
- 并行 Launch
- 指令 Status
- ISA/UISA 作为module之间传递信息的抽象
- 记录各种状态的信息,状态信息的移动
No comments to display
No comments to display