0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

总线、接口以及协议的含义

电子设计 来源:电子设计 作者:电子设计 2022-02-08 11:38 次阅读

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/abcdef123456gg/article/details/102814000

在介绍AXI之前,先简单说一下总线、接口以及协议的含义

总线、接口和协议,这三个词常常被联系在一起,但是我们心里要明白他们的区别。

总线是一组传输通道,是各种逻辑器件构成的传输数据的通道,一般由由数据线、地址线、控制线等构成。

接口是一种连接标准,又常常被称之为物理接口。

协议是传输数据的规则。

1.简介

AXI4总线协议是ARM公司提出的AMBA(Advanced Microcontroller Bus Architecture)3.0协议中最重要的部分,是一种面向高性能、高带宽、低延迟的片内总线。

AXI4总线协议规定的数据传输方式是猝发式的。它的地址/控制和数据相位是分离的,支持不对齐的数据传输。在突发传输中,使用首字节选通方式,只需要首地址,在独立的读写数据通道,采用独立的地址、控制和数据周期进行数据传输,支持非对齐方式的数据传输,能够发出多个未解析的地址,从而完成无序的数据传输交易,并更加容易并行时序收敛。

AXI是AMBA 中一个新的高性能协议。AXI 技术丰富了现有的AMBA 标准内容,满足超高性能和复杂的片上系统(SoC)设计的需求。

常用的AXI总线有:AXI4、 AXI_Lite、AXI_Stream。

AXI4:主要面向高性能地址映射通信的需求,允许最大256轮的数据突发传输;

AXI4-Lite:是一个轻量级的地址映射单次传输接口,占用很少的逻辑单元;

AXI4-Stream:面向高速流数据传输,去掉了地址项,允许无限制的数据突发传输规模。

AXI4总线分为主、从两端,两者间可以连续的进行通信

pIYBAGAJ-zqAYQTOAAFsuj2xCXQ721.png

2. AXI_Lite 协议

axi总线的6个通道

( 1) 读地址通道, 包含 ARVALID, ARADDR, ARREADY信号

( 2) 读数据通道, 包含 RVALID, RDATA, RREADY, RRESP信号;

( 3) 写地址通道, 包含 AWVALID, AWADDR, AWREADY信号;

( 4) 写数据通道, 包含 WVALID, WDATA, WSTRB, WREADY信号;

( 5) 写应答通道, 包含 BVALID, BRESP, BREADY信号;

( 6) 系统通道, 包含 ACLK, ARESETN信号。

AXI4总线和AXI4-Lite总线的信号也有他的命名特点:

读地址信号都是以AR开头( A: address; R: read)

写地址信号都是以AW开头( A: address; W: write)

读数据信号都是以R开头( R: read)

写数据信号都是以W开头( W: write)

3.AXI_Stream 协议

AXI4-Stream总线的组成有:

( 1) ACLK 信号: 总线时钟, 上升沿有效;

( 2) ARESETN 信号: 总线复位, 低电平有效

( 3) TREADY 信号: 从机告诉主机做好传输准备;

( 4) TDATA 信号: 数据, 可选宽度32,64,128,256bit

( 5) TSTRB 信号: 字节修饰符, 每一bit对应TDATA的一个有效字节, 宽度为TDATA/8,用来描述TDATA相关字节内容作为一个数字字节或者一个位置字节被处理。

( 6) TLAST 信号: 主机告诉从机该次传输为突发传输的结尾;

( 7) TVALID 信号: 主机告诉从机数据本次传输有效;

( 8) TUSER 信号 : 用户定义信号, 宽度为128bit。

o4YBAGAJ-4eAPvlEAACRh21oHEI342.png

4.其他

4.1 AXI架构

AXI协议是基于burst的传输,并且定义了5个独立的传输通道:

读地址通道、读数据通道、写地址通道、写数据通道、写响应通道。

地址通道携带控制消息用于描述被传输的数据属性;

