导航:X武艺最新专利企图;盘算推算;计数建设的创作及其行使本领
2.集成电路日常在多程序过程中被计划和实验,该多环节通过涉及多个专业工程师对集成电路方针增添各种差异的策画和验证责任。这些工程师平淡使用百般里面或专有(譬喻,公司特定)集成电途布置器械链来打点操纵贸易电子谋略主动化(eda)工具的集成电途宗旨事务经过的区别局限。
3.当勾结附图阅读时,从以下详细样子能够最好地分析本居然。供给强调的是,恪守旧例,附图的各样性情并非按比例绘制。相反,为了清楚起见,百般性情的尺寸被任意增加或压缩。
9.图6是用于基于预备参数数据构造天才用于集成电路的存放器传输级数据布局的原委的示例的历程图。
10.图7是用于基于寄放器传输级数据构造生成用于集成电途的物理部署数据布局的始末的示例的进程图。
11.图8是用于基于寄放器传输级数据布局天生用于集成电路的文档的始末的示例的过程图。
12.图9是用于天生多租户物理安插典型以激动集成电路的创造的通过的示例的过程图。
14.图11是为了真切web接口以促进集成电路的模板安放的抉择而天才的示例暴露地区的视图。
15.图12是为了呈现web接口以鼓吹集成电路的定制部署而天分的示例真切地区的视图。
16.图13是为了明白web接口以鼓动对集成电途的定制方案的会见而天生的示例流露地区的视图。
18.图15是用于基于寄存器传输级数据构造行使动态安插经过天禀用于集成电途的物理策划数据结构的通过的示例的流程图。
19.图16是用于改良打算过程以鼓舞集成电途的策画的系统的示例的框图。
21.竟然了用于集成电途筹划的自动天禀和实验的体系和体例。这些系统需要了下述方法:应承对管束器或片上格局(soc)部署具有构念的单个工程师遵循少量预备参数值(或浅薄地叙,旋钮)轻巧地指定我们的芯片恳求,况且该编制使良多商用电子企图自动化(eda)工具的驾御自愿化,以用于处分器或soc的规划和验证,并且是以单个工程师在几小时(或几分钟)内即可结束,而传统上需要由熟习特定eda用具把持的大批专业工程师团队花消长得多的时期。
22.因而,该体制和体例可能经管以下具有唆使性的身手问题:(a)允诺由说明高档仰求的单个非行家预备收拾器和soc,(b)简单地情愿经历天赋潜在的数千种代替表白来对安顿空间举办脚本化探索,并对已竣事的计划举行模仿或仿真,(c)自动他日自多个第三方的常识产权(ip)核(或块)与办理器设计集成到soc中,以及(d)首肯创建多房客或托管的拘束器和soc做事,以临盆定制但预先验证的管制器和soc。在(d)的景遇下,办事可能平素施行到将创造的处置器或soc交付给用户或云情景,譬喻,第3方接受拘束器并将其安设到用户能够范围其独霸的云中。
23.庇护和庇护多个推广例的一个身分是开发和使用多个老例和模板以准许客户提供的参数计划来自给定做事的递送资源(拜访下面对服务的细致商酌)。旧例(比方,觉得main是c依次的入口点)与办事特定的模板或参数化所有用于定制而后移用贸易(以及开源)eda器材。譬喻,chisel是一种用于硬件构建的开源器械,其应用scala依次天才存放器传输语言,诸如verilog。上面和本文计议的用户定义的布置参数能够被模板化到创立中,或者行为参数需要,比方用于risc
v办理器的通用chisel依次,以生成用户特定的变体。其输出可以用作进一步任事等的策画参数。症结在于,这些常规和模板/参数化的技能格式供给了极大的灵便性,以体制地自动化繁复的eda器材的器械链利用以天才经历证乃至可能仿真/效法的办理器或soc宗旨。
24.可能需要web接口和/或脚本运用编程接口(api)以用于选择与一个或多个模板集成电途计划相关联的一组安排参数值。能够运用通例对模板计划实行编码以鼓吹模块化方案。一组策动参数值以筹划参数数据组织被编码,并被通报到主动化体系,以用于运用所选的安插参数值天赋和测验集成电途策动。比方,策动参数数据构造的设计参数可能搜集是否保持特权模式、是否保护乘数增加、是否支持浮点施行、在片上存储器中是否庇护纠错代码、指令缓存的大小、指令缓存的干系性、片上保全器中的数据子方式的大小、是否征采端口(好比,前端端口、编制端口、外围端口或保全器端口)、保全器端口通路的计数、端口通信和议遴选、总线宽度、物理存储器爱戴单元的计数、是否支撑jtag调试、硬件断点的计数、是否撑持指令跟踪、是否维持调试直接保存器会见、本地阻塞的计数、是否支持平台级滞碍限制器、停顿优先级的计数、整体窒碍的计数、是否支撑分支预测、分支目标缓冲器条款的计数、分支汗青表条款的计数和/或制作颠末的挑选。
25.例如,从web接口发出的单个役使能够触发寄放器传输级数据、软件建设东西包、文档和用于集成电路的物理策划文件(好比,gdsii文件)的自动天分,该物理设计文件蕴藏
选定的谋略参数值。单个差遣还能够触发已天资的集成电路准备的尝试决议的天资和扩张。产生的设计数据和对应的考试事实可以行动比方一组文件、档案或贮藏库(例如,github贮藏库)提供给用户。该格式还可能资历实践兴办集成电途或将物理安放转发给外部铸造厂以用于创修和跟踪所缔造的芯片的创作、考试、运输和/或部署的进度而行使所得的方案来鼓动集成电道(例如,料理器或片上格式(soc))的制造。该体系可以变更芯片的设计形式,以甘心非专业人士体验拔取相对纯朴的方案参数来定制芯片,这能够杀青对现实rtl或物理芯片的速速安插空间探索。譬喻,可能使用diplomacy、chisel和firrtl的凑合从一组高档树立设定修造企图优良的芯片。经验应用单一叙话(好比,scala)来局部计算流水线中的多个责任,可以有效地实行式样。嵌入函数式编程发言可以提供更大的麻利性而且可以发展策划者/用户的临盆力。
26.在少许推行形式中,集成电途方案的现场可编程门阵列(fpga)和/或其全部人仿真模型被天分并用于考试。fpga模型能够加载到用于验证实验的基于云的fpga上。该系统可以结束ip核的简单设备。能够在该经由时代提供反馈(比如,集成电道的功能、功率和面积揣度),并让用户理会订购的芯片在那里(例如,他的芯片在创设经由或出货跟踪中的位置)。体制能够供应对付策动的价值准备,即,获取所得芯片的成本是几许。比如,能够供给nre(非频仍性工程资本)和每单位成本两者的预备。编制可能行使基于模板的芯片安放(比方,从需要商或第三方供应的ip/筑设同化模板着手)。这些芯片或ip核模板可因而开源的和/或每个用户偏好的独有的,这将利用特定的nre进行建设。
27.一些推广形式运用版本局限式样(譬喻,git/github)来保护模板规划以及生存和/或共享定制的集成电途筹划和合系数据。版本范围体制能够供应源代码处分性能并杀青部署的进一步定制。版本控降服务可能针对想要进一步定制芯片的高档用户。例如,在基于一组计算参数值自动天赋初始设计之后,体例的限度器可以为它们需要存在库(譬喻,git),其中,根柢构修块连线在总计。用户方今可能增长附加的ip核或定制的源代码。例如,用户可以合并我的定制ip核或改动源代码。好比,用户可以经验将特定文件提交到生存库来增添测试决定或文档。
28.例如,上面筹议的现有项目可能遵照通例来发挥。于是,比方,用户能够使用精准的旧例向其定制ip核目录中的文档补充章节。在一些实行体例中,能够供应“ip生存”以慰勉安插的共享,其中屈服老例的优异方针的ip核能够被拉入另一个企图,并且全体上述经过都以主动化体例在其上事宜。好比,这些可能是周备的执行格式,恐怕不外一经流片的fpga树范。ip保全可能实现将第3方ip核以编程体例铺排到方针中。好比,听从适用的模块化谋划惯例的git中的目录可能轻巧地从体系的web操纵中减少/拣选。这种集成来自多方的ip核的能力执掌了一个具有离间性的身手标题,起因来自两个差别供给商的核平凡可以针对差异的eda盘算和验证工具运用/流程举行预先策划,比方,一个核可以需要操纵eda东西举行与另一个核的附加差别收拾。
29.在第一方面,本明白书中样子的主旨可能体目前征采以下的体系中:web操纵服务器,该web运用管事器被成立成基于所接受的输入天才策画参数数据布局,个中,宗旨参数数据构造征求集成电路打算的方案参数的值,而且该web应用任职器被设备成了解回声集成电路的打算参数的值改观的模板策动的自愿创新框图;寄放器传输级任职模块,该存放器传输级任事模块被修树成基于谋划参数数据结构天资集成电途的寄存器传输级数据结
构;软件筑造器械包办事模块,该软件制造工具包任事模块被创立成基于寄存器传输级数据结构天禀用于集成电途的软件建造器械包;物理宗旨服务模块,该物理计划工作模块被配置成基于存放器传输级数据组织禀赋用于集成电路的物理计算数据组织;验证做事模块,该验证处事模块被成立成基于准备参数数据结构和验收法则天生用于集成电途的测验决议;以及控制器,该控制器被树立成接见规划参数数据机闭,利用部署参数数据布局调用存放器传输级管事模块以获得寄放器传输级数据组织,利用寄放器传输级数据挪用软件修造东西包处事模块机关以取得软件修修器材包,使用寄放器传输级数据构造挪用物理设计工作模块以得到物理计划数据结构,挪用验证任职模块以获得测试决议,以及基于测试决定、寄存器传输级数据布局、软件制造东西包和物理打算数据组织移用用于集成电路的考试以取得一组测验到底。
30.在第二方面,本阐明书中描摹的核心能够体今朝方式中,该方法征采:访问安插参数数据组织,此中,谋略参数数据布局征采集成电途准备的安排参数值;回声于标识铺排参数数据构造的命令,基于布置参数数据组织禀赋用于集成电途的寄放器传输级数据机关;应声于标记安排参数数据布局的命令,基于寄放器传输级数据机关生成用于集成电途的软件开发用具包;反响于标识安置参数数据机关的使令,基于存放器传输级数据布局天赋用于集成电途的物理规划数据组织;应声于暗记计划参数数据机合的差遣,基于方针参数数据机合和验收绳尺生成用于集成电途的试验决策;反应于信号设计参数数据构造的驱使,基于测验决策、寄放器传输级数据构造、软件修筑工具包和物理谋划数据组织调用用于集成电途的测试以取得一组实验到底;以及传输、存储或暴露基于存放器传输级数据布局、软件建筑用具包、物理安放数据组织和实验真相的策动数据结构。
31.在第三方面,本途明书中容貌的核心能够体此刻收罗汇集接口、保管器和处理器的格局中,此中,存在器征求指令,该指令可由管理器扩充以使得形式:接见部署参数数据机合,此中,预备参数数据结构搜罗集成电途谋略的安顿参数值;回声于标帜规划参数数据机关的役使,基于准备参数数据机关天生用于集成电途的寄放器传输级数据构造;反响于标志准备参数数据组织的驱策,基于寄放器传输级数据组织天生用于集成电路的软件兴办工具包;反响于记号设计参数数据结构的命令,基于寄存器传输级数据布局禀赋用于集成电途的物理方案数据组织;响应于标识安置参数数据机关的使令,基于预备参数数据组织和验收准则天分用于集成电道的考试决策;反响于信号安置参数数据结构的使令,基于试验决议、寄存器传输级数据结构、软件修筑东西包和物理布置数据机关调用用于集成电途的试验以得到一组试验到底;以及利用网络接口传输基于寄存器传输级数据机合、软件修立器材包、物理打算数据组织和实验结果传输部署数据机合。
32.在第四方面,本解析书中形色的重心能够体当今体例中,该格式搜求:接受宗旨参数文件,个中,安排参数文件收集集成电道宗旨的策画参数的值;基于安置参数文件主动天分用于集成电途的寄放器传输级文件、软件筑立工具包和物理策画文件;以及基于寄放器传输级文件、软件筑造器材包和物理安顿文件自愿移用用于集成电路的测试以获得一组实验事实。
33.在第五方面,本剖判书中描摹的中央可能体现在方式中,该格式搜求:web应用任事器,该web应用办事器被筑设成基于所接受的输入生成方案参数数据结构,其中,铺排参数数据机关网罗集成电路安排的企图参数的值,被建设成大白回声集成电途的部署参数的
值变化的模板企图的自动维新框图,并被树立成发出构筑集成电道企图的鞭策;以及控制器,该限定器被配置成响应于构筑集成电路方针的差遣而接见安插参数数据结构,利用布置参数数据组织挪用存放器传输级处事模块以取得寄存器传输级数据构造,操纵寄放器传输级数据机关挪用软件修设器材包任事模块以获得软件修立用具包,利用存放器传输级数据布局挪用物理谋略办事模块以获得物理规划数据布局,移用验证任职模块以获得考试计划,况且基于试验决议、存放器传输级数据布局、软件修筑器械包和物理策划数据布局调用用于集成电路的试验以得到一组测试到底。
34.博鱼体育在第六方面,本解析书中描摹的重心能够体今朝体例中,该办法包括:会见方针进程设立数据机关,个中,准备经过设备数据构造以用具局部发言编码;基于准备进程成立数据构造,从一组流程模块被选择多个经过模块,个中,该组流程模块中的每个经过模块以东西局部语言向呼应的电子安排主动化工具需要操纵编程接口;基于设计过程设置数据组织,将计划经过天禀为包括所选经过模块行动顶点的有向无环图;基于一个或多个输入集成电途谋划数据构造,应用企图流程来限度所选流程模块的相应电子安排自愿化工具,而生成输出集成电路筹划数据构造;以及传输、留存或分明输出的集成电途安排数据机合。
35.在第七方面,本阐明书中样子的中央可以体现在收集搜集接口、保留器和办理器的式样中,个中,存储器搜集指令,该指令可由管理器扩张以使得编制:接见安置进程设备数据机关,此中,打算进程成立数据布局以器材部分说话编码;基于方案流程设备数据构造,从一组过程模块膺选择多个过程模块,此中,该组进程模块中的每个历程模块以器械节制语言向反应的电子方针自动化东西供给利用编程接口;基于方针经过筑树数据结构,将安放历程天才为搜求所选经过模块行为顶点的有向无环图;以及基于一个或多个输入集成电道准备数据构造,行使设计历程来限制所选过程模块的反应电子计划主动化用具,而天才输出集成电道安顿数据结构。
36.在第八方面,本阐述书中容貌的主题可能体当前收罗指令的非目今性筹算机可读保全介质中,该指令在由统治器扩张时鼓励以下驾驭的引申,该掌握搜求:访问方案流程配置数据组织,其中,安置经过设立数据布局以用具限制发言编码;基于计划进程修树数据机闭,从一组进程模块中选择多个历程模块,其中,该组进程模块中的每个过程模块以东西部分途话向反应的电子准备自愿化工具需要操纵编程接口;基于谋略进程扶植数据构造,将筹划流程天生为征采所选历程模块行动顶点的有向无环图;基于一个或多个输入集成电路布置数据构造,使用安排流程来范围所选经过模块的反响电子谋略自动化用具,而生成输出集成电途方针数据布局;以及传输、存储或显现输出的集成电路铺排数据结构。
37.图1是用于怂恿集成电路的谋划的格式100的示例的框图。体例100包括集成电路设计做事根柢办法110,该集成电路方针劳动根本程序拘束原委汇集106上的通信从web客户端102和脚本api客户端104采纳的请求。比如,集成电途方案服务基础方法110可以被告竣为在一个或多个联网盘算修设上运行的软件。譬喻,集成电途设计管事根本环节110可以在图3的体例300上杀青。集成电路计划办事根本设施110包罗:web行使管事器112;脚本api处事器114;以及限制器120,该控制器行使保留在打算参数数据布局122中的基于安顿参数值的任事(130、140、150、160、170和180)的凑集来肯定集成电路准备。好比,形式100能够完结图4的始末400。好比,格式100可能完成图4的原委400。比如,式样100可能完工图5的原委500。例如,汇聚106可因而局域网或宽阵列网络(好比,因特网)。
38.体制100收集web客户端102,其能够用于与集成电途计算就事基础方法110交互并控制集成电道规划供职基础步调。比如,web客户端102可能搜求运行准备设备(比方,台式揣度机、条记本电脑、平板电脑或智好手机)的web玩赏软件。web客户端102可能大白由web利用做事器112天才和从web操纵管事器接受的web接口。好比,web接口可能网罗使用户能够为集成电路安置遴选打算参数值的规划旋钮。
39.式样100包括能够用于与集成电途盘算任职根基步骤110交互并局限集成电途铺排劳动根本举措的脚本api客户端104。比方,脚本api客户端104可能征求运行估量制作(台式揣度机、笔记本电脑、死板电脑或智熟行机)的脚本(例如,python脚本、java脚本或ruby脚本),该筹算制造进程网络通信(例如,应用传输限定订定合同(tcp)会线通信。脚本api客户端104可能天生对节制器120的api调用,并运用api挪用来拔取用于一个或多个集成电路计划的准备参数值,这些策画参数值以谋略参数数据布局122(比如,设计参数文件)被编码,并且命令节制器120基于筹划参数数据构造122天生和测验一个或多个集成电途盘算。在少少实施格式中,脚本api客户端104的脚本可能用于控制盘算空间上的迭代以测试规划参数值的大批候选布列。
40.集成电途谋略工作本原方法110搜求天资web接口以怂恿集成电路盘算任事根基步调110的限度的web运用供职器112。web接口能够搜集筑设旋钮(比如,图标或字段),该树立旋钮能够选择用于集成电途规划的安置参数值。web运用工作器112能够被筑设成基于所接受的输入(譬喻,由用户与web客户端102处的配置旋钮交互引起)天赋设计参数数据结构122(例如,谋略参数文件或设计参数数据库)。宗旨参数数据组织122可以征求集成电途计算的安插参数值。准备参数数据布局122可能搜罗对模板布置(好比,用于ip核的模板筹划)的引用,其可以基于计算参数的值实行筑正。比如,布置参数数据组织122能够征求javascript主见象征(json)文件,此中具有利用web接口的旋钮采取的宗旨参数的值。web利用管事器112能够被建树成显示应声集成电道(例如,ip核或soc)的策划参数值的变化的模板预备的自愿更始框图。比方,web操纵任职器112可能天生图11的了解地区1110。好比,web行使劳动器112可以天禀图12的明确地域1210。比方,web应用做事器112可以先天图13的透露地区1310。在一些履行办法中,web利用劳动器112被完结为在与局限器120相通的揣测创造上运行的软件(比如,python或django前端器材)。在一些推广方式中,web利用管事器112被完工为在与限度器120折柳的估量筑立上运行的软件。在一些实施形式中,web利用劳动器112过程api调用与范围器120通信而且甚至能够颠末脚本api处事器114将api调用途由到限度器。
41.由web使用处事器112天赋的web接口可能搜求用于拔取多种规划参数值的旋钮。譬喻,旋钮可以用于选拔二元安顿参数(比如,带有复选框或径向按钮图对象收罗乘数块或不征采乘数块)。例如,旋钮可以用于从肢解的规划参数选项列表中进行选择(例如,应用下拉菜单采用创建经由)。比如,旋钮可以用于抉择在一定周围内转嫁的值(量化)(比如,可能经过在文本字段中输入值或始末挪动滑块图标来颐养停滞数量或时钟频率)。web操纵做事器112可以通过基于使用web接口的另一个旋钮做出的采选来改造或禁用旋钮来反映不同安排参数之间的倚赖性。因而,安放参数值的抉择可以办理或局限其所有人预备参数的遴选。比方,当行使与多个存在器端口干系的旋钮来拣选零个保全器端口以包含在集成电途中时,能够禁用(比方,变灰)与数据缓存安放参数合连的旋钮。
42.由web使用做事器112天生的web接口可能网罗主动改变框图,该自愿革新框图回声了策划参数值的而今遴选,因由这些值是操纵web接口的旋钮变革的。主动变革框图可以供给正在天赋的布置参数数据构造122的样子的视觉显现。
43.由web利用工作器112天禀的web接口可以搜集基于运用web接口的旋钮拣选的盘算参数的方今值的布置的功率、性能和/或面积计划。在一些推广形式中,功率、功效和/或面积估计打算可能回响于运用web接口的旋钮做出的转变而实时维新。好比,web利用做事器112能够接见用作功率、成效和面积(ppa)的模型的设计空间的样本表,而且给定旋钮设定,这些数字可以从模型入网算(例如,使用插值)并随即了解。在少少实施格式中,由web行使劳动器112天资的web接口可能收集功率、功用和/或面积阴谋,其基于在基于运用集成电路策画办事基本步骤110已天赋和尝试所选策划参数值的安插之后可用的统统天分的安顿来断定。
44.由web行使服务器112天赋的web接口可以搜集图标,该图标可能用于向部分器120发出驱使以基于以部署参数数据构造编码的一组铺排参数值来构建集成电道铺排。由web应用处事器112天才的web接口可以在集成电途方针被天才、测试和/或发明时提供对待集成电路谋略的形式改正。
45.集成电路谋略管事基本步调110搜求脚本api管事器114,其被配置成接收api移用并将api挪用传送到限制器120。好比,脚本api工作器114可以鼓舞范围器120与脚本api客户端104之间的搜集通信(例如,操纵tcp)。脚本api管事器114可能用于基于进程应用编程接口采纳的输入天禀计算参数数据机关122(比方,方案参数文件或安排参数数据库)。比方,限度器120的api可因而代表性状态传输(rest)api。运用脚本api可以使得用户简洁测试各样谋略参数值选取,以有效地榨取打算空间。譬喻,用户可以编写脚本,以使用小参数治疗以编程格式试验云中的数千个策划。可能启用自愿回归考试。用户能够编写调用api的定制限定器。
46.集成电路安放任职基础设施110包罗部分器120,其被设立成基于预备参数数据构造122生成集成电道部署并试验该规划。例如,节制器120可能被设置成访问安置参数数据构造122,行使安置参数数据布局122挪用存放器传输级服务模块130以获得寄放器传输级数据构造132,行使寄放器传输级数据机关132挪用软件修设工具包就事模块140以取得软件建筑器材包142,操纵寄存器传输级数据构造132挪用物理铺排任事模块160以得到物理计划数据机关162,调用验证工作模块180以取得考试决议182,以及基于实验决议182、寄放器传输级数据机关132、软件修筑用具包142和物理计划数据结构162挪用集成电途的尝试以得到一组实验真相190。局限器120可能搜罗操纵编程接口,该使用编程接口使得脚本(好比,通过脚本api就事器114)可能管理多个宗旨参数数据组织。比如,限定器120能够回声于由web利用供职器112或脚本api工作器114发出的构建集成电途安排的胀励扩张作为以先天集成电途计算。好比,局限器120能够被推行为在图3的体例300上运行的软件。
47.例如,限度器120可以被竣工为云管事。节制器120能够基于打算参数数据构造(譬喻,铺排参数文件)中的安顿参数来完成用于集成电路设计的有序构筑流水线。譬喻,集成电途可因而ip核。好比,集成电途可因而片上体制。局限器120能够将预先筑设的语义用于从策划构筑流水线中的先前阶段的输出中清除的输入和做事。控制器120可以将盘算参数数据布局(譬喻,json文件)举动来自web使用工作器112或脚本api工作器114的输入并输出
布置数据构造(好比,集成电途安置的策动文件和/或测试终于的缩短存档),其包括在有序设计流水线)的输出。譬喻,由限定器120完毕的谋略流水线可以网罗四个阶段。在第一阶段,可能调用存放器传输级办事模块130以基于设计参数数据构造122天分存放器传输级数据组织132。在第二阶段,取决于存放器传输级数据布局的多个打算办事可以并行调用以生成呼应的安放闭联数据组织。比如,软件修筑器材包管事模块140、文档处事模块150、物理预备办事模块160和现场可编程门阵列安置就事可能并行或以任何递次调用以基于寄放器传输级数据构造132和预备参数数据机合122天分软件修筑东西包142、文档152、物理谋划数据机合(比方,gdsii文件)以及现场可编程门阵列仿线(比如,fpga仿真文件)。在第三阶段,可以移用验证任事模块180以天才试验决定182,并且可能经过挪用试验来推行测验决定182以得到用于集成电路计算的考试真相190。比如,布置验证考试可能取决于寄存器传输级数据机关132、软件兴办器材包142、物理预备数据机关162和/或现场可编程门阵列仿线。比如,移用的验证实验可以由节制器120、验证处事模块180和/或外部管事(好比,源委汇集106上的通信会见的基于云的fpga或仿真办事)直接扩大。在第四阶段,可能制造履历证的集成电路筹划。譬喻,可以阅历将基于物理企图数据组织(例如,gdsii文件)的策划数据布局发送(譬喻,始末搜集106上的通信)到集成电路创设举措的做事器来首倡创修。在极少实行式样中(图1中未示出),用于创设集成电路的集成电路创设制造可以包括在集成电途安插供职基础程序110中。
48.控制器120可以被修立成料理向web应用服务器112通知差池和/或反馈以用于中继到web客户端102。局限器120可以被设备成解决来自其你们房客/公司/用户的多个乞求。限定器120能够被筑设成办理云中的工作负荷。限度器120能够被修设成关照用户在那里取得方案流水线的终于(例如,发现的芯片和/或安排测试事实)。譬喻,限度器120能够被成立成在云景况中融关或照料启动fpga以用于举办测验并将登录字据供给回web运用做事器112以用于中继到web客户端102。
49.在一些履行形式中,局限器120可能将天资的集成电路打算举动保留库(譬喻github生存库)返回,此中基础构筑块连线在通盘。访问留存库的用户今朝可能推广附加的ip核或定制源代码。比如,先天的筹划数据结构能够被传送到或由范围器120留存到github储藏库,况且github贮藏库的接见笔据能够被递送给用户(比方,进程web接口)。
50.集成电途规划供职基础步伐110包罗存放器传输级供职模块130,其被筑设成基于宗旨参数数据机合122天资用于集成电路的存放器传输级数据组织132。比如,存放器传输级就事模块130可能落成为scala代码。例如,可能运用scala代码完成寄放器传输级任职模块130。好比,能够利用chisel来落成寄存器传输级任职模块130(在
dac2012.pdf可得到)。例如,可能运用firrtl(对于存放器传输级的敏捷中心映现)来已毕寄存器传输级处事模块130(在
izraelevitz.pdf可得到)。譬喻,可以操纵diplomacy来告竣寄放器传输级劳动模块130(在
carrv2017.pdf可取得)。比如,寄放器传输级处事模块130可能使安顿良好的芯片能够从应用diplomacy、chisel、firrtl的同化的高等树立设定集自动修筑。寄存器传输级服务模块
130可能将安顿参数数据构造122(比方,json文件)行动输入,并遵循计划参数数据构造的宗旨参数(比如,如运用由web使用办事器112生成的web接口的创立旋钮所指定的)输出用于芯片和/或所选核ip的存放器传输级数据机闭(譬喻,verilog文件)。存放器传输级数据结构可能征采鼎新的设立设定以驱动安排流水线的全班人日阶段。例如,改变的设备设定能够搜求核的一概保留器照射、实践端口、时钟准备、组织筹备音信和/或由存放器传输级别劳动模块130决定的其他配信任息。比如,能够推广图6的进程600以基于策动参数数据机合122天分用于集成电路的寄放器传输级数据构造132。
51.集成电路预备管事根柢程序110搜罗软件兴办东西包办事模块140,其被配置成基于存放器传输级数据布局132生成用于集成电途的软件修筑东西包142。比方,软件修设器械包工作模块140能够接见用于由盘算参数数据结构122标识的模板集成电道安排的现有器材链或软件修修器械包。现有用具链或软件修立器材包(譬喻,risc
v器械链/sdk)可能应用实用于可创立性的常规来设立。例如,现有器械链或软件修筑器材包可能被构造成与宗旨参数数据构造122的谋划参数相对应的子模块。软件兴办器材包任事模块140可以概括现有工具链或软件筑筑器械包以回声于宗旨参数数据结构122中的宗旨参数值。软件建设器材包管事模块140可能将存放器传输级数据结构132行为输入,并基于存放器传输级数据构造132和/或打算参数数据组织122天资软件建造用具包142。比如,软件建筑工具包142可能征求编译器、汇编器、报头文件、库、利诱加载顺次、内核驱动器和/或用于全性能sdk/推算状况的其他工具。譬喻,软件修筑工具包处事模块140可能被完工为在图3的体系300上运行的python脚本。在一些实行式样中,软件建立工具包工作模块140被设备成阐发寄存器传输级数据结构132、生成用于器械和构修的选项、回响于保留器映射天生报头文件、从现有器械链或软件开发用具包落选择相宜的示例、为主意模仿器(比如,qemu(快快仿效器))先天联系设置文件以便它们可以在另一拘束器(比如,x86)上运行您的特定筹划,以及为verilog仿制器和物理fpga板先天加载递次以举办闪存。生长的软件修筑器械包142能够在云中构建和试验(比如,在供应给客户之前),这可以在全部人明白这些事物在这种设备中起作用的情景下需要高价钱。得到的软件开发用具包142可能用限度器120登记以交付给用户(例如,经由web接口)。
52.集成电途设计任事根源设施110包括文档办事模块150,其被成立成基于寄放器传输级数据机关132天赋用于集成电途的文档152。譬喻,文档做事模块150可能行使prince(在可取得)。例如,文档任事模块150能够使用ascii doc(在可得到)。例如,文档供职模块150可能访问由谋略参数数据结构122记号的模板集成电途谋略的预加载模块化手册。模块化手册可能操纵闭用于可设置性的旧例来兴办。比如,能够将模块化手册组织成与方案参数数据机合122的筹划参数相对应的子模块。在一些推广格式中,模块化手册举动多个部件保存在用于模板的现有sdk的对应目录中。文档做事模块150能够归纳预加载的模块化手册以响应于盘算参数数据组织122中的安排参数值。比如,没有乘法器的risc
v芯片的文档152可以节减对待乘数指令的文档,或者相同地,能够天才具有向量扩充的risc
v芯片的文档152以网罗用于向量实行的符关文档。文档就事模块150可能将存放器传输级数据结构132作为输入,并基于寄放器传输级数据构造132和/或设计参数数据组织122天禀文档152(譬喻,以html和/或pdf样子)。文档做事模块150可以资历与rtl后输出总计事件来准确地记录存储器照射/端口。例如,文档任职模块
150可能操纵雷同于react框架的文档框架(比方,js html框架)。在少少实行形式中,文档块具有反响的python代码段,该代码段领受rtl输出筑树文件并将其认识为ascii doc所需的组块并挪用内容天赋。例如,文档任职模块150可以告竣图8的经历800。在一些推广形式中,文档152以html样子和pdf形式两者输出。比方,先天的文档152可能用节制器120立案以应许为用户打包(例如,以存档或其我们数据构造的技俩传送到web客户端102)。
53.集成电途盘算处事底子环节110征采物理筹划管事模块160,其被建树成基于存放器传输级数据构造132禀赋集成电路的物理铺排数据机闭162。好比,物理计划办事模块160可能行使专有或开源综合和组织布线器械(譬喻,synopsys、cadence和/或mentor器材)。比如,物理部署任职模块160能够应用synopsys用具,收罗预备编译器、ic编译器、primetime、formality和/或starextract。比如,物理安顿管事模块160可能完毕逻辑等效检验。好比,物理准备处事模块160可能应用静态时序理会器械。譬喻,物理安插任职模块160可以结束方针原则检查(drc)和/或布局对理由图(lvs)检验。好比,物理方针劳动模块160可以竣事部署的快疾迭代并且以更易于阐述的名堂向用户供应反馈(好比,功率、功效和面积盘算),这可能加添代价。好比,物理部署供职模块160能够用身手性较低的术语回报是否存在任何标题,并行化和均衡事务负载,并优越搜罗在物理安顿数据组织162中的用具的输出的紧张部件。物理方针就事模块160可以将寄存器传输级数据组织132(比方,verilog和/或结构计议指南)行为输入,并基于存放器传输级数据组织132和/或规划参数数据布局122禀赋物理方针数据构造162(比如,征求gdsii文件或oasis文件)。比方,物理打算管事模块160可以完毕图7的历程700。在一些推行体例中,物理企图处事模块160能够在云中收拾和编排物理安放用具链。好比,物理安插任职模块160可能束缚核准文件、管制策动资源(比如,cpu周期、保留器和/或磁盘使用)并平均用户支出意图与究竟疾度、打点从东西到用具的数据库搬动,并处理对第三方ip核的会见(好比,应用集成电途规划做事底子措施110的少少用户/佃农可能不足对可用于定制给其全班人用户/佃农的一些ip核的接见权限)。比方,用户可以经过由web行使服务器112天赋的web接口输入劳动和/或定价偏好。比方,物理打算处事模块160能够利用模板化策划,这可能允许明确的计划反复使用并且物理安顿供职模块160可以标帜那些拉拢并削减事情量。譬喻,物理策划办事模块160可以始末将器材问题转化为可料理的反馈并以可交付的花样向用户(比方,web客户端102的用户)供应器材的现实短处/输出,而供给更好或更紧凑的舛错/标题关照。在极少推行方式中,物理企图做事模块160能够找到跨多个规划联合利用的联合配对(例如,ddr限制和phy)。所信号配对的物理谋划块可以跨方案一再使用以提高效率。在极少履行体例中,物理布置供职模块160可以被扶植成从先前的物理准备实行中进修,而且为下一次实践自动调整某些参数。比方,当被移用以出产满足特定成效基准的芯片同时撑持在尚未满意的特定面积/功耗执掌下(比方,不够快或过大或耗电)时,物理企图做事模块160能够提出筑议的替代参数可能只是在探求更亲昵须要的方向上迭代。
54.集成电路安插管事根基步伐110征采现场可编程门阵列处事模块170,其被设立成基于存放器传输级数据组织132和软件修立器械包142天赋用于集成电道的现场可编程门阵列仿线。比如,现场可编程门阵列就事模块170能够被修立成行使基于云的现场可编程门阵列(fpga)。比方,现场可编程门阵列任事模块170可以被设备成操纵基于云的fpga合成用具。例如,现场可编程门阵列就事模块170可以被配置成操纵仿真平台,诸如
palladium(来自cadence)、veloce(来自mentor graphics)和/或zebu(来自synopsys)。例如,现场可编程门阵列任职模块170能够使亏欠怎么构修这些繁复平台的知识的用户可以先天用于fpga试验的事件文件(譬喻,在云中)。例如,现场可编程门阵列供职模块170可以被设置成处分仿照兴办硬盘驱动器和收集设备。譬喻,现场可编程门阵列任事模块170可以向用户(好比,web客户端102的用户)供应登录,以使得用户能够登录到芯片而且简洁地运行基准测验。例如,现场可编程门阵列服务模块170可以将存放器传输级数据结构132和软件修筑工具包142举动输入,并基于寄存器传输级数据机关132、软件修筑器械包142和/或策动参数数据布局122天才现场可编程门阵列仿线(例如,仿真文件和支持质量)。一旦预备以存放器传输级名目(比如,举动verilog)可用,现场可编程门阵列服务模块170可能天生文件以使准备可以在fpga可能在仿真平台上运行。在少少执行格式中,现场可编程门阵列任事模块170可以供给收罗外围兴办在内的完全形式完全独揽的仿真(譬喻,供应结婚保留器时序)。比方,仿真的外围筑造可因此用户在由web行使供职器112天生的web接口中选择的实践外围筑立。例如,假如用户挑选了具有64位ddr接口的芯片,则fpga工作可以构建一个fpga模型,其使得终末用户产生仿线位接口的仿真。好比,假如用户拣选芯片带有显露节制器,则fpga服务应提供带有表露节制器的仿真情状。例如,现场可编程门阵列任职模块170可以基于参数化集成电路准备告终对现有东西的高度注意的运用。比如,现场可编程门阵列任事模块170可以被创立成行使fpga/仿真器东西链、被树立成成立仿真制造、被扶植成编译仿真制作、将仿真制作加载到所央浼的云中、以及需要登录和/或启动所央浼的基准测试并返回究竟举动考试究竟190的一局部。譬喻,现场可编程门阵列任职模块170可以将最后的fpga/仿真器打算和/或凭证(例如,登录名和密码)注册回限定器120。在极少实践方法中,局部器120被创立成利用基于现场可编程门阵列仿线编程的现场可编程门阵列挪用试验,以获得仿真终究,个中,现场可编程门阵列门阵列在云任事器上运行。譬喻,局限器可以使用凭证来挪用在云管事器上垄断的现场可编程门阵列上的尝试。
55.集成电途规划管事根柢程序110收罗验证办事模块180,其被树立成基于准备参数数据构造122和验收标准天资用于集成电途的尝试决策182。譬喻,验证任职模块180可以被建树成使用verilog模仿器(比如,开源verilog仿制器)。好比,验证处事模块180可以被扶植成运用fpga。例如,验证工作模块180可能被成立成应用软件模仿器,诸如快速师法器(qemu)、spike和/或其谁软件师法器。在少少实施式样中,多个方针测试平台看起来沟通,因此验证管事模块180能够轻便地跨差别资本选项移动事宜负载(譬喻,利用物理fpga比应用抢占式云实例更好处)。好比,验证办事模块180可以拔取寄存器传输级数据组织132(比如,包括verilog rtl)、软件修设用具包142、物理盘算数据组织(比方,搜罗gdsii文件)、考试语料库以及对应的验收准则行动输入并禀赋用于集成电路布置的测验决议182和/或考试终究190。比如,验证做事模块180的输入能够由限定器120需要。在极少施行格式中,用户定义的局限器或更参数化的局部器被建设成反响于转化的验收标准。给定验收准绳和方案筑立,可能自动天赋考试决策。譬喻,验证管事模块180能够被设立成定义处境、在给定试验语料库和基于谋划参数数据组织122天资的硬件和软件部署的景况下过滤掉它不能运行的尝试、天资测验计划182以收罗用于集成电途安排的所选考试的序列。例如,景况可以定义试验平台。在被测开发以外,实验台中可以有附加部件,并且在铺排中标准化这些处境能够
是有益的。好比,可能在实验平台内标准化解散测验的形式。一些测试平台可以定义cpu可以写入的寄放器,该存放器被定义在测试台中,而少许试验平台会以某种方式摆动通用输入/输出(gpio)引脚。给定考试决策182,良多测验平台能够用于一齐试验。在一些实行格式中,验证劳动模块180可以根据试验决议182扩充或以其所有人式样调用试验并征采包括在考试究竟190中的终于。譬喻,考试计划182和/或个人或全部尝试毕竟190能够被回报到部分器120。
56.图2是用于鼓励集成电途的策划和兴办的格局200的示例的框图。格局200网罗web客户端102、脚本api客户端104、汇集106、集成电途安顿管事根柢设施110、fpga/仿线。比方,用户可以操纵web客户端102或脚本api客户端104驱使集成电途盘算任事根柢举措110以基于用户为一个或多个模板集成电道盘算遴选的一组策画参数值主动天赋集成电路策划。
57.比方,集成电途安插管事根柢次序110可以(比如,源委辘集106上的蚁集通信)移用对由fpga/仿线实行的事实规划的考试,该fpga/仿真劳动器运行一个或多个fpga可能其他典范的硬件或软件师法器。比方,集成电路规划工作本原次序110能够应用基于现场可编程门阵列仿线编程的现场可编程门阵列来移用试验,以取得仿真终归。现场可编程门阵列可能在fpga/仿线上操作,该fpga/仿真供职器可于是云任职器。考试终究可以由fpga/仿线返回到集成电路盘算劳动根柢措施110并以有用的名目中继给用户(好比,颠末web客户端102或脚本api客户端104)。
58.集成电途计算处事根本措施110还可以荧惑在与创筑商任职器230合系联的创设方法中使用集成电路谋划成立集成电路。在一些实行方式中,基于物理布置数据结构162的物理策动规范(比如,gdsii文件)被传输到创造商做事器230以调用集成电途的创建(好比,应用相闭成立商的筑造开发)。好比,创制商工作器230能够托管铸造厂流片网站,该铸造厂流片网站被配置成接受物理安放典范(比方,作为gdsii文件或oasis文件)以更动或以其我形式怂恿集成电路的缔造。在一些施行形式中,集成电道铺排工作根基程序110支撑多住客以答应多个集成电途预备(例如,来自一个或多个用户)分担固定创造资本(好比,掩模版/掩模禀赋和/或穿梭晶片实验)。比方,集成电路安插工作基础设施110可以使用固定封装(譬喻,准标准化封装),该固定封装被定义以下降固定成本并鞭策掩模版/掩模、晶片测验和其全部人固定设立资本的分担。比如,物理计划榜样可能网罗来自一个或多个反映物理方针数据组织的一个或多个物理方针以便驱策多住客制作。譬喻,集成电路铺排任事根源办法110能够实践图9的通过900以天才多住客物理计算典范。
59.反应于物理策动楷模的传输,与创作商做事器相干联的制造商可能基于集成电路布置来创建和实验集成电途。比如,闭系发现商(譬喻,铸造厂)可能推行光学临近改正(opc)和不异的流片后/生产前治理、筑立集成电路、周期或异步改善集成电途部署就事基础步调110(例如,原委与部分器120或web使用劳动器112的通信)的发现历程形式、扩张适宜的实验(譬喻,晶片测验)并发送到封装厂实行封装。封装厂可以从创造商领受告竣的晶片或管芯和尝试质料,而且周期或异步改进集成电路预备管事根蒂步伐110(例如,颠末与限制器120或web操纵办事器112的通信)的封装和交付始末的样子。在少许施行方法中,当用户行使web接口签时髦,形态更始可以中继给用户,和/或局部器可能经验电子邮件向用户发送维新可用。
60.在极少实践方式中,获得的集成电路(例如,物理芯片)被递送(比方,经历电子邮件)给用户。在一些践诺形式中,取得的集成电途(譬喻,物理芯片)安置在由云供职器局限的体制中,使得它们可速速会见以操纵收集通信远程运行以范围集成电途的把握。譬喻,对控制设立的集成电路的云就事器的登录可以被发送到集成电途打算工作根柢环节110并被中继到用户(比如,原委web客户端102)。比如,图10的经过1000可以由发明商实行。
61.图3是用于激励集成电路的策画的方式300的示例的框图。格局300是可能用于将集成电路布置做事基础步调110杀青为图1所示的格式100的集成电途安顿供职基本设施110的总计恐怕一个或多个部件的预备筑设的内部筑立的示例。系统300能够收集部件或单元,诸如统制器302、总线、用户界面320、其全部人适应的部件或其拉拢。
62.束缚器302可以是主题处理单元(cpu)(诸如微执掌器),况且可以收集具有单个或多个拘束核的单个或多个管制器。可替换地,束缚器302可以搜集此刻保全或往后修设的可能运用或执掌新闻的另一种榜样的开发或多个修设。譬喻,治理器302可以包罗以任何式样互连的多个处置器,征采硬连线或联网(搜罗无线联网)。在极少施行办法中,管制器302的操纵能够分散在多个物理修设或单元上,这些物理制造或单元可以直接耦关或胜过局域网或其他们适合典型的辘集耦合。在少许履行办法中,管理器302能够搜求用于独揽数据或指令的外地保全的高疾缓存或高速缓存保留器。
63.保管器306可能收罗易失性保留器、非易失性保管器或其齐集。例如,生存器306可以征求易失性存在器——诸如一个或多个dram模块,诸如ddr sdram,以及非易失性保全器,诸如磁盘驱动器、固态驱动器、闪存、相变存储器(pcm)或能够长久地保全电子音讯的任何花样的非易失性保留器,诸如在没有手脚电源的情形下。存储器306能够搜集当今生存或以来兴办的可以保管数据或指令以供执掌器302执掌的另一种样板的开发或多个建造。办理器302可以始末总线中示出为单个块,留存器306能够已毕为多个单元。比方,编制300可能网罗易失性保存器——诸如ram,和长远性存储器,诸如硬盘驱动器或其大家保全装配。
64.保管器306能够包括可推论指令308、诸如运用数据310的数据、专揽编制312或其聚闭,以供经管器302即刻会见。可推论指令308可以征求譬喻一个或多个的利用秩序,其可以全部或局部地从非易失性保留器加载或复制到易失性保留器以由约束器302扩展。可扩展指令308能够结构成可编程模块或算法、功用次序、代码、代码段或其聚集来增添本文描摹的各种效力。好比,可施行指令308可能搜罗可由约束器302推广以使体系300响应于驱策而基于企图参数数据组织自愿天禀集成电路打算和干系实验结果的指令。行使数据310可以包括好比用户文件、数据库目录或字典、配信任息或功能序次,诸如web赏玩器、web就事器、数据库工作器或其组关。运用式样312能够譬喻是microsoftmac os或用于小型设备的运用方式,诸如智好手机或单调筑立;或用于大型筑筑的驾驭格式,诸如大型算计机。存在器306可以征求一个或多个制造并且可能操纵一种或多种典型的留存装配,诸如固态或磁保存安装。
65.外围设备314可能历程总线可因而传感器或检测器,或包含任意数量的传感器或检测器的制造,其能够监测方式300自身或系统300领域的环境。比方,格式300可能蕴含地理空间名望记号单元,诸如环球定位格式(gps)位置单
元。动作另一示例,体制300能够蕴藏用于丈量诸如统治器302的系统300的部件的温度的温度传感器。如能够预期的,其你们传感器或检测器可以与形式300一齐使用。在一些执行办法中,电源316可因而电池,况且格局300能够独立于外部配电体例掌握。方式300的任何部件——诸如外围制造314或电源316——可能过程总线还可能原委总线。在少许执行方法中,密集通信接口318可能收罗一个或多个收发器。辘集通信接口318可以好比经过辘集接口提供到诸如麇集106的网络的连续或链接,该聚集接口可以是有线搜集接口——诸如以太网,或无线和操纵一种或多种搜集协议的搜集接口与其我制造通信,该一种或多种密集和议为诸如以太网、tcp、ip、电力线通信(plc)、wifi、红外线、gprs、gsm、cdma或其所有人适应的协议。
67.用户界面320能够收罗知道器;位置输入修设,诸如鼠标、触摸板、触摸屏等;键盘;或其大家适当的人机界面建筑。用户界面320可以源委总线。除了显示器之外或许行为透露器的替代,能够需要甘愿用户编程或以其全部人体例利用形式300的其他界面修立。在少许履行式样中,用户界面320可以搜求清楚器,其可于是液晶呈现器(lcd)、阴极射线管(crt)、发光二极管(led)暴露器(好比,oled清爽器)或其大家相宜的分明器。
68.在一些施行方法中,客户端或做事器能够省略外围建立314。统治器302的驾御可能散布在多个客户端或就事器上,这些客户端或任职器可以直接耦合可能跨局域网或其大家适宜样板的网络耦合。存在器306可以分布在多个客户端或供职器上,诸如基于蚁集的保存器或许多个客户端或管事器中的保管器,以增加客户端或工作器的操作。纵然在此被描画为单个总线,但总线可能由多个总线构成,这些总线可以经历种种桥接件、限度器或适配器互相连接。
69.图4是用于鼓吹集成电途的打算的过程400的示例的历程图。经过400征采:访问410布置参数数据组织;基于布置参数数据机合先天420用于集成电路的寄放器传输级数据构造;基于存放器传输级数据机关天分430用于集成电途的软件开发工具包;基于存放器传输级数据构造天禀440用于集成电路的物理安放数据布局;基于寄存器传输级数据机关先天450用于集成电途的文档;基于寄存器传输级数据组织和软件筑造工具包,禀赋460用于集成电路的现场可编程门阵列仿真数据构造;基于准备参数数据组织和验收法则禀赋470用于集成电道的测验决策;基于实验计划、寄放器传输级数据布局、软件兴办用具包和物理安排数据构造调用480用于集成电道的测试,以取得一组测试真相;以及传输、存在或清楚490基于存放器传输级数据组织、软件制造器材包、物理安顿数据机关和测试真相的方案数据构造。源委400能够反映于单个差遣(例如,构建使令)主动天才和实验符合企图参数数据机关中的准备参数值的集成电途盘算。譬喻,通过400能够由集成电道准备办事底子程序110施行。好比,进程400可以由图1的式样100实践。譬喻,始末400能够由图3的体例300施行。
70.经历400包括接见410安顿参数数据构造(比如,文件、数据库、储存库或比特流)。规划参数数据机闭搜罗集成电途规划的打算参数的值。比如,集成电途准备可能具有ip核。比如,集成电道企图可以具有片上体制。比如,安顿参数数据组织能够搜罗json文件。譬喻,规划参数数据结构的准备参数可能搜罗是否支撑特权模式、是否保卫乘数增添、是否保卫浮点推论、在片上保存器中是否保卫纠错代码、指令缓存的大小、指令缓存的相闭性、片上
存在器中的数据子格式的大小、是否网罗端口(好比,前端端口、体制端口、外围端口或存储器端口)、保全器端口通途的计数、端口通信协议选取、总线宽度、物理保存器保护单元的计数、是否保护jtag调试、硬件断点的计数、是否庇护指令跟踪、是否坚持调试直接生存器访问、本地停歇的计数、是否撑持平台级停留部分器、阻碍优先级的计数、全体阻碍的计数、是否保持分支瞻望、分支方针缓冲器条件的计数、分支汗青表条件的计数和/或设立始末的抉择。比方,能够始末接纳准备参数数据构造(好比,操纵收集通信接口318始末与web客户端102或脚本api客户端104的辘集通信)来会见410计划参数数据组织。比如,可以资历读取预备参数数据构造(好比,始末总线.经历400征求:回声于标记布置参数数据构造的鞭策,基于企图参数数据结构天禀420用于集成电路的寄存器传输级数据结构。例如,役使可因此用户使用web客户端102履历web操纵工作器112的web接口的图标颁发的构修驱策。比如,驱策可因此由在脚本api客户端104上运行的脚本经由脚本api就事器114颁发的构建鞭策。役使可以显式地或隐式地标识方案参数数据布局。例如,鞭策可能经过与方案参数数据组织的副本一起发送来暗记宗旨参数数据结构。比方,驱策可以经验包括对先前存储的方针参数数据组织的指针或其他引用来暗号盘算参数数据结构。例如,宗旨参数数据构造可能包括列出计划参数和反应值的标记符的json文件。在少许推广形式中,安放参数数据机合还收集标志策划参数批改的模板集成电路盘算的教导(譬喻,指针、名称或另一标帜符)。比如,模板集成电途宗旨可以收罗苦守便于模块化布置的旧例的模块化设计数据布局。例如,基于策动参数数据组织天分420用于集成电路的寄存器传输级数据结构可以包罗操纵基于打算参数数据机关的数据挪用存放器传输级办事(好比,寄放器传输级任职模块130)。例如,图6的始末600可以被推广为基于方针参数数据构造天分420用于集成电路的寄存器传输级数据构造。
72.比如,寄放器传输级数据结构可能搜求一个或多个verilog文件。存放器传输级数据布局可以包括改良的修设设定以驱动集成电途谋略流水线的后期阶段。在一些实践式样中,寄放器传输级数据结构包括留存器映射、一个或多个端口分配和组织计议新闻。
73.存放器传输级数据构造(好比,寄存器传输级文件)可能操纵诸如scala、chisel、diplomacy和/或firrtl的器械基于策画参数数据布局自愿天赋420。好比,生成420用于集成电路的寄放器传输级数据构造能够搜求引申scala代码以读取谋划参数数据机合并动态天赋电途图。在少少履行体例中,天禀420用于集成电路的寄放器传输级数据结构收集在chisel中挪用diplomacy封装以决意用于集成电路的总线包括:响应于暗号计划参数数据布局的驱使,基于寄放器传输级数据布局天分430用于集成电路的软件制造用具包。在一些施行体例中,先天430用于集成电途的软件开发东西包搜集生成用于verilog仿制器和物理现场可编程门阵列的加载递次以进行闪存。譬喻,禀赋430软件修立器械包可能搜求访问用于由企图参数数据组织暗记的模板集成电途安排的现有工具链或软件开发东西包。现有器材链或软件兴办器材包(例如,risc
v器材链/sdk)可以操纵闭用于可创立性的老例来创制。例如,可能将现有器材链或软件开发器械包结构成与部署参数数据构造的策划参数相对应的子模块。好比,软件兴办器材包可以征采编译器、汇编器、报头文件、库、引诱加载顺次、内核驱动序次和/或用于全功效sdk/揣度景况的其所有人用具。比方,天才430软件筑立器材包可以征采扩展python脚本。在少少实施体例中,先天430软件建造器材包包罗领会寄存器传输级数据结构(譬喻,json文件)、生成
用于东西和构修的选项、天分回响于保全器映照的头文件、从现有工具链或软件建造器械包中选择合适的示例、为宗旨因袭器(比如,qemu(快速效法器))禀赋相干成立文件以便它们可能在另一执掌器(好比,x86)上运行新方案,以及为verilog仿制器和物理fpga板天禀加载循序以实行闪存。得到的软件筑造器械包能够在云中构建和测试(比如,在提供给客户之前)。比方,天才430软件建立器材包可能收集用基于寄放器传输级数据结构和/或设计参数数据布局的数据调用软件建造用具包供职(好比,软件制造工具包劳动模块140)。
75.经过400网罗:反映于标记计划参数数据结构的命令,基于寄放器传输级数据组织天赋440用于集成电道的物理策划数据结构(比方,物理计算文件)。好比,生成440用于集成电途的物理铺排数据布局能够包括完成图7的历程700。比如,天才440用于集成电途的物理计划数据机闭能够收罗用基于存放器传输级数据构造和/或计算参数数据组织的数据挪用物理策划做事(好比,物理方案服务模块160)。好比,天才440用于集成电途的物理策画数据机合能够征采挪用综合和结构布线工具(比如,synopsys、cadence和/或mentor工具)。比如,天生440用于集成电路的物理计算数据结构可能网罗推论逻辑等效检查。例如,生成440用于集成电路的物理预备数据组织能够网罗挪用静态时序解析东西。好比,禀赋440用于集成电途的物理设计数据布局可以网罗扩展安置法则查验(drc)和/或结构对理由图(lvs)检验。譬喻,天生440用于集成电路的物理布置数据结构能够搜求决议获得的集成电途安置的功率、功能和面积揣度而且将这些盘算作为反馈供应给用户(比方,web客户端102的用户)。好比,物理计划数据结构可能以本领含量较低的术语网罗物理设计是否保存任何问题。好比,物理策画数据组织可能优越综关和结构布线工具的输出的急急部件。例如,物理设计数据结构可以搜罗gdsii文件或oasis文件。比方,生成440用于集成电路的物理安置数据构造可能包罗在云中束缚和编排物理谋略器材链。譬喻,天赋440用于集成电途的物理方案数据布局可能搜求束缚从用具到东西的数据库搬动,以及管束对第三方ip核的接见。比如,天才440用于集成电途的物理安放数据布局能够收集会见模板部署,这能够愿意告急的预备一再运用。例如,先天440用于集成电路的物理方案数据构造可以搜求标识那些组关以减少事务量。好比,资历将器械问题转机为可照料的反馈并以可交付的把戏向用户(比方,web客户端102的用户)供应用具的现实缺陷/输出,先天440用于集成电道的物理方案数据机闭可能需要更好或更紧凑的瑕玷/标题通告。例如,禀赋440用于集成电路的物理策动数据机合可以收罗操纵物理方案块来暗号功效块的配对,这些配对可能在安排中再三操纵以发展效率。
76.历程400网罗:反响于标识安置参数数据结构的胀励,基于寄存器传输级数据布局禀赋450用于集成电路的文档。比方,生成450用于集成电途的文档能够搜求运用prince(在可获得)。例如,天赋450用于集成电途的文档可以征采利用ascii doc(在可获得)。比方,天才450用于集成电途的文档能够包括会见由部署参数数据布局标帜的用于模板集成电路宗旨的预加载模块化手册。模块化手册可能运用实用于可扶植性的旧例来建造。例如,可以将模块化手册结构成与筹划参数数据机关的安放参数相对应的子模块。在少少推广方式中,模块化手册行为多个部件保留在模板的现有sdk的对应目录中。天禀450用于集成电路的文档可能搜集归纳预加载的模块化手册以应声于盘算参数数据组织中的策画参数值。例如,天资的450文档可以是html花腔和/或pdf式子。为了正确纪录生存器映射/端口,先天450用于集成电路的文档可以网罗用
后rtl输出事宜。好比,禀赋450用于集成电途的文档可以搜集应用肖似于react框架的文档框架(譬喻,js html框架)。在少少履行办法中,文档块具有反应的python代码段,该代码段接受rtl输出建树文件并将其领悟为ascii doc所需的块并挪用内容禀赋。好比,天资450用于集成电路的文档能够包罗告终图8的源委800。比如,天才450用于集成电途的文档可以包罗用基于存放器传输级数据布局和/或企图参数数据组织的数据挪用文档供职(好比,文档任事模块150)。
77.过程400搜罗:应声于标帜安插参数数据机关的鼓励,基于存放器传输级数据结构和软件修建东西包生成460用于集成电途的现场可编程门阵列仿真数据结构(比如,现场可编程门阵列仿真文件)。好比,用于集成电途的现场可编程门阵列仿真数据布局能够被设备成运用基于云的现场可编程门阵列(fpga)。比如,先天460用于集成电路的现场可编程门阵列仿真数据组织可以包括移用基于云的fpga闭成工具。比方,天禀460用于集成电路的现场可编程门阵列仿真数据组织可以征采挪用仿真平台,诸如palladium(来自cadence)、veloce(来自mentor graphics)和/或zebu(来自synopsys)。譬喻,用于集成电途的现场可编程门阵列仿真数据结构可以被树立成管理仿真设备硬盘驱动器和网络制作。好比,现场可编程门阵列仿真数据结构可能包括仿真文件和保护材料。在极少实践方法中,用于集成电途的现场可编程门阵列仿真数据构造可以需要征采外围开发在内的总共格式悉数驾驭的仿真(例如,需要成婚保留器时序)。譬喻,仿真的外围兴办可是以用户在由web操纵办事器112天赋的web接口中已采取的实质外围兴办。例如,天生460用于集成电路的现场可编程门阵列仿真数据机合能够搜罗高度详细地操纵基于参数化集成电途谋划的现有用具。好比,天禀460用于集成电路的现场可编程门阵列仿真数据结构能够收集挪用fpga/仿真器工具链、成立仿真设备以及编译仿线用于集成电路的现场可编程门阵列仿真数据组织能够征求用基于寄放器传输级数据布局和/或策画参数数据布局的数据移用fpga/仿真工作(比方,现场可编程门阵列安排就事模块170)。
78.原委400征采:反映于标帜宗旨参数数据机合的鞭策,基于策动参数数据机关和验收准则天赋470用于集成电途的尝试决定。在少少施行式样中,验收绳尺与方针参数数据构造十足被接纳(好比,从web客户端102接收或从脚本api客户端104接收)。在少少践诺办法中,验收标准从生存器(例如,存储器306)读取。例如,天才470用于集成电路的试验计划能够征采挪用verilog模仿器(比方,开源verilog步武器)。例如,用于集成电路的测试计划可以包括应用fpga。例如,用于集成电途的实验计划能够征采运用软件因袭器,诸如疾快模仿器(qemu)、spike和/或其他软件效法器。在少少实践方式中,多个目标测试平台看起来肖似,以是集成电途的尝试决议能够包括在差异的成本选项之间挪动事件负载(好比,操纵物理fpga比行使抢占式云实例更便宜)。比方,可能基于存放器传输级数据组织(好比,征采verilog rtl)、软件修设用具包、物理安放数据机关(比如,包罗gdsii文件)、测验语料库和对应的验收标准先天470用于集成电道的试验决定。在极少实施式样中,天资470用于集成电路的考试决议可以搜求应声于用户定义的转移的验收标准。给定验收准绳和方针树立,能够主动先博鱼体育天470考试计划。比如,天生470用于集成电路的测试决议可以征求定义情况、在给定测验语料库和基于铺排参数数据布局生成的硬件和软件策动的情状下过滤掉无法运行的实验、并天资测验决议以搜求用于集成电路方针的一系列所选试验。例如,环境可能定义考试平台。在被测修造以外,测试台中能够有附加部件,在设计中绳尺化这些情形能够是
有益的。例如,可能在尝试平台内准绳化终结尝试的体例。一些试验平台能够定义cpu可能写入的寄放器,该寄存器被定义在尝试台中,同时一些测试平台会以某种格式摆动通用输入/输出(gpio)引脚。给定测验决定,许多试验平台可能用于整体测验。
79.过程400网罗:响应于记号布置参数数据布局的差遣,基于考试计划、存放器传输级数据结构、软件修筑器材包和物理谋略数据机闭移用480用于集成电道的尝试以获得一组考试到底。譬喻,被调用480的验证实验可能由局限器(好比,限制器120)、由验证服务(比方,验证供职模块180)和/或由外部管事(好比,基于云的fpga或经过网络通信会见的仿真处事)直接扩充。在极少实行办法中,挪用480用于集成电路的测验能够搜求行使基于现场可编程门阵列仿真数据机合编程的现场可编程门阵列来移用尝试以得到仿真终究。现场可编程门阵列可以在云劳动器上运行。比如,移用480用于集成电途的测试可能网罗使用证据(好比,登录名和/或密码)来调用在云任事器上运行的现场可编程门阵列上的测验。比如,测试究竟能够网罗用于大量试验的归纳信息,诸如天禀的集成电路铺排是否餍足一齐验收绳尺的二进制指挥,或者包括在尝试决定中的反响验证测验是否阅历单个验证考试的二进制辅导列表。
80.过程400收集传输、存在或流露490基于寄放器传输级数据布局、软件开发器械包、物理打算数据结构和测验真相的盘算数据结构。例如,准备数据构造可于是文件的蚁合、包罗来自存放器传输级数据组织的数据的档案或储存库(例如,github储存库)、软件开发工具包、物理计算数据结构以及考试终归。譬喻,安排数据结构还能够征采天赋450的文档和/或天分460的现场可编程门阵列仿真数据构造。比如,可能将安置数据构造传输490到外部修造(好比,个人计较制作)以用于真切或保全。比方,安顿数据机关可以保留490在保留器(例如,保管器306)中。好比,规划数据结构可以懂得490在用户界面(比方,用户界面320)中。好比,谋划数据布局可能始末辘集通信接口(例如,收集通信接口318)传输490。
81.尽管为了剖析起见,颠末400被示出为一系列应用,但经由400的完工或结关本文居然的推广办法状貌的任何其全部人技艺、进程或算法可以以各样程序或同时扩充。其它,服从本居然的垄断可以与本文未显露和形貌的其所有人安排悉数扩展。比如,图5的进程500能够用于以转嫁的计划参数迭代经由400以搜索盘算空间。另外,可以减少本文容貌的体例和技艺的一个或多个方面。比方,可能从始末400中约略独揽450。
82.图5是用于激动集成电途的安插的迭代原委500的示例的历程图。原委500搜集:会见510盘算参数数据构造(比如,如对待图4的使用410所描述的);基于设计参数数据布局(好比,操纵图4的过程400)决策520具有用于集成电途的对应试验到底的准备数据组织;若是(在掌管525)测试终归腐化(譬喻,实验结果不满意一组验收绳尺)和/或未横跨迭代计数,则基于考试终究变革530计划参数数据结构并进步到下一次迭代;以及倘若(在独霸525)测验到底通过(好比,实验终归餍足一组验收标准)和/或逾越迭代计数,则返回540定夺520的一个或多个谋划数据机关。在少少履行方法中,当经由500拒绝时,返回540决断520的具有其对应考试事实的十足预备数据结构。在极少推广形式中,当通过500以资历的测试毕竟拒绝时,仅返回540决断520的具有其对应测验真相的结果安放数据构造。在极少践诺格式中,用于决断集成电途方针是否资历的验收标准可能收罗对物理谋略的功率、功效和/或面积的统制。比如,当被调用以分娩满意特定功用基准的芯片同时支柱在尚未餍足的特定面积/功耗解决下(例如,不够快或过大或耗电)时,预备参数值可以在寻找更逼近需要的
方向上举行改造530。好比,始末500可以运用节制器120的脚本api来告终。例如,源委500能够由集成电路准备劳动底子步骤110完毕。譬喻,经过500可以由图1的形式100结束。例如,过程500能够由图3的编制300完毕。
83.图6是用于基于宗旨参数数据结构生成用于集成电道的寄放器传输级数据布局的源委600的示例的过程图。比如,策动参数数据构造能够搜求json文件。比方,预备参数数据布局可能收罗由用户应用web接口中的配置旋钮(比如,图12的筑设窗格1220的计算旋钮)决定的铺排参数值和/或与模板集成电路准备关联联的值。原委600收集:认识610json文件以决心集成电途铺排的计划参数的值;将盘算参数值改造620为用于寄放器传输级天生器的输入参数值;以及运用输入参数调用630存放器传输级禀赋器以获得搜罗在寄存器传输级数据组织中的寄存器传输级数据。好比,存放器传输级天分器可能搜求器械,诸如scala、chisel、diplomacy和/或firrtl。比方,进程600能够由集成电途谋划做事根底次序110结束。例如,原委600可能由图1的体系100实现。比如,经由600能够由图3的编制300已毕。
84.原委600搜罗用输入参数挪用630存放器传输级生成器以获得搜求在寄存器传输级数据结构中的寄存器传输级数据。比如,寄放器传输级天才器可所以以chisel编码的scala秩序。譬喻,挪用630寄存器传输级天分器能够征求扩张scala代码以动静天赋电路图。好比,调用630存放器传输级天禀器可能包括操纵chisel基于电道图天赋firrtl。firrtl是用于集成电路的中心揭示。譬喻,挪用630存放器传输级禀赋器能够包括调用firrtl编译器以优化方针。好比,调用630寄存器传输级天分器能够收罗调用firrtl verilog后端,该后端被移用以输出verilog。好比,存放器传输级数据构造可能收集一个或多个verilog文件。在少少实行式样中,存放器传输级数据构造征采存在器映照、一个或多个端口分拨、时钟、构造经营信休和/或其所有人安顿设置数据。譬喻,时钟可能在寄存器传输级数据组织中指定为用于时钟电路的网表(例如,rtl先天器能够实例化时钟电途,诸如pll和时钟分频器)和时钟电途的样子这两者,使得它可以不才游管事或用具中使用。好比,rtl天生器的输入可以指定为高级别,诸如“弥补64位ddr限度器”。rtl天才器能够会见和利用默认企图参数,诸如“该ddr限度器是具有8位ecc、32项从新排序缓冲器的cadence部分器”。
85.图7是用于基于寄放器传输级数据组织天生用于集成电途的物理盘算数据组织的过程700的示例的流程图。经由700包罗:挪用710源综合和结构布线静态时序剖释用具;调用740部署规则查验;以及挪用750组织对意义图查验。譬喻,移用的器材链能够收罗synopsys器材,诸如打算编译器、ic编译器、primetime、formality和/或starextract。在少少实践形式中,挪用710源综合和结构布线用具包罗在云中管理和编排物理规划器械链。在少少执行格式中,移用710源综闭和构造布线用具搜求推广本地安装在同一揣度建设上的物理宗旨器材链。例如,经由700能够由集成电路设计处事根蒂步调110完工。好比,原委700可能由图1的体制100竣工。比方,通过700可能由图3的系统300完成。
86.图8是用于基于存放器传输级数据结构禀赋用于集成电路的文档的源委800的示例的流程图。经过800搜集:(比如,利用python代码)分解810用于集成电路的寄放器传输级数据布局以标志文档框架的适用个别;基于标识的实用局部先天820文档片段;将片段组装830成词典;从模板(比如,ascii文档模板)实例化840文档;以及将对词典的引用与文档关并850。譬喻,文档框架可能不异于react框架。在一些践诺式样中,章节或段可能动态地添
加到文档中。例如,能够消息天分带有编号的章节和段。例如,ip核文档(例如,第3方ip核文档)能够被纳入网罗ip核的片上式样宗旨的文档中。例如,过程800可能由集成电路谋略就事根柢步伐110告竣。比如,历程800可能由图1的式样100完成。好比,历程800可能由图3的体系300杀青。
87.图9是用于天资多房客物理预备楷模以促进集成电途的制造的通过900的示例的进程图。比方,物理谋略模范能够征求用于多个单独集成电路的设计。原委900可以搜求:基于出产决定向多个孤立集成电途分派910掩模地域;对物理安顿典型推论920铺排原则查验;以及将物理盘算榜样传输930到管事器以移用修造。例如,始末900能够由集成电途布置处事底子办法110达成。比方,经过900可以由图1的系统100落成。例如,原委900可以由图3的体系300结束。
88.通过900征采基于坐蓐决议向多个孤立集成电途分拨910掩模区域。比方,多个孤独的集成电途能够搜集为告竣的物理企图数据组织(比方,gdsii文件或oasis文件)。在一些推广办法中,多个只身的集成电路是从多住客状况中的多个用户包罗的。给定为多个集成电路中的每一个仰求多少芯片的范例,可能构筑标线决策。比如,假使有用户a
芯片3,况且您想要50%的芯片1和25%的芯片2以及25%的芯片3,则可能呼应地分派910掩膜地域。
89.经历900收集对物理安放榜样推行920计算法则检查。可以检查搜求多个伶仃集成电路的副本的用于掩模的物理筹划样板是否违反准备原则(例如,检查多个伶仃集成电途的副本之间的间距违规)。施行920该顶级drc查验可以用作将被发送到铸造厂实行创造的甲板的最终检查。
90.经历900征采将物理布置表率(好比,gdsii文件或oasis文件)传输930到做事器以挪用发明。传输930物理预备模范可能构成向晶圆厂和api提互换片技俩(例。
Copyright © 2012-2023 b体育·(中国)官方网站 版权所有 网站地图