一种动态配置通道的总线互联系统

文档序号:856856 发布日期:2021-04-02 浏览:7次 >En<

阅读说明:本技术 一种动态配置通道的总线互联系统 (Bus interconnection system with dynamically configured channels ) 是由 方新嘉 陈雷 乐立鹏 安印龙 刘亚鹏 魏星 王佩 于 2020-12-11 设计创作,主要内容包括:本发明涉及一种动态配置通道的总线互联系统,属于总线互联结构设计领域;包括输入多路模块IN MUX、输出多路模块OUT MUX、0-m号通道模块Channel和通道控制器Channel CTRL;本发明与现有互联总线相比,可以根据需要传输的数据量动态的开启或关闭合适数据通道数目,可以实现兼顾高吞吐率和低功耗的优点。(The invention relates to a bus interconnection system for dynamically configuring a channel, belonging to the field of bus interconnection structure design; the system comprises an input multi-path module IN MUX, an output multi-path module OUT MUX, a Channel module Channel of0-m and a Channel controller Channel CTRL; compared with the existing interconnection bus, the invention can dynamically open or close the appropriate number of data channels according to the data volume to be transmitted, and can realize the advantages of high throughput rate and low power consumption.)

一种动态配置通道的总线互联系统

技术领域

本发明属于总线互联结构设计领域,涉及一种动态配置通道的总线互联系统。

背景技术

当前主流的CPU总线结构主要分为简单的单总线结构和复杂的交换矩阵。单总线结构,所有的主机设备(master)和所有的从机设备(slave)都挂载在这个总线上。常用于简单的CPU系统中,有着简单,功耗低等优点,缺点在于,各个master在访问不同slave时必须申请总线的使用权,不能同时进行。所以系统的性能较低。交换矩阵的总线结构,所有的master和所有的slave都挂载在不同的接口上,在通信过程中master和slave间建立点到点的通道。各个master在访问不同slave时可以同时进行,所以性能高。但存在功耗高情况。

发明内容

本发明解决的技术问题是:克服现有技术的不足,提出一种动态配置通道的总线互联系统,可以根据需要传输的数据量动态的开启或关闭合适数据通道数目,可以实现兼顾高吞吐率和低功耗的优点。

本发明解决技术的方案是:

一种动态配置通道的总线互联系统,包括输入多路模块IN MUX、输出多路模块OUTMUX、0-m号通道模块Channel和通道控制器Channel CTRL;其中,

输入多路模块IN MUX:内部设置有多个总线多路器和仲裁器IN MUX ARB;每个总线多路器根据仲裁器IN MUX ARB的仲裁结果,从外部0-n号主设备Master的总线中,选择对应主设备连接至输入多路模块IN MUX;

输出多路模块OUT MUX:内部设置有多个总线多路器和仲裁器OUT MUX ARB;每个总线多路器根据仲裁器OUT MUX ARB的仲裁结果,从0-m号通道模块Channel输出总线中选择1个通道模块Channel连接至对应的外部从设备Slave;

通道模块Channel:实现数据传输,并对传输数据的量进行监控,将监控结果反馈至通道控制器Channel CTRL;

通道控制器Channel CTRL:接收通道模块Channel传来的监控结果;对通道模块Channel电源或时钟关闭,实现对m+1个通道模块Channel的调度,实现关闭或开启通道模块Channel。

在上述的一种动态配置通道的总线互联系统,所述外部0-n号主设备Master的输出总线连接到输入多路模块IN MUX的总线输入M0~Mn上;输入多路模块IN MUX的总线输出InC0~InCm分别连接到通道Chanel 0~m的总线输入上;0-m号通道模块Channel的总线输出连接到输出多路模块OUT MUX的总线输入OuC0~OuCm上;输出多路模块OUT MUX的总线输出S0~Sj输出到外部0-j号从设备Slave的输入总线上;

输入多路模块IN MUX通过仲裁器IN MUX ARB控制总线连接到互联总线控制模块Channel CTRL上;输出多路模块OUT MUX通过OUT MUX ARB控制总线连接到互联总线控制模块Channel CTRL上;

通道控制器Channel CTRL通过Pof0-m个电源控制线路分别连接到通道模块Channel 0~m的电源管理模块的输入接口上;实现控制各通道模块Channel电源的打开或关闭;

通道控制器Channel CTRL通过Chn0~m个时钟控制线路分别连接到通道模块Channel 0~m的时钟门控引脚上;实现控制各通道模块Channel时钟的打开或关闭;

通道控制器Channel CTRL通过Mon 0~m个流量监控线路分别连接到通道模块Channel 0~m的流量监控模块的接口上;实现对各通道模块Channel流量的监控。

