SSO

 这是在了解了FPA内存管理机制,PIP/IPD的收包配置机制之后,重读一遍SSO,在得知所有调度信息的生成方式和在现在系统中的值的前提下,着重了解SSO的调度过程。
1、SSO提供【调度】【排序】【同步】功能
2、work队列:
【可以被多重硬件和软件申请】
【SSO实现了8个输入work队列,不同的work队列有不同的优先级,SSO实现了静态优先级模式和加权轮寻优先级模式】
【input队列可以无限大,在需要时可以溢出DRAM】
3、work调度
【core从SSO申请work】
【SSO支持64个grp,每个work都属于一个grp,每个core也会配置一个变量使得本core只能接收某些grp的work】
【grp机制实现了在不同core上执行不同任务的功能,可将一个包处理阶段分设置为不同组,这样能接收不同组的core就可以在包处理的不同阶段接收处理到不同程度的包,实现流水线功能分级】
【core有反调度功能】
4、排序和同步
【tag元组用来排序】
【同步机制也是为了保序而设置的,同步即在保序的前提下进行空转】
5、图解
图片
QoS:通过【阀值】和【调度】来保证包顺利通过SSO单元
【阀值能限制单个输入队列消耗SSO内部节点的数目(限制的是SSO_QOS_THRn[BUF_CNT]寄存器)】
SSO队列为每一个队列实现了两个阀值
最大占用SSO内部单元:SSO_QOS_THRn[MAX_THR] + 1; 
SSO_QOS_THRn[BUF_CNT]绝对不可能超过这个阀值,如果超过了这个阀值,则work节点就会在L2/DRAM上申请,不会再占用SSO内部单元
最小占用SSO内部单元:SSO_QOS_THRn[MIN_THR];
SSO_QOS_WE[FREE_CNT]如果小于这个阀值,则这个队列中的节点将不会被允许占用SSO内部单元
【控制input 队列的遍历机制】
SSO硬件在搜索input队列上的work节点调度给core处理时是平行的遍历每一个input 队列
软件可以配置SSO_QOS(0,7)_RND[RNDS_QOS*]这个寄存器,这个寄存器指示当前队列能参与的round的数量,通常,一个队列能参与的round越多,这个queue的优先级越高。


这个寄存器sso_pp_strict是配置SSO的优先级机制的,默认配的是各输入队列等优先级轮寻模式
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值