半导体装置的操作方法和半导体系统制造方法及图纸

技术编号:15271092 阅读:117 留言:0更新日期:2017-05-04 09:10
本发明专利技术提供一种半导体装置的操作方法和半导体系统。半导体装置的操作方法,包括:从由编译器生成的原始中间表示(IR)搜索循环代码;确定循环代码是否满足预定条件;当确定循环代码满足所述预定条件时,使用与编译器分离的解释器计算循环代码,其中,解释器包括解释器框架;将计算循环代码的结果存储到解释器框架中;使用用于访问所述结果的访问代码替代原始IR中的循环代码,以生成更新的IR。

Operation method of semiconductor device and semiconductor system

The invention provides a method for operating a semiconductor device and a semiconductor system. The operating method of the semiconductor device, said: from the original intermediate generated by the compiler (IR) search loop code; cyclic code to determine whether satisfies a predetermined condition; when determining cyclic code satisfies the predetermined condition, the use of compiler interpreter loop separation calculation code, which includes the interpreter interpreter framework; the calculation of cyclic code the result is stored in the loop code interpreter framework; used for access to the results of the access code instead of the original IR, to generate an updated IR.

【技术实现步骤摘要】
本申请要求于2015年10月26日提交到韩国知识产权局的第10-2015-0148715号韩国专利申请的优先权,所述韩国专利申请的公开通过引用全部包含于此。
本专利技术构思涉及一种半导体装置的操作方法和半导体系统
技术介绍
在计算机编程中,源代码是包括用编程语言(源语言)编写的指令的计算机程序或软件的文本文件版本。编译器是将源代码变换为另一计算机语言(目标语言)的目标代码的计算机程序。例如,目标代码典型地具有被称为对象代码的二进制形式。在编译器理论中,循环优化是通过减少与循环有关的开销从而增加执行速度的处理。因此,任何循环或迭代需要被优化以减少通过编译源代码而生成的目标代码的执行时间。例如,可将基于递推链(CR)的循环简化技术应用在目标代码内以简化循环,并可因此减少目标代码的执行时间。然而,在特定环境下可能不能应用这项技术。因此,需要不基于CR的优化循环的技术。
技术实现思路
专利技术构思的示例性实施例提供一种半导体装置的操作方法、计算机可读记录介质和半导体系统,即使当循环的迭代次数被除在循环中的归纳变量之外的变量影响时,其也能够优化循环。根据本专利技术构思的一个示例性实施例,提供一种半导体装置的操作方法,包括:从由编译器生成的原始中间表示(IR)搜索循环代码;确定循环代码是否满足预定条件;当确定循环代码满足所述预定条件时,使用与编译器分离的解释器计算循环代码;将计算循环代码的结果存储到解释器的解释器框架中;使用用于访问所述结果的访问代码替代原始IR中的循环代码以生成更新的IR。根据本专利技术构思的一个示例性实施例,提供一种半导体装置的操作方法,包括:编译器编译源代码以生成中间表示(IR);在原始IR中搜索循环代码;生成扩展IR(EIR)代码,其中,EIR代码与包括在循环代码中的IR代码对应并且包括与IR代码的算符对应的扩展算符,与编译器分离的解释器通过执行扩展算符来计算EIR代码,使用用于访问计算EIR代码的结果的访问代码替代原始IR中的循环代码,以生成更新的IR;编译器编译更新的IR。根据本专利技术构思的一个示例性实施例,提供一种半导体装置的操作方法,包括:通过使用编译器执行第一编译,生成包括关于虚拟寄存器的虚拟寄存器信息的原始中间表示(IR),在原始IR中搜索循环代码,生成扩展IR(EIR)代码,其中,EIR代码与包括在循环代码中的IR代码对应且包括关于与虚拟寄存器独立地被分配至存储器的解释器框架的解释器框架信息;使用访问解释器框架并且与编译器分离地执行的解释器计算EIR代码;将作为计算EIR代码的结果的结果值存储到解释器框架中;使用用于访问所述结果值的访问代码替代原始IR中的循环代码,以生成更新的IR;使用编译器对更新的IR执行第二编译。根据本专利技术构思的一个示例性实施例,提供一种包括指令的计算机可读记录介质,所述指令使处理器:从由编译器生成的中间表示(IR)搜索循环代码;确定循环代码是否满足预定的条件的集合,生成与编译器分离地计算循环代码的解释器架构和解释器框架,其中,解释器架构包括计算循环代码的解释器,解释器框架用于存储从循环代码的计算获得的中间值;使用解释器计算循环代码,将作为计算循环代码的结果的结果值存储到解释器框架中,并使用用于访问结果值的访问代码替代IR中的循环代码。根据本专利技术构思的一个示例性实施例,提供一种半导体系统,包括:编译器,用于从源代码生成原始中间表示(IR);解释器,用于接收扩展IR(EIR)代码,其中,EIR代码与包括在原始IR中的循环代码中的IR代码对应,并且使用与IR代码的算符对应的扩展算符,其中,解释器通过执行EIR代码来计算循环代码,并使用用于访问计算循环代码的结果的访问代码替代原始IR中的循环代码。根据本专利技术构思的一个示例性实施例,提供一种优化计算机程序的方法,包括:将源代码编译为原始中间表示(IR);确定原始IR中的循环代码是否满足条件;当所述确定的步骤确定循环代码满足所述条件时,执行循环代码以生成结果值,使用用于访问所述结果值的访问代码替代原始IR中的循环代码以生成更新的IR,并将更新的IR编译为目标代码;当循环代码不满足所述条件时,将原始IR编译为目标代码。附图说明从下面结合附图的具体实施方式中,专利技术构思的示例性实施例将被更加清楚地理解。图1是示出根据专利技术构思的示例性实施例的半导体装置的操作方法的示意图。图2是示出根据专利技术构思的示例性实施例的解释器架构的示意图。图3是示出根据专利技术构思的示例性实施例的扩展中间表示(EIR)代码的示意图。图4至图11是示出根据专利技术构思的示例性实施例的操作方法的示意图。图12是示出根据专利技术构思的示例性实施例的操作方法的流程图。图13是示出根据专利技术构思的示例性实施例的半导体装置的操作方法的流程图。图14是可适用根据专利技术构思的示例性实施例的半导体装置的操作方法和半导体系统的示例性电子系统的框图。图15至图17是示出可适用根据专利技术构思的示例性实施例的半导体装置的操作方法的示例性半导体系统的示意图。具体实施方式图1是示出根据专利技术构思的示例性实施例的半导体装置的操作方法的示意图。参照图1,半导体系统1接收源代码并输出目标代码,并且半导体系统1包括前端50、解释器架构100和后端150。在一个实施例中,半导体系统1包括一个或多个处理器和半导体存储器。在一个实施例中,前端50、解释器架构100和后端150是存储在存储器中的可由一个或多个处理器执行的计算机程序。在另一实施例中,前端50、解释器架构100和后端150中的各个分别由多个处理器中的不同处理器实施,或者由单个处理器实施。源代码是用编程语言编写的代码。例如,源代码可用可被编译的语言(诸如,C语言)编写。然而,专利技术构思不限于任何特定的编程语言的源代码。目标代码是具有可被计算机系统执行的形式(例如,二进制形式)的代码。例如,目标代码可以是对象代码或机器代码。目标代码根据目标平台(例如,目标代码将被执行的平台)的类型可以以各种方式被表示。前端50通过分析源代码生成原始中间表示(IR)20。原始IR20可是程序的内部表示或中间表示。原始IR20与源代码不同且可从源代码获得。在一个实施例中,前端50管理符号表和数据结构,其中,数据结构将源代码中的符号表的各种符号映射为诸如位置、类型和范围的信息。在一个实施例中,前端50管理包括用于源代码中的每个标识符的与关于源代码中的标识符的声明或外观的信息关联的入口的数据结构,且数据结构由编译器使用以编译源代码。解释器架构100接收由前端50生成的原始IR20。解释器架构100从原始IR20搜索循环代码,计算循环代码的结果值,并输出通过使用访问结果值的访问代码替代循环代码而获得的更新的IR22。例如,如果循环代码重复地执行用于返回值的函数并将该值加到变量,则循环代码的结果值可以是变量的最终值。解释器架构100使用解释器110来计算或执行循环代码。解释器110通过执行与原始IR20对应的扩展IR(EIR)10来计算循环代码,且EIR10可以是用于解释器区域中的处理的表示,其中,解释器区域不同于编译器区域(诸如,前端50和后端150)。稍后将参照图2和图3详细地描述EIR10。后端150从由前端50生成的原始IR20或者从由解释器架构100生成的更新的IR22收集程序信息本文档来自技高网...
半导体装置的操作方法和半导体系统

