AXI4-Stream是一种标准协议接口,可用于芯片内部的数据流传输,不同于内存数据传输相关协议,AXI4-Stream没有与数据流相关的地址,它只是一个数据流,尤其可以用于高速大数据应用,比如视频数据流,相比较AXI4和AXI4-Lite,不限制突发长度。AXI主要面对内存映射,AXI-Lite主要是简化的AXI,比如用于配置一些寄存器。
Byte类型定义和一些控制信号相关,AXI-Stream定义了三种Byte数据类型:
TVALID和TREADY握手协议的传输| name | 源 | 描述 |
|
| 时钟源 | 全局时钟信号,时钟上升沿采样 |
|
| 复位源 | 全局复位信号,低有效 |
|
| 传输 | 表示主机驱动有效数据 |
|
| 接收 | 表示从机能接受有效数据 |
|
| 传输 | 传输数据,位宽为整数个Byte |
|
| 传输 | 表示关联数据为Position byte还是Data byte |
|
| 传输 | 区分Null bytes,如反断言,那么对应Byte可以删除 |
|
| 传输 | 表示包的边界 |
|
| 传输 | 数据Stream ID,表示不同数据流 |
|
| 传输 | 为Data Stream提供路由信息 |
|
| 传输 | 用户可定义的边带信息 |
n:数据位宽,单位为byte
i:TID位宽,单位为bit,建议最大为8bits
d:TDEST位宽,单位为bit,建议最大为4bits
u:TUSER位宽,单位为bit,建议为n的整数倍
两个信号TVALID和TREADY定义了握手过程,TVALID表示主机开始驱动有效数据,TREADY表示从机可以接收有效数据,当两者都被断言,那么数据传输开始。TVALID可以先于或后于TREADY断言,也可以同时断言。下面给出三种情况的时序图,ACLK标注箭头的上升沿为传输开始处。
AXI stream基本传输过程
字节限定符(Byte qualifiers)
AXI4-Stream定义了两个字节限定符:
TKEEP:区分对应byte是否需要保留传输到接收方,即判断是否为Null byte
TSTRB:区分对应byte为data byte还是position byte
每个TKEEP和TSTRB的bit位都对应数据的一个byte,如 TKEEP[x]对应数据 TDATA[(8x+7):8x] , TSTRB[x]对应数据TDATA[(8x+7):8x]。
TKEEP
如果Tkeep被置为高电平,表示关联的数据byte必需被传输到目的地,如果为低,那么表示对应byte为null byte,可以将该byte从数据流中删除。Tkeep全被置为低也属于协议允许的合法操作。在TLAST被置为高前,Tkeep也可以阻止全部被置为低。对主从来讲,标准没有强制要求他们具有处理null data的能力,但interconnect要有相关能力。
TSTRB
当TKEEP被断言,TSTRB用来表示区分data byte 和 position byte,当TSTRB为高,则byte为data byte,反之为position byte。下表为TKEEP和TSTRB组合意义:

