自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 收藏
  • 关注

原创 模型计算的步骤

好的,我们来当输入"猫吃"时,模型如何输出"鱼"的。我会用来展示这个过程。

2025-12-24 16:33:52 271

原创 小参数模型架构

组件数学形式物理意义参数量贡献词嵌入词→向量映射V×d注意力上下文信息混合3×d² + d²FFN非线性变换2×d×d_ff层归一化稳定训练2×d输出层向量→词概率d×V关键洞见注意力机制是信息路由系统,决定哪些词关注哪些词FFN是模式提取器,从注意力混合的信息中提取特征残差连接确保梯度流动,训练深层网络层归一化稳定训练动态缩放定律:性能 ∝ (数据量, 参数量, 计算量) 的幂律关系这个1万参数模型虽然简单,但包含了所有核心组件。

2025-12-24 16:31:56 194

原创 ARM Trusted Firmware 启动流程:从汇编到 C 语言的渐进式初始化

是 ATF 启动流程中的关键枢纽,它架起了汇编世界与 C 语言世界之间的桥梁。建立了执行 C 代码的基本环境:栈、BSS、数据段保持了最小化和可控性:只初始化必要的部分,避免过度复杂为渐进式初始化奠定基础:允许后续启用 MMU、异常处理等高级功能支持多种启动场景:冷启动、热启动、从核启动等在正确的时间做正确的事情,不多也不少。初始化了足够的环境来调用早期 C 函数,但又没有过度初始化到需要完整 C 运行时的程度。理解这一机制对于开发可靠、高效的固件至关重要。

2025-12-22 14:45:52 747

原创 EL3 Entrypoint Common 宏详解

平台Makefile配置COLD_BOOT_SINGLE_CPU := 0 # 启用多核支持PROGRAMMABLE_RESET_ADDRESS := 1 # 支持可编程复位地址# 异常向量自定义编译时:根据参数生成定制化的启动代码序列运行时:直接执行高效的无分支代码路径设计上:平衡了通用性与性能,支持从单核冷启动到多核热恢复的各种场景这种设计模式不仅提高了启动性能,还保证了代码的可维护性和平台可移植性,是嵌入式系统启动代码设计的优秀范例。

2025-12-22 11:25:05 311

原创 嵌入式数据和代码分离的机制

实现代码和数据分离。这是一个多层次的工程,涉及编译器、链接器、启动代码和硬件的协同工作。:确保启动代码正确复制.data段。:依赖内存保护硬件检测此类错误。:确保启动代码清零.bss段。

2025-12-18 11:00:25 317

原创 TF-A上电后从`bl1_entrypoint`执行的原因

为什么上电后从执行?硬件强制:CPU复位后必须从固定地址开始执行链接器配置被放置在BL1镜像的最开始启动介质加载:BootROM将BL1加载到CPU的启动地址初始化需求:需要汇编代码完成C语言运行环境准备安全启动要求:BL1作为信任根,必须首先执行验证✅确定性启动:每次复位都从相同位置开始✅安全性:BL1作为信任链的起点✅可移植性:架构相关代码与平台逻辑分离✅可靠性:逐步初始化,避免复杂依赖这就是TF-A(以及大多数bootloader)采用这种分层启动架构的根本原因。

2025-12-18 10:59:36 390

原创 TF-A上电后从`bl1_entrypoint`执行的原因

为什么上电后从执行?硬件强制:CPU复位后必须从固定地址开始执行链接器配置被放置在BL1镜像的最开始启动介质加载:BootROM将BL1加载到CPU的启动地址初始化需求:需要汇编代码完成C语言运行环境准备安全启动要求:BL1作为信任根,必须首先执行验证✅确定性启动:每次复位都从相同位置开始✅安全性:BL1作为信任链的起点✅可移植性:架构相关代码与平台逻辑分离✅可靠性:逐步初始化,避免复杂依赖这就是TF-A(以及大多数bootloader)采用这种分层启动架构的根本原因。

2025-12-18 10:33:12 398

原创 Trusted Firmware-A 启动流程

Trusted Firmware-A(TF-A)的调用流程遵循ARM的启动架构规范,通常分为多个阶段,从冷启动开始,逐步将控制权从底层固件转移到上层操作系统。这个流程确保了从硬件复位到操作系统启动的整个过程中,安全性和可控性得到保障。具体实现可能因平台和配置而异。

