一种适用于通用浮点处理器的存储管理单元及其工作方式制造技术

技术编号:16269868 阅读:39 留言:0更新日期:2017-09-22 21:32
本发明专利技术公开了一种适用于通用浮点处理器的存储管理单元及其工作方式,是应用于由主控制器单元MCU、数据接口单元NI和运算处理单元CAU构成的运算处理系统中;存储管理单元是由存储模块、交互端口模块、运算端口模块和功能配置模块组成;主控制器单元MCU向功能配置模块发送配置信息,则功能配置模块根据配置信息执行相应的存储模式,脉动模式或流模式。本发明专利技术能提高存储区的资源利用率,从而实现高性能的硬件缓存管理。

【技术实现步骤摘要】
一种适用于通用浮点处理器的存储管理单元及其工作方式
本专利技术涉及高性能数据缓存管理技术,具体地说是一种适用于多核处理器内部的通用型处理器的存储管理单元及其工作方式。
技术介绍
随着缓存管理数据量的急剧增加,对于缓存管理实现的“存储空间利用率”的要求也越来越高。传统的数据包缓存管理技术(“顺序读写”和“随机读顺序写”及“并行存储”)虽然具有各自的优点,但其存储空间利用率低下的通病使它们在进行大量数据存储时具有极大的成本开销和性能开销,成为制约系统整体性能的瓶颈。因此,在高性能数据缓存管理技术方面展开深入的研究,使数据缓存管理实现具有较高的“空间利用率”,同时兼顾“多种工作模式”、“实现成本”及“灵活性”等其它方面性能指标的要求显得尤为重要。
技术实现思路
本专利技术为克服现有专利技术的不足之处,提出了一种适用于通用浮点处理器的存储管理单元及其工作方式,以期能提高存储区的资源利用率,从而实现高性能的硬件缓存管理。本专利技术为达到上述目的所采用的技术方案是:本专利技术一种适用于通用浮点处理器的存储管理单元的特点是应用于由主控制器单元MCU、数据接口单元NI和运算处理单元CAU构成的运算处理系统中;所述存储管理单元是由存储模块、交互端口模块、运算端口模块和功能配置模块组成;所述主控制器单元MCU向所述功能配置模块发送配置信息;所述配置信息包括:源数据a的起始地址、源数据b的起始地址、结果数据的起始地址、运算模式、地址跳转模式、接受源数据时的起始地址和发送数据的起始地址;所述运算模式包括:存储模式、流模式和脉动模式;若所述运算模式为存储模式,则所述功能配置模块根据所述存储模式配置所述交互端口模块和所述运算端口模块;所述交互端口模块开始接收所述数据接口单元NI传输的源数据a和源数据b;所述交互端口模块按照所述接受源数据时的起始地址将所述源数据a和源数据b存储到所述存储模块中,直到源数据接收和存储完毕后,所述运算端口模块再根据所述源数据a的起始地址、源数据b的起始地址和地址跳转模式从所述存储模块中取出所述源数据a和源数据b并传输至所述运算处理单元CAU中;所述运算处理单元CAU完成对所述源数据a和源数据b的运算处理后,得到结果数据,并根据所述结果数据的起始地址通过所述运算端口模块存储到所述存储模块中,直到所述结果数据存储完毕后,所述交互端口模块根据所述发送数据的起始地址将所述结果数据传输至所述数据接口单元NI中,从而实现存储模式的功能;若所述运算模式为流模式,则所述功能配置模块根据所述流模式配置所述运算处理单元CAU,使得所述运算处理单元CAU确定运算类型;所述功能配置模块根据所述流模式配置所述交互端口模块和运算端口模块同时工作,并与所述存储模块一起形成同步FIFO缓冲区;所述同步FIFO缓冲区接收所述数据接口单元NI发送的源数据a和源数据b,并按照先进先出原则发送至所述运算处理单元CAU中进行运算;所述运算处理单元CAU将运算后的结果数据再通过所述同步FIFO缓冲区发送至所述数据接口单元NI中,从而实现流模式的功能;若所述运算模式为脉动模式,则所述功能配置模块根据所述脉动模式配置所述交互端口模块和所述运算端口模块;所述交互端口模块开始接收所述数据接口单元NI传输的源数据a和源数据b;所述交互端口模块按照所述接受源数据时的起始地址将所述源数据a和源数据b依次存储到所述存储模块中;同时所述运算端口模块检测到所述存储模块中存有源数据时,根据所述源数据a的起始地址、源数据b的起始地址和地址跳转模式从所述存储模块中取出已经存储的源数据a和源数据b并传输至所述运算处理单元CAU中;所述运算处理单元CAU对接收到的源数据a和源数据b进行运算处理后,得到结果数据,并根据所述结果数据的起始地址通过所述运算端口模块存储到所述存储模块中;同时,所述交互端口模块检测到所述存储模块中存有结果数据时,根据所述发送数据的起始地址将所述结果数据传输至所述数据接口单元NI中,从而实现脉动模式的功能。本专利技术一种适用于通用浮点处理器的存储管理单元的工作方式的特点是应用于由主控制器单元MCU、数据接口单元NI、存储管理单元和运算处理单元CAU构成的运算处理系统中,并按如下步骤进行:步骤1、所述主控制器单元MCU向所述存储管理单元发送配置信息;所述配置信息包括:源数据a的起始地址、源数据b的起始地址、结果数据的起始地址、运算模式、地址跳转模式、接受源数据时的起始地址和发送数据的起始地址;步骤2、所述存储管理单元判断所述运算模式是否为存储模式,若是存储模式,则执行步骤3;否则,执行步骤5;步骤3、所述存储管理单元开始接收所述数据接口单元NI传输的源数据a和源数据b;并根据所述接受源数据时的起始地址将所述源数据a和源数据b进行存储,直到源数据接收和存储完毕后,所述存储管理单元再根据所述源数据a的起始地址、源数据b的起始地址和地址跳转模式将所存储的源数据a和源数据b传输至所述运算处理单元CAU中;步骤4、所述运算处理单元CAU完成对所述源数据a和源数据b的运算处理后,得到结果数据,并根据所述结果数据的起始地址传输至所述存储管理单元中进行存储,直到所述结果数据存储完毕后,所述存储管理单元根据所述发送数据的起始地址将所述结果数据传输至所述数据接口单元NI中,从而实现存储模式的功能;步骤5、所述存储管理单元判断所述运算模式是否为流模式,若是流模式,则执行步骤6;否则,表示所述运算模式是脉动模式,并执行步骤7;步骤6、所述运算处理单元CAU确定运算类型;同时,所述存储管理单元重构为同步FIFO缓冲区,所述同步FIFO缓冲区接收所述数据接口单元NI发送的源数据a和源数据b,并按照先进先出原则发送至所述运算处理单元CAU中进行运算;所述运算处理单元CAU将运算后的结果数据再通过所述同步FIFO缓冲区发送至所述数据接口单元NI中,从而实现流模式的功能;步骤7、所述存储管理单元开始接收所述数据接口单元NI传输的源数据a和源数据b,并按照所述接受源数据时的起始地址将所述源数据a和源数据b依次进行存储;同时,根据所述源数据a的起始地址、源数据b的起始地址和地址跳转模式将已存储的源数据a和源数据b传输至所述运算处理单元CAU中;步骤8、所述运算处理单元CAU对接收到的源数据a和源数据b进行运算处理后,得到结果数据,并根据所述结果数据的起始地址发送至所述存储管理单元中进行存储;同时,所述存储管理单元根据所述发送数据的起始地址将已存储的结果数据传输至所述数据接口单元NI中,从而实现脉动模式的功能。本专利技术所述的存储管理单元的工作方式的特点也在于,在所述存储模式下,若所述存储管理单元中存储的源数据a的起始地址、源数据b的起始地址和结果数据的起始地址存在地址冲突,则按如下步骤进行冲突化解:步骤1、判断是否为源数据a的起始地址和源数据b的起始地址的地址冲突,若是,则按照所述存储管理单元接收所述源数据a的起始地址和源数据b的起始地址的先后顺序,在当前周期采纳优先的起始地址,在下一个周期采纳另一个起始地址;否则,执行步骤2;步骤2、判断是否为源数据a的起始地址和结果数据的起始地址的地址冲突,若是,则所述存储管理单元按照所述源数据a的起始地址和结果数据的起始地址的优先级,在当前周期采纳优先级高的起始地址,在本文档来自技高网...
一种适用于通用浮点处理器的存储管理单元及其工作方式