数据传输使用写通道来实现“主”到“从”的传输;

“从”使用写响应通道来完成一次写传输;

读通道用来实现数据从“从”到“主”的传输。

o4YBAGAJ-8WAZ8_AAABg7IpmuVk504.png

图4-1 读结构

o4YBAGAJ_EeAI2OGAAB_miV4a5A347.png

图4-2 写架构

AXI是基于VALID/READY的握手机制数据传输协议,传输源端使用VALID表明地址/控制信号、数据是有效的,目的端使用READY表明自己能够接受信息

读/写地址通道:读、写传输每个都有自己的地址通道,对应的地址通道承载着对应传输的地址控制信息。

读数据通道:读数据通道承载着读数据和读响应信号包括数据总线(8/16/32/64/128/256/512/1024bit)和指示读传输完成的读响应信号。

写数据通道:写数据通道的数据信息被认为是缓冲(buffered)了的,“主”无需等待“从”对上次写传输的确认即可发起一次新的写传输。写通道包括数据总线(8/16…1024bit)和字节线(用于指示8bit 数据信号的有效性)。

写响应通道:“从”使用写响应通道对写传输进行响应。所有的写传输需要写响应通道的完成信号。

o4YBAGAJ_IWATkKsAAAtYbRrjIk467.png

图4-3 接口与互联

AXI协议提供单一的接口定义,能用在下述三种接口之间:master/interconnect、slave/interconnect、master/slave。

可以使用以下几种典型的系统拓扑架构:

共享地址与数据总线

共享地址总线,多数据总线

multilayer多层,多地址总线,多数据总线

在大多数系统中,地址通道的带宽要求没有数据通道高,因此可以使用共享地址总线,多数据总线结构来对系统性能和互联复杂度进行平衡。

寄存器片(Register Slices):

每个AXI通道使用单一方向传输信息,并且各个通道直接没有任何固定关系。因此可以可以在任何通道任何点插入寄存器片,当然这会导致额外的周期延迟。

使用寄存器片可以实现周期延迟(cycles of latency)和最大操作频率的折中;使用寄存器片可以分割低速外设的长路径。

4.2 信号描述

表 4-4 全局信号

o4YBAGAJ_MSAcaE7AAANLHYuTnI491.png

表 4-5 写地址通道信号

pIYBAGAJ_U6AIBwVAACzPzJMZUs622.png

表 4-6 写数据通道信号

o4YBAGAJ_b6AKEnFAABhrVtelAQ671.png

表 4-7 写响应通道信号

o4YBAGAJ_fyAbaJbAABBChYr1rc998.png

表 4-8 读地址通道信号

o4YBAGAJ_juAbhQIAACrCVzfArY258.png

表 4-9 读数据通道信号

pIYBAGAJ_niAUb1eAABX0StGfkI333.png

表 4-10 低功耗接口信号

o4YBAGAJ_raAKKSgAAAYwoFthIk320.png

4.3 信号接口要求

4.3.1时钟复位

时钟:

每个AXI组件使用一个时钟信号ACLK,所有输入信号在ACLK上升沿采样,所有输出信号必须在ACLK上升沿后发生。

复位:

AXI使用一个低电平有效的复位信号ARESETn,复位信号可以异步断言,但必须和时钟上升沿同步去断言。

复位期间对接口有如下要求:①主机接口必须驱动ARVALID,AWVALID,WVALID为低电平;②从机接口必须驱动RVALID,BVALID为低电平;③所有其他信号可以被驱动到任意值。

在复位后,主机可以在时钟上升沿驱动ARVALID,AWVALID,WVALID为高电平。

4.3.2基本读写传输

握手过程

5个传输通道均使用VALID/READY信号对传输过程的地址、数据、控制信号进行握手。使用双向握手机制,传输仅仅发生在VALID、READY同时有效的时候。下图是几种握手机制:

