一种多人协同验证复杂ip的验证平台的方法及结构的制作方法

文档序号:6339163阅读:148来源:国知局
专利名称:一种多人协同验证复杂ip的验证平台的方法及结构的制作方法
一种多人协同验证复杂IP的验证平台的方法及结构
技术领域
本发明涉及一种IP技术,特别是涉及一种IP验证技术。背景技术
随着微电子技术的飞速发展,集成电路规模按照摩尔定律(微芯片上集成的晶体 管数目每18个月翻一番)飞速提高,片上系统(System On Chip,简称S0C)技术成为国 际超大规模集成电路的发展趋势。在SOC系统设计中,为了能够快速、稳定的形成产品, IP (intellectual property)核积累和复用技术逐渐成为各个芯片厂商的首选。在这样的 背景下,IP复用技术成为了集成电路设计的一个重要分支,很多设计厂商在购买其它公司 的IP核的同时,也越来越重视本公司的IP核设计和积累。在IP累积过程中,设计和验证是最重要的两个部分,而随着IP电路设计功能和结 构的日益复杂,验证的工作量和难度更是以几何级数的速度上升。验证就是通过各种仿真, 数据比较等手段来证明设计的正确性的过程,由于要在验证过程中需要证明设计在定义的 所有的工作条件范围内不能出现错误,所以验证的工作量相对于设计来说更加巨大,在部 分复杂IP的研发过程中,验证的时间甚至占到了总时间的80%以上。随着IP验证工作量的上升,一个复杂IP的验证工作也很难由一个验证工程师完 成,通常的做法是多个验证工程师合作完成一个IP的验证工作。在多人协作的验证工作 中,每个验证工程师都会负责其中的一部分子模块;当前复杂IP验证的挑战由于IP具体的结构中的电路在工作时有先后关系,所 以在验证时,通常只能串行的进行验证,处于输出端的子模块通常都要等待前级的子模块 验证完毕后才能进行验证。现有的多人复杂IP验证的过程通常为首先划分任务,当每个 验证工程师的任务划分完毕后,从IP输入端开始的子模块先开始验证;当前一级的子模块 验证能保证基本功能正确之后,下一级的子模块才能开始验证,验证子模块的顺序为从输 入到输出,每个子模块都要自己搭建一个独立的验证平台,该验证平台包括本级子模块之 前的所有模块和本子模块的输出检查;当每个子模块验证基本验证通过后,使用一个新的 整个IP的验证平台,该平台包含整个IP的所有子模块,从IP的输入端加入激励信息,然后 再IP的输出端检查输出的正确性;在联合验证过程中,如果出现问题,需要每个子模块都 回到自己的独立验证平台中重新使用相同情况仿真一次来确定是哪个工程师负责的子模 块出了问题,这个定位问题归属的时间过程常常花费大量的时间。

发明内容本发明要解决的技术问题,在于提供一种多人协同验证复杂IP的验证平台的方 法及结,它能够提高验证效率,减少验证时间。本发明一种多人协同验证复杂IP的验证平台的方法是这样实现的本发明具体包括如下步骤步骤10、使用模拟行为模型产生的数据流,进行各个子模块的独立验证,每个子模块输出端设有数据采集模型用于采集并记录数据流,判断数据流是否正确,若正确则进入 下一步骤,若错误则修正后,继续独立验证;步骤20、使用真实的数据流,进行各个子模块的协同验证,通过输出数据采集模型 采集IP总体运算数据,判断总体运算数据是否正确,若错误则进入下一步骤;若正确,则结 束验证; 步骤30、通过上述各子模块输出端的数据采集模型采集数据流,根据数据流错误 的位置找出所有可能出错的子模块进行独立验证,若验证错误则修正,直到所有可能出错 的子模块都验证正确;步骤40、将所有的子模块重新加入协同验证平台进行协同验证,回到步骤20。本发明一种多人协同验证复杂IP的验证平台的结构是这样实现的本发明所述IP包括复数个子模块,所述IP包括复数个子模块,所述IP的输入端 设有激励信息产生模型,所述IP的输出端设有输出数据采集模型,每两个子模块之间都设 有一数据采集模型,每两个子模块之间设有一模拟行为模型,每两个子模块之间还连接有 一通路选择器,所述通路选择器的一输入端和输出端用于连接原始数据流通路,另一输入 端连接对应的模拟行为模型;所述每两个子模块之间的数据采集模型连接于前一子模块的 输出端,用于采集前一子模块到后一子模块的数据信息;所述每两个子模块之间的模拟行 为模型用于模拟前一子模块到后一子模块的行为。本发明具有如下优点1.本发明使用通路选择器实现真实数据流和模拟行为模型的数据流的切换,将子 模块独立验证和协同验证的验证平台统一起来,不需要两套不同的验证平台,由此大大减 少了多次搭建平台的时间和减少了不同平台之间切换造成错误的风险;2.本发明使用了模拟行为模型,不需要针对每个IP的验证都重新搭建新的验证 平台,每个验证工程师对自己子模块的验证工作可以并行开始,不需要等待前一级子模块 的验证基本通过,大大缩减了总验证时间;3.本发明在协同验证时,在每个工程师负责的子模块输出端设置了数据采集模 型,并且配合参考正确数据,可以通过仿真过程中导出的接口文件迅速定位问题所在位置, 省略了各个工程师自己先检查自己模块正确与否的流程,大幅减少了重复工作,减少验证 时间;4.本发明在验证初期可以使每个验证工程师都拥有自己独立的仿真平台环境,到 验证后期需要协同验证时,可以把各个模块快速集成到同一平台进行协同仿真,灵活获取 自己需要的导出数据的模块输出,进行问题分析,划分任务时,强制性的清晰定义每个参与 人员之间的接口,间接提高了设计质量。

