电子产业一站式赋能平台

PCB联盟网

搜索
查看: 8|回复: 0
收起左侧

【芯片设计】聊聊配置寄存器的动态改配场景与等级

[复制链接]
匿名  发表于 2024-12-11 11:59:00 |阅读模式
继续最近的项目交付总结输出环节,这次聊聊配置寄存器的事情。
由于在项目中编码一个流处理子系统,难免会面临着寄存器动态改配的场景。对于大部分的任务启动或者指令控制的模块,动态改配寄存器的场景不是太多。任务启动型的模块,一般而言在系统启动之前需要把配置寄存器配置完成,最后下发启动配置使能寄存器。而指令控制的模块,所需主要的信息包含在指令中,大部分时间也不会涉及到在任务执行过程中发生改变。而偏流处理比如处理音频、图像、视频甚至网络报文的模块,更容易遇到这个问题。

比如这个结构,数据由上游写到传输总线,模块对接口进行采样处理,而后经过多级运算输出给内存,配置寄存器作用于每一级处理中。那么如果现在处理一段长报文或者音频或者图像处理到中间了,配置寄存器突然被改配,那可能整个处理流水就全乱了尤其在非事务边界内的改变(比如报文帧内),甚至可能直接挂死。因此为避免这种情况发生,有几种可行的方法比如寄存器锁定(非改配窗口里改配返回error)、镜像寄存器或者进行改配时间约定与等级划分。
我之前接触的方法是寄存器动态改配约束等级,所以通过这篇文章简单说说。在动态改配约束等级中,会将配置寄存器划分为如下的改配等级:
动态改配等级改配场景T0带流改配:可随时改配寄存器T1动态改配:在满足一定前提下,可动态改配T2停流改配:在停止或暂停任务后T3复位改配:复位或动态复位后可改配T4禁止改配T0级带流改配的寄存器,举两个例子。比如axi ostd寄存器,这一刻从32改配为48,那本模块就立即响应去更多的往外发读写请求;下一刻从48改为16,那模块就收缩出口逐渐约束到16项以内(所以类似的逻辑操作一定要用>和T1级在一定前提下可动态改配的寄存器,这个比较灵活与具体场景结合比较紧密。比如某个模块有多个执行槽串行工作,那对于当前没有使用执行槽就可以进行动态改配。
T2级停流改配这个比较常见了,比如大量的寄存器都能在任务间进行改配,或者先disable掉当前处理而后改配相关寄存器再重新启动工作。
T3级复位后改配,这类就是比较关键寄存器了。有一说一我目前见到的不多,不能带流改的寄存器经过分析后我大都放在T2级了,尤其目前的交付中应该是没有归到这一级的。
T4级禁止改配寄存器,这个就很奇怪不能改配为啥要放在配置寄存器里呢?这种我见到的基本就是留一手debug/退路/适配不同场景型的,例如这个寄存器默认值会使处理更激进性能变好,但是可能有没验证充分的corner点所以可以改配退回到非激进的处理。或者配置该寄存器会重映射ram bank使得访问更加均衡加速读写,但是在某些数据场景下也可能没效果,因此根据实际的应用场景选择一种配置后就不允许改配。又如配置寄存器后会引入DCACHE,但是对于全乱序随机的上游产品输入,打开cache只会徒增功耗,也会根据产品来锁定一种配置。
这些就是之前所积累的一些经验,不一定有什么用记下来和大家聊一聊。之后再找个时间探讨下针对不同改配级别寄存器的验证策略以及reg_test case的思路吧。

系列文章入口——
【芯片设计】SoC 101(一):绪论
【芯片设计】FIFO漫谈(零)从无处不在的FIFO开始说起
【芯片设计】计算机体系结构(一)虚拟内存
【芯片设计】深入理解AMBA总线(零)绪论
【芯片设计】握手协议的介绍与时序说明
【芯片设计】复位那些小事 —— 复位消抖
【芯片设计】快速入门数字芯片设计(一)Introduction
【芯片验证】UVM源码计划(零)下定决心读源码前的自测环节
【芯片设计】异步电路碎碎念(一) 到底什么是异步电路
【芯片设计】从RTL到GDS(一):Introduction
其他文章链接——
【芯片验证】sva_assertion: 15道助力飞升的断言练习
【芯片验证】可能是RTL定向验证的巅峰之作
【芯片验证】RTL仿真中X态行为的传播 —— 从xprop说起
【芯片验证】年轻人的第一个systemVerilog验证环境全工程与解析
【芯片设计】verilog中有符号数和无符号数的本质探究
【芯片设计】论RTL中always语法的消失术
【芯片设计】代码即注释,注释即代码
【芯片设计】700行代码的risc处理器你确实不能要求太多了
入职芯片开发部门后,每天摸鱼之外的时间我们要做些什么呢
如何计算系统的outstanding 和 burst length?
芯片搬砖日常·逼死强迫症的关键词不对齐事件
熟人社会里,一群没有社会价值的局外人

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


联系客服 关注微信 下载APP 返回顶部 返回列表