【技术保护点】
一种适用于通用浮点处理器的存储管理单元,其特征是应用于由主控制器单元MCU、数据接口单元NI和运算处理单元CAU构成的运算处理系统中;所述存储管理单元是由存储模块、交互端口模块、运算端口模块和功能配置模块组成;所述主控制器单元MCU向所述功能配置模块发送配置信息;所述配置信息包括:源数据a的起始地址、源数据b的起始地址、结果数据的起始地址、运算模式、地址跳转模式、接受源数据时的起始地址和发送数据的起始地址;所述运算模式包括:存储模式、流模式和脉动模式;若所述运算模式为存储模式,则所述功能配置模块根据所述存储模式配置所述交互端口模块和所述运算端口模块;所述交互端口模块开始接收所述数据接口单元NI传输的源数据a和源数据b;所述交互端口模块按照所述接受源数据时的起始地址将所述源数据a和源数据b存储到所述存储模块中,直到源数据接收和存储完毕后,所述运算端口模块再根据所述源数据a的起始地址、源数据b的起始地址和地址跳转模式从所述存储模块中取出所述源数据a和源数据b并传输至所述运算处理单元CAU中;所述运算处理单元CAU完成对所述源数据a和源数据b的运算处理后,得到结果数据,并根据所述结果数据的起始地址通过所述运算端口模块存储到所述存储模块中,直到所述结果数据存储完毕后,所述交互端口模块根据所述发送数据的起始地址将所述结果数据传输至所述数据接口单元NI中,从而实现存储模式的功能;若所述运算模式为流模式,则所述功能配置模块根据所述流模式配置所述运算处理单元CAU,使得所述运算处理单元CAU确定运算类型;所述功能配置模块根据所述流模式配置所述交互端口模块和运算端口模块同时工作,并与所述存储模块一起形成同步FIFO缓冲区;所述同步FIFO缓冲区接收所述数据接口单元NI发送的源数据a和源数据b,并按照先进先出原则发送至所述运算处理单元CAU中进行运算;所述运算处理单元CAU将运算后的结果数据再通过所述同步FIFO缓冲区发送至所述数据接口单元NI中,从而实现流模式的功能;若所述运算模式为脉动模式,则所述功能配置模块根据所述脉动模式配置所述交互端口模块和所述运算端口模块;所述交互端口模块开始接收所述数据接口单元NI传输的源数据a和源数据b;所述交互端口模块按照所述接受源数据时的起始地址将所述源数据a和源数据b依次存储到所述存储模块中;同时所述运算端口模块检测到所述存储模块中存有源数据时,根据所述源数据a的起始地址、源数据b的起始地址和地址跳转模式从所述存储模块中取出已经存储的源数据a和源数据b并传输至所述运算处理单元CAU中;所述运算处理单元CAU对接收到的源数据a和源数据b进行运算处理后,得到结果数据,并根据所述结果数据的起始地址通过所述运算端口模块存储到所述存储模块中;同时,所述交互端口模块检测到所述存储模块中存有结果数据时,根据所述发送数据的起始地址将所述结果数据传输至所述数据接口单元NI中,从而实现脉动模式的功能。...

