一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于接口保护的系统和方法与流程

2022-06-11 21:30:48 来源:中国专利 TAG:


1.本技术涉及计算机系统设计领域,更具体地,涉及在片上网络(noc)的拓扑综合中针对接口的保护方案。


背景技术:

2.随着电子设备对安全性和可靠性变得更加重要,例如自动驾驶,验证被连接的组件是否在正常工作和通信的需求日益增加。这种通信可以跨任何电子组件发生。例如,通信可以发生在集成电路(ic)内的组件之间、ic芯片之间、电路板之间、电子设备之间以及前述的任何组合之间。
3.在片上系统(soc)中实现的多处理器系统通过诸如片上网络(noc)的网络进行通信。知识成果(intellectual property)(ip)块或元件或内核被用于芯片设计。soc包括知识成果(ip)块的实例。一些ip块是主块。一些ip块是从块。主块和从块通过网络(诸如noc)进行通信。
4.验证通信通常在软件、固件或硬件内完成。在软件和/或固件中验证通信的一些缺点可能包括:为每种接口类型创建和维护代码、运行此代码的处理器而浪费的带宽、以及由于花费时间去执行错误检查代码而导致的在当错误发生时与当系统接收错误时之间的滞后时间。当与软件和/或固件相比时,在硬件中验证通信可以具有优势,例如减小处理器负载、降低功率和改进响应时间。
5.创建定制硬件通信验证的一个挑战是确保组件之间的兼容性。ic设计组必须保持其电路块之间的通信验证兼容,并且当使用来自外部ip供应商的知识成果(ip)块时,该挑战呈指数级增长。当处理外部接口(例如与另一ic芯片接口)时也面临类似的问题。由于ic芯片(例如片上系统(soc))被添加了更多功能性,兼容性问题变得更加困难。此外,当ic设计人员手动编写通信验证组件时,ic的设计时间会增加,从而增加ic的成本,而且这种手动过程还增加了无意中添加工程错误的可能性,例如bugs。此外,为了符合某些标准,接口必须验证连接性,例如iso26262。因此,需要一种修改电子设计的系统和方法,以便添加对组件正在运行和通信的验证。


技术实现要素:

6.公开了一种修改电子设计的系统和方法,以添加对组件正在运行和通信的验证。根据本发明的一方面和实施例,组件正在运行和通信的验证可以包括添加参数,该参数在组件接口处使能硬件验证。添加硬件验证可以涉及添加组件、移除组件、添加信号、移除信号、重新路由信号以及对硬件描述的任何其他有效修改的任何组合。应当注意,本领域技术人员在提交本技术时将理解,如果两个组件正常通信,则这些组件至少在它们的接口方面是正常运行的。
7.根据本发明的一方面和实施例,本发明可以接收包括电子设计参数和接口保护参数的系统参数。使用内置库和该系统参数,本发明可以创建用于添加验证逻辑的模型。在模
型创建之后,接口保护实现参数可以由该模型创建。使用系统参数,具有验证的硬件描述可以被创建并被添加到系统参数中。本发明可以输出具有验证的硬件描述,例如输出寄存器传输逻辑(rtl)代码。根据本发明的另一方面和实施例,本发明可以利用验证来评估硬件描述,并且如果硬件描述不满足一个或多个要求,则参数可以被调整,这转而可以使模型被更新并且使硬件描述被再次创建。
8.根据本发明的一方面和实施例,具有验证的硬件描述可以包括在通信中已经发生故障的通知。根据本发明的另一方面和实施例,当验证方案包含足够的信息来纠正错误数据时,则该验证硬件可以纠正数据。
9.根据本发明的一方面和实施例,用户可以指定在模型创建中使用的库,而不是使用用于模型创建的内部库。此外或备选地,用户可以在能够在用户的设计流程中被稍后定义的配置中指定占位符。
附图说明
10.为了更全面地理解本发明,参考附图。本发明参考附图(fig.)根据在以下描述中的方面和实施例来描述,其中相似的附图标记表示相同或相似的元件。理解这些附图不应被认为是对本发明范围的限制,当前被描述的方面和实施例以及当前所理解的本发明的最佳模式通过使用附图来附加详细描述。
11.图1示出了根据本发明的各个方面和实施例的具有发起端、片上网络(noc)和目标的系统。
12.图2示出了根据本发明的各个方面和实施例的具有接口保护的图1的系统。
13.图3a示出了具有通过路径连接的两个ip块或模块的系统。
14.图3b示出了根据本发明的各个方面和实施例的具有保护路径的图3a的系统。
15.图4a示出了具有通过正路径和反路径而连接的两个ip块或模块的系统。
16.图4b示出了根据本发明的各个方面和实施例的具有正向保护路径和反向保护路径的图4a的系统。
17.图5示出了根据本发明的各个方面和实施例的使用参数来创建硬件描述的接口保护过程。
18.图6示出了根据本发明的各个方面和实施例的接口保护优化。
19.图7示出了根据本发明的各个方面和实施例的用于创建保护接口的硬件描述的系统。
20.图8a图示了根据本发明的实施例的旋转盘非瞬态计算机可读介质。
21.图8b图示了根据本发明的实施例的闪速随机存取存储器非瞬态计算机可读介质。
22.图9a图示了根据本发明的实施例的基于计算机处理器的片上系统的底侧。
23.图9b图示了根据本发明的实施例的基于计算机处理器的片上系统的顶侧。
24.图10示出了根据本发明实施例的用于设备的片上系统的框图。
具体实施方式
25.下面描述了本技术的各个示例,这些示例说明了本发明的各个方面和实施例。通常,示例可以以任何组合使用所描述的方面。本文中叙述原理、方面和实施例及其特定示例
的所有陈述旨在涵盖其结构和功能的等同。此外,此类等同旨在包括当前已知的等同和未来开发的等同,即,无论结构如何,被开发出来执行相同功能的任何元件。
26.应当注意,如本文中所使用的,单数形式“一个”、“一”和“该”包括复数指代物,除非上下文另有明确规定。在整个说明书中对“一个方面”、“方面”、“某些方面”、“各个方面”或类似语言的引用,意味着结合任何实施例被描述的特定方面、特征、结构或特性被包括在本发明的至少一个实施例中。
27.在整个说明书中出现的短语“在一个实施例中”、“在至少一个实施例中”、“在实施例中”、“在某些实施例中”和类似语言可以但未必均指的是相同的实施例或类似的实施例。另外,在此描述的本发明的方面和实施例仅仅是示例性的,并且正如被本领域普通技术人员所理解的那样,不应被解释为对本发明范围或精神的限制。在包括本文中所描述的任何新颖方面的任何实施例中,本公开发明被有效地制造或使用。本文中叙述本发明的方面和实施例的所有陈述旨在涵盖其结构和功能的等同。该等同旨在包括当前已知的等同和将来开发的等同。
28.确保组件正常工作和通信的一种方式是添加接口保护。接口保护可以包括生成器和检查器,它们使用任何类型的冗余方案(诸如奇偶校验、纠错码(ecc)、循环冗余校验(crc)和能够确保组件正常运行和通信的任何其他方案来实现保护。在硬件级别使用接口保护的一个优势可以是:软件可以在不知道接口保护实现细节的情况下对所有接口相同对待。
29.电子组件之间的接口可以是内部(例如,包含在电子设计层次结构内的子块之间的接口)和外部(例如,arm amba协议、ocp-ip等)的任何组合。外部接口可以到ic芯片内的另一组件,到另一ic芯片,到电路板,到另一电子设备或能够与该接口通信的任何其他组件。当与外部接口对接时,外部接口可以被要求实现接口保护。接口保护可以被实现在任何引脚类型上,例如,输入引脚、输出引脚、双向引脚和任何其他类型的接口引脚。接口保护方案可以包括编码信号,例如,用于电子组件之间的安全通信。
30.术语“信号路径”、“路径”和“路线”在本文中可互换使用。路径包括并由端点和边(边在本文中也称为链接)的任意组合组成,事务形式或信号或数据沿着该路径从源向目的地(接收端(sink)或目标)行进。
31.如本文中所使用的,“主”、“发起端”和“源”是指类似的知识成果(ip)块、单元或模块。在本发明的范围和实施例内,术语“主”和“发起端”和“源”可互换使用。如本文中所使用的,“从”、“目标”和“接收端”是指类似的ip块;在本发明的范围和实施例内,术语“从”和“目标”和“接收端”可互换使用。如本文中所使用的,事务可以是请求事务或响应事务。请求事务的示例包括写请求和读请求。
32.现在参考图1,系统100被示为具有发起端104,该发起端104利用携带信号的路径连接到片上网络(noc)106。发起端104通过noc 106与目标108通信。目标108利用携带信号的路径连接到noc106。
33.现在参考图2,根据本发明的一个或多个实施例和方面示出了系统200。发起端204和目标208使用片上网络(noc)206进行通信。系统200包括发起端204到noc 206之间的接口210。系统200包括目标208到noc 206之间的接口212。例如,发起端204通过生成并且经由信号路径或路径216传输请求(事务)来开始与noc 206通信。noc 206通过内部电路系统路由
请求并且经由信号路径220将请求发送给目标208。在目标208处理请求之后,目标208生成响应并且经由信号路径218将响应发送给noc 206。noc 206通过内部电路系统路由响应并且经由信号路径214将响应发送给发起端206。
34.当请求从发起端204被发送给目标208时,这可以被称为正向。当返回响应从目标208被发送给发起端204时,这可以被称为反向。当提及通信时,应理解为正向和反向通信,除非特别声明通信是可单向或双向的。
35.参考图3a,系统302a被示出为具有模块304a和模块306a,模块304a和模块306a通过信号路径308a来连接,系统302a是添加接口保护之前的系统。根据本发明的实施例和方面,信号路径308a是从模块304a到模块306a的单向信号。根据本发明的一个或多个实施例和方面,信号路径308a可以是任何类型的信号,例如双向、串行、多位、模拟、数字、混合信号、连续、离散、双工等。根据本发明的一个或多个实施例和方面,系统302a可以使用参数(例如,组件、连接性和可以描述与模块304a和模块306a相关的电子设计的任何其他信息)来描述。
36.根据本发明的一个或多个实施例和方面,可以通过定义一组参数来为系统302a指定接口保护,该组参数描述了如何实现用于信号路径308a的接口保护。例如,参数可以包括protection_type=parity和signals=all。根据本发明的一个或多个实施例和方面,保护生成器和检查器模型可以被创建,并且该模型可以被用于创建接口保护实现参数。
37.根据本发明的一个或多个实施例和方面,并且如图3b所示,通过将保护生成器和检查器模型连同系统参数一起应用于系统302a,具有接口保护的系统302b被创建。系统302b包括模块304b、模块306b、信号路径308b、保护信号路径310b、生成器312b、检查器314b以及故障信号路径316b。根据本发明的本实施例和方面,当接口保护被添加到系统302a以用于信号路径308a时,至少执行以下修改:
38.模块304b通过以下来创建:将生成器312b添加到模块304a、通过将信号路径308a重新路由通过生成器312b来创建信号308b,并且创建保护信号路径310b;
39.模块306b通过以下来创建:将检查器314b添加到模块306a、将信号路径308a重新路由通过检查器314b,创建保护信号路径310b,并且创建故障信号路径316b;以及
40.在模块304b与模块306b之间路由保护信号路径310b。
41.生成器312b监测路径308b上的信号以在路径310b上创建保护信号。检查器314b监测路径308b上的信号和路径310b上的保护信号以确定是否发生故障。故障可以是模块304b与模块306b之间的接口的一个或多个信号的永久或瞬时损坏。根据本发明的各个方面和实施例,故障使用路径316b上的故障信号来指示。生成器312b和检查器314b可以使用任何种类的冗余方案来实现接口保护,例如奇偶校验、ecc、crc等。根据本发明的一方面和实施例,检查器314b可以包括可纠正的故障信号路径以指示故障可以被纠正。在系统层面,大量的可纠正错误可以指示不可检测错误的更高概率,并且适当的响应可以被执行,例如关闭系统。
42.生成器312b和检查器314b冗余方案可以用任意数目的检查位线和/或可以在要被检查的信号内进行编码。例如,系统302b可以使用奇偶校验(parity)保护方案,其中保护信号路径310b是信号路径308b的奇偶校验位。例如,系统302b可以被作为rtl代码输出。
43.参考图4a,系统402a被示出为具有模块404a和模块406a,模块404a和模块406a通
level,rtl)、openaccess数据库、库交换格式和设计交换格式(library exchange format and design exchange format,lef/def)、网表、专有格式(例如,供应商开发的、客户开发的等)以及描述硬件的任何其他结构。例如,图3所示的系统302a,可以使用电子设计描述参数来描述。
50.接口保护参数描述接口保护方案,例如要保护的信号(例如,正向和/或反向的任意数目的可配置信号)、保护类型、要保护的接口、用户定义的保护方案和定义接口保护方案所需的任何其他参数。接口保护参数可以从以下来接收:用户输入、项目设置、先前设置、默认模板、基于规则的先前使用以及能够发送参数的任何其他源。接口保护参数可以指定内置保护方案的名称。例如,保护类型可以是“奇偶校验”,在这种情况下,通过在与接口信号相同方向上添加奇偶校验位,内置库可以用于修改电子设计。接口保护参数可以允许用户定义他们自己的保护方案,在这种情况下,接口保护参数包含用于创建接口保护方案所需的所有必要参数。例如,用户可以指定接口保护参数作为接口信号、处理这些信号的逻辑方程以及一组结果保护信号。接口保护参数可以包括对保护信号与接口信号之间关系的描述。接口保护参数可以允许其中接口保护创建保护信号并且创建空占位符块的配置,用户可以稍后在其设计流程中定义该空占位符块。接口保护参数可以允许内置模型至少部分地与用户覆写模型一起使用。
51.在步骤506,保护生成器和检查器模型使用接口保护参数来创建。当接口保护参数被配置为使用内置保护方案时,保护生成器和检查器模型可以根据内置保护方案库和创建模型所需的任何参数来创建。接口保护参数可以指定使用内置保护方案库模型作为基础并且将模型的某些部分覆写为在接口保护参数中所定义的。当接口保护参数指定用户定义的保护方案时,保护生成器和检查器模型可以使用接口保护参数来创建。
52.当接口保护参数指定其中占位符要被创建的保护方案时,保护生成器和检查器模型可以被创建,使得生成器和检查器模型被配置为针对某些块创建用户定义的占位符。保护生成器和检查器模型可以包括电子设计描述参数。保护生成器和检查器模型可以包括定义保护信号、保护块和接口修改的逻辑方程。保护生成器和检查器模型可以基于一个或多个其他信号的值来确定信号是有效的。保护生成器和检查器模型可以包括重定时阶段以帮助满足设计规范,例如收敛时序。
53.在步骤508,使用保护生成器和检查器模型将接口保护实现参数添加到系统参数。保护生成器和检查器模型被配置为进行用于经由接口保护实现参数将接口保护添加到电子设计所需的任何改变。接口保护实现参数提供用于创建对具有添加的接口保护的电子设计的硬件描述的必要信息。保护生成器和检查器模型可以创建接口保护实现参数,该接口保护实现参数描述了对电子设计的任何编辑,例如,添加组件、移除组件、修改组件、添加信号、移除信号、重新路由信号等。当接口保护允许接口自动纠正错误时(例如,ecc),接口保护实现参数可以包括实现自动纠正所需的参数,例如,添加纠正组件。
54.保护生成器和检查器模型可以在电子设计的任何层次级别上操作,例如,电子设计内的子组件之间的接口。例如,当用户选择使用内置参数模型和电子设计描述参数描述图3a所示的设计时,保护生成器和检查器模型可以将接口保护实现参数添加到能够描述图3b所示电子设计的系统。接口保护方案可以包括接口保护方案和/或针对某些信号没有保护的任意组合。例如,针对具有多位信号a、b、c、d、e和f的接口,则奇偶校验接口保护可以被
应用于信号a[31:16]、b[10:2]、c[1:0],ecc接口保护被应用于信号a[15:0]、b[1:0]、c[13:2],并且没有接口保护应用于信号d、e和f。
[0055]
在步骤510,使用系统参数创建硬件描述。根据本发明的一个或多个实施例和方面,使用电子设计描述参数和接口保护实现参数,创建硬件描述。硬件描述已被至少部分地创建的通知可以被发送。当硬件描述已完成时可以生成该通知。
[0056]
在步骤512,包括接口保护的硬件描述被输出。硬件可以以可以描述硬件的任何格式输出,例如,硬件功能、硬件描述语言(hdl)、verilog、vhdl、系统verilog、寄存器传输级别(rtl)、openaccess数据库、库交换格式和设计交换格式(lef/def)、网表、专有格式(例如,供应商开发的、客户开发的等)以及描述硬件的任何其他结构。根据一个或多个实施例,硬件描述作为rtl输出。该过程在步骤514结束。
[0057]
参考图6,接口保护优化过程从步骤602开始。根据本发明的一些实施例和方面,图6中描述的接口保护过程使用参数来创建硬件描述,该硬件描述包括接口保护并且在优化循环的设计上迭代。
[0058]
接口保护优化过程可以由以下开始:用户输入、预定时间发生、另一任务完成、电子设计中发生的里程碑事件、能够开始接口保护优化过程的任何其他事件、以及前述的任何组合。
[0059]
在步骤604,使用系统参数创建具有接口保护的硬件描述。根据本发明的一个或多个实施例和方面,步骤604可以执行与步骤502至步骤514相同或相似的功能。
[0060]
在步骤606,硬件描述被评估以确定评估度量。任何评估度量可以被用来评估硬件描述。例如,硬件描述可以被模拟以确定评估度量。例如,硬件描述可以通过综合工具被发送,然后布局和布线,时序收敛的状态可以是评估度量。评估度量可以是多维的。例如,针对电路的评估度量可以是该电路所需的面积和该电路消耗的功率。
[0061]
在步骤608,将规范与评估度量进行比较以确定是否满足规范。如果满足规范,则执行完成优化过程的步骤612。若不满足规范,则执行步骤610。例如,如果在硬件描述被综合和布局及布线之后,时序没有收敛,则未满足规范并且执行步骤610。
[0062]
在步骤610,系统参数被调整以优化设计和/或满足规范。优化可以意味着递增改进(例如,局部最小值)、找到全局优化(例如,全局最小值)以及在提交本技术时本领域技术人员已知的任何其他含义。参数调整可以涉及改变系统参数、删除系统参数和/或添加系统参数。例如,用于包括重定时阶段的参数可以被添加到系统参数。在完成步骤610之后,利用经调整的系统参数执行步骤604。
[0063]
参考图7,根据本发明的一些实施例和方面,系统702被示出,其中系统参数704、保护生成器和检查器模型712以及其他模型和库714由硬件生成应用710使用来创建保护接口的硬件描述716。系统参数704包括电子设计描述参数706和接口保护参数708。系统参数704可以是在图5的步骤504中接收到的相同或相似的系统参数。电子设计描述参数706描述了接口保护将被添加的电子设计。接口保护参数708参数描述了接口保护方案。保护生成器和检查器模型712创建了接口保护实现参数,该接口保护实现参数至少部分地被用来创建硬件设计。保护生成器和检查器模型712可以与图5的步骤506的保护生成器和检查器模型相同或相似。
[0064]
其他模型和库714包括由硬件生成应用710至少部分地需要以创建保护接口的硬
件描述716的模型和库。其他模型和库714的非限制性示例可以包括接口模型的库和硬件组件模型的库。硬件生成应用程序710使用系统参数704、保护生成器和检查器模型712以及其他模型和库714来创建保护接口的硬件描述716。保护接口的硬件描述716可以与图5的步骤512中创建的硬件描述相同或相似。
[0065]
现在参考图8a,示出了存储计算机代码的非瞬态计算机可读旋转盘介质800,该计算机代码如果由计算机处理器执行,则将使计算机处理器执行本文中所描述的方法或部分方法步骤。
[0066]
现在参考图8b,示出了存储计算机代码的非瞬态计算机可读随机存取存储器(ram)芯片介质810,该计算机代码如果由计算机处理器执行,则将使计算机处理器执行本文中所描述的方法或部分方法步骤。
[0067]
现在参考图9a,示出了封装的片上系统(soc)900的底(焊球)侧,该封装的片上系统(soc)900包括多个计算机处理器核,该多个计算机处理器核具有本发明的一些实施例的组件并且通过执行计算机代码执行本文中所描述的方法或部分方法步骤。
[0068]
现在参考图9b,示出了soc 900的顶侧。
[0069]
一个或多个非瞬态计算机可读介质的示例被布置为存储用于本文中所描述的方法的此类指令。持有包括任何必要代码的非瞬态计算机可读介质的任何机器可以实现本发明的示例或方面。一些示例可以被实现为:物理设备,诸如半导体芯片;此类设备的逻辑或功能行为的硬件描述语言表示;以及一种或多种非瞬态计算机可读介质,被布置为存储此类硬件描述语言表示。本文中叙述原理、方面、和实施例的描述涵盖结构及其功能等同。本文中被描述为耦合的元件具有能够通过直接连接或利用一个或多个其他中间元件间接连接来实现的有效关系。
[0070]
现在参考图10,示出了片上系统1003内的核的框图。系统1003包括多核计算机处理器(cpu)1021和多核图形加速处理器(gpu)1022。cpu 1021和gpu 1022通过noc 1023连接到dram接口单元1024和flash ram接口单元1025。显示接口单元1026控制显示,使系统1003能够输出mpeg视频和jpeg静止图像消息内容。i/o接口单元1027为由soc 1003控制的设备的人机接口提供扬声器和麦克风访问。网络接口单元1028为系统1003提供访问以在互联网或无线网络或局域网上与远程位置(诸如服务器)进行通信。
[0071]
根据本发明的各个方面的某些方法可以由被存储在非瞬态计算机可读介质上的指令来执行。该非瞬态计算机可读介质存储包括指令的代码,这些指令如果由一个或多个处理器执行,将使系统或计算机执行本文中所描述的方法的步骤。该非瞬态计算机可读介质包括:旋转磁盘、旋转光盘、闪速随机存取存储器(ram)芯片以及其他机械移动或固态存储介质。根据本发明的各个示例和方面,任何类型的计算机可读介质都适合用于存储具有指令的代码。
[0072]
某些示例已在本文中进行描述,但应注意,来自不同示例的不同组件的不同组合可以是可能的。显着特征被呈现以更好地解释示例;然而,明显的是,某些特征可以在不修改所描述的这些示例的功能方面的情况下被添加、修改和/或省略。
[0073]
本领域技术人员将认识到许多修改和变化。修改和变化包括所公开特征的任何相关组合。本文中叙述原理、方面和实施例的描述涵盖结构及其功能等同。本文中被描述为“耦合”或“通信耦合”的元件具有能够通过直接连接或使用一个或多个其他中间元件的间
接连接来实现的有效关系。本文中被描述为“通信”或“与”另一设备、模块或元件“通信”的实施例包括任何形式的通信或链接并且包括有效关系。例如,可以使用有线连接、无线协议、近场协议或rfid来建立通信链路。
[0074]
就在详细说明和权利要求中使用术语“包括”、“包含”、“具有”、“有”、“带有”或其变体来说,此类术语旨在以类似于术语“包括”的方式开放式包括。
[0075]
因此,本发明的范围不旨在限于本文中所示出和描述的示例性实施例和方面。相反,本发明的范围和精神由所附权利要求体现。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献