DMA 物理内存映射与 FPGA 环形缓冲: 零拷贝通路与无锁读写

FPGA 采集到的数据由 DMA 写进 DDR,用户态程序用 /dev/mem 映射同一块物理内存把它读出来。这条通路上没有数据拷贝,双方能对上靠的是事先约定的物理地址。无锁则来自另一处设计:环形队列把读写状态拆成两个各自单向递增的计数器,锁就没有存在的必要。

October 6, 2026 · 4 min · 743 words · map[name:DeguiLiu]

嵌入式双路 USB 视频输出: 一个设备、两个摄像头的同步原理

一台嵌入式设备通过同一个 USB 控制器输出两路 UVC 视频:IAD 负责让主机看到两个摄像头,内部视频链负责分别产生两路帧,环形缓冲保证单路稳定,时间戳和上位机逻辑完成最终配对。

September 20, 2026 · 5 min · 898 words · map[name:DeguiLiu]

Cortex-M 内存寻路: SRAM 与 CCM 的拓扑、层次与工程取舍

SRAM 面向 DMA 与外设,CCM 面向 CPU 热数据;根据访问者、执行需求和访问频率分配内存,避免 DMA 不可见与 CCM 溢出。

August 21, 2026 · 4 min · 823 words · map[name:DeguiLiu]

嵌入式流式数据处理架构: 传感器到网络输出的全链路设计

面向激光雷达、工业视觉、机器人等 ARM-Linux 场景,设计一套 C++17 header-only 的流式数据处理架构。覆盖数据流 (10-100 Hz 大块帧) 与控制流 (低频高可靠消息) 的分离处理、零堆分配内存管理、多级流水线调度,基于 newosp 基础设施库实现。

February 17, 2026 · 8 min · 1658 words · map[name:DeguiLiu]

RTOS vs Linux 异构选型: 三核 SoC 上的双系统设计

三核 ARM SoC (3x Cortex-A7 @ 1.2 GHz) + Cortex-M0 支持 Linux + RTOS 异构部署。面向激光雷达和工业控制器,分析 AMP 核间通信 (Mailbox/共享内存)、实时性保障 (硬件定时器 + 中断隔离) 与资源分区策略。

February 15, 2026 · 5 min · 943 words · map[name:DeguiLiu]

FPGA + ARM 双核 SoC 处理激光雷达点云的可行性分析

在 FPGA + ARM 双核 SoC (双核 Cortex-A9 @ 667 MHz) 上处理 30 万点/秒激光雷达数据流。PL (FPGA) 负责传感器接口和 DMA 搬运,PS (ARM) 运行 Linux 处理点云算法和网络输出,目标端到端延迟 P99 < 5 ms。

February 15, 2026 · 5 min · 894 words · map[name:DeguiLiu]

双核 ARM SoC 上跑 RT-Thread SMP: MMU、Cache 与调度实战

将 RT-Thread SMP 移植到 Zynq-7000 双核 Cortex-A9 平台,解决 MMU 页表配置、L1/L2 Cache 一致性、双核调度器初始化三个核心问题。实测表明带宽不是瓶颈,CPU 处理延迟和调度抖动才是端到端延迟的主导因素。

February 15, 2026 · 6 min · 1182 words · map[name:DeguiLiu]