2025-12-18 09:43:17 856

原创 pcie bar 地址对齐规则

您的问题切中了PCIe设备内存映射的核心机制!理解BAR对齐需要从和入手。

2025-12-17 18:06:18 334

原创 CQ(完成队列)和 UAR(用户访问寄存器)页之间的关系,以及 CQE(完成队列条目)的位置

这是软件(应用程序或驱动程序)为 CQ 分配的内存区域,HCA(主机通道适配器)会将完成的 WQE(工作队列条目)的状态信息(成功、错误码、字节数等)写入这个内存区域。CQE 的存储始终在软件管理的主机内存中。用来存储 CQE 的。所以,UAR 页对于 CQ 的作用是。UAR 页在这里扮演的角色。

2025-12-17 18:02:08 217

原创 Doorbell 和 BlueFlame的区别

BlueFlame 的核心价值在于消除了 HCA 处理新 WQE 时最关键的内存读取延迟环节。好的,我们来清晰地区分。

2025-12-17 17:56:21 861

原创 distro 和 ramdisk 区别

在系统启动流程中,distro 和 ramdisk 是两个关键概念,它们在 U-Boot 和 Linux 内核启动过程中扮演重要角色:Distro Boot 是 U-Boot 的标准化启动框架,用于自动发现并加载操作系统(如 Linux 发行版),无需手动配置启动命令。加载并启动按预设规则加载内核、initrd 和设备树,传递参数并执行。▶ 配置示例(U-Boot 环境变量)▶ 优势多系统兼容:自动支持 Debian/Ubuntu/Fedora 等发行版免配置启动:插入包含 的磁盘即可

2025-12-17 17:52:38 320

原创 U-boot 源码结构

定制新板卡时,优先复制相近板型的。U-Boot 的源代码采用。

2025-12-17 17:50:51 221

原创 cpl 返回的寻址逻辑

这种设计使得PCIe能够高效、可靠地在复杂拓扑中传输数据,是PCIe协议的精妙之处。:在Cpl TLP中,Requester ID告诉网络"把回复发给谁"。当EP收到一个读请求(MRd)后,需要回复CplD。是PCIe协议中非常核心且巧妙的设计。查找路由表: 00:00.0 → Port 0。,EP如何知道把回复发给谁?读取地址0x1000的数据。转发CplD TLP到RC。

2025-12-16 17:16:08 740

原创 cuda host 内存分类

写合并内存 cudaHostAlloc(WriteCombined) 最快(H2D) 只写不读的主机数据。固定内存 cudaHostAlloc() 快(~2x 加速) 频繁传输的数据。映射内存 cudaHostAlloc(Mapped) 零拷贝 小数据频繁访问。可分页内存 malloc() 慢(需临时锁定) 通用主机内存。内存类型 分配方式 传输速度 使用场景。

2025-12-12 16:13:55 65

原创 CUDA兼容性/移植方案

场景推荐方案将 CUDA 代码移植到 AMD GPUHIP(官方工具链,生态完整)在 Intel GPU 上直接运行 CUDA 程序ZLUDA(二进制兼容,无需修改代码)跨平台长期维护项目考虑或OpenMP(便携性更好)学术研究/历史参考了解 gpuocelot、Corundum 等早期项目这些项目反映了业界对CUDA 生态锁定的突破尝试,目前HIP(AMD)和是最具实用价值的开源方案。

2025-12-12 10:46:10 584

原创 PC机休眠唤醒状态

实际支持状态取决于硬件(主板/BIOS)和操作系统驱动。查看系统支持的休眠级别。

2025-12-02 17:06:28 363

原创 pcie 流量控制之UpdateFC

字段控制对象影响的操作单位HdrFCTLP Header所有TLP(包括读/写请求、配置包等)信用数(每TLP消耗1)DataFC带Payload的TLP(如内存写请求)DW(4字节)

2025-11-28 10:24:59 235

原创 Bootloader(引导加载程序)简介

Bootloader是硬件与操作系统的“桥梁”,完成从冷启动到内核运行的过渡。理解其原理对系统开发、故障修复及安全加固至关重要。,负责初始化硬件、加载操作系统内核并将其控制权移交给内核。Bootloader(引导加载程序)是计算机系统启动过程中运行的。

2025-11-11 10:24:46 225

原创 大语言模型基本架构