【技术保护点】
一种半导体装置的操作方法,包括:从由编译器生成的原始中间表示(IR)搜索循环代码;确定循环代码是否满足预定条件;当确定循环代码满足所述预定条件时,使用与编译器分离的解释器计算循环代码,其中,解释器包括解释器框架;将计算循环代码的结果存储到解释器框架中;使用用于访问所述结果的访问代码替代原始中间表示中的循环代码,以生成更新的中间表示。

【技术特征摘要】
2015.10.26 KR 10-2015-01487151.一种半导体装置的操作方法,包括:从由编译器生成的原始中间表示(IR)搜索循环代码;确定循环代码是否满足预定条件;当确定循环代码满足所述预定条件时,使用与编译器分离的解释器计算循环代码,其中,解释器包括解释器框架;将计算循环代码的结果存储到解释器框架中;使用用于访问所述结果的访问代码替代原始中间表示中的循环代码,以生成更新的中间表示。2.如权利要求1所述的操作方法,其中,确定循环代码是否满足预定条件的步骤包括:确定以下项中的至少一项:循环代码是否是最内层的循环、循环代码是否被设置为单个基本块、以及循环代码是否包括单个预编译头块和单个退出块。3.如权利要求1所述的操作方法,其中,确定循环代码是否满足预定条件的步骤包括:确定循环代码是否不包括任何存储器访问代码或函数调用代码。4.如权利要求1所述的操作方法,在计算循环代码之前还包括:确定包括在循环代码中的归纳变量的初始值。5.如权利要求4所述的操作方法,其中,确定归纳变量的初始值的步骤包括:将确定的初始值存储到解释器框架中。6.如权利要求1所述的操作方法,其中,解释器使用与包括在原始中间表示中的代码中的算符对应的扩展算符计算循环代码。7.如权利要求1所述的操作方法,其中,解释器框架与由编译器使用的虚拟寄存器独立地被分配至存储器。8.如权利要求7所述的操作方法,其中,解释器还包括:映射表,存储解释器框架与虚拟寄存器之间的映射关系。9.如权利要求7所述的操作方法,其中,解释器框架包括:第一单位框架和第二单位框架,其中,第一单位框架和第二单位框架互相连续,并且第一单位框架和第二单位框架被映射到单个值或单个虚拟寄存器。10.如权利要求7所述的操作方法,其中,访问代码包括:将存储在解释器框架中的所述结果存储到与解释器框架对应的虚拟寄存器中的代码。11.如权利要求1所述的操作方法,其中,循环代码包括:至少一个...

【专利技术属性】
技术研发人员:李锺源朴峻模
申请(专利权)人:三星电子株式会社
类型:发明
国别省市:韩国;KR

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

1