新闻  |   论坛  |   博客  |   在线研讨会
PFEA112-65 特殊的独占访问加载和存储指令
15359029662 | 2023-04-17 16:36:32    阅读:72   发布文章

PFEA112-65 特殊的独占访问加载和存储指令

PFEA112-65 3BSE050091R65 (5).jpg

经过进一步审查,这个最初的 AXI4 从实现被破坏了。实际上,如果对给定地址的独占访问操作可能成功,则从必须返回。EXOKAY

当您试图回答 CPU 应该对响应做什么的问题时,问题就出现了RRESP=OKAY如果 CPU 不将其视为 错误RRESP=OKAY那么它将陷入死循环! 因此,返回的独占访问请求必须 生成一个总线错误返回给 CPU。RRESP=OKAY

  1. 另一方面,如果 CPU 收到RRESP=EXOKAY,那么事情会像以前一样进行:将内存中的值返回给 CPU,写入 CPU 的寄存器组,然后 CPU 对 内存值执行ALU运算。

  2. 然后存储指令也按预期开始:AWLOCK设置,并发出写请求。

  3. 下一个变化发生在存储操作正在进行时:在此期间,CPU必须停止等待并查看此操作的结果。不能允许它继续进一步的指令,因为如果写入失败,它们可能需要回滚。虽然某些 CPU 可能能够撤消或“回滚”任何后续指令,但 ZipCPU没有这种能力——因此,在该操作成功完成之前它无法继续。

    因此,内存控制器必须向 CPU 发出停止信号。

    为了避免重写任何不必要的内存接口,我滥用了读中信号 ,o_rdbusy为此目的。因此,当独占写入操作正在进行时,CPU 被告知正在进行读取。这会阻止 CPU 继续操作,以免它试图对一个值尚未从读取请求返回的寄存器执行操作。


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客