图 4-11 VALID before READY 握手

pIYBAGAJ_vSAJPJvAAAloBe3BCI777.png

图 4-12 READY before VALID 握手

o4YBAGAJ_9KAVh3qAAAkT26mgtU143.png

图 4-13 VALID with READY 握手

o4YBAGAKAB2ABFTFAAAibvGBdm0187.png

4.3.3 通道信号要求

通道握手信号:每个通道有自己的xVALID/xREADY握手信号对。

写地址通道:当主机驱动有效的地址和控制信号时,主机可以断言AWVALID,一旦断言,需要保持AWVALID的断言状态,直到时钟上升沿采样到从机的AWREADY。AWREADY默认值可高可低,推荐为高(如果为低,一次传输至少需要两个周期,一个用来断言AWVALID,一个用来断言AWREADY);当AWREADY为高时,从机必须能够接受提供给它的有效地址。

写数据通道:在写突发传输过程中,主机只能在它提供有效的写数据时断言WVALID,一旦断言,需要保持断言状态,知道时钟上升沿采样到从机的WREADY。WREADY默认值可以为高,这要求从机总能够在单个周期内接受写数据。主机在驱动最后一次写突发传输是需要断言WLAST信号。

写响应通道:从机只能它在驱动有效的写响应时断言BVALID,一旦断言需要保持,直到时钟上升沿采样到主机的BREADY信号。当主机总能在一个周期内接受写响应信号时,可以将BREADY的默认值设为高。

读地址通道:当主机驱动有效的地址和控制信号时,主机可以断言ARVALID,一旦断言,需要保持ARVALID的断言状态,直到时钟上升沿采样到从机的ARREADY。ARREADY默认值可高可低,推荐为高(如果为低,一次传输至少需要两个周期,一个用来断言ARVALID,一个用来断言ARREADY);当ARREADY为高时,从机必须能够接受提供给它的有效地址。

读数据通道:只有当从机驱动有效的读数据时从机才可以断言RVALID,一旦断言需要保持直到时钟上升沿采样到主机的BREADY。BREADY默认值可以为高,此时需要主机任何时候一旦开始读传输就能立马接受读数据。当最后一次突发读传输时,从机需要断言RLAST。

4.3.4 通道间关系

AXI协议要求通道间满足如下关系:

写响应必须跟随最后一次burst的的写传输

读数据必须跟随数据对应的地址

通道握手信号需要确认一些依耐关系

通道握手信号的依耐关系

审核编辑:何安

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • AXI总线
    +关注

    关注

    0

    文章

    66

    浏览量

    14249
