CN111144056B - 基于后端需求的技术映射控制方法及装置、系统 - Google Patents

基于后端需求的技术映射控制方法及装置、系统 Download PDF

Info

Publication number
CN111144056B
CN111144056B CN201911105826.3A CN201911105826A CN111144056B CN 111144056 B CN111144056 B CN 111144056B CN 201911105826 A CN201911105826 A CN 201911105826A CN 111144056 B CN111144056 B CN 111144056B
Authority
CN
China
Prior art keywords
mapping
synthesized netlist
logic synthesis
processing device
technical
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
CN201911105826.3A
Other languages
English (en)
Other versions
CN111144056A (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.)
Gowin Semiconductor Corp
Original Assignee
Gowin Semiconductor Corp
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 Gowin Semiconductor Corp filed Critical Gowin Semiconductor Corp
Priority to CN201911105826.3A priority Critical patent/CN111144056B/zh
Publication of CN111144056A publication Critical patent/CN111144056A/zh
Application granted granted Critical
Publication of CN111144056B publication Critical patent/CN111144056B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本发明公开了一种基于后端需求的技术映射控制方法及装置、系统,包括:后端处理装置读取前端逻辑综合装置生成的综合后网表并判断综合后网表中的技术映射结果与后端需求是否匹配;当判断结果为否时,生成技术映射导向信息并反馈至前端逻辑综合装置;当接收到后端处理装置反馈的技术映射导向信息时,前端逻辑综合装置根据技术映射导向信息对用户设计中的逻辑资源执行局部映射操作得到新的技术映射结果并更新至综合后网表中以生成新的综合后网表,前端逻辑综合装置生成的综合后网表用于提供给后端处理装置。可见,实施本发明能够根据后端需求为技术映射提供精确的导向信息,提高映射结果的质量,进而能够提高映射结果与后端需求的匹配度。

Description

