山南市网站建设_网站建设公司_企业官网_seo优化
2025/12/30 5:53:05 网站建设 项目流程

FPGA教程系列-Vivado AXI4-Full 仿真测试

还是老一套,建一个AXI-Full的IP核,看看,过程就不再赘述了。

Slave仿真

首先看框图

还是用AXI Verification进行验证,代码解释也略过,简单的看下仿真后的逻辑。

一次写事务

一次读事务

去slave中查看,可以看到突发长度与突发宽度,再深刻的理解一下:

  • 传输次数 (Beats)=AWLEN+ 1
  • 每次传输宽度 (Bytes/Beat)=2AWSIZE2^{\text{AWSIZE}}2AWSIZE

情况 1:AWLEN = 7​,AWSIZE = 1

这是一个“细长型”的传输。

  1. 传输次数 (Beats):7+1=87 + 1 = \mathbf{8}7+1=8

    Master 会在写数据通道上进行 8 次握手(WVALID​ &WREADY)。

  2. 单次宽度 (Width):21=22^1 = \mathbf{2}21=2字节(即 16-bit)。

    这意味着你的数据总线只需要 16 根线(或者你只用了其中的 16 根)。

  3. 总数据量 (Total Data):

    8 (beats)×2 (bytes)=16 Bytes 8 \text{ (beats)} \times 2 \text{ (bytes)} = \mathbf{16 \text{ Bytes}}8(beats)×2(bytes)=16Bytes

  4. 地址变化 (INCR模式):

    每传一次,地址增加 2。

    例如:0x00​ ->0x02​ ->0x04​ … ->0x0E

这就好比用一辆小三轮车(只能装 2 字节),往返跑了 8 趟

情况 2:AWLEN = 1​,AWSIZE = 7

这是一个“短宽型”(或者说是巨型)的传输。

  1. 传输次数 (Beats):1+1=21 + 1 = \mathbf{2}1+1=2

    Master 只需要在数据通道上进行 2 次握手。

  2. 单次宽度 (Width):27=1282^7 = \mathbf{128}27=128字节(即 1024-bit)。

    注意!这是一个非常恐怖的宽度。通常只有高性能计算(HPC)、GPU 内部或者 HBM(高带宽内存)接口才会有 1024 位宽的数据总线。普通 CPU 总线通常只是 32位 (SIZE=2) 或 64位 (SIZE=3)。

  3. 总数据量 (Total Data):

    2 (beats)×128 (bytes)=256 Bytes 2 \text{ (beats)} \times 128 \text{ (bytes)} = \mathbf{256 \text{ Bytes}}2(beats)×128(bytes)=256Bytes

  4. 地址变化 (INCR模式):

    每传一次,地址增加 128。

    例如:0x00​ ->0x80

这就好比开着一辆巨型重卡(能装 128 字节),跑了 2 趟

Master

框图如下:

发现拿AXI Verification去看对应的读写操作会比直接看ip核更直观一点。

写了一次的事务:

一次事务内,握手了16次,一次2字节,可以看到第二次事务,地址从40000040开始。

一共写了64次:

读也一样,可以看到一次事务只有两个步骤。

打开主的仿真,主要看下突发是否对应:

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询