在上述的一种动态配置通道的总线互联系统,所述通道模块Channel包括电源控制模块Power、通道流量监控模块Monitor和总线通道模块Bus Channel;通道控制模块Channel CTRL的电源控制线路连接到电源控制模块Power;通道控制模块Channel CTRL的时钟控制线路Chn连接总线通道模块Bus Channel上;总线通道模块Bus Channel的输入和输出缓存的用量输出连接到通道流量监控模块Monitor;通道流量监控模块Monitor通过流量监控线路Mon连接到通道控制器Channel CTRL上。

在上述的一种动态配置通道的总线互联系统,所述通道控制器Channel CTRL包括配置寄存器REG、状态机FSM、控制器模块CTRL、时钟模块TIME和全局历史缓存模块GHB;

外部配置信息进入配置寄存器REG上,配置寄存器REG通过信号线连接到控制器模块CTRL上;配置寄存器REG通过信号线连接到状态机FSM上;状态机FSM模块通过信号线连接到控制器上CTRL上;控制器CTRL模块通过IN_MUX_ARB总线连接到输入多路模块IN MUX模块中的仲裁器IN MUX ARB上;控制器模块CTRL模块通过OUT_MUX_ARB总线连接到输出多路模块OUT MUX中的仲裁器OUT MUX ARB上;控制器模块CTRL通过电源控制线路Pof 0-m分别连接到通道模块Channel 0-m的电源控制模块POWER上;控制器模块CTRL通过时钟控制线路Chn 0-m连接到通道模块Channel 0-m的总线通道Bus Channel上;控制器模块CTRL通过电源控制线路Pof 0-m连接通道模块Channel 0-m的通道流量监控模块Monitor上;控制器模块CTRL通过信号线连接到时钟模块TIME上;控制器模块CTRL通过信号线连接到全局历史缓存模块GHB上。

在上述的一种动态配置通道的总线互联系统,所述总线互连系统包括3种工作模式,分别为低功耗工作模式、高性能工作模式和动态配置工作模式;总线互连系统启动后默认进入高性能工作模式;通过配置总线写入配置后再次选择进入低功耗工作模式、动态配置工作模式或高性能工作模式。

在上述的一种动态配置通道的总线互联系统,所述低功耗工作模式为:通道0开启,通道1~m关闭;m为最大通道数,通道控制模块Channel CTRL调度所有流量走通道0;

所述高性能工作模式:通道0~m全部开启,每条通道对应一个主设备Master;m以主设备Master为最小数为准;

通道0-j全部开启,每条通道对应一个从设备Slave;j以从设备Slave最小数为准。

在上述的一种动态配置通道的总线互联系统,所述动态配置工作模式为:通道控制器Channel CTRL根据各个通道模块Channel的通道流量监控模块Monitor传过来的流量统计信息,将流量低于预设下阈值的待关闭通道模块Channel上的流量调度到其他通道模块Channel上,在待关闭通道模块Channel上的流量清零后,关闭通道模块Channel中BUSChannel的时钟;并根据配置寄存器REG中是否关闭通道电源的配置信息来关闭通道模块Channel的电源;当待调整的通道模块Channel上的流量超过预设上限时,通道控制器Channel CTRL监控其他通道模块Channel上的流量,当其他通道模块Channel上的流量比较低,则待调整的通道模块Channel上的流量调度到其他通道模块Channel上;当其他通道模块Channel上的流量也比较高时,通道控制器Channel CTRL查询是否存在被关闭的通道模块Channel,如果有则开启通道模块Channel,并将流量调度到新开启的通道模块Channel上,如果没有则在开启通道模块Channel间进行流量调度保持通道模块Channel间的流量平衡,如此循环;通过配置寄存器REG中的配置信息,通道控制器Channel CTRL从时钟模块TIME和全局历史缓存GHB中读取信息,周期性开启或关闭部分通道。

本发明与现有技术相比的有益效果是:

(1)本发明有着多个数据通道,在高性能的设置下,可以实现不同master同时访问不同的slave实现总线级的并行;

(2)本发明相比现有的交换矩阵可以根据通道上的数据流量及时减少通道数目从而实现低功耗;

(3)本发明被减少的通道可以实现断电,从而减少了电路的静态功耗;

(4)本发明动态通道模式下,根据会统计通道的开启情况,并根据周期情况提前开启通道。

附图说明

图1为本发明总线互连系统示意图;

图2为本发明通道模块Channel示意图;

图3为本发明通道控制器Channel CTRL示意图。

具体实施方式

下面结合实施例对本发明作进一步阐述。

本发明提供的总线互联结构,吸取了单总线和交互矩阵的优点,借助工程技术实现了两种总线结构的优缺点之间的切换,并实现一种平衡。使得CPU系统同时兼顾了高性能和低功耗。

动态配置通道的总线互联系统,如图1所示,包括输入多路模块IN MUX、输出多路模块OUT MUX、0-m号通道模块Channel和通道控制器Channel CTRL;其中,

