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

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

3天内不再提示

CCIX规范的简单介绍

路科验证 来源:路科验证 作者:路科验证 2022-07-21 14:35 次阅读

简介

CCIX是一种能够将两个或两个以上器件通过缓存一致性的方式来共享数据的芯片间互联技术。CCIX旨在简化异构系统的架构设计,同时基于不同指令集(ISA)的处理器或应用特定的加速器提升系统的带宽、降低时延。为此,多家公司联合成立了一家新的行业标准机构—CCIX联盟,以推动CCIX技术的应用。如今,CCIX联盟逐渐发展壮大。

对于芯片互联网络,有两个指标是至关重要的:带宽和延时。CCIX 采用两种机制来提高性能、降低延时。第一种机制是采用缓存一致性,自动保持处理器和加速器的缓存一致,提升易用性、降低延时。第二种机制是提高CCIX 链路的原始带宽。最高的连接速率升至25GT/s (千兆传输/秒)。同时,CCIX 规范也规定了多个CCIX 端口可以通过端口聚合(Port Aggregation)技术,提供超过单个接口的性能,匹配加速器和内存扩展带宽。

CCIX 架构采用的是基于PCIe基本架构扩展的分层架构。CCIX 协议规范包含CCIX 协议层和CCIX链路层。这些层规定缓存一致性协议、报文发送、流量控制和CCIX 传输部分的协议。CCIX 传输规范包含CCIX 和PCIe事务层,PCIe 数据链路层,和CCIX 物理层。这些层负责器件间的物理连接,包括速率和带宽协商,传输包错误检测和重试,和初始包编码协议。

df72c56a-08a9-11ed-ba43-dac502259ad0.png

CCIX 协议层(CCIX Protocol Layer),负责一致性协议,包括内存的读/写。这一层提供了片上(On Chip)一致性协议(例如AMBA CHI)的简单映射。这一层定义的缓存状态使得硬件能够确定内存的状态。比如硬件可以确定数据是否唯一且未被修改(和内存一致),或是共享且被修改的(和内存不一致)。

CCIX 链路层(CCIX Link Layer),负责CCIX 协议层定义的代理(Agent)之间消息的传输格式。目前CCIX 链路层是构建在PCIe 之上,但是基于分层架构,CCIX 将来可以映射到不同的传输层。此外,这一层负责端口聚合(Port Aggregation),使得多个端口能够聚合在一起提升带宽。

CCIX 和PCIe 事务层(CCIX and PCIe Transaction Layer),负责处理它们各自的数据包。PCIe 协议支持部署虚拟通道,使得不同数据流可以通过一个PCIe 链路。将CCIX 和PCIe 传输流各分到一个虚拟通道,CCIX和PCIe 传输可以共享相同的链路。CCIX 能够传输标准的PCIe 包,或经过优化的CCIX 包(删减了PCIe 包里的几个不必要的字段)。传输标准的PCIe 包时,可以采用现有的PCIe 交换器。传输经过优化的CCIX 包,能降低PCIe的额外开销,使得一致性传输的包更小、更高效。

PCIe数据链路层,执行数据链路层的所有正常功能。这些功能包括CRC错误校验、包确认和超时检查,和信用初始化及交换。

CCIX/PCIe物理层的基础是PCIe 物理层。CCIX 扩展了物理层来支持25GT/S(千兆传输/秒)。这个较快的速率称为扩展速率模式(Extended Speed Mode,ESM)。

简单分析完CCIX分层结构,再来看CCIX的拓朴结构。CCIX 能够支持多种灵活的拓扑结构,如下图。

df9bb8f8-08a9-11ed-ba43-dac502259ad0.png

所有的CCIX器件至少有一个CCIX端口。一个CCIX端口可以关联一组物理管脚,用于和另一个CCIX 端口连接,在两个或多个不同芯片间交互信息

dfb99404-08a9-11ed-ba43-dac502259ad0.png

CCIX定义的代理类型包括:请求代理(RA)、主代理(HA)、从代理(SA)和错误代理(EA)。这些代理,和系统里的端口及链接统称CCIX 组件。一个代理在协议中用一个代理ID 来标识。

请求代理(Request Agent):一个请求代理对系统内的不同地址进行读、写操作。请求代理可以对它已经访问的地址的数据进行缓存。每个CCIX 请求代理可以有一个或多个处理单元(Processing Element)作为内部请求的发起者,请求由一个CCIX 架构的请求代理执行。根本上说CCIX 请求代理提供了加速器或CCIX 使能的IO 主设备向一致性系统内存的接口。

主代理(Home Agent):主代理负责管理指定的一段地址的数据一致性。当一个缓存行的状态需要改变时,主代理通过向所需的请求代理发出监听操作来保持一致性。

从代理(Slave Agent):CCIX 支持扩展系统内存,来包含外设所附的内存。这种情形出现在主代理在一个芯片上,而这个主代理关联的一些或全部物理内存在另一个芯片上时。这种架构组件(扩展内存)称为从代理。从代理不会被请求代理直接访问。请求代理总是访问一个主代理,然后主代理再访问从代理。

错误代理(Error Agent):一个错误代理接收并处理协议错误信息。协议错误信息由CCIX 组件发出。

