• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

SOC/IP验证工程师

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

Adaptive_Traffic_Profiles_Specifacation中文版-附录C FIFO模型行为实例

附录C FIFO模型行为实例

本附录描述了先进先出时序模型用于对典型SoC中不同类型组件的行为建模的几种方法。它还描述了如何改变模型的参数来引起不同的行为。

C.1 FIFO模型

本附录内容翔实,对典型或可能的行为所作的陈述并不适用于所有情况。
对于本节中描述的所有组件,以下两个参数应该是不变的:
Transaction Size---事务大小可能是一个固定的参数,预计64字节的事务大小将在许多组件中使用,因为这与一致性协议和内存控制器突发大小很好地配合。
Data Bus Width ---不同的组件将支持不同的数据总线宽度选项。大多数组件都有默认的数据总线宽度,系统架构师可以选择在该宽度以上或以下的选项进行实验。

C.2 Display

要对像Display 控制器这样的组件建模,配置文件参数如下:
Drain Rate---设置为显示器的自然速率,通常使用屏幕尺寸、每像素位和帧速率计算。预计这是以MB/s计算的,然后转换为字节/周期指标。
FIFO Depth---设置为位于显示器内部的缓冲区的大小。系统架构师可以选择在性能仿真期间改变此参数。
Transaction Limit---通常,对于给定的设计,未完成事务的最大数量是固定的。组件需要确保支持足够数量的未处理事务,以达到平均延迟条件下所需的吞吐量。短时间的高延迟可以由缓冲区的深度来调整。
Start Level --- 空. 在需要发送第一个数据到显示器之前,显示器预计会被触发。
系统架构师可以选择改变FIFO Depth参数。增加深度会增加显示的门数(因此功率),但其优点是显示对系统中的其他流量变得更加宽容。
对于任何给定的系统,都可能存在保证正确操作所需的最小缓冲深度。

C.3 CPU

一个CPU通常会有几个不同的模态行为。
当从热缓存操作时,它通常有一个较低的Rate参数,因此未完成的事务限制和FIFO深度在某种程度上是不相关的。
当从冷缓存操作或执行有高失误率的软件时,它通常会有更高的Rate参数。 在这种情况下,未完成的事务限制对于确定带宽非常重要。一些软件算法,如指针跟踪,将很少有未完成的事务。具有更多并行性的软件算法将有更高的未完成事务限制。
如果需要检查CPU是否长时间没有足够的带宽,可以在CPU通道中使用FIFO Depth参数。但是,在CPU通道的许多情况下,预期FIFO Depth参数设置得足够高,不会影响流量配置文件。

C.4 GPU

对于图形处理器流量通道,会将图形处理器的速率设置为高于系统可达到的值。 这确保了流量通道将继续生成事务,因为它永远不会达到预期的速率。由于Rate设置为较高水平,因此流量通道将显示它始终处于超负荷或不足运行状态。这是完全可以接受的,并且可以预期组件的警告报告将被禁用。
在GPU中使用FIFO Depth参数类似于在CPU通道中使用它。如果需要检查组件是否长时间没有足够的带宽,则可以使用它。然而,在许多GPU通道的情况下,预期FIFO深度参数设置得非常高。
一个GPU流量通道可能包含两个时序模型,一个用于生成,一个用于检查。例如,GPU可以使用一个要求非常高带宽的生成器,但也包含一个检查器来检查中等带宽。这意味着可以通过编程使生成器的行为尽可能接近真实的组件,而检查器只在没有达到某个最小带宽阈值时指示错误。

C.5 网络接口

流量通道可以提供诸如网络接口之类的相当准确的表示。Rate参数可以设置为网络接口的自然带宽,FIFO深度可以设置为网络接口IP内的缓冲区大小。

posted on 2022-05-01 22:27  SOC验证工程师  阅读(56)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3