数据包边界(Packet boundaries)
数据包就是一组bytes的组合,与传输packet相关的信号有TID,TDEST,和TLAST,这里我们主要谈TLAST,TLAST反断言时表示另一个传输可以进行,断言时表示一个包的边界,断言时也是共享总线可以进行仲裁的有效点。但并不是说,仲裁就一定要在此处,但这个信号确实可以保持有效点连续传输。
对于packet开始的边界,标准也没有明确的定义,但可以通过复位后第一次出现置位TID和TDEST来判定,也可通过,先前包传输后的第一次传输出现置位TID和TDEST来判定。对TID和TDEST来说,一个包内的所有bytes都应该来自同一个源以及去同一个目的地,所以,一个包内的TID和TDEST数值应当一致。也要注意,不同包是不支持重新组的。
源和目的信号(Source and destination signaling)
TID:提供一个流ID,用于区分不同streams传输通过同一个接口
TDEST:为数据streams提供粗略的路由信息
内部互联(interconnect)可以操作TID和TDEST信号,任何对这两个信号的操作必须不同流的TID和TDEST不一样。
最近在学习CAN,记录一下,也供大家参考交流。推荐几个我觉得很好的CAN学习,本文也是在看了他们的好文之后做的笔记首先是瑞萨的CAN入门,真的通透;秀!靠这篇我竟然2天理解了CAN协议!实战STM32F4CAN!原文链接:https://blog.csdn.net/XiaoXiaoPengBo/article/details/116206252CAN详解(小白教程)原文链接:https://blog.csdn.net/xwwwj/article/details/105372234一篇易懂的CAN通讯协议指南1一篇易懂的CAN通讯协议指南1-知乎(zhihu.com)视频推荐CAN总线个人知识总
在VMware16.2.4安装Ubuntu一、安装VMware1.打开VMwareWorkstationPro官网,点击即可进入。2.进入后向下滑动找到Workstation16ProforWindows,点击立即下载。3.下载完成,文件大小615MB,如下图:4.鼠标右击,以管理员身份运行。5.点击下一步6.勾选条款,点击下一步7.先勾选,再点击下一步8.去掉勾选,点击下一步9.点击下一步10.点击安装11.点击许可证12.在百度上搜索VM16许可证,复制填入,然后点击输入即可,亲测有效。13.点击完成14.重启系统,点击是15.双击VMwareWorkstationPro图标,进入虚拟机主
转自:spring.profiles.active和spring.profiles.include的使用及区别说明下文笔者讲述spring.profiles.active和spring.profiles.include的区别简介说明,如下所示我们都知道,在日常开发中,开发|测试|生产环境都拥有不同的配置信息如:jdbc地址、ip、端口等此时为了避免每次都修改全部信息,我们则可以采用以上的属性处理此类异常spring.profiles.active属性例:配置文件,可使用以下方式定义application-${profile}.properties开发环境配置文件:application-dev
多年来,我在各种网站上遇到过各种问题,用户在字符串和文本字段的开头/结尾放置空格。有时这些会导致格式/布局问题,有时会导致搜索问题(即搜索顺序看起来不对,但实际上并非如此),有时它们实际上会使应用程序崩溃。我认为这会很有用,而不是像我过去所做的那样放入一堆before_save回调,向ActiveRecord添加一些功能以在保存之前自动调用任何字符串/文本字段上的.strip,除非我告诉它不是,例如do_not_strip:field_x,:field_y或类定义顶部的类似内容。在我去弄清楚如何做到这一点之前,有没有人看到更好的解决方案?明确一点,我已经知道我可以做到这一点:befor
尝试通过SSL连接到ImgurAPI时出现错误。这是代码和错误:API_URI=URI.parse('https://api.imgur.com')API_PUBLIC_KEY='Client-ID--'ENDPOINTS={:image=>'/3/image',:gallery=>'/3/gallery'}#Public:Uploadanimage##args-Theimagepathfortheimagetoupload#defupload(image_path)http=Net::HTTP.new(API_URI.host)http.use_ssl=truehttp.verify
1.问题描述使用Python的turtle(海龟绘图)模块提供的函数绘制直线。2.问题分析一幅复杂的图形通常都可以由点、直线、三角形、矩形、平行四边形、圆、椭圆和圆弧等基本图形组成。其中的三角形、矩形、平行四边形又可以由直线组成,而直线又是由两个点确定的。我们使用Python的turtle模块所提供的函数来绘制直线。在使用之前我们先介绍一下turtle模块的相关知识点。turtle模块提供面向对象和面向过程两种形式的海龟绘图基本组件。面向对象的接口类如下:1)TurtleScreen类:定义图形窗口作为绘图海龟的运动场。它的构造器需要一个tkinter.Canvas或ScrolledCanva
目录0专栏介绍1平面2R机器人概述2运动学建模2.1正运动学模型2.2逆运动学模型2.3机器人运动学仿真3动力学建模3.1计算动能3.2势能计算与动力学方程3.3动力学仿真0专栏介绍?附C++/Python/Matlab全套代码?课程设计、毕业设计、创新竞赛必备!详细介绍全局规划(图搜索、采样法、智能算法等);局部规划(DWA、APF等);曲线优化(贝塞尔曲线、B样条曲线等)。?详情:图解自动驾驶中的运动规划(MotionPlanning),附几十种规划算法1平面2R机器人概述如图1所示为本文的研究本体——平面2R机器人。对参数进行如下定义:机器人广义坐标
网站的日志分析,是seo优化不可忽视的一门功课,但网站越大,每天产生的日志就越大,大站一天都可以产生几个G的网站日志,如果光靠肉眼去分析,那可能看到猴年马月都看不完,因此借助网站日志分析工具去分析网站日志,那将会使网站日志分析工作变得更简单。下面推荐两款网站日志分析软件。第一款:逆火网站日志分析器逆火网站日志分析器是一款功能全面的网站服务器日志分析软件。通过分析网站的日志文件,不仅能够精准的知道网站的访问量、网站的访问来源,网站的广告点击,访客的地区统计,搜索引擎关键字查询等,还能够一次性分析多个网站的日志文件,让你轻松管理网站。逆火网站日志分析器下载地址:https://pan.baidu.
一、什么是MQTT协议MessageQueuingTelemetryTransport:消息队列遥测传输协议。是一种基于客户端-服务端的发布/订阅模式。与HTTP一样,基于TCP/IP协议之上的通讯协议,提供有序、无损、双向连接,由IBM(蓝色巨人)发布。原理:(1)MQTT协议身份和消息格式有三种身份:发布者(Publish)、代理(Broker)(服务器)、订阅者(Subscribe)。其中,消息的发布者和订阅者都是客户端,消息代理是服务器,消息发布者可以同时是订阅者。MQTT传输的消息分为:主题(Topic)和负载(payload)两部分Topic,可以理解为消息的类型,订阅者订阅(Su
一、机器人介绍 此处是基于MATLABRVC工具箱,对ABB-IRB-1200型号的微型机械臂进行正逆向运动学分析,并利Simulink工具实现对机械臂进行具有动力学参数的末端轨迹规划仿真,最后根据机械模型设计Simulink-Adams联合仿真。 图1.ABBIRB 1200尺寸参数示意图ABBIRB 1200提供的两种型号广泛适用于各作业,且两者间零部件通用,两种型号的工作范围分别为700 mm 和 900 mm,大有效负载分别为 7 kg 和5 kg。 IRB 1200 能够在狭小空间内能发挥其工作范围与性能优势,具有全新的设计、小型化的体积、高效的性能、易于集成、便捷的接