TB平台搭建之一

最近在搭建公司的testbench,主要有一下总结:
1.TB主要有两部分:部分一,软件部分主要用C写的,她的作用是写硬件的驱动(其实就是让核的外围设备可以正常工作或工作到特定的环境上)甚至有可能写整个系统的bootloader(嵌入式)。部分二,verilog或systemverilog部分,她的作用可以时gen active / send trans/check /monitor....或者控制整个仿真的流程比如verify start /verify end
2.需要注意一点:如何让自己的软件部分跟.v/.sv部分正常的沟通。起码让verilog/systemverilog 知道.c运行到那个阶段了,时编译成功了,是配置成功了,是写入成功了,还是读取成功了...等等。.v/.sv知道了 .c的进度才可以对整个的仿真流程合理的控制,进一步做check或打印一些提示字符串,以方便进行debug。
3.平台搭建初期要尽可能的简单,代码量要少,机制要简单,这样方便debug.随着平台主要流程正确了,再丰富平台内容,让平台更加智能化,可维护化。
4.在debug时,需要读懂汇编文件(主要是.list文件/.hex文件和编译日志)和AMBA总线时序要完全掌握。还有就是需要一种方法可以立即定位到错误的地方。
我才用的方法是:如何check时发生错误,直接在.c中改变一个不常用的寄存器的值。如果在波形(Nwave)中看到这个reg值发生变化说明此处出错。当然也可以借此把错误的地址直接写入到该register中,跟方便debug 。

转载于:https://www.cnblogs.com/chip/p/3969719.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值