IH有三个环形缓冲区。环形缓冲区0用于常规中断,另外两个环形缓冲区用于异常情况,你能详细介绍一下如何使用环形缓冲区1/缓冲区2吗?
答:RING1/RING2用于页面迁移功能。对于页面迁移详情,请查阅相关文档,因为它超出了IH MAS的范围。从IH的角度看,IH只是将相关日志发送到RING1/RING2,而不是RING0。
IH环形缓冲区的起始地址是可编程的,这是否意味着环形缓冲区可以在本地帧缓冲区中分配,或者在系统内存中分配?如果环形缓冲区在FB内分配,我们是否需要启用writeback_enable将环形缓冲区数据刷新到系统内存?
答:是的,IH环形缓冲区可以位于SYSMEM或FB中。WPTR WRITEBACK用于将WPTR值写入内存位置,以便软件可以通过内存读取而不是读取寄存器IH_RB_WPTR获取IH RB WPTR值。所以这个功能与环形缓冲区数据刷新无关。
为什么虚拟内存ID有GFX_VMID和MM_VMID?这两个ID之间有什么区别?
答:芯片有2个UTCL2,GC_UTCL2和MMHUB_UTCL2。他们的VMID分配可以不同。所以我们需要区分这些VMID。
SEM的通用客户端和CP客户端有什么区别?
答:CP客户端具有管道id/队列id信息以表示不同的SEM条目。每个通用客户端只有一个SEM条目。
SEM通用客户端只有一个条目列表,而CP客户端可以有许多条目列表。CP客户端条目列表数量由管道和队列号决定,管道和队列的含义是什么?
答:这是每个CP的管道号和队列号。具体信息可以由CP团队提供。
在信号量中,offloaded wait的含义是什么?
答:当SEM接收到信号量请求时,offloaded wait不会立即操作。SEM硬件保留SEM请求信息,直到CPF轮询相应的offloaded wait。从CPF获取轮询请求后,SEM开始操作请求。
SEM_PRESENT在rtl定义中的用途是什么?
答:我在SEM rtl代码中找不到SEM_PRESENT关键字,能有人详细解释一下哪个文件有这个词吗?
在真实系统中如何以及何时进行线性子窗口复制?
答:"如何":当SDMA收到一个线性子窗口复制命令时,SDMA会从源X/Y/Z读取,并写入目标X/Y/Z,大小为rectXrectYrectZ。复制顺序为每一行,然后是每一片。
"何时":最好由驱动/软件/应用级别给出答案。
在真实系统中如何以及何时进行瓷砖子窗口复制?
答:"如何":它类似于线性子窗口复制,除了该命令是从瓷砖表面到线性表面,或者从线性表面到瓷砖表面。SDMA存储读取数据进行交错,然后写入目标表面。
"何时":最好由驱动/软件/应用级别给出答案。
"通过禁用RB,主机可以抢占SDMA"是什么意思?
答:如果软件通过写入SDMAx__RB_CNTL.RB_ENABLE来禁用SDMA RB,它可以触发一个抢占SDMA的事件。SDMA停止当前上下文队列并切换到其他可用的上下文队列。