SRIO—IP讲解及说明

2024-02-29 01:44
文章标签 讲解 ip 说明 srio

本文主要是介绍SRIO—IP讲解及说明,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、SRIO IP 概述
    • 1.1 逻辑层
      • 1.1.1 I/O 端口(I/O Port)
      • 1.1.2 消息端口(Messaing Port)
      • 1.1.3 用户自定义端口(User-Defined Port)
      • 1.1.4 维护端口(Maintenance Port)
    • 1.2 缓冲层
    • 1.3 物理层
  • 二、协议格式
    • 2.1 传输数据量小于 8 字节
    • 2.2 传输的数据量大于 8 字节
  • 三、SRIO IP 的创建及讲解
  • 四、Example Design 生成
    • 4.1 时钟逻辑
    • 4.2 复位逻辑


前言

本章将为大家介绍 “Serial RapidIO Gen2 ”IP 的使用以及配置方法。“Serial RapidIO Gen2 ”IP 在进行数据传输时需要按照 Rapidio 协议进行数据传输。Rapidio 协议组成的基本要素是包和控制符号:包是基于各种协议的传输数据内容,控制符号则用于控制物理层数据交互的方式。本章实验的方案是产生一组累加的测试数据,测试数据在经过光模块后再对数据进行接收,将发送和接收的数据进行对比,从而测试我们的开发板是否支持“Serial RapidIO Gen2 ”IP 数据的收发。


提示:任何文章不要过度深思!万事万物都经不起审视,因为世上没有同样的成长环境,也没有同样的认知水平,更「没有适用于所有人的解决方案」 ;不要急着评判文章列出的观点,只需代入其中,适度审视一番自己即可,能「跳脱出来从外人的角度看看现在的自己处在什么样的阶段」才不为俗人 。怎么想、怎么做,全在乎自己「不断实践中寻找适合自己的大道」

一、SRIO IP 概述

RapidIO 是由 Motorola 和 Mercury 等公司率先倡导的一种高性能、 低引脚数,基于数据包交换的互连体系结构,是为满足高性能嵌入式系统需求而设计的一种开放式互连技术标准。RapidIO 最初是使用并行总线,但是并行总线需要较多的引脚数。现在使用较多的都是串行总线 RapidIO,即 SRIO。并行总线和串行总线它们之间只是物理接口不同,它们具有相同的编程模型,事务处理,
以及寻址机制。接下来我们主要介绍串行总线 RapidIO 即 SRIO。SRIO IP 被划分为三层:逻辑层(Logical Layer),缓冲层(Buffer)以及物理层(Physical Layer),如图所示。
在这里插入图片描述
下面我们来对逻辑层(Logical Layer),缓冲层(Buffer)以及物理层(Physical Layer)分别展开介绍。

1.1 逻辑层

