PCIE协议-2-事务层规范-Virtual Channel (VC) Mechanism

2.5 虚拟通道(VC)机制

虚拟通道(VC)机制提供了对可以在整个结构中传输使用TC(流量类别)标签区分的流量的支持。VC的基础是独立的结构资源(队列/缓冲区及其相关的控制逻辑)。这些资源被用来在具有完全独立的流控制的不同VC之间跨链路移动信息。这对于解决流控制引起的阻塞问题至关重要,其中单个流量可能为系统中的所有流量创建瓶颈。

通过将具有特定TC标签的数据包映射到相应的VC,将流量与VC关联起来。VC和多功能虚拟通道(MFVC)机制允许灵活地将TC映射到VC上。在最简单的形式中,TC可以一对一地映射到VC上。为了允许性能/成本权衡,PCI Express提供了将多个TC映射到单个VC的能力。第2.5.2节涵盖了TC到VC映射的详细信息。

当一个或多个TC与由虚拟通道识别(VC ID)指定的物理VC资源关联时,就会建立一个虚拟通道。这个过程由配置软件控制,如第6.3节、第7.9.1节和第7.9.2节所述。

支持默认的TC0/VC0对之外的TC和VC是可选的。TC0与VC0的关联是固定的,即“硬连线”的,并且必须由所有组件支持。因此,baseline TC/VC设置不需要任何VC特定的硬件或软件配置。为了确保互操作性,不实现可选的虚拟通道能力结构或多功能虚拟通道能力结构的组件必须遵守以下规则:

  • 请求者只能生成带有TC0标签的请求。(请注意,如果请求者使用除TC0之外的TC标签发起请求,那么这些请求可能会被实现扩展VC能力并应用TC过滤的链路另一侧的组件视为格式错误。)
  • 完成者必须接受带有非TC0标签的请求,并且必须保留TC标签。也就是说,它生成的任何完成事务都必须具有与请求标签相同的TC标签。

  • Switch必须将所有TC映射到VC0,并且必须转发所有事务,而不管TC标签是什么。

包含能够生成非TC0标签请求的功能的设备必须实现适当的VC(虚拟通道)或MFVC(多功能虚拟通道)能力结构(如适用),即使它只支持默认的VC。示例功能类型包括端点和根端口。这是为了能够启用超出默认配置的TC到VC的映射。它必须根据VC和MFVC能力结构的软件编程遵循TC/VC映射规则。

图2-45阐述了虚拟通道的概念。从概念上讲,通过VC流动的流量在传输端被复用到一个共同的物理链路资源上,并在接收端被解复用到单独的VC路径上。

在交换机内部,每个虚拟通道都需要专用的物理资源。图2-46从概念上展示了交换机内(如图2-45所示)支持上游方向流量流动所需的VC资源。

多功能设备(MFD)可以实现类似于交换机中的一部分虚拟通道资源,目的是为了管理来自不同功能到设备上游出口端口的上游请求的服务质量(Quality of Service,QoS)。

 2.5.1 虚拟通道识别(VC ID)

PCI Express端口可以支持1到8个虚拟通道 - 每个端口独立配置/管理,因此允许实现根据使用模型特定要求变化每个端口支持的虚拟通道数量。 这些虚拟通道使用VC ID机制唯一标识。

请注意,虽然数据链路层协议(DLLPs)包含用于流量控制计算的VC ID信息,但事务层包(TLPs)则不包含。为了流量控制计算的目的,将TLPs与VC ID关联是在链路的每个端口使用TC到VC映射完成的,如第2.5.2节中讨论的。

所有支持超过VC0的端口必须根据第7.9.1节的定义至少提供一个VC能力结构。多功能设备(MFD)允许实现第7.9.2节中定义的MFVC(多功能虚拟通道)能力结构。对于仅支持默认TC0/VC0配置的端口,提供这些扩展结构是可选的。配置软件负责为链路的两侧端口配置匹配数量的VC。这是通过扫描层次结构并使用与支持多于默认VC0的端口相关联的VC或MFVC能力寄存器来完成的,以建立链路的VC数量。在端口内分配VC ID到VC硬件资源的规则如下:

  • VC ID分配必须在每个端口内唯一 - 相同的VC ID不能分配给同一端口内的不同VC硬件资源。
  • VC ID分配必须在链路两侧的两个端口上相同(在VC数量及其ID方面匹配)。

如果MFD实现了MFVC能力结构,其VC硬件资源与其功能(Functions)的任何VC能力结构相关联的VC硬件资源是不同的。VC ID的唯一性要求(上述第一点)对MFVC和任何VC能力结构仍然单独适用。此外,VC ID跨链路匹配要求(上述第二点)适用于MFVC能力结构,但不适用于功能(Functions)的VC能力结构。

  • VC ID 0被分配并固定给默认VC。