基于后端需求的技术映射控制方法及装置、系统
技术领域
本发明涉及FPGA技术领域,尤其涉及一种基于后端需求的技术映射控制方法及装置、系统。
背景技术
FPGA(Field-Programmable Gate Array,现场可编程门阵列)的设计流程是利用EDA(Electronics Design Automation,电子设计自动化)开发软件和编程工具对FPGA芯片进行开发的过程。EDA开发软件的开发流程主要包括前端的逻辑综合流程及后端的布局布线、时序分析和功耗分析等流程。其中,技术映射是逻辑综合流程中的重要组成部分,其具体流程是通过通用的映射算法将用户设计中的逻辑资源映射为逻辑查找表并输出到综合后网表中。
实践发现,不同的用户设计、局部网表常常具有不同的映射需求,且同一用户设计、局部网表在不同的器件上也有不同的映射需求,通过当前的技术映射方法得到的映射结果难易满足各个用户设计、局部网表在不同器件上的映射需求,导致映射结果较差进而无法满足后端需求的技术问题。因此,面对复杂多变的用户设计、局部网表,如何实现对技术映射的控制以提高映射结果的质量进而使得映射结果满足后端需求显得尤为重要。
发明内容
本发明所要解决的技术问题在于,提供一种基于后端需求的技术映射控制方法及装置、系统,能够根据后端需求为技术映射提供精确的导向信息,提高映射结果的质量,进而能够提高映射结果与后端需求的匹配度。
为了解决上述技术问题,本发明实施例第一方面公开了一种基于后端需求的技术映射控制方法,所述方法包括:
后端处理装置读取前端逻辑综合装置生成的综合后网表,并判断所述综合后网表中的技术映射结果与预先确定出的后端需求是否匹配;当判断出所述综合后网表中的技术映射结果与所述后端需求不匹配时,生成技术映射导向信息,并将所述技术映射导向信息反馈至所述前端逻辑综合装置;
当接收到所述后端处理装置反馈的所述技术映射导向信息时,所述前端逻辑综合装置根据所述技术映射导向信息对用户设计中的逻辑资源执行局部映射操作得到新的技术映射结果,并将所述新的技术映射结果更新至所述综合后网表中以生成新的综合后网表;
其中,所述前端逻辑综合装置生成的所述综合后网表用于提供给所述后端处理装置。
作为一种可选的实施方式,在本发明实施例第一方面中,所述后端处理装置读取前端逻辑综合装置生成的综合后网表,包括:
所述后端处理装置读取前端逻辑综合装置初始生成的综合后网表;或者,
所述后端处理装置读取前端逻辑综合装置当前生成的综合后网表;
其中,所述前端逻辑综合装置当前生成的综合后网表是由所述前端逻辑综合装置将在当前时刻之前最后一次对所述用户设计中的逻辑资源执行局部映射操作得到的技术映射结果更新至在所述当前时刻之前最后一次生成的综合后网表中得到的,所述当前时刻为所述前端逻辑综合装置当前生成综合后网表的时刻。
作为一种可选的实施方式,在本发明实施例第一方面中,所述技术映射导向信息包括所述用户设计中逻辑资源的待优化区域和/或对所述待优化区域进行优化的优化方向;
其中,当所述技术映射导向信息包括所述待优化区域和所述优化方向时,所述前端逻辑综合装置根据所述技术映射导向信息对用户设计中的逻辑资源执行局部映射操作得到新的技术映射结果,包括:
所述前端逻辑综合装置选择与所述优化方向相匹配的目标技术映射算法,并通过所述目标技术映射算法对所述待优化区域对应的待优化内容执行局部映射操作得到新的技术映射结果。
作为一种可选的实施方式,在本发明实施例第一方面中,所述后端处理装置读取前端逻辑综合装置生成的综合后网表之后,所述方法还包括:
所述后端处理装置对读取到的所述综合后网表执行目标操作,得到与所述目标操作对应的操作结果,根据与所述目标操作对应的操作结果确定所述后端处理装置的后端需求,并触发执行所述的判断所述综合后网表中的技术映射结果与预先确定出的后端需求是否匹配的步骤;
其中,所述目标操作包括布局布线操作、时序分析操作、功耗分析操作、局部面积分析操作以及关键路径分析操作中的至少一种。
作为一种可选的实施方式,在本发明实施例第一方面中,所述待优化区域包括面积导向的映射区域、层级导向的映射区域、功耗导向的映射区域以及关键路径导向的映射区域中的一种或多种的组合。
作为一种可选的实施方式,在本发明实施例第一方面中,所述后端处理装置生成技术映射导向信息之后,所述方法还包括:
所述后端处理装置对比当前生成的所述技术映射导向信息与在当前生成所述技术映射导向信息之前最新生成的技术映射导向信息是否相同,得到对比结果;
当所述对比结果为是时,所述后端处理装置执行所述的对读取到的所述综合后网表执行目标操作的步骤;
当所述对比结果为否时,所述后端处理装置执行所述的将所述技术映射导向信息反馈至所述前端逻辑综合装置的步骤。
作为一种可选的实施方式,在本发明实施例第一方面中,所述后端处理装置读取前端逻辑综合装置生成的综合后网表之后,所述方法还包括:
所述后端处理装置确定其与所述前端逻辑综合装置的累计交互参数,并判断所述累计交互参数是否大于等于预先确定出的交互参数阈值;
当判断出所述累计交互参数不大于等于所述交互参数阈值时,所述后端处理装置执行所述的判断所述综合后网表中的技术映射结果与预先确定出的后端需求是否匹配的步骤。
作为一种可选的实施方式,在本发明实施例第一方面中,所述累计交互参数包括所述后端处理装置与所述前端逻辑综合装置的累计交互时长和/或所述后端处理装置与所述前端逻辑综合装置的累计交互次数。
本发明实施例第二方面公开了一种前端逻辑综合装置,所述前端逻辑综合装置包括:
生成模块,用于生成综合后网表;
检测模块,用于检测是否接收到所述后端处理装置针对所述生成模块生成的所述综合后网表反馈的技术映射导向信息;
所述生成模块,还用于当所述检测模块检测到所述后端处理装置针对所述生成模块生成的所述综合后网表反馈的所述技术映射导向信息时,根据所述技术映射导向信息对用户设计中的逻辑资源执行局部映射操作得到新的技术映射结果,并将所述新的技术映射结果更新至所述综合后网表中以生成新的综合后网表;
其中,所述生成模块生成的所述综合后网表用于提供给所述后端处理装置,以使所述后端处理装置判断所述综合后网表中的技术映射结果与预先确定出的后端需求是否匹配,且所述技术映射导向信息是由所述后端处理装置判断出所述综合后网表中的技术映射结果与所述后端需求不匹配时生成的。
作为一种可选的实施方式,在本发明实施例第二方面中,所述技术映射导向信息包括所述用户设计中逻辑资源的待优化区域和/或对所述待优化区域进行优化的优化方向;
其中,所述生成模块根据所述技术映射导向信息对用户设计中的逻辑资源执行局部映射操作得到新的技术映射结果的具体方式为:
当所述技术映射导向信息包括所述待优化区域和所述优化方向时,选择与所述优化方向相匹配的目标技术映射算法,并通过所述目标技术映射算法对所述待优化区域对应的待优化内容执行局部映射操作得到新的技术映射结果。
本发明实施例第三方面公开了一种后端处理装置,所述后端处理装置包括:
读取模块,用于读取前端逻辑综合装置生成的综合后网表;
判断模块,用于判断所述读取模块读取到的所述综合后网表中的技术映射结果与预先确定出的后端需求是否匹配;
映射优化生成模块,用于当所述判断模块判断出所述综合后网表中的技术映射结果与所述后端需求不匹配时,生成技术映射导向信息;
反馈模块,用于将所述技术映射导向信息反馈至所述前端逻辑综合装置,以触发所述前端逻辑综合装置根据所述技术映射导向信息对用户设计中的逻辑资源执行局部映射操作得到新的技术映射结果以及将所述新的技术映射结果更新至所述综合后网表中以生成新的综合后网表并提供给所述后端处理装置。
作为一种可选的实施方式,在本发明实施例第三方面中,所述读取模块读取前端逻辑综合装置生成的综合后网表的具体方式为:
读取前端逻辑综合装置初始生成的综合后网表;或者,
读取前端逻辑综合装置当前生成的综合后网表;
其中,所述前端逻辑综合装置当前生成的综合后网表是由所述前端逻辑综合装置将在当前时刻之前最后一次对所述用户设计中的逻辑资源执行局部映射操作得到的技术映射结果更新至在所述当前时刻之前最后一次生成的综合后网表中得到的,所述当前时刻为所述前端逻辑综合装置当前生成综合后网表的时刻。
作为一种可选的实施方式,在本发明实施例第三方面中,所述技术映射导向信息包括所述用户设计中逻辑资源的待优化区域和/或对所述待优化区域进行优化的优化方向。
作为一种可选的实施方式,在本发明实施例第三方面中,所述后端处理装置还包括:
需求分析模块,用于在所述读取模块读取前端逻辑综合装置生成的综合后网表之后,对读取到的所述综合后网表执行目标操作,得到与所述目标操作对应的操作结果,根据与所述目标操作对应的操作结果确定所述后端处理装置的后端需求,并触发所述判断模块执行所述的判断所述综合后网表中的技术映射结果与预先确定出的后端需求是否匹配;
其中,所述目标操作包括布局布线操作、时序分析操作、功耗分析操作、局部面积分析操作以及关键路径分析操作中的至少一种。
作为一种可选的实施方式,在本发明实施例第三方面中,所述待优化区域包括面积导向的映射区域、层级导向的映射区域、功耗导向的映射区域以及关键路径导向的映射区域中的一种或多种的组合。
作为一种可选的实施方式,在本发明实施例第三方面中,所述后端处理装置还包括:
对比模块,用于在所述映射优化生成模块生成技术映射导向信息之后,比当前生成的所述技术映射导向信息与在当前生成所述技术映射导向信息之前最新生成的技术映射导向信息是否相同,得到对比结果;当所述对比结果为是时,触发所述需求分析模块执行所述的对读取到的所述综合后网表执行目标操作;当所述对比结果为否时,触发所述反馈模块执行所述的将所述技术映射导向信息反馈至所述前端逻辑综合装置。
作为一种可选的实施方式,在本发明实施例第三方面中,所述后端处理装置还包括:
确定模块,用于在所述读取模块读取前端逻辑综合装置生成的综合后网表之后,确定其与所述前端逻辑综合装置的累计交互参数;
所述判断模块,还用于判断所述累计交互参数是否大于等于预先确定出的交互参数阈值;当判断出所述累计交互参数不大于等于所述交互参数阈值时,触发执行所述的判断所述综合后网表中的技术映射结果与预先确定出的后端需求是否匹配。
作为一种可选的实施方式,在本发明实施例第三方面中,所述累计交互参数包括所述后端处理装置与所述前端逻辑综合装置的累计交互时长和/或所述后端处理装置与所述前端逻辑综合装置的累计交互次数。
本发明实施例第四方面公开了另一种前端逻辑综合装置,所述前端逻辑综合装置包括:
存储有可执行程序代码的存储器;
与所述存储器耦合的处理器;
所述处理器调用所述存储器中存储的所述可执行程序代码,执行本发明实施例第一方面公开的基于后端需求的技术映射控制方法中前端逻辑综合装置所执行的步骤。
本发明实施例第五方面公开了另一种后端处理装置,所述后端处理装置包括:
存储有可执行程序代码的存储器;
与所述存储器耦合的处理器;
所述处理器调用所述存储器中存储的所述可执行程序代码,执行本发明实施例第一方面公开的基于后端需求的技术映射控制方法中后端处理装置所执行的步骤。
本发明实施例第六方面公开了一种计算机存储介质,所述计算机存储介质存储有计算机指令,所述计算机指令被调用时,用于执行本发明实施例第一方面公开的基于后端需求的技术映射控制方法中前端逻辑综合装置所执行的步骤。
本发明实施例第七方面公开了一种计算机存储介质,所述计算机存储介质存储有计算机指令,所述计算机指令被调用时,用于执行本发明实施例第一方面公开的基于后端需求的技术映射控制方法中后端处理装置所执行的步骤。
本发明实施例第八方面公开了一种基于后端需求的技术映射控制系统,所述系统包括本发明实施例第三方面公开的前端逻辑综合装置以及本发明实施例第四方面公开的后端处理装置。
与现有技术相比,本发明实施例具有以下有益效果:
实施本发明实施例能够在后端处理装置读取到综合后网表之后根据后端处理装置的实际需求判断综合后网表中的技术映射结果是否需要优化,若需要优化则直接反馈技术映射导向信息至前端逻辑综合装置,以使前端逻辑综合装置对用户设计中的逻辑资源进行局部映射以生成新的综合后网表,这样能够以后端需求来引导前端逻辑综合中技术映射的目标和方向,为技术映射提供了精确的导向信息,有利于提高技术映射的结果与后端需求的匹配度,进一步提高了前端逻辑综合的质量,此外,还能够提升设计时序和映射资源利用率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例公开的一种基于后端需求的技术映射控制方法的流程示意图;
图2是本发明实施例公开的另一种基于后端需求的技术映射控制方法的流程示意图;
图3是本发明实施例公开的又一种基于后端需求的技术映射控制方法的流程示意图;
图4是本发明实施例公开的一种前端逻辑综合装置的结构示意图;
图5是本发明实施例公开的另一种前端逻辑综合装置的结构示意图;
图6是本发明实施例公开的一种后端处理装置的结构示意图;
图7是本发明实施例公开的另一种后端处理装置的结构示意图;
图8是本发明实施例公开的又一种后端处理装置的结构示意图;
图9是本发明实施例公开的一种基于后端需求的技术映射控制系统的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或端没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或端固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本发明公开了一种基于后端需求的技术映射控制方法及装置、系统,能够以后端需求来引导前端逻辑综合中技术映射的目标和方向,为技术映射提供了精确的导向信息,有利于提高技术映射的结果与后端需求的匹配度,进一步提高了前端逻辑综合的质量,此外,还能够提升设计时序和逻辑资源利用率。以下分别进行详细说明。
请参阅图1,图1是本发明实施例公开的一种基于后端需求的技术映射控制方法的流程示意图。其中,图1所描述的方法可以应用于EDA开发工具中,该EDA开发工具至少包括前端逻辑综合装置和后端处理装置。如图1所示,该基于后端需求的技术映射控制方法可以包括以下操作:
101、后端处理装置读取前端逻辑综合装置生成的综合后网表。
本发明实施例中,可选的,后端处理装置读取前端逻辑综合装置生成的综合后网表,可以包括:
后端处理装置接收前端逻辑综合装置发送的综合后网表;或者,
后端处理装置直接或者根据操作人员的拷贝操作/剪切操作从存储有前端逻辑综合装置生成的综合后网表的存储装置中读取前端逻辑综合装置生成的综合后网表;或者,
后端处理装置从存储有前端逻辑综合装置生成的综合后网表的内存数据块中读取前端逻辑综合装置生成的综合后网表,可选的,内存数据块可以为共享内存数据块。
需要说明的是,在后端处理装置接收前端逻辑综合装置发送的综合后网表的实施方式中,前端逻辑综合装置生成综合后网表之后可以直接将生成的综合后网表发送至后端处理装置,也可以根据操作人员触发的发送指令将生成的综合后网表发送至后端处理装置,还可以根据后端处理装置发送的综合后网表获取指令将生成的综合后网表发送至后端处理装置,本发明实施例不做限定。
102、后端处理装置判断读取到的综合后网表中的技术映射结果与预先确定出的后端需求是否匹配,当步骤102的判断结果为是时,可以结束本次流程;当步骤102的判断结果为否时,触发执行步骤103。
本发明实施例中,预先确定出的后端需求可以是由开发人员预先录入至后端处理装置的,也可以是后端处理装置在读取到综合后网表之后自动化分析得到的,本发明实施例不做限定。
103、后端处理装置生成技术映射导向信息,并将技术映射导向信息反馈至前端逻辑综合装置。
本发明实施例中,可选的,技术映射导向信息可以包括用户设计中逻辑资源的待优化区域和/或对该待优化区域进行优化的优化方向。
104、当接收到后端处理装置反馈的技术映射导向信息时,前端逻辑综合装置根据技术映射导向信息对用户设计中的逻辑资源执行局部映射操作得到新的技术映射结果。
可选的,当该技术映射导向信息包括待优化区域和优化方向时,前端逻辑综合装置根据技术映射导向信息对用户设计中的逻辑资源执行局部映射操作得到新的技术映射结果,可以包括:
前端逻辑综合装置选择与优化方向相匹配的目标技术映射算法,并通过目标技术映射算法对待优化区域对应的待优化内容执行局部映射操作得到新的技术映射结果。这样能够根据后端处理装置反馈的技术映射导向信息中包括的优化方向智能化确定与优化方向相匹配的技术映射算法,进而根据相匹配的技术映射算法对确定出的待优化区域进行优化,能够为不同的技术映射需求提供精确的导向信息,不仅提高了技术映射优化方式的通用性以及技术映射优化效率,还提高了技术映射结果与后端需求的匹配度,进而有利于提高设计时序以及映射资源的利用率。
105、前端逻辑综合装置将新的技术映射结果更新至综合后网表中以生成新的综合后网表。
本发明实施例中,前端逻辑综合装置生成的综合后网表需要提供给后端处理装置,以触发后端处理装置继续执行上述步骤101。
在一个可选的实施例中,后端处理装置读取前端逻辑综合装置生成的综合后网表,可以包括:
后端处理装置读取前端逻辑综合装置初始生成的综合后网表;或者,
后端处理装置读取前端逻辑综合装置当前生成的综合后网表;
其中,前端逻辑综合装置当前生成的综合后网表是由前端逻辑综合装置将在当前时刻之前最后一次对用户设计中的逻辑资源执行局部映射操作得到的技术映射结果更新至在当前时刻之前最后一次生成的综合后网表中得到的,该当前时刻为前端逻辑综合装置当前生成综合后网表的时刻。
其中,前端逻辑综合装置初始生成综合后网表可以包括:
前端逻辑综合装置读取用户设计,并对读取到的用户设计执行逻辑综合操作,得到逻辑综合结果;
前端逻辑综合装置调用通用的技术映射算法对逻辑综合结果进行技术映射,得到技术映射结果;
前端逻辑综合装置判断技术映射结果是否需要进行目标优化操作;
当判断出需要进行目标优化操作时,前端逻辑综合装置对技术映射结果执行目标优化操作后生成综合后网表(也即初始综合后网表);
当判断出不需要进行目标优化操作时,前端逻辑综合装置根据技术映射后得到的技术映射结果生成综合后网表(也即初始综合后网表)。
其中,前端逻辑综合装置调用通用的技术映射算法对逻辑综合结果进行技术映射,得到技术映射结果,可以包括:
前端逻辑综合装置调用通用的技术映射算法将逻辑综合结果中的逻辑资源映射为逻辑查找表。
其中,上述目标优化操作可以包括面积优化操作、层级结构优化操作以及功耗优化操作中的至少一种,且面积优化操作对应面积驱动的技术映射,层级结构优化操作对应层级驱动的技术映射,功耗优化操作对应功耗驱动的技术映射。
可见,该可选的实施例能够使后端处理装置反馈技术映射导向信息多次引导前端逻辑综合装置对综合后网表中的技术映射结果进行优化,进一步提高了前端逻辑综合装置提供给后端处理装置的综合后网表中的技术映射结果与后端处理装置实际需求的匹配度。
可见,实施图1所描述的基于后端需求的技术映射控制方法能够根据后端处理装置反馈的技术映射导向信息引导前端逻辑综合装置对综合后网表中的技术映射结果进行优化,且在优化时能够选择相匹配的技术映射算法,为不同的用户设计或网表在不同器件上的映射需求提供了精确的导向信息(如面积导向信息、层级导向信息、功耗导向信息等),不仅提高了技术映射优化方式的通用性及优化效率,还提高了前端逻辑综合装置最终提供给后端处理装置的综合后网表中的技术映射结果与后端处理装置实际需求的匹配度,进而提升了设计时序和映射资源的利用率。
实施例二
请参阅图2,图2是本发明实施例公开的另一种基于后端需求的技术映射控制方法的流程示意图。其中,图2所描述的方法可以应用于EDA开发工具中,该EDA开发工具至少包括前端逻辑综合装置和后端处理装置。如图2所示,该基于后端需求的技术映射控制方法可以包括以下操作:
201、后端处理装置读取前端逻辑综合装置生成的综合后网表。
202、后端处理装置对读取到的综合后网表执行目标操作,得到与目标操作对应的操作结果。
203、后端处理装置根据与目标操作对应的操作结果确定后端处理装置的后端需求。
本发明实施例中,可选的,目标操作可以包括布局布线操作、时序分析操作、功耗分析操作、局部面积分析操作以及关键路径分析操作中的至少一种。且后端处理装置能够在读取到前端逻辑综合装置生成的综合后网表之后对综合后网表执行相应操作,以根据操作结果智能化分析得到后端需求,为后续判断综合后网表中的技术映射结果是否满足后端需求提供了判断依据,提高了判断综合后网表中的技术映射结果是否满足后端需求的判断结果的准确性。
204、后端处理装置判断读取到的综合后网表中的技术映射结果与确定出的后端需求是否匹配,当步骤204的判断结果为是时,可以结束本次流程;当步骤204的判断结果为否时,触发执行步骤205。
在一个可选的实施例中,若后端处理装置在进行布局布线分析、时序分析过程中发现某一区域的芯片资源充足,但是该区域对应的连接关系复杂且层级数较大,这会影响时序的提高,则后端处理装置可以通知前端逻辑综合装置在进行局部映射操作时,对于该区域对应的逻辑资源可以使用更多的逻辑资源换取更简洁的连接关系,层级数更小,有利于提高时序;若发现某一区域的芯片资源比较紧张,但是对应的层级数不大(例如不超过预先确定出的层级数),则后端处理装置可以通知前端逻辑综合装置在进行局部映射操作时牺牲层级数以换取更小的逻辑资源占用;若某区域的网表结构不适合时序的提高、功耗的优化,则后端处理装置可以通知前端逻辑综合装置优化网表结构。若后端处理装置未发现前述情况,则可认为本次读取到的综合后网表中的技术映射结果合理,能够满足后端需求。
205、后端处理装置生成技术映射导向信息,并将技术映射导向信息反馈至前端逻辑综合装置。
本发明实施例中,技术映射导向信息可以包括用户设计中逻辑资源的待优化区域和/或对待优化区域进行优化的优化方向,其中,待优化区域包括面积导向的映射区域、层级导向的映射区域、功耗导向的映射区域以及关键路径导向的映射区域中的一种或多种的组合,这样能够为前端逻辑综合中的技术映射提供精确的导向信息,不仅能够提高技术映射的效率,还能够提高技术映射的准确率。可选的,当该技术映射导向信息包括的待优化区域有多个时,该技术映射导向信息还可以包括每个待优化区域对应的优先级,以便于前端逻辑综合装置在进行技术映射优化时资源不足的情况下根据需要进行优化的每个待优化区域对应的优先级确定优先优化的内容。其中,优先级越高,对应待优化区域处的待优化内容重要性就越高,在资源不足的情况下,前端逻辑综合装置优先优化优先级较高的待优化区域处的待优化内容,以确保对该部分内容进行优化的效率及准确率。
206、当接收到后端处理装置反馈的技术映射导向信息时,前端逻辑综合装置根据技术映射导向信息对用户设计中的逻辑资源执行局部映射操作得到新的技术映射结果。
可选的,当技术映射导向信息包括用户设计中逻辑资源的待优化区域和对待优化区域进行优化的优化方向,前端逻辑综合装置根据技术映射导向信息对用户设计中的逻辑资源执行局部映射操作得到新的技术映射结果,可以包括:
前端逻辑综合装置选择与上述优化方向相匹配的目标技术映射算法,并通过该目标技术映射算法对上述待优化区域对应的待优化内容执行局部映射操作得到新的技术映射结果。可见,该可选的实施例能够根据对技术映射结果的优化方向智能化选择相匹配的技术映射算法并根据确定出的技术映射算法执行局部映射操作,这样能够使得生成的新的技术映射结果能够达到对不同后端需求(如面积需求、功耗需求、层级需求等)兼顾的效果。
207、前端逻辑综合装置将新的技术映射结果更新至综合后网表中以生成新的综合后网表。
在一个可选的实施例中,后端处理装置读取前端逻辑综合装置生成的综合后网表之后,该方法还可以包括:
后端处理装置确定当前读取到的综合后网表的网表标识,并判断当前读取到的综合后网表的网表标识的有效性;
当判断出当前读取到的综合后网表的网表标识有效时,后端处理装置执行上述的判断综合后网表中的技术映射结果与预先确定出的后端需求是否匹配的步骤;或者,后端处理装置执行上述的对读取到的综合后网表执行目标操作,得到与目标操作对应的操作结果的步骤。
其中,当前读取到的综合后网表的网表标识有效表示当前读取到的综合后网表为后端处理装置未进行过技术映射优化判断的综合后网表,进一步可选的,当判断出当前读取到的综合后网表的网表标识无效时,后端处理装置可以输出错误提示,该错误提示用于提示当前读取到的综合后网表为重复读取到的综合后网表。这样对当前读取到的综合后网表进行有效性判断的方式能够减少后端处理装置误读取到重复的综合后网表而导致的重复判断综合后网表中的技术映射结果是否需要进行优化的操作,提高了对读取到的综合后网表中技术映射结果进行优化判断的准确性以及可靠性。
其中,前端逻辑综合装置每次生成的综合后网表均存在该综合后网表唯一对应的网表标识。进一步可选的,在生成综合后网表之后,前端逻辑综合装置还可以执行以下操作:
前端逻辑综合装置为生成的综合后网表设置与该综合后网表唯一对应的网表标识,可选的,该网表标识可以依据综合后网表的生成顺序和/或生成时刻和/或优化次数生成。
在该可选的实施例中,作为一种可选的实施方式,后端处理装置判断当前读取到的综合后网表的网表标识的有效性,可以包括:
后端处理装置判断当前读取到的综合后网表的网表标识是否为网表标识集合中的其中一个,当判断出网表标识不为网表标识集合中的其中一个时,确定当前读取到的综合后网表的网表标识有效;当判断出网表标识为网表标识集合中的其中一个时,确定当前读取到的综合后网表的网表标识无效。
在该可选的实施方式中,该网表标识集合用于存储后端处理装置已判断过对应的技术映射结果是否需要进行优化的所有综合后网表的网表标识。需要说明的是,后端处理装置每当判断一个综合后网表中的技术映射结果是否需要进行优化之后,均可以自动将该综合后网表唯一对应的网表标识添加至该网表标识集合中,这样在读取到一个综合后网表之后对比读取到的综合后网表的网表标识以及网表标识集合中的网表标识,且只有当读取到的综合后网表的网表标识未存在于网表标识集合中或者当网表标识集合中未包括后端处理装置当前读取到的综合后网表的网表标识时才进行后续的判断操作。可见,这样能够通过对比当前读取到的综合后网表的网表标识以及网表标识集合中的网表标识的方式判断当前读取到的综合后网表的网表标识的有效性,准确率高。
在该可选的实施例中,作为另一种可选的实施方式,后端处理装置判断当前读取到的综合后网表的网表标识的有效性,可以包括:
后端处理装置判断当前读取到的综合后网表的网表标识是否与后端处理装置上次读取到的综合后网表的网表标识相同,当判断出不相同时,确定当前读取到的综合后网表的网表标识有效;当判断出相同时,确定当前读取到的综合后网表的网表标识无效。
可见,该另一种可选的实施方式能够根据当前读取到的综合后网表的网表标识以及上次读取到的综合后网表的网表标识对当前读取到的综合后网表的网表标识进行有效性判断,无需再将当前读取到的综合后网表的网表标识与网表标识集合中的多个网表标识进行对比,提高了对当前读取到的综合后网表的网表标识进行有效性判断的效率,进一步有利于提高后续对综合后网表的技术映射结果进行优化的优化效率。
可见,实施图2所描述的基于后端需求的技术映射控制方法不仅提高了技术映射优化方式的通用性及优化效率,还提高了前端逻辑综合装置最终提供给后端处理装置的综合后网表中的技术映射结果与后端处理装置实际需求的匹配度,进而提升了设计时序和映射资源的利用率。此外,还能够为后续判断综合后网表中的技术映射结果是否满足后端需求提供了判断依据,提高了判断综合后网表中的技术映射结果是否满足后端需求的判断结果的准确性。此外,还能够减少后端处理装置误读取到重复的综合后网表而导致的重复判断综合后网表中的技术映射结果是否需要进行优化的操作,提高了对读取到的综合后网表中技术映射结果进行优化判断的准确性以及可靠性。
实施例三
请参阅图3,图3是本发明实施例公开的又一种基于后端需求的技术映射控制方法的流程示意图。其中,图3所描述的方法可以应用于EDA开发工具中,该EDA开发工具至少包括前端逻辑综合装置和后端处理装置。如图3所示,该基于后端需求的技术映射控制方法可以包括以下操作:
301、后端处理装置读取前端逻辑综合装置生成的综合后网表。
302、后端处理装置确定其与前端逻辑综合装置的累计交互参数,并判断累计交互参数是否大于等于预先确定出的交互参数阈值,当步骤302的判断结果为是时,可以结束本次流程,当步骤302的判断结果为否时,可以触发执行步骤303。
本发明实施例中,需要说明的是,当步骤302的判断结果为否时,也可以直接触发执行步骤305,本发明实施例不做限定。
本发明实施例中,可选的,该累计交互参数可以包括后端处理装置与前端逻辑综合装置的累计交互时长和/或后端处理装置与前端逻辑综合装置的累计交互次数。其中,累计交互时长的起始时刻可以为后端处理装置读取到初始综合后网表的时刻,累计交互次数可以为从第一时刻到当前时刻的时间段内后端处理装置反馈技术映射导向信息的总次数,也可以为从第二时刻到当前时刻的时间段内后端处理装置接收综合后网表的总次数,本发明实施例不做限定。其中,第一时刻早于后端处理装置反馈初始综合后网表对应的技术映射导向信息的时刻,第二时刻早于后端处理装置接收到该初始综合后网表的时刻,该初始综合后网表是由前端逻辑综合装置根据读取到的用户设计生成的。
可见,本发明实施例能够通过设置交互参数阈值的方式在一定程度上可以限制后端处理装置与前端逻辑综合装置的优化交互次数,减少无限优化的情况发生,进而减少对逻辑综合资源的不必要浪费。
303、后端处理装置对读取到的综合后网表执行目标操作,得到与目标操作对应的操作结果。
304、后端处理装置根据与目标操作对应的操作结果确定后端处理装置的后端需求。
305、后端处理装置判断读取到的综合后网表中的技术映射结果与确定出的后端需求是否匹配,当步骤305的判断结果为是时,可以结束本次流程;当步骤305的判断结果为否时,触发执行步骤306。
306、后端处理装置生成技术映射导向信息。
本发明实施例中,在执行完毕步骤306之后,可以触发执行步骤307(如图3所示),也可以直接触发执行步骤308。
307、后端处理装置对比当前生成的技术映射导向信息与在当前生成技术映射导向信息之前最新生成的技术映射导向信息是否相同,得到对比结果。
本发明实施例中,当对比结果为是时,也即当对比结果表示当前生成的技术映射导向信息与在当前生成技术映射导向信息之前最新生成的技术映射导向信息相同时,可以重新触发执行步骤303;当对比结果为否时,也即当对比结果表示当前生成的技术映射导向信息与在当前生成技术映射导向信息之前最新生成的技术映射导向信息不相同时,触发执行步骤308。
可见,本发明实施例还能够在生成技术映射导向信息之后判断本次生成的技术映射导向信息是否与上次生成的技术映射导向信息相同,若相同,则重新分析后端处理装置的后端需求,若不同,则将技术映射导向信息发送至前端逻辑综合装置,减少引导前端逻辑综合装置重复执行相同的技术映射优化操作的情况发生,提高了向前端逻辑综合装置反馈的技术映射导向信息的可靠性与准确性,也在一定程度上提高了技术映射的效率与准确率。
308、后端处理装置将技术映射导向信息反馈至前端逻辑综合装置。
309、当接收到后端处理装置反馈的技术映射导向信息时,前端逻辑综合装置根据技术映射导向信息对用户设计中的逻辑资源执行局部映射操作得到新的技术映射结果。
310、前端逻辑综合装置将新的技术映射结果更新至综合后网表中以生成新的综合后网表。
本发明实施例中,对于前端逻辑综合装置和后端处理装置的其它描述请参照实施例一及实施例二中的相应描述,本发明实施例不再赘述。
可见,实施图3所描述的基于后端需求的技术映射控制方法不仅提高了技术映射优化方式的通用性及优化效率,还提高了前端逻辑综合装置最终提供给后端处理装置的综合后网表中的技术映射结果与后端处理装置实际需求的匹配度,进而提升了设计时序和映射资源的利用率。此外,通过设置交互参数阈值的方式在一定程度上可以限制后端处理装置与前端逻辑综合装置的优化交互次数,减少无限优化的情况发生,进而减少对逻辑综合资源的不必要浪费。此外,还能够减少引导前端逻辑综合装置重复执行相同的技术映射优化操作的情况发生,提高了向前端逻辑综合装置反馈的技术映射导向信息的可靠性与准确性,也在一定程度上提高了技术映射的效率与准确率。
实施例四
本发明实施例公开了又一种基于后端需求的技术映射控制方法,该方法应用于EDA开发工具包括的前端逻辑综合装置中,该方法可以包括以下操作:
前端逻辑综合装置生成综合后网表,其中,前端逻辑综合装置生成的综合后网表用于提供给后端处理装置,以触发后端处理装置判断读取到的综合后网表中的技术映射结果与预先确定出的后端需求是否匹配以及当判断出不匹配时生成技术映射导向信息反馈至前端逻辑综合装置;
前端逻辑综合装置检测是否接收到后端处理装置反馈的的技术映射导向信息;当检测结果为是时,根据技术映射导向信息对用户设计中的逻辑资源执行局部映射操作得到新的技术映射结果,将新的技术映射结果更新至综合后网表中以生成新的综合后网表。
其中,前端逻辑综合装置生成综合后网表可以包括:
前端逻辑综合装置读取用户设计,并根据读取到的用户设计生成初始综合后网表;或者,
前端逻辑综合装置将在当前时刻之前最后一次对用户设计中的逻辑资源执行局部映射操作得到的技术映射结果更新至在当前时刻之前最后一次生成的综合后网表,以生成新的综合后网表。
可选的,上述技术映射导向信息可以包括用户设计中逻辑资源的待优化区域和/或对待优化区域进行优化的优化方向。其中,当技术映射导向信息包括待优化区域和优化方向时,前端逻辑综合装置根据技术映射导向信息对用户设计中的逻辑资源执行局部映射操作得到新的技术映射结果,包括:
前端逻辑综合装置选择与优化方向相匹配的目标技术映射算法,并通过目标技术映射算法对待优化区域对应的待优化内容执行局部映射操作得到新的技术映射结果。
需要说明的是,本发明实施例中,针对前端逻辑综合装置的其它描述,包括但不限于前端逻辑综合装置所执行的其它步骤、前端逻辑综合装置与后端处理装置所交互信息的具体内容和具体作用以及前端逻辑综合装置执行某一步骤时的具体实现方式等,请参照实施例一至实施例三中的详细描述,本发明实施例不再赘述。
可见,实施本发明实施例所描述的基于后端需求的技术映射控制方法能够以后端需求来引导前端逻辑综合中技术映射的目标和方向,为技术映射提供了精确的导向信息,有利于提高技术映射的结果与后端需求的匹配度,进一步提高了前端逻辑综合的质量。
实施例五
本发明实施例公开了又一种基于后端需求的技术映射控制方法,该方法应用于EDA开发工具包括的后端处理装置中,该方法可以包括以下操作:
后端处理装置读取前端逻辑综合装置生成的综合后网表;
后端处理装置判断读取到的综合后网表中的技术映射结果与预先确定出的后端需求是否匹配,当判断出相匹配时,可以结束本次流程;
当判断出不相匹配时,后端处理装置生成技术映射导向信息,并将技术映射导向信息反馈至前端逻辑综合装置,以触发前端逻辑综合装置根据技术映射导向信息对用户设计中的逻辑资源执行局部映射操作得到新的技术映射结果并将新的技术映射结果更新至综合后网表中以生成新的综合后网表。
在一个可选的实施例中,后端处理装置读取前端逻辑综合装置生成的综合后网表,可以包括:
后端处理装置读取前端逻辑综合装置初始生成的综合后网表;或者,
后端处理装置读取前端逻辑综合装置当前生成的综合后网表;
其中,前端逻辑综合装置当前生成的综合后网表是由前端逻辑综合装置将在当前时刻之前最后一次对用户设计中的逻辑资源执行局部映射操作得到的技术映射结果更新至在当前时刻之前最后一次生成的综合后网表中得到的,该当前时刻为前端逻辑综合装置当前生成综合后网表的时刻。
在另一个可选的实施例中,技术映射导向信息可以包括用户设计中逻辑资源的待优化区域和/或对待优化区域进行优化的优化方向,其中,待优化区域包括面积导向的映射区域、层级导向的映射区域、功耗导向的映射区域以及关键路径导向的映射区域中的一种或多种的组合。
在又一个可选的实施例中,后端处理装置读取前端逻辑综合装置初始生成的综合后网表之后,还可以执行以下操作:
后端处理装置对读取到的综合后网表执行目标操作,得到与目标操作对应的操作结果;
后端处理装置根据与目标操作对应的操作结果确定后端处理装置的后端需求。
其中,目标操作包括布局布线操作、时序分析操作、功耗分析操作、局部面积分析操作以及关键路径分析操作中的至少一种。
在又一个可选的实施例中,后端处理装置生成技术映射导向信息之后,还可以执行以下操作:
后端处理装置对比当前生成的技术映射导向信息与在当前生成技术映射导向信息之前最新生成的技术映射导向信息是否相同,得到对比结果;
当对比结果为是时,后端处理装置重新执行上述的对读取到的综合后网表执行目标操作,得到与目标操作对应的操作结果的步骤;
当对比结果为否时,后端处理装置执行上述的将技术映射导向信息反馈至前端逻辑综合装置的步骤。
在又一个可选的实施例中,后端处理装置读取前端逻辑综合装置生成的综合后网表之后,还可以执行以下操作:
后端处理装置确定其与前端逻辑综合装置的累计交互参数,并判断累计交互参数是否大于等于预先确定出的交互参数阈值;
当判断出累计交互参数不大于等于交互参数阈值时,后端处理装置执行上述的判断综合后网表中的技术映射结果与预先确定出的后端需求是否匹配的步骤;或者,后端处理装置执行上述的对读取到的综合后网表执行目标操作,得到与目标操作对应的操作结果的步骤。
可选的,累计交互参数包括后端处理装置与前端逻辑综合装置的累计交互时长和/或后端处理装置与前端逻辑综合装置的累计交互次数。
需要说明的是,本发明实施例中,针对后端处理装置的其它描述,包括但不限于后端处理装置所执行的其它步骤、后端处理装置与前端逻辑综合装置所交互信息的具体内容和具体作用以及后端处理装置执行某一步骤时的具体实现方式等,请参照实施例一至实施例三中的详细描述,本发明实施例不再赘述。
可见,实施本发明实施例所描述的基于后端需求的技术映射控制方法能够以后端需求来引导前端逻辑综合中技术映射的目标和方向,为技术映射提供了精确的导向信息,有利于提高技术映射的结果与后端需求的匹配度,进一步提高了前端逻辑综合的质量。此外,通过设置交互参数阈值的方式在一定程度上可以限制后端处理装置与前端逻辑综合装置的优化交互次数,减少无限优化的情况发生,进而减少对逻辑综合资源的不必要浪费。此外,还能够减少引导前端逻辑综合装置重复执行相同的技术映射优化操作的情况发生,提高了向前端逻辑综合装置反馈的技术映射导向信息的可靠性与准确性,也在一定程度上提高了技术映射的效率与准确率。
实施例六
请参阅图4,图4是本发明实施例公开的一种前端逻辑综合装置的结构示意图。如图4所示,该前端逻辑综合装置可以包括:
生成模块401,用于生成综合后网表。
检测模块402,用于检测是否接收到后端处理装置针对生成模块401生成的综合后网表反馈的技术映射导向信息。
生成模块401,还用于当检测模块402检测到后端处理装置针对生成模块401生成的综合后网表反馈的技术映射导向信息时,根据技术映射导向信息对用户设计中的逻辑资源执行局部映射操作得到新的技术映射结果,并将新的技术映射结果更新至综合后网表中以生成新的综合后网表。
其中,生成模块401生成的综合后网表用于提供给后端处理装置,以使后端处理装置判断综合后网表中的技术映射结果与预先确定出的后端需求是否匹配,且技术映射导向信息是由后端处理装置判断出综合后网表中的技术映射结果与后端需求不匹配时生成的。
可选的,技术映射导向信息包括用户设计中逻辑资源的待优化区域和/或对待优化区域进行优化的优化方向。其中,生成模块401根据技术映射导向信息对用户设计中的逻辑资源执行局部映射操作得到新的技术映射结果的具体方式为:
当技术映射导向信息包括待优化区域和优化方向时,选择与优化方向相匹配的目标技术映射算法,并通过目标技术映射算法对待优化区域对应的待优化内容执行局部映射操作得到新的技术映射结果。
可见,实施图4所描述的前端逻辑综合装置能够以后端需求来引导前端逻辑综合中技术映射的目标和方向,为技术映射提供了精确的导向信息,有利于提高技术映射的结果与后端需求的匹配度,进一步提高了前端逻辑综合的质量。
实施例七
请参阅图5,图5是本发明实施例公开的另一种前端逻辑综合装置的结构示意图。如图5所示,该前端逻辑综合装置可以包括:
存储有可执行程序代码的存储器501;
与存储器耦合的处理器502;
处理器502调用存储器501中存储的可执行程序代码,执行本发明实施例一~实施例四任一实施例中公开的基于后端需求的技术映射控制方法中前端逻辑综合装置所执行的步骤。
实施例八
请参阅图6,图6是本发明实施例公开的一种后端处理装置的结构示意图。如图6所示,该后端处理装置可以包括:
读取模块601,用于读取前端逻辑综合装置生成的综合后网表。
判断模块602,用于判断读取模块601读取到的综合后网表中的技术映射结果与预先确定出的后端需求是否匹配。
映射优化生成模块603,用于当判断模块602判断出综合后网表中的技术映射结果与后端需求不匹配时,生成技术映射导向信息。
反馈模块604,用于将技术映射导向信息反馈至前端逻辑综合装置,以触发前端逻辑综合装置根据技术映射导向信息对用户设计中的逻辑资源执行局部映射操作得到新的技术映射结果,以及将新的技术映射结果更新至综合后网表中以生成新的综合后网表并提供给后端处理装置。
在一个可选的实施例中,读取模块601读取前端逻辑综合装置生成的综合后网表的具体方式可以为:
读取前端逻辑综合装置初始生成的综合后网表;或者,
读取前端逻辑综合装置当前生成的综合后网表;
其中,前端逻辑综合装置当前生成的综合后网表是由前端逻辑综合装置将在当前时刻之前最后一次对用户设计中的逻辑资源执行局部映射操作得到的技术映射结果更新至在当前时刻之前最后一次生成的综合后网表中得到的,当前时刻为前端逻辑综合装置当前生成综合后网表的时刻。
在另一个可选的实施例中,技术映射导向信息包括用户设计中逻辑资源的待优化区域和/或对待优化区域进行优化的优化方向。
在又一个可选的实施例中,如图7所示,该后端处理装置还可以包括:
需求分析模块605,用于在读取模块601读取前端逻辑综合装置生成的综合后网表之后,对读取到的综合后网表执行目标操作,得到与目标操作对应的操作结果,根据与目标操作对应的操作结果确定后端处理装置的后端需求,并触发判断模块602执行上述的判断读取模块601读取到的综合后网表中的技术映射结果与预先确定出的后端需求是否匹配。
其中,目标操作包括布局布线操作、时序分析操作、功耗分析操作、局部面积分析操作以及关键路径分析操作中的至少一种。
在又一个可选的实施例中,待优化区域包括面积导向的映射区域、层级导向的映射区域、功耗导向的映射区域以及关键路径导向的映射区域中的一种或多种的组合。
在又一个可选的实施例中,如图7所示,该后端处理装置还可以包括:
对比模块606,用于在映射优化生成模块603生成技术映射导向信息之后,对比当前生成的技术映射导向信息与在当前生成技术映射导向信息之前最新生成的技术映射导向信息是否相同,得到对比结果;当对比结果为是时,触发需求分析模块605执行上述的对读取到的综合后网表执行目标操作;当对比结果为否时,触发反馈模块604执行上述的将技术映射导向信息反馈至前端逻辑综合装置。
在又一个可选的实施例中,如图7所示,该后端处理装置还包括:
确定模块607,用于在读取模块601读取前端逻辑综合装置生成的综合后网表之后,确定其与前端逻辑综合装置的累计交互参数。
判断模块602,还用于判断累计交互参数是否大于等于预先确定出的交互参数阈值;当判断出累计交互参数不大于等于交互参数阈值时,触发执行上述的判断读取模块601读取到的综合后网表中的技术映射结果与预先确定出的后端需求是否匹配。
可选的,累计交互参数包括后端处理装置与前端逻辑综合装置的累计交互时长和/或后端处理装置与前端逻辑综合装置的累计交互次数。
可见,实施图7所描述的后端处理装置能够基于后端需求的技术映射控制方法能够以后端需求来引导前端逻辑综合中技术映射的目标和方向,为技术映射提供了精确的导向信息,有利于提高技术映射的结果与后端需求的匹配度,进一步提高了前端逻辑综合的质量。此外,通过设置交互参数阈值的方式在一定程度上可以限制后端处理装置与前端逻辑综合装置的优化交互次数,减少无限优化的情况发生,进而减少对逻辑综合资源的不必要浪费。此外,还能够减少引导前端逻辑综合装置重复执行相同的技术映射优化操作的情况发生,提高了向前端逻辑综合装置反馈的技术映射导向信息的可靠性与准确性,也在一定程度上提高了技术映射的效率与准确率。
实施例九
请参阅图8,图8是本发明实施例公开的又一种后端处理装置的结构示意图。如图8所示,该后端处理装置可以包括:
与存储器耦合的处理器702;
处理器702调用存储器701中存储的可执行程序代码,执行本发明实施例一~实施例三以及实施例五中任一实施例公开的基于后端需求的技术映射控制方法中后端处理装置所执行的步骤。
实施例十
请参阅图9,图9是本发明实施例公开的一种基于后端需求的技术映射控制系统的结构示意图。如图9所示,该系统可以包括前端逻辑综合装置和后端处理装置,其中,前端逻辑综合装置为实施例六中所描述的前端逻辑综合装置,且后端处理装置为实施例八中所描述的后端处理装置,本发明实施例不再赘述。
实施例十一
本发明实施例公开了一种计算机存储介质,计算机存储介质存储有计算机指令,计算机指令被调用时,用于执行本发明实施例一~实施例四中任意一个实施例所公开的基于后端需求的映射控制方法中前端逻辑综合装置所执行的步骤。
实施例十二
本发明实施例公开了一种计算机存储介质,计算机存储介质存储有计算机指令,计算机指令被调用时,用于执行本发明实施例一~实施例三以及实施例五中所公开的基于后端需求的映射控制方法中后端处理装置所执行的步骤。
以上所描述的装置实施例仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施例的具体描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(ErasableProgrammable Read Only Memory,EPROM)、一次可编程只读存储器(One-timeProgrammable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
最后应说明的是:本发明实施例公开的一种基于后端需求的技术映射控制方法及装置、系统所揭露的仅为本发明较佳实施例而已,仅用于说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述各项实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或替换,并不使相应的技术方案的本质脱离本发明各项实施例技术方案的精神和范围。

Claims (11)

1.一种基于后端需求的技术映射控制方法,其特征在于,所述方法包括:
后端处理装置读取前端逻辑综合装置生成的综合后网表,并判断所述综合后网表中的技术映射结果与预先确定出的后端需求是否匹配;当判断出所述综合后网表中的技术映射结果与所述后端需求不匹配时,生成技术映射导向信息,并将所述技术映射导向信息反馈至所述前端逻辑综合装置;
当接收到所述后端处理装置反馈的所述技术映射导向信息时,所述前端逻辑综合装置根据所述技术映射导向信息对用户设计中的逻辑资源执行局部映射操作得到新的技术映射结果,并将所述新的技术映射结果更新至所述综合后网表中以生成新的综合后网表;
其中,所述前端逻辑综合装置生成的所述综合后网表用于提供给所述后端处理装置。
2.根据权利要求1所述的基于后端需求的技术映射控制方法,其特征在于,所述后端处理装置读取前端逻辑综合装置生成的综合后网表,包括:
所述后端处理装置读取前端逻辑综合装置初始生成的综合后网表;或者,
所述后端处理装置读取前端逻辑综合装置当前生成的综合后网表;
其中,所述前端逻辑综合装置当前生成的综合后网表是由所述前端逻辑综合装置将在当前时刻之前最后一次对所述用户设计中的逻辑资源执行局部映射操作得到的技术映射结果更新至在所述当前时刻之前最后一次生成的综合后网表中得到的,所述当前时刻为所述前端逻辑综合装置当前生成综合后网表的时刻。
3.根据权利要求1或2所述的基于后端需求的技术映射控制方法,其特征在于,所述技术映射导向信息包括所述用户设计中逻辑资源的待优化区域和/或对所述待优化区域进行优化的优化方向;
其中,当所述技术映射导向信息包括所述待优化区域和所述优化方向时,所述前端逻辑综合装置根据所述技术映射导向信息对用户设计中的逻辑资源执行局部映射操作得到新的技术映射结果,包括:
所述前端逻辑综合装置选择与所述优化方向相匹配的目标技术映射算法,并通过所述目标技术映射算法对所述待优化区域对应的待优化内容执行局部映射操作得到新的技术映射结果。
4.根据权利要求3所述的基于后端需求的技术映射控制方法,其特征在于,所述后端处理装置读取前端逻辑综合装置生成的综合后网表之后,所述方法还包括:
所述后端处理装置对读取到的所述综合后网表执行目标操作,得到与所述目标操作对应的操作结果,根据与所述目标操作对应的操作结果确定所述后端处理装置的后端需求,并触发执行所述的判断所述综合后网表中的技术映射结果与预先确定出的后端需求是否匹配的步骤;
其中,所述目标操作包括布局布线操作、时序分析操作、功耗分析操作、局部面积分析操作以及关键路径分析操作中的至少一种。
5.根据权利要求3所述的基于后端需求的技术映射控制方法,其特征在于,所述待优化区域包括面积导向的映射区域、层级导向的映射区域、功耗导向的映射区域以及关键路径导向的映射区域中的一种或多种的组合。
6.根据权利要求4所述的基于后端需求的技术映射控制方法,其特征在于,所述后端处理装置生成技术映射导向信息之后,所述方法还包括:
所述后端处理装置对比当前生成的所述技术映射导向信息与在当前生成所述技术映射导向信息之前最新生成的技术映射导向信息是否相同,得到对比结果;
当所述对比结果为是时,所述后端处理装置执行所述的对读取到的所述综合后网表执行目标操作的步骤;
当所述对比结果为否时,所述后端处理装置执行所述的将所述技术映射导向信息反馈至所述前端逻辑综合装置的步骤。
7.根据权利要求1、2、4、5或6所述的基于后端需求的技术映射控制方法,其特征在于,所述后端处理装置读取前端逻辑综合装置生成的综合后网表之后,所述方法还包括:
所述后端处理装置确定其与所述前端逻辑综合装置的累计交互参数,并判断所述累计交互参数是否大于等于预先确定出的交互参数阈值;
当判断出所述累计交互参数不大于等于所述交互参数阈值时,所述后端处理装置执行所述的判断所述综合后网表中的技术映射结果与预先确定出的后端需求是否匹配的步骤。
8.根据权利要求7所述的基于后端需求的技术映射控制方法,其特征在于,所述累计交互参数包括所述后端处理装置与所述前端逻辑综合装置的累计交互时长和/或所述后端处理装置与所述前端逻辑综合装置的累计交互次数。
9.一种前端逻辑综合装置,其特征在于,所述前端逻辑综合装置包括:
生成模块,用于生成综合后网表;
检测模块,用于检测是否接收到后端处理装置针对所述生成模块生成的所述综合后网表反馈的技术映射导向信息;
所述生成模块,还用于当所述检测模块检测到所述后端处理装置针对所述生成模块生成的所述综合后网表反馈的所述技术映射导向信息时,根据所述技术映射导向信息对用户设计中的逻辑资源执行局部映射操作得到新的技术映射结果,并将所述新的技术映射结果更新至所述综合后网表中以生成新的综合后网表;
其中,所述生成模块生成的所述综合后网表用于提供给所述后端处理装置,以使所述后端处理装置判断所述综合后网表中的技术映射结果与预先确定出的后端需求是否匹配,且所述技术映射导向信息是由所述后端处理装置判断出所述综合后网表中的技术映射结果与所述后端需求不匹配时生成的。
10.一种后端处理装置,其特征在于,所述后端处理装置包括:
读取模块,用于读取前端逻辑综合装置生成的综合后网表;
判断模块,用于判断所述读取模块读取到的所述综合后网表中的技术映射结果与预先确定出的后端需求是否匹配;
映射优化生成模块,用于当所述判断模块判断出所述综合后网表中的技术映射结果与所述后端需求不匹配时,生成技术映射导向信息;
反馈模块,用于将所述技术映射导向信息反馈至所述前端逻辑综合装置,以触发所述前端逻辑综合装置根据所述技术映射导向信息对用户设计中的逻辑资源执行局部映射操作得到新的技术映射结果以及将所述新的技术映射结果更新至所述综合后网表中以生成新的综合后网表并提供给所述后端处理装置。
11.一种基于后端需求的技术映射控制系统,其特征在于,所述系统包括如权利要求9所述的前端逻辑综合装置以及如权利要求10所述的后端处理装置。
CN201911105826.3A 2019-11-13 2019-11-13 基于后端需求的技术映射控制方法及装置、系统 Active CN111144056B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911105826.3A CN111144056B (zh) 2019-11-13 2019-11-13 基于后端需求的技术映射控制方法及装置、系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911105826.3A CN111144056B (zh) 2019-11-13 2019-11-13 基于后端需求的技术映射控制方法及装置、系统

Publications (2)

Publication Number Publication Date
CN111144056A CN111144056A (zh) 2020-05-12
CN111144056B true CN111144056B (zh) 2022-04-01

Family

ID=70517072

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911105826.3A Active CN111144056B (zh) 2019-11-13 2019-11-13 基于后端需求的技术映射控制方法及装置、系统

Country Status (1)

Country Link
CN (1) CN111144056B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112541310B (zh) * 2020-12-18 2021-10-29 广东高云半导体科技股份有限公司 逻辑综合控制方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102789512B (zh) * 2011-05-20 2015-02-04 中国科学院微电子研究所 multi-FPGA系统的EDA工具设计方法和装置
CN105718698B (zh) * 2016-02-19 2019-08-02 深圳市紫光同创电子有限公司 一种时序网表管理方法及装置
US10409994B1 (en) * 2017-03-01 2019-09-10 National Technology & Engineering Solutions Of Sandia, Llc FPGA/ASIC framework and method for requirements-based trust assessment

Also Published As

Publication number Publication date
CN111144056A (zh) 2020-05-12

Similar Documents

Publication Publication Date Title
CN110457868B (zh) Fpga逻辑综合的优化方法及装置、系统
CN111142874B (zh) Fpga逻辑综合中逻辑平衡控制方法及装置、系统
CN109634837B (zh) 自动化测试方法、装置、设备及存储介质
CN101310255A (zh) 硬件辅助的装置配置检测
CN111144056B (zh) 基于后端需求的技术映射控制方法及装置、系统
CN111177990B (zh) Fpga逻辑综合中逻辑优化的实现方法及装置、系统
CN111177989B (zh) 以布线结果为导向的布局布线控制方法及装置、系统
CN111177991B (zh) Fpga逻辑综合中实现扇出优化的方法及装置、系统
CN111143274B (zh) 以逻辑综合结果为导向的层级结构优化方法及装置、系统
CN111027267B (zh) Fpga逻辑综合中加法器优化的实现方法及装置、系统
CN112559482A (zh) 一种基于分布式的二进制数据分类处理方法和系统
US11334366B2 (en) Method and device for recognizing apparatus and computer readable storage medium and program
CN111177997A (zh) 基于时钟频率的布局布线控制方法及装置、系统
CN111222295B (zh) 基于布线资源的布局布线控制方法及装置、系统
CN111582502B (zh) 一种样本迁移学习方法和装置
CN113709099B (zh) 混合云防火墙规则下发方法、装置、设备及存储介质
CN111198523A (zh) 基于结果导向的逻辑推理控制方法及装置、系统
CN109599112B (zh) 一种语音控制方法、装置、存储介质及空调
CN112835641A (zh) 应用程序运行功能的配置方法和装置
CN110532577B (zh) 数字逻辑电路编译方法及装置
CN110838284A (zh) 一种语音识别结果的处理方法、装置和计算机设备
CN117973282B (zh) 芯片时序风险的预测方法、电子设备和介质
CN113792019B (zh) 一种分析方法、电子设备及计算机存储介质
CN111030874B (zh) 业务编排方法、设备、存储介质及装置
CN110021342A (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