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

    文章

    836

    浏览量

    39712
  • 架构
    +关注

    关注

    1

    文章

    533

    浏览量

    26506

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

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

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    简单的内联汇编介绍

    这次主要学习了使用内联汇编完成一些较为简单的操作。我们思考接下来在程序中插入跳转指令来实现一些想要实现的操作以及对自行设计的硬件进行操作。
    发表于 10-30 08:04

    NICE端口相关信号简单介绍与配置

    以下对自定义指令情况下的NICE各个端口配置进行详细介绍。 由于NICE模块的输入端口由CPU发送相关信号,因此仅对NICE返回给CPU的端口进行介绍。 NICE返回给CPU的端口分为返回给
    发表于 10-30 07:57

    PCIe 8.0规范开发更新!

    电子发烧友网综合报道,近日,PCI-SIG宣布PCI Express 8.0规范的Version 0.3 版本已获得工作组批准,现已向PCI-SIG 会员开放。这标志着PCIe 8.0 规范完成
    的头像 发表于 09-25 09:21 5506次阅读
    PCIe 8.0<b class='flag-5'>规范</b>开发更新!

    风华电阻器命名规范解析

    在电子制造与维修领域,电阻器作为最基本的电子元器件之一,其命名规范对于元器件的选型、采购、库存管理以及应用都具有重要意义。风华电阻器作为国内知名的电阻器品牌,其命名规范遵循一定的行业标准和内部规则
    的头像 发表于 09-22 15:22 409次阅读
    风华电阻器命名<b class='flag-5'>规范</b>解析

    一个简单的串联电池组充放电实验

    文章介绍了电池充放电中的数据采集并简单阶段了电池容量
    的头像 发表于 07-03 14:41 1101次阅读
    一个<b class='flag-5'>简单</b>的串联电池组充放电实验

    11节PCB实际案例课程+大厂内部PCB设计规范文档(13920字)

    资料介绍 每个课程1个半小时左右,都是讲具体设计案例,非常详细,需要的朋友自取~ 设计规范就更基础一些!尤其对于新手来说,从PCB的设计步骤到阻抗计算、bom分析全部都有涉及,还有一些实用的软件
    发表于 04-02 15:28

    PCB最全封装命名规范

    范围本规范适用于主流EDA软件在PCB设计前的封装建库命名。 获取完整文档资料可下载附件哦!!!!
    发表于 03-12 13:26

    华为PCBA检验规范.pdf

    华为PCBA检验规范.pdf
    的头像 发表于 02-26 13:54 1319次阅读
    华为PCBA检验<b class='flag-5'>规范</b>.pdf

    通用串行总线3.0规范

    USB3.0规范
    发表于 02-25 17:43 1次下载

    map指令简单介绍

    当然这里写的都是官方文档是已经写过的,我简单抄一下哈。
    的头像 发表于 02-13 09:54 677次阅读

    AMBA AHB协议规范

    电子发烧友网站提供《AMBA AHB协议规范.pdf》资料免费下载
    发表于 02-11 15:51 2次下载

    中兴通讯的PCB设计规范

    中兴通讯的PCB设计规范
    发表于 02-08 15:31 9次下载

    华为支付接入规范

    空白页拉起收银台。 华为支付设计规范 华为支付是一种方便、安全和快捷的支付方式。 1.场景介绍 华为支付图标通常在收银台等界面展示,如下图所示: 图标大小 在核心使用场景下的实际尺寸通常有 48x48
    发表于 01-23 09:27

    HDMI Forum发布HDMI 2.2接口规范

    近日,HDMI Forum正式对外宣布了HDMI 2.2接口规范的推出。这一新规范将HDMI接口的带宽翻倍提升至96 Gbps,为用户带来了更加卓越的音视频体验。 HDMI Forum表示,HDMI
    的头像 发表于 01-07 10:54 1199次阅读

    光学中简单但重要的光学路径与成像系统介绍

      本文简单介绍了光学一些简单但重要的光学路径与成像系统。   光在物质中传播得更慢:折射率n=c/v       透镜通过折射原理工作:     传播方向与波前垂直:     单透镜成像
    的头像 发表于 12-30 13:55 1845次阅读
    光学中<b class='flag-5'>简单</b>但重要的光学路径与成像系统<b class='flag-5'>介绍</b>