- 博客(47)
- 收藏
- 关注
原创 Retry
CHI协议中是有流控的,其中包括了retry机制。当接收端的RXREQ没有空间资源时,需要回复RetryAck,告诉Request:稍后重试。PrefetchTgt请求不会回复RetryAck,因为PrefetchTgt没有response是否可以回复Retry,由REQ flit中的AllowRetry控制。
2025-11-18 19:57:15
211
原创 15---链路层细节汇总
FwdState出现在FwdState只有在以下两种情况下才有效(其实就是RN节点返回DCT的数据和响应时,FwdState才有效)由此可知,FwdState只用于RN节点返回DCT的resp、data。用来表示。
2025-11-14 18:23:54
708
原创 14---系统控制 & debug
DataSource[1:0]表示CompleterDistance。该域表示从当前节点的视角来看,数据所在节点的位置,可能在一个cluster、一个die、远端的chiplet等。目标节点收到read请求时,可以通过以下response中的DataSource域来制定数据的来源。Data source为8bit位宽域,分成以下几个subfields。DataSource[4:2]表示CompleterType。DataSource[5]表示HitD,即Hit Dirty。
2025-11-10 10:30:27
161
原创 CHI验证VIP(2)-- sequencer
本文介绍了UVM中sequencer的基本实现方法。sequencer需要从uvm_sequencer基类派生,并通过`uvm_component_utils宏注册到factory中。示例展示了chi_sn_sequencer的定义,它处理chi_sn_transaction类型,包含构造函数实现。类似地,chi_rn_sequencer的实现方式相同。这些sequencer作为UVM验证环境的关键组件,负责管理和调度transaction的传输。
2025-11-10 09:11:57
158
原创 2. IDAU原理
ARMv-M架构通过SAU(安全属性单元)和IDAU(实现定义属性单元)实现存储空间安全属性划分。SAU提供基础安全配置,IDAU则允许芯片厂商自定义扩展安全区域。二者协同工作,共同构建存储保护机制。
2025-11-05 17:04:24
236
1
原创 1. TrustZone简介
ARM TrustZone 硬件安全架构解析 摘要:ARM于2008年首次发布TrustZone技术白皮书,通过硬件级隔离重构安全体系。该技术将系统划分为安全(S)和非安全(NS)两个独立世界,从晶体管层面实现物理隔离。安全世界可运行可信执行环境(TEE),保护指纹、密钥等敏感数据,如iPhone 5s的Secure Enclave即基于此架构。TrustZone采用地址空间划分(SAU/IDAU)和权限分级(EL0-3)机制,通过SG指令实现世界切换,并定义NS/S/NSC三种内存类型确保隔离性。该架构已
2025-11-05 11:51:30
570
原创 13-- System Coherency Interface
CHI协议定义了两根信号,这两组信号只有RN-F & RN-D节点使用,用来表示这两根信号为:SYSCOREQ、SYSCOACK;两根信号与CLK为同步关系。
2025-11-04 14:38:39
566
原创 1-- CMN700简介
CMN-700是ARM推出的商用网络互连(NoC)IP核,支持多种高级特性。它提供可配置的NoC规模和设备布局选项,可选系统级缓存(SLC),并兼容CHI-E协议。该IP支持QoS、可靠性/可用性/可维护性(RAS)、调试追踪(DT)功能,可集成动态内存控制器(DMC)、中断控制器(GIC)和内存管理单元(MMU)。CMN-700支持Armv8.2/8.4/v9.0处理器,提供多芯片一致性互连(CML)功能,兼容CXL2.0标准,适合构建SMP系统。
2025-10-29 18:25:56
222
原创 7-- Cache Stashing
摘要:Cache stashing机制通过将数据预存到处理单元附近的缓存中提升性能。CHI协议定义了WriteUniqueStash和StashOnce两类事务,支持将数据存放到指定节点或下一级缓存。WriteUniqueStash通过附带stash提示的写请求完成,而StashOnce是独立的预存请求。执行过程涉及Snoop请求和数据拉取(DataPull),但目标节点可选择忽略stash请求。协议详细规定了各节点的行为,包括请求发起、冲突处理和响应方式,并支持通过TargetID指定预存目标。
2025-10-28 17:37:57
805
原创 6-- Prefetch transaction
Prefectch transaction由RN直接发送给SN(比如main memory),用来预取后续可能会用到的数据。一般由处理器和预取器发出。CHI定义了一个prefetch transaction类型:PrefetchTgt不能配置Retry选项,因为PrefetchTgt没有response(PrefetchTgt和PCrdReturn都不能使能Retry选项)。
2025-10-28 17:21:00
345
原创 1. 玄铁C910资源汇总
较早期:wujian100(无剑) 项目地址: E系列:OpenE902 项目地址:OpenE906项目地址:C系列:OpenC906 项目地址:OpenC910 项目地址: 开源的软件项目:适配的安卓系统 Linux系统内核 编译工具链 GNU C库NewlibC库 C语言编译器 模拟器。
2025-10-27 13:53:52
290
原创 VCS & Verdi 2023安装(失败后转2018版本)
声明,VCS & Verdi仅作个人学习使用。本次安装VCS & Verdi2023版本V-2023-12.SP2。
2025-10-25 20:54:49
339
原创 5-- DVM Operations
DVM主要用来管理virtual memory system。DVM是可选功能,interface有配置项:DVM_Support。
2025-10-25 11:48:54
356
原创 8--CHI Dataless Transaction
RN节点可以通过Dataless Transaction来执行cache一致性操作,此时RN节点不需要发出或者收到数据。
2025-10-22 15:42:44
196
原创 1--CHI Cache Line状态
节点访问Cache时,行为会根据Cache Line的状态不同而不同。Chi定义了如下的Cache Line状态。这些cache状态,存储在cache的tag中。
2025-10-22 10:46:20
813
原创 3-- CHI Write Transaction
CHI定义了非常多的Write Transaction,不同的写场景对数据的一致性、性能和安全性的要求不同。
2025-10-21 21:00:02
345
原创 1-- 安装过程记录
需要首先在piton_setting.cshrc中设置PITON_ROOT,即setenv PITON_ROOT /xxxx/xxx/openpition。1:README中写的要先source $PITON_ROOT/piton/piton_setting.bash或者piton_setting.cshrc。设置VCS_HOME 例如:setenv VCS_HOME /eda/syn/vcs/Q-2020.03-SP2。设置完成后,执行source piton_setting.cshrc。
2025-10-17 11:32:31
185
原创 1-- OpenNoc简介
总结而言,OpenNoC 作为一种基于 AMBA CHI 协议的开源核间通信框架,以其高度可配置、模块化设计、协议兼容性和社区支持等特点,在多核处理器系统中展现出了卓越的性能和灵活性。通过这些特点,OpenNoC 成为了多核处理器系统中一个值得信赖的解决方案,它不仅提高了系统的性能,还简化了系统设计过程。嵌入式系统:对于资源受限的嵌入式系统,OpenNoC 的灵活配置和模块化设计可以优化系统资源的使用。组件设计:项目采用了模块化设计,使得各个组件可以独立配置和编译,提高了系统的灵活性和可维护性。
2025-10-16 11:01:35
703
原创 开源项目汇总
为了深入理解RISC_V、NOC、PCIE、Ethernet、大型SOC,本节汇总后续要学习的开源项目网络拓扑结构(Mesh, Torus等)虚拟通道路由算法服务质量(QoS)死锁避免。
2025-10-16 09:53:42
342
原创 UVM验证工具--gvim
本文介绍数字验证所需的工具链配置,包括gvim代码编辑、git版本管理、Python自动化脚本,以及Synopsys的vcs仿真工具、verdi波形分析工具和Cadence的vManager回归测试工具。重点说明如何搭建基于Linux的UVM验证环境,为后续验证实例提供基础支持。内容将持续更新完善。
2025-09-16 17:54:33
197
原创 SystemVerilog知识笔记
本文重点探讨了芯片验证的关键要点和SystemVerilog实用技巧。验证的核心目的是确保客户需求被完整准确地实现,而非单纯发现缺陷。文中详细阐述了从客户需求到芯片规格的转化过程,强调了需求管理的重要性。在验证方法上,对比了定向测试与随机测试的优缺点,指出两种方法需结合使用。技术层面,系统梳理了SystemVerilog的内建数据类型、数组操作方法、位操作函数及ref参数的使用场景,提供了诸如数组定位、排序、位切片等实用技巧。这些内容为芯片验证工程师提供了从需求分析到代码实现的全流程指导,有助于提升验证效率
2025-09-16 14:17:35
257
原创 git-gui --批量处理文件
在使用git过程中,大家可能遇到过这样的问题 * 已经对大量的文件做了更改,而且这些文件分布在不同的目录中,但是目录下修改的文件,并不是都要commit的; * 针对一个文件来说,可能我们只想提交其中的某几行,其他行的修改需要在下个commit中再提交;这时候,如果还是使用命令行,要么很麻烦(比如上面第一条),要么就很难做到(比如上面第二条),此时一个图形化的工具可
2025-09-16 11:35:28
825
转载 USB协议(1)USB基础知识
USB(Universal Serial Bus)是通用串行总线的缩写,它是连接计算机系统与外部设备的一种串口总线标准,也是一种输入输出接口的技术规范,被广泛地应用于个人电脑和移动设备等信息通讯产品,并扩展至摄影器材、数字电视(机顶盒)、游戏机等其它相关领域。多媒体电脑刚问世时,外接式设备的传输接口各不相同,如打印机只能接LPT、调制解调器只能接RS232、鼠标键盘只能接PS/2等。繁杂的接口系统,加上必须安装驱动程序并重启才能使用的限制,都会造成用户的困扰。因此,创造出一个统一且支持易插拔的外接式传输
2022-04-13 16:05:02
16457
1
转载 I2C原理
目录I2C简介I2C的物理层IIC主要特点:IIC的高阻态数据传输协议起始位地址位读写位应答位数据块停止位多主机仲裁I2C简介I²C(Inter-Integrated Circuit),中文应该叫集成电路总线,它是一种串行通信总线,使用多主从架构,是由飞利浦公司在1980年代初设计的,方便了主板、嵌入式系统或手机与周边设备组件之间的通讯。由于其简单性,它被广泛用于微控制器与传感器阵列,显示器,IoT设备,EEPROM等...
2022-04-02 11:42:55
12733
2
转载 SPI原理
目录什么是SPISPI主从模式SPI信号线SPI设备选择SPI数据传输SPI传输数据量SPI数据传输顺序SPI数据CRCSPI通信的四种模式SPI的通信协议SPI的三种模式运行模式(Run Mode)等待模式(Wait Mode)停止模式(Stop Mode)优缺点SPI通讯的优势SPI的缺点什么是SPISPI 是英语Serial Peripheral interface的缩写,顾名思义就是串行外围...
2022-04-02 10:01:26
7028
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