本发明专利技术公开了一种面向功耗温度的动静态相结合的NoC实时监测配置电路,其特征是包括:下行模块、定时模块、配置模块、收集模块、X个下行打包模块、(X×Y)个监测模块、上行模块、DDR用户接口模块。本发明专利技术能动态地监测并收集各个通讯节点的通讯量,动态地配置NoC各个通讯节点的通讯任务,从而保证NoC各个通信节点的通讯量均衡,避免因NoC局部通讯量过大而产生的局部“热点”,进而提高NoC的整体性能。
【技术实现步骤摘要】
本专利技术属于集成电路片上网络的通信
,尤其涉及一种面向功耗温度的动静态相结合的NoC实时监测配置电路。
技术介绍
片上网络(Network-on-Chip,NoC)替代传统总线结构的改变虽然一定程度上克服了传统结构带来的各种问题,但是随着IP(IntellectualProperty)核的增多和通讯量的提升,随着芯片体积的减小和整体性能的提高,NoC整体性能成为设计的焦点,当通讯数据在NoC中传输时,导致NoC局部通讯节点通讯量过高,势必导致芯片局部温度升高,高温使得芯片的性能受到影响甚至可能损坏器件,这在很大程度上削弱了NoC的诸多优势,直接影响到NoC系统的性能,因此,降低NoC局部通讯节点的通讯量很有必要。现有技术当中,虽已实现了对NoC的可监测和可配置,如2010年的“可配置可监测NoC原型平台的研究”,但文中“可监测”是对吞吐率和延时的监测,“可配置”是对NoC自身的参数(如缓存FIFO的深度、路由算法、输出仲裁算法)的配置,此方法的不足之处在于,1、只能监测NoC总体的通讯量,无法监测NoC各个节点的通讯量,只能得知NoC总体的性能和通讯状况,无法得知NoC各个节点的具体性能和通讯状况;2、在实现可配置的同时可能造成通讯任务较集中从而使单个节点的通讯量过大,从而产生局部热点,影响芯片的性能。
技术实现思路
本专利技术为克服现有NoC大量数据传输的芯片局部热点问题,提出了一种面向功耗温度的NoC实时监测配置电路,以期能动态地监测并收集各个通讯节点的通讯量,并动态地配置NoC各个通讯节点的通讯任务,从而保证NoC各个通信节点的通讯量均衡,避免因NoC局部通讯量过大而产生的局部“热点”,进而提高NoC的整体性能。本专利技术为达到上述目的所采用的技术方案是:本专利技术一种面向功耗温度的NoC实时监测配置电路,所述NoC是由通讯节点及计算节点组成的片上网络,假设所述NoC共有N=X×Y个通讯节点,X表示所述NoC的行数,Y表示所述NoC的列数,每个通讯节点有北、东、南、西、本地五个方向的输入输出通道;1≤k≤N,其特点是:所述NoC实时监测配置电路设置在网口与所述NoC之间,并包括:上行模块、下行模块、定时模块、配置模块、收集模块、Y个下行打包模块、X×Y个监测模块、DDR用户接口模块;所述X×Y个监测模块分别与X×Y个通讯节点的输出通道相连接;所述下行模块接收上位机通过网口发送的数据包,并存储到自身的FIFO中,再从自身FIFO中读取数据包进行解析和判断,得到所述数据包中携带的命令类型,若所述命令类型为定时命令,则解析出所述数据包中的定时标志后,发送给所述定时模块;若所述命令类型为配置命令,则截取所述数据包中的低位配置数据,并发送给所述配置模块,若所述命令类型为读取DDR命令,则产生一个读取DDR标志,并发送给所述上行模块和所述DDR用户接口模块;所述配置模块接收所述低位配置数据,并判断所述低位配置数据携带的源节点地址的大小,若源节点地址为n,1≤n≤Y,则将所述低位配置数据发送给相应的第n个下行打包模块;所述第n个下行打包模块接收所述配置模块的低位配置数据,并存入自身的FIFO中,再从自身FIFO中读取所述低位配置数据并打包成符合网络传输协议的数据包后,发送给NoC进行处理,由计算节点处理完成之后产生配置完成标志并发送给配置模块;所述配置模块接收所述NoC中计算节点发送的配置完成标志后,产生一个开始信号,并发送给所述定时模块和NoC中每个计算节点;所述定时模块根据所接收的定时标志选择定时时间,并在接收到所述开始信号后开始计时,直到计时时间等于所选择的定时时间时,产生一个收集信号并发送给所述X×Y个监测模块;所述X×Y个监测模块接收所述定时模块的收集信号后,将所述定时时间内统计的数据通讯量发送给所述收集模块;所述收集模块接收所述监测模块的数据通讯量并存储在自身的FIFO中,直到所有的数据通讯量都存储完毕后,产生一个准备好信号并发送给所述上行模块;所述上行模块接收所述收集模块的准备好信号后,产生一个读取所述收集模块的FIFO的收集读信号并发送给所述收集模块;所述收集模块接收到所述上行模块的读信号后,将定时时间内统计的数据通讯量分别发送给所述上行模块和所述DDR用户接口模块;所述上行模块接收所述收集模块发送的数据通讯量,并存储到自身的FIFO中,并通过网口将数据通讯量发送给上位机,从而实现NoC的实时配置和数据通讯量的实时监测;所述DDR用户接口模块接收所述收集模块发送的数据通讯量,并存储在自身的DDR写FIFO中,当DDR初始化完成后把DDR写FIFO里的数据通讯量写进DDR控制器中;若上位机未接收到数据通讯量,则所述上行模块接收所述下行模块的读取DDR标志后产生一个DDR读FIFO信号,发送给所述DDR用户接口模块;所述DDR用户接口模块接收到所述下行模块发送的读取DDR标志和所述上行模块发送DDR读FIFO信号时,把DDR控制器中存储的数据通讯量读出,并通过所述DDR用户接口模块的DDR读FIFO,把数据通讯量发送给所述上行模块;所述上行模块通过所述网口将所述数据通讯量发送给所述上位机,从而检测是所述收集模块未成功收集数据还是上位机未成功接收数据。本专利技术所述的NoC实时监测配置电路的特点也在于,所述定时模块包括:临时寄存器、时间选择器和时间计数器;所述临时寄存器根据上位机通过网口发送的定时命令,寄存数据包中的定时标志;所述时间选择器根据所述临时寄存器中的数据选择定时时间;所述时间计数器根据所述配置模块发送的开始信号进行计数,直到计数器的值等于所述时间寄存器选择的定时时间后,产生所述收集信号。所述配置模块包括:Y个配置数据寄存器、Y个写使能寄存器和X×Y个配置表寄存器;所述任意一个配置数据寄存器根据所述配置模块对低位配置数据中低位源节点地址的判断,对将要输出给相应下行打包模块的配置数据进行寄存;所述任意一个写使能寄存器根据所述配置模块对低位配置数据中低位源节点地址的判断,对相应下行打包模块的FIFO写使能信号进行寄存;所述任意一个配置表寄存器在复位时将配置表寄存器的值设为高电平,并根据所述配置模块对低位配置数据中低位源节点地址的判断,设置自身配置表寄存器为低电平,直到所述配置模块接收到所述NoC内部每个计算节点的配置完成标志后产生开始信号后,将自身配置表寄存器值设为高电平,从而完成对NoC的重新配置。所述收集模块包括:5(X×Y)个临时寄存器、一号计数器和二号计数器;所述任意一个临时寄存器用于寄存东、南、西、北和本地的输出通道中相应通讯节点的数据通讯量;所述一号计数器控制所述收集模块将接收到的数据通讯量写进相应的临时寄存器中,所述二号计数器控制临时寄存器中数据通讯量写进所述收集模块的FIFO中,等待全部数据通讯量写进所述收集模块的FIFO,则将准备好信号拉高。所述任意一个监测模块包括:5个A位的数据临时寄存器Q、5个B位的数据通讯量计数器、5个B位的数据通讯量计数寄存器和C位的通讯量输出寄存器;所述5个A位的数据临时寄存器Q寄存上一周期的NoC中东、南、西、北和本地方向发送给所述监测模块的数据,再将5个A位的临时寄存器Q中存储的上一周期的数据取出与当前周期输入的数据相比较,若不相等,则产生相应本文档来自技高网...
【技术保护点】
一种面向功耗温度的NoC实时监测配置电路,所述NoC是由通讯节点及计算节点组成的片上网络,假设所述NoC共有N=X×Y个通讯节点,X表示所述NoC的行数,Y表示所述NoC的列数,每个通讯节点有北、东、南、西、本地五个方向的输入输出通道;1≤k≤N,其特征是:所述NoC实时监测配置电路设置在网口与所述NoC之间,并包括:上行模块、下行模块、定时模块、配置模块、收集模块、Y个下行打包模块、X×Y个监测模块、DDR用户接口模块;所述X×Y个监测模块分别与X×Y个通讯节点的输出通道相连接;所述下行模块接收上位机通过网口发送的数据包,并存储到自身的FIFO中,再从自身FIFO中读取数据包进行解析和判断,得到所述数据包中携带的命令类型,若所述命令类型为定时命令,则解析出所述数据包中的定时标志后,发送给所述定时模块;若所述命令类型为配置命令,则截取所述数据包中的低位配置数据,并发送给所述配置模块,若所述命令类型为读取DDR命令,则产生一个读取DDR标志,并发送给所述上行模块和所述DDR用户接口模块;所述配置模块接收所述低位配置数据,并判断所述低位配置数据携带的源节点地址的大小,若源节点地址为n,1≤n≤Y,则将所述低位配置数据发送给相应的第n个下行打包模块;所述第n个下行打包模块接收所述配置模块的低位配置数据,并存入自身的FIFO中,再从自身FIFO中读取所述低位配置数据并打包成符合网络传输协议的数据包后,发送给NoC进行处理,由计算节点处理完成之后产生配置完成标志并发送给配置模块;所述配置模块接收所述NoC中计算节点发送的配置完成标志后,产生一个开始信号,并发送给所述定时模块和NoC中每个计算节点;所述定时模块根据所接收的定时标志选择定时时间,并在接收到所述开始信号后开始计时,直到计时时间等于所选择的定时时间时,产生一个收集信号并发送给所述X×Y个监测模块;所述X×Y个监测模块接收所述定时模块的收集信号后,将所述定时时间内统计的数据通讯量发送给所述收集模块;所述收集模块接收所述监测模块的数据通讯量并存储在自身的FIFO中,直到所有的数据通讯量都存储完毕后,产生一个准备好信号并发送给所述上行模块;所述上行模块接收所述收集模块的准备好信号后,产生一个读取所述收集模块的FIFO的收集读信号并发送给所述收集模块;所述收集模块接收到所述上行模块的读信号后,将定时时间内统计的数据通讯量分别发送给所述上行模块和所述DDR用户接口模块;所述上行模块接收所述收集模块发送的数据通讯量,并存储到自身的FIFO中,并通过网口将数据通讯量发送给上位机,从而实现NoC的实时配置和数据通讯量的实时监测;所述DDR用户接口模块接收所述收集模块发送的数据通讯量,并存储在自身的DDR写FIFO中,当DDR初始化完成后把DDR写FIFO里的数据通讯量写进DDR控制器中;若上位机未接收到数据通讯量,则所述上行模块接收所述下行模块的读取DDR标志后产生一个DDR读FIFO信号,发送给所述DDR用户接口模块;所述DDR用户接口模块接收到所述下行模块发送的读取DDR标志和所述上行模块发送DDR读FIFO信号时,把DDR控制器中存储的数据通讯量读出,并通过所述DDR用户接口模块的DDR读FIFO,把数据通讯量发送给所述上行模块;所述上行模块通过所述网口将所述数据通讯量发送给所述上位机,从而检测是所述收集模块未成功收集数据还是上位机未成功接收数据。...
【技术特征摘要】
1.一种面向功耗温度的NoC实时监测配置电路,所述NoC是由通讯节点及计算节点组成的片上网络,假设所述NoC共有N=X×Y个通讯节点,X表示所述NoC的行数,Y表示所述NoC的列数,每个通讯节点有北、东、南、西、本地五个方向的输入输出通道;1≤k≤N,其特征是:所述NoC实时监测配置电路设置在网口与所述NoC之间,并包括:上行模块、下行模块、定时模块、配置模块、收集模块、Y个下行打包模块、X×Y个监测模块、DDR用户接口模块;所述X×Y个监测模块分别与X×Y个通讯节点的输出通道相连接;所述下行模块接收上位机通过网口发送的数据包,并存储到自身的FIFO中,再从自身FIFO中读取数据包进行解析和判断,得到所述数据包中携带的命令类型,若所述命令类型为定时命令,则解析出所述数据包中的定时标志后,发送给所述定时模块;若所述命令类型为配置命令,则截取所述数据包中的低位配置数据,并发送给所述配置模块,若所述命令类型为读取DDR命令,则产生一个读取DDR标志,并发送给所述上行模块和所述DDR用户接口模块;所述配置模块接收所述低位配置数据,并判断所述低位配置数据携带的源节点地址的大小,若源节点地址为n,1≤n≤Y,则将所述低位配置数据发送给相应的第n个下行打包模块;所述第n个下行打包模块接收所述配置模块的低位配置数据,并存入自身的FIFO中,再从自身FIFO中读取所述低位配置数据并打包成符合网络传输协议的数据包后,发送给NoC进行处理,由计算节点处理完成之后产生配置完成标志并发送给配置模块;所述配置模块接收所述NoC中计算节点发送的配置完成标志后,产生一个开始信号,并发送给所述定时模块和NoC中每个计算节点;所述定时模块根据所接收的定时标志选择定时时间,并在接收到所述开始信号后开始计时,直到计时时间等于所选择的定时时间时,产生一个收集信号并发送给所述X×Y个监测模块;所述X×Y个监测模块接收所述定时模块的收集信号后,将所述定时时间内统计的数据通讯量发送给所述收集模块;所述收集模块接收所述监测模块的数据通讯量并存储在自身的FIFO中,直到所有的数据通讯量都存储完毕后,产生一个准备好信号并发送给所述上行模块;所述上行模块接收所述收集模块的准备好信号后,产生一个读取所述收集模块的FIFO的收集读信号并发送给所述收集模块;所述收集模块接收到所述上行模块的读信号后,将定时时间内统计的数据通讯量分别发送给所述上行模块和所述DDR用户接口模块;所述上行模块接收所述收集模块发送的数据通讯量,并存储到自身的FIFO中,并通过网口将数据通讯量发送给上位机,从而实现NoC的实时配置和数据通讯量的实时监测;所述DDR用户接口模块接收所述收集模块发送的数据通讯量,并存储在自身的DDR写FIFO中,当DDR初始化完成后把DDR写FIFO里的数据通讯量写进DDR控制器中;若上位机未接收到数据通讯量,则所述上行模块接收所述下行模块的读取DDR标志后产生一个DDR读FIFO信号,发送给所述DDR用户接口模块;所述DDR用户接口模块接收到所述下行模块发送的读取DDR标志和所述上行模块...
【专利技术属性】
技术研发人员:杜高明,马世碧,李向阳,张多利,宋宇鲲,尹勇生,
申请(专利权)人:合肥工业大学,
类型:发明
国别省市:安徽;34
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。