axi 1.0

AXI : Advanced eXtensible Interface

    ? 它的地址/控制和数据相位是分离的,支持不对齐的数据传输

    ? 同时在突发传输中,只需要首地址,同时分离的读写数据通道、并支持显著传输访问和乱序访问

    ?并更加容易就行时序收敛

    ? AXI4-Lite, AXI4-Stream

    ? how seperate channels benifit?

 

charpter-1 architecture, features

------------------------------

* separate address/control and data phases

* support for unaligned data transfers using byte strobes

* burst-based transactions with only start address issued

* separate read and write data channels to enable low-cost Direct Memory Access(DMA)

* ability to issue multiple outstanding addresses

* out-of-order transaction completion

* easy addition of register stages to provide timing closure.

--- also some feature for low power, cache support, protection unit support, atomic operation, error support ,u

 

prefix

------------------------------

prefix - AW/AR: write write addr/cmd channel(two channels)

prefix - B: write response channel 

prefix - R:

prefix - W:

 

ID transaction

------------------------------

ordering transaction -

1. 一个master可以同时与不同的的slave操作,这些slave可以有快慢之分。

2. master对同一个复杂的slave操作,传输的速度可以有差别,有些数据是slave内部产生,有些譬如memory从外部获取。

3. 对于有多个master的总线结构,可能master发出的ID是相同的,但是AXI总线可以对master添加prefix,以便么slave可以区分出不同的master

4. ID是spec中规定,具体情况可以变通,如果是简单master,可以对所有的ID置相同的值,如果是简单的slave,可以忽略ID

 

 

------------------------------

awlock,

awchche,

awport,

 

?为什么write data channel 和write response channel 要区分开来?

------------------------------

 

chapter3 - handshake (所有的channel基于 ready-valid)

------------------------------

1.所有的valid不能依赖于ready信号以防止死锁

2.Two relationships that must be maintained are:

        。   read data must always follow the address to which the data relates

        。   a write response must always follow the last write transfer in the write transaction to which the write response relates.

 

 

 

chapter4 - address caculate

------------------------------

AR/AWLEN    : 1-16

AR/AWSIZE   : 1-16 (1,2,4,…,128 Bytes)

AR/AWBURST  : FIXED, INCR, WRAP

            wrap boundary: LEN × SIZE (进位无效)

 

atomic(normal) access/exclusive access/locked access

------------------------------

indicated by AR/AWLOCK[1:0]

from the perspective of master, if exclusive read at a address, can only followd by exclusive write and return EXOKAY

from the perspective of slave, it must monitor the hardware(for each ID and address)

 

exclusive access:在一个master读取一个地址的某个数据之后,监视这个地址,如果接下来写这个地址,发现现在的值和刚刚读出来的不一样,那么就 exclusive err

 

 

 

respond signals

------------------------------

1. for each write burst there only 1 response signal, but for read burst there 1 response signal for each data

2. OKAY, EXOKAY, slave ERR, decode err

 

 

★ordering model

------------------------------

?how to process out-of-order transaction

{AWID, WID, BID} {ARID, RID}

 

-read and write inter-action

read finished is marked by RLast, write finished is marked by BResp

interconnect usage of

某一次的burst 读/写操作,可以不完全完成,比如burst 7 write,可以先写3个,然后写其他的一笔数据,接下来写另外ID的一笔数据,然后接下来写原来的生下来的4个数据。

 

data bus

------------------------------

 

原文地址:https://www.cnblogs.com/azure_seu/p/2083026.html