逻辑层(Logical Layer)又被划分成几个模块来控制并且解析发送和接收数据包。逻辑层(Logical Layer)有三个接口:用户接口(User Interface),传输接口(Transport Interface)和配置接口(Configuration Fabric Interface)。用户接口(User Interface)能够接收和发送数据数据包,当生成 SRIO IP 核的时候可以配置端口的事务类型,同时还可以通过 AXI4_Lite 接口发起维护事务对本地或者远程的寄存器进行访问或者配置。传输接口(Transport Interface)包含发送和接收两个端口,它是用来连接中间的 Buffer,对于 SRIO 的顶层来说这两个端口并不可见;配置接口(Configuration Fabric Interface)也包含两个端口,其中配置主机端口(Configuration Master Port)用来读写本地配置空间,而逻辑配置寄存器端口(LOG Configuration Register Port)则是用来读写一部分逻辑层或者是传输层配置寄存器。而对于 SRIO IP 核来说,最需要关注的就是用户接口
(User Interface)。
在这里插入图片描述
下面将着重为大家介绍用户接口(User Interface),用户接口(User Interface)包含 I/O 端口和三个可选的端口,三个可选端口分别为消息端口( Messaging Port ), 维 护 端 口 ( Maintenance Port ) 以 及 用 户 自 定 义 端 口(User_Defined

这篇关于SRIO—IP讲解及说明的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Redis中哨兵机制和集群的区别及说明

《Redis中哨兵机制和集群的区别及说明》Redis哨兵通过主从复制实现高可用,适用于中小规模数据;集群采用分布式分片,支持动态扩展,适合大规模数据,哨兵管理简单但扩展性弱,集群性能更强但架构复杂,根... 目录一、架构设计与节点角色1. 哨兵机制(Sentinel)2. 集群(Cluster)二、数据分片

Unity新手入门学习殿堂级知识详细讲解(图文)

《Unity新手入门学习殿堂级知识详细讲解(图文)》Unity是一款跨平台游戏引擎,支持2D/3D及VR/AR开发,核心功能模块包括图形、音频、物理等,通过可视化编辑器与脚本扩展实现开发,项目结构含A... 目录入门概述什么是 UnityUnity引擎基础认知编辑器核心操作Unity 编辑器项目模式分类工程

Springboot项目构建时各种依赖详细介绍与依赖关系说明详解

《Springboot项目构建时各种依赖详细介绍与依赖关系说明详解》SpringBoot通过spring-boot-dependencies统一依赖版本管理,spring-boot-starter-w... 目录一、spring-boot-dependencies1.简介2. 内容概览3.核心内容结构4.

Linux查询服务器 IP 地址的命令详解

《Linux查询服务器IP地址的命令详解》在服务器管理和网络运维中,快速准确地获取服务器的IP地址是一项基本但至关重要的技能,下面我们来看看Linux中查询服务器IP的相关命令使用吧... 目录一、hostname 命令:简单高效的 IP 查询工具命令详解实际应用技巧注意事项二、ip 命令:新一代网络配置全

redis和redission分布式锁原理及区别说明

《redis和redission分布式锁原理及区别说明》文章对比了synchronized、乐观锁、Redis分布式锁及Redission锁的原理与区别,指出在集群环境下synchronized失效,... 目录Redis和redission分布式锁原理及区别1、有的同伴想到了synchronized关键字

MySQL 临时表创建与使用详细说明

《MySQL临时表创建与使用详细说明》MySQL临时表是存储在内存或磁盘的临时数据表,会话结束时自动销毁,适合存储中间计算结果或临时数据集,其名称以#开头(如#TempTable),本文给大家介绍M... 目录mysql 临时表详细说明1.定义2.核心特性3.创建与使用4.典型应用场景5.生命周期管理6.注

Java中数组与栈和堆之间的关系说明

《Java中数组与栈和堆之间的关系说明》文章讲解了Java数组的初始化方式、内存存储机制、引用传递特性及遍历、排序、拷贝技巧,强调引用数据类型方法调用时形参可能修改实参,但需注意引用指向单一对象的特性... 目录Java中数组与栈和堆的关系遍历数组接下来是一些编程小技巧总结Java中数组与栈和堆的关系关于

MySQL连表查询之笛卡尔积查询的详细过程讲解

《MySQL连表查询之笛卡尔积查询的详细过程讲解》在使用MySQL或任何关系型数据库进行多表查询时,如果连接条件设置不当,就可能发生所谓的笛卡尔积现象,:本文主要介绍MySQL连表查询之笛卡尔积查... 目录一、笛卡尔积的数学本质二、mysql中的实现机制1. 显式语法2. 隐式语法3. 执行原理(以Nes

RabbitMQ消费端单线程与多线程案例讲解

《RabbitMQ消费端单线程与多线程案例讲解》文章解析RabbitMQ消费端单线程与多线程处理机制,说明concurrency控制消费者数量,max-concurrency控制最大线程数,prefe... 目录 一、基础概念详细解释:举个例子:✅ 单消费者 + 单线程消费❌ 单消费者 + 多线程消费❌ 多

mybatis-plus QueryWrapper中or,and的使用及说明

《mybatis-plusQueryWrapper中or,and的使用及说明》使用MyBatisPlusQueryWrapper时,因同时添加角色权限固定条件和多字段模糊查询导致数据异常展示,排查发... 目录QueryWrapper中or,and使用列表中还要同时模糊查询多个字段经过排查这就导致只要whe