CN106155946A - 基于信息推送的信息系统和方法 - Google Patents
基于信息推送的信息系统和方法 Download PDFInfo
- Publication number
- CN106155946A CN106155946A CN201510154529.3A CN201510154529A CN106155946A CN 106155946 A CN106155946 A CN 106155946A CN 201510154529 A CN201510154529 A CN 201510154529A CN 106155946 A CN106155946 A CN 106155946A
- Authority
- CN
- China
- Prior art keywords
- address
- address generator
- processor
- information processing
- instruction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种信息处理系统和方法,由独立的地址产生器产生存储器地址访问存储器,读取信息供处理器执行,减少处理器等待信息的时间。
Description
技术领域
本发明涉及计算机,通讯及集成电路领域。特别涉及一种信息处理系统、信息处理方法及存储系统。
背景技术
存储程序计算机中的处理器从存储器中读取指令或数据供CPU执行,执行的结果送回存储器中存储。图1是现有的存储程序计算机的一个简化框图,其中处理器12包含了执行单元及控制单元,12产生地址经总线11访问存储器10,10根据11上地址经总线13向02提供信息,此处及以下所述信息包括计算机指令及数据。处理器12的执行结果数据也经总线13被存储回10。图1中虚线以上为存储器及其附属逻辑,此后简称为存储系统;虚线以下为处理器及其附属逻辑,此后简称为处理系统。此后存储系统与处理系统合称信息系统或计算机。计算机的输入及输出单元在图1中及本公开的其他实施例中为便于说明被省略。随着技术的进步,存储器的容量增大,其访问延迟增大,存储器访问的通道延迟也增大;而处理器的执行速度却增快,因此存储器访问延迟日益成为计算机性能提高的严重瓶颈。在此存储器访问延迟包括存储器件内部的访问延迟;及存储器间与处理器间的传输通道延迟,比如复数个芯片间在电路板或共用基底上或硅片通孔TSV的传输延迟,中间层次芯片如北桥的延迟,多个存储芯片间接力串接的延迟,因传输格式转换导致的延迟,因通信协议导致的延迟,甚或远距通讯信道上的延迟,例如网络、无线通讯的延迟等。
因此,存储程序计算机使用缓存器以掩盖存储器访问延迟以缓解此一瓶颈。图2是现有的使用缓存器的存储程序计算机的简化示意图,其中处理器12包含了执行单元及控制单元,其中可以包含有高层次的缓存器也可以不包含;14为处理系统中存储层次结构最低的缓存器的标签单元,即最后层次缓存器(LastLevel Cache,以下简称LLC)的标签单元;16为LLC的数据存储器RAM。12产生地址11送到14及16,如地址11与14中存储的标签匹配,则16将相应的数据经总线13直接送到12供执行,如此避免了访问存储器10的延迟;如地址11与14中存储的标签不匹配,则将地址11经总线17送往存储系统访问存储器10,读取缓存块经总线15将相应的数据送到处理系统以填充16,将16的输出或将总线15上的数据旁路经13送到12供执行。12的执行结果经13被存储回16,并根据缓存器16的写回规则经总线15写回存储系统的存储器10。在图2的信息系统中,当地址11与LLC中标签单元14中的标签不匹配时,则存储器访问延迟仍然无法掩盖,且随着技术的进步,该延迟日益成为计算机性能提升的瓶颈。本发明提出的方法与系统装置能直接解决上述或其他的一个或多个困难。
发明内容
本发明的目的在于提供一种信息处理系统、信息处理方法及存储系统,以提高系统运行速度。
为此,本发明提供了一种信息处理系统,包括:
存储器,用以存储信息并根据收到的地址输出当前信息块;
地址产生器,用以根据信息块产生地址并向存储器提供地址,所述信息块为存储器发出的当前信息块或地址产生器存储的信息块;
处理器,用以获取当前信息块并处理信息。
可选的,在所述的信息处理系统中,所述地址产生器至少能处理所述处理器的部分功能;所述部分功能至少包括部分分支判断功能。
可选的,在所述的信息处理系统中,所述地址产生器通过如下产生方法一产生地址:
产生方法一、所述地址产生器至少具有所述处理器的部份地址产生功能,所述地址产生器处理所述信息块以产生地址。
可选的,在所述的信息处理系统中,所述地址产生器含有缓存器,所述地址产生器并对产生的地址进行筛选,其中,向存储器提供的地址为筛选通过的地址,所述地址产生器利用如下方法对产生的地址进行筛选:
判断产生方法一所产生的地址在地址产生器的缓存中是否匹配,若否,则该产生的地址通过筛选。
可选的,在所述的信息处理系统中,所述处理器中含有缓存器,所述处理器中的缓存器与所述地址产生器中的缓存器其组织方式与替换方式一致。
可选的,在所述的信息处理系统中:
所述地址产生器与所述处理器中功能较少的一个能执行的全部指令称为有效指令;
结果指所述地址产生器或所述处理器执行指令所产生的执行结果;
完全由执行有效指令产生的结果为有效结果。
可选的,在所述的信息处理系统中:
若所述地址产生器产生的分支判断和分支目标地址是有效结果,则所述地址产生器独立完成分支操作;
若所述地址产生器产生的分支判断和/或分支目标地址不是有效结果,所述则地址产生器基于所述处理器提供的分支判断和/或分支目标地址完成分支操作。
可选的,在所述的信息处理系统中,:
若所述地址产生器输出的结果为有效结果,该有效结果被写入所述存储器;
若所述地址产生器输出的结果非有效结果,则该结果被忽视,由处理器输出与该非有效结果对应的结果并写入所述存储器。
可选的,在所述的信息处理系统中,:
在所述地址产生器及所述处理器的寄存器中增设有效标志;
在所述地址产生器及所述处理器的指令译码器中增设指令有效标志;
所述地址产生器及所述处理器执行指令时检测指令的有效标志及操作数的寄存器有效标志的有效性;
若任何指令或操作数的有效标志为‘无效’,则指令的执行结果为‘无效’,将‘无效’值写入目标寄存器的有效标志;
若所有指令或操作数的有效标志为‘有效’,则指令的执行结果为‘有效’,将‘有效’值写入目标寄存器的有效标志;
可选的,在所述的信息处理系统中,所述地址产生器通过如下产生方法二产生地址:
产生方法二、所述地址产生器解析所述当前信息块,若判断所述当前信息块中包含分支指令,则计算该分支指令的目标地址,产生地址。
可选的,在所述的信息处理系统中,所述地址产生器对产生的地址进行筛选,其中,向存储器提供的地址为筛选通过的地址,所述地址产生器利用如下方法对产生的地址进行筛选:
判断产生方法二所产生的地址所指向的信息块是否为当前信息块,若否,则该产生的地址通过筛选。
可选的,在所述的信息处理系统中,所述地址产生器还通过如下产生方法三产生地址:
产生方法三、所述地址产生器获取当前信息块的地址,在当前信息块的地址上增加一偏移量,产生地址。
可选的,在所述的信息处理系统中,所述地址产生器对产生的地址进行筛选,其中,向存储器提供的地址为筛选通过的地址,所述地址产生器利用如下方法对产生的地址进行筛选:
步骤1:将所述产生方法三所产生的地址认定为是筛选通过的地址;
步骤2:判断所述产生方法二所产生的地址指向的信息块是否为当前信息块或者产生方法三所产生的地址指向的信息块,若否,则产生方法二产生的地址通过筛选。
可选的,在所述的信息处理系统中:增设一个第二存储器;
第二存储器中存储至少一个所述信息块及其对应地址。
可选的,在所述的信息处理系统中:所述地址产生器产生的地址被存入所述第二存储器中;
所述存储器根据地址产生器产生的所述地址输出的对应信息块被存入所述第二存储器中。
可选的,在所述的信息处理系统中:所述处理器送出地址到所述信息缓冲器与其中存放的地址匹配;
若匹配,则所述信息缓冲器将匹配地址的对应信息块输出供处理器获取;
若不匹配,则存储器根据处理器送出地址输出信息块供处理器获取。
本发明还提供一种信息处理方法,包括:
步骤A:所述地址产生器根据信息块产生地址并向存储器发送地址,所述信息块为存储器发出的当前信息块或地址产生器存储的信息块;
步骤B:所述存储器根据所述地址发送的地址输出信息块;
步骤C:所述处理器获取并处理所述存储器输出的所述信息块。
可选的,在所述的信息处理方法中,所述地址产生器至少能处理所述处理器的部分功能;所述部分功能至少包括部分分支判断功能。
可选的,在所述的信息处理方法中,所述地址产生器通过如下产生方法一产生地址:
产生方法一、所述地址产生器至少具有所述处理器的部份地址产生功能,所述地址产生器处理所述信息块以产生地址。
可选的,在所述的信息处理方法中,所述地址产生器含有缓存器,所述地址产生器并对产生的地址进行筛选,其中,向存储器提供的地址为筛选通过的地址,所述地址产生器利用如下方法对产生的地址进行筛选:
判断产生方法一所产生的地址在地址产生器的缓存中是否匹配,若否,则该产生的地址通过筛选。
可选的,在所述的信息处理方法中,所述处理器中含有缓存器,所述处理器中的缓存器与所述地址产生器中的缓存器其组织方式与替换方式一致。
可选的,在所述的信息处理方法中:
所述地址产生器与所述处理器中功能较少的一个能执行的全部指令称为有效指令;
结果指所述地址产生器或所述处理器执行指令所产生的执行结果;
完全由执行有效指令产生的结果为有效结果。
可选的,在所述的信息处理方法中:
若所述地址产生器产生的分支判断和分支目标地址是有效结果,则所述地址产生器独立完成分支操作;
若所述地址产生器产生的分支判断和/或分支目标地址不是有效结果,所述则地址产生器基于所述处理器提供的分支判断和/或分支目标地址完成分支操作。
可选的,在所述的信息处理方法中:
若所述地址产生器输出的结果为有效结果,该有效结果被写入所述存储器;
若所述地址产生器输出的结果非有效结果,则该结果被忽视,由处理器输出与该非有效结果对应的结果并写入所述存储器。
可选的,在所述的信息处理方法中:
在所述地址产生器及所述处理器的寄存器中增设有效标志;
在所述地址产生器及所述处理器的指令译码器中增设指令有效标志;
所述地址产生器及所述处理器执行指令时检测指令的有效标志及操作数的寄存器有效标志的有效性;
若任何指令或操作数的有效标志为‘无效’,则指令的执行结果为‘无效’,将‘无效’值写入目标寄存器的有效标志;
若所有指令或操作数的有效标志为‘有效’,则指令的执行结果为‘有效’,将‘有效’值写入目标寄存器的有效标志;
所述地址产生器通过如下产生方法二产生地址:
产生方法二、所述地址产生器解析所述当前信息块,若判断所述当前信息块中包含分支指令,则计算该分支指令的目标地址,产生地址。
可选的,在所述的信息处理方法中,所述地址产生器对产生的地址进行筛选,其中,向存储器提供的地址为筛选通过的地址,所述地址产生器利用如下方法对产生的地址进行筛选:
判断产生方法二所产生的地址所指向的信息块是否为当前信息块,若否,则该产生的地址通过筛选。
可选的,在所述的信息处理方法中,所述地址产生器还通过如下产生方法三产生地址:
产生方法三、所述地址产生器获取当前信息块的地址,在当前信息块的地址上增加一偏移量,产生地址。
可选的,在所述的信息处理方法中,所述地址产生器对产生的地址进行筛选,其中,向存储器提供的地址为筛选通过的地址,所述地址产生器利用如下方法对产生的地址进行筛选:
步骤1:将所述产生方法三所产生的地址认定为是筛选通过的地址;
步骤2:判断所述产生方法二所产生的地址指向的信息块是否为当前信息块或者产生方法三所产生的地址指向的信息块,若否,则产生方法二产生的地址通过筛选。
可选的,在所述的信息处理方法中:增设一个第二存储器;
第二存储器中存储至少一个所述信息块及其对应地址。
可选的,在所述的信息处理方法中:所述地址产生器产生的地址被存入所述第二存储器中;
所述存储器根据地址产生器产生的所述地址输出的对应信息块被存入所述第二存储器中。
可选的,在所述的信息处理方法中:所述处理器送出地址到所述信息缓冲器与其中存放的地址匹配;
若匹配,则所述信息缓冲器将匹配地址的对应信息块输出供处理器获取;
若不匹配,则存储器根据处理器送出地址输出信息块供处理器获取。
在本发明提供的信息处理系统、信息处理方法及存储系统中,利用地址产生器根据当前输出的信息块产生并输出更多地址,从而使得存储器/寄存器能够据此输出更多的信息块,即相当于在处理器(信息块需求设备)未提出信息请求前,预先向其提供其可能需要的信息块,由此,便加快了处理器(信息块需求设备)对信息块的获取速度,进而提高了处理器及信息处理系统的运行速度。
附图说明
图1是现有的一种信息处理系统的框结构示意图;
图2是现有的另一种信息处理系统的框结构示意图;
图3是本发明实施例一的信息处理系统的框结构示意图;
图4是本发明实施例二的信息处理系统的框结构示意图;
图5是本发明实施例二的地址产生器实现方式及相关逻辑的原理示意图;
图6是本发明实施例三的信息处理系统的框结构示意图;
图7是本发明实施例四的信息处理系统的框结构示意图。
对于本领域专业人士,还可以在本发明的说明、权利要求和附图的启发下,理解、领会本发明所包含其他方面内容。
有益效果
本发明所述方法和系统装置可以掩盖处理器经过时延通道对存储器访问所导致的延迟。对于本领域专业人士而言,本发明的其他优点和应用是显见的。
具体实施方式
以下结合附图和具体实施例对本发明作进一步详细说明。根据下面说明和权利要求书,本发明的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本发明实施例的目的。
需说明的是,为了清楚地说明本发明的内容,本发明特举多个实施例以进一步阐释本发明的不同实现方式,其中,该多个实施例是列举式并非穷举式。此外,为了说明的简洁,前实施例中已提及的内容往往在后实施例中予以省略,因此,后实施例中未提及的内容可相应参考前实施例。
虽然该发明可以以多种形式的修改和替换来扩展,说明书中也列出了一些具体的实施图例并进行详细阐述。应当理解的是,发明者的出发点不是将该发明限于所阐述的特定实施例,正相反,发明者的出发点在于保护所有基于由本权利声明定义的精神或范围内进行的改进、等效转换和修改。同样的元器件号码可能被用于所有附图以代表相同的或类似的部分。
此外,在本说明书中以包含处理器的体系结构为例进行说明,本发明技术方案可以被应用于包含任何合适的处理器(Processor)的体系结构。例如,所述处理器可以是通用处理器(General Purpose Processor)、中央处理器(CPU)、微处理器(Microprocessor)、处理器核(Core)、微控制器(MCU)、数字信号处理器(DSP)、图象处理器(GPU)、片上系统(SOC)、专用集成电路(ASIC)等。所述存储器或缓存可以由任何合适的存储设备构成,如:寄存器(register)或寄存器堆(register file)、静态存储器(SRAM)、动态存储器(DRAM)、闪存存储器(Flash memory)、硬盘(HD)、固态硬盘(SSD)以及任何一种合适的存储器件或未来的新形态存储器。
本发明提出了一种在存储系统中增设一个地址产生器的方法及其相应系统装置,该增设的地址产生器可以与处理器协同工作以解决现有技术导致的一个或多个困难。所述增设的地址产生器可以采取处理器执行指令,或扫描器解析所述存储器输出的信息等多种形式先于所述处理器产生地址,从所述存储器读取指令及数据向所述处理器推送;所述处理器按照程序及内部状态执行推送来的指令,处理从存储器推送来的数据或原来就存在处理器侧的数据,并将处理的结果写回所述存储器。
在本发明所述的信息系统中,所述处理器可以完全不向存储系统输出存储器地址,而由所述存储系统中的地址产生器独立产生存储器地址访问存储器,向处理系统推送(push)相应的指令与数据。也可以在大部分情况下由地址产生器独立产生存储器地址,但在少数情况下由处理系统中处理器向存储系统输出控制流信息(control flow information),如分支判断,以简化地址产生器结构。地址产生器根据所述控制流信息确定程序执行路径,产生后续指令的位置信息,并以此向处理器核推送(push)相应的指令或数据。为更进一步地简化地址产生器的结构,也可以允许在某些特定条件下由处理器向存储系统中的地址产生器提供存储器地址,地址产生器从处理器提供的存储器地址开始独立执行程序。
【实施例一】
请参考图3,其为本发明实施例一的信息处理系统的框结构示意图。此实施例中所述地址产生器是一个专用的计算单元,包含若干寄存器,以及加法器、移位器、逻辑运算器中的部分或全部,至少可执行所述处理器的部分功能,可计算产生指令或数据地址并作分支判断。如此,可以直接在存储系统中执行与存储器地址产生相关的指令,并根据计算得到的指令或数据存储器地址访问所述存储器读取相应指令或数据推送给所述处理器执行。
在图3中及后述各实施例中,图3中虚线以下的处理系统与图1实施例中类似,12为处理器,12中可以包含有缓存器,也可以不包含缓存器。存储系统中(虚线以上)10为存储器,22为存储系统增设的地址产生器,18为选择器。22中同样可以包含有缓存器,也可以不包含缓存器。地址产生器22产生地址经总线21以访问存储器10,10经总线23向地址产生器22及处理器12提供数据及指令。选择器18选择地址产生器22的执行结果25或处理器12的执行结果15经总线29写回存储器10。此实施例中处理器12不送出地址,没有如图1实施例所示的经总线11由处理系统向存储系统传送存储器地址。地址产生器22可以与处理器12执行同样的指令集,即22与12功能相同;22与12也可以执行不完全相同的指令集,其中22或12中的一个执行完整的指令集,另一个执行一个有限制的指令集。执行限制指令集的处理器并不执行超出其限制指令集范围的指令,而仅设置标志位以记录超范围事件。地址产生器22与处理器12执行同样指令集,或地址产生器22执行完整指令集而处理器12执行限制指令集的应用可以是由地址产生器22将处理器12需用的程序指令及数据向处理系统推送;处理器12执行程序处理由处理系统采集或已在处理系统中存放的数据,然后将处理器12处理的最终结果送回存储系统存储器10存储。
地址产生器22执行限制指令集而处理器12执行完整指令集的应用可以是由地址产生器22将处理器12需用的程序指令及数据向处理系统推送。地址产生器22执行其限制指令集中的指令,并将由执行限制指令集中指令所产生的结果写回存储器10;处理器12则执行完整指令集中的所有指令,将除了执行限制指令集可产生的结果以外的结果写回存储系统的存储器10。例如地址产生器22的限制指令集中仅含改变程序流向的操作所必须的指令,如装载LD,存储ST,加ADD,减SUB,移位SHIFT,逻辑,比较COMP,分支BR,跳转JUMP等,此时地址产生器22的主要功能是生成存储器地址,地址产生器22执行程序,产生地址送到存储器10中读取信息送往地址产生器22及处理器12执行及处理。上述限制指令集也使得地址产生器22足以执行如将数据从存储器10中的一个区域移动到另一个区域的操作;或对存储器10中的一个区域中的数据进行简单操作,将其写回该区域或另一个区域的操作;或将输入单元的数据存入存储器10中,将10中数据移动到输出单元的操作;减少这些操作对存储系统与处理系统之间通道的带宽要求。同时,地址产生器22执行一条指令的时机一般较处理器12执行同一条指令要早一个存储系统到处理系统的通道延迟。此外,地址产生器22产生地址经总线21访问存储器10的时间要比处理器12产生的同样地址再经过处理系统到存储系统的通道延迟访问存储器10要早存储系统与处理系统之间的双向通道延迟。因此实施例一及图3所公开的本发明信息系统结构比较现有系统结构,例如图1或图2实施例所示,可掩盖存储系统与处理系统之间的双向通道延迟。
【实施例二】
请参考图4,其为本发明实施例二的信息处理系统的框结构示意图,其在图3实施例的基础上在处理系统与存储系统都增设了相同的最后层次缓存LLC。在图4中,存储系统中10为存储器,22为地址产生器,24为存储系统LLC的标签单元,26为存储系统中LLC的数据存储器RAM,28为暂存地址产生器22输出的待存储入存储器10及LLC RAM 26的数据的先入先出(FIFO),18为选择来自28或处理器12的存储数据以供存储进存储器10的选择器;虚线下的处理系统与图2实施例中类似,12为处理器,14为处理系统LLC的标签单元,16为处理系统LLC的数据存储器RAM。存储系统中地址产生器22产生地址21送到26及送到24进行筛选,如地址21与24中存储的标签匹配,则26将相应的信息经总线27直接送到22供执行;处理系统中处理器12产生地址经总线11送到14及16,如总线11上的地址与14中存储的标签匹配,则16将相应的信息经总线13直接送到12供执行。总线11仅在处理系统内部使用,与现有技术中,如图1或图2实施例所示,将处理系统中处理器12产生的地址送到存储系统以访问存储器10不同。如存储系统中地址产生器22产生的地址21与存储系统中标签单元24中存储的标签不匹配,则筛选出总线21上的所述地址以访问存储器10,读取缓存块经总线23填充存储系统LLC RAM 26,将26的输出或将总线23上的信息旁路经总线27送到地址产生器22供执行;也将读取的信息块经总线23送到处理系统,此时处理系统中处理器12产生的地址11与处理系统中LLC标签单元14中存储的标签也不匹配,因此以总线23上缓存块填充处理系统中LLC RAM 16,将16的输出或将直接将总线23上的数据旁路经总线13送到处理器12供执行。另外还有处理系统到存储系统的总线15供将处理器12的运算结果送到存储系统经选择器18选择后经总线29存入存储器10及LLC RAM 26。还有处理系统到存储系统的总线19,将处理器12的分支判断和/或分支目标地址送到地址产生器22以备地址产生器不能独立完成分支操作时用。
存储系统与处理系统的缓存置换逻辑是相同的,因此26与16中的同一地址的缓存块被来自总线23的缓存块替换。地址21中的标签部分也被写入存储系统LLC标签单元24中由缓存置换逻辑所指出的表项;同理地址11中的标签部分也被写入处理系统LLC标签单元14中由缓存置换逻辑所指出的相同表项。如此存储系统与处理系统的LLC RAM 26与16中有同样的数据,存储系统LLC标签单元24与处理系统LLC标签单元14中有同样的标签内容。同样的内容先填入存储系统的标签单元24及RAM 26,经过存储系统到处理系统的通道延迟后再填入存储系统的标签单元14及RAM 16。当存储系统的地址经总线21与标签单元24中的标签内容比较发现不匹配时,即访问存储器10读取数据,开始将该数据填入存储系统LLC RAM 26,经过通道延迟后填入处理系统LLC RAM 16。正常情况下,处理系统的地址经总线11与标签单元14中的标签内容比较发现不匹配的时机比存储系统的同一个地址经总线21与标签单元24中的标签内容比较晚一个存储系统到处理系统的通道延迟,如按图2实施例将总线11上的地址送到存储系统以访问存储器10则又要经过一个处理系统到存储系统的通道延迟。如此,图4实施例中本发明公开的体系结构与图1或图2实施例中的现有体系结构相比,掩盖了存储系统与处理系统之间的双向(Round Trip)通道延迟。
请参考图5,其为本发明实施例二的地址产生器实现方式及相关逻辑的原理示意图,显示了‘有效链’(Valid Chain)的概念及基于有效链的操作。图5中22为地址产生器,其中30为寄存器堆,34为指令译码器,36为与门,38为执行单元,42为分支判断单元,44,46,48,50为选择器;其中寄存器堆30中的每个表项都有增设的一个有效位32;分支判断器42中的分支判断或其中存储的分支条件标记的每个表项中都有对应的一个有效位40。地址产生器22之外的28是先入先出,18为选择器。‘有效链’的规则为由有效的指令对有效的操作数执行的操作,其操作结果为有效;若操作使用的任意一个操作数或操作指令为无效则操作结果为无效。在此,有效指令是指在限制指令集中的指令,亦即执行限制指令集的处理器能够执行的指令。来自存储器10或者缓存器的操作数被定义为有效,因此装载指令LD的结果为有效,记载于该装载指令的目标寄存器堆30的表项有效位32中。此后以该目标寄存器为操作数的操作,如果指令为有效指令而指令使用的其他操作数亦有效,则该操作的结果为有效。
总线27上的指令由指令译码器34译码,如指令有效,则34控制从寄存器堆30中按指令中的操作数地址读出相应操作数经总线35及25送到执行单元38按指令操作类型处理,其结果经总线39写回寄存器堆30中由指令中目标操作数地址指向的表项;同时32中的上述操作数的有效位(‘0’为无效,‘1’为有效)也被读出送到与门36中,与译码器34产生的指令有效信号47进行‘与’操作,其结果37被写回寄存器堆30中由指令中目标操作数地址指向的表项中的有效位32。如果所有操作数及指令都有效,则目标表项中的有效位为‘有效’;如果任一操作数为无效,则目标表项中的有效位为‘无效’。如果指令无效,则译码器34将意义为‘无效’的指令有效信号47送往与门36使其输出37代表‘无效’,并控制寄存器堆30将该‘无效’信号写入该无效指令的目标寄存器堆表项中的有效位32。或者也可以当37为‘无效’时控制执行单元38不进行操作以节省功耗。如此有效信号在寄存器表项之间经与门36处理传递,是为有效链,有效链可以被无效的指令或无效的操作数打断。
当地址产生器22执行总线27上的一条存储(Store)指令时,译码器34控制寄存器堆30经总线35送出基地址,与此时34控制选择器50选择的存储指令中的立即数由执行单元38相加,其和经总线39存入先入先出28中一个表项的56域作为存储地址。34也控制寄存器堆30经总线25输出数据存入先入先出28中同一表项的54域,也控制读出寄存器堆30中该数据表项中有效位32经总线49存入先入先出28中同一表项的52域。当先入先出28中该表项到达28的头,从28中输出时,若该表项中52域中信号为‘有效’,则该信号控制选择器18选择该表项中54域中的数据经总线29送往存储器10及LLC RAM 26,写入由该表项中56域经总线31送出的存储地址所寻址的存储单元。若该表项中52域中信号为‘无效’,则该信号控制选择器18选择处理系统中处理器12经总线15送来的数据经总线29送往存储器10及LLC RAM 26,同样写入总线31上的存储地址所寻址的存储单元。执行完整指令集的处理器12中有同样的有效位及有效链,其有效链的产生与地址产生器22中完全一样,只是其用法恰恰相反。当处理器12执行一条存储指令时,如从寄存器堆读出的数据其有效信号为‘无效’时(即该数据为执行限制指令集的地址产生器22无法正确产生时)则处理器12将该数据经,总线15送到存储系统,由选择器18选择经总线29存入存储器10及LLC RAM 26。如从寄存器堆读出的数据其有效信号为‘有效’时,则处理器12不将该数据送往存储系统,因为地址产生器22已产生了同样的数据,已将其存入,或正准备存入10及26。
有效链也可以被用于分支判断。图5实施例中地址产生器58产生顺序指令地址41(当前指令地址加‘1’)或直接分支目标地址43(当前指令地址加分支指令中的分支偏移量)供选择。在执行非分支指令时指令译码器34控制选择器46选择顺序地址41作为下一指令地址;在执行分支指令时34使得分支判断45控制选择器46选择顺序地址41或分支目标地址43作为指令地址;指令地址及由执行单元38输出的数据地址或间接分支目标地址39再由选择器48选择作为存储器地址21送到存储器10,LLC标签单元24及LLC RAM 26寻址。此例中地址产生器22独立生成的分支判断,由分支判断单元42根据分支指令的分支类型及执行单元38执行指令的执行结果39产生。当执行结果39的一部分作为分支标记或分支判断被存入42时,其相应有效链结果37也被存入寄存器40。40的输出控制选择器44,如40的内容为有效,则44选择42输出的地址产生器分支判断以控制选择器46选择顺序地址41或分支目标地址43。这种情形对应于大多数的分支操作,例如执行所有整数的分支操作时。但某些特殊的分支操作可能取决于执行超出限制指令集范围的指令的结果。例如分支操作基于比较两个浮点数的大小,通常的做法是浮点单元将两个浮点数做比较,将比较结果从浮点寄存器堆移到整数寄存器堆,然后由整数单元中的分支判断器根据分支指令的分支类型做判断。如果地址产生器22的限制指令集不包括浮点运算,则从浮点寄存器堆移动数据到整数寄存器堆30的指令会打断有效链,使数据移入的整数寄存器堆表项中的有效位32为‘无效’。当该‘无效’位经与门36处理后认为‘无效’,经37存入寄存器40,使得选择器44选择总线19上由处理器12送出的分支判断作为分支判断45,以控制选择器46选择顺序地址41或分支目标地址43。与上述从处理系统向存储系统送数据类似,处理器12也可保持用于分支判断的有效链,仅当其有效链结果为‘无效’(意义为执行限制指令集的地址产生器22无法做正确分支判断)时,才经总线19送出处理器12的分支判断供地址产生器22使用。
图5中,当指令译码器34译出总线27上是间接分支指令时,控制寄存器堆30经总线35读出基地址,也控制选择器50选择总线27上所述间接分支指令中的分支偏移量,由执行单元38将基地址与分支偏移量相加,其和放上结果总线39。如果与该运算结果相应的有效链结果37为‘有效’,则控制选择器48选择总线39上的值放上存储器地址总线21作为间接分支的分支目标地址对10,24,26等寻址。如果37上的值为‘无效’,则可能是基地址产生的过程中使用了超范围指令,此时指令译码器34等控制逻辑控制选择器46选择从总线19送来的处理器12产生的间接分支目标地址,也控制选择器48选择46的输出,使处理器12产生的间接分支目标地址被放上存储器地址总线21对10,24,26等寻址。总线21上的间接分支目标地址也要被存回地址产生单元58以产生后续的顺序地址41及下一个直接分支地址43。
正常情况下,存储系统中地址产生器22执行指令比处理系统中处理器12执行同一条指令至少要早存储系统到处理系统的通道延迟,可以提前向处理器12推送其需要的指令和数据。在上述地址产生器22等待总线19送来的分支判断或间接分支目标地址时,地址产生器22执行分支后的指令的时间比处理器12执行同样指令的时间还要晚处理系统到存储系统的通道延迟。但是地址产生器22不执行超范围的指令,因此可以追上并再次领先处理器12执行同样的指令,提前向处理器12推送其需要的指令和数据。其实施方式可以是加大寄存器堆30的表项有效位32的读写带宽,例如使32的所有位都可以并行独立读写;指令译码器34可对复数条指令并行译码,对超范围的无效指令直接将其目标寄存器堆表项的相应有效位32设为‘无效’即可,指令本身不需执行。又例如指令译码器将复数条指令使用的操作数的有效位32按指令分组并行读出,并各自与相关的指令有效信号47相‘与’(类似图5中与门36的功能)得出中间结果。指令译码器另将该复数条指令做相关性检测,如按程序顺序在先的指令写入的目标寄存器堆表项被顺序在后的指令用作操作数,则将在先的指令的中间结果与在后的指令的中间结果进行‘与’操作作为在后指令的最终结果。其最终结果为‘有效’的指令按顺序执行;最终结果为‘无效’的指令则只需将其目标寄存器堆表项中的有效位32置为‘无效’即可,指令本身无需执行。写各有效位时需做个优先权检测,如有多个对同一位置的写入,仅写入按程序顺序最后一条指令的有效链结果即可。即先检测地址产生器22要执行的指令,过滤其中的无效指令或虽指令有效但操作数无效的指令,使地址产生器22只执行能产生有效结果的指令,使地址产生器22能先于处理器12对同样指令的执行,使存储系统能提前向处理器12提供所需的指令或数据。如果地址产生器22也能执行完整的指令集(虽然执行效率不一定与处理器12一样),则可省略处理器12到地址产生器22的传送分支判断或分支目标地址的总线19。
【实施例三】
请参考图6,其为本发明实施例三的信息系统的框结构示意图,其在图4实施例的基础上省略了存储系统中的LLC RAM 26,其余的都相同。在图6中,虚线上的存储系统中10为存储器,22为地址产生器,24为存储系统LLC的标签单元,28为暂存地址产生器22输出的先入先出(FIFO),18为选择来自28或处理器12的存储数据的选择器;虚线下的处理系统中12为处理器,14为处理系统LLC的标签单元,16为处理系统LLC的数据存储器RAM。地址产生器22的指令或数据输入直接来自存储器10的输出总线23。地址产生器22经总线21输出的存储器地址寻址存储器10读出指令或数据放上总线23送到地址产生器22执行。同时总线21上的存储器地址也寻址存储系统的LLC标签单元24进行筛选,如果在24中命中,则总线23上的指令或数据仅供地址产生器22使用,不送往处理系统;如果在24中不命中,则总线21上存储器地址按替换规则存入LLC标签单元24;总线23上的指令或数据被送到处理系统按替换规则存入LLC RAM 16,处理器12也产生的该指令或数据的存储器地址经总线11(与总线21上的地址一样)存入LLC标签单元14。其余的操作与图4及图5实施例完全一样。
【实施例四】
请参考图7,其为本发明实施例四的信息系统的框结构示意图。本实施例中处理系统中处理器产生地址访问存储器读取信息,存储系统的地址产生器不作分支判断,只是根据处理器产生的地址及存储器根据所述地址输出的信息块产生处理器可能需用的信息的地址送到存储器,使存储器提前输出信息送到处理系统供处理器选用。如图7所示,所述信息系统包括存储系统及处理系统。处理系统包括:处理器12,用以获取信息,其中可以含有缓存器,负责产生当前地址11;信息缓冲标签单元64,及信息缓冲器(Information Buffer)66,其中64与66也合称第二存储器;以及选择器68。存储系统包括:存储器10,用以存储信息并根据收到的地址经总线23输出信息块,地址产生器60,用以根据当前地址11及总线23上的信息块产生地址并向存储器提供地址,以及选择器62。在此,所述信息处理系统通过如下方法进行信息处理:
所述处理器12发送存储器地址11;地址11与信息缓冲标签单元64的内容进行匹配比较,若命中,则由信息缓冲器66向处理器12输出信息块;若不命中,将地址11送到存储系统经选择器62选择以访问存储器10;所述存储器10根据所述处理器12发送的地址11输出信息块经总线23,选择器68供处理器12使用;所述存储系统中地址产生器60根据所述存储器10当前输出的信息块产生地址61,并经选择器62的选择向所述存储器10提供地址61;所述存储器10根据所述地址产生器60提供的地址61输出信息块经总线23存入信息缓冲器66。
也就是说,在本实施例中,当处理器12发出一个需要获取信息的地址(即发出一个请求/请求地址)时,所述存储系统存储器10除了根据该处理器12发出的地址输出一信息块之外供处理器12使用外;还根据所述地址产生器60产生的地址发出另一个或者多个信息块,预先存入信息缓冲器66以备处理器12下一步使用。相对于现有的处理器发出一个需要获取信息的地址,存储器根据该地址发出一个信息块,从而处理器只能得到一个与其发出的地址对应的信息块(或者说其发出的地址指向的信息块)而言,在本实施例提供的信息处理系统中,处理器12发出一个需要获取信息的地址,存储器10将输出(发出/发送/提供)多个信息块(其中,一个信息块是应处理器12的请求/地址而发送,除此以外的信息块是应地址产生器60的请求/地址而发送的),从而处理器12能够因一个请求/地址得到多个信息块,掩盖了获取第一个指令块后获取其他指令块的延迟。需说明的是,在本发明的用语中,“信息块(Block)”是信息的单位,其包括内容为指令的指令块及内容为数据的数据块,在此,并不限定所述“信息块”的大小(即具体为多少比特),其可以根据不同的系统要求定义,比如处理器12中缓存块大小的倍数。
在本实施例中,所述地址产生器60接受总线11上的存储器地址,总线23上的信息块,总线63上的信号,该信号由处理器12送出以说明总线11上的地址是指令地址或数据地址;地址产生器60输出地址61,该地址被选择器62选择以访问存储器10,该地址也被存入信息缓冲标签单元64。所述地址产生器60通过如下过程扫描解析所述当前信息块:所述地址产生器60将总线11上的存储器地址与加上块偏移量(即相邻两个信息块的地址偏差量),得到当前信息块的相邻信息块的地址;另根据信号63判断所述当前信息块是否为指令块,若为指令块,则获取指令块中各指令的指令类型信息(OP),并译码每条指令的类型信息判断该指令是否为直接分支指令。若判断某条指令为直接分支指令,即将总线11上的存储器地址与加上该指令内含有的分支偏移量,得到该直接分支指令的分支目标所在指令块的地址;所述地址产生器对产生的分支目标地址进行筛选,判断分支目标地址与所述当前指令块的地址是否相同,若否,则该产生的地址通过筛选。地址产生器60将获取的相邻信息块地址或分支目标信息地址经总线61及选择器62提供给存储器10,所述存储器10根据该分支指令的地址输出信息块。
存储器10根据处理器12经总线11送出的存储器地址输出的信息块经总线23,选择器68被直接送到处理器12供执行。存储器10根据地址产生器60经总线61送出的存储器地址而输出的信息块经总线23被送到信息缓冲器66暂存,同时总线61上的存储器地址也被送到信息缓冲标签单元64暂存。置换逻辑选择64及66中的对应表项以供上述暂存。置换逻辑可以按照表项的存在时间,在缓冲器66已满时选择存在时间最长的表项置换。此后处理器12经总线11送出的存储器地址首先被送到64匹配,如果匹配,则将66中相应表项经选择器68选择送入处理器12供执行和在12中的缓存器中存储。如果12中含有缓存器,则此时缓冲器66及标签单元64中上述已读出表项可被标记为‘可置换’。如果总线11上存储器地址在标签单元64中未匹配,则如前所述,将该存储器地址送到存储器10读取信息块。
本实施例所述地址产生器60可以在多种模式下操作。例如当信息缓冲器66内容小于某个容量时所述地址产生器60对总线上的所有信息块都进行扫描解析,据此产生地址访问存储器10。当信息缓冲器66内容大于某个容量时,所述地址产生器60只对由处理器12经总线11送出的存储器地址及存储器10根据该地址输出的信息块扫描解析;而不对由地址产生器60经总线61送出的存储器地址及存储器10根据该地址输出的信息块作扫描解析。此外还可以有其他操作模式,在此不一一赘述。
根据本发明技术方案和构思,还可以有其他任何合适的改动。对于本领域普通技术人员来说,所有这些替换、调整和改进都应属于本发明所附权利要求的保护范围。
Claims (32)
1.一种信息处理系统,其特征在于,包括:
存储器,用以存储信息并根据收到的地址输出当前信息块;
地址产生器,用以根据信息块产生地址并向存储器提供地址,所述信息块为存储器发出的当前信息块或地址产生器存储的信息块;
处理器,用以获取当前信息块并处理信息。
2.如权利要求1所述的信息处理系统,其特征在于,所述地址产生器至少能处理所述处理器的部分功能;
所述部分功能至少包括部分分支判断功能。
3.如权利要求2所述的信息处理系统,其特征在于,所述地址产生器通过如下产生方法一产生地址:
产生方法一、所述地址产生器至少具有所述处理器的部份地址产生功能,所述地址产生器处理所述信息块以产生地址。
4.如权利要求3所述的信息处理系统,其特征在于,所述地址产生器含有缓存器,所述地址产生器并对产生的地址进行筛选,其中,向存储器提供的地址为筛选通过的地址,所述地址产生器利用如下方法对产生的地址进行筛选:
判断产生方法一所产生的地址在地址产生器的缓存中是否匹配,若否,则该产生的地址通过筛选。
5.如权利要求4所述的信息处理系统,其特征在于,所述处理器中含有缓存器,所述处理器中的缓存器与所述地址产生器中的缓存器其组织方式与替换方式一致。
6.如权利要求2所述的信息处理系统,其特征在于:
所述地址产生器与所述处理器中功能较少的一个能执行的全部指令称为有效指令;
结果指所述地址产生器或所述处理器执行指令所产生的执行结果;
完全由执行有效指令产生的结果为有效结果。
7.如权利要求6所述的信息处理系统,其特征在于:
若所述地址产生器产生的分支判断和分支目标地址是有效结果,则所述地址产生器独立完成分支操作;
若所述地址产生器产生的分支判断和/或分支目标地址不是有效结果,所述则地址产生器基于所述处理器提供的分支判断和/或分支目标地址完成分支操作。
8.如权利要求6所述的信息处理系统,其特征在于:
若所述地址产生器输出的结果为有效结果,该有效结果被写入所述存储器;
若所述地址产生器输出的结果非有效结果,则该结果被忽视,由处理器输出与该非有效结果对应的结果并写入所述存储器。
9.如权利要求6所述的信息处理系统,其特征在于:
在所述地址产生器及所述处理器的寄存器中增设有效标志;
在所述地址产生器及所述处理器的指令译码器中增设指令有效标志;
所述地址产生器及所述处理器执行指令时检测指令的有效标志及操作数的寄存器有效标志的有效性;
若任何指令或操作数的有效标志为‘无效’,则指令的执行结果为‘无效’,将‘无效’值写入目标寄存器的有效标志;
若所有指令或操作数的有效标志为‘有效’,则指令的执行结果为‘有效’,将‘有效’值写入目标寄存器的有效标志。
10.如权利要求1所述的信息处理系统,其特征在于,所述地址产生器通过如下产生方法二产生地址:
产生方法二、所述地址产生器解析所述当前信息块,若判断所述当前信息块中包含分支指令,则计算该分支指令的目标地址,产生地址。
11.如权利要求10所述的信息处理系统,其特征在于,所述地址产生器对产生的地址进行筛选,其中,向存储器提供的地址为筛选通过的地址,所述地址产生器利用如下方法对产生的地址进行筛选:
判断产生方法二所产生的地址所指向的信息块是否为当前信息块,若否,则该产生的地址通过筛选。
12.如权利要求10所述的信息处理系统,其特征在于,所述地址产生器还通过如下产生方法三产生地址:
产生方法三、所述地址产生器获取当前信息块的地址,在当前信息块的地址上增加一偏移量,产生地址。
13.如权利要求12所述的信息处理系统,其特征在于,所述地址产生器对产生的地址进行筛选,其中,向存储器提供的地址为筛选通过的地址,所述地址产生器利用如下方法对产生的地址进行筛选:
步骤1:将所述产生方法三所产生的地址认定为是筛选通过的地址;
步骤2:判断所述产生方法二所产生的地址指向的信息块是否为当前信息块或者产生方法三所产生的地址指向的信息块,若否,则产生方法二产生的地址通过筛选。
14.如权利要求10所述的信息处理系统,其特征在于:增设一个第二存储器;
第二存储器中存储至少一个所述信息块及其对应地址。
15.如权利要求14所述的信息处理系统,其特征在于:所述地址产生器产生的地址被存入所述第二存储器中;
所述存储器根据地址产生器产生的所述地址输出的对应信息块被存入所述第二存储器中。
16.如权利要求14所述的信息处理系统,其特征在于:所述处理器送出地址到所述信息缓冲器与其中存放的地址匹配;
若匹配,则所述信息缓冲器将匹配地址的对应信息块输出供处理器获取;
若不匹配,则存储器根据处理器送出地址输出信息块供处理器获取。
17.一种用于信息系统的信息处理方法,其特征在于,包括:
步骤A:所述地址产生器根据信息块产生地址并向存储器发送地址,所述信息块为存储器发出的当前信息块或地址产生器存储的信息块;
步骤B:所述存储器根据所述地址发送的地址输出信息块;
步骤C:所述处理器获取并处理所述存储器输出的所述信息块。
18.如权利要求17所述的信息处理方法,其特征在于,所述地址产生器至少能处理所述处理器的部分功能,
所述部分功能至少包括部分分支判断功能。
19.如权利要求18所述的信息处理方法,其特征在于,所述地址产生器通过如下产生方法一产生地址:
产生方法一、所述地址产生器至少具有所述处理器的部份地址产生功能, 所述地址产生器处理所述信息块以产生地址。
20.如权利要求19所述的信息处理方法,其特征在于,所述地址产生器含有缓存器,所述地址产生器并对产生的地址进行筛选,其中,向存储器提供的地址为筛选通过的地址,所述地址产生器利用如下方法对产生的地址进行筛选:
判断产生方法一所产生的地址在地址产生器的缓存中是否匹配,若否,则该产生的地址通过筛选。
21.如权利要求20所述的信息处理方法,其特征在于,所述处理器中含有缓存器,所述处理器中的缓存器与所述地址产生器中的缓存器其组织方式与替换方式一致。
22.如权利要求18所述的信息处理方法,其特征在于:
所述地址产生器与所述处理器中功能较少的一个能执行的全部指令称为有效指令;
结果指所述地址产生器或所述处理器执行指令所产生的执行结果;
完全由执行有效指令产生的结果为有效结果。
23.如权利要求22所述的信息处理方法,其特征在于:
若所述地址产生器产生的分支判断和分支目标地址是有效结果,则所述地址产生器独立完成分支操作;
若所述地址产生器产生的分支判断和/或分支目标地址不是有效结果,所述则地址产生器基于所述处理器提供的分支判断和/或分支目标地址完成分支操作。
24.如权利要求22所述的信息处理方法,其特征在于:
若所述地址产生器输出的结果为有效结果,该有效结果被写入所述存储器;
若所述地址产生器输出的结果非有效结果,则该结果被忽视,由处理器输出与该非有效结果对应的结果并写入所述存储器。
25.如权利要求22所述的信息处理方法,其特征在于:
在所述地址产生器及所述处理器的寄存器中增设有效标志;
在所述地址产生器及所述处理器的指令译码器中增设指令有效标志;
所述地址产生器及所述处理器执行指令时检测指令的有效标志及操作数的寄存器有效标志的有效性;
若任何指令或操作数的有效标志为‘无效’,则指令的执行结果为‘无效’,将‘无效’值写入目标寄存器的有效标志;
若所有指令或操作数的有效标志为‘有效’,则指令的执行结果为‘有效’,将‘有效’值写入目标寄存器的有效标志。
26.如权利要求17所述的信息处理方法,其特征在于,所述地址产生器通过如下产生方法二产生地址:
产生方法二、所述地址产生器解析所述当前信息块,若判断所述当前信息块中包含分支指令,则计算该分支指令的目标地址,产生地址。
27.如权利要求26所述的信息处理方法,其特征在于,所述地址产生器对产生的地址进行筛选,其中,向存储器提供的地址为筛选通过的地址,所述地址产生器利用如下方法对产生的地址进行筛选:
判断产生方法二所产生的地址所指向的信息块是否为当前信息块,若否,则该产生的地址通过筛选。
28.如权利要求26所述的信息处理方法,其特征在于,所述地址产生器还通过如下产生方法三产生地址:
产生方法三、所述地址产生器获取当前信息块的地址,在当前信息块的地址上增加一偏移量,产生地址。
29.如权利要求28所述的信息处理方法,其特征在于,所述地址产生器对产生的地址进行筛选,其中,向存储器提供的地址为筛选通过的地址,所述地址产生器利用如下方法对产生的地址进行筛选:
步骤1:将所述产生方法三所产生的地址认定为是筛选通过的地址;
步骤2:判断所述产生方法二所产生的地址指向的信息块是否为当前信息块或者产生方法三所产生的地址指向的信息块,若否,则产生方法二产生的地址通过筛选。
30.如权利要求26所述的信息处理方法,其特征在于:增设一个第二存储器;
第二存储器中存储至少一个所述信息块及其对应地址。
31.如权利要求30所述的信息处理方法,其特征在于:所述地址产生器产生的地址被存入所述第二存储器中;
所述存储器根据地址产生器产生的所述地址输出的对应信息块被存入所述第二存储器中。
32.如权利要求30所述的信息处理方法,其特征在于:所述处理器送出地址到所述信息缓冲器与其中存放的地址匹配;
若匹配,则所述信息缓冲器将匹配地址的对应信息块输出供处理器获取;
若不匹配,则存储器根据处理器送出地址输出信息块供处理器获取。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510154529.3A CN106155946A (zh) | 2015-03-30 | 2015-03-30 | 基于信息推送的信息系统和方法 |
PCT/CN2016/077853 WO2016155623A1 (zh) | 2015-03-30 | 2016-03-30 | 基于信息推送的信息系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510154529.3A CN106155946A (zh) | 2015-03-30 | 2015-03-30 | 基于信息推送的信息系统和方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106155946A true CN106155946A (zh) | 2016-11-23 |
Family
ID=57337558
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510154529.3A Pending CN106155946A (zh) | 2015-03-30 | 2015-03-30 | 基于信息推送的信息系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106155946A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108694181A (zh) * | 2017-04-06 | 2018-10-23 | 上海寒武纪信息科技有限公司 | 一种数据筛选装置和方法 |
US11010338B2 (en) | 2017-04-06 | 2021-05-18 | Shanghai Cambricon Information Technology Co., Ltd | Data screening device and method |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1437112A (zh) * | 2002-02-07 | 2003-08-20 | 旺宏电子股份有限公司 | 具有有效使用存储器的循环寻址的方法及系统 |
US20090031118A1 (en) * | 2007-07-24 | 2009-01-29 | Nec Corporation | Apparatus and method for controlling order of instruction |
CN102122275A (zh) * | 2010-01-08 | 2011-07-13 | 上海芯豪微电子有限公司 | 一种可配置处理器 |
CN103514105A (zh) * | 2012-06-15 | 2014-01-15 | 上海芯豪微电子有限公司 | 信息处理系统、信息处理方法及存储系统 |
CN104050092A (zh) * | 2013-03-15 | 2014-09-17 | 上海芯豪微电子有限公司 | 一种数据缓存系统及方法 |
CN104424129A (zh) * | 2013-08-19 | 2015-03-18 | 上海芯豪微电子有限公司 | 基于指令读缓冲的缓存系统和方法 |
-
2015
- 2015-03-30 CN CN201510154529.3A patent/CN106155946A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1437112A (zh) * | 2002-02-07 | 2003-08-20 | 旺宏电子股份有限公司 | 具有有效使用存储器的循环寻址的方法及系统 |
US20090031118A1 (en) * | 2007-07-24 | 2009-01-29 | Nec Corporation | Apparatus and method for controlling order of instruction |
CN102122275A (zh) * | 2010-01-08 | 2011-07-13 | 上海芯豪微电子有限公司 | 一种可配置处理器 |
CN103514105A (zh) * | 2012-06-15 | 2014-01-15 | 上海芯豪微电子有限公司 | 信息处理系统、信息处理方法及存储系统 |
CN104050092A (zh) * | 2013-03-15 | 2014-09-17 | 上海芯豪微电子有限公司 | 一种数据缓存系统及方法 |
CN104424129A (zh) * | 2013-08-19 | 2015-03-18 | 上海芯豪微电子有限公司 | 基于指令读缓冲的缓存系统和方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108694181A (zh) * | 2017-04-06 | 2018-10-23 | 上海寒武纪信息科技有限公司 | 一种数据筛选装置和方法 |
US11010338B2 (en) | 2017-04-06 | 2021-05-18 | Shanghai Cambricon Information Technology Co., Ltd | Data screening device and method |
US11049002B2 (en) | 2017-04-06 | 2021-06-29 | Shanghai Cambricon Information Technology Co., Ltd | Neural network computation device and method |
US11551067B2 (en) | 2017-04-06 | 2023-01-10 | Shanghai Cambricon Information Technology Co., Ltd | Neural network processor and neural network computation method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190377690A1 (en) | Method and Apparatus for Vector Permutation | |
CN104978282B (zh) | 一种缓存系统和方法 | |
CN102110058B (zh) | 一种低缺失率、低缺失惩罚的缓存方法和装置 | |
CN104424129B (zh) | 基于指令读缓冲的缓存系统和方法 | |
CN102841865B (zh) | 高性能缓存系统和方法 | |
CN105701023B (zh) | 考虑到内存访问类型的快取内存替换策略 | |
CN103218208B (zh) | 用于实施成形的存储器访问操作的系统和方法 | |
CN102855121B (zh) | 分支处理方法与系统 | |
EP0947926A2 (en) | System and method for multi-tasking, resource sharing, and execution of computer instructions | |
CN108475194A (zh) | 在片上网络架构中的寄存器通信 | |
US9804976B1 (en) | Transactional memory that performs an atomic look-up, add and lock operation | |
US20180342270A1 (en) | Memories and methods for performing vector atomic memory operations with mask control and variable data length and data unit size | |
CN102841777B (zh) | 数据处理器中的分支目标缓存器寻址 | |
CN106569958A (zh) | 以内存访问类型来分配的全关联快取内存 | |
CN103513958B (zh) | 高性能指令缓存系统和方法 | |
US20240192956A1 (en) | Inserting predefined pad values into a stream of vectors | |
CN102713837A (zh) | 用于管理并行高速缓存层级的指令 | |
CN103221995A (zh) | 显示管中的流翻译 | |
WO2009018385A2 (en) | Scheme for packing and linking of variables in graphics systems | |
CN108496161A (zh) | 数据缓存装置及控制方法、数据处理芯片、数据处理系统 | |
CN101510185A (zh) | 一种高速总线向低速总线写入、读取数据的方法和装置 | |
CN106066787A (zh) | 一种基于指令和数据推送的处理器系统和方法 | |
CN104050396B (zh) | 用于保护数字内容的装置和方法 | |
US20210082520A1 (en) | Processor in non-volatile storage memory | |
CN106155946A (zh) | 基于信息推送的信息系统和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 201203 501, No. 14, Lane 328, Yuqing Road, Pudong New Area, Shanghai Applicant after: SHANGHAI XINHAO MICROELECTRONICS Co.,Ltd. Address before: 200092, B, block 1398, Siping Road, Shanghai, Yangpu District 1202 Applicant before: SHANGHAI XINHAO MICROELECTRONICS Co.,Ltd. |
|
CB02 | Change of applicant information | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20161123 |
|
WD01 | Invention patent application deemed withdrawn after publication |