草庐IT

AXI_Uartlite

全部标签

MicroBlaze系列教程(5):AXI_UART16550的使用

文章目录@[toc]AXI_UART16550简介MicroBlaze硬件配置常用函数使用示例参考资料工程下载本文是XilinxMicroBlaze系列教程的第5篇文章。AXI_UART16550简介axi-uart16550是Xilinx的一款串口IP核,支持配置成16450或16550模式,16550和16450是指的早期电脑主板上的串口芯片型号,16550相比于16450多了FIFO,现在已经很少使用。相比于axi-uartlite,16550支持1或2位停止位,包括uartlite所有的功能,而且支持在SDK中灵活对波特率、数据、校验方式进行配置。与uartlite不同的是,不能单独指

MicroBlaze系列教程(6):AXI_IIC的使用(24C04 EEPROM)

文章目录@[toc]AXI_IIC简介MicroBlaze硬件配置常用函数使用示例波形实测参考资料工程下载本文是XilinxMicroBlaze系列教程的第6篇文章。AXI_IIC简介一般情况下,使用FPGA实现I2C协议主要有两种方式:一种是基于Verilog实现起始位、停止位、ACK产生和判断、数据的发送和接收,通常SDA设计成双向端口,配合I2C模型对设计的模块进行仿真验证。还有一种是基于软核处理器配合GPIO,通过模拟I2C时序的方式来实现。Xilinx提供了标准AXI总线的I2CIP核,只需要调用封装好的API函数,即可以实现对标准I2C器件的驱动,非常方便。AXIIIC,支持Phi

AXI-Stream 学习笔记

参考https://wuzhikai.blog.csdn.net/article/details/121326701https://zhuanlan.zhihu.com/p/152283168AXI4介绍AXI4是ARM公司提出的一种片内总线,描述了主从设备之间的数据传输方式。主要有AXI4_LITE、AXI4_FULL、AXI4_STREAM三种。AXI4_LITE:不支持突发传输,一般用于小数据量的IP初始化和嵌入式设备数据传输。AXI4_FULL:可称为AXI4,支持突发传输,突发长度为1~256。AXI4_STREAM:流数据,丢弃了地址项,用于高速数据传输。AXI-Stream顾名思

AXI 协议中的“对齐”与“非对齐”访问

1.对齐传输:在实际硬件中,一个寄存器一般是存储8位数据,所以对于一笔32位的数据,就需要4个寄存器来存储,因此这笔32位的数据的地址需要以0X00,0X04,0X08···这样使用,也就是所谓的地址对齐2.非对齐传输AHB总线只支持对齐传输,而AXI协议支持地址的非对齐传输(且burst类型为wrap的不支持)。非对齐传输也就是所谓的可以访问的地址不需要以上例中0X00,0X04,0X08···这样使用。在第一笔数据的传输时,如果首地址不是对齐的,那么主设备会在第一笔传输中对数据进行填充,直到首次传输填充至地址对齐,然后,再用WSTRB信号将填充的数据标记为无效。以访问(32位数据)地址为0

on-chip-bus(四)AXI总线:突发长度、突发大小以及非对齐传输的理解

1.突发长度、突发大小突发长度(burstlength):指在一次突发传输中进行的数据传输次数,用AxLEN字段标识。由于标识值是从0开始的,实际的突发长度应为标识值+1,即突发长度=AxLEN+1.突发大小(burstsize):指突发传输中的每次数据传输的字节数,用AxSIZE字段标示。突发大小=2^AxSIZE2.非对齐传输(UnalignedTransfer)    首先需要理解地址的对齐传输:在ARM的32bit的地址总线中,其最低两位[1:0]=0,所以从第三位开始,地址也就是4的倍数,如0x00,0x04,0x08等,都是对齐的。    AHB总线只支持对齐传输,而AXI协议支持

AXI4协议学习:架构、信号定义、工作时序和握手机制

目录1AXI是什么?2AXI怎么工作?3AXI协议3.1架构3.1.1通道定义3.1.2接口与互连(interconnect)3.1.3Registerslices3.2基本事务3.2.1突发读示例3.2.2重叠突发读示例3.2.3突发写示例3.2.4事务顺序3.3额外的功能4信号定义4.1全局信号4.2写地址通道信号4.3写数据通道信号4.4写响应通道信号4.5读地址通道信号4.6读数据通道信号4.7低功耗接口信号4.8字段定义的简单说明:4.9AXI-Lite与AXI-stream的接口5通道握手机制5.1握手过程5.2通道之间的关系5.3通道握手信号之间的依赖关系6AXI4相关文件7需要

FPGA基于AXI 1G/2.5G Ethernet Subsystem实现UDP通信DMA传输 提供工程源码和技术支持

目录1、前言2、我这里已有的UDP方案3、详细设计方案传统UDP网络通信方案本方案详细设计说明DMA和BRAMAXIS-FIFOUDP模块设计UDP模块FIFOAXI1G/2.5GEthernetSubsystem:输出4、vivado工程详解5、上板调试验证并演示注意事项6、福利:工程代码的获取1、前言目前网上的fpga实现udp基本生态如下:1:verilog编写的udp收发器,但不带ping功能,这样的代码功能正常也能用,但不带ping功能基本就是废物,在实际项目中不会用这样的代码,试想,多机互联,出现了问题,你的网卡都不带ping功能,连基本的问题排查机制都不具备,这样的代码谁敢用?2

AXI协议中的4K边界问题

AXI中一次突发不能越过4K边界!4k边界是指低12bit全为0的地址,如32’h00001000,32’h00002000,32’h00001000等这些特殊的地址均为4k边界。4k边界对齐的最大原因是系统中定义一个page大小为4kBytes,为了更好设定每个slave的访问attribute,就给一个slave划分4k空间。AXI协议中一次突发不能越过4K边界是为了避免一笔burst交易访问两个slave(每个slave都是4k对齐),如果一次burst传输访问大于4k,则可能会造成地址从slave1增加了slave2上,slave2又不响应,导致传输无法完成。以32位地址为例,[31:

AXI DMA IP核使用说明

文章目录1AXIDMAIP核结构图2AXIDMAIP接口1寄存器说明1MM2S寄存器2S2MM寄存器2S/G描述符3DMA多通道模式3AXIDMAIP核使用说明1时钟2复位3使用说明1直接DMA使用顺序2S/G模式3循环DMA模式4AXIDMAIP核使用配置AXIDMA提供内存和AXI4-Stream目标外设之间的高带宽直接内存访问。DMA除了配置为直接DMA模式外,还可以配置为scatter/gather(S/G)模式,S/G模式减轻CPU负担。为了掌握对DMA的使用方法,需要对DMAIP核有足够的了解。这篇文章主要对AXIDMAIP核的使用进行简单的说明,接下来详细论述,首先是AXIDMA

【AXI】解读AXI协议乱序机制

芯片设计验证社区·芯片爱好者聚集地·硬件相关讨论社区·数字verifier星球四社区联合力荐!近500篇数字IC精品文章收录!【数字IC精品文章收录】学习路线·基础知识·总线·脚本语言·芯片求职·EDA工具·低功耗设计Verilog·STA·设计·验证·FPGA·架构·AMBA·书籍解读AXI协议乱序机制一、写在前面二、解读AXI协议的乱序机制2.1核心思想2.2信号列表2.2.1AXI3信号列表2.2.2AXI4信号列表2.2.3总结2.3传输顺序2.3.1读顺序2.3.2写顺序2.3.3读写操作的合作2.4互连线中ID信号的扩展2.5ID信号的位宽2.6总结三、其他数字IC基础协议解读3.