LLM 通过多层 Transformer 块迭代学习上下文表示,最终基于概率生成连贯文本。其强大能力源于海量数据预训练与百亿级参数的协同作用。大型语言模型(LLM)的核心架构通常基于。Transformer 块。词嵌入 + 位置编码。

2025-08-19 14:57:45 931

原创 发送端设备申请中断时,会在msi-x table 里面产生一个entry,所谓发射中断就是在下message的address 里面写响应的data。接收端是怎么处理的?能把发送端和接收端的详细过程介绍

这个流程清晰地展示了 MSI-X 中断从设备产生到 CPU 处理的完整路径,以及发送端、总线和接收端各自的职责和交互点。理解 PBA 管理和设备中断状态清除(由驱动完成)的区别是避免中断丢失或重复的关键。您的问题抓住了 MSI/MSI-X 中断机制的核心流程。

2025-07-14 10:42:54 741

原创 PBA 的管理看起来是发送者自己的行为?和接受者没有关系?因为中断产生是在发送端,发送到总线也是发送端。

接收端的行为不影响这个状态机的核心逻辑。PBA 状态位的变化(置位和清位)是。这是一个非常重要的理解。您完全抓住了关键点!

2025-07-14 10:08:14 819

原创 【deepsek】TCP/IP 协议栈的处理流程

以下是 完整 TCP/IP 协议栈的处理流程,并以 NVIDIA ConnectX-7 智能网卡为例,详细说明各步骤的 硬件卸载能力 及限制原因。整个过程分为 发送端 和 接收端 两大部分:

2025-06-24 11:22:41 1035

原创 【deepseek】TCP/IP ISO 卸载

彻底释放 CPU 算力,使 100GbE/400GbE 网络的性能瓶颈从 CPU 转移到物理链路本身。,从而大幅降低 CPU 负载并提升网络性能。:LSO/LRO 是智能网卡的核心卸载技术,通过。是网卡硬件加速技术,其核心目标是。TCP/IP 全卸载中的。

2025-06-24 11:14:00 1061

原创 【DeepSeek】硬件确认

2025-06-13 19:32:55 124

原创 【DeepSeek】移植计划

确认新ARM平台的硬件规格,包括处理器型号、内存大小、存储介质(如eMMC、NOR/NAND Flash)、外设接口(如UART、USB、以太网)。分析目标平台的启动流程,明确ATF的加载位置(如ROM或Flash)。工具链需支持目标平台的指令集(如ARMv7或ARMv8),并确认ABI(如EABI或GNUEABI)兼容性。安装必要开发工具,包括构建系统(如Buildroot或Yocto)、调试工具(如GDB)、烧录工具(如OpenOCD或厂商专用工具)。若平台有安全启动需求,需配置密钥和签名工具。

2025-06-13 19:07:01 1017

原创 【DeepSeek】复杂SoC中,几乎都存在MMU系统,配合做Memory Space的虚拟化

在现代高度集成的复杂芯片(SoC)中,普遍内置了内存管理单元(MMU/IOMMU)硬件。这些硬件单元与操作系统软件紧密协作,通过自动将软件看到的“虚拟”内存地址转换成实际的“物理”内存地址,并施加访问控制,从而实现了对物理内存资源的抽象、隔离和高效管理,为软件提供了一个更安全、更灵活、更易用的内存访问环境。

2025-06-13 11:28:50 586

原创 【deepseek】remap_pfn_range 做了哪些事情

是 Linux 内核中实现的核心函数,它的作用是将物理内存页映射到用户进程的虚拟地址空间。

2025-05-22 15:52:10 1176

原创 【DeepSeek】为什么需要linux-header

而不是完整的源代码(linux-source)。编译Linux驱动程序时,通常需要。

2025-05-20 16:43:28 722

原创 费曼技巧及提高计划

(Feynman Technique)由诺贝尔物理学奖得主理查德·费曼提出,是一种通过“以教代学”来彻底理解复杂概念的学习方法。通过将知识简化、类比和输出,迫使大脑从被动接受转向主动构建,从而提升学习效率。:选一个你今天学到的概念,用费曼技巧花5分钟解释给身边的人吧!

2025-05-16 19:37:28 845

原创 费曼技巧及提高计划

