用于对片上系统的制造进行控制的设计信息的验证技术方案

技术编号:5380867 阅读:247 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供了一种片上系统,包括多个电路模块(18)、可编程处理器(12)和耦合在所述处理器(12)与所述多个电路模块(18)之间的通信电路(16),所述通信电路(16)被配置为支持从所述处理器(12)对所述电路模块(18)中的寄存器进行程序控制访问,所述多个电路模块(18)中的第一电路模块和第二电路模块具有直接相互连接(19)以直接在所述电路模块(18)中的第一电路模块和第二电路模块之间直接传送信号而不通过通信电路(12)进行通信。所使用的设计信息包括连接数据,所述连接数据包括所述直接相互连接(19)的标识和所述直接相互连接(19)所耦合的第一电路模块和第二电路模块(18)的标识。将耦合至所述直接相互连接(19)的附加寄存器添加至所述片上系统以捕获和/或控制在所述直接相互连接(19)处的信号。所述附加寄存器耦合至通信电路(12)以支持对所述附加寄存器(44、46)的程序控制访问。使用针对所述处理器(12)的接口程序,每个接口程序用于所述电路模块(18)中指定的一个电路模块,用于所述电路模块(18)中的第一电路模块的接口程序被配置为接受标准化访问调用以访问所述附加寄存器(44、46)。使用验证程序,每个验证程序用于所述电路模块(18)中相应的一个,用于所述电路模块(18)中的第二电路模块的验证程序包括用于使处理器(12)执行以下操作的指令:访问所述电路模块(18)中的第二电路模块中的寄存器;使用所述连接数据或从所述连接数据导出的信息基于所述连接数据中对所述电路模块(18)中的第一电路模块的标识来选择所述电路模块(18)中的第一电路模块;以及发布对所述电路模块(18)中所选的另一电路模块的接口程序的标准化调用,以观察和/或控制在所述电路模块(18)中的第二电路模块的验证程序执行期间经由所述直接相互连接(19)的信号。当在所述验证程序的控制下操作时,监控所述片上系统的操作。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及包含片上系统的集成电路的设计验证,并且涉及以便于设计验证的方式获得的集成电路。
技术介绍
在典型示例中,"片上系统"是一种集成电路,包括可编程处理器和具有将由处理 器访问的指定功能的多个电路模块。通常,与该集成电路的环境分离地设计每个电路模块。 在系统设计期间,选择电路模块并将其组合以实现指定系统。本领域技术人员通常将这种 电路模块称为"IP模块"(知识产权模块)。本领域技术人员使用该术语来指代可以用于实 现电路模块的设计信息以及指代物理电路中的实际电路模块。 片上系统的设计者选择要使用的IP模块及其连接。片上系统的设计者还必须为 可编程处理器提供程序。典型地,使用应用软件和针对不同IP模块的应用接口软件来对可 编程处理器进行编程。应用软件由片上系统的设计者设计。应用接口软件由IP模块的设 计者设计。通常,使用标准应用编程接口 (API),可以从应用软件调用应用接口软件,或者 应用接口软件调用应用软件。为了进行这种调用,在可编程处理器可以对片上系统中的每 个IP模块进行寻址的地址以及可选地片上系统中IP模块的实现的其他系统参数方面,应 用接口软件需要具有"软件模型"。 典型地,片上系统的设计过程从在所使用的IP模块的功能、其功能连接以及应用 功能方面的设计规范开始。以连续的阶段对该规范进行转换,直到该规范产生集成电路中 基本电路组件的定义。并行地,该规范也被转换为软件。所述软件所使用的系统参数必须 与从该规范产生的电路定义相对应。 许多片上系统的极高复杂度和许多不同设计者的参与使得这种系统的设计非常 容易收到差错的影响。这使得必须对设计执行广泛验证。如这里所使用的,验证是在电路 的物理制造阶段之前的设计阶段,目的在于检测设计差错,这些设计差错如果未被检测到, 则将出现在所有制造出的产品中。在当今的设计中,集成电路实现中超过三分之二的工作 用于验证。期望减少这种工作。 —种验证涉及询问由电路的定义产生的系统参数是否与软件所使用的参数相对 应。这种验证潜在地解决了电路和软件设计过程之间的差异以及这些过程中的差错。期望 自动执行该过程。 在制造之后,已知通过对单独的IP模块执行测试并通过对IP模块之间的连接执 行测试,来测试所制造的包含片上系统的集成电路。对单独IP模块的测试通常由IP模块 的设计者来定义。这种测试可以包括结构测试,如扫描测试。这种测试可以包括功能测试, 其中经由系统总线或特殊的测试总线将测试数据提供给IP模块,并观察IP模块的响应。 对IP模块之间的连接的测试可以包括使用边界扫描测试。US20040019840描述了 对逻辑模块之间连接的测试,其中,信号产生部分向逻辑模块的输出提供测试信号。在连接 的另一侧,将来自另一逻辑模块的输入的信号提供给验证电路。验证电路将测试信号与在5该另一逻辑模块的输入处的信号进行比较。 应注意,提供这种电路是为了对制造的集成电路进行测试,而不是为了在制造之 前对于集成电路的设计进行验证。通常在设计完成之后,以使测试电路对所设计的电路透 明的方式来添加所需测试电路。例如,边界扫描电路典型地包括在正常使用期间透明的输 入和输出管脚处的触发器。因此,简单地由于在设计中不存在已知的测试电路,所以已知的 测试电路不能在设计验证期间使用。即使在将测试电路添加至设计之后,由于传统测试电 路在功能上是透明的,所以传统测试电路仍无法用于验证。
技术实现思路
本专利技术的目的之一是提供对片上系统的软件模型与用于实现片上系统的电路之间的对应关系的自动验证。 根据权利要求1所述的系统提供用于制造片上系统,所述片上系统包括与多个预先设计的电路模块相耦合的处理器。这些电路模块可以具有不经过处理器的直接相互连 接。使用由处理器执行的验证程序来执行设计的验证。每个验证程序是针对相应单个电路 模块来提供的,而不知道在片上系统中使用相应单个电路模块的环境。为了验证与单个电 路模块的直接相互连接,验证程序参照片上系统设计中的连接数据来标识该直接相互连接 所耦合至的另一电路模块,并且,验证程序使用该标识与对其他电路模块的接口程序的标 准化调用相结合,来访问附加寄存器以捕获或观察直接相互连接上的信号。按照这种方式, 电路模块的设计者可以提供对与电路模块的连接的验证,而无需对电路模块的实现的详细 知识。 在实施例中,提供了电路仿真器,所述电路仿真器被配置为当在验证程序的控制 下操作时,根据设计信息对片上系统的操作进行仿真。按照这种方式,使用电路仿真器,不 需要片上系统的物理原型来验证设计。通过使用原始设计中不需要的附加寄存器,可以仿 真对直接相互连接的可观察访问。在另一实施例中,电路仿真器被配置为根据电路模块的 相应不同抽象等级处的设计信息来对片上系统的操作进行仿真。因此,例如,可以执行寄存 器级模型的和晶体管级模型的仿真,以验证不同抽象等级处的设计信息。 在实施例中,在设计信息的控制下产生集成电路制造掩模,包括在连接数据控制 下的直接相互连接。这些掩模可以用于制造实际片上系统。这使得可以在实际片上系统中 执行验证。附图说明 参照以下附图,通过示例实施例的描述,这些和其他目的和有利方面将变得显而 易见 图l示出了片上系统; 图2示出了软件/硬件结构; 图3a示出了设计架构; 图3b示出了用于验证的软件/硬件结构; 图4示出了 IP模块的实施例; 图5示出了 IP模块的另一实施例; 图6示出了用于制造片上系统的系统。 具体实施例方式图1示出了片上系统的实施例。在集成电路10中实现该系统,该系统包含可编程 处理器12、程序存储器14a、数据存储器14b、通信电路16和多个电路模块(将被称为IP模 块18)。可编程处理器12经由通信电路16耦合至IP模块18,通信电路16可以是总线电 路,或者更一般地可以是通信网络。此外,可编程处理器12耦合至程序存储器14a和数据 存储器14b。各个直接连接19连接成对的IP模块18。直接连接也可以将IP模块18耦合 至集成电路10的外部端子。此外,尽管未示出,其他直接连接也可以将IP模块18耦合至 可编程处理器12。因此,例如,中断控制器IP模块可以具有至可编程处理器12的中断输 入的直接连接。IP模块18的示例包括中断控制器电路、DMA控制电路、专门计算电路,如 DCT(数字余弦变换)计算电路等。 图2示出了用于控制系统操作的软件/硬件结构。软件包括应用层20、多个IP模 块应用接口组件22和通信层24。这些层的软件包含程序存储器14a中存储的、由可编程处 理器12来执行的指令。应用层20通过应用接口组件22来与IP模块18进行交互,例如通 过使可编程处理器12将控制转移至在应用接口组件22中实现的指令,或通过提供可编程 处理器12响应于在应用接口组件22中的指令控制下的调用而要开始执行的指令。来自应 用接口组件22的指令使可编程处理器12执行来自通信层24的指令,以控制通信电路16 访问IP模块18。备选地,来自应用接口组件22的指令可以用于使可编程处理器12直接控 制通信层24来访问IP模块18。以下为简明起见,将可编程处理器12对来自不同层和组件 的指令的执行称为层和组件的动作,其中隐含的意义在于,通过可编程处理器12执行指令 来执行这些动本文档来自技高网
...