2.5.2 TC到VC映射

每个支持的流量类别(Traffic Class)都必须映射到一个虚拟通道上。TC0到VC0的映射是固定的。除了TC0之外的TC到VC的映射是系统软件特定的。然而,映射算法必须遵守以下规则:

  • 一个或多个TC可以映射到一个VC上。
  • 任何端口或端点功能上,一个TC不能映射到多个VC上。
  • 链路两侧的端口上TC/VC映射必须相同。

表2-41提供了TC到VC映射的示例。

图2-47提供了在几种不同链路配置中TC(流量类别)到VC(虚拟通道)映射的图形说明。有关TC/VC的额外考虑,请参考第6.3节。

2.5.3 VC和TC规则

以下是与TC/VC机制相关的关键规则的总结:

  • 所有设备必须支持通用输入/输出流量类别,即TC0,并且必须实现默认的VC0。
  • 每个虚拟通道(VC)都有独立的流量控制。
  • 不同TC之间不需要排序关系。
  • 不同VC之间不需要排序关系。
  • 交换机的点对点能力适用于交换机支持的所有虚拟通道。
  • 多功能设备(MFD)在不同功能之间的点对点能力适用于MFD支持的所有虚拟通道。
  • 具有未映射到入口端口的任何已启用虚拟通道(VC)的流量类别(TC)的事务被视为畸形事务层数据包(TLP)由接收设备处理。
  • 对于交换机,具有未映射到目标出口端口的任何已启用VC的TC的事务被视为畸形TLP。
  • 对于根端口,具有未映射到目标根复合体(RCRB)的任何已启用VC的TC的事务被视为畸形TLP。
  • 对于具有多功能虚拟通道(MFVC)能力结构的多功能设备(MFD),任何具有未映射到MFVC能力结构中的已启用VC的TC的事务被视为畸形TLP。
  • 交换机必须支持每个端口独立的TC/VC映射配置。
  • 根复合体必须支持每个RCRB、相关根端口和任何RCiEPs独立的TC/VC映射配置。
  • 更多关于VC和TC机制的细节,包括配置、映射和仲裁,请参阅第6.3节。

 

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

遥感数据集制作(Potsdam数据集为例):TIF图像转JPG,TIF标签转PNG,图像重叠裁剪

文章目录 TIF图像转JPGTIF标签转PNG图像重叠裁剪图像重命名数据集转COCO格式数据集转VOC格式 遥感图像不同于一般的自然图像,由于波段数量、图像位深度等原因,TIF图像数据不能使用简单的格式转换方法。本文以Potsdam数据集为例,制作能够直接用…

信创电脑|暴雨新增兆芯KX-7000处理器版本

IT世界 5 月 15 日消息,暴雨公司信创家族新上架了一款搭载兆芯KX-7000系列处理器、摩尔线程8GB 显卡、16G DDR5 内存以及 512G SSD 的新配置台式电脑主机。 兆芯 KX-7000 处理器采用开先的 8 核 Chiplet互联架构,最高频率3.7 GHz,拥有 32MB 的…

2024最新软件测试【测试理论+ 接口测试】面试题(内附答案)

一、测试理论 3.1 你们原来项目的测试流程是怎么样的? 我们的测试流程主要有三个阶段:需求了解分析、测试准备、测试执行。 1、需求了解分析阶段 我们的 SE 会把需求文档给我们自己先去了解一到两天这样,之后我们会有一个需求澄清会议, …

干什么副业好呢?

选择适合自己的副业可以根据个人的兴趣、技能和时间来决定。以下是一些常见的副业选择 1. 在线销售 可以在电商平台上开设自己的网店,销售自己感兴趣的产品,如手工艺品、服装、配饰等。 2. 做任务 网上我还在做的致米宝库,一个月有个一千多…

shiro_attack工具-shiro反序列化漏洞的快速检测和利用

shiro反序列化漏洞的快速检测和利用 前言 今天分享一个好用的渗透测试工具,主要是针对shiro框架漏洞的,它可以自动的爆破shiro密钥,同时可以写入大马,本人实战中觉得很好用!!! 工具名称 shi…

自学VBA 设置单元格文字格式 笔记

一.设定对应单元格对应需要显示的格式 Cells(1, 1).Font.Size 18 字体大小 Cells(1, 2).Font.Color RGB(255, 0, 0) 字体颜色 Cells(1, 3).Font.Name "黑体" 字体类型 Cells(1, 4).Font.Italic True 字体斜体 Cells(1, 5).Font.FontStyle "BOLD"…

哈夫曼编码的应用

