一种基于动态窗口统计的memory带宽优化装置及方法与流程

文档序号:37428495发布日期:2024-03-25 19:18阅读:10来源:国知局
一种基于动态窗口统计的memory带宽优化装置及方法与流程

本发明涉及系统级芯片(soc)管理,具体涉及一种基于动态窗口统计的memory带宽优化装置及方法。


背景技术:

1、随着半导体技术的进步,系统级芯片(soc)的规模不断增大,内部集成的模块数量也日益增多。这种趋势使得系统对各个模块带宽资源的分配以及memory缓存执行的效率要求更加严格。在soc系统的运行过程中,对读写带宽的需求会因模块的不同而在系统生命周期的不同阶段有所差异。因此,带宽资源的管理成为确保系统稳定、高效运行的关键。

2、在传统的带宽资源分配策略中,通常采用基于总线qos和静态权重仲裁策略。然而,这些方法很难满足实时性带宽的需求。在带宽需求动态变化的场景下,这些策略可能无法实时调整带宽分配,导致部分模块访问memory时响应速度降低,甚至可能导致硬件模块因带宽分配不均而出现挂机情况。

3、综上所述,有必要开发一种新的动态带宽分配策略,以精准调控各模块运行期间的带宽资源分配,提升soc系统中各模块访问memory的响应速度,并减少因带宽分配不均导致的性能降低甚至硬件模块挂机的情况。


技术实现思路

1、有鉴于此,本发明实施例提供了一种基于动态窗口统计的memory带宽优化装置及方法,用以解决传统的带宽资源分配策略难以满足实时性带宽需求的问题,实现精准调控各模块运行期间的带宽资源分配的效果。

2、第一方面,本发明实施例提供了一种基于动态窗口统计的memory带宽优化装置,包括:

3、带宽监测模块,用于依据前端模块的id编号统计各所述前端模块在统计周期内的读/写总次数;

4、缓存监测模块,用于在所述统计周期内计算各所述前端模块对应的fifo内读/写剩余缓存空间数量的平均值;

5、权重仲裁模块,用于在系统运行过程中,根据所述带宽监测模块和所述缓存监测模块的信息,周期性调整各所述前端模块访问memory的带宽权重,所述带宽权重包括各所述前端模块的读权重和写权重;

6、cpu,用于配置所述权重仲裁模块中各所述前端模块的初始所述带宽权重。

7、上述实施例有益效果在于:本优化装置发明提出一种基于实时统计链路访问量动态带宽分配策略,以精准调控各模块运行期间的带宽资源分配,提升soc系统中各模块访问memory的响应速度,并减少因带宽分配不均导致的性能降低甚至硬件模块挂机的情况。

8、根据本发明实施例的一种具体实现方式,所述权重仲裁模块具有数据计算/存储功能,用于存储多个所述统计周期内的权重分配结果。

9、根据本发明实施例的一种具体实现方式,所述带宽监测模块和缓存监测模块通过总线与所述权重仲裁模块连接。以实现数据的实时传输和动态调整。

10、根据本发明实施例的一种具体实现方式,所述统计周期长度由用户配置。以满足不同应用场景的需求。

11、根据本发明实施例的一种具体实现方式,所述memory带宽优化装置集成在soc系统中。以实现对系统内各模块带宽资源的动态管理和优化。

12、第二方面,本发明实施例提供了一种基于动态窗口统计的memory带宽优化方法,基于上述优化装置,包括以下步骤:

13、s1:获取当前统计周期各所述前端模块的写命令个数widn和读命令个数ridn;

14、s2:根据上个统计周期分配的读权重和写权重,计算当前统计周期各所述前端模块的写有效权重数vntn_w和读有效权重vntn_r;

15、vntn_w=widn·kn;定义vntn_r=ridn·pn;

16、其中,widn表示当前统计周期id为n的所述前端模块的写命令个数,ridn表示当前统计周期id为n的所述前端模块的读命令个数;kn表示上个统计周期id为n的所述前端模块的写权重,pn表示上个统计周期id为n的所述前端模块的读权重;

17、s3:获取当前统计周期各所述前端模块对应的写路径访问压力fn_w和读路径访问压力fn_r;

18、,;

19、其中,ch_n_w表示当前统计周期id为n的所述前端模块对应的fifo的写剩余缓存数量,ch_n_r表示当前统计周期id为n的所述前端模块对应的fifo的读剩余缓存数量;

20、s4:计算下个统计周期各所述前端模块的所述带宽权重,并记录权重分配结果,所述带宽权重包括各所述前端模块的写权重mn_w和读权重mn_r;

21、m1_w:m2_w:…:mn_w=(vnt1_w·f1_w):(vnt2_w·f2_w):…:(vntn_w·fn_w);

22、m1_r:m2_r:…:mn_r=(vnt1_r·f1_r):(vnt2_r·f2_r):…:(vntn_r·fn_r);

23、其中,mn_w表示下个统计周期id为n的所述前端模块的写权重,mn_r表示下个统计周期id为n的所述前端模块的读权重。

24、上述实施例有益效果在于:根据带宽监测模块和缓存监测模块的信息,获取下个统计周期各前端模块的读权重和写权重,下个统计周期各前端模块的写权重、读权重,用以分配下个统计周期各前端模块的读、写带宽。

25、根据本发明实施例的一种具体实现方式,若当前统计周期为第一个统计周期,则根据所述cpu分配的初始所述带宽权重分配各所述前端模块的带宽;且所述步骤s2中的上个统计周期的读权重和写权重也为所述cpu分配的初始所述带宽权重。

26、根据本发明实施例的一种具体实现方式,在所述步骤s4之后还包括:

27、步骤s5:是否预设定下个统计周期的所述带宽权重,若是,则按设定的所述带宽权重执行下个统计周期的权重分配;若否,则进行步骤s6;

28、步骤s6:获取前n个统计周期内的所述权重分配结果;检测所述权重分配结果是否具有固定规律的循环周期;若检测到所述权重分配结果具有固定规律的所述循环周期,所述循环周期包括l个统计周期,且所述循环周期重复出现次数大于等于设定次数,且当前记录的下个统计周期的所述带宽权重符合所述循环周期的初始周期的所述权重分配结果,则根据所述循环周期的固定规律提前设定下l个统计周期的所述带宽权重;否则按步骤s4中记录的所述权重分配结果执行下个统计周期的权重分配。

29、上述实施例有益效果在于:在每个统计周期内,根据权重仲裁模块的记录,预测下一个循环周期的各统计周期的权重分配,可提高带宽分配响应速度,减少跨统计周期的计算时间开销。

30、本发明的实施例至少具有如下技术效果:

31、第一、该带宽优化装置通过权重仲裁模块周期性动态调整各前端模块访问memory的带宽权重,提高memory带宽的动态分配能力,提升soc系统中各模块访问memory的响应速度,并减少因带宽分配不均导致的性能降低甚至硬件模块挂机的情况。

32、第二、该带宽优化装置的权重分配计算由权重仲裁的硬件单元根据实时周期性统计信息计算得到,具有响应速度快,实时性高的优点。

33、第三、该带宽优化方法可完成带宽权重下l个统计周期的预计算,使得跨统计周期间可以无缝响应带宽动态分配。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1