abs-tudelft / abs-tudelft/vhdmmio

Atomic access to multi-block registers - holding register documentation

未关闭
#12 4 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
Python
星标
13
派生
3
PR 合并指标
30 天内没有已合并 PR

描述

In [Atomic access to multi-block registers](https://abs-tudelft.github.io/vhdmmio/fieldconfig.html#atomic-access-to-multi-block-registers) you state:

> The advantage of sharing holding registers is that it reduces the size of the address decoder and read multiplexer; many addresses taking data from the same source is advantageous for both area and timing. The primary disadvantage is that it only works properly when the blocks are accessed sequentially and completely. It is up to the bus master to enforce this; if it fails to do so, accesses may end up reading or writing garbage. You can therefore generally NOT mix purely AXI4L multi-master systems with multi-block registers.

I am not sure you are correct here. With logical registers wider than the data bus width you still have multiple addresses, which you present, for example, here [bitrange](https://abs-tudelft.github.io/vhdmmio/fieldconfig.html#bitrange). The required address space size is not smaller because of the holding register, so how can it affect the address decoding logic? I think the only resource utilization you reduce by sharing the snapshot/shadow register (you call it holding register) is the number of flip flops required for logical registers wider than the data bus width.

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。