数据结构与算法课的一个简单实验,记录一下,以供参考。 文章目录 要求测试样例统计字母出现次数建立哈夫曼树对字符编码对原文进行编码译码 要求 输入一段100—200字的英文短文,存入一文件a中。统计短文出现的字母个数n及每个字母的出现次数…

stm32ADC注入通道使用笔记(以STM32F407 为例)

ADC_JDR1 存放的是第一次转换的数据 ADC_JDR2 存放的是第二次转换的数据 ADC_JDR3 存放的是第三次转换的数据 ADC_JDR4 存放的是第四次转换的数据 1.当 JL 0(定序器中有 1 次注入转换)时,ADC 将仅转换 JSQ4[4:0] 通道。值存入ADC_JDR1中…

表现层设计模式_1.MVC模式

1.MVC模式三个核心模块 MVC是一种目前广泛流行的软件设计模式。近年来,随着Java EE的成熟,MVC成为了Java EE平台上推荐的一种设计模式。MVC强制性地把一个应用的输入、处理、输出流程按照视图、控制、模型的方式进行分离,形成了控制器…

战网国际服加速器哪个好用 暴雪战网免费加速器分享

战网国际服(Battle.net International或Battle.net Global)是由暴雪娱乐公司(Blizzard Entertainment)运营的面向全球玩家的多人在线游戏平台。与专注于特定地区的版本不同,国际服允许玩家不受地域限制地访问暴雪的多款…

1:硬件测试面试

1:板级测试 . JTAG和Boundary Scan 对于硬件板级测试,我使⽤JTAG和Boundary Scan技术进⾏⾃动化测试。这些技术可以帮助我访问PCB 上的芯⽚引脚,从⽽进⾏信号测量、连通性测试和故障诊断。 2:整机测试 3:测试准备 4…

第189题|幂级数的展开的常规方法(二)|武忠祥老师每日一题

解题思路:将函数展开成幂级数有两种方法:一种是直接法(这种一般比较麻烦),一种是拆解成现有展开式展开(这种的特征一般是能因式分解)。 第一步: 这里看到 ln(1-x-2x^2) 将里面的式…

【图神经网络——消息传递】

消息传递机制 画图先:导包:画图: 实现消息传递:例子一:例子二: 画图先: 导包: import networkx as nx import matplotlib.pyplot as plt import torch from torch_geometric.nn im…

蛋白聚乙二醇化修饰检测试剂盒

蛋白多肽因其高生物活性、高特异性等优点备受药物开发商和研究者的青睐。但分子量大、亲水性强、稳定性差等劣势限制了蛋白多肽在临床上的应用,特别是蛋白多肽作为一种异源蛋白具有很强的免疫原性,容易被机体免疫系统识别并清除,导致药物的血…

动态规划-两个数组的dp问题3

文章目录 1. 两个字符串的最小ASCII删除和(712)2. 最长重复子数组(718) 1. 两个字符串的最小ASCII删除和(712) 题目描述: 状态表示: 根据经验以及题目要求,建立二维数…

zabbix触发器配置定期生效教程

在企业生产过程中,并非所有的设备都需要全天候、满负载运转,也有些仅需要周期性的运转即可。例如,在某家企业,有一批这样的机器,每天都会在固定的时间跑批量任务,期间,机器的CPU使用率会有明显的…

学前端网络安全这块还不懂?细说CSRF

什么是CSRF? 举个栗子,比如我们需要在某个博客上删除一个文章,攻击者首先在自己的域构造一个页面,使用了一个img标签,其地址指向了删除博客的链接。攻击者诱使目标用户,也就是博客主访问这个页面&#xff…

脉冲水路清洗机,全自动脉冲技术清除管道堵塞

邦注脉冲水路清洗机是一种高效的清洗设备,它利用全自动脉冲技术来清除管道内的堵塞和污垢。以下是对该设备的一些详细描述: 全自动脉冲技术:脉冲水路清洗机采用了全自动脉冲技术,这是一种先进的清洗方法。该技术通过产生高强度的…

##21 深入理解文本处理:使用PyTorch进行NLP基础操作

文章目录 前言简介文本预处理实现分词构建词汇表 文本向量化构建简单的文本分类模型结论 前言 在现代深度学习应用中,文本处理是不可或缺的一部分,尤其在自然语言处理(NLP)领域。借助强大的框架如PyTorch,我们可以更加…

AI 绘画神器 Fooocus 图生图:图像放大或变化、图像提示、图像重绘或扩充、反推提示词、生成参数提取、所需模型下载

本文收录于《AI绘画从入门到精通》专栏,专栏总目录:点这里,订阅后可阅读专栏内所有文章。 大家好,我是水滴~~ 本文讲述 Fooocus 的图生图功能,主要内容包括:图像放大或变化、图像提示、图像重绘或扩充、反推…