BFM应该描述的是具有某种具体功能的电路。比如说,你的待测电路是一个智能卡,那他的BFM就是读卡器;那你就要根据协议,在BFM中描述出读卡器的具体行为。
写BFM就类似于写testbench了。BFM里面有需要主动触发的动作,以及被动接受的动作。主动触发的动作,你写成task,
这样方便在testcase中调用。被动触发的动作,你在BFM里面直接写成电路就可以了。当然你可以灵活处理。

以下是闲话:
我觉得你可能不知道怎末对电路写测试。
我认为测试分为两部分:1 功能分析;2 testbench编写
1 功能分析
你在编写测试之前,要仔细分析电路有哪些功能,并对这些功能分类。哪些是必须测的(must),哪些是应该测的(should),
哪些是最好测的(Nice to do)。然后,你将功能相近的feature分为一类,你可以用一个testcase来测试。
2 testbench
当testcase分类完毕,你就开始琢磨怎么写testbench了。testbench要能够提供所有激励,并且能够将激励传播到待测电路中,而且能够侦测错误。

另外,测试编写完毕了,测试通过了并不是就万事大吉了。通常,有些东西是工程师没想到的问题,而导致测试不全面。
这些就需要我们不断扩大知识面了。要特别提醒的是复位测试,复位和时钟的配合,跨时钟域的处理等。
啰嗦了一大堆,希望对你有点帮助。

BFM1的更多相关文章

  1. 阿里云ECS部署maven项目

    1.配置JDK和tomcat: https://www.cnblogs.com/congcongdi/p/11227771.html 2.使用eclipse打包项目 在项目上点击右键-->run ...

随机推荐

  1. [HDU 1203] I NEED A OFFER!

    I NEED A OFFER! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)T ...

  2. 常用的MAVEN公共私服

    flex-mojo http://repository.sonatype.org/content/groups/flexgroup flex相关 http://nexus.5amsolutions.c ...

  3. JZ2440开发笔记(7)——2440启动方式

    JZ2440的启动方式有两种,一种是从NOR FLASH中启动,还有一种就是从NAND FLASH中启动. 如果从NOR FLASH启动,CPU会访问NOR FLASH的0地址,而0地址位于BANK0 ...

  4. libcurl断点下载

    开发需要写了一个处理curl 下载的c++类,内含有多个静态方法和实例方法,写在这里留给有需求的同学 头文件 CURLHelper.h enum CURLHelperStateType { CURLH ...

  5. linux驱动程序之电源管理之标准linux休眠与唤醒机制分析(一)

    1. Based on linux2.6.32,  only for mem(SDR) 2. 有兴趣请先参考阅读: 电源管理方案APM和ACPI比较.doc Linux系统的休眠与唤醒简介.doc 3 ...

  6. android用ImageView显示网络图片

    1.权限配置 <</SPAN>uses-permission android:name="android.permission.INTERNET"/> .c ...

  7. HW4.36

    import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner i ...

  8. Codeforces13C–Sequence(区间DP)

    题目大意 给定一个含有N个数的序列,要求你对一些数减掉或者加上某个值,使得序列变为非递减的,问你加减的值的总和最少是多少? 题解 一个很显然的结果就是,变化后的每一个值肯定是等于原来序列的某个值,因为 ...

  9. oc学习之路----APNS消息推送从证书到代码(2015年4月26号亲试可用)

    前言:看这篇博客之前要准备:首先的有一个99刀的个人开发者账号或者199刀的企业开发者账号,其次你用的是apns消息推送,(本人之前四处打听有没有其他消息推送的方法:收获如下:首先如果想做到apns的 ...

  10. MyEclipse高效开发之必备快捷键技能

    学习了Java之后,使用MyEclipse开发已经有一段时间了,奈何MyEclipse的界面是英文版的,很多功能都不了解,对于那些英文,每次在调程序的时候,都需要一个一个的查,效率很是低下.于是,就想 ...