CN110414029B - 半导体lsi设计装置以及设计方法 - Google Patents

半导体lsi设计装置以及设计方法 Download PDF

Info

Publication number
CN110414029B
CN110414029B CN201910256473.0A CN201910256473A CN110414029B CN 110414029 B CN110414029 B CN 110414029B CN 201910256473 A CN201910256473 A CN 201910256473A CN 110414029 B CN110414029 B CN 110414029B
Authority
CN
China
Prior art keywords
circuit
unit
combination circuit
information
order
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.)
Active
Application number
CN201910256473.0A
Other languages
English (en)
Other versions
CN110414029A (zh
Inventor
上园巧
鸟羽忠信
白石雅裕
原田英雄
西川悟史
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Publication of CN110414029A publication Critical patent/CN110414029A/zh
Application granted granted Critical
Publication of CN110414029B publication Critical patent/CN110414029B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/327Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3308Design verification, e.g. functional simulation or model checking using simulation
    • G06F30/331Design verification, e.g. functional simulation or model checking using simulation with hardware acceleration, e.g. by using field programmable gate array [FPGA] or emulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Power Engineering (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Microelectronics & Electronic Packaging (AREA)

Abstract

本发明提供一种控制装置的逻辑安装时的必要资源削减技术和验证技术。具备以下单元来构成半导体LSI设计装置:通过赋予功能块的运算顺序的连接信息而生成组合电路的单元,该组合电路通过组合根据应用程序规格在功能块库中定义的功能块而构成;将所述组合电路转换为能够应用于以时分方式多次使用功能块的顺序电路的运算顺序信息的单元;根据生成的运算顺序信息逆转换为组合电路的单元;验证所述组合电路和逆转换的组合电路的逻辑等价性的单元;以及结合所述运算顺序信息、所述顺序电路以及功能块的单元。

Description

半导体LSI设计装置以及设计方法
技术领域
本发明涉及用于要求高安全性的控制装置的半导体LSI设计装置以及设计方法。
背景技术
以往,已对控制装置使用微型计算机,但是在要求高安全性的控制装置例如大型工厂、发电施设等的控制装置中,要求以安全的提高、防篡改性提高为目的的无处理器的硬接线方式。另一方面,为了确保每个应用设备的调整的容易性,还要求维护性。为了满足这些要求,对控制装置开始使用FPGA。特别是,在高安全控制装置中,为了避免由中子等放射线引起的软错误导致在控制装置中发生暂时性故障并停止,开始使用软错误耐受性高的Flash型的FPGA。
作为背景技术,有日本特开2005-249609号公报(专利文献1)。在专利文献1中,记载了“一种安全保护仪器系统,其是使用从ASIC以及FPGA选择的硬件中安装的数字逻辑而构筑的原子炉的安全保护仪器系统,其特征在于,使用功能单元和功能模块中的至少一者来构成数字逻辑部分,在所述功能单元中,对于输入的所有的逻辑模式的输出的逻辑模式(pattern)在安装前阶段被预先验证,所述功能模块由组合所述验证完成的功能单元而构成,所述功能模块仅由具有与所述验证完成的功能单元相同的逻辑结构的功能单元构成。”
在先技术文献
专利文献
专利文献1:日本特开2005-249609号公报
发明内容
发明要解决的课题
在专利文献1中,对由可靠性高的数字信号处理装置构成的安全保护仪器系统及其操作方法进行了记载。但是,对于安装到FPGA等LSI中时的资源却没有提及。例如,一般地,与SRAM型的FPGA相比,Flash型的FPGA的能够搭载的逻辑规模小。此外,还有以低成本化为目的而使用低价且搭载逻辑规模小的FPGA的情况。因此,存在以下可能性:不能将控制装置所需的控制逻辑搭载到一个FPGA中,而需要使用多个FPGA,导致控制装置的复杂化、验证成本的增加等。因此,控制逻辑安装所需的资源的削减在要求高安全性的控制装置中是一个重要的技术。
此外,在要求高安全性的控制装置中,除了诊断等安全功能的搭载、多路复用等之外,在设计过程中还要求高安全性。在高安全控制装置的设计过程中,每次执行从规格到设计、从设计到安装等设计步骤时,需要对在其前后是否有匹配性、是否有错误进行验证。例如,在根据RTL描述生成网表时,在FPGA等LSI设计中使用的逻辑合成工具进行资源的优化、用于缩小逻辑的资源共享等逻辑等价转换。在高安全控制装置的设计中,为了对正确地进行工具的逻辑等价转换作业进行验证,需要RTL描述和网表的逻辑等价性验证。
如上所述,在高安全控制装置中,在有限的安装资源中,安装控制逻辑并对其进行验证是高安全控制装置的实现中一个重要的技术要素。
因此,在本发明中,目的在于提供一种控制装置的逻辑安装时所需的资源削减技术和验证技术。
用于解决课题的技术方案
在本发明的半导体LSI设计装置的优选例中,具备以下的单元而构成:通过赋予功能块的运算顺序的连接信息而生成组合电路的单元,该组合电路通过根据应用程序规格组合在功能块库中定义的功能块而构成;将所述组合电路转换为能够应用于以时分方式多次使用功能块的顺序电路的运算顺序信息的单元;根据生成的运算顺序信息逆转换为组合电路的单元;验证所述组合电路和逆转换后的组合电路的逻辑等价性的单元;以及结合所述运算顺序信息、所述顺序电路以及功能块的单元。
此外,作为本发明的其他的特征,其特征在于,在所述半导体LSI设计装置中,在从组合电路转换为顺序电路的运算顺序信息的单元中使用的顺序电路是具有以下部件的顺序电路:运算顺序存储部,存储运算顺序信息;功能块组,至少将所述组合电路内使用的功能块按照种类逐一并列连接;存储器,依次存储输入数据、由功能块执行的运算结果;存储器控制部,读出所述存储器中存储的数据作为对所述功能块的输入;输入选择器,筛选读出的所述数据作为对所述功能块组的输入;输出选择器,选择所述功能块组的运算结果并存放到所述存储器中;以及运算执行控制部,根据所述运算顺序信息,控制所述存储器控制部、所述输入选择器以及所述输出选择器。
此外,作为本发明的又一个特征,其特征在于,在所述半导体LSI设计装置中,在功能块库中定义的各功能块中,除了定义了针对该功能块本来实现的功能的输入输出引脚之外,还定义了与运算内容无关的运算开始信号输入引脚和运算结束信号输出引脚。
发明效果
根据本发明,能够以已验证的单元削减控制装置的逻辑安装所需的资源。
上述以外的课题、结构以及效果通过以下的实施方式的说明而明确。
附图说明
图1是实施例1、2所涉及的半导体LSI设计装置的结构图的例子。
图2是实施例1的控制电路设计部中的处理的流程图。
图3是示出本发明的功能块库中登记的各功能块的(A):输入输出引脚的结构例以及(B):HDL形式的定义例的图。
图4是示出由本发明所涉及的组合电路设计部创建的组合电路的例子的图。
图5是本发明所涉及的组合电路-运算顺序信息转换部生成的运算顺序信息的结构例。
图6是示出本发明所涉及的运算控制部-运算顺序信息结合部输出的应用程序HDL的例子的图。
图7是实施例2的控制电路设计部中的处理的流程图。
图8是实施例3所涉及的半导体LSI设计装置的结构图的例子。
图9是实施例3的控制电路设计部中的处理的流程图。
附图标记说明
3 应用程序规格
4 应用程序HDL
5 验证结果信息
6 顺序电路HDL
7 应用程序网表
8 逻辑等价性判断结果信息
16 组合电路HDL
17 运算顺序信息
18 逆转换组合电路HDL
20 组合电路HDL的框图的例
21~24 功能块
31~34 输入引脚
35~36 输出引脚
40 运算开始信号引脚
41~45 运算开始信号传播布线
46 运算结束信号引脚
51~60 布线
70 应用程序HDL的结构例
71 功能块组
72 运算执行控制部
73 运算顺序存储部
74 存储器
75 存储器控制部
76 存储器输入选择器
77 存储器输出选择器
78 输入选择器
79 输出选择器
81 内部逻辑删除完成组合电路HDL
82 内部逻辑删除完成逆转换组合电路HDL
100 半导体LSI设计装置
101 控制电路设计部
110 运算部
111 组合电路设计部
112 组合电路-运算顺序信息转换部
113 运算顺序信息-组合电路转换部
114 运算控制部-运算顺序信息结合部
115 逻辑等价性验证部
116 功能块内逻辑删除部
117 逻辑合成配置布线部
118 逻辑等价性判断部
120 存储部
121 半导体LSI设计程序(存储区域)
122 功能块库(存储区域)
123 顺序电路HDL(存储区域)
124 组合电路HDL(存储区域)
125 运算顺序信息(存储区域)
126 逆转换组合电路HDL(存储区域)
127 应用程序HDL(存储区域)
128 验证结果信息(存储区域)
129A 应用程序网表(存储区域)
129B 逻辑等价性判断结果信息(存储区域)
130 输入部
140 显示/输出部
150 介质读取部
160 通信部
170 网络
181 逻辑电路模拟器
182 逻辑合成装置
190 半导体LSI制造装置
具体实施方式
以下,使用附图说明实施例。
[实施例1]
图1是本实施例的半导体LSI设计装置100的结构图的例子。
半导体LSI设计装置100能够在通用的计算机上构成,其硬件结构具备:由CPU(Central Processing Unit,中央处理单元)、RAM(Random Access Memory,随机存取存储器)等构成的运算部110、由ROM(Read Only Memory,只读存储器)、HDD(Hard Disk Drive,硬盘驱动器)、使用了闪速存储器等的SSD(Solid State Drive,固态驱动器)等构成的存储部120、由键盘、鼠标等输入设备构成的输入部130、由LCD(Liquid Crystal Display、液晶显示器)、有机EL显示器等显示装置、各种输出装置等构成的显示/输出部140、读出CD-ROM、USB存储器等具有便携性的便携型存储介质的信息的介质读取部150、由NIC(NetworkInterface Card,网络接口卡)等构成的通信部160等。
通信部160经由网络170与外部的逻辑电路模拟器181、逻辑合成装置182以及半导体LSI制造装置190等连接。
运算部110通过将存储部120中存储的半导体LSI设计程序121加载到RAM中并由CPU执行,从而实现具有以下各功能部的控制电路设计部101。控制电路设计部101由组合电路设计部111、组合电路-运算顺序信息转换部112、运算顺序信息-组合电路转换部113、运算控制部-运算顺序信息结合部114以及逻辑等价性验证部115构成,在实施例2中进一步由功能块内逻辑删除部116构成。
存储部120具有半导体LSI设计程序(存储区域)121、功能块库(存储区域)122、顺序电路HDL(存储区域)123、组合电路HDL(存储区域)124、运算顺序信息(存储区域)125、逆转换组合电路HDL(存储区域)126、应用程序HDL(存储区域)127以及验证结果信息(存储区域)128。
图2示出实施例1的控制电路设计部101中的处理的流程图。
组合电路设计部111向显示/输出部140呈现用户接口,对于控制电路设计者(用户)在此之后进行设计的控制电路,基于应用程序规格3,以硬件描述语言形式或者通过对表示功能块的图形进行配置的输入形式等,接受从输入部130输入的信息,并生成组合电路。组合电路设计部111呈现功能块库122中登记的功能块的菜单,控制电路设计者(用户)自由地配置菜单内的功能块,对配置的各功能块之间进行布线,附加输入输出引脚,从而进行实现应用程序规格3的组合电路的设计。组合电路设计部111输出HDL形式的组合电路HDL16,并存储到组合电路HDL(存储区域)124中。
本实施例的功能块库122登记由各种应用程序的控制电路共同使用的各种功能块。功能块是逻辑运算、四则运算、积分运算等,电路规模是多种多样的,但是,是能够针对对于功能块的所有输入模式的输出模式与根据设计规格期待的预测值的模式全部一致进行确认的逻辑规模。各功能块是预先由属性验证、动态验证等进行了验证并登记的验证完成HDL库。
进而,关于各功能块,如图3(A)、(B)所示,除了针对该功能块本来实现的功能的输入输出(输入引脚:a_in、b_in、输出引脚:e_out、f_out)之外,还设有与功能块的运算内容无关的运算开始信号输入引脚(C_St_in)和运算结束信号输出引脚(C_End_out)。若各功能块将脉冲输入到运算开始信号输入引脚中,则取入输入到输入引脚中的值,并在功能块内开始运算。若结束功能块内的运算,则将运算结果保持在输出信号中,并将脉冲输出到运算结束信号输出引脚。
在本实施例的各功能块中,在不改变HDL形式的情况下,如图3(B)所示,对运算开始信号输入引脚(C_St_in)和运算结束信号输出引脚(C_End_out)进行定义并登记。
在组合电路设计部111中,控制电路设计者(用户)为了在配置各功能块时明确表示运算顺序,将从最初执行的功能块到最后执行的功能块的运算开始信号引脚(输入)和运算结束信号引脚(输出)进行成串连接。
图4是由组合电路设计部111创建的组合电路HDL16的框图的例子(20)。在图4的例子中,排列配置四个功能块(21~24),配置输入引脚(31~34)和输出引脚(35~36),用布线(51~60)对功能块21~24和输入输出引脚之间进行连线,从而实现4输入2输出的组合电路。图中,功能块22和功能块24是具有相同功能的功能块。为了明确表示运算执行顺序,在框图(20)中设置运算开始信号引脚CalcSt(40),按照运算顺序依次连接(41~44)运算开始信号引脚和各功能块,设置运算结束信号引脚CalcEnd(46)并与最后执行的功能块(45)连接。
若各功能块将脉冲输入到运算开始信号输入引脚,则取入输入到输入引脚中的值,并在功能块内开始运算。若结束功能块内的运算,则将运算结果保持在输出信号中,并将脉冲输出到运算结束信号输出引脚。因此,为了运算执行图4所示的框图(20),需要向输入引脚(31~34)提供运算数据,并保持其数据不变,将脉冲输入到运算开始信号引脚40。在框图(20)的运算结束后,由于脉冲输出到运算结束信号引脚46,因此此时的输出引脚(35~36)的值成为框图(20)的运算结果。在一般使用的组合电路中,由于在向输入引脚提供运算数据的同时开始运算,因此运算顺序不明确,而在本实施例中,从运算开始信号引脚40输入的脉冲在配置的各功能块中传播,因此能够明确表示地示出运算顺序。
然而,运算顺序的明确表示的方法不限于上述方法,例如,也可以是在各功能块中设置运算顺序引脚(输入),将表示运算顺序的整数值输入到运算顺序引脚中等方法。
返回到图2的控制电路设计部101中的处理的流程图,组合电路-运算顺序信息转换部112分析组合电路设计部111输出的组合电路HDL16,并生成运算顺序信息17。图5是运算顺序信息17的结构例(125),由运算顺序(125a)、功能块种类(125b)、连接信息(125c)以及输入输出引脚/布线连接信息(125d、125e)构成。
说明组合电路-运算顺序信息转换部112的动作。首先,对于输入的组合电路HDL16,从运算开始信号引脚40追踪到运算结束信号引脚46,并按照出现的功能块的顺序分配运算顺序。首先,将运算顺序为1的功能块作为对象,将运算顺序存放到运算顺序栏(125a)中,将对功能块库122中登记的功能块进行识别的种类的数据存放到功能块种类栏(125b)中,并将对与对象功能块的输入输出引脚连接的布线进行识别的符号数据存放到连接信息栏(125c)中。识别布线的符号数据按照每个布线属性具有特征,能够判别布线是组合电路HDL16的输入引脚(I)、输出引脚(O)、块间布线(S)。作为每个布线属性的特征,有按照每个属性对符号数据设置偏移(输入引脚:(I)、输出引脚:(O)、块间布线:(S))等方法。另外,连接信息栏125c中存放的布线符号数据的顺序设为与功能块库122中登记的功能块的引脚的顺序一样。此外,将组合电路HDL16的输入引脚(31~34)、输出引脚(35~36)和布线的连接信息存放到输入输出引脚/布线连接信息栏(125d、125e)中。当组合电路HDL16内的所有的功能块的信息被存放到运算顺序信息(存储区域)125中之后,结束。
返回到图2的控制电路设计部101中的处理的流程图,运算控制部-运算顺序信息结合部114对预先创建并登记在顺序电路HDL(存储区域)123中的顺序电路HDL6、由组合电路-运算顺序信息转换部112创建的运算顺序信息17、以及功能块库122内的功能块HDL当中的由组合电路HDL16使用的所有的功能块进行逐一读出并将其结合,输出为应用程序HDL4。
图6是运算控制部-运算顺序信息结合部114输出的应用程序HDL4的结构例(70)。应用程序HDL4由预先创建的顺序电路HDL6、运算顺序信息17、以及功能块库122中登记的功能块组71构成。
顺序电路HDL6具有将运算顺序信息17存放到运算顺序存储部73中,并根据运算顺序信息17使用功能块组71来执行运算的功能。顺序电路HDL6的结构例如由存储器74、存储器控制部75、存储器输入选择器76、存储器输出选择器77、输入选择器78、输出选择器79、运算执行控制部72、存放运算顺序信息17的运算顺序存储部73构成。预先对顺序电路HDL6和功能块组71中包括的功能块进行验证。本电路的动作为如下所述。
动作1:对于输入数据(In1~In4),由存储器输入选择器76选择1数据,并存放到存储器控制部75控制的存储器74中。
动作2:运算执行控制部72获取运算顺序存储部73中存放的功能块种类。运算顺序存储部73根据运算顺序输出功能块种类。
动作3:存储器控制部75控制存储器74,并从存储器74读取输入数据。读取数据通过输入选择器78,并按顺序存放到FF中。输入选择器78由运算执行控制部72控制。
动作4:根据运算顺序,通过运算执行控制部72的控制,在功能块组71中对相应的一个功能块执行运算。
动作5:输出选择器79按顺序选择各功能块的输出,并按顺序存放到存储器74中。输出选择器79由运算执行控制部72控制。
动作6:对运算顺序存储部73中存放的所有的数据(运算顺序信息的各运算顺序数据),从动作2执行到动作5。
动作7:按顺序读取存储器74中存放的数据当中的运算结果数据,并由存储器输出选择器77输出到各输出端口。
另外,图6是由应用程序HDL4表示的电路的一个例子,例如,也可以设为将输入数据直接写入FF,而不具备存储器74的结构。
此外,在功能块组71中,可以搭载功能块库122中包括的所有的功能块,也可以参照运算顺序信息17,仅搭载使用的功能块。
返回到图2的控制电路设计部101中的处理的流程图,运算顺序信息-组合电路转换部113生成如运算顺序信息17所示那样执行功能块的逆转换组合电路HDL18。以下,示出生成方法例。
步骤1:从运算顺序信息17中获取运算顺序为i的功能块的种类和连接信息。
步骤2:参照功能块库122中登记的功能块,从功能块的种类中获取功能块的输入输出引脚信息。功能块由HDL描述,因此能够容易地获取输入输出引脚信息。
步骤3:生成并保持对功能块的实例进行定义的HDL实例定义语句。一般地,HDL实例定义语句由功能块的种类、布线连接信息构成,因此能够根据步骤2获取的信息唯一地生成。
步骤4:参照与相应功能块连接的所有的布线的布线符号数据,如果是输入输出布线,则在模块定义语句中追加布线定义。如果不是输入输出布线,则追加模块内布线的定义语句。
步骤5:创建模块定义语句、布线定义语句、功能块的实例定义语句、模块结束语句,并作为逆转换组合电路HDL18输出到逆转换组合电路HDL(存储区域)126中。
也能够将组合电路-运算顺序信息转换部112和运算顺序信息-组合电路转换部113创建为软件。此时,通过对各个软件进行由不同的组织、不同的设计者进行的设计、使用了不同的语言或编译器的开发,能够确保分集,并能够排除针对两种软件的共同重要因素故障,能够提高安全性。
逻辑等价性验证部115验证组合电路HDL16和逆转换组合电路HDL18的逻辑等价性,并输出验证结果信息5。对组合电路HDL16进行逻辑等价性转换并使形式改变后,进一步进行其逆转换,返回到组合电路构造并生成逆转换组合电路HDL18,因此验证对象的HDL均成为组合电路构造,电路的构成要素一一对应,由此,能够容易地验证逻辑等价性。另外,本逻辑等价性验证的目的为对组合电路-运算顺序信息转换部112正确地动作进行验证,因此如果通过组合电路-运算顺序信息转换部112和运算顺序信息-组合电路转换部113,按照规格正确地进行逻辑等价转换,则验证结果信息5始终表示为是逻辑等价的。反过来,如果是逻辑等价的,则验证出组合电路-运算顺序信息转换部112正确地进行了动作。
通过以上,根据本发明,对于执行多个同种类的功能块的组合电路,转换为能够应用于将同种类的一个功能块多次以时分形式使用的顺序电路的运算顺序信息,通过结合其运算顺序信息、顺序电路HDL和功能块并转换为应用程序HDL,从而能够削减电路使用资源。进而,通过运算顺序信息的逆转换和逻辑等价性验证,能够以短时间验证向运算顺序信息的转换的正当性。
通过以上方式,能够实现高安全控制装置的逻辑的削减和设计过程的高安全化的兼顾。
[实施例2]
图7是第二实施例的控制电路设计部101中的处理的流程图。对与图2相同的部分,标注相同的附图标记,由于结构、动作相同,因此省略说明。在本实施例中,代替验证组合电路HDL16和逆转换组合电路18的逻辑等价性,对从两个HDL中删除了功能块内的逻辑的HDL进行比较。参照图7,以下仅示出与实施例1存在变更的构成要素。
功能块内逻辑删除部116从组合电路HDL16和逆转换组合电路HDL18中仅删除由功能块库122定义的功能块的内部逻辑,并输出内部逻辑删除完成组合电路HDL81和内部逻辑删除完成逆转换组合电路HDL82。将这两个HDL输入到逻辑等价性验证部115中,并判断逻辑等价性。功能块库122中登记的功能块通过组合电路设计部111以及运算顺序信息-组合电路转换部113而组合进来,保证了组合电路HDL16和逆转换组合电路HDL18中包括的功能块的逻辑相同。因此,即使不对功能块的内部逻辑的逻辑等价性进行验证,由逻辑等价性验证部115进行的验证的品质也不会降低。
这样,通过变更,逻辑等价性验证对象的逻辑缩小,因此能够缩短逻辑等价性验证部115的处理时间。由此,在不损坏设计过程的安全性的情况下,能够实现验证时间乃至设计开发时间的短时间化。
[实施例3]
图8是实施例3的半导体LSI设计装置200的结构图的例子。与图1所示的半导体LSI设计装置100的结构图的不同之处在于,将逻辑合成配置布线部117、逻辑等价性判断部118新加入到运算部110中,并将应用程序网表(存储区域)129A、逻辑等价性判断结果信息(存储区域)129B新加入到存储部120中。
图9示出第三实施例的控制电路设计部101中的处理的流程图。对于与图2相同的构成要素,标注相同的附图标记,由于结构、动作相同,因此省略说明。
逻辑合成配置布线部117读入应用程序HDL4,进行用于安装到ASIC或者FPGA的逻辑合成和配置布线,并输出应用程序网表7。逻辑等价性判断部118判断应用程序HDL4和应用程序网表7的逻辑等价性,并输出逻辑等价性判断结果信息8。将逻辑等价性的判断方法设为与逻辑等价性验证部115相同的方法。
这样,通过变更,能够将电路使用资源少的顺序电路安装到ASIC或者FPGA中,并且能够提高设计过程的安全性。通过运算顺序信息-组合电路转换部113和逻辑等价性验证部115,能够判断应用程序HDL4的正当性。由此,能够以少的电路资源实现高安全控制装置的逻辑并安装到ASIC或者FPGA中,并且能够实现高安全设计过程。
另外,本发明不限于上述实施例,而包含各种变形例。例如,上述实施例是为了易于理解地说明本发明而进行详细说明的实施例,不一定限定为具备说明的所有的结构。此外,能够将某个实施例的结构的一部分置换为其他的实施例的结构,还能够在某个实施例的结构中加入其他的实施例的结构。此外,对于各实施例的结构的一部分,能够进行其他的结构的追加/删除/置换。此外,上述各结构、功能、处理部、处理单元等例如可以通过以集成电路对其一部分或者全部进行设计等以硬件来实现。此外,上述各构成、功能等可以通过解释并执行由处理器实现各个功能的程序,从而以软件实现。实现各功能的程序、表格、文件等的信息能够放置在存储器、硬盘、SSD(Solid State Drive,固态驱动器)等记录装置或者IC卡、SD卡、DVD等记录介质中。

Claims (9)

1.一种半导体LSI设计装置,其特征在于,
具备:
通过赋予功能块的运算顺序的连接信息而生成组合电路的单元,该组合电路通过根据应用程序规格组合在功能块库中定义的功能块而构成;
将所述组合电路转换为能够应用于以时分方式多次使用功能块的顺序电路的运算顺序信息的单元;
根据生成的运算顺序信息逆转换为组合电路的单元;
验证所述组合电路和逆转换后的组合电路的逻辑等价性的单元;以及
结合所述运算顺序信息、所述顺序电路以及功能块的单元,
在将所述组合电路转换为运算顺序信息的所述单元正确地进行了动作的情况下,验证逻辑等价性的所述单元输出表示逻辑等价的验证结果信息。
2.一种半导体LSI设计装置,其特征在于,
具备:
通过赋予功能块的运算顺序的连接信息而生成组合电路的单元,该组合电路通过根据应用程序规格组合在功能块库中定义的功能块而构成;
将所述组合电路转换为能够应用于以时分方式多次使用功能块的顺序电路的运算顺序信息的单元;
根据生成的运算顺序信息逆转换为组合电路的单元;
从所述组合电路和逆转换后的所述组合电路中删除功能块内的逻辑的单元;
验证由所述单元删除了逻辑的组合电路和逆转换组合电路的逻辑等价性的单元;以及
结合所述运算顺序信息、所述顺序电路以及功能块的单元,
在将所述组合电路转换为运算顺序信息的所述单元正确地进行了动作的情况下,验证逻辑等价性的所述单元输出表示逻辑等价的验证结果信息。
3.根据权利要求1或2所述的半导体LSI设计装置,其特征在于,
在从组合电路转换为顺序电路的运算顺序信息的单元中使用的顺序电路是具有以下部件的顺序电路:
运算顺序存储部,存储运算顺序信息;
功能块组,至少将所述组合电路内使用的功能块按照种类逐一并行连接;
存储器,依次存储输入数据、由功能块执行的运算结果;
存储器控制部,读出所述存储器中存储的数据作为对所述功能块的输入;
输入选择器,筛选读出的所述数据作为对所述功能块组的输入;
输出选择器,选择所述功能块组的运算结果并存放到所述存储器中;以及
运算执行控制部,根据所述运算顺序信息,控制所述存储器控制部、所述输入选择器以及所述输出选择器。
4.根据权利要求1所述的半导体LSI设计装置,其特征在于,
还设有:
为了将结合所述运算顺序信息、所述顺序电路以及功能块的单元输出的应用程序HDL安装到ASIC或者FPGA中,执行逻辑合成和配置布线的单元;以及
判断所述应用程序HDL和执行所述逻辑合成和配置布线而生成的应用程序网表的逻辑等价性的单元。
5.根据权利要求1或2所述的半导体LSI设计装置,其特征在于,
在功能块库中定义的各功能块中,除了定义了针对该功能块本来实现的功能的输入输出引脚之外,还定义了与运算内容无关的运算开始信号输入引脚和运算结束信号输出引脚。
6.根据权利要求5所述的半导体LSI设计装置,其特征在于,
将所述组合电路转换为能够应用于以时分方式多次使用功能块的顺序电路的运算顺序信息的单元对于所述组合电路从运算开始信号引脚追踪到运算结束信号引脚,并按照出现的功能块的顺序转换为运算顺序信息。
7.一种半导体LSI设计方法,其特征在于,
包括:
通过赋予功能块的运算顺序的连接信息而生成组合电路的工序,该组合电路通过根据应用程序规格组合在功能块库中定义的功能块而构成;
将所述组合电路转换为能够应用于以时分方式多次使用功能块的顺序电路的运算顺序信息的工序;
根据生成的运算顺序信息逆转换为组合电路的工序;
验证所述组合电路和逆转换的组合电路的逻辑等价性的工序;以及
结合所述运算顺序信息、所述顺序电路以及功能块的工序,
在将所述组合电路转换为运算顺序信息的所述工序中正确地进行了动作的情况下,在验证逻辑等价性的所述工序中输出表示逻辑等价的验证结果信息。
8.根据权利要求7所述的半导体LSI设计方法,其特征在于,
还设有:
为了将结合所述运算顺序信息、所述顺序电路以及功能块的工序输出的应用程序HDL安装到ASIC或者FPGA中,执行逻辑合成和配置布线的工序;以及
判断所述应用程序HDL和执行所述逻辑合成和配置布线而生成的应用程序网表的逻辑等价性的工序。
9.根据权利要求7所述的半导体LSI设计方法,其特征在于,
在功能块库中定义的各功能块中,除了定义了针对该功能块本来实现的功能的输入输出引脚之外,还定义了与运算内容无关的运算开始信号输入引脚和运算结束信号输出引脚,
在将所述组合电路转换为能够应用于以时分方式多次使用功能块的顺序电路的运算顺序信息的工序中,对于所述组合电路从运算开始信号引脚追踪到运算结束信号引脚,并按照出现的功能块的顺序转换为运算顺序信息。
CN201910256473.0A 2018-04-27 2019-03-29 半导体lsi设计装置以及设计方法 Active CN110414029B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-086617 2018-04-27
JP2018086617A JP7045921B2 (ja) 2018-04-27 2018-04-27 半導体lsi設計装置および設計方法

Publications (2)

Publication Number Publication Date
CN110414029A CN110414029A (zh) 2019-11-05
CN110414029B true CN110414029B (zh) 2023-06-27

Family

ID=66290191

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910256473.0A Active CN110414029B (zh) 2018-04-27 2019-03-29 半导体lsi设计装置以及设计方法

Country Status (4)

Country Link
US (1) US10747920B2 (zh)
EP (1) EP3564836A1 (zh)
JP (1) JP7045921B2 (zh)
CN (1) CN110414029B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7045921B2 (ja) * 2018-04-27 2022-04-01 株式会社日立製作所 半導体lsi設計装置および設計方法
JP7240350B2 (ja) * 2020-03-23 2023-03-15 株式会社東芝 演算装置及び演算方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6026220A (en) * 1996-11-19 2000-02-15 Unisys Corporation Method and apparatus for incremntally optimizing a circuit design
CN107526861A (zh) * 2016-06-15 2017-12-29 株式会社日立制作所 半导体lsi设计装置以及设计方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3196950B2 (ja) * 1993-11-30 2001-08-06 日本電信電話株式会社 回路情報の検証システム
US5644498A (en) * 1995-01-25 1997-07-01 Lsi Logic Corporation Timing shell generation through netlist reduction
JP4371856B2 (ja) * 2004-03-04 2009-11-25 株式会社東芝 安全保護計装システムおよびその取扱方法
JP4403187B2 (ja) * 2007-03-30 2010-01-20 富士通株式会社 設計データ変換プログラム、該プログラムを記録した記録媒体、設計データ変換装置、および設計データ変換方法
US9501408B2 (en) * 2013-02-19 2016-11-22 Globalfoundries Inc. Efficient validation of coherency between processor cores and accelerators in computer systems
JP7045921B2 (ja) * 2018-04-27 2022-04-01 株式会社日立製作所 半導体lsi設計装置および設計方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6026220A (en) * 1996-11-19 2000-02-15 Unisys Corporation Method and apparatus for incremntally optimizing a circuit design
CN107526861A (zh) * 2016-06-15 2017-12-29 株式会社日立制作所 半导体lsi设计装置以及设计方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Automated synthesis of micro-pipelines from behavioral Verilog HDL;I. Blunno 等;《Proceedings Sixth International Symposium on Advanced Research in Asynchronous Circuits and Systems (ASYNC 2000)》;20020806;第84-92页 *

Also Published As

Publication number Publication date
US10747920B2 (en) 2020-08-18
JP7045921B2 (ja) 2022-04-01
US20190332727A1 (en) 2019-10-31
EP3564836A1 (en) 2019-11-06
JP2019192097A (ja) 2019-10-31
CN110414029A (zh) 2019-11-05

Similar Documents

Publication Publication Date Title
US8997033B1 (en) Techniques for generating a single configuration file for multiple partial reconfiguration regions
US7788615B2 (en) Computer program product for verification using reachability overapproximation
JP6995451B2 (ja) 回路適正化装置及び回路適正化方法
US11748536B2 (en) Automated microprocessor design
US9679097B2 (en) Selective power state table composition
US8156458B2 (en) Uniquification and parent-child constructs for 1xN VLSI design
CN108140067B (zh) 用于电路设计优化的方法和系统
CN110414029B (zh) 半导体lsi设计装置以及设计方法
US8762907B2 (en) Hierarchical equivalence checking and efficient handling of equivalence checks when engineering change orders are in an unsharable register transfer level
US7523029B2 (en) Logic verification and logic cone extraction technique
US10235485B1 (en) Partial reconfiguration debugging using hybrid models
CN107526861B (zh) 半导体lsi设计装置以及设计方法
CN112597718B (zh) 集成电路设计的验证方法、验证装置以及存储介质
JP5830955B2 (ja) 検証装置、検証方法及び検証プログラム
US8555228B2 (en) Tool for glitch removal
Drechsler et al. Self-verification as the key technology for next generation electronic systems
US8751988B1 (en) Computer-implemented methods and systems for automatic generation of layout versus schematic (LVS) rule files and regression test data suites
US20040230414A1 (en) Method for verification of hardware designs with multiple asynchronous frequency domains
KR102545302B1 (ko) Cmos 기반 디지털 회로의 설계 및 검증 과정 자동화 프레임워크
JP6854994B1 (ja) 動作確認支援装置、動作確認支援方法及び動作確認支援プログラム
US20230205969A1 (en) Techniques for modeling and verification of convergence for hierarchical domain crossings
JP7274063B2 (ja) テストケース生成装置、テストケース生成方法及びテストケース生成プログラム
Zunin et al. CAD Architecture for Expansion of WSL-Based Combinational Circuits Dataset
JP2016134083A (ja) 静的タイミング解析方法、静的タイミング解析装置及び自動配置配線装置
JP2012160145A (ja) 論理シミュレーション方法および論理シミュレーション装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant