Axi_Lite接口的IP核与地址与缓冲与AxiGP0

        AXI Interconnect互连内核将一个或多个 AXI 内存映射主设备连接到一个或多个内存映射从设备。

AXI_GP 接口
       

        AXI_GP 接口是直接连接主机互联和从机互联的端口的。

        AXI_HP 接口具有一个 1kB 的数据 FIFO 来做缓冲 [4],但是 AXI_GP 接口与它不同,没有额外的缓冲。因此 性能就受到主机端口和从机互联的制约,突发长度为1。

        这些接口仅用于通用的目的,而且不应该 被用于高性能的任务。

        AXI_GP 接口的特性包括 [4]:

        • 32 位数据总线宽度。

        • 12 位总线端口 ID 宽度。

        • 6 位从机端口 ID 宽度。

        • 主机和从机端口接受一次 8 个读取和 8 个写入。

        AXI_GP 接口的每个端口能支持多个外设。

通过已经给好的例子建立函数:

	void AXI_REG_LIST_mWriteReg(u32 BaseAddress, unsigned RegOffset, u32 Data)
void Axi_Write(u8 *Data_addr_point,u32 Write_ByteLong){int i;for ( i = 0; i < Write_ByteLong; i++){AXI_REG_LIST_mWriteReg(Axi_RamA_BaseAddr,i * 4,*(Data_addr_point  + i));}
}

实验结果:
Axi_Lite

一个地址存储一个字节数据,

        操作的最低精度是一个字节,但AXI_GP或者说Lite支持的最低数据宽度为32位,所以一次要操作四个地址,地址的每次偏移量需要为i * 4,i为第i次操作,每次操作写入数组的第i个元素,实验中每个元素只有一个字节的长度,所以每次是将一个字节写入了四个字节长度的空间里。

官方代码:写Axi缓冲区

/**************************** 类型定义 ****************** **********/ 
/** * * 将值写入 AXI_REG_LIST 寄存器。执行 32 位写入。
* 如果组件以较小的宽度实现,则仅写入最不重要的数据。
* * @param BaseAddress 是 AXI_REG_LIST 设备的基地址。
* @param RegOffset 是要写入的寄存器距基址的偏移量。
* @param Data 是写入寄存器的数据。
* * @返回无。
* * @note 
* C 风格签名: 
* void AXI_REG_LIST_mWriteReg(u32 BaseAddress, unsigned RegOffset, u32 Data) * */
/**************************** Type Definitions *****************************/
/**** Write a value to a AXI_REG_LIST register. A 32 bit write is performed.* If the component is implemented in a smaller width, only the least* significant data is written.** @param   BaseAddress is the base address of the AXI_REG_LISTdevice.* @param   RegOffset is the register offset from the base to write to.* @param   Data is the data written to the register.** @return  None.** @note* C-style signature:* 	void AXI_REG_LIST_mWriteReg(u32 BaseAddress, unsigned RegOffset, u32 Data)**/
#define AXI_REG_LIST_mWriteReg(BaseAddress, RegOffset, Data) \Xil_Out32((BaseAddress) + (RegOffset), (u32)(Data))

读Axi缓冲区
      

/** * * 从 AXI_REG_LIST 寄存器读取值。执行 32 位读取。
* 如果组件以较小的宽度实现,则仅从寄存器中读取最低有效数据。最重要的数据 
* 将被读取为 0。
* 
* @param BaseAddress 是 AXI_REG_LIST 设备的基地址。
* @param RegOffset 是要写入的寄存器距基址的偏移量。
* * @return Data 是来自寄存器的数据。
* * @note * C 风格签名: 
* u32 AXI_REG_LIST_mReadReg(u32 BaseAddress, unsigned RegOffset) * 
*/
/**** Read a value from a AXI_REG_LIST register. A 32 bit read is performed.* If the component is implemented in a smaller width, only the least* significant data is read from the register. The most significant data* will be read as 0.** @param   BaseAddress is the base address of the AXI_REG_LIST device.* @param   RegOffset is the register offset from the base to write to.** @return  Data is the data from the register.** @note* C-style signature:* 	u32 AXI_REG_LIST_mReadReg(u32 BaseAddress, unsigned RegOffset)**/
#define AXI_REG_LIST_mReadReg(BaseAddress, RegOffset) \Xil_In32((BaseAddress) + (RegOffset))

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/115710.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

24东北大学计算机计划招生数据

2.结语 24的保研名额很多&#xff0c;统考名额就这些&#xff0c;大家根据自己的情况做出选择 东大计算机不好考&#xff0c;但是不代表考不上&#xff01;加油 3.数据来源于官网 官网链接

从传统云架构到云原生生态体系架构的演进

文章目录 概述传统云架构&#xff1a;虚拟化的时代云原生生态体系架构的兴起容器化和微服务架构自动化和自动伸缩基础设施即代码云原生存储和数据库 云原生的影响结语 概述 随着科技的不断发展&#xff0c;云计算领域也经历了巨大的变革。这一演进的核心焦点是从传统云架构过渡…

【Java集合类面试七】、 JDK7和JDK8中的HashMap有什么区别?

文章底部有个人公众号&#xff1a;热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享&#xff1f; 踩过的坑没必要让别人在再踩&#xff0c;自己复盘也能加深记忆。利己利人、所谓双赢。 面试官&#xff1a;JDK7和JDK8中的HashMap有…

pyflink 环境测试以及测试案例

1. py 的 环境以来采用Anaconda环境包 安装版本&#xff1a;https://www.anaconda.com/distribution/#download-section Python3.8.8版本&#xff1a;Anaconda3-2021.05-Linux-x86_64.sh 下载地址 https://repo.anaconda.com/archive/ 2. 安装 bash Anaconda3-2021.05-Linux-x…

基于深度学习网络的蔬菜水果种类识别算法matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1数据集准备 4.2构建深度学习模型 4.3模型训练 4.4模型评估 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 clc; clear; close all; wa…

java基础面试题

java后端面试题大全 1.java基础1.1 java中和equals的区别1.2 String、StringBuffer、StringBuilder的区别1.3 intern方法的作用及原理1.4 String不可变的含义1.5 static用法、使用位置、实例1.6 为什么静态方法不能调用非静态方法和变量1.7 异常/Exception1.7 try/catch/finall…

【CNN-LSTM预测】基于卷积神经网络-长短期记忆网络的数据分类预测研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

头脑风暴之约瑟夫环问题

一 问题的引入 约瑟夫问题的源头完全可以命名为“自杀游戏”。本着和谐友爱和追求本质的目的&#xff0c;可以把问题描述如下&#xff1a; 现有n个人围成一桌坐下&#xff0c;编号从1到n&#xff0c;从编号为1的人开始报数。报数也从1开始&#xff0c;报到m人离席&#xff0c…

YOLOv5项目实战(1)— 如何去训练模型

前言:Hello大家好,我是小哥谈。YOLOv5基础知识入门系列、YOLOv5源码中的参数超详细解析系列、YOLOv5入门实践系列、YOLOv5论文作图教程系列和YOLOv5算法改进系列学习完成之后,接着就进入YOLOv5项目实战系列了。🎉为了让大家能够牢固地掌握YOLOv5算法,本系列文章就通过一个…

计算机算法分析与设计(18)---回溯法(介绍、子集和问题C++代码)

文章目录 一、回溯法介绍二、子集和问题2.1 知识概述2.2 代码编写 一、回溯法介绍 1. 回溯法&#xff08;back tracking&#xff09;是一种选优搜索法&#xff0c;又称为试探法&#xff0c;有“通用的解题法”之称&#xff0c;按选优条件向前搜索&#xff0c;以达到目标。但当探…

AIGC笔记--基于DDPM实现图片生成