【技术保护点】
一种用于制造片上系统的系统,所述系统包括存储子系统(62),所述存储子系统(62)用于存储:-设计信息(64),用于控制片上系统的制造,其中,所述片上系统包括多个电路模块(18)、可编程处理器(12)和耦合在所述处理器(12)与所述多个电路模块(18)之间的通信电路(16),所述通信电路(16)被配置为支持从所述处理器对所述电路模块(18)中的寄存器进行程序控制访问,所述多个电路模块(18)中的第一电路模块和第二电路模块具有直接相互连接(19),以在所述电路模块(18)中的第一电路模块和第二电路模块之间直接传送信号,而不通过通信电路(12)进行通信,所述片上系统还包括附加寄存器(44、46),所述附加寄存器(44、46)耦合至所述直接相互连接(19)以捕获和/或控制在所述直接相互连接(19)处的信号,所述附加寄存器耦合至通信电路(12)以支持对所述附加寄存器(44、46)的程序控制访问;-连接数据(65),包括所述直接相互连接和由所述直接相互连接(19)耦合的所述电路模块(18)中的第一电路模块和第二电路模块的标识;-针对所述处理器(12)的接口程序(66),每个接口程序(66)用于接受根据相同标准化接口的访问调用,以访问所述电路模块(18)中相应的电路模块,针对所述电路模块(18)中的第一电路模块的接口程序被配置为接受访问调用以访问所述附加寄存器(44、46);-验证计算机程序(67),每个验证计算机程序(67)针对所述电路模块(18)中相应的一个,针对所述电路模块(18)中的第二电路模块的验证程序(67)包括用于使处理器(12)执行以下操作的指令:访问所述电路模块(18)中的第二电路模块中的寄存器;使用所述连接数据(65)或从所述连接数据(65)导出的信息,基于所述连接数据(65)中所述电路模块(18)中的第一电路模块的标识来选择所述电路模块(18)中的第一电路模块;以及发布对所述电路模块(18)中所选的另一电路模块的接口程序的访问调用,以观察和/或控制在所述电路模块(18)中的第二电路模块的验证计算机程序执行期间经由所述直接相互连接(19)的信号。...

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:扬斯图伊特贝尔纳德W德勒伊特鲁埃劳夫P德琼皮埃特斯特林克约里斯HJ戈伊茨
申请(专利权)人:NXP股份有限公司
类型:发明
国别省市:NL[荷兰]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1