输入多路模块IN MUX:内部设置有多个总线多路器和仲裁器IN MUX ARB;每个总线多路器根据仲裁器IN MUX ARB的仲裁结果,从外部0-n号主设备Master的总线中,选择对应主设备连接至输入多路模块IN MUX;

输出多路模块OUT MUX:内部设置有多个总线多路器和仲裁器OUT MUX ARB;每个总线多路器根据仲裁器OUT MUX ARB的仲裁结果,从0-m号通道模块Channel输出总线中选择1个通道模块Channel连接至对应的外部从设备Slave;

通道模块Channel:实现数据传输,并对传输数据的量进行监控,将监控结果反馈至通道控制器Channel CTRL;

通道控制器Channel CTRL:接收通道模块Channel传来的监控结果;对通道模块Channel电源或时钟关闭,实现对m+1个通道模块Channel的调度,实现关闭或开启通道模块Channel。

外部0-n号主设备Master的输出总线连接到输入多路模块IN MUX的总线输入M0~Mn上;输入多路模块IN MUX的总线输出InC0~InCm分别连接到通道Chanel 0~m的总线输入上;0-m号通道模块Channel的总线输出连接到输出多路模块OUT MUX的总线输入OuC0~OuCm上;输出多路模块OUT MUX的总线输出S0~Sj输出到外部0-j号从设备Slave的输入总线上;

输入多路模块IN MUX通过仲裁器IN MUX ARB控制总线连接到互联总线控制模块Channel CTRL上;输出多路模块OUT MUX通过OUT MUX ARB控制总线连接到互联总线控制模块Channel CTRL上;

通道控制器Channel CTRL通过Pof0-m个电源控制线路分别连接到通道模块Channel 0~m的电源管理模块的输入接口上;实现控制各通道模块Channel电源的打开或关闭;

通道控制器Channel CTRL通过Chn0~m个时钟控制线路分别连接到通道模块Channel 0~m的时钟门控引脚上;实现控制各通道模块Channel时钟的打开或关闭;

通道控制器Channel CTRL通过Mon 0~m个流量监控线路分别连接到通道模块Channel 0~m的流量监控模块的接口上;实现对各通道模块Channel流量的监控。

如图2所示,通道模块Channel包括电源控制模块Power、通道流量监控模块Monitor和总线通道模块Bus Channel;通道控制模块Channel CTRL的电源控制线路连接到电源控制模块Power;通道控制模块Channel CTRL的时钟控制线路Chn连接总线通道模块Bus Channel上;总线通道模块Bus Channel的输入和输出缓存的用量输出连接到通道流量监控模块Monitor;通道流量监控模块Monitor通过流量监控线路Mon连接到通道控制器Channel CTRL上。

通道控制模块Channel CTRL过来的Pof信号线连接到Power模块控制当前通道所在电源域的开关,通道控制模块Channel CTRL过来的Chn信号线连接总线通道Bus Channel上,可以控制数据通道Bus Channel的时钟关闭。数据通道Bus Channel的输入和输出缓存连接到流量监控模块Monitor上。用于监控数据通道Bus Channel上的数据流量和正在传输的流量。

如图3所示,通道控制器Channel CTRL包括配置寄存器REG、状态机FSM、控制器模块CTRL、时钟模块TIME和全局历史缓存模块GHB;

外部配置信息进入配置寄存器REG上,配置寄存器REG通过信号线连接到控制器模块CTRL上;配置寄存器REG通过信号线连接到状态机FSM上;状态机FSM模块通过信号线连接到控制器上CTRL上;控制器CTRL模块通过IN_MUX_ARB总线连接到输入多路模块IN MUX模块中的仲裁器IN MUX ARB上;控制器模块CTRL模块通过OUT_MUX_ARB总线连接到输出多路模块OUT MUX中的仲裁器OUT MUX ARB上;控制器模块CTRL通过电源控制线路Pof 0-m分别连接到通道模块Channel 0-m的电源控制模块POWER上;控制器模块CTRL通过时钟控制线路Chn 0-m连接到通道模块Channel 0-m的总线通道Bus Channel上;控制器模块CTRL通过电源控制线路Pof 0-m连接通道模块Channel 0-m的通道流量监控模块Monitor上;控制器模块CTRL通过信号线连接到时钟模块TIME上;控制器模块CTRL通过信号线连接到全局历史缓存模块GHB上。

