硬件层面的“硬骨头”被一一啃下,“蜂鸟一号”SoC的硅片本身已经证明了其强大的物理基础。然而,正如林轩反复强调的,芯片的价值最终需要通过软件来体现。特别是对于功能手机而言,那套复杂而精密的通信协议栈软件,以及运行于其上的操作系统和应用程序,才是真正决定用户体验和产品竞争力的“灵魂”。
将这套庞大而对实时性、稳定性要求极高的软件系统,完美地移植、集成并优化到全新的“蜂鸟”硬件平台上,成为了项目组下一阶段的核心任务。这项重担,主要落在了基带负责人张建华和他麾下的协议栈团队,以及小张(张明)领导的应用与嵌入式系统团队肩上。
启明芯深圳研发中心,软件实验室区域。这里的氛围与硬件测试区不同,少了几分仪器的蜂鸣和示波器的闪烁,多了键盘密集的敲击声和工程师们低声讨论代码逻辑的声音。空气中弥漫着代码编译的味道和…似乎永不枯竭的咖啡香气。
张建华团队面临的首要挑战,是如何将那套融合了收购来的以色列公司早期3G技术(可能主要是WCDMA物理层和部分协议栈IP)和团队自主开发的GSM/GPRS协议栈的复杂软件,高效地运行在“蜂鸟”的ARM9内核上,并与硬件基带处理器(DSP和专用加速器)实现天衣无缝的协同。
“内存!内存!还是内存!”负责协议栈底层移植的工程师小王,看着编译器报告中那超过了片上SRAM容量的代码段(Code Segment)大小,痛苦地抓着本就不多的头发,“完整的L1/L2/L3协议栈,再加上RTOS内核和驱动,怎么塞都塞不下!必须砍功能吗?”
“不能砍核心功能!”张建华斩钉截铁地说,“GSM/GPRS的兼容性是底线!想办法优化!把所有能优化的空间都给我榨出来!”
一场针对代码尺寸和内存占用的极致优化攻坚战开始了。