ominous2012的个人空间 https://blog.eetop.cn/934213 [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

ral1

已有 835 次阅读| 2016-1-13 19:53 |个人分类:ral

1.

 

寄存器由域组成,寄存器和memory组成blockblock对于独立的设计和验证组件。

Block组成系统。系统和block组成更大的系统。

 

寄存器可以通过CODEC.CONFIG.ADDR.read()方法访问,BFRmemory可以通过CODEC.BFR.write()访问。

 

2.ral提供寄存器的镜像,但是镜像值不一定一直与dut中寄存器的值保持一致。比如dut内部修改寄存器或寄存器域的值(比如设置状态寄存器或者计数器),此时镜像值就与dut的值不一致。

3.Ral模型会在寄存器每次读的时候更新镜像值,不论读操作是通过物理接口还是后门访问。

每次写操作,不论是通过物理接口还是后门操作,所写寄存器的新的镜像值将被预测基于寄存器的bit位的访问模式(pridicted based on the access modes of the bits in the register)。复位ral模式,进行值也会被复位为默认值。

4.可以通过以下函数0延时访问镜像值

vmm_ral_field::get()

vmm_ral_reg::get()

更新镜像值通过

vmm_ral_field::mirror()

vmm_ral_reg::mirror()

vmm_ral_block_or_sys::mirror()

更新镜像值得一个域,将会同时更新这个寄存器的其他域。

 

写镜像值通过以下函数

vmm_ral_field::set()

vmm_ral_reg::set()

一旦被写入镜像值,镜像值就不在能够和dut中的值保持一致,可以通过以下方法更新dut中的值

vmm_ral_reg::update()

vmm_ral_block_or_sys::update()

5.memory没有镜像值,只有被写操作过的mem被存储,没用的mem没用被建模。

6.用以下的函数可以提供和镜像值相似的功能

vmm_ral_mem::peek()

vmm_ral_mem::poke()


点赞

全部作者的其他最新日志

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 2

    粉丝
  • 0

    好友
  • 0

    获赞
  • 1

    评论
  • 529

    访问数
关闭

站长推荐 上一条 /1 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-5-21 18:13 , Processed in 0.026559 second(s), 15 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部