再构成语句的方法以及具有该功能的计算机系统技术方案

技术编号:2820642 阅读:279 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供一种计算机系统(1),其具有:存储网表(31)的存储器(2);以及内容发生器(12),其生成包括执行包含于网表(31)的运算部分的多个运算的语句的程序(32)。运算部分进行多级逻辑运算,包括具有多个输入的运算、以及作为多个输入的源的前级的运算。内容发生器(12)包括:分析器(14),从输出级向输入级对运算部分进行解析,判断解析对象的运算是由于决定多个输入的一部分,而其他输入的至少一部分为自由的运算;以及转换器(15),如果是那样的运算,就将执行解析对象的运算的语句,再构成为执行该运算的多个输入的源的运算的任意一个、并跳过成为自由的输入的源的运算的语句,并进行输出。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及再构成包含于程序(program)和/或包括硬件控制信息 的进程(procedure)中的语句的方法以及计算机系统。
技术介绍
从数据的输入到运算结果的输出往往用多级构成的逻辑(逻辑运算) 来定义。多级(多级构成)的逻辑运算在编码阶段,沿着数据或信息从输 入到输出的时间经过,从输入阶段的运算向输出阶段的运算表述。而且, 通常按照其表述或按照时间经过来执行多级逻辑运算。多^il辑运算的一 个例子是作为逻辑电路安装在LSI等上的部分。很多逻辑电路,以AND 和OR等多种门电路作为运算元件,利用这些运算元件的多级组合来构成。在多级逻辑电路中,后续(后级)运算元件以前级的多个运算元件的 输出作为输入进行运算。用于安装多级逻辑电路的典型的硬件具有足以构 成前级的多个运算元件并行地进行动作的电路的硬件资源,例如具有逻辑 运算元件(门元件、运算元件)、布线。因此前级的多个运算元件的运算 顺序不成问题。但是,当在硬件资源不充分的硬件上安装多级逻辑电路时, 或利用程序按时序执行多^it辑运算时,前级的运算顺序有可能影响运算 速度。利用程序按时序执行多级逻辑电路的一个例子,是设计LSI时进行LSI 功能發汪的仿真(simulation),作为LSI的仿真方法,已知有事件驱动方 式和基于周期的方式。事件驱动方式是沿着时间轴来跟踪信号值的变化及 其影响的方式。基于周期的方式是1个时钟周期线性评价1次电路内的全 部逻辑的方式。因此需要在1个时钟周期内基本上对构成电路的多^JC辑 的全部运算进^f价。基于周期的方式必须每个时钟周期都评价全部逻辑。因此乍一看感觉 比事件方式还慢。但是由于不需要对事件列表插入删除这样的管理,实际 进行仿真时,有可能比事件驱动方式还快。特别是当对活动率高(信号变化活跃)的近年来意在向管道式iL艮的LSI进行仿真时,简单一律地评价 全部逻辑的基于周期的方式比一一跟踪信号变化的事件驱动方式速度快。随着LSI的设计规模的增大,仿真的快速化变得越来越重要。日本国 特许公开公报2000-57203号公开了下述方法,即,在基于周期的方式的 仿真中,保持所接收的网表的意思(运算程序)不变,直接以减少程序文 字数量的方式去除门(gate),或以因式分解的形式表现大型门等方法,从 而仿真转换为快速形式。日本国特许公开公报2000 - 82091号记载着下述技术,即为了快速地进行功能仿真,按照功能电路信息提取功能单元,计 算每一功能单元的各功能的执行频度,利用各功能的执行频度,根据功能 电路信息生成功能电路的仿真模型。随着LSI设计规模的增大,要求仿真速度进一步提高。如果仿真所需 要的时间长,则LSI设计进度就会拉长。另一方面,如果为了缩短设计进 度而减少仿真量,则在LSI制造后,会成为发生暴露出不理想等问题的主 要原因。而且,在利用计算机等的程序工作的系统中执行多^JC辑运算时, 能够缩短执行时间是4艮重要的。
技术实现思路
本专利技术的方式之一,为具有用于存储第1进程的存储器的计算机系统。 该第l进程具有进行包括输入级和输出级的多级逻辑运算的运算部分,运 算部分包括具有多个输入的运算、和作为多个输入的源的前级运算(多 个)。该计算机系统还具有生成第2进程的单元。第2进程包括多条用于执 行包含于第1进程的运算部分的多个运算的语句。生成该第2进程的单元 (调度(scheduling)功能)具有从输出级向输入级对存储于存储器的运 算部分进行解析的单元。该解析单元可以判断解析对象的运算是下述第1 类型的运算,即该第l类型的运算是指由于决定解析对象的运算的多个 输入的一部分,而其他输入的至少一部分则为自由的输入。生成第2进程的单元还具有下述单元,即,如果解析对象的运算是第 1类型的运算,就将用于执行解析对象的运算的语句再构成为至少一个语 句并输出。至少一个语句包括用于执行解析对象的运算的多个输入的源(发生源)的运算中的任意一个、即执行前级的多个运算的任意一个,并 跳过由此而成为自由的输入的源(发生源)的运算、即跳过前级的运算中 的任意一个的语句。典型地,输出单元将用于执行解析对象的运算的语句再构成为包括下述4个语句的多个语句,即(l)用于以解析对象的运算的多个输入中的一个作为第l输入、并执 行该第l输入的源的运算的第l语句。(2 )用于设定解析对象的运算的输出的第2语句。(3) 用于执行因第l输入而成为自由的输入的源的运算的第3语句。(4) 用于在因第1输入而发生自由的输入时,跳过成为自由的输入的 源的运算的第4语句。典型的该第4语句,是用于在因第l输入而发生自 由的输入时,跳过上述第3语句的语句,这些语句不一定按照这一顺序表 述。第1进程的一个方式是包括多^JC辑运算的逻辑电路的表述或逻辑合 成该逻辑电路的门电平的网表。第2进程的一个方式是计算^^呈序(以下 称为程序),多个语句包括控制计算M件的多^令。第2进程的另一个 方式,是用于对可再构成的逻辑电路进行再构成的硬件控制信息,多个语 句包括用于以周期为单位来再构成逻辑电路的至少一部分的配置 (configuration)信息。第1进程的其他方式也可以是这些程序或硬件控 制信息。在本说明书中,所谓"输入是自由的"或"发生自由的输入",表示在 某运算(本i兌明书的"第1类型的运算")中,即4吏不决定该运算的自由输 入值,也能决定该运算的输出的情况。例如,如果是2个输入的AND门, 只要一个输入(例如本说明书中的"第l输入")为"0"(负或伪),则即 使不决定另一输入,AND门的输出也为0。在这种情况下,另一输入为"自 由的输入"。多个输入的AND门也一样。如果是2个输入的OR门,只要 1个输入(第1输入)为1 (正或真),则即佳是不决定另一输入,OR门 的输出也是l。在这种情况下,其他输入是"自由输入"。多输入的OR门 也一样。如果是两个输入的选择器,只要决定了选择信号(第l输入),则由此未被选择的一方的输入为自由输入。没有必要为了得到以前级输出为输入的运算部分的结果,执行已成为 自由的输入的源(发生源)的运算。在作为本专利技术方式之一的计算机系统中,生成第2进程的单元在生成包含执行运算的语句的进程时,解析单元 从输出级侧到输入级侧对包含于第1进程的运算部分中的运算进行解析。 通it^输出级到输入级进行解析,能够判断输入为自由输入的类型(第1 类型)的运算,能够判断是否需要执行(评价)相对于该解析对象的运算 的前^算。然后,如果解析对象的运算是其输入的一部分为自由的输入的第1类 型,则输出单元就将执行该运算的语句再构成为上述第1~第4语句并输 出到存储器。包含再构成的语句的进程,在发生了自由的输入时,为跳过 该自由的输入的源的运算的执行的进程。生成第2进程的单元还包含递归(Recursive)(反复)处理。也就是 生成第2进程的单元还具有利用解析单元和输出单元来同样地对输出到存 储器的包含于所再构成的语句中的运算进行递归再构成的功能。因此,利 用生成第2进程的单元能够生成下述第2进程,该第2进程包括在包含于 第1进程的运算部分的运算中发生自由的输入时,能够利用以跳过该输入 的源的运算的执行(评价)的方式调度的多个语句(语句群)来表现第1 进程的运算部分。如果解析本文档来自技高网
...

【技术保护点】
一种计算机系统,具有用于存储第1进程的存储器,其中, 所述第1进程具有进行包括输入级和输出级的多级逻辑运算的运算部分,所述运算部分包括具有多个输入的运算、和作为所述多个输入的源的前级运算; 该计算机系统还具有生成第2进程的单元,所述第2进程包括多条用于执行包含于所述运算部分中的多个运算的语句; 生成所述第2进程的单元,具有: 进行解析的单元,其从所述输出级向所述输入级对存储于所述存储器的所述运算部分进行解析,可以判断解析对象的运算是下述第1类型的运算,即该第1类型的运算是指由于决定解析对象的运算的多个输入的一部分,而其他输入的至少一部分则为自由的输入;以及 进行输出的单元,如果所述解析对象的运算是所述第1类型的运算,就将用于执行所述解析对象的运算的语句再构成为至少1个语句并输出; 所述至少一个语句包括用于执行所述解析对象的运算的多个输入的源的运算中的任意一个、并跳过由此而成为自由的输入的源的运算的语句。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:本田广树
申请(专利权)人:富士施乐株式会社
类型:发明
国别省市:JP[日本]

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

1