ZYNQ MicroBlaze AXI总线连接注意事项

2024-03-14 18:20

本文主要是介绍ZYNQ MicroBlaze AXI总线连接注意事项,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

 

一、AMBA总线协议概述

1.ASB

2.AHB

3.APB

4.AXI

(1)AXI4

(2)AXI4-Lite

(3)AXI4-Stream

二、ZYNQ MicroBlaze连接AXI总线注意事项

三、解决方法


一、AMBA总线协议概述

AMBA是指先进的微控制器总线体系结构,主要由系统总线和外围总线两部分组成,它的演进如下:

根据 AMBA标准定义了多种不同的总线,下面列出了四种核心的总线作以简介:

高级系统总线    [Advanced System Bus](ASB);

高级高性能总线 [Advanced High-performance Bus](AHB);

高级外设总线    [Advanced Peripheral Bus](APB);

高级扩展接口    [Advanced eXtensible Interface](AXI)。

1.ASB

    ASB是第一代AMBA系统总线,同AHB相比,它数据宽度要小一些,它支持的典型数据宽度为8位、16位、32位。

2.AHB

    AHB应用于高性能、高时钟频率的系统模块,它构成了高性能的系统骨干总线( back-bone bus )。

3.APB

   APB是本地二级总线(local secondary bus ),通过桥和AHB/ASB相连。它主要是为了满足不需要高性能流水线接口或不需要高带宽接口的设备的互连,主要用来实现操作片上低速外设。

4.AXI

    AXI是在AMBA3.0总线中提出来的,为AXI3.0版本,AMBA 4是最新增添到 AMBA 系列中的规范,增加了三个新接口协议:AXI4 有助于最大化性能和能效;AXI4-Lite 和 AXI4-Stream 是 FPGA 中实现的理想选择。

(1)AXI4

AXI4 协议是对 AXI3 的更新,在用于多个主接口时,可提高互连的性能和利用率。它包括以下增强功能:

1)对于突发长度,最多支持 256 位

2)支持多区域接口

(2)AXI4-Lite

AXI4-Lite 是 AXI4 协议的子协议,适用于与组件中更简单且更小的控件寄存器式的接口通信。AXI4-Lite 接口的主要功能如下:

1)所有事务的突发长度均为 1

2)所有数据存取的大小均与数据总线的宽度相同

3)不支持独占访问

(3)AXI4-Stream

AXI4-Stream 协议可用于从主接口到辅助接口的单向数据传输,可显著降低信号路由速率。该协议的主要功能如下:

1)使用同一组共享线支持单数据流和多数据流

2)在同一互连内支持多个数据宽度

3)FPGA 中实现的理想选择

二、ZYNQ MicroBlaze连接AXI总线注意事项

外设必须接到外设总线上,否则处理器会访问不到(不接让处理器怎么访问),很多人会问为什么会不接,请看下面的原理图,这张图是Vivado帮我们自动连接的:

我们在来看看地址分配图,其实Vivado自动生成的电路图吧EMC接到了IC上和DC总线上,Vivado会以为用户会接内存,来运行程序用的:

Vivado总的分配图:

三、解决方法

在自动生成原理图的时候,需要核对AXI类型IP核是需要接到哪个总线上,外设需要接到外设总线上,内存是需要接到内存总线上,如下图修改,选种点击OK即可:

这篇关于ZYNQ MicroBlaze AXI总线连接注意事项的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/809292

相关文章

如何正确识别一台POE交换机的好坏? 选购可靠的POE交换机注意事项

《如何正确识别一台POE交换机的好坏?选购可靠的POE交换机注意事项》POE技术已经历多年发展,广泛应用于安防监控和无线覆盖等领域,需求量大,但质量参差不齐,市场上POE交换机的品牌繁多,如何正确识... 目录生产标识1. 必须包含的信息2. 劣质设备的常见问题供电标准1. 正规的 POE 标准2. 劣质设

java.sql.SQLTransientConnectionException连接超时异常原因及解决方案

《java.sql.SQLTransientConnectionException连接超时异常原因及解决方案》:本文主要介绍java.sql.SQLTransientConnectionExcep... 目录一、引言二、异常信息分析三、可能的原因3.1 连接池配置不合理3.2 数据库负载过高3.3 连接泄漏

Java Stream 并行流简介、使用与注意事项小结

《JavaStream并行流简介、使用与注意事项小结》Java8并行流基于StreamAPI,利用多核CPU提升计算密集型任务效率,但需注意线程安全、顺序不确定及线程池管理,可通过自定义线程池与C... 目录1. 并行流简介​特点:​2. 并行流的简单使用​示例:并行流的基本使用​3. 配合自定义线程池​示

Mac电脑如何通过 IntelliJ IDEA 远程连接 MySQL

《Mac电脑如何通过IntelliJIDEA远程连接MySQL》本文详解Mac通过IntelliJIDEA远程连接MySQL的步骤,本文通过图文并茂的形式给大家介绍的非常详细,感兴趣的朋友跟... 目录MAC电脑通过 IntelliJ IDEA 远程连接 mysql 的详细教程一、前缀条件确认二、打开 ID

Go语言连接MySQL数据库执行基本的增删改查

《Go语言连接MySQL数据库执行基本的增删改查》在后端开发中,MySQL是最常用的关系型数据库之一,本文主要为大家详细介绍了如何使用Go连接MySQL数据库并执行基本的增删改查吧... 目录Go语言连接mysql数据库准备工作安装 MySQL 驱动代码实现运行结果注意事项Go语言执行基本的增删改查准备工作

python连接sqlite3简单用法完整例子

《python连接sqlite3简单用法完整例子》SQLite3是一个内置的Python模块,可以通过Python的标准库轻松地使用,无需进行额外安装和配置,:本文主要介绍python连接sqli... 目录1. 连接到数据库2. 创建游标对象3. 创建表4. 插入数据5. 查询数据6. 更新数据7. 删除

在 Spring Boot 中连接 MySQL 数据库的详细步骤

《在SpringBoot中连接MySQL数据库的详细步骤》本文介绍了SpringBoot连接MySQL数据库的流程,添加依赖、配置连接信息、创建实体类与仓库接口,通过自动配置实现数据库操作,... 目录一、添加依赖二、配置数据库连接三、创建实体类四、创建仓库接口五、创建服务类六、创建控制器七、运行应用程序八

解决hive启动时java.net.ConnectException:拒绝连接的问题

《解决hive启动时java.net.ConnectException:拒绝连接的问题》Hadoop集群连接被拒,需检查集群是否启动、关闭防火墙/SELinux、确认安全模式退出,若问题仍存,查看日志... 目录错误发生原因解决方式1.关闭防火墙2.关闭selinux3.启动集群4.检查集群是否正常启动5.

Spring Security6.3.x的使用指南与注意事项

《SpringSecurity6.3.x的使用指南与注意事项》SpringSecurity6.3.1基于现代化架构,提供简洁配置、增强默认安全性和OAuth2.1/OIDC支持,采用Lambda... 目录介绍基础配置 (Servlet 应用 - 使用 Lambda DSL)关键配置详解(Lambda DS

在Linux系统上连接GitHub的方法步骤(适用2025年)

《在Linux系统上连接GitHub的方法步骤(适用2025年)》在2025年,使用Linux系统连接GitHub的推荐方式是通过SSH(SecureShell)协议进行身份验证,这种方式不仅安全,还... 目录步骤一:检查并安装 Git步骤二:生成 SSH 密钥步骤三:将 SSH 公钥添加到 github