【技术特征摘要】
1.一种适用于通用浮点处理器的存储管理单元,其特征是应用于由主控制器单元MCU、数据接口单元NI和运算处理单元CAU构成的运算处理系统中;所述存储管理单元是由存储模块、交互端口模块、运算端口模块和功能配置模块组成;所述主控制器单元MCU向所述功能配置模块发送配置信息;所述配置信息包括:源数据a的起始地址、源数据b的起始地址、结果数据的起始地址、运算模式、地址跳转模式、接受源数据时的起始地址和发送数据的起始地址;所述运算模式包括:存储模式、流模式和脉动模式;若所述运算模式为存储模式,则所述功能配置模块根据所述存储模式配置所述交互端口模块和所述运算端口模块;所述交互端口模块开始接收所述数据接口单元NI传输的源数据a和源数据b;所述交互端口模块按照所述接受源数据时的起始地址将所述源数据a和源数据b存储到所述存储模块中,直到源数据接收和存储完毕后,所述运算端口模块再根据所述源数据a的起始地址、源数据b的起始地址和地址跳转模式从所述存储模块中取出所述源数据a和源数据b并传输至所述运算处理单元CAU中;所述运算处理单元CAU完成对所述源数据a和源数据b的运算处理后,得到结果数据,并根据所述结果数据的起始地址通过所述运算端口模块存储到所述存储模块中,直到所述结果数据存储完毕后,所述交互端口模块根据所述发送数据的起始地址将所述结果数据传输至所述数据接口单元NI中,从而实现存储模式的功能;若所述运算模式为流模式,则所述功能配置模块根据所述流模式配置所述运算处理单元CAU,使得所述运算处理单元CAU确定运算类型;所述功能配置模块根据所述流模式配置所述交互端口模块和运算端口模块同时工作,并与所述存储模块一起形成同步FIFO缓冲区;所述同步FIFO缓冲区接收所述数据接口单元NI发送的源数据a和源数据b,并按照先进先出原则发送至所述运算处理单元CAU中进行运算;所述运算处理单元CAU将运算后的结果数据再通过所述同步FIFO缓冲区发送至所述数据接口单元NI中,从而实现流模式的功能;若所述运算模式为脉动模式,则所述功能配置模块根据所述脉动模式配置所述交互端口模块和所述运算端口模块;所述交互端口模块开始接收所述数据接口单元NI传输的源数据a和源数据b;所述交互端口模块按照所述接受源数据时的起始地址将所述源数据a和源数据b依次存储到所述存储模块中;同时所述运算端口模块检测到所述存储模块中存有源数据时,根据所述源数据a的起始地址、源数据b的起始地址和地址跳转模式从所述存储模块中取出已经存储的源数据a和源数据b并传输至所述运算处理单元CAU中;所述运算处理单元CAU对接收到的源数据a和源数据b进行运算处理后,得到结果数据,并根据所述结果数据的起始地址通过所述运算端口模块存储到所述存储模块中;同时,所述交互端口模块检测到所述存储模块中存有结果数据时,根据所述发送数据的起始地址将所述结果数据传输至所述数据接口单元NI中,从而实现脉动模式的功能。2.一种适用于通用浮点处理器的存储管理单元的工作方式,其特征是应用于由主控制器单元MCU、数据接口单元NI、存储管理单元和运算处理单元CAU构成的运算处理系统中,并按如下步骤进行:步骤1、所述主控制器单元MCU向所述存储管理单元发送配置信息;所述配置信息包括:源数据a的起始地址、源数据b的起始地址、结果数据的起始地址、运算模式、地址跳转模式、接受源数据时的起始地址和发送数据的起始地址;步骤2、所述...

【专利技术属性】
技术研发人员:宋宇鲲曲冬明王晓蕾张多利杜高明
申请(专利权)人:合肥工业大学
类型:发明
国别省市:安徽,34

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1