CN108604106A - 侧信道感知的自动布局和布线 - Google Patents
侧信道感知的自动布局和布线 Download PDFInfo
- Publication number
- CN108604106A CN108604106A CN201780009784.6A CN201780009784A CN108604106A CN 108604106 A CN108604106 A CN 108604106A CN 201780009784 A CN201780009784 A CN 201780009784A CN 108604106 A CN108604106 A CN 108604106A
- Authority
- CN
- China
- Prior art keywords
- power
- layout
- switching element
- distributed generation
- generation resource
- 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.)
- Granted
Links
- 238000013461 design Methods 0.000 claims abstract description 33
- 238000005457 optimization Methods 0.000 claims abstract description 11
- 238000000034 method Methods 0.000 claims description 26
- 238000003860 storage Methods 0.000 claims description 22
- 238000012545 processing Methods 0.000 claims description 11
- 238000002955 isolation Methods 0.000 claims description 8
- 230000005670 electromagnetic radiation Effects 0.000 claims description 5
- 230000008859 change Effects 0.000 claims description 3
- 210000000352 storage cell Anatomy 0.000 claims 9
- 210000004027 cell Anatomy 0.000 claims 6
- 239000013589 supplement Substances 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 12
- 230000005611 electricity Effects 0.000 description 9
- 230000009471 action Effects 0.000 description 8
- 230000015572 biosynthetic process Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000003786 synthesis reaction Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000008447 perception Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000012938 design process Methods 0.000 description 2
- 238000012942 design verification Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000000047 product Substances 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000005294 ferromagnetic effect Effects 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000005291 magnetic effect Effects 0.000 description 1
- 230000005389 magnetism Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 235000013599 spices Nutrition 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/75—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by inhibiting the analysis of circuitry or operation
- G06F21/755—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by inhibiting the analysis of circuitry or operation with measures against power attack
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05F—SYSTEMS FOR REGULATING ELECTRIC OR MAGNETIC VARIABLES
- G05F1/00—Automatic systems in which deviations of an electric quantity from one or more predetermined values are detected at the output of the system and fed back to a device within the system to restore the detected quantity to its predetermined value or values, i.e. retroactive systems
- G05F1/10—Regulating voltage or current
- G05F1/46—Regulating voltage or current wherein the variable actually regulated by the final control device is dc
- G05F1/56—Regulating voltage or current wherein the variable actually regulated by the final control device is dc using semiconductor devices in series with the load as final control devices
- G05F1/59—Regulating voltage or current wherein the variable actually regulated by the final control device is dc using semiconductor devices in series with the load as final control devices including plural semiconductor devices as final control devices for a single load
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/327—Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/392—Floor-planning or layout, e.g. partitioning or placement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/394—Routing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/06—Power analysis or power optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/72—Indexing scheme relating to groups G06F7/72 - G06F7/729
- G06F2207/7219—Countermeasures against side channel or fault attacks
- G06F2207/7266—Hardware adaptation, e.g. dual rail logic; calculate add and double simultaneously
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Geometry (AREA)
- Evolutionary Computation (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Automation & Control Theory (AREA)
- Computer Networks & Wireless Communication (AREA)
- Radar, Positioning & Navigation (AREA)
- Electromagnetism (AREA)
- Architecture (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
提供了可以替换、补充、或增强现有的电子设计自动化(EDA)软件工具的电力规划阶段模块、布线阶段模块、和布线阶段模块。电力规划阶段模块将分布式电源和切换元件网络添加到分配给芯片区域的电源框架或环(可以在布图规划阶段期间标识出)。布局阶段模块优化附接到已在电力规划阶段期间添加的或将要在其间添加的分布式电源的每个电源的单元的数目和类型。布线阶段模块优化布线长度以例如掩蔽功耗。
Description
相关申请的交叉引用
本申请要求于2016年2月8日递交的美国临时专利申请No.62/292,685的权益。
背景技术
针对电子电路的设计过程包括用于布局电路元件和布置导线和互连的路线的步骤。这可以在芯片级(针对集成电路或现场可编程门阵列)或在电路板级(针对印刷电路板或其它电路封装)处执行。电子设计自动化(EDA)工具(例如可通过铿腾电子科技有限公司(Cadence Design Systems,Inc)和新思科技有限公司(Synopsys,Inc)获得)在布局和布线阶段使用,以优化布置并使设计的复杂性增加(与手动版图设计相比)。
集成电路设计过程的物理设计阶段通常包括逻辑综合、布图规划、电力规划、布局、时钟树综合、布线、验证、和“下线”(用于制造的数据形式的导出)。这些阶段可以使用可以相关工具(其单独或一起构成EDA工具)来执行。例如,在一个具有自动布局布线(APR)软件的EDA工具中,可以从逻辑综合工具获得(作为逻辑综合阶段的一部分)的门级网表通过基于从该网表推断的连接来布局标准单元版图(布局阶段)以及随后自动布线单元(布线阶段)物理地实现于版图中。在APR软件与后续阶段中使用的软件分离的情况下,则可以从APR工具导出后期分析工具(如提取或电力分析工具)能够理解的布线设计格式。
发明内容
描述了侧信道感知的自动布局和布线工具和技术,其可以被并入或补充至电子设计自动化(EDA)工具以实现元件的自动纳入和布置,使得侧信道分析攻击难以嵌入核心设计上。
提供了可以替换、补充、或增强现有EDA模块的电力规划阶段模块、布局阶段模块和布线阶段模块。电力规划阶段模块将分布式电源和/或切换元件网络添加到分配给芯片区域的(一个或多个)电源框架或环(可以在布图规划阶段期间标识出)。布局阶段模块优化附接到已在电力规划阶段期间添加的分布式电源的每个电源的单元的数目和类型。布线阶段模块优化布线长度以例如掩蔽(mask)功耗。
提供本发明内容是为了以简化的形式介绍将在以下详细描述中进一步描述的一些概念。本发明内容并不旨在专门标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
附图说明
图1示出了示例EDA过程的过程流程图。
图2A和图2B示出了电源框架(图2A)以及由侧信道感知电力规划阶段生成的示例网络(图2B)的简化表示图。
图3示出了由侧信道感知的布局阶段生成的附接单元的简化表示图。
图4示出了由侧信道感知的布线阶段生成的具有布线变化的附接单元的简化表示图。
图5是示出在一些实施例中使用的计算设备的组件的框图。
具体实施方式
描述了侧信道感知的自动布局和布线工具和技术,其可以被并入或补充至电子设计自动化(EDA)工具以实现元件的自动纳入和布置,使得侧信道分析攻击难以嵌入到核心设计上。
图1示出了示例EDA过程的过程流程图。示例EDA过程100可以由单个软件工具、通过集成多个软件工具(例如,可从EDA应用提供商获得的各种模块)的EDA平台、或通过多个软件工具来执行。参考图1,EDA过程100可以通过将设计导入工具开始(101)。该设计可以是网表的形式。网表描述了电路的连接关系,并且可以采用Verilog、VHDL、Spice等格式,或者可以是(在制造准备之前)能由布局和布线工具综合和使用的其它语言。可选地,可以执行初始布图规划阶段(102),在该阶段中相应地标识和划分用于某些电路元件的区域。另外,可以包括电力规划以为电路元件区域布置一个或多个电源框架和/或环(103)。
此处,可以发生侧信道感知的电力规划阶段(104)。侧信道感知的电力规划阶段可以由电力规划阶段模块执行。在操作104中,将分布式电源和切换元件网络添加到(一个或多个)电源框架和/或环。特定的布置和数目最初可以基于网表中指示的元件的数目和类型或者在布图规划划分期间(102)标识的元件的数目和类型。
然后,可以使用网表来执行标准单元布局(105)。在布局期间,使用经综合的电路网表和技术库来创建有效的布局版图。标准单元(来自技术库)可用于促进布局(因为这些单元具有已知的尺寸和特征)。作为标准单元布局的一部分,或在标准单元的初始布局之后,执行侧通道感知的单元布局(106)。侧信道感知的单元布局可以由布局阶段模块执行。在布局单元之后以及操作106的侧信道感知的单元布局的一部分之后或操作106的侧信道感知的单元布局之后,以从分布式电源接收电力的方式来附接单元。附接比(附接到每个电源的标准单元的数目)可以由以下因素确定,包括但不限于:标准单元的类型(其负载)、预期的切换活动、以及其它操作和环境条件(例如,操作电压范围、时钟频率、操作温度范围)。例如,对用于附接到电源的单元的布局可以基于门的类型(例如,AND门或NOR门)来进行。在一个优化情形中,侧信道感知的单元布局避免或最小化相同类型的门的群集(例如,不将AND门群集在一起)。可以优化标准单元的布局以产生有利的附接比,以便减小面积和功耗开销。被附接以由特定电源支持的门的数目可以随电源而变化,因为该数目可以基于门的负载/类型;而不是门的数目。
在布局之后,可以执行时钟树综合和优化(107)。布局后可以执行时钟平衡来提高性能,包括减少时钟偏差。可以迭代布局阶段(从电力规划到时钟树综合)以进行优化。另外,尽管在布局阶段之前描述了侧信道感知的电力规划级104,但是在一些情况下,在布局之后(但在布线之前)来应用侧信道感知的电力规划阶段。
在布局之后,可以执行布线(108)。在布局确定了每个有源元件或组件的位置的情况下,布线步骤添加正确连接所布局的组件所需的导线,同时遵守设计规则。在布线阶段期间,可以执行侧信道感知的布线过程(109)以掩蔽功耗(其可以由布线阶段模块执行)。在操作109中,可以针对长度优化/调整互连或其它导线的长度以隐藏或混淆功耗。分布式电源和隔离切换元件基于功能逻辑连接到所布局的单元,并优化通过电力特征的数据泄漏。在某些情况下,路线的长度比在遵守设计规则或针对某些时钟进行优化时所预期的要长。
通过侧信道感知的电力规划以及侧信道感知的布局和侧信道感知的布线中的至少一者,可以减弱观察到的电力特征变化(甚至电磁辐射变化)。
设计完成(110)、设计验证(111)、报告生成(112)、和设计导出(113)可以使用诸如当前EDA***可提供的任何合适技术来执行。在设计验证(111)期间,可以确定在电力规划阶段期间添加的诸如切换和电荷存储设备之类的附加组件不会不利地影响设计的功能输出。
优化门、电路元件、设计块和芯片的设计、版图、布局和布线的软件工具或工具集可以部分地通过迭代这些过程中的一个或多个来实现这些操作,目标是减弱电力、电压、电流、电磁辐射对门、电路元件、设计块和芯片的切换活动和/或由门、电路元件、设计块和芯片处理、存储、和/或传输的数据的依赖性。用于优化的其它目标可以包括但不限于减小门、电路元件、设计块、集成电路和芯片的面积、功耗、操作速度、可测试性和可制造性。
图2A和图2B示出了电源框架(图2A)和由侧信道感知的电力规划阶段生成的示例网络(图2B)的简化表示图。如图2A中所示,电源框架200通常围绕电路块将位于的区域形成于环或框架中。在此阶段或用于在适当定位的连接器处将下层电路块连接到框架的稍后阶段将建立电源轨210的电网。然而,通过执行侧信道感知的电力规划模块104(例如,通过执行存储在计算***的处理器可访问的位置处的软件代码),而不是直接连接到金属框架200的电源轨210,分布式电源和切换元件被添加到电力线。
例如,如图2B所示,以创建(使用电荷存储设备230)分布式电源网络的方式来构建电源框架/环200。这些电荷存储设备230可以存储电荷并向一个或多个逻辑门(或其它电路元件)供电。电荷存储设备230的示例包括电容器(由无源或有源组件构成)。切换元件220的网络成为电力框架的一部分,使得分布式电源(来自电荷存储装置)可以被隔离,并且可以抑制由分布式电源生成的电力特征在外部电源轨上被观察到。
应当理解,电源轨/框架(正、负等)和接地轨/框架都可以应用侧通道感知的电力规划模块。此外,在某些情况下,电源轨的电网可能会或可能不会将所有单元布局在隔离电网中。例如,只有那些会导致安全泄漏的单元才会被隔离,而其它单元则可能被布局在隔离电网之外。隔离电网外部的单元可用于增加环境噪声,以进一步改善侧信道电阻。
图3示出了由侧信道感知的布局阶段生成的附接单元的简化表示图。如关于操作106所描述的,标准单元的布局被优化以产生分布式电源(电荷存储设备230和切换元件220)的有利附接比,使得每个电荷存储设备230所支持的负载可被优化。应该理解,载荷可以均匀分布或具有其它分布特征。如图3所示,提供一组具有逻辑门301、两个反相器302、和两个AND门303的标准单元,使得不存在相同类型的门的群集。
图4示出了由侧信道感知布线阶段生成的具有布线变化的附接单元的简化表示图。在操作109中,侧信道感知的布线可以调整单元和电源轨210之间、单元之间、以及甚至电源轨的长度之间的线400的长度。
图5是示出在一些实施例中使用的计算设备的组件的框图。例如,***500可以用于实现针对一个或多个过程100(包括图2A、图2B、图3、和图4中所示的侧信道感知的规划、布局、和/或布线过程)而执行EDA软件工具的计算设备。应当理解,本文描述的***的各方面适用于移动和传统台式计算机两者,以及服务器计算机和其它计算机***。因此,关于***500描述的某些方面适用于在联网计算站或基于web的工具的情况下其上可执行软件工具的(一个或多个)服务器。
例如,***500包括处理器505(例如,CPU、GPU、FPGA),其根据一个或多个应用510(其可以包括本文描述的用于EDA工具的模块)和/或操作***(OS)520的指令来处理数据。处理器505可以是片上***(SoC)或者与一个或多个其它组件(例如,网络连接组件、传感器、视频显示组件)包含在片上***(SoC)中。可以使用其它处理***。一个或多个应用510可以被加载到存储器515中并且在操作***520上或与操作***520相关联地运行。
***500还可以包括执行发送和接收无线电频率通信的功能的无线电/网络接口535。无线电/网络接口535经由通信运营商或服务提供商促进***500与“外部世界”之间的无线连接。去往和来自无线电/网络接口535的传输在操作***520的控制下进行,操作***520将无线电/网络接口535接收的通信通传到应用510,反之亦然。无线电/网络接口535允许***500通过网络与其它计算设备(包括服务器计算设备和其它客户端设备)通信。
在各种实施方式中,经由***500存储的数据/信息可以包括设备本地存储的数据高速缓存,或者数据可以存储在可以由设备经由无线电/网络接口535或经由设备和与该设备相关联的单独计算设备(例如,诸如互联网之类的分布式计算网络中的服务器计算机)之间的有线连接访问的任何数目的存储介质上。应当理解,可以由设备经由无线电接口535或分布式计算网络来访问这样的数据/信息。类似地,这样的数据/信息可以根据众所周知的数据/信息传送和存储方式(包括电子邮件和协作数据/信息共享***)在计算设备之间容易地传送,以进行存储和使用。
音频接口540可用于向用户提供可听信号以及从用户接收可听信号。例如,音频接口540可以耦合到扬声器以提供可听输出,并且可以耦合到麦克风以接收可听输入,例如以便于进行电话会话或语音命令。***500还可以包括视频接口545,其使得可选摄像机(未示出)的操作能够记录静止图像、视频流等。视频接口还可用于捕获某些图像以输入到自然用户界面(NUI)。
可以通过显示器555提供视觉输出。显示器555可以呈现图形用户界面(“GUI”)元素、文本、图像、视频、通知、虚拟按钮、虚拟键盘、消息数据、互联网内容、设备状态、时间、日期、日历数据、偏好、地图信息、位置信息、以及能够以视觉形式呈现的任何其它信息。
显示器555可以包括作为触摸屏显示器的功能。显示器555可以是投影显示器。显示器555可以与***500(例如当***500体现为电话或平板电脑时)集成。显示器555可以通过有线或无线方式连接。
本文描述的方法和过程可以体现为代码和/或数据。本文描述的软件代码和数据可以例如作为模块存储在一个或多个计算机可读介质上,该计算机可读介质可以包括可以存储供计算机***使用的代码和/或数据的任何设备或介质。如本文所使用的,(一个或多个)计算机可读存储介质不应被解释为由暂时传播信号组成。
因此,本发明的实施例可以作为计算机进程、计算***、或作为诸如计算机程序产品或计算机可读存储介质之类的制品来实现。本发明的某些实施例设想使用计算机***形式的机器,其中一组指令在被执行时可以使该***执行以上讨论的任何一种或多种方法,包括提供可在集成电路和/或印刷电路板和/或***级设计的物理设计期间使用的软件工具或一组软件工具。用于软件工具的指令集可以存储在计算机程序产品上,该计算机程序产品可以是计算机***可读的、并且编码包括该组指令和与该软件工具相关联的其它数据的计算机程序的一个或多个计算机可读存储介质。
软件工具是帮助执行特定功能(或多个功能)的软件工具。所描述的软件工具可以做出决策或采取动作,例如门或晶体管或设计块或芯片的布局、门或晶体管或设计元件或芯片的布线、以及电源设计和/或电源网格设计和版图设计。这些动作受这些动作可能依赖于电路元件、设计块和/或芯片的对在集成电路和/或印刷电路板中处理、存储或传输的任何数据的功耗的影响的指导。这些由软件工具采取的动作可以进行调整、修改或增强,以减弱如通过观察芯片/***/板的电源引脚处的电压/电流特征和/或通过观察芯片或***附近的电磁辐射的变化而从外部观察到的功耗(电压和/或电流)的变化/依赖性。
作为示例而非限制,计算机可读存储介质可包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据等的信息的任何方法或技术实现的易失性和非易失性存储器、可移动和不可移动介质。计算机可读存储介质的示例包括易失性存储器,诸如随机存取存储器(RAM、DRAM、SRAM);非易失性存储器,诸如闪存、各种只读存储器(ROM、PROM、EPROM、EEPROM)、相变存储器、磁性和铁磁/铁电存储器(MRAM、FeRAM)、以及磁性和光学存储设备(硬盘驱动器、磁带、CD、DVD)。如本文所使用的,术语“存储介质”在任何情况下都不包括暂时传播信号。
尽管用结构特征和/或动作专用的语言描述了本主题,但应理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。相反,上面描述的具体特征和动作是作为实现权利要求的示例而公开的,并且本领域技术人员将认识到的其它等同特征和动作旨在落入权利要求的范围内。
Claims (22)
1.一种其上存储有用于电子设计自动化工具的指令的计算机可读存储介质,所述指令在由处理***执行时,引导所述处理***:
将电荷存储元件和切换元件添加到电源框架;
标识一种或多种类型的标准单元的针对附接到每个电荷存储元件的附接比,并将适当的标准单元布局在分组中以产生所期望的附接比;以及
改变布线长度以调整电力特征。
2.根据权利要求1所述的介质,其中,将电荷存储元件和切换元件添加到电源框架的所述指令引导所述处理***:
在属于隔离区段的每个电源轨和所述电源框架之间***电荷存储元件和相应的切换元件。
3.根据权利要求1或2所述的介质,其中,将电荷存储元件和切换元件添加到电源框架的所述指令引导处理***:
在属于隔离区段的每个接地轨和所述电源框架之间***电荷存储元件和相应的切换元件。
4.根据权利要求1-3中任一项所述的介质,其中,标识所述一种或多种类型的标准单元的附接比并将所述适当的标准单元布局在分组中以产生所期望的附接比的所述指令引导所述处理***:
基于切换对功耗和电磁辐射中的一者或两者的减弱的依赖性来确定优化附接布置。
5.根据权利要求1-4中任一项所述的介质,其中,标识所述一种或多种类型的标准单元的附接比并将所述适当的标准单元布局在分组中以产生所期望的附接比的所述指令引导所述处理***:
最小化分组中相同门类型的群集。
6.根据权利要求1-5中任一项所述的介质,其中,标识所述一种或多种类型的标准单元的附接比并将所述适当的标准单元布局在分组中以产生所期望的附接比的所述指令引导所述处理***:
基于分组中的门的数目优化布局。
7.一种用于侧信道感知的自动布局和布线的计算机实现的方法,包括:
针对版图设计,基于切换对功耗和电磁辐射中的一者或两者的减弱的依赖性来确定在布局规划划分期间所标识的网表中指示的元件的优化附接布置。
8.根据权利要求7所述的方法,其中,确定所述优化附接布置包括:
标识一种或多种类型的标准单元的针对附接到用于隔离的每个电荷存储元件的附接比;以及
将适当的标准单元布局在分组中以产生所期望的附接比。
9.根据权利要求7或8所述的方法,其中,所述优化附接布置基于门类型或负载。
10.根据权利要求9所述的方法,其中,相同类型的门被分散开以最小化相同门类型的群集。
11.根据权利要求7-9中任一项所述的方法,其中,所述优化附接布置基于门的数目。
12.根据权利要求7-11中任一项所述所述的方法,还包括:
针对所述版图设计,将分布式电源和切换元件***电源线。
13.根据权利要求12所述的方法,其中,针对所述版图设计,将所述分布式电源和所述切换元件***所述电源线包括:
在属于隔离区段的所述电源线的每个电源轨和电源框架之间***电荷存储元件和相应的切换元件。
14.根据权利要求7-13中任一项所述的方法,还包括:
针对所述版图设计,将分布式电源和切换元件***接地线。
15.根据权利要求14所述的方法,其中,将所述分布式电源和所述切换元件***到所述接地线包括:
在属于隔离区段的所述电源线的每个电源轨和电源框架之间***电荷存储元件和相应的切换元件。
16.根据权利要求7-15中任一项所述的方法,还包括:
改变互连和导线的布线长度以掩蔽功耗。
17.一种侧信道感知的自动布局和布线***,包括:
处理***;
存储器;以及
存储在所述存储器中的电力规划阶段模块,
其中,电力规划阶段模块被配置为将分布式电源和切换元件网络添加到分配给芯片区域的电源框架或环。
18.根据权利要求17所述的***,其中,所述电力规划阶段模块基于网表中指示的元件的数目或类型来添加所述分布式电源。
19.根据权利要求17或18所述的***,其中,所述电力规划阶段模块基于在布图规划分区期间所标识的元件的数目或类型来添加所述分布式电源。
20.根据权利要求17-19中任一项所述的***,还包括存储在所述存储器上的布局阶段模块,其中,所述布局阶段模块被配置为针对对能够观察的功耗的影响来优化被附接到所述分布式电源的每个电源的单元的数目和类型。
21.根据权利要求17-19中任一项所述的***,还包括存储在所述存储器上的布局阶段模块,其中,所述布局阶段模块被配置为标识一种或多种类型的标准单元的针对附接到所述分布式电源的每个电源的附接比;以及将适当的标准单元布局在分组中以产生所期望的附接比。
22.根据权利要求17-21中任一项所述的***,还包括布线阶段模块,其中,所述布线阶段模块被配置为改变互连或其它导线的布线长度以调整电力特征。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662292685P | 2016-02-08 | 2016-02-08 | |
US62/292,685 | 2016-02-08 | ||
PCT/US2017/016771 WO2017139241A1 (en) | 2016-02-08 | 2017-02-07 | Side channel aware automatic place and route |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108604106A true CN108604106A (zh) | 2018-09-28 |
CN108604106B CN108604106B (zh) | 2021-06-01 |
Family
ID=59563477
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780009784.6A Active CN108604106B (zh) | 2016-02-08 | 2017-02-07 | 侧信道感知的自动布局和布线 |
Country Status (4)
Country | Link |
---|---|
US (2) | US10860771B2 (zh) |
EP (1) | EP3414642A4 (zh) |
CN (1) | CN108604106B (zh) |
WO (1) | WO2017139241A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI712984B (zh) * | 2019-12-06 | 2020-12-11 | 瑞昱半導體股份有限公司 | 藉助於額外導線來進行電網優化之方法與設備 |
CN112989742A (zh) * | 2019-12-13 | 2021-06-18 | 瑞昱半导体股份有限公司 | 借助于额外导线来进行电网优化的方法与设备 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112115671B (zh) * | 2020-09-14 | 2024-07-23 | 纳瓦电子(上海)有限公司 | 用于改善处理器时钟信号端电磁辐射的电路结构及其形成方法 |
US20220366113A1 (en) * | 2021-05-13 | 2022-11-17 | International Business Machines Corporation | Protecting Against Emission Based Side Channel Detection |
CN115758983B (zh) * | 2022-11-14 | 2023-10-20 | 深圳市奇普乐芯片技术有限公司 | 布线方法、装置、终端及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5656834A (en) * | 1994-09-19 | 1997-08-12 | Philips Electronics North America Corporation | IC standard cell designed with embedded capacitors |
CN1649129A (zh) * | 2004-01-30 | 2005-08-03 | 恩益禧电子股份有限公司 | 用于半导体器件的自动布局和布线的自动布局和布线设备、方法,半导体器件及其制造方法 |
CN1750012A (zh) * | 2004-09-16 | 2006-03-22 | 松下电器产业株式会社 | 标准单元、半导体集成电路和标准单元的布局生成方法 |
US20070234266A1 (en) * | 2004-02-07 | 2007-10-04 | Chao-Chiang Chen | Method of optimizing IC logic performance by static timing based parasitic budgeting |
US20110276937A1 (en) * | 2005-06-24 | 2011-11-10 | Pulsic Limited | Integrated Circuit Routing with Compaction |
WO2012101898A1 (ja) * | 2011-01-25 | 2012-08-02 | 株式会社日立製作所 | 配線作業指示方法 |
US8324937B2 (en) * | 2004-02-13 | 2012-12-04 | The Regents Of The University Of California | Methods for differential pair conductor routing in a logic circuit |
CN103577634A (zh) * | 2012-08-01 | 2014-02-12 | Lsi公司 | 用于生成用于双重构图技术的布局的***和方法 |
US20140167837A1 (en) * | 2012-11-12 | 2014-06-19 | Chaologix, Inc. | Charge distribution control for secure systems |
Family Cites Families (56)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4616145A (en) * | 1984-04-02 | 1986-10-07 | General Electric Company | Adjustable CMOS hysteresis limiter |
JP2776086B2 (ja) * | 1991-02-07 | 1998-07-16 | 三菱電機株式会社 | 活線交換用電源装置 |
US6002268A (en) * | 1993-01-08 | 1999-12-14 | Dynachip Corporation | FPGA with conductors segmented by active repeaters |
JP3178399B2 (ja) * | 1997-12-04 | 2001-06-18 | 日本電気株式会社 | 半導体集積回路、その素子配置方法およびその製造方法 |
WO2000001100A1 (en) * | 1998-06-26 | 2000-01-06 | Ascom Nordic A/S | An apparatus and method for secure information processing |
US6397170B1 (en) * | 1998-08-18 | 2002-05-28 | International Business Machines Corporation | Simulation based power optimization |
JP2002041126A (ja) * | 2000-07-27 | 2002-02-08 | Toshiba Corp | 半導体デバイスの生産方法及び生産システム |
US6711719B2 (en) * | 2001-08-13 | 2004-03-23 | International Business Machines Corporation | Method and apparatus for reducing power consumption in VLSI circuit designs |
IL163526A0 (en) * | 2002-02-15 | 2005-12-18 | Multigig Ltd | Electronic circuits |
DE10214898B4 (de) * | 2002-04-04 | 2009-02-05 | Infineon Technologies Ag | Speicherschaltung |
US7943436B2 (en) * | 2002-07-29 | 2011-05-17 | Synopsys, Inc. | Integrated circuit devices and methods and apparatuses for designing integrated circuit devices |
US7739624B2 (en) * | 2002-07-29 | 2010-06-15 | Synopsys, Inc. | Methods and apparatuses to generate a shielding mesh for integrated circuit devices |
US6938233B2 (en) * | 2002-08-09 | 2005-08-30 | Matsushita Electric Industrial Co., Ltd. | Method and apparatus for designing semiconductor integrated circuit device based on voltage drop distribution |
US7805697B2 (en) * | 2002-12-06 | 2010-09-28 | Multigig Inc. | Rotary clock synchronous fabric |
US6950998B1 (en) * | 2003-04-22 | 2005-09-27 | Xilinx, Inc. | Place-and-route with power analysis |
CA2430204C (en) * | 2003-05-28 | 2005-01-04 | William D. Fraser | Grain moisture sensor |
DE10324565A1 (de) * | 2003-05-30 | 2004-12-30 | Chipvision Desigin Systems Ag | Verfahren und Vorrichtung zum Schaltungsentwurf mittels High-Level-Synthese |
US7000204B2 (en) * | 2003-09-02 | 2006-02-14 | Hewlett-Packard Development Company, L.P. | Power estimation based on power characterizations |
US7248757B2 (en) * | 2003-12-15 | 2007-07-24 | Canon Kabushiki Kaisha | Method, device and computer program for designing a circuit having electric wires and optical connections |
US7200832B2 (en) * | 2004-03-26 | 2007-04-03 | Lsi Logic Corp | Macro cell for integrated circuit physical layer interface |
US7279926B2 (en) * | 2004-05-27 | 2007-10-09 | Qualcomm Incoporated | Headswitch and footswitch circuitry for power management |
US7231625B2 (en) * | 2004-09-28 | 2007-06-12 | Lsi Corporation | Method and apparatus for use of hidden decoupling capacitors in an integrated circuit design |
JP2006196872A (ja) * | 2004-12-17 | 2006-07-27 | Matsushita Electric Ind Co Ltd | 標準セル、標準セルライブラリ、半導体装置、及びその配置方法 |
JP4205662B2 (ja) * | 2004-12-28 | 2009-01-07 | パナソニック株式会社 | 半導体集積回路の設計方法 |
US7882464B1 (en) * | 2005-02-14 | 2011-02-01 | Cadence Design Systems, Inc. | Method and system for power distribution analysis |
US7418683B1 (en) * | 2005-09-21 | 2008-08-26 | Cadence Design Systems, Inc | Constraint assistant for circuit design |
US7673260B2 (en) * | 2005-10-24 | 2010-03-02 | Cadence Design Systems, Inc. | Modeling device variations in integrated circuit design |
US7761831B2 (en) * | 2005-12-29 | 2010-07-20 | Mosaid Technologies Incorporated | ASIC design using clock and power grid standard cell |
US7463057B1 (en) * | 2006-03-29 | 2008-12-09 | Altera Corporation | Integrated circuits with adjustable memory element power supplies |
US20080115092A1 (en) * | 2006-11-13 | 2008-05-15 | Nair Pratheep A | Addressing power supply voltage drops within an integrated circuit using on-cell capacitors |
KR20090097893A (ko) * | 2006-11-29 | 2009-09-16 | 램버스 인코포레이티드 | 작동열화를 반전시킬 가열회로가 내장된 집적회로 |
JP4320340B2 (ja) * | 2006-12-15 | 2009-08-26 | 川崎マイクロエレクトロニクス株式会社 | 半導体集積回路の設計方法、および、半導体集積回路 |
US7994543B2 (en) * | 2007-07-26 | 2011-08-09 | Oracle America, Inc. | Via antenna fix in deep sub-micron circuit designs |
US8359173B2 (en) * | 2007-11-07 | 2013-01-22 | Northwestern University | System and methods for dynamic power estimation for a digital circuit |
US8245174B2 (en) * | 2009-07-23 | 2012-08-14 | Taiwan Semiconductor Manufacturing Co., Ltd. | Double patterning friendly lithography method and system |
GB201003009D0 (en) * | 2010-02-23 | 2010-04-07 | Cambridge Silicon Radio Ltd | Improved memory design |
US8273610B2 (en) * | 2010-11-18 | 2012-09-25 | Monolithic 3D Inc. | Method of constructing a semiconductor device and structure |
US8504968B2 (en) * | 2011-04-17 | 2013-08-06 | Jesse Conrad Newcomb | Method to determine high level power distribution and interface problems in complex integrated circuits |
US8451026B2 (en) * | 2011-05-13 | 2013-05-28 | Arm Limited | Integrated circuit, method of generating a layout of an integrated circuit using standard cells, and a standard cell library providing such standard cells |
US8901965B2 (en) * | 2011-08-03 | 2014-12-02 | Ben-Gurion University Of The Negev Research And Development Authority | Device and method for dual-mode logic |
US8631372B2 (en) * | 2012-02-10 | 2014-01-14 | Taiwan Semiconductor Manufacturing Co., Ltd. | System and method of electromigration mitigation in stacked IC designs |
JP5947580B2 (ja) * | 2012-03-23 | 2016-07-06 | ローム株式会社 | デカップルキャパシタセル、セルベースic、セルベースicのレイアウトシステムおよびレイアウト方法 |
US8912814B2 (en) * | 2012-11-12 | 2014-12-16 | Chaologix, Inc. | Clocked charge domain logic |
US9465899B2 (en) * | 2013-03-15 | 2016-10-11 | Freescale Semiconductor, Inc. | Method for provisioning decoupling capacitance in an integrated circuit |
US8724353B1 (en) * | 2013-03-15 | 2014-05-13 | Arctic Sand Technologies, Inc. | Efficient gate drivers for switched capacitor converters |
US10374512B2 (en) * | 2013-03-15 | 2019-08-06 | Psemi Corporation | Switch-timing in a switched-capacitor power converter |
JP6163978B2 (ja) * | 2013-08-30 | 2017-07-19 | 富士通株式会社 | 半導体集積回路 |
GB2525864B (en) * | 2014-05-06 | 2021-04-07 | Advanced Risc Mach Ltd | Clock frequency reduction for an electronic device |
US9665672B2 (en) * | 2015-04-27 | 2017-05-30 | Christian Dufour | Method and system for reducing power losses and state-overshoots in simulators for switched power electronic circuit |
US20170093184A1 (en) * | 2015-09-25 | 2017-03-30 | Voolt, Llc | Method, system and device for power cell management |
US10733350B1 (en) * | 2015-12-30 | 2020-08-04 | Sharat C Prasad | On-chip and system-area multi-processor interconnection networks in advanced processes for maximizing performance minimizing cost and energy |
US10158365B2 (en) * | 2016-07-29 | 2018-12-18 | Movellus Circuits, Inc. | Digital, reconfigurable frequency and delay generator with phase measurement |
WO2018042986A1 (ja) * | 2016-08-29 | 2018-03-08 | 株式会社ソシオネクスト | 半導体集積回路装置 |
US10539997B2 (en) * | 2016-09-02 | 2020-01-21 | Qualcomm Incorporated | Ultra-low-power design memory power reduction scheme |
US10164768B1 (en) * | 2018-02-23 | 2018-12-25 | Qualcomm Incorporated | Method and apparatus for differential power analysis (DPA) resilience security in cryptography processors |
US11082202B2 (en) * | 2018-06-01 | 2021-08-03 | Arm Limited | Fault injection attack detection in integrated circuits |
-
2017
- 2017-02-07 CN CN201780009784.6A patent/CN108604106B/zh active Active
- 2017-02-07 EP EP17750613.6A patent/EP3414642A4/en active Pending
- 2017-02-07 US US16/076,304 patent/US10860771B2/en active Active
- 2017-02-07 WO PCT/US2017/016771 patent/WO2017139241A1/en active Application Filing
-
2020
- 2020-11-13 US US17/097,144 patent/US11526646B2/en active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5656834A (en) * | 1994-09-19 | 1997-08-12 | Philips Electronics North America Corporation | IC standard cell designed with embedded capacitors |
CN1649129A (zh) * | 2004-01-30 | 2005-08-03 | 恩益禧电子股份有限公司 | 用于半导体器件的自动布局和布线的自动布局和布线设备、方法,半导体器件及其制造方法 |
US20070234266A1 (en) * | 2004-02-07 | 2007-10-04 | Chao-Chiang Chen | Method of optimizing IC logic performance by static timing based parasitic budgeting |
US8324937B2 (en) * | 2004-02-13 | 2012-12-04 | The Regents Of The University Of California | Methods for differential pair conductor routing in a logic circuit |
CN1750012A (zh) * | 2004-09-16 | 2006-03-22 | 松下电器产业株式会社 | 标准单元、半导体集成电路和标准单元的布局生成方法 |
US20110276937A1 (en) * | 2005-06-24 | 2011-11-10 | Pulsic Limited | Integrated Circuit Routing with Compaction |
WO2012101898A1 (ja) * | 2011-01-25 | 2012-08-02 | 株式会社日立製作所 | 配線作業指示方法 |
CN103577634A (zh) * | 2012-08-01 | 2014-02-12 | Lsi公司 | 用于生成用于双重构图技术的布局的***和方法 |
US20140167837A1 (en) * | 2012-11-12 | 2014-06-19 | Chaologix, Inc. | Charge distribution control for secure systems |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI712984B (zh) * | 2019-12-06 | 2020-12-11 | 瑞昱半導體股份有限公司 | 藉助於額外導線來進行電網優化之方法與設備 |
CN112989742A (zh) * | 2019-12-13 | 2021-06-18 | 瑞昱半导体股份有限公司 | 借助于额外导线来进行电网优化的方法与设备 |
CN112989742B (zh) * | 2019-12-13 | 2024-01-02 | 瑞昱半导体股份有限公司 | 借助于额外导线来进行电网优化的方法与设备 |
Also Published As
Publication number | Publication date |
---|---|
US20190042688A1 (en) | 2019-02-07 |
WO2017139241A1 (en) | 2017-08-17 |
EP3414642A1 (en) | 2018-12-19 |
CN108604106B (zh) | 2021-06-01 |
US20210064809A1 (en) | 2021-03-04 |
EP3414642A4 (en) | 2020-09-30 |
US10860771B2 (en) | 2020-12-08 |
US11526646B2 (en) | 2022-12-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108604106A (zh) | 侧信道感知的自动布局和布线 | |
US10628132B2 (en) | Inversion of control framework for multiple behaviors of a process | |
US10284705B2 (en) | Method and apparatus for controlling smart device, and computer storage medium | |
CN103345885B (zh) | 箱体走线配置方法及装置和拼接式显示屏的配置方法 | |
CN109408685A (zh) | 思维导图展示方法和装置 | |
WO2021008334A1 (zh) | 小程序的数据绑定方法、装置、设备及存储介质 | |
CN108509110A (zh) | 分屏显示和操作的方法、装置、终端设备及存储介质 | |
US20170097807A1 (en) | Electronic device and method for controlling the same | |
CN107797804A (zh) | 生成前端交互界面的方法和装置 | |
CN104424358A (zh) | 用于具有多功率模式的计算设备的动态信息适配 | |
CN106469047A (zh) | 一种表单实现方法及装置 | |
CN109766097A (zh) | Ui生成方法、装置、电子设备及计算机可读存储介质 | |
CN108242837A (zh) | 电子设备和控制电子设备的充电的方法 | |
WO2021114979A1 (zh) | 视频页面显示方法、装置、电子设备和计算机可读介质 | |
CN107679113A (zh) | 轻应用的获取方法、设备及电子设备 | |
CN112181576A (zh) | 表单处理方法、装置、终端及存储介质 | |
CN107861603A (zh) | 功耗控制方法及设备 | |
CN107861933A (zh) | 生成运维报表的方法和装置 | |
CN107168993A (zh) | 处理响应数据的方法、设备、客户端设备和电子设备 | |
CN105075228B (zh) | 上下文感知服务的动态功率管理 | |
KR20150090930A (ko) | 게임 장면을 공유하는 게임 방법 및 게임 시스템 | |
US20160019602A1 (en) | Advertisement method of electronic device and electronic device thereof | |
CN107807940B (zh) | 信息推荐方法和装置 | |
CN108255916A (zh) | 网页页面呈现的方法、设备、客户端装置和电子设备 | |
CN109684116B (zh) | 数据分享方法、装置、设备及介质 |
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 |