目录 1--扩散模型 2--训练过程 3--损失函数 4--生成过程 5--参考 1--扩散模型 完整代码&#xff1a;ljf69/DDPM 扩散模型包含两个过程&#xff0c;前向扩散过程和反向生成过程。 前向扩散过程对一张图像逐渐添加高斯噪声&#xff0c;直至图像变为随机噪声。 反向生成过程…

C语言求 3*3 矩阵对角线之和

完整代码&#xff1a; // 求 3*3 矩阵对角线之和 #include<stdio.h>int main() {int n3;int arr[3][3];// 输入矩阵printf("请输入矩阵的元素:\n");for (int i 0; i < n; i){for (int j 0; j < n; j){scanf("%d", &arr[i][j]);}}int su…

Python+requests+pytest+excel+allure 接口自动化测试实战

定义&#xff1a; Unittest是Python标准库中自带的单元测试框架&#xff0c;Unittest有时候也被称为PyUnit&#xff0c;就像JUnit是Java语言的标准单元测试框架一样&#xff0c;Unittest则是Python语言的标准单元测试框架。 Pytest是Python的另一个第三方单元测试库。它的目的…

day03_pandas_demo

文章目录 pandas介绍为什么使用pandasDataFrameDataFrame属性DataFrame的索引修改行列的索引值重设索引值以某列设置新索引 MultiIndexSerias索引操作直接索引按名字索引按数值索引 赋值操作排序对内容排序按索引排序 DataFrame的运算算术运算逻辑运算逻辑运算符号 < > |…

代码随想录 Day26 贪心 01 全集 LeetCode455 分发饼干 LeetCodeT346摆动序列 LeetCdoe T53 最大子数组和

前言:贪心无套路 本质: 局部最优去推导全局最优 两个极端 贪心算法的难度一般要么特别简单,要么特别困难,所以我们只能多见识多做题,记住无需数学证明,因为两道贪心基本上毫无关系,我们只需要去思考局部最优即可 贪心的小例子 比如有一堆钞票&#xff0c;你可以拿走十张&#x…

SpringBoot AOP + Redis 延时双删功能实战

一、业务场景 在多线程并发情况下&#xff0c;假设有两个数据库修改请求&#xff0c;为保证数据库与redis的数据一致性&#xff0c;修改请求的实现中需要修改数据库后&#xff0c;级联修改Redis中的数据。 请求一&#xff1a;A修改数据库数据 B修改Redis数据 请求二&#xff…

谷歌真的不喜欢 Node.js ?

有人在 Quora 上提问&#xff0c;为什么谷歌不喜欢 Node.js 呢&#xff0c;Google 的 UX 工程师和来自 Node.js 团队的开发者分别回答了他们对这个问题的看法&#xff0c;对于编程语言来说&#xff0c;每一门语言都有它自己的优势&#xff0c;重要的是如何用它去解决问题。 谷…

驱动开发LED灯绑定设备文件

头文件 #ifndef __HEAD_H__ #define __HEAD_H__typedef struct {unsigned int MODER;unsigned int OTYPER;unsigned int OSPEEDR;unsigned int PUPDR;unsigned int IDR;unsigned int ODR; }gpio_t;#define PHY_LED1_ADDR 0x50006000 #define PHY_LED2_ADDR 0x50007000 #defin…

【软考-中级】系统集成项目管理工程师-项目收尾管理历年案例

持续更新。。。。。。。。。。。。。。。 目录 2017 下 试题三(17分)背诵整理1. 项目总结会议一般讨论的内容2. 系统文档验收所涉及的文档都有哪些 系列文章 2017 下 试题三(17分) 阅读下列说明&#xff0c;回答问题 1至问题 4&#xff0c;将解答填入答题纸的对应栏内     …

大二第三周总结(算法+生活)

算法&#xff1a; 题目&#xff1a;有效的括号 这个题目也是做过很多回了。主要就是数据结构中”栈“的应用&#xff0c;先进后出。 解题思路&#xff1a; 1.创建 Map 哈希表形成键值对映射 2.进行遍历字符串 在遍历过程中 如果 遍历到的字符c 是左括号&#xff0c;则入栈 pu…