下面参照附图结合实施例对本发明作进一步的说明。图1为本发明方法流程示意图。图2为本发明结构的示意图。图3为本发明一实施例独立验证的示意图。图4为本发明一实施例协同验证的示意图。
具体实施方式请参阅图1至图4所示,对本发明的实施例进行详细的说明。如图1,本发明一种方法,包括如下步骤步骤10、使用模拟行为模型产生的数据 流,进行各个子模块的独立验证,每个子模块输出端设有数据采集模型用于采集并记录数 据流,用于与正确结果进行比较,判断数据流是否正确,若正确则进入下一步骤,若错误则 修正完后,继续独立验证;步骤20、使用真实的数据流,进行各个子模块的协同验证,所有 子模块组成整体IP,可以仿真整个IP在实际应用中各个子模块的协同工作情况,通过输 出数据采集模型采集IP总体运算数据,判断总体运算数据是否正确,若错误则进入下一步 骤;若正确,则结束验证;步骤30、通过上述各子模块输出端的数据采集模型采集数据流, 根据数据流错误的位置找出所有可能出错的子模块进行独立验证,若验证错误则修正,直 到所有可能出错的子模块都验证正确;步骤40、在错误的子模块修正问题期间,其他子模 块使用该子模块的模拟行为模型来替代该子模块,以此进行自己的独立验证,将所有的子 模块重新加入协同验证平台进行协同验证,回到步骤20。如图2,本发明一种结构,所述IP包括复数个子模块,如模块A、模块B、模块C,所 述IP的输入端设有激励信息产生模型,所述IP的输出端设有输出数据采集模型,每两个 子模块之间都设有一数据采集模型,每两个子模块之间设有一模拟行为模型,每两个子模 块之间还设有一通路选择器,所述通路选择器的一输入端和输出端用于连接原始数据流通 路,另一输入端连接对应的模拟行为模型,所述每两个子模块之间的数据采集模型用于采 集前一子模块到后一子模块的数据信息。所述每两个子模块之间的数据采集模型用于采集 前一子模块到后一子模块的数据信息,如A- > B数据采集模型,负责采集模块A到模块B 的数据流的数据。所述每两个子模块之间的模拟行为模型用于模拟前一子模块到后一子模 块的行为,如模拟A- > B行为模型,负责模拟模块A到模块B的行为。所述通路选择器通 过宏开关实现实际子模块或模拟行为模型产生的数据流之间的选择。本实施例,依次连接 的激励信息产生模型、模块A、A- > B通路选择器、模块B、B- > C通路选择器、模块C、输出 数据采集模型,所述模块A的输出端还连接A- > B数据采集模型、A- > C数据采集模型, 并通过一 A- > C通路选择器连接到模块C。所述模块B输出端连接B- > C数据采集模型。 所述A- > B通路选择器的输入端连接模拟A- > B行为模型,所述B- > C通路选择器的输 入端连接模拟B- > C行为模型,所述A- > C通路选择器的输入端连接模拟A- > C行为模 型。如图3,将个通路选择器选择模拟行为模型产生的数据流,使得激励信息产生模 型、模块A、A- > C数据采集模型、A- > B数据采集模型组成独立验证平台;模拟A- > B行 为模型、模块B、B- > C数据采集模型组成独立验证平台;模拟B- > C行为模型、模拟A- > C行为模型、模块C、输出数据采集模型组成独立验证平台,各模块之间不会互相影响。 如图4所示,在上述各个子模块验证结束后,开始第二阶段的协同联合验证,在协 同验证阶段,将通路选择器的通路选择都调整为使用实际模块输出的数据流;在此验证阶 段,所有子模块组成整体IP,可以仿真整个IP在实际应用中各个子模块的协同工作情况, 在验证时将所有子模块的输出端的数据采集模型打开,这样在仿真结束后数据采集模型会 输出该接口上的数据流记录,将该记录和参考正确结果进行比较,找到所有出错的接口,定位问题所在位置,最早出现错误的子 模块一定有错;在错误的子模块修正问题期间,其他子 模块可以使用该子模块的模拟行为模型来替代该子模块,以此进行自己的独立验证,在错 误的子模块的问题修正后,重新加入协同验证平台进行协同验证,进行新一轮的协同验证。
以上所述,仅为本发明较佳实施例而已,故不能依此限定本发明实施的范围,即依 本发明专利范围及说明书内容所作的等效变化与修饰,皆应仍属本发明涵盖的范围内。
权利要求
1.一种多人协同验证复杂IP的验证平台的方法,它包括独立验证阶段和协同验证阶 段,其特征在于,具体包括步骤10、使用模拟行为模型产生的数据流,进行各个子模块的独立验证,每个子模块输 出端设有数据采集模型用于采集并记录数据流,判断数据流是否正确,若正确则进入下一 步骤,若错误则修正后,继续独立验证;步骤20、使用真实的数据流,进行各个子模块的协同验证,通过输出数据采集模型采集 IP总体运算数据,判断总体运算数据是否正确,若错误则进入下一步骤;若正确,则结束验 证;步骤30、通过上述各子模块输出端的数据采集模型采集数据流,根据数据流错误的位 置找出所有可能出错的子模块进行独立验证,若验证错误则修正,直到所有可能出错的子 模块都验证正确;步骤40、将所有的子模块重新加入协同验证平台进行协同验证,回到步骤20。
2.根据权利要求1所述的一种多人协同验证复杂IP的验证平台的方法,其特征在于 步骤30进一步包括在错误的子模块修正问题期间,其他子模块使用该子模块的模拟行为 模型来替代该子模块,以此进行自己的独立验证。
3.一种多人协同验证复杂IP的验证平台的结构,所述IP包括复数个子模块,所述IP 的输入端设有激励信息产生模型,所述IP的输出端设有输出数据采集模型,其特征在于 每两个子模块之间都设有一数据采集模型,每两个子模块之间设有一模拟行为模型,每两 个子模块之间还连接有一通路选择器,所述通路选择器的一输入端和输出端用于连接原始 数据流通路,另一输入端连接对应的模拟行为模型;所述每两个子模块之间的数据采集模 型连接于前一子模块的输出端,用于采集前一子模块到后一子模块的数据信息;所述每两 个子模块之间的模拟行为模型用于模拟前一子模块到后一子模块的行为。
4.根据权利要求3所述的一种多人协同验证复杂IP的验证平台的结构,其特征在于 所述通路选择器通过宏开关实现实际子模块或模拟行为模型产生的数据流之间的选择。
全文摘要
本发明提供一种多人协同验证复杂IP的验证平台的方法,包括如下步骤10、使用模拟行为模型产生的数据流,进行各子模块的独立验证;20、使用真实的数据流,进行各个子模块的协同验证;30、通过各子模块的数据采集模型采集的数据流,定位问题所在位置,并修正;40、各子模块重新进行协同验证。一种采用所述方法的结构,所述IP包括复数个子模块,它的输入端设有激励信息产生模型,输出端设有输出数据采集模型,每两个子模块之间都设有一数据采集模型,一模拟行为模型,一通路选择器,所述通路选择器用于连接原始数据流通路,并且一输入端连接对应的模拟行为模型。本发明提高了验证的效率,减少验证时间。
文档编号G06F11/26GK102053894SQ20101059590
公开日2011年5月11日 申请日期2010年12月17日 优先权日2010年12月17日
发明者廖裕民 申请人:福州瑞芯微电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1