(Feynman Technique)由诺贝尔物理学奖得主理查德·费曼提出,是一种通过“以教代学”来彻底理解复杂概念的学习方法。通过将知识简化、类比和输出,迫使大脑从被动接受转向主动构建,从而提升学习效率。:选一个你今天学到的概念,用费曼技巧花5分钟解释给身边的人吧!

2025-05-16 19:34:42 1590

原创 提高表达能力

通过以上方法,你可以逐步将讨论中的“被动流畅”转化为自主表达的“主动流畅”。过程中记得录音或录像,对比3个月前后的变化,会发现明显的进步轨迹。你遇到的这种情况其实很常见,背后的原因可能涉及思维模式、心理状态和表达习惯的综合作用。

2025-05-16 19:12:50 557

原创 【deekseek】P2P通信路由过程

当使用DMA时,封包需精确指定目标BAR地址,并由Switch确保路由有效性。此机制显著降低延迟,适用于高性能存储和计算场景(如GPU Direct、NVMe-oF)。时,数据无需经过Root Complex(RC)或主机内存,而是通过Switch直接路由。同一PCIe Switch下的设备间P2P通信通过。在PCIe网络中,当。

2025-05-13 17:07:33 1505

原创 【deepseek】pcie bar 大小

包括哪些区域分配给DRAM、哪些区域保留给MMIO(Memory-Mapped I/O)。现代RC(如Intel的Xeon处理器)允许固件动态配置MMIO窗口的位置和大小。Host芯片(如Intel/AMD的CPU或ARM SoC)定义了系统的。RC是CPU与PCIe设备之间的桥梁,其地址路由逻辑(如Intel的。操作系统(如Linux)可能重新分配BAR地址(例如通过。某些RC实现可能预定义固定的MMIO窗口(如仅支持。内核参数),但需遵循RC的地址窗口规则。),超出此范围的BAR地址无法被路由。

2025-05-13 17:07:01 953

原创 【deepseek】pcie bar 大小

包括哪些区域分配给DRAM、哪些区域保留给MMIO(Memory-Mapped I/O)。现代RC(如Intel的Xeon处理器)允许固件动态配置MMIO窗口的位置和大小。Host芯片(如Intel/AMD的CPU或ARM SoC)定义了系统的。RC是CPU与PCIe设备之间的桥梁,其地址路由逻辑(如Intel的。操作系统(如Linux)可能重新分配BAR地址(例如通过。某些RC实现可能预定义固定的MMIO窗口(如仅支持。内核参数),但需遵循RC的地址窗口规则。),超出此范围的BAR地址无法被路由。

2025-05-13 17:00:54 1105

原创 【DeekSeek】拓扑结构中(一个 Root Port 下挂载两级 Switch),能否实现 P2P 通信取决于中间 Switch 的功能支持(如 ACS 隔离、转发能力等

在您描述的拓扑结构中(一个 Root Port 下挂载两级 Switch),(如 ACS 隔离、转发能力等)。

2025-05-13 16:47:34 605

原创 【DeepSeek】判断两个 PCIe 设备是否属于**同一个 PCIe 子树

在 Linux 系统中,判断两个 PCIe 设备是否属于**同一个 PCIe 子树(Subtree)**是 P2P 通信的关键前提。

2025-05-13 16:39:03 643 1

原创 【deekseek】TCP Offload Engine

TOE通过硬件实现完整TCP协议栈,是超低延迟网络的基石技术,但其部署需权衡兼容性、安全性与成本。在AI、大数据等场景中,TOE与RDMA、DPU的协同将成为下一代数据中心的关键架构。:TOE 通过硬件固化协议栈和零拷贝架构,将延迟降低1~2个数量级,成为超低延迟网络的基石技术。但其部署需权衡协议灵活性、硬件成本和生态支持。:当应用发送数据时,TOE 网卡直接从用户态内存抓取数据,由硬件生成TCP/IP头并发送,全程无需CPU参与。,将原本由CPU软件处理的协议计算任务完全转移到网卡硬件中。

2025-05-13 16:14:57 1389

原创 RDMA核心组件 的总结表格

(WQE下发→硬件执行→CQE返回)增强可视化效果。此表格可用于PPT中对比核心组件关系,建议配合。(展示QP/CQ/WQ的层级)和。

2025-05-12 14:34:27 442

原创 RISC-V入门资料

根据需要选择资源,保持对官网和社区的定期关注以获取更新!《RISC-V 体系结构编程与实践》

2025-05-08 15:56:05 1425

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除