进程与线程
1、system verilog中,进程之间的同步不可以采用(Semaphore),可以采用(Event, Mailbox, Fork/join).
解析:Semaphore是一种线程仲裁结构,不能用关于内部事件同步。
测试点与测试用例
1、测试用例是用来覆盖测试点的,一个用例只能覆盖一个测试点(错误)。
解析:用例和测试点不是一一对应的。一个用例可以用来覆盖多个测试点。一个测试点有时候也需要多个用例来覆盖。比如测试FIFO的两个测试点:1.空信号生成 2.满信号生成,使用一个测试用例,在复位之后发出FIFO深度相同数量的写数据,不进行读。一个用例就能同时检测到空信号和满信号覆盖两个测试点。
形式(formal verification)验证
1、(形式验证)是一张系统验证手段,通过它来判断两个设计是否等价,从而判断一个设计在修改前后的功能是否保持一致。
解析:形式验证formality主要应用在:1.RTL与综合网表的比对。因为主要的测试用例都是基于RTL,RTL修改简单,迭代速度快,是一切功能的源头。保证了RTL仿真的正确性加上RTL与网表的形式验证,基本可以保证RTL测试过的测试点在网表阶段没有问题。2. 网表与网表比对:物理实现各阶段网表功能一致性(综合->时钟树->布局布线->TIMING/DRC ECO)。如果有功能ECO,保证ECO之后的网表功能与ECO之前的网表一致也是必不可少的,因为基于网表的修改风险较大,也更不可控,人为确认不够稳。
2、形式验证(formalverification)不存在验证覆盖率的问题,其目的是为了比较两个design的功能,