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

相关文章

Python使用国内镜像加速pip安装的方法讲解

《Python使用国内镜像加速pip安装的方法讲解》在Python开发中,pip是一个非常重要的工具,用于安装和管理Python的第三方库,然而,在国内使用pip安装依赖时,往往会因为网络问题而导致速... 目录一、pip 工具简介1. 什么是 pip?2. 什么是 -i 参数?二、国内镜像源的选择三、如何

Ubuntu固定虚拟机ip地址的方法教程

《Ubuntu固定虚拟机ip地址的方法教程》本文详细介绍了如何在Ubuntu虚拟机中固定IP地址,包括检查和编辑`/etc/apt/sources.list`文件、更新网络配置文件以及使用Networ... 1、由于虚拟机网络是桥接,所以ip地址会不停地变化,接下来我们就讲述ip如何固定 2、如果apt安

Python itertools中accumulate函数用法及使用运用详细讲解

《Pythonitertools中accumulate函数用法及使用运用详细讲解》:本文主要介绍Python的itertools库中的accumulate函数,该函数可以计算累积和或通过指定函数... 目录1.1前言:1.2定义:1.3衍生用法:1.3Leetcode的实际运用:总结 1.1前言:本文将详

查询SQL Server数据库服务器IP地址的多种有效方法

《查询SQLServer数据库服务器IP地址的多种有效方法》作为数据库管理员或开发人员,了解如何查询SQLServer数据库服务器的IP地址是一项重要技能,本文将介绍几种简单而有效的方法,帮助你轻松... 目录使用T-SQL查询方法1:使用系统函数方法2:使用系统视图使用SQL Server Configu

Spring Boot Actuator使用说明

《SpringBootActuator使用说明》SpringBootActuator是一个用于监控和管理SpringBoot应用程序的强大工具,通过引入依赖并配置,可以启用默认的监控接口,... 目录项目里引入下面这个依赖使用场景总结说明:本文介绍Spring Boot Actuator的使用,关于Spri

使用Java实现获取客户端IP地址

《使用Java实现获取客户端IP地址》这篇文章主要为大家详细介绍了如何使用Java实现获取客户端IP地址,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 首先是获取 IP,直接上代码import org.springframework.web.context.request.Requ

C++实现获取本机MAC地址与IP地址

《C++实现获取本机MAC地址与IP地址》这篇文章主要为大家详细介绍了C++实现获取本机MAC地址与IP地址的两种方式,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 实际工作中,项目上常常需要获取本机的IP地址和MAC地址,在此使用两种方案获取1.MFC中获取IP和MAC地址获取

C/C++通过IP获取局域网网卡MAC地址

《C/C++通过IP获取局域网网卡MAC地址》这篇文章主要为大家详细介绍了C++如何通过Win32API函数SendARP从IP地址获取局域网内网卡的MAC地址,感兴趣的小伙伴可以跟随小编一起学习一下... C/C++通过IP获取局域网网卡MAC地址通过win32 SendARP获取MAC地址代码#i

Redis的Zset类型及相关命令详细讲解

《Redis的Zset类型及相关命令详细讲解》:本文主要介绍Redis的Zset类型及相关命令的相关资料,有序集合Zset是一种Redis数据结构,它类似于集合Set,但每个元素都有一个关联的分数... 目录Zset简介ZADDZCARDZCOUNTZRANGEZREVRANGEZRANGEBYSCOREZ

Go中sync.Once源码的深度讲解

《Go中sync.Once源码的深度讲解》sync.Once是Go语言标准库中的一个同步原语,用于确保某个操作只执行一次,本文将从源码出发为大家详细介绍一下sync.Once的具体使用,x希望对大家有... 目录概念简单示例源码解读总结概念sync.Once是Go语言标准库中的一个同步原语,用于确保某个操