配置信息通过配置总线Config连接到配置寄存器REG上,配置寄存器REG分别通过一组信号线连接到控制器模块CTRL和状态机FSM上。将配置信息分别传输给控制器CTRL和状态机FSM。状态机FSM模块通过一组信号线连接到控制器上CTRL上。控制器CTRL模块通过IN_MUX_ARB总线连接到输入多路IN MUX模块中的各个ARB上。控制器CTRL模块通过OUT_MUX_ARB总线连接到输出多路OUT MUX模块中的各个ARB上。控制器CTRL模块通过信号线Pof0...m连接到各个通道的电源控制模块POWER上。控制器CTRL模块通过信号线Chn 0...m连接到各个通道的总线通道Bus Channel上。控制器CTRL模块通过总线Pof 0...m连接到各个通道的监控模块上。控制器CTRL模块通过一组信号线连接到时钟模块TIME上。控制器CTRL模块通过一组信号线连接到全局历史缓存模块GHB上。

总线互连系统包括3种工作模式,分别为低功耗工作模式、高性能工作模式和动态配置工作模式;总线互连系统启动后默认进入高性能工作模式;通过配置总线写入配置后再次选择进入低功耗工作模式、动态配置工作模式或高性能工作模式。

低功耗工作模式为:通道0开启,通道1~m关闭;m为最大通道数,通道控制模块Channel CTRL调度所有流量走通道0;

所述高性能工作模式:通道0~m全部开启,每条通道对应一个主设备Master;m以主设备Master为最小数为准;

通道0-j全部开启,每条通道对应一个从设备Slave;j以从设备Slave最小数为准。

动态配置工作模式为:通道控制器Channel CTRL根据各个通道模块Channel的通道流量监控模块Monitor传过来的流量统计信息,将流量低于预设下阈值的待关闭通道模块Channel上的流量调度到其他通道模块Channel上,在待关闭通道模块Channel上的流量清零后,关闭通道模块Channel中BUS Channel的时钟;并根据配置寄存器REG中是否关闭通道电源的配置信息来关闭通道模块Channel的电源;当待调整的通道模块Channel上的流量超过预设上限时,通道控制器Channel CTRL监控其他通道模块Channel上的流量,当其他通道模块Channel上的流量比较低,则待调整的通道模块Channel上的流量调度到其他通道模块Channel上;当其他通道模块Channel上的流量也比较高时,通道控制器Channel CTRL查询是否存在被关闭的通道模块Channel,如果有则开启通道模块Channel,并将流量调度到新开启的通道模块Channel上,如果没有则在开启通道模块Channel间进行流量调度保持通道模块Channel间的流量平衡,如此循环;通过配置寄存器REG中的配置信息,通道控制器Channel CTRL从时钟模块TIME和全局历史缓存GHB中读取信息,周期性开启或关闭部分通道。

系统上电以后,总线系统起始状态是高性能模式,所有通道全部开启,加速系统的初始化。在初始化过程中系统通过配置总线向总线系统写入配置信息包括:总线系统的工作模式、总线系统动态配置所需的相关参数、通道上流量开关的上下阈值和是否锁定master/Slave使用某条通道等信息。

如果配置的总线系统的工作模式是高性能,总线系统会继续使用全部通道直到下一次配置。

如果配置的总线系统的工作模式是低功耗,总线系统会将所有的流量调度到通道0上,在其他通道上的数据传输完毕后,关闭通道。

如果配置的总线系统的工作模式是动态配置时,通道控制器Channel CTRL会根据各个通道监控模块Monitor上传过来的流量统计信息,将通道流量低于下阈值的待关闭通道上的流量调度到其他通道上,在待关闭通道上的流量清零后,会关闭通道中BUS Channel的时钟,并根据是否关闭通道电源的配置信息来关闭通道电源。在某条待调整的通道上的流量超过设定的上限时,通道控制器Channel CTRL会监控其他通道上的流量,如果其他通道上的流量比较低,则待调整的通道上的流量调度到其他通道上。如果其他通道上的流量也比较高时,通道控制器Channel CTRL会查询是否有关闭的通道,如果有则开启通道,并将流量调度过去,如果没有则保持现状。如此循环。

总线系统的流量控制是通过通道控制器Channel CTRL通过IN_MUX_ARB总线在INMUX中各个多路上的ARB中写入各个Master的权重和OUT_MUX_ARB总线在OUT MUX中各个多路上的ARB中写入各个通道的权重。如果要降低某个通道上的流量,则降低该通道对应的输入多路上部分master的写入权重直到为0,并增加输出多路上所有多路器上的ARB中该通道的权重。

由于CPU系统中的程序具有周期性,所以在通道控制器Channel CTRL设置时钟模块和全局历史缓存。通过配置对应配置寄存器,可以总线系统周期性开关某些通道。

本发明虽然已以较佳实施例公开如上,但其并不是用来限定本发明,任何本领域技术人员在不脱离本发明的精神和范围内,都可以利用上述揭示的方法和技术内容对本发明技术方案做出可能的变动和修改,因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化及修饰,均属于本发明技术方案的保护范围。

11页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:数据处理系统、存储器系统和用于操作存储器系统的方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!