基于突发乱序的存储器控制器、系统及其访存调度方法

    公开(公告)号:CN101470678B

    公开(公告)日:2011-01-19

    申请号:CN200710308506.9

    申请日:2007-12-29

    Abstract: 本发明提供一种基于突发乱序访存调度的存储器控制器。该存储器控制器用于存储器访问的突发乱序访存调度,该存储器控制器包括:将从处理器而来的读写访存均以二维方式保存的读写队列模块;用于在每个存储器时钟周期从各个块中仲裁出一个突发访问的块仲裁模块;以及用于从所述各个块仲裁后的突发中选择最终的访存操作发送给存储器的事件选择模块。通过改变写队列的结构,采用本发明提出的优先级表达式进行块的突发仲裁来对访存乱序调度,以增加存储器数据带宽,减少处理器的执行时间。

    一种用于精确估计嵌入式系统中堆栈需求量的方法

    公开(公告)号:CN101876923A

    公开(公告)日:2010-11-03

    申请号:CN200910241253.7

    申请日:2009-11-27

    Abstract: 本发明提出一种用于精确估计嵌入式系统中堆栈需求量的方法,所述的方法包含如下步骤:用完整的函数调用关系图进行本地函数和每棵调用树运行时库和标准库的堆栈需求的堆栈需求量分析,并求和;确定每个优先级内各个中断程序的最大堆栈需求量并求和,并加上保存处理器状态而增加的额外堆栈需求;对以上结果求和得到单线程的最大堆栈需求;所述的完整的函数关系图,首先用控制流分析得到初步的函数关系图,然后针对间接调用函数和递归调用函数采取抽象解释算法的值分析方法进一步分析,得到完整的函数调用关系图,对于无法分析的函数调用需要用户进行注释。针对多线程重复单线程步骤并将所有求和,最后在加上操作系统的堆栈需求量即系统总堆栈需求。

    一种用于动态管理片上指令便签存储器的方法

    公开(公告)号:CN101853183A

    公开(公告)日:2010-10-06

    申请号:CN201010178169.8

    申请日:2010-05-14

    CPC classification number: Y02D10/13 Y02D10/24

    Abstract: 本发明提出一种用于动态管理片上指令便签存储器的方法,所述的方法包含如下步骤:对高级语言源程序进行基于典型输入的剖面分析,得到应用程序的运行信息;对源程序进行控制流分析,得到程序的控制流图;根据程序运行信息和控制流图,识别程序中的候选程序迁移点;建立收益代价模型,计算将程序基本块动态迁移到片上获得的初始性能收益;根据初始性能收益,同时结合便签存储器的可用空闲存储空间、程序基本块的生存期、迁移操作的开销等因素,决定是否进行程序块动态迁移;在有性能收益的前提下,才进行程序块动态迁移即在程序迁移点处插入进行程序块迁移的指令,将程序块从片外动态迁移到片上。本发明提升了嵌入式系统性能、降低嵌入式系统功耗。

    一种优化堆栈空间的寄存器分配方法

    公开(公告)号:CN101710291B

    公开(公告)日:2012-12-12

    申请号:CN200910241252.2

    申请日:2009-11-27

    Abstract: 本发明提出一种优化堆栈空间的寄存器分配方法,所述的方法包含以下步骤:寄存器分配器对程序中间文件进行分析,得到数据流图;根据数据流图构造程序变量的干涉图;对干涉图进行优化,消除假干涉边;对干涉图试图着色;如果此步顺利,将没有变量溢出,寄存器分配结束;否则进行下一步;对干涉图进行删减,将优先级别低的变量溢出到堆栈中;给优先级最高的虚拟寄存器分配实际物理寄存器号;针对步骤5)中的溢出节点,插入相应溢出代码,查询步骤3)的精确干涉图得到为不干涉的溢出变量,分配相同的堆栈偏移;所述的消除假干涉边的方法:对于干涉的两个变量,进一步分析对于推断寄存器不相交的干涉变量,删除两个变量的连线,消除假干涉边。

    一种优化堆栈空间的寄存器分配方法

    公开(公告)号:CN101710291A

    公开(公告)日:2010-05-19

    申请号:CN200910241252.2

    申请日:2009-11-27

    Abstract: 本发明提出一种优化堆栈空间的寄存器分配方法,所述的方法包含以下步骤:1.寄存器分配器对程序中间文件进行分析,得到数据流图;2.根据数据流图构造程序变量的干涉图;3.对干涉图进行优化,消除假干涉边;4.对干涉图试图着色;如果此步顺利,将没有变量溢出,寄存器分配结束;否则进行下一步;5.对干涉图进行删减,将优先级别低的变量溢出到堆栈中;6.给优先级最高的虚拟寄存器分配实际物理寄存器号;针对步骤5)中的溢出节点,插入相应溢出代码,查询步骤3)的精确干涉图得到为不干涉的溢出变量,分配相同的堆栈偏移;所述的消除假干涉边的方法:对于干涉的两个变量,进一步分析对于推断寄存器不相交的干涉变量,删除两个变量的连线,消除假干涉边。

    基于突发乱序的存储器控制器、系统及其访存调度方法

    公开(公告)号:CN101470678A

    公开(公告)日:2009-07-01

    申请号:CN200710308506.9

    申请日:2007-12-29

    Abstract: 本发明提供一种基于突发乱序访存调度的存储器控制器。该存储器控制器用于存储器访问的突发乱序访存调度,该存储器控制器包括:将从处理器而来的读写访存均以二维方式保存的读写队列模块;用于在每个存储器时钟周期从各个块中仲裁出一个突发访问的块仲裁模块;以及用于从所述各个块仲裁后的突发中选择最终的访存操作发送给存储器的事件选择模块。通过改变写队列的结构,采用本发明提出的优先级表达式进行块的突发仲裁来对访存乱序调度,以增加存储器数据带宽,减少处理器的执行时间。

    一种用于动态管理片上指令便签存储器的方法

    公开(公告)号:CN101853183B

    公开(公告)日:2012-11-21

    申请号:CN201010178169.8

    申请日:2010-05-14

    CPC classification number: Y02D10/13 Y02D10/24

    Abstract: 本发明提出一种用于动态管理片上指令便签存储器的方法,所述的方法包含如下步骤:对高级语言源程序进行基于典型输入的剖面分析,得到应用程序的运行信息;对源程序进行控制流分析,得到程序的控制流图;根据程序运行信息和控制流图,识别程序中的候选程序迁移点;建立收益代价模型,计算将程序基本块动态迁移到片上获得的初始性能收益;根据初始性能收益,同时结合便签存储器的可用空闲存储空间、程序基本块的生存期、迁移操作的开销等因素,决定是否进行程序块动态迁移;在有性能收益的前提下,才进行程序块动态迁移即在程序迁移点处插入进行程序块迁移的指令,将程序块从片外动态迁移到片上。本发明提升了嵌入式系统性能、降低嵌入式系统功耗。

Patent Agency Ranking