你的手机打电话时,主CPU其实在"偷懒"。
降噪、语音唤醒、蓝牙音频、加速度计读取——这些全由一个你从未听说的处理器完成。它每秒要读取400次传感器数据,同时运行神经网络检测唤醒词,还要保证蓝牙音频不卡顿。
打开网易新闻 查看精彩图片
orchestrating这一切的,是高通Hexagon DSP上的QuRT实时操作系统。
QuRT(Qualcomm Real-Time Operating System)是一套类POSIX、基于优先级、支持抢占的实时操作系统。与为灵活性设计的Linux不同,它是为微秒级确定性调度而生的精密工具。
高通SoC采用双处理器架构:左侧ARM CPU运行Android,处理通用应用逻辑;右侧Hexagon DSP运行QuRT,专负责延迟敏感任务——音频处理、传感器融合、机器学习推理和计算卸载。两者通过FastRPC框架通信。开发者使用Hexagon SDK编写DSP端代码,QuRT负责在Hexagon处理器上执行。
开发环境需要Hexagon SDK(3.5+或4.x版本),内含Hexagon Tools编译器工具链。运行代码可选择高通开发板(如Robotics RB5或SM8250 HDK),或使用SDK内置模拟器。Ubuntu 18.04或20.04的Linux主机最适合开发。
从线程创建、同步原语、内存管理、中断处理、定时器,到通过FastRPC的处理器间通信,再到完整的传感器融合流水线——QuRT的每个技术环节都配有可运行代码和底层原理说明。这是嵌入式实时系统开发的完整实践手册。
热门跟贴