指令控制拼装方法及其装置制造方法及图纸

技术编号:2887059 阅读:266 留言:0更新日期:2012-04-11 18:40
一种指令控制拼装方法及其装置,该装置包括操作拼装控制指令接收部件、格式译码部件、内部编码标识部件、拼装重组部件和输出部件。通过该指令控制拼装方法及装置,可将数据相关的串行操作过程相关的操作拼装在一条指令中,从而减少程序的空间开销,简化程序设计,可在不增加机器总线宽度、不增加每条指令的执行时间和译码控制电路延时的前提下、增加操作的吞吐量,减少实现程序的指令数,从而提高执行效率。(*该技术在2018年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术涉及计算机体系结构、计算机指令系统及其译码控制领域,特别涉及指令串并行编码控制方法、以及一种实现指令控制操作串并行的方法及其装置。计算机面向的实际问题求解过程中存在着串并行两种操作模式,所谓串行操作模式是指由于资源相关或数据相关而顺序执行若干操作的模式;所谓并行操作模式是指资源不相关、数据不相关的若干操作同时执行的模式。由于当前软件开发基于串行的抽象模型进行,因此在现有程序设计环境下不能用算法语言表达问题求解过程所固有的串并行特征,致使软件开销增大、解题效率降低。当前RISC/CISC体系结构提供了大量可并行使用的资源,为了充分利用这些资源,提高指令级的并行性,RISC/CISC采用的方法包括软硬两个方面在软件方面采用了优化编译器的方法,即针对高级语言描述串行程序进行分析,发现操作过程的串并行特征,重排操作的执行顺序,以支持硬件对于并行操作模式的处理。但是,串行程序本身已经掩盖了原问题求解过程中的串并行特征,而优化编译器又不清楚处理对象的语义信息,因此很难全面发掘求解过程所固有的串并行特征。在硬件方面RISC/CISC采取了预测技术、乱序技术和微码技术等控制程序流中的串并行操作过程。由此产生现有的硬件系统中必须增加高速缓存及其控制电路或增加程序规模、译码技术复杂、控制电路规模增大、译码延时时间长等诸多问题。如《POWER PC概念、体系结构于设计》第20页(周长春等译 电子工业出版社)所描述的那样,RSIC体系译码电路占总规模的10%,CISC体系译码电路占总电路规模的50%以上。RISC与CISC的译码周期均至少为一个指令周期,且必须使用一级和二级高速缓存存贮技术。还有一种方法是超长指令字(VLIW方法)。该方法利用优化编译器发现串行程序中的串并行特征,将串行操作和并行操作按照操作执行的先后顺序排列在超长指令字中,串行执行的操作被顺序排列在一个指令字序列中,并行执行的操作,被并行排列在一条指令字中。这种方法的问题是在执行串行操作的指令流中,因串行操作的多变性、相关性造成指令的顺序排列的约束,由此使得超长指令字序列中有很多指令段空闲;而在执行并行操作的指令字中,因数据和资源的不相关性,使得超长指令字中的指令段非常饱满,有时实际问题求解过程中存在有更大的并行性,但最终由于机器总线宽度的限制,很多可并行的操作不能排列在一条指令中,结果是增加了实现一个程序的指令条数,使系统的效率降低。另外这种方法对优化编译器有更大的依赖性,致使优化编译器目前存在的技术问题显得更为突出。可见,有效地反映解题过程中固有的串并行模式、充分利用资源的并行特征以实现高效问题求解的思想受到了传统的计算机体系结构及其设计方法的约束,由此传统的计算机系统结构要么花费软件的代价,开发复杂的优化编译器的设计环境,以提高系统执行效率,要么花费大量的硬件代价,以复杂的和成倍增长的硬件规模来支持计算机系统基本操作类型的需求。即便如此,现有的计算机系统中在执行基本操作类型的程序流中也很难做到将串行操作和并行操作有机组合成,在一个时刻执行更多个并行操作的效果。因此将数据或资源相关的串行操作和数据、资源不相关的并行操作有效组合问题、这种组合与重复操作、分支操作并行组合的问题、以及在执行中动态增加指令宽度以同时执行更多个并行操作的问题等,已成为当前体系结构设计要解决的关键问题,也是硬件译码控制电路日趋复杂、规模日趋增大的原因之一。本专利技术的目的是1.提供一种指令控制拼装方法及其装置,并利用指令控制拼装方法及其装置实现一种指令宽度动态可变的操作拼装控制指令。利用该操作拼装控制指令达到如下目的利用该操作拼装控制指令及其译码控制装置可将数据相关的串行操作过程相关的操作拼装在一条指令中,通过标识保证操作语义不变,从而减少程序的空间开销、简化程序设计、减少取指瓶颈的压力的目的;利用该操作拼装控制指令及其译码控制装置,通过编码的方法,在不增加机器总线宽度、不增加每条指令的执行时间和译码控制电路延时的前提下,增加操作的吞吐量,减少实现一个程序的指令数,从而提高机器执行效率。利用该操作拼装控制指令及其译码控制装置可将资源、数据相关或无关的重复串行操作或重复并行操作过程,以基本操作形式拼装到指令字序列中,通过内部标识存贮、并与后续取入的串并行操作编码动态拼装执行,从而达到了执行过程中的重复操作控制被独立出来执行,在不增加指令宽度、不增加取指周期的前提下实现重复操作和其他操作的重组并行控制的目的。从而提高机器的并行控制能力,提高程序的执行效率。2.揭示一种以简单的硬件电路直接支持操作拼装控制指令对数据和资源相关或无关的操作进行指令拼装控制和内外操作拼装控制的执行方法,即将并行执行的操作编码、或串行执行的操作编码、或重复执行的编码拼装在操作拼装控制指令中,或并行执行、或装载到内部标识寄存器中,在内外操作标识控制下,使外部操作拼装控制指令和内部标识中的操作编码在资源、数据允许时被串行、或并行、或重复执行。从而减少程序的时空间代价,减少取指瓶颈的压力,提高机器的执行效率。一种指令控制拼装的方法,其特征在于,该方法包括以下步骤一个指令编码步骤,用于设计操作拼装控制指令的指令编码,所述操作拼装控制指令包括一个或一个以上的顺序指令字,每个指令字包括指令格式控制域编码、指令段格式控制域编码、指令段执行方式控制域编码和多个指令段编码;每个所述指令段编码是在所述指令格式控制域编码和所述指令段格式控制域编码约束下对应于功能部件的操作域编码;一个操作拼装控制指令接收步骤,用于顺序接收所述操作拼装控制指令的一个或若干个指令字编码;一个格式译码步骤,用于顺序对所述操作拼装控制指令的每个指令字中的所述指令格式控制域编码、所述指令段格式控制域编码译码,并从指令字中剥离出各个操作域编码、及所述指令段执行方式控制域编码;一个内部操作标识步骤,用于根据所述指令段执行方式控制域编码将要求不立即执行的操作域编码存贮在操作域内部编码寄存器组中、设置并维护操作域内部编码控制标识;一个拼装重组步骤,用于针对各个操作域将存贮在操作域内部编码寄存器组中的各个编码与从外部输入的同一操作域的编码实行拼装重组,产生各个操作域的当周期执行编码及其使能信号;以及,一个输出步骤,用于输出经拼装重组的各个操作域的编码及其使能信号。一种指令控制拼装装置,可响应多位操作拼装控制指令外部存贮方式,可响应多位内部操作拼装控制指令寄存器存贮方式,使该操作拼装控制指令作用于拼装控制装置,实现串并行操作、重复操作的各种拼装执行模式,其特征在于,包括以下部件配合该装置的多位操作拼装控制指令存贮器、寄存器的指令和数据输入方式,一个用于接收操作拼装控制指令的操作拼装控制指令接收部件;配合所述操作拼装控制指令接收部件的一个格式译码部件,用于对操作拼装控制指令中的所述指令格式控制域编码、所述指令段格式控制域编码进行译码,并从操作拼装控制指令中剥离操作域编码、所述指令段拼装方式控制域的编码;配合所述格式译码部件的用于实现不立即执行的操作编码存贮、操作域执行方式存贮、内部编码执行控制信号生成的一个内部编码标识部件;配合所述内部操作标识部件的一个拼装重组部件,用于将各个操作域的存贮在所述内部编码标识部件中的各个操作编码与外来指令中的同一操作本文档来自技高网...

【技术保护点】
一种指令控制拼装的方法,其特征在于,该方法包括以下步骤: 1)一个指令编码步骤,用于设计操作拼装控制指令的指令编码,所述操作拼装控制指令包括一个或一个以上的顺序指令字,每个指令字包括:指令格式控制域(11)编码、指令段格式控制域(12)编码、指令段执行方式控制域(14)编码和多个指令段(13)编码;每个所述指令段(13)编码是在所述指令格式控制域(11)编码和所述指令段格式控制域(12)编码约束下对应于功能部件的操作域编码; 2)一个操作拼装控制指令接收步骤,用于顺序接收所述操作拼装控制指令的一个或若干个指令字编码; 3)一个格式译码步骤,用于顺序对所述操作拼装控制指令的每个指令字中的所述指令格式控制域(11)编码、所述指令段格式控制域(12)编码译码,并从指令字中剥离出各个操作域编码、及所述指令段执行方式控制域(14)编码; 4)一个内部操作标识步骤,用于根据所述指令段执行方式控制域(14)编码将要求不立即执行的操作域编码存贮在操作域内部编码寄存器组中、设置并维护操作域内部编码控制标识; 5)一个拼装重组步骤,用于针对各个操作域将存贮在操作域内部编码寄存器组中的各个编码与从外部输入的同一操作域的编码实行拼装重组,产生各个操作域的当周期执行编码及其使能信号;以及 6)一个输出步骤,用于输出经拼装重组的各个操作域的编码及其使能信号。...

【技术特征摘要】

【专利技术属性】
技术研发人员:王沁刘大力
申请(专利权)人:北京多思科技工业园股份有限公司
类型:发明
国别省市:11[中国|北京]

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

1