问题描述
在执行写入命令后,使用包含“reg_update()”命令的BFL代码在自定义IP上运行BFM仿真时,PLB监视器会发出以下消息:
“错误<PLB_MON> <0>错误1.5.2 M_BE,没有字节被启用用于非线路非突发传输:M [0] _request。
时间506250 ps迭代次数:3实例:/ bfm_system / bfm_monitor / bfm_monitor / monitor / monitor“
reg_update命令用于在虚拟模型(即PPC)中的寄存器填充其他地方之前使用的值。以下是IBM Bus Functional模型文档的摘录:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6.3.6 Reg_Update()命令
reg_update命令在解码和执行期间更新内部主寄存器
主总线命令。每个reg_update命令在一个PLB时钟周期内执行。
DST = [4字节]
此参数指定要更新的内部寄存器的32位目标寄存器。
示例:reg_update(R0 = 05060708)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
解决/修复方法
在BFL文件中移动update_reg命令,您将获得相同的效果,并且不会出现错误。这是一个例子:
– 前16个布局的设置数据(单笔交易)……
mem_update(addr = 40000000,data = 5555555555555555)
reg_update(R1 = 00000000)
– 写入前16个布局(单笔交易)……
写(addr = 40000000,size = SINGLE_NORMAL,be = DWORD)
read(addr = 40000000,size = SINGLE_NORMAL,be = DWORD)
发送(级别=停止)
没有回复内容