CN109446673A - 一种通过部分映射时钟使能信号来改善布局完成率的方法 - Google Patents
一种通过部分映射时钟使能信号来改善布局完成率的方法 Download PDFInfo
- Publication number
- CN109446673A CN109446673A CN201811296316.4A CN201811296316A CN109446673A CN 109446673 A CN109446673 A CN 109446673A CN 201811296316 A CN201811296316 A CN 201811296316A CN 109446673 A CN109446673 A CN 109446673A
- Authority
- CN
- China
- Prior art keywords
- register
- multiple selector
- illegal
- enable signal
- clock enable
- 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
Classifications
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Architecture (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明公开了一种通过部分映射时钟使能信号来改善布局完成率的方法,步骤包括:在FPGA电路布局过程中,进行实时检测,找出位置不合法的寄存器;将位置不合法的寄存器按照时序松弛timing slack值进行排序,按照timing slack序列中数值从大到小,分别将位置不合法的寄存器的输入D端接入一个数据选择器MUX,进而形成一个多路选择器;判断多路选择器能否与前一级的查找表LUT合并,如果可以,则将多路选择器与前一级的LUT合并。本发明不需要将某个时钟使能信号驱动的所有寄存器都进行转换。在信号所驱动的寄存器中已满足约束的不进行转换,减少全部转换为组合逻辑对性能带来的负面影响,有效的提高电路的工作频率。
Description
技术领域
本发明涉及寄存器布局领域,尤其涉及一种通过部分映射时钟使能信号来改善布局完成率的方法。
背景技术
目前,在涉及时钟使能信号比较多的FPGA设计中,通过在综合阶段通过引入组合逻辑来消除时钟使能信号,用以克服架构约束。
但该做法存在一定缺陷,常常出现引入的组合逻辑过多,导致布局失败或设计性能降低等问题,根源在于综合阶段的架构信息太少,无法精准的选取需要消除的时钟使能信号。
发明内容
本发明的目的在于减少FPGA中组合逻辑的数量。
为达到上述目的,一种通过部分映射时钟使能信号来改善布局完成率的方法,步骤包括:
在FPGA电路布局过程中,进行实时检测,找出位置不合法的寄存器;
将位置不合法的寄存器按照时序松弛timing slack值进行排序,按照timingslack序列中数值从大到小排列,其中,
如果寄存器满足时钟使能信号的约束则不增加MUX,并以寄存器当前位置为中心,搜索合法的位置。
如果寄存器不满足时钟使能信号的约束,则将寄存器的输入D端接入一个数据选择器MUX,进而形成一个多路选择器;
判断多路选择器能否与前一级的查找表LUT合并,其中,
如果可以,则将多路选择器与前一级的LUT合并;
如果不可以,则将多路选择器中的MUX转换为新的LUT。
以位置不合法的寄存器当前位置为中心,搜索合法的位置。
优选地,对timing slack序列设置阈值,如果所述不合法的寄存器timing slack值低于所述阈值,则不进行后续步骤,以避免低于timing slack阈值的寄存器执行后续步骤以降低能耗。
本发明的优点在于:不需要将某个时钟使能信号驱动的所有寄存器都进行转换。在信号所驱动的寄存器中已满足约束的不进行转换,减少全部转换为组合逻辑对性能带来的负面影响,有效的提高电路的工作频率;在引入组合逻辑之时,避开处于关键路径上的寄存器,在增加逻辑级数的情况下,减少了对电路性能的负面影响。
附图说明
为了更清楚说明本发明实施例的技术方案,下面将对实施例描述中所需使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为一种通过部分映射时钟使能信号来改善布局完成率的方法流程图;
图2为常规的寄存器;
图3为本发明实施例中数据选择器和寄存器组成的多路选择器。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为一种通过部分映射时钟使能信号来改善布局完成率的方法流程图。如图1所示,一种通过部分映射时钟使能信号来改善布局完成率的方法,步骤包括:
步骤S110,在FPGA电路布局过程中,尤其在FPGA电路详细布局过程中,进行实时检测,找出位置不合法的寄存器。
具体地,寄存器的结构如图2所示。
步骤S120,将位置不合法的寄存器按照时序松弛timing slack值进行排序,按照timing slack序列中数值从大到小排列。
步骤S130,判断寄存器是否满足钟使能信号的约束。
如果寄存器满足时钟使能信号的约束,则直接执行步骤S170,以位置不合法的寄存器当前位置为中心,搜索合法的位置。
如果寄存器不满足时钟使能信号的约束,则执行步骤S140,将寄存器的输入D端接入一个数据选择器MUX,进而形成一个多路选择器。
具体地,多路选择器的结构如图3所示。
步骤S150,判断多路选择器能否与前一级的查找表LUT合并。
如果可以,则执行步骤S161,将多路选择器与前一级的LUT合并;
如果不可以,则执行步骤S162,将多路选择器中的MUX转换为新的LUT。
步骤S170,以位置不合法的寄存器当前位置为中心,搜索合法的位置。
优选地,对timing slack序列设置阈值,如果所述不合法的寄存器timing slack值低于所述阈值,则不进行后续步骤,以避免低于timing slack阈值的寄存器执行后续步骤以降低能耗。
本发明提供了一种通过部分映射时钟使能信号来改善布局完成率的方法,不需要将某个时钟使能信号驱动的所有寄存器都进行转换。在信号所驱动的寄存器中已满足约束的不进行转换,减少全部转换为组合逻辑对性能带来的负面影响,有效的提高电路的工作频率;在引入组合逻辑之时,避开处于关键路径上的寄存器,在增加逻辑级数的情况下,减少了对电路性能的负面影响。
以上的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种通过部分映射时钟使能信号来改善布局完成率的方法,其特征在于,包括以下步骤:
在FPGA电路布局过程中,实时检测位置不合法的寄存器;
将所述位置不合法的寄存器按照时序松弛timing slack值进行排序,按照timingslack序列中数值从大到小,分别将位置不合法的寄存器的输入D端各自接入一个数据选择器MUX,进而分别形成多路选择器;
判断所述多路选择器能否与前一级的查找表LUT合并,如果可以,则将所述多路选择器与前一级的LUT合并。
2.根据权利要求1所述的方法,其特征在于,对所述timing slack序列设置阈值,如果所述不合法的寄存器timing slack值低于所述阈值,则不进行后续步骤,以避免低于timing slack阈值的寄存器执行后续步骤以降低能耗。
3.根据权利要求1所述的方法,其特征在于,所述将位置不合法的寄存器的输入D端接入一个数据选择器MUX,进而形成一个多路选择器时;
如果所述寄存器满足时钟使能信号的约束则不增加MUX,并以所述寄存器当前位置为中心,搜索合法的位置。
4.根据权利要求1所述的方法,其特征在于,所述判断所述多路选择器能否与前一级的查找表LUT合并,如果不能,则将所述所述多路选择器中的MUX转换为新的LUT。
5.根据权利要求1所述的方法,其特征在于,还包括:以所述位置不合法的寄存器当前位置为中心,搜索合法的位置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811296316.4A CN109446673B (zh) | 2018-11-01 | 2018-11-01 | 一种通过部分映射时钟使能信号来改善布局完成率的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811296316.4A CN109446673B (zh) | 2018-11-01 | 2018-11-01 | 一种通过部分映射时钟使能信号来改善布局完成率的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109446673A true CN109446673A (zh) | 2019-03-08 |
CN109446673B CN109446673B (zh) | 2023-04-18 |
Family
ID=65550534
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811296316.4A Active CN109446673B (zh) | 2018-11-01 | 2018-11-01 | 一种通过部分映射时钟使能信号来改善布局完成率的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109446673B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112202425A (zh) * | 2020-09-25 | 2021-01-08 | 杭州加速科技有限公司 | Fpga芯片内的时钟生成单元 |
CN112633489A (zh) * | 2020-12-30 | 2021-04-09 | 深圳大普微电子科技有限公司 | 一种查找表lut的合并方法、装置及设备 |
CN113626994A (zh) * | 2021-07-23 | 2021-11-09 | 东南大学 | 一种寄存器时序约束灵活建模方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102611431A (zh) * | 2012-03-08 | 2012-07-25 | 无锡华大国奇科技有限公司 | 带组合逻辑通路的寄存器 |
CN103324774A (zh) * | 2012-12-29 | 2013-09-25 | 东南大学 | 一种基于时钟规划偏差算法的处理器性能优化方法 |
CN105488237A (zh) * | 2014-09-19 | 2016-04-13 | 京微雅格(北京)科技有限公司 | 基于fpga的寄存器使能信号优化方法 |
CN105808795A (zh) * | 2014-12-29 | 2016-07-27 | 京微雅格(北京)科技有限公司 | 基于时序约束的fpga芯片全局布局优化方法 |
US9660650B1 (en) * | 2014-03-13 | 2017-05-23 | Altera Corporation | Integrated circuits with improved register circuitry |
-
2018
- 2018-11-01 CN CN201811296316.4A patent/CN109446673B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102611431A (zh) * | 2012-03-08 | 2012-07-25 | 无锡华大国奇科技有限公司 | 带组合逻辑通路的寄存器 |
CN103324774A (zh) * | 2012-12-29 | 2013-09-25 | 东南大学 | 一种基于时钟规划偏差算法的处理器性能优化方法 |
US9660650B1 (en) * | 2014-03-13 | 2017-05-23 | Altera Corporation | Integrated circuits with improved register circuitry |
CN105488237A (zh) * | 2014-09-19 | 2016-04-13 | 京微雅格(北京)科技有限公司 | 基于fpga的寄存器使能信号优化方法 |
CN105808795A (zh) * | 2014-12-29 | 2016-07-27 | 京微雅格(北京)科技有限公司 | 基于时序约束的fpga芯片全局布局优化方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112202425A (zh) * | 2020-09-25 | 2021-01-08 | 杭州加速科技有限公司 | Fpga芯片内的时钟生成单元 |
CN112633489A (zh) * | 2020-12-30 | 2021-04-09 | 深圳大普微电子科技有限公司 | 一种查找表lut的合并方法、装置及设备 |
CN112633489B (zh) * | 2020-12-30 | 2024-03-22 | 深圳大普微电子科技有限公司 | 一种查找表lut的合并方法、装置及设备 |
CN113626994A (zh) * | 2021-07-23 | 2021-11-09 | 东南大学 | 一种寄存器时序约束灵活建模方法 |
CN113626994B (zh) * | 2021-07-23 | 2022-11-22 | 东南大学 | 一种寄存器时序约束灵活建模方法 |
US11790142B2 (en) | 2021-07-23 | 2023-10-17 | Southeast University | Flexible modeling method for timing constraint of register |
Also Published As
Publication number | Publication date |
---|---|
CN109446673B (zh) | 2023-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109446673A (zh) | 一种通过部分映射时钟使能信号来改善布局完成率的方法 | |
JP7019711B2 (ja) | デバッグシステムおよびデバッグ方法 | |
EP3007079B1 (en) | Dynamic database query efficiency improvement | |
CN101593098B (zh) | 转发装置与方法以及微处理器 | |
US20210191846A1 (en) | Data processing method and apparatus, device and storage medium | |
US20150220672A1 (en) | Method and apparatus for modelling power consumption of integrated circuit | |
CN107203676A (zh) | 用以提升集成电路设计的时序性能的方法及数据处理系统 | |
US8516424B2 (en) | Timing signoff system and method that takes static and dynamic voltage drop into account | |
CN102024067A (zh) | 一种模拟电路工艺移植的方法 | |
US10031995B2 (en) | Detecting circuit design flaws based on timing analysis | |
CN101710359B (zh) | 一种集成电路故障诊断系统及方法 | |
JP3836276B2 (ja) | 集積回路のノイズ及び電力の評価方法 | |
CN112232019B (zh) | 一种逻辑资源评估方法 | |
CN106598843B (zh) | 一种基于程序分析的软件日志行为自动识别方法 | |
CN102682158B (zh) | 基于时钟偏差规划算法的数字电路工作频率优化方法 | |
CN115587554B (zh) | 组合逻辑标准单元的atpg库模型生成系统 | |
CN104615510B (zh) | 基于可编程器件的双模冗余容错方法 | |
TW202034454A (zh) | 電路設計方法及相關的電腦程式產品 | |
CN105067994A (zh) | 定位片上系统时序逻辑错误、错误率计算及其应用方法 | |
CN110377414A (zh) | 电容式触摸屏的调节方法、装置、终端及存储介质 | |
US7194708B2 (en) | Generation of clock gating function for synchronous circuit | |
JP2011118492A (ja) | テストフロー提示コンピュータプログラム、テストフロー提示コンピュータシステム | |
US20130152034A1 (en) | System and method for reducing integrated circuit timing derating | |
US20130088275A1 (en) | Dynamic voltage drop aware clock insertion tool | |
CN108038312B (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 |