0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

PCIe总线实现了一种叫做Quality of Service(QoS)的机制

SwM2_ChinaAET 来源:未知 作者:李倩 2018-05-25 09:21 次阅读

前面的文章中介绍过,为了保证视频音频等数据得到优先传输,PCIe总线实现了一种叫做Quality of Service(QoS)的机制。QoS可以满足视频、音频等对Latency和实时性(Isochronous)要求比较高(一般不可以被打断)的应用需求。QoS主要通过VC(Virtual Channel)和TC(Traffic Class)来实现。

VC的相关寄存器位于PCIe配置空间的扩展部分(PCIe Extended Capability Space),如下图所示:

前面的文章中介绍过,每一个VC都有独立的Buffer,某一个VC Buffer满了并不会影响其他VC的使用。但是只靠VC并不能实现QoS中的优先级的功能,这还需要TC(Traffic Class)的支持。TC的值由TLP Header中的Byte1的bit[6:4]定义,如下图所示。显然TC值的范围为0~7,值越大优先级越高,默认为0(优先级最低)。在初始化的时候,PCIe驱动程序会为每一种类型的包分配好合适的TC值(优先级)。

如果PCIe驱动程序没有找到PCIe Extended Capability Space,则认为该设备只有一个VC,即VC0。此时再为每一个TLP分配不同的TC值,显然是没有意义的。因此会默认采用TC0/VC0组合,即不支持QoS功能。换一句话说,如果某一个PCIe设备只支持一个VC(VC0),那么就没有QoS什么事了。

注:本次连载的博客只是简单地介绍QoS的功能和应用,关于QoS的详细内容,如VC仲裁,端口仲裁,实时性(Isochronous)等相关内容,还请参考PCIe Spec的相关章节。

PCIe驱动程序(配置软件)通过修改VC资源控制寄存器(VC Resource Control Register)中的TC/VC Map位来实现TC/VC Mapping。同时通过VC ID位来选择相应的VC。如下图所示:

图中的例子,TC0、TC1对应VC0,而TC2~TC4对应的是VC3。

TC/VC Mapping采用了一种灵活的机制,但是仍然需要注意以下几点:

· TC/VC Mapping是针对Link两端的端口(Ports)的;

· TC0会被自动地Map到VC0,且只能Map到VC0;

· 其他的TC可以被Map到任意的VC上;

· 一个TC一般最多只能Map到一个VC上;

· 可以有TC或者VC不被使用。

如果Link的两个端口(Ports)中,VC数量不一致,则该Link只能服从VC数量少的端口,如下图所示:

PCIe驱动程序可以通过查询扩展配置空间中的Extended VC Count来确定该端口支持的VC数量,如下图所示:

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 寄存器
    +关注

    关注

    31

    文章

    5342

    浏览量

    120322
  • 总线
    +关注

    关注

    10

    文章

    2881

    浏览量

    88075
  • PCIe
    +关注

    关注

    15

    文章

    1238

    浏览量

    82636

原文标题:【博文连载】PCIe扫盲——Quality of Service简介

文章出处:【微信号:ChinaAET,微信公众号:电子威廉希尔官方网站 应用ChinaAET】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    什么是PM QoS

    什么是PM QoSQoS全称叫做Quality of Service,直译过来就是“服务质量”的含义。既然它是服务质量,自然需要有两个主体对象:个服务方(servicer),
    发表于 12-27 06:38

    一种IEEE 802.16宽带无线接入系统的QoS架构

    IEEE 802.16 MAC 协议虽然对各类业务的QoS 提供支持,却没有定义完整的QoS保证机制。本文通过分析IEEE 802.16 现有的QoS 架构,提出了
    发表于 09-15 15:06 7次下载

    QoS Control in Streaming Media

    In this paper, the QoS(Quality of Service) control in streaming media is discussed
    发表于 12-12 11:56 11次下载

    无线路由器的QoS支持

    无线路由器的QoS支持  QoS的英文全称为"Quality of Service",中文名为"服务质量"。QoS是网络
    发表于 01-06 11:37 978次阅读

    路由器QoS支持

    路由器QoS支持              QoS的英文全称为"Quality of Ser
    发表于 01-08 15:14 583次阅读

    QoS是什么啊?

    QoS是什么啊? QoS(Quality of Service),中文名为"服务质量"。它是指网络提供更高优先服务的一种能力,包括专用带宽
    发表于 02-03 17:29 1027次阅读

    什么是QOS

    什么是QOS   术语名称:Quality of Service statements(QOS) 术语解释:服务质量,评价传输质量和差错率的度量,通常作为衡
    发表于 02-24 10:04 1017次阅读

    网络qos威廉希尔官方网站 _qos是什么

    QoS(Quality of Service)服务质量,是网络的一种安全机制,是用来解决网络延迟和阻塞等问题的
    发表于 12-19 15:59 5310次阅读

    一种时延保证的QoS路由协议_邢阳

    一种时延保证的QoS路由协议_邢阳
    发表于 03-19 11:46 0次下载

    基于汇聚数据流实现QoS

    集成服务(lntegrated Service,IntServ)是IETF针对服务质量(Quality of ServiceQoS)提出的一种
    发表于 12-12 19:01 0次下载
    基于汇聚数据流<b class='flag-5'>实现</b><b class='flag-5'>QoS</b>

    一种简单而高效的QoS机制:IEEE802.1Q下的预整形机制

    / CBS和TSN / TAS都提供有效的QoS机制,并且可以组合使用,这为设计人员提供许多可能性。 但是,使
    的头像 发表于 06-09 16:15 4616次阅读
    <b class='flag-5'>一种</b>简单而高效的<b class='flag-5'>QoS</b><b class='flag-5'>机制</b>:IEEE802.1Q下的预整形<b class='flag-5'>机制</b>

    常用的QoS威廉希尔官方网站 如何解决网络延迟和阻塞

    QoSQuality of Service,服务质量)指个网络能够利用各种基础威廉希尔官方网站 ,为指定的网络通信提供更好的服务能力,是网络的一种安全
    发表于 10-25 10:55 1529次阅读

    简单介绍GaussDB网络调度涉及的调度算法

    QoSQuality of Service)即服务质量,是一种调度控制机制,是网络设计和运维的重要威廉希尔官方网站 。
    的头像 发表于 03-13 10:13 821次阅读

    服务质量QoSQuality of Service)在网络中的重要性

    QoSQuality of Service)即服务质量,在网络业务中可以通过保证传输的带宽、降低传输时延、降低数据丢包率以及时延抖动等措施来提高服务质量。QoS
    的头像 发表于 03-16 09:24 1778次阅读
    服务质量<b class='flag-5'>QoS</b>(<b class='flag-5'>Quality</b> of <b class='flag-5'>Service</b>)在网络中的重要性

    什么是网络中的服务质量 (QoS),其相关威廉希尔官方网站 和关键指标有哪些?

    QoSQuality of Service,服务质量)指个网络能够利用各种基础威廉希尔官方网站 ,为指定的网络通信提供更好的服务能力,是网络的一种安全
    的头像 发表于 08-30 21:53 1222次阅读
    什么是网络中的服务质量 (<b class='flag-5'>QoS</b>),其相关威廉希尔官方网站
和关键指标有哪些?