CCIX 的一个关键优势,是它能支持主设备和加速器间通过采用无驱动的数据移动方式共享数据。而传统的PCIe 加速器需要驱动对加速器写入和读出数据,这增加了延时和计算开销。采用无驱动的数据移动方式,CCIX 还可以将系统内存扩展至主设备的内存之外。基于CCIX,每个支持CCIX 的设备的行为与现有NUMA操作系统中的节点类似。这种基于内存的方法利用了现有的操作系统功能。在这种模式下,用来共享的所有数据结构都放在处理器和加速器都可访问的共享内存里。这种数据共享模型可以消除加速器特定的控制与管理驱动,允许加速器资源由一个中心调度器安排的长时间运行的任务来调用。这个调度器可以是操作系统调度程序的一部分,或者是和操作系统调度程序协同。

以上是对CCIX规范的简单介绍,后面我们开始逐步分析CCIX规范。

审核编辑 :李倩

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

    关注

    2

    文章

    771

    浏览量

    36786
  • 架构
    +关注

    关注

    1

    文章

    493

    浏览量

    25325

原文标题:老秦带你探索CCIX(一)

文章出处:【微信号:Rocker-IC,微信公众号:路科验证】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    步进电机的简单介绍

    步进电机的命名,参数,转速简单介绍
    的头像 发表于 04-17 21:40 338次阅读

    万兆以太网规范解读

    万兆以太网规范,二是基于双绞线(或铜线)的局域网万兆以太网规范,三是基于光纤的广域网万兆以太网规范。下面分别予以介绍
    的头像 发表于 01-15 10:21 1255次阅读
    万兆以太网<b class='flag-5'>规范</b>解读

    QT串口通信的简单使用

    QT串口通信是上位机和下位机通信常用的通信方式, 也是学习QT必须学会的基础知识, 这篇就简单介绍一下QT串口通信的简单使用.
    的头像 发表于 01-15 09:27 930次阅读
    QT串口通信的<b class='flag-5'>简单</b>使用

    简单的led驱动电路介绍

    LED驱动电路是用于控制LED灯的亮度和颜色的一种电子电路。在这篇文章中,我们将介绍简单的LED驱动电路——恒流驱动电路。 一、什么是恒流驱动电路? 恒流驱动电路是一种能够保持LED电流恒定的电路
    的头像 发表于 12-30 15:28 2668次阅读
    最<b class='flag-5'>简单</b>的led驱动电路<b class='flag-5'>介绍</b>

    psci接口规范介绍

    由于psci是由linux内核调用bl31中的安全服务,实现cpu电源管理功能的。因此其软件架构包含三个部分: (1)内核与bl31之间的调用接口规范 (2)内核中的架构 (3)bl31中的架构
    的头像 发表于 12-05 16:53 505次阅读

    西门子直流调速工作原理简单介绍

    西门子直流调速工作原理简单介绍
    的头像 发表于 11-29 08:55 707次阅读

    JESD204B规范的传输层介绍

    电子发烧友网站提供《JESD204B规范的传输层介绍.pdf》资料免费下载
    发表于 11-28 10:43 0次下载
    JESD204B<b class='flag-5'>规范</b>的传输层<b class='flag-5'>介绍</b>

    电源模块耐压测试的标准及其规范是什么?要如何测试?

    电源模块耐压测试的标准及其规范是什么?要如何测试? 电源模块是电子设备中至关重要的部分,其耐压测试是确保产品质量和安全性的重要环节。在进行耐压测试时,需要遵循特定的标准和规范,下面将详细介绍电源模块
    的头像 发表于 11-10 14:22 2917次阅读

    电阻的选型规范

    “ 电阻是最广泛应用的无源器件,看似参数简单,往往被错误应用。本文详细讲解电阻的选型规范。 ” 本文分三小节,1.电阻的分类, 如何根据应用选择电阻类型;2.电阻的阻值速查表;3.电阻降额规范
    的头像 发表于 11-03 16:40 1121次阅读
    电阻的选型<b class='flag-5'>规范</b>

    常见几种硬盘的简单介绍

    常见几种硬盘的简单介绍 硬盘是服务器托管用户主机主要的数据存储介质。目前硬盘的种类有三类,不同的选择方案也会有不同的优劣对比。下面讲讲他们之间有什么不同吧    固态硬盘:  用固态电子存储芯片阵列
    发表于 10-18 16:56

    FPGA芯片外围电路设计规范和配置过程

    小编在本节介绍FPGA芯片外围电路设计规范和配置过程,篇幅比较大,时钟的设计原则就有17条,伙伴们耐心读一读。
    的头像 发表于 08-15 16:18 4992次阅读
    FPGA芯片外围电路设计<b class='flag-5'>规范</b>和配置过程

    工业平板电脑简单介绍

    【佳维视】工业平板电脑介绍
    的头像 发表于 08-14 15:53 931次阅读

    AMBA ATB协议规范

    规范描述了AMBA ATB协议。本规范中对ATB的所有引用均指AMBA ATB。本文件中的信息取代CoreSight体系结构规范中的ATB信息
    发表于 08-11 07:39

    Arm的DRTM体系结构规范

    的原理和术语,但也包含了显著的差异。 本规范的结构如下: •第2节,DRTM体系结构概述,概述了DRTM,并介绍了该体系结构如何将DRTM映射到基于Arm的系统。本节介绍了与TCG定义的体系结构之间的差异
    发表于 08-08 07:45

    介绍消防应急灯安装规范

    【大成智慧应急灯厂家】介绍消防应急灯安装规范 消防应急灯是一种非常重要的设备,它可以在火灾等紧急情况下提供照明和指示,帮助人们安全疏散。因此,消防应急灯的安装非常重要,必须按照规范进行。下面是消防
    的头像 发表于 07-19 10:14 3968次阅读