收藏 人收藏

    评论

    相关推荐

    【CAN总线知识】全面了解CAN总线协议

    提及总线,总是让人联想到那些交错在一起的计算机电线。那么这些电线如何发挥功效呢?这还得配合总线协议的管理来使用。那么今天我们介绍的就是CAN总线协议
    的头像 发表于 10-15 08:05 1204次阅读
    【CAN<b class='flag-5'>总线</b>知识】全面了解CAN<b class='flag-5'>总线</b><b class='flag-5'>协议</b>

    EN Power Bus二总线接口转接485方案芯片-485接口芯片

    EN20F18 是采用低压直流供电总线通讯技术设计的一款通讯接口芯片,是英锐恩EN Power Bus二总线接口转接485方案芯片,用于两总线
    发表于 09-29 16:04

    CAN总线接口类型

    CAN总线(Controller Area Network)是一种基于广播的串行通信协议,广泛用于连接分布式系统中的各个设备,实现它们之间的数据交换和控制。CAN总线接口的定义涵盖了物
    的头像 发表于 09-03 14:13 1313次阅读

    西门子总线协议有哪些

    西门子(Siemens)作为工业自动化领域的领先企业,其总线协议在自动化系统中发挥着重要作用。西门子总线协议主要包括了多种类型,这些协议支持
    的头像 发表于 08-05 16:09 857次阅读

    FPGA中的单总线协议设计(附示例代码)

    FPGA(现场可编程门阵列)是一种高度灵活的集成电路,通过编程可以实现多种数字功能。在FPGA中实现单总线协议可以有效地简化模块之间的通信。单总线协议指的是所有设备或模块共用一条通信线
    的头像 发表于 05-31 08:21 596次阅读
    FPGA中的单<b class='flag-5'>总线</b><b class='flag-5'>协议</b>设计(附示例代码)

    STM32是否支持CCP协议,能否用INCA/CANaple通过CAN总线的CCP协议进行标定?

    想开发一款控制器,基于带CAN总线接口的F407系列。 现在考虑参数标定/正定的问题。 不知能否通过生成A2L文件,然后用INCA/ CANaple 通过CAN总线的CCP协议进行标定
    发表于 05-31 08:14

    什么是CAN总线协议?它有哪些特性和应用?

    CAN总线协议(Controller Area Network,简称CAN),是一种在汽车和工业自动化领域广泛应用的串行通信协议。自1986年由德国博世公司提出以来,CAN总线
    的头像 发表于 05-27 16:32 1144次阅读

    CANoe总线接口硬件VN1640A实物展示与功能介绍#汽车CAN总线 

    总线接口CAN总线接口
    北汇信息POLELINK
    发布于 :2024年04月11日 10:50:36

    如何与stm32的IM69D130 PDM接口连接通信,使用什么总线协议

    如何与stm32的 IM69D130 PDM接口连接通信,使用什么总线协议
    发表于 01-29 06:06

    SOC设计中APB协议总线的工作原理

    APB(Advanced Peripheral Bus) 作为高级外设总线是AMBA协议之一,也是最基本的总线协议。按照ARM官方定义,APB是一种低成本的
    发表于 01-17 17:35 1953次阅读
    SOC设计中APB<b class='flag-5'>协议</b><b class='flag-5'>总线</b>的工作原理

    CAN总线接口保护方案

    CAN总线的应用范围广,应用环境相当复杂,一些静电、浪涌等干扰很容易耦合到总线上,并直接作用于CAN总线接口。为了满足一些高等级EMC的要求,有必要添加额外的外围保护电路。CAN
    的头像 发表于 01-13 08:27 666次阅读
    CAN<b class='flag-5'>总线</b><b class='flag-5'>接口</b>保护方案

    什么是APB协议/总线?APB总线入门

    上一篇文章简单讲解了什么是AMBA总线,简单来说,AMBA总线是一系列协议。定义了适用于不同场景的总线家族。今天我们就来将AMBA总线中最简
    的头像 发表于 01-02 11:37 3303次阅读
    什么是APB<b class='flag-5'>协议</b>/<b class='flag-5'>总线</b>?APB<b class='flag-5'>总线</b>入门

    AXI总线协议总结

    在介绍AXI之前,先简单说一下总线接口 以及协议含义 总线
    的头像 发表于 12-16 15:55 770次阅读

    常用的Profinet CCLink EthernetIP EtherCAT现场总线协议介绍

    Profinet CCLink EthernetIP EtherCAT是常用的工业控制领域的现场总线协议。本文详细介绍了这四种总线的来龙去脉,以及使用vfbox网关轻松实现
    的头像 发表于 12-11 09:07 1068次阅读
    常用的Profinet CCLink EthernetIP EtherCAT现场<b class='flag-5'>总线</b><b class='flag-5'>协议</b>介绍

    什么是USS协议?PLC应用—USS协议介绍

    USS 协议(Universal Serial Interface Protocol 通用串行接口协议)是SIEMENS 公司所有传动产品的通用通讯协议,它是一种基于串行
    的头像 发表于 12-06 09:48 2807次阅读
    什么是USS<b class='flag-5'>协议</b>?PLC应用—USS<b class='flag-5'>协议</b>介绍