验证环境初步搭建(3)
1、接口连接,DUT访问成功
EXTIN和TIMERINT放在timer的接口中;DUT与tb做好连接后,编译一下看下是否通过;编译通过,表明对DUT访问成功了,接下来准备发送激励;
2、发送激励
首先要想发送一下激励的话,需要定义一些sequence,而且激励要从apb的write和read发生,随后要把相应的sequence挂载到sequencer上。
建立base_sequence,把基本的公共的事务放这这里完成,`uvm_declare_p_sequencer宏完成seq到sqr的挂载;compare_data对数据比较,根据比较的结果进行一个正确的or错误的计数;
建立integration_sequence,想法是通过这个seq通过宏`uvm_do_on_with挂载到sqr的方式,把timer寄存器的访问通;
apb_master_single_write_sequence会首先发起request请求,通过get_response得到rsq,然后完成数据写入;通过读取APB总线的data,再与写入的data进行比较;
分别对寄存器CTRL和RELOAD做访问;对CTRL写入一个初始值4'hF,因为CTRL虽然是32bit的,但是只有后四位有效,通过`uvm_do_on_with写进去和读回来,进行compare;对RELOAD做初始值(特征值)'haabbccdd,同样最后做一个比较;