CN102147829A - 一种ic功能验证方法 - Google Patents
一种ic功能验证方法 Download PDFInfo
- Publication number
- CN102147829A CN102147829A CN 201110076442 CN201110076442A CN102147829A CN 102147829 A CN102147829 A CN 102147829A CN 201110076442 CN201110076442 CN 201110076442 CN 201110076442 A CN201110076442 A CN 201110076442A CN 102147829 A CN102147829 A CN 102147829A
- Authority
- CN
- China
- Prior art keywords
- state
- state machine
- sequential chart
- sequence
- verification method
- 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.)
- Pending
Links
Images
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本发明提出了一种新型的IC功能验证方法。它基于待测模块的设计规范中反映待测模块外部特性的接口时序图以及反映其内部状态的内部寄存器的配置信息,建立有限状态机(Finite State Machine)模型,然后遍历有限状态机中的状态,同时通过对用户较关心的有向环路和关键路径增加循环参数设置,从而实现了较高的功能覆盖率。最终的目的在于以较少的验证向量数目获取较多的功能验证覆盖,从而提高验证工作效率,降低验证成本,增加设计可靠性,缩短产品上市时间。
Description
技术领域
本发明涉及大规模数字集成电路设计与验证领域,特别涉及一种大规模集成电路功能验证的方法。
背景技术
目前,IC功能验证方法包括静态验证和动态验证两大类。
静态验证主要指形式验证,它是通过数学的方法手段证明设计目标和待测模块之间的等价性。它不用灌入激励,可以给出完整的覆盖率,但是它并不能取代模拟仿真,因为在当前技术条件下,它只能应用处理于规模较小的设计。
动态验证是指基于模拟仿真的验证方法,现在采用的主要方法有两种:向量穷举法和随机向量生成法。向量穷举法示例如图1,它是通过往端口灌入所有可能的激励,在验证向量的全集上检查待测模块的正确性。这种方法理论上可以达到100%的覆盖率,但由于向量全集的元素数目随着输入端口的个数呈指数规律增长,这样在待测设计达到一定规模的时候,穷举算法会因为向量数目的急剧增加而引起内存空间的爆炸,对于现在动辄千万门级的集成电路来讲,穷举算法就变得相当地不现实。而随机向量生成法示例如图2,它是由随机向量生成器(Random Vector Generator)根据一定的算法,随机产生验证向量,灌入待测模块的方法。理论上,在数目很大的时候,验证向量服从统计规律分布,它收敛于检验待测模块所有功能的验证向量的全集。但是,这种方法由于一方面取决于随机向量生成算法的好坏,另一方面对验证向量的数目也有一定要求,比如,不能造成内存空间爆炸等,所以可达到的功能覆盖率就常不能得到有效的保证,并且也没有办法去衡量已经产生的向量所达到的功能覆盖情况。
发明内容
针对目前IC验证领域内对于保证、提高功能覆盖率的客观要求,本发明提出了一种新型的IC功能验证流生成方法。它基于待测模块的设计规范中反映待测模块外部特性的接口时序图以及反映其内部状态的内部寄存器的配置信息,建立有限状态机(Finite State Machine)模型,然后遍历有限状态机中的状态,同时通过对用户较关心的有向环路和关键路径增加循环参数设置,从而实现了较高的功能覆盖率。最终的目的在于以较少的验证向量数目获取较多的功能验证覆盖,从而提高验证工作效率,降低验证成本,增加设计可靠性,缩短产品上市时间。
图3是我们实施技术路线的架构框图。它是以覆盖率为导向,以事件(Event)作为驱动,约束验证激励的生成方法。验证向量流将对应于待测模块的验证场景,即用事务(Transaction)的概念来提升验证工作的抽象层次,通过将信号级别(Signal Level)的验证工作提升到事务级别(Transaction Level),从更高的层次分析验证向量的产生问题,可以更全面有效地处理验证过程中面对的结构化资源,从而提高了验证的性能。
本发明为实现其目的而采用的技术方案是:一种IC功能验证方法,其特征在于:包括以下步骤:
步骤A:把待测设计内部寄存器配置信息和外部接口时序统一成一个归一化的时序图;
步骤B:利用抽象时序图去描述由步骤A得到的归一化时序图;
步骤C:将抽象时序图转换为可操作的有限状态机结构;
步骤D:遍历有限状态机产生事件序列;
步骤E:把事件序列对应到具体的向量组。
进一步的,上述的一种IC功能验证方法中:所述的步骤A中,所述的待测设计内部寄存器配置信息是按下面步骤完成与外部接口时序统一成一个归一化时序图的:
步骤A1:在外部接口时序中额外引入一组与所述待测设计内部寄存器位长相等,并且以内部寄存器名称命名的数据线,而内部寄存器的配置即为该组数据线的取值;由此引入待测模块的若干工作模式均作为数据线取值后的当前或者下一个状态,得到了新的涵盖待测模块内、外部信息的时序图。
进一步的,上述的一种IC功能验证方法中:所述的步骤B中:所述的抽象时序图对于同步时序来说,是指以一拍或者多拍内各信号线的一个或多个的值来共同描述一个事件的一种时序图;而对于异步时序,则是依从事件间的相对关系,依旧是采用各信号线的一个或多个的值,来共同描述同一个事件的时序图。
进一步的,上述的一种IC功能验证方法中:在步骤C中,有限状态机中有向图的存储为邻接表表示法。
进一步的,上述的一种IC功能验证方法中:在步骤D中:产生的事件序列具有如下特点:
生成的一组验证序列中,必须保证使状态机的每个状态都能够到达;
生成的验证序列必须遍历具有前驱和后继关系的状态之间的转换;
对某些带有有向环路的关键路径设定循环参数。
进一步的,上述的一种IC功能验证方法中:在步骤D中:针对无有向环路的状态机,遍历是从某个顶点出发,沿着某条搜索路径对图中所有顶点作一次访问,按如下步骤完成遍历有限状态机产生事件序列的:
D01、定义状态机数据结构;
D02、定义状态变量;
D03、定义步骤D02中的某一个变量为初始状态,另一个变量为结束状态;所述的初始状态没有前驱,所述的结束状态没有后继点;
D04、寻找所有以初始状态为起点,经过状态转换后可以到的第一状态集合;
D05、以所有以步骤D04中的第一状态集合中的元素为起点,经过状态转换后可以到的第二状态集合;
D06、对所有的状态变量重复步骤5,寻找所有的状态转换路径。
D07、通过递归算法,输出所有可能的状态转换路径。
进一步的,上述的一种IC功能验证方法中:在步骤D中:针对存在有向环路的有限状态机,在D06步骤后,进行以下步骤:
D11、删除有限状态机图所有到达被标记顶点的有向边,并以<Vj,Vi>的形式记录这样的有向边,Vj代表有向边所指向的节点,Vi代表有向边的发出节点;设定对该有向环的循环次数,即由起始节点走完所有的循环路径,循环设定次数后,走完至路径指定的结束节点;
D12、重复步骤D11,路径按拓扑排序输出。
进一步的,上述的一种IC功能验证方法中:在步骤D中:运用算法自动遍历状态机,对关键的读写操作和中断请求应答环路设定适当的循环次数。
进一步的,上述的一种IC功能验证方法中:在步骤E中,具体实现是在程序里面增加一个Event字符数组,每一个元素用每一个事件所对应的向量字符初始化。
本发明的这种方法的验证对象是以RTL或者Gate-Level表达的设计描述,它基于待测模块的设计规格书(Specification),根据其中反映待测模块外部特性的接口时序图以及反映其内部状态的内部寄存器的配置信息,得到了具有统一格式的抽象时序图;然后利用有向图存储的数据结构,由抽象时序图中提取事件作为节点,具有前后关联的事件作为有向图中连接具有前驱后继关系的有向边,从而在内部自动地生成有限状态机;最后根据我们提出的对状态机遍历的两点基本假设,同时对用户较为关心的关键路径和边角向量设置循环参数n,对生成的有限状态机作遍历,得到期望的验证序列。由于用户可以在自己比较关心的那一部分功能特性方面和计算机做交互,能够有效地控制生成的验证向量内容,从而实现了测试向量的高覆盖率。
附图说明
图1是向量穷举法示意图。
图2是随机向量生成算法环境示意图。
图3是本发明实施技术路线的架构框图。
图4是一个包含寄存器配置信息的典型接口时序。
图5是用抽象时序图描述的I2C总线一次完整的数据传送过程。
图6是实施例中一个系统内部转换的抽象接口时序图。
图7是由I2C总线协议得到的Master模式的有限状态机。
图8是I2C总线协议中事件数组的初始化值。
图9是I2C Master模块的架构框图。
具体实施方式
根据本发明方法的方案技术路线架构,下面结合具体实施例作进一步详细说明,此处所描述的具体实施例不是对本发明的限定,而是对本发明的解释,具体实施方式如下:其流程如图3所示。
1、把待测设计内部寄存器配置信息和外部接口时序统一成一个归一化的时序图。
该步骤的关键是把内部寄存器配置归并入外部接口时序图。
我们的已知是待测模块接口规范中的反映其外部特性的接口时序图以及反映其内部状态的寄存器的配置信息。为了实现统一,我们希望把寄存器配置信息也归并入外部接口时序中,得到能够同时反映待测模块内外部信息的新的时序图。为了实现这一要求,我们可以在外部接口时序中额外引入了一组与该寄存器位长相等,并且以寄存器名称命名的数据线,而寄存器的配置即为该组数据线的取值,由此引入待测模块的若干工作模式均可作为数据线取值后的当前或者下一个状态。这样就得到了新的涵盖待测模块内外部信息的时序图。图4所示即为一个把寄存器配置信息归并入外部接口时序图中的例子。
图中MOD为待测模块内部一位的工作模式寄存器,当其值为0时为工作模式一,为1时为工作模式二,这样我们就可以把一个以MOD命名的端口添加到接口时序中,构成了新的包含了寄存器配置信息的接口时序。该端口在不同工作模式下面会具备不同的值。
2、利用抽象时序图去描述由上面得到的归一化时序图;
我们希望得到反映待测模块状态转换的有限状态机,这是无法直接从图形描述的接口时序中得到的。所以,我们提出抽象时序图的概念,作为二者之间的桥梁和纽带。
抽象时序图对于同步时序来说,是指以一拍或者多拍内各信号线的一个或多个的值来共同描述一个事件(Event)的一种时序图;而对于异步时序,则是依从事件间的相对关系,依旧是采用各信号线的一个或多个的值,来共同描述同一个事件的时序图。所以,抽象时序图是以事件为基本单位的。
图5所示的,是用抽象时序图描述的I2C总线一次完整的数据传送过程的例子。包括“开始信号”、“从地址信号”、“读写信号”、“应答信号”、“传输数据信号”以及“停止信号”等事件。图6则是由一个测模块的Spec所得出的系统内部转换的抽象接口时序图。包括“写模式有效信号”、“写入数据”、“中断信号”、“读有效信号”以及“输出数据”等事件,图中以方框表示出一条或者多条信号线的取值是对应于同一个事件。以上可以看出抽象时序图的特点是引入了一个个事件。
3、从抽象时序图到有限状态机
表示有限状态机的状态转换图是一种有向图(Directed Graph)。在有向图中,边都是单向的:将定义的每条边的顶点对看作是一个有序对,它指定了一个单向邻接,我们可以从首顶点到次顶点,但是却不能从次顶点到首顶点。在有限状态机,每一条边都是由当前状态指向转换后的下一个状态的有向边。借助计算机的处理,从有限状态机模型出发可以得到高效的功能验证流,而这需要寻求一种存储结构。在图论中,有向图的存储有两种主要的结构,它们分别是邻接矩阵表示法和邻接表表示法,由于是有关于图的计算机存储规模和运算效率,因此可选择邻接表表示法。
根据图论中的邻接表建立和存储结构,如果得到有向图所有有向边的顶点的个数以及输入所有的顶点对<i,j>,即可在计算机内部存储该状态转换图。而已经得到的抽象时序图,恰恰表明了抽象事件间的前驱和后继关系,也就是每个有向边的前后顶点。抽象时序图架设了从原时序图到状态转换图之间的桥梁,而事件1和它的后继态事件2共同组成状态图的输入点对<i,j>。
图7示出了根据I2C总线协议,经过我们的前三个步骤所得到的Master模式的有限状态机。从状态机可以任意分离出一条状态转移路径作为实际验证的输入向量路径,比如空闲(Idle)->开始(Start)->从地址(SlaveAddress)->从应答(Slave Ack)->写数据(Write Date)->应答(Ack)->停止(Stop)->空闲(Idle)。我们可以先把该状态机的数据结构存储起来,以方便下一步的操作。
4遍历有限状态机产生事件序列
(1)状态机遍历的两个基本假设
对于一个待验证模块来讲,验证工程师不仅要面对外部接口的组合逻辑问题,更要面对内部寄存器同时作用的时序逻辑问题,系统达到的状态数与系统本身的尺度远远不止是指数关系。为了实现对系统的全面验证,我们提出了遍历的两个基本假设:
第一,生成的一组验证序列中,必须保证使状态机的每个状态都能够到达。我们假设每一个状态都有前驱或者是后继,即图是连通的,则从图中某一个顶点出发可以访问到图中所有顶点,否则只能访问到一部分顶点。
第二,生成的验证序列必须遍历具有前驱和后继关系的状态之间的转换。
在此基础上,我们同时对某些带有有向环路的关键路径设定循环参数n,以最大程度的满足覆盖率要求。
(2)有限状态机的遍历算法
图的遍历是从某个顶点出发,沿着某条搜索路径对图中所有顶点作一次访问,我们分两种情况处理可能遇到的状态机:
第一,针对无有向环路的状态机
我们采用以下算法来实现对有限状态机的遍历,生成所有期望的验证向量序列:
1)定义状态机数据结构
2)定义状态变量
s_start,s_1,s_2,...s_p,...s_i,...s_q,...s_end;
3)定义变量s_start为初始状态(如果状态机的初始态不止一个,则假定这些初始态有一个共同的虚拟前驱s_start,这只需要在最后生成的向量序列中共同删去该虚拟前驱即可),s_end为结束状态(如果状态机的结束状态不止一个,则假定这些结束状态有一个共同的虚拟后继s_end,这只需要在最后生成的向量序列中共同删去该虚拟后继即可)。限定只有s_start状态没有前驱节点。(任意状态转换必须从s_start开始),只有s_end状态没有后继节点(任意状态转换必须到s_end结束)。
4)首先,寻找所有以s_start为起点,经过状态转换后可以到的状态集合,记作
5)寻找所有以trans_s_start{s_p,s_i,s_q,...}中的元素为起点,经过状态转换后可以到的状态集合,记作
6)对所有的状态变量重复步骤5,寻找所有的状态转换路径。
7)通过如下递归算法,输出所有可能的状态转换路径:
第二,针对存在有向环路的有限状态机
事实上,任何一条测试序列在产生Stop信号结束以后,都在Idle状态等待着新的Start信号的到来。从这一意义上来说,所有的有限状态机都有从Stop到Idle(或者Start)的一条路径,从而使其闭合成为有向环路,也就是说所有的有限状态机都是存在有向环路的。只有针对有向环路,控制关键路径经过的次数,才能真正意义的有效地控制验证向量的质量,实现高的功能覆盖率。对于存在有向环路的状态机图,删除图中所有到达被标记顶点的有向边,并以<Vj,Vi>的形式记录这样的有向边,其中Vj代表有向边所指向的节点(终点),Vi代表有向边的发出节点(起点)。如此发现有向环后,根据用户关心程度可以设定对该有向环的循环次数n,即由起始节点走完所有的循环路径,循环n次以后,按先前规则继续走完至路径指定的结束节点。
现已用C++实现了对包括检测状态机中的有向环,存入有向环数组并输出它,用户针对打印的有向环与计算机交互,设定某个有向环路的循环次数,打印循环后的事件序列等功能。工程包括6个文件,它们分别是:mysearch3.h,mysearch3.c,FindLoop.h,FindLoop.c,LSH.h,LSH.c。其中mysearch3.h和mysearch3.c文件根据实际情况建立并在计算机内部存储链表,main函数也在里面,它控制输出检测到的有向环路,同时和用户交互,由用户设定每个环的循环参数。FindLoop.h,FindLoop.c文件从有向图中搜索有向环,并把它们保存在有向环数组里,同时对每一行排序,方便在循环时候对次数的判定。LSH.h,LSH.c文件实现遍历状态机,同时根据用户设定,对遇到的有向环路作多次循环,得到向量序列。
5把算法生成的验证序列对应到具体向量组
对状态机遍历得到的是一系列Event组成的序列,我们还需要把它们映射成为实际信号组中的向量值,这样才可以得到具体的输入序列。实际信号和抽象事件的对应关系在第二步生成抽象时序图时就已经建立了。因此现在只要做个对应的映射动作即可生成期望的验证序列。这个步骤的具体实现是在程序里面增加一个Event字符数组,每一个元素用每一个事件所对应的向量字符初始化。我们只要把由程序产生的数字序列作为Event数组的索引值,就可以输出具体的向量组。图8所示即为I2C总线协议中事件数组的初始化值。
作为本发明的实际应用,现举例对一个OpenCore上的I2C/WISHBONE传输接口转换模块搭建测试平台(Testbench),由产生的验证向量进行验证。
I2C Master模块的架构框图如图9所示:主要内部模块包括时钟产生器(Clock Generator),字节命令控制器(Byte Command Controller),位命令控制器(Bit Command Controller)和数据交换寄存器(DataIO Shift Regis ter),所有其他的模块都是用来作为接口或是暂存数据。其中ByteCommand Controller在Byte级别上处理I2C通讯事务,它从Command Register里取得数据,并把数据翻译成基于传输的单个序列,这主要是通过在Command Register里面设置Start,Stop和Read位来完成操作的。
完整的验证环境中:向量生成器(Vector Generator)产生验证向量,经I2C总线功能模型(BFM)传输至从模块(Slave Core),进行读写操作。
根据接口协议和接口时序,我们提取出若干个事件,生成有限状态机。事件和验证向量的对应关系如下:
Transaction 1:产生“开始”+“写”命令信号+“从地址+写信号”数据;
Transaction 2:等待,直到数据传输结束;
Transaction 3:产生“写”命令信号+“从模块存储器地址”数据;
Transaction 4:产生“写”命令信号+“待传送数据”数据;
Transaction 5:产生“停止”命令信号;
Transaction 6:产生“开始”+“写”命令信号+“从地址+读信号”数据;
Transaction 7:产生“读”命令信号和“读”应答信号;
Transaction 8:检验接受到的数据;
Transaction 9:产生“读”命令信号和“读”非应答信号;
Transaction 10:状态寄存器指示非应答状态下的测试;
运用算法自动遍历状态机,对关键的读写操作和中断请求应答环路设定适当的循环次数,以提高覆盖,进而产生一系列的验证序列。
对于一个写操作验证序列,包含上述若干事件的组合:
Trans1+Trans2+Trans3+Trans2+(Trans4+Trans2+Trans4+Trans2……+Trans4+Trans2)(n个)+Trans5+Trans2
对于一个读操作验证序列,包含的事件组合为:
Trans1+Trans2+Trans3+Trans2+Trans6+Trans2+(Trans7+Trans2+Trans8+Trans7+Trans2+Trans8+……+Trans7+Trans2+Trans8)(n个)+Trans9+Trans2+Trans8
为了重点验证主模块(Master Core)对从模块的读写操作,我们设置读写循环参数为20次,分别对从模块地址作从1到20次的读写操作,把激励打入DUT从模块后观察输出的波形,对生成的验证激励作了覆盖率评估。
由上述实例效果可以看出本发明方法具有产生验证向量速度快,生成有效验证向量比率大,功能覆盖较完整等特点,能很好地满足保证验证覆盖率的要求。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制约束,虽然本发明已以较佳实施例揭露如上所述,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的方法及技术内容做出些许的更动或修饰为等同变化的等效实施例,但是凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围。
Claims (9)
1.一种IC功能验证方法,其特征在于:包括以下步骤:
步骤A:把待测设计内部寄存器配置信息和外部接口时序统一成一个归一化的时序图;
步骤B:利用抽象时序图去描述由步骤A得到的归一化时序图;
步骤C:将抽象时序图转换为可操作的有限状态机结构;
步骤D:遍历有限状态机产生事件序列;
步骤E:把事件序列对应到具体的向量组。
2.根据权利要求1所述的一种IC功能验证方法,其特征在于:所述的步骤A中,所述的待测设计内部寄存器配置信息是按下面步骤完成与外部接口时序统一成一个归一化时序图的:
步骤A1:在外部接口时序中额外引入一组与所述待测设计内部寄存器位长相等,并且以内部寄存器名称命名的数据线,而内部寄存器的配置即为该组数据线的取值;由此引入待测模块的若干工作模式均作为数据线取值后的当前或者下一个状态,得到了新的涵盖待测模块内、外部信息的时序图。
3.根据权利要求1所述的一种IC功能验证方法,其特征在于:所述的步骤B中:所述的抽象时序图对于同步时序来说,是指以一拍或者多拍内各信号线的一个或多个的值来共同描述一个事件的一种时序图;而对于异步时序,则是依从事件间的相对关系,依旧是采用各信号线的一个或多个的值,来共同描述同一个事件的时序图。
4.根据权利要求1所述的一种IC功能验证方法,其特征在于:在步骤C中,有限状态机中有向图的存储为邻接表表示法。
5.根据权利要求1所述的一种IC功能验证方法,其特征在于:在步骤D中:产生的事件序列具有如下特点:
生成的一组验证序列中,必须保证使状态机的每个状态都能够到达;
生成的验证序列必须遍历具有前驱和后继关系的状态之间的转换;
对某些带有有向环路的关键路径设定循环参数。
6.根据权利要求5所述的一种IC功能验证方法,其特征在于:在步骤D中:针对无有向环路的状态机,遍历是从某个顶点出发,沿着某条搜索路径对图中所有顶点作一次访问,按如下步骤完成遍历有限状态机产生事件序列的:
D01、定义状态机数据结构;
D02、定义状态变量;
D03、定义步骤D02中的某一个变量为初始状态,另一个变量为结束状态;所述的初始状态没有前驱,所述的结束状态没有后继点;
D04、寻找所有以初始状态为起点,经过状态转换后可以到的第一状态集合;
D05、以所有以步骤D04中的第一状态集合中的元素为起点,经过状态转换后可以到的第二状态集合;
D06、对所有的状态变量重复步骤5,寻找所有的状态转换路径。
D07、通过递归算法,输出所有可能的状态转换路径。
7.根据权利要求5所述的一种IC功能验证方法,其特征在于:在步骤D中:针对存在有向环路的有限状态机,在D06步骤后,进行以下步骤:
D11、删除有限状态机图所有到达被标记顶点的有向边,并以<Vj,Vi>的形式记录这样的有向边,Vj代表有向边所指向的节点,Vi代表有向边的发出节点;设定对该有向环的循环次数,即由起始节点走完所有的循环路径,循环设定次数后,走完至路径指定的结束节点;
D12、重复步骤D11,路径按拓扑排序输出。
8.根据权利要求1所述的一种IC功能验证方法,其特征在于:在步骤D中:运用算法自动遍历状态机,对关键的读写操作和中断请求应答环路设定适当的循环次数。
9.根据权利要求1所述的一种IC功能验证方法,其特征在于:在步骤E中:具体实现是在程序里面增加一个Event字符数组,每一个元素用每一个事件所对应的向量字符初始化。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110076442 CN102147829A (zh) | 2011-03-29 | 2011-03-29 | 一种ic功能验证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110076442 CN102147829A (zh) | 2011-03-29 | 2011-03-29 | 一种ic功能验证方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102147829A true CN102147829A (zh) | 2011-08-10 |
Family
ID=44422092
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110076442 Pending CN102147829A (zh) | 2011-03-29 | 2011-03-29 | 一种ic功能验证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102147829A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102737143A (zh) * | 2012-04-09 | 2012-10-17 | 李姮乐 | 一种数字集成电路设计的验证方法 |
CN104462674A (zh) * | 2014-11-25 | 2015-03-25 | 三星半导体(中国)研究开发有限公司 | 验证芯片设计的方法 |
CN105160163A (zh) * | 2015-08-24 | 2015-12-16 | 珠海格力电器股份有限公司 | 一种用于机组的覆盖度测试方法、装置和系统 |
CN106339287A (zh) * | 2016-08-29 | 2017-01-18 | 成都科鸿达科技有限公司 | 一种io高效检测大规模系统环路方法 |
CN107861850A (zh) * | 2017-11-30 | 2018-03-30 | 瑞斯康达科技发展股份有限公司 | 一种中断验证系统及其使用方法、计算机设备、存储介质 |
CN109144806A (zh) * | 2017-06-19 | 2019-01-04 | 合肥君正科技有限公司 | 一种寄存器传输级电路的功能验证方法及装置 |
CN109933880A (zh) * | 2019-03-06 | 2019-06-25 | 西安微电子技术研究所 | 基于配置驱动的SoC原型验证用例提取模型建模方法 |
CN112860609A (zh) * | 2019-11-26 | 2021-05-28 | 纳恩博(常州)科技有限公司 | 实现i2c通讯的方法和滑板车及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1031930A2 (en) * | 1999-01-19 | 2000-08-30 | Sun Microsystems, Inc. | Universal serial bus test system |
US20010041972A1 (en) * | 1999-03-04 | 2001-11-15 | Sun Microsystems, Inc. | Transaction class |
CN1507026A (zh) * | 2002-12-09 | 2004-06-23 | 刘建光 | 观测可编程数字集成电路芯片内部所有信号的方法和系统 |
CN101833606A (zh) * | 2010-03-30 | 2010-09-15 | 连志斌 | 一种集成电路设计验证方法 |
-
2011
- 2011-03-29 CN CN 201110076442 patent/CN102147829A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1031930A2 (en) * | 1999-01-19 | 2000-08-30 | Sun Microsystems, Inc. | Universal serial bus test system |
US20010041972A1 (en) * | 1999-03-04 | 2001-11-15 | Sun Microsystems, Inc. | Transaction class |
CN1507026A (zh) * | 2002-12-09 | 2004-06-23 | 刘建光 | 观测可编程数字集成电路芯片内部所有信号的方法和系统 |
CN101833606A (zh) * | 2010-03-30 | 2010-09-15 | 连志斌 | 一种集成电路设计验证方法 |
Non-Patent Citations (1)
Title |
---|
《北京大学学报》 20070120 孙钊、王勇 "芯片功能验证流的高效生成方法" 第92-95页 1-9 第43卷, 第1期 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102737143B (zh) * | 2012-04-09 | 2014-12-03 | 李姮乐 | 一种数字集成电路设计的验证方法 |
CN102737143A (zh) * | 2012-04-09 | 2012-10-17 | 李姮乐 | 一种数字集成电路设计的验证方法 |
CN104462674A (zh) * | 2014-11-25 | 2015-03-25 | 三星半导体(中国)研究开发有限公司 | 验证芯片设计的方法 |
CN104462674B (zh) * | 2014-11-25 | 2017-05-31 | 三星半导体(中国)研究开发有限公司 | 验证芯片设计的方法 |
CN105160163B (zh) * | 2015-08-24 | 2019-03-26 | 珠海格力电器股份有限公司 | 一种用于机组的覆盖度测试方法、装置和系统 |
CN105160163A (zh) * | 2015-08-24 | 2015-12-16 | 珠海格力电器股份有限公司 | 一种用于机组的覆盖度测试方法、装置和系统 |
CN106339287A (zh) * | 2016-08-29 | 2017-01-18 | 成都科鸿达科技有限公司 | 一种io高效检测大规模系统环路方法 |
CN109144806A (zh) * | 2017-06-19 | 2019-01-04 | 合肥君正科技有限公司 | 一种寄存器传输级电路的功能验证方法及装置 |
CN107861850A (zh) * | 2017-11-30 | 2018-03-30 | 瑞斯康达科技发展股份有限公司 | 一种中断验证系统及其使用方法、计算机设备、存储介质 |
CN107861850B (zh) * | 2017-11-30 | 2020-11-03 | 瑞斯康达科技发展股份有限公司 | 一种中断验证系统及其使用方法、计算机设备、存储介质 |
CN109933880A (zh) * | 2019-03-06 | 2019-06-25 | 西安微电子技术研究所 | 基于配置驱动的SoC原型验证用例提取模型建模方法 |
CN112860609A (zh) * | 2019-11-26 | 2021-05-28 | 纳恩博(常州)科技有限公司 | 实现i2c通讯的方法和滑板车及存储介质 |
CN112860609B (zh) * | 2019-11-26 | 2024-04-26 | 纳恩博(常州)科技有限公司 | 实现i2c通讯的方法和滑板车及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102147829A (zh) | 一种ic功能验证方法 | |
CN102799698B (zh) | 一种用于专用集成电路的时钟树规划的方法和系统 | |
CN101369001A (zh) | 用于调试可编程芯片的装置及现场可编程门阵列芯片 | |
CN105138769B (zh) | 一种用于可编程电路的时序模型生成方法及装置 | |
CN107436762A (zh) | 一种寄存器代码文件生成方法、装置和电子设备 | |
US11461523B1 (en) | Glitch analysis and glitch power estimation system | |
WO2021128169A1 (zh) | 芯片设计方法、芯片设计设备和存储介质 | |
CN104985939A (zh) | 一种激光打标机控制方法和激光打标机 | |
CN109977558A (zh) | 一种芯片寄存器代码结构的生成方法、装置及存储介质 | |
CN101719177B (zh) | 片上系统建模和仿真的方法及装置 | |
CN108804380A (zh) | 矢量运算硬件加速器多核级联的周期精确模型 | |
CN105408893B (zh) | 一种数据处理和写入方法及相关装置 | |
CN116029080A (zh) | 芯片存储装置设计及验证方法、装置及电子设备 | |
CN109583013A (zh) | 基于fpga的有源配电网实时仿真器输出模块设计方法 | |
CN102262703B (zh) | 用于智能变电站设计的图形及rdf模型构建方法 | |
CN117093438A (zh) | 测试系统 | |
CN107729601B (zh) | 仿真过程中配置ram的方法、装置及计算机存储介质 | |
Guo et al. | A SPI interface module verification method based on UVM | |
Ganai et al. | Efficient BMC for multi-clock systems with clocked specifications | |
US11430496B2 (en) | Phase-aware DDR command dynamic scheduling | |
CN205228473U (zh) | 一种基于现场可编程门阵列的微型导航计算机 | |
CN109885850B (zh) | 一种局部寄存器的生成方法及生成系统 | |
Vahid et al. | Towards a model for hardware and software functional partitioning | |
CN102411556B (zh) | 用于ip核的处理器接口自动生成方法 | |
CN109558110A (zh) | 数据转换装置及相关产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20110810 |