我正在使用精巧的ARTY FPGA平台上的Cortex-M。我想知道在典型的系统上如何处理无效的地址请求。我猜想AXI交叉开关互连中的地址解码器会以某种方式处理它。它是否将错误条件返回给引发总线故障的主机?还是直接引发断层事故?
必须有一种标准的处理方法,因为任何SoC集成都可以处理由于无效内存访问而导致的总线故障。任何指导将不胜感激。
我正在使用精巧的ARTY FPGA平台上的Cortex-M。我想知道在典型的系统上如何处理无效的地址请求。我猜想AXI交叉开关互连中的地址解码器会以某种方式处理它。它是否将错误条件返回给引发总线故障的主机?还是直接引发断层事故?
必须有一种标准的处理方法,因为任何SoC集成都可以处理由于无效内存访问而导致的总线故障。任何指导将不胜感激。
AXI交叉开关将具有地址解码器,以计算将事务传递到哪个从站,并且如果提供的地址未映射到任何分配的从站地址范围,则交叉开关可能*返回DECERR响应,然后由AXI决定掌握如何使用该错误通知。
*我之所以说“可能”,是因为这是ARM AXI交叉开关的工作方式,但是从理论上讲,您可以使交叉开关使用其他方式来指示总线故障,例如使用中断。但是我还没有看到完成。
从理论上讲,如果要寻址的系统或区域需要实现某种“安全”功能,则交叉开关也可能不会返回任何DECERR响应。通过将错误响应返回到未实现的地址,可能使黑客对他们试图攻击的内容有所了解。