
SoC上常见总线协议详解
文章平均质量分 87
記錄DV的成長過程,分享DV經驗。
元直数字电路验证
天地本無心,生民自有命,往聖無絕學,萬世不太平。硅農,因bug而生,與bug為伴,以debug為生。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
NOC总线架构拓扑介绍
CPU是怎样访问内存的?简单的答案是,CPU执行一条访存指令,把读写请求发往内存管理单元。内存管理单元进行虚实转换,把命令发往总线。总线把命令传递给内存控制器,内存控制器再次翻译地址,对相应内存颗粒进行存取。之后,读取的数据或者写入确认按照原路返回。再复杂些,当中插入多级缓存,在每一层缓存都未命中的情况下,访问才会最终达到内存颗粒。转载 2023-04-18 09:37:53 · 3929 阅读 · 0 评论 -
CHI协议验证中的异常及边界验证
CHI 协议作为多核系统中复杂的缓存一致性协议,验证其行为需要强大的工具和方法来执行错误注入和边界条件测试,并衡量测试覆盖率。以下详细讨论常用工具、覆盖率评估方法及项目实践中的资源投入策略。在 CHI 协议及其相关设计(如 NOC 一致性)中,错误注入工具主要用于模拟异常情况,验证系统的鲁棒性和错误处理能力。通过科学分配资源和使用高效工具,可以在项目中实现全面的 CHI 协议验证,并确保系统的可靠性和性能。在实际项目中,错误注入和边界条件测试的投入需要根据项目需求和资源进行权衡。原创 2025-06-12 23:42:31 · 646 阅读 · 0 评论 -
支持 CHI 协议的 NOC的错误注入和边界条件测试
错误注入是一种通过故意引入数据错误、协议违规、硬件故障或其他异常情况,来测试系统在非正常情况下的行为和恢复能力的验证方法。原创 2025-06-12 23:38:45 · 837 阅读 · 0 评论 -
CHI 总线协议及一致性总线相关的 NOC
CHI 是 ARM 定义的缓存一致性接口协议,主要用于高性能多核处理器系统中的互连结构。它是 AMBA 5.0 系列的一部分,专门为一致性数据通信设计,能够支持多处理器、共享缓存和其他硬件元件之间的数据共享。)协议是 ARM 定义的高性能、低延迟的缓存一致性接口协议,是 ARM 架构中多核系统(SoC)内核互连中的重要组件。以下详细介绍 CHI 协议、NOC 在多 CPU 系统中的角色、基本协议,以及验证重点。通过严格验证,可以确保 CHI 协议和 NOC 在多核系统中实现高效、可靠的通信。原创 2025-06-12 23:35:19 · 1055 阅读 · 0 评论 -
[AXI]SoC上多个AXI5主设备并发访问的详细策略和代码实现
摘要:本文详细介绍了在UVM验证环境中模拟多AXI5主设备并发访问的策略与实现方法。通过创建多个独立Agent(每个代表一个主设备),采用并行Sequence生成交错事务,并利用ID范围管理确保事务可追踪性。验证重点包括总线仲裁、QoS优先级、数据一致性及错误处理能力。文章提供了完整的UVM代码框架,包含事务定义、Agent/Driver/Monitor实现、Scoreboard验证逻辑以及并发测试场景构建。通过随机化事务延迟、QoS值和ID分配,有效模拟了真实SoC中的多主设备并发访问场景,为验证AXI5原创 2025-05-27 22:17:29 · 625 阅读 · 0 评论 -
[AXI]如何验证AXI5原子操作
摘要:本文介绍了在UVM验证环境中验证AXI5协议原子操作的方法。AXI5原子操作(如CAS、Fetch-and-Add)通过单次总线事务实现读-修改-写操作,确保多主设备系统中的数据一致性。文章详细阐述了验证策略,包括事务生成、追踪、检查机制和错误注入,并提供了完整的UVM代码示例。代码展示了事务类定义、Agent组件(Sequencer、Driver、Monitor)、Scoreboard验证逻辑以及测试序列实现。验证重点包括功能正确性、数据一致性、并发处理和错误场景覆盖,通过covergroup确保测原创 2025-05-27 22:07:53 · 1180 阅读 · 0 评论 -
[AXI]AXI3、AXI4 和 AXI5 的详细差异对比
AXI 协议随着版本的迭代不断演进,从 AXI3 到 AXI4 再到 AXI5,每个版本都引入了新的特性和改进,以满足日益复杂的系统需求。以下是 AXI3、AXI4 和 AXI5 的详细差异对比,以及 AXI5 中原子操作的具体应用场景。AXI 协议的版本主要通过 AMBA (Advanced Microcontroller Bus Architecture) 规范发布,以下是对 AXI3、AXI4 和 AXI5 的逐项对比,涵盖主要特性和改进点。原创 2025-05-27 21:01:34 · 1301 阅读 · 0 评论 -
在 UVM验证环境中,统计 AXI协议的Outstanding Transactions
摘要:本文详细介绍了在UVM验证环境中统计AXI协议OutstandingTransactions的方法。OutstandingTransactions指的是已发送但未完成的事务数量,对评估总线性能和验证SoC设计至关重要。文章首先解释了AXI协议中OutstandingTransactions的概念及其重要性,然后阐述了在UVM环境中的统计机制,包括事务追踪、计数存储和实时统计等关键环节。通过完整的UVM代码示例,展示了如何在Driver、Monitor和Scoreboard中实现Outstanding计原创 2025-05-25 11:08:49 · 755 阅读 · 0 评论 -
在 UVM验证环境中,验证 Out-of-Order或 Interleaving机制
定义一个 AXI 事务类,包含 ID 和状态字段,用于追踪乱序和交错。原创 2025-05-25 10:48:52 · 815 阅读 · 0 评论 -
AXI中的burst有几种?都用在什么场景中
通过理解三种 Burst 类型的特性和应用场景,可以在设计或验证 AXI 系统时选择合适的传输模式。摘要:在 AXI (Advanced eXtensible Interface) 协议中,Burst 传输是数据传输的基本方式,用于提高传输效率。每种 Burst 类型适用于不同的场景,其行为和地址计算方式也不同。以下详细解释三种 Burst 类型的应用场景,以及 WRAP Burst 的上下边界计算方法。WRAP Burst 的地址计算比 INCR 和 FIXED 复杂,因为它涉及到环绕机制。原创 2025-05-02 11:09:14 · 996 阅读 · 0 评论 -
AXI中的out of order和interleaving的定义和两者的差别?
摘要:在 AXI (Advanced eXtensible Interface) 协议中,和是两个与事务处理顺序和数据传输相关的概念,它们都与 AXI 协议支持的多事务并发处理能力有关,但它们的定义、作用和实现机制有显著区别。下面详细解释它们的定义以及两者的差别。原创 2025-05-01 23:22:47 · 1204 阅读 · 0 评论 -
[SoC]NOC和BuS的区别及验证要点
在SoC(System on Chip)设计中,NOC(Network on Chip)和Bus(总线)是两种主要的通信架构。NOC和Bus在架构、扩展性、通信模式等方面有显著区别。在SoC DV中,需要根据通信架构的不同,关注不同的验证要点,以确保设计的正确性和性能。选择合适的验证策略和工具,将有助于提高验证效率和质量。原创 2024-12-19 22:22:48 · 849 阅读 · 0 评论 -
选择合适的 IP 实现 Die-to-Die 连接
数据速率提高和功能日趋复杂致使超大规模数据中心、AI 和网络应用程序的 SoC 大小与日俱增。随着 SoC 尺寸接近占满光罩尺寸,设计人员被迫将 SoC 分成较小的芯片,这些芯片封装在多芯片模块 (MCM) 中,以实现高产量并降低总体成本。然后,一个 MCM 中的多个较小芯片通过 die-to-die 互连进行链接,这些互连具有极低的功耗且每个芯片边缘的带宽都很高。在高性能计算和 AI 应用中,大型 SoC 被分为两个或多个同质芯片,而在网络应用中,I/O 和网络内核被分为单独的芯片。转载 2024-12-14 19:59:58 · 228 阅读 · 0 评论 -
[NOC]Network-on-Chip Topologies: Potentials, Technical Challenges, Recent Advances and Research Dire
集成技术的进步对系统级芯片(SoC)产生了影响,在单个芯片上支持异构内核。在支持大量异构内核的基础上,必须在系统设计的各个层面考虑相关处理器之间的高效通信,以确保全局互联。这可以通过设计友好、灵活、可扩展和高性能的互连架构来实现。值得注意的是,芯片上多个内核之间的互连在吞吐量、端到端延迟和数据包丢失率方面对芯片设计的性能和通信有相当大的影响。虽然分层架构解决了传统互连技术的大部分相关难题,但主要限制因素是可扩展性。片上网络(NoC)作为一种可扩展、结构良好的替代解决方案,能够解决片上系统中的通信问题。翻译 2024-12-13 11:36:37 · 331 阅读 · 0 评论 -
您只需要缓存 (Coherency) 即可扩展下一代 SoC 性能
由于“在软件中修复它”会增加膨胀,晶体管缩放速度减慢,设计人员应该变得异构。SoC 性能方面的生活有时仍然是一场艰苦的战斗,因为事情看起来相当黯淡。随着晶体管缩放在 10 纳米以下特征尺寸的成本越来越高,每 18 个月左右将性能翻倍并保持竞争力变得越来越困难。这场战斗的痛苦在消费电子和汽车系统中最为严重,低成本是持续成功的关键。过去,我们可以通过巨大的软件开发工作来解决硬件的一些缺点。这不再是最可行的选择,因为代码膨胀会对性能造成影响,并且开发和维护软件的成本会导致无法管理的员工人数和失控的成本。翻译 2024-12-12 21:02:23 · 79 阅读 · 0 评论 -
[NoC]片上网络 – 概述
因此,SoC 互连的设计需要大量研究,以确保组件之间的最佳通信。互连设计的转变是当务之急,如果我们在未来几年在这个设计实现领域成熟起来,NoC 是一个很有前途的候选者。NoC 路由器包括多个输入端口、多个输出端口、一个将输入端口连接到输出端口的交换矩阵,以及一个用于访问连接到该路由器的 IP 内核的本地端口。这些单元可以是异步的(不假定任何关系),也可以是同步的(其中使用最少的资源进行域交叉)。它们支持使用标准接口的模块化设计方法,并允许 IP 重用,但随着系统带宽需求的增加,共享总线结构成为性能瓶颈。翻译 2024-12-12 15:29:06 · 470 阅读 · 0 评论 -
[NoC]Network-on-Chip IP Core (NoC IP)
最终,随着执行交换和路由功能所需的硬件的简化,使用 NoC 的 SoC 也往往能达到更高的工作频率。这会使芯片的设计变得相当复杂和密集,对于相对较大的设计和网络来说,这将变得混乱和不便,这些设计和网络将不得不使用多个物理连接,这将占用芯片上的大部分有形空间,并阻碍整个系统的性能。多个信号在 NoC 上共享相同的电线和链路,允许各种数据链路同时在不同的数据包上运行。该系统通过确保高数据传输速度和可靠的数据传输,减少了对大量不同电线连接的需求,每个电线连接都指示不同的信号。翻译 2024-12-12 14:56:17 · 170 阅读 · 0 评论 -
HBM3协议中文版
HBM3 DRAM器件通过可以分成很多完全独立通道的接口和主机die合封,通道间无需同步;HBM3期间使用大数据位宽接口的方案来实现对DRAM高速,低功耗的访问。每个通道保持64bit数据位宽,工作在DDR(双沿采样)模式。每个通道都有独立的命令和数据接口。通道间共用RESET_n, IEEE1500测试接口和电源信号。通道提供访问特定存储阵列的接口,通道A不能访问到其他通道的存储资源;每个通道提供了访问一系列DRAM bank的独立接口,详见通道寻址。转载 2024-02-05 16:19:50 · 2773 阅读 · 0 评论 -
CAN总线接口–硬件
考虑BlueFi的40P扩展接口仅有3.3V供电电源,而且所有功能扩展接口的逻辑电平电压都采用3.3V,独立的CAN协议控制器MCP2515是一种宽工作电压的IC(允许2.7~5.5V), 我们可以使用BlueFi的40P扩展接口上的3.3V和GND为其供电,那么CAN总线收发器与CAN协议控制器之间的逻辑接口电压也必须采用3.3V的, 如果CAN总线收发器的工作电压也采用3.3V,意味着我们的CAN接口拓展板采用3.3V单工作电源,这样的设计更为简化。本质上,每个ECU就是一个车载的嵌入式系统。原创 2024-02-05 16:04:18 · 5666 阅读 · 0 评论 -
CAN总线接口–协议
除了仲裁域之外,CAN2.0B标准的控制域和数据域等仍保持与CAN2.0A标准一致,而且CAN2.0B标准的控制域仍预留2个固定为‘0’的保留位。在8.1节中我们仅以CAN2.0A标准的位流来了解CAN总线的竞争和仲裁,把位流中的RB1和RB0两个保留位解释的非常简单,保留位本来是没有特定意义的, 标准中要求这些位保持显性位‘0’,如果CAN2.0A标准的产品开发者随意处理这些保留位,譬如发送者将数据帧中的这些保留位按隐性位‘1’发送, 很显然在两种标准的CAN网络节点共享一个CAN网络时将会引起歧义。原创 2024-02-05 16:00:50 · 1959 阅读 · 0 评论 -
CAN总线简介
CAN总线是一种异步串行通讯低层网络。对照OSI模型,CAN总线规范仅包含物理层和数据链路层的标准。然而,构建在CAN总线之上的应用层协议(即OSI模型的高层协议)有多种, 譬如针对汽车控制领域和工业控制领域的CANopen协议、针对工业控制领域的DeviceNet协议、针对公交车和卡车控制领域的SAE J1939协议、针对轻型电动汽车领域的EnergyBus协议等。原创 2024-02-05 15:57:19 · 1713 阅读 · 0 评论 -
以太网(Ethernet)协议学习
帧间隙( IFG,Interpacket Gap) :就是以太网相邻两帧之间的时间间隔,帧间隙的时间就是网络设备和组件在接收一帧之后,需要短暂的时间来恢复并为接收下一帧做准备的时间, IFG的最小值是96 bit time,即在媒介中发送96位原始数据所需要的时间,在不同媒介中IFG的最小值是不一样的。那为什么不所有传输都用更可靠的TCP协议呢,这就像卖手机,不可能都上最好的配置,毕竟有人不需要这么好的配置,我只需要打电话,一个骁龙835就够了,如果你叫我多花2000块,买一个865,那我没必要。转载 2024-02-05 12:03:18 · 1317 阅读 · 0 评论 -
CXL 協定的功能與特性詳解
CXL (Compute Express Link) 是由電腦科技的行業巨頭組成的聯盟 — Compute Express Link Consortium(CXL Consortium)所開發和定義的,主要成員包括英特爾 (Intel)、超微半導體 (AMD)、三星(Samsung)、SK海力士 (SKHynix)、美光 (Micron)、戴爾 (Dell)、惠普企業 (Hewlett Packard Enterprise)、Microchip Technology…等。原创 2024-02-02 14:31:22 · 1106 阅读 · 0 评论 -
[AMBA]深入理解AXI4系列
深入 AXI4 总线(一)握手机制 - 知乎 (zhihu.com)深入 AXI4 总线(二)架构 - 知乎 (zhihu.com)深入 AXI4 总线(三)传输事务结构 - 知乎 (zhihu.com)深入 AXI4 总线(四)传输事务属性(draft) - 知乎 (zhihu.com)深入 AXI4 总线(五A)单机多传输事务场景 - 知乎 (zhihu.com)深入 AXI4 总线(五B)多主机传输事务场景 - 知乎 (zhihu.com)深入 AXI4 总线(A)附录·术语表 - 知乎 (zhihu原创 2023-07-24 17:27:06 · 1578 阅读 · 0 评论 -
[SPI]SPI接口简介
前言:串行外设接口(SPI)是微控制器和外围IC(如传感器、ADC、DAC、移位寄存器、SRAM等)之间使用较广泛的接口之一。本文先简要说明SPI接口,然后介绍ADI公司支持SPI的模拟开关与多路转换器,以及它们如何帮助减少系统电路板设计中的数字GPIO数量。SPI是一种同步、全双工、主从式接口。来自主机或从机的数据在时钟上升沿或下降沿同步。主机和从机可以同时传输数据。SPI接口可以是3线式或4线式。本文重点介绍常用的4线SPI接口。...原创 2022-08-31 23:28:22 · 1606 阅读 · 0 评论 -
[I2C]I2C通信协议详解(二) --- I2C时序及规格指引
前言:在这篇博文中,我们将讨论 I2C 时序规范以及制造商有时提供这些规范的各种方式。有关 I2C 及其协议的入门知识,请参阅此处的帖子。I2C 数据传输通过物理两线接口进行,该接口由单向串行时钟 (SCL) 和双向数据 (SDA) 线组成。这些传输可以在标准模式下 100kbits/s、快速模式下 400kbits/s、Fast Mode Plus 下 1Mbits/s 以及高速模式下高达 3.4Mbits/s 的速度下发生。每个数据速率都有自己的时序规范,主机和从机必须遵守这些规范才能正确传输数据。..原创 2022-08-31 22:59:19 · 12366 阅读 · 0 评论 -
[I2C]I2C通信协议详解(一) --- 什么是I2C
摘要:内部集成电路 (I2C) 总线是一种两线串行接口,最初由菲利普斯公司开发,用于消费产品。它是一种双向总线,可在任何 IC 工艺(NMOS、CMOS、双极)中轻松实现,并允许简单的 IC 间通信。通过使用串行数据线 (SDA)、串行时钟线 (SCL) 和公共地线来承载所有通信,可以最大限度地减少连接。I2C 已获得广泛认可,甚至已作为 I2C 子集的系统管理总线 (SMBus) 的原型。.........原创 2022-08-31 22:37:23 · 4769 阅读 · 0 评论 -
AXI3与AXI4区别及互联
AXI3与AXI4协议的主要区别包括:突发长度支持(AXI4扩展至256 beats)、服务质量信号(AXI4新增QoS)、区域标识符(AXI4支持多区域)、移除写交织(AXI4取消WID信号)、更严格的写响应依赖关系(AXI4要求等待WLAST)、用户信号扩展(AXI4新增USER信号)、锁定事务移除(AXI4取消Locked access)以及缓存属性重定义。在实际SoC设计中,需特别注意AXI3与AXI4设备互联时的信号转换问题,如WID处理、AxLOCK位宽调整等。理解AXI协议需要结合CPU架构和转载 2021-12-14 12:15:38 · 5784 阅读 · 1 评论 -
[AMBA]AXI原子操作(AXI Atomic Operation)
AXI原子操作(AXI Atomic Operation)。原子操作就是不可中断的一个或者一系列操作, 也就是不会被线程调度机制打断的操作, 运行期间不会有任何的上下文切换(context switch)。我们为什么要关注原子操作呢?如果确定某个操作是原子的, 就不用为了去保护这个操作而加上会耗费昂贵性能开销的锁,借助原子操作可以实现互斥锁(mutex),借助互斥锁, 可以实现让更多的操作变成原子操作。 前言:一、原子操作的基本概念...原创 2021-09-30 15:35:30 · 5984 阅读 · 0 评论 -
[AMBA]AHB总线协议简介
AHB 协议简介一、简介 AHB 总线规范是AMBA总线规范的一部分,AMBA总线规范是ARM公司提出的总线规范,被大多数SoC设计采用,它规定了AHB (Advanced High-performance Bus)、ASB (Advanced System Bus)、APB (Advanced Peripheral Bus)。AHB用于高性能、高时钟频率的系统结构,典型的应用如ARM核与系统内...原创 2021-05-11 19:56:43 · 1399 阅读 · 2 评论 -
[AMBA]AXI总线协议简介
AXI总线协议简介一、绪论 AXI(Advanced eXtensible Interface)是一种总线协议,该协议是ARM公司提出的AMBA3.0中最重要的部分,是一种面向高性能、高带宽、低延迟的片内总线。AMBA4.0将其修改升级为AXI4.0。AMBA4.0 包括AXI4.0、AXI4.0-lite、ACE4.0、AXI4.0-stream。AXI4.0-lite是AXI的简化版本,ACE4.0 是AXI缓存......原创 2021-05-11 19:24:49 · 3971 阅读 · 4 评论 -
香港和内地重疾险25种常见重疾定义对比全解析
香港和内地重疾险25种常见重疾定义对比全解析在和客户交流的过程中,我常被问及香港重疾险和内地产品在疾病保障方面究竟哪个更好。首先,我想说三个原则:1、羊毛出在羊身上保险公司不是做慈善的,他们所提供的每一个保障条款,背后都有精算师核算它的成本,最终会由消费者买单。所以不能单纯认为保障的病种越多就越好,或是保障越是全就越好,还要考虑价格因素,最终考虑的是性价比。所以,关键是:花合适的钱,买自己需要的东西;同样价格,我们挑保障更好的。2、相信...转载 2020-08-26 09:00:10 · 1195 阅读 · 3 评论 -
[AMBA]APB总线协议简介(APB 3.0)
APB总线协议是AMBA3系列中的低功耗接口协议,适用于低带宽外设。APB采用非流水线设计,每个传输至少需要两个时钟周期。APB3.0新增PREADY(扩展传输)和PSLERR(传输失败)信号。总线状态包括IDLE(默认)、SETUP(传输请求)和ACCESS(执行传输)。传输过程分为无等待(两个周期完成)和有等待(通过PREADY延长)两种模式,支持读写操作和错误响应。该协议可与AHB-Lite和AXI总线互连,简化外设设计。原创 2019-11-09 10:22:14 · 12428 阅读 · 0 评论 -
[AMBA]AHB/AXI Interview Questions
摘要: 本文整理了AHB与AXI总线的常见面试问题。AHB部分涉及流水线架构、1K边界概念、双周期响应机制(错误/重试/拆分)、多从设备连接、轮询仲裁、WRAP4/INCR4区别、突发传输终止条件等。AXI部分则对比AHB差异,重点解析AXI的4K边界限制、VALID/READY握手协议、独立通道设计、乱序执行机制、固定突发类型及响应类型。两类总线问题均涵盖信号交互、传输控制与异常处理场景,适合验证工程师快速回顾核心知识点。原创 2019-07-16 13:14:17 · 602 阅读 · 0 评论 -
[RFFE]RF Front-End Control Interface中的英文縮寫對照表
一、以下是RFFE(RF Front-End Control Interface)中常用的英文對照表:No. Acronyms Description 001 3GPP 3rd Generation Partnership Project 002 AF Address Frame 003 ASM...原创 2019-06-17 18:50:09 · 1848 阅读 · 0 评论 -
[MIPI][DigRF v4]Specification Study Share(一)
一、DigRF_v4 Spec中常用英文縮寫對照表:No. Acronyms Description 001 API Application Programming Interface 002 ARQ Automatic Repeat reQuest 003 BB BaseBand...原创 2019-06-11 17:58:44 · 1914 阅读 · 0 评论 -
MIPI Spec Study Share(一)
一、MIPI聯盟官網<https://www.mipi.org/>,在上面可以下載最新的Spec,如M-PHY_V4.1、DigRF_V4.0等。二、其他學習資料:1、MIPI扫盲——What the hell is mipi?http://blog.chinaaet.com/justlxy/p/51000524652、MIPI扫盲——D-PHY介绍(一)http://bl...转载 2019-05-08 19:35:05 · 1653 阅读 · 0 评论 -
[UVM][AXI][VIP]Response queue overflow
本文介绍了解决UVM中VIP序列response queue溢出的两种方法:1)通过set_response_queue_depth()增大队列深度(默认8),如设为512或-1(无限制);2)若不关注错误,可用set_response_queue_error_report_disabled(1)禁用报错。文中还解析了相关UVM源码,说明这些函数用于控制响应队列深度和错误报告机制,帮助开发者根据实际需求调整设置,解决驱动发送响应多于序列获取的问题。原创 2019-04-12 19:52:27 · 6121 阅读 · 2 评论 -
[AXI][VIP]AXI VIP中各种Lantency的設置
AXIVIP配置与测试要点:1)支持fast/slow模式切换,可配置ready信号默认值;2)测试序列中fast模式需设置各类延迟为0;3)通过调整FIFO深度和bvalid延迟可模拟ResponseFIFO满状态;4)调节arready/wready延迟可控制DataFIFO空状态;5)覆盖测试应包括极速/极慢模式组合及读写优先级的交叉验证。全文重点阐述AXIVIP的配置方法、边界条件测试策略及覆盖率收集要求。原创 2019-04-12 19:39:59 · 2501 阅读 · 0 评论