第十五章 走出实验室

    十月下旬,左城第一次踏进了蓝湾通信的研发中心。
    地点在华夏市高新区,距离学校四十分钟地铁。研发中心占了一栋二十六层的写字楼,门禁系统刷三道卡才能进核心区域。左城在前台领了临时工牌,韩哲的助理带他穿过一条长走廊,两侧是透明玻璃隔开的实验室,里面全是他只在教科书上见过的测试设备。
    韩哲在十七楼的会议室等他。
    “坐。“韩哲指了指对面的椅子,面前摊著左城的课题方案,几个地方用红笔圈了標註,“环节二的情况我先跟你说清楚。“
    他翻开一张蓝湾通信內部的基站网络拓扑图,手指点在华夏市南区的一个节点上。
    “这是我们在南区部署的一座5g实验基站,覆盖半径两公里,日常接入用户大约三千人。你的算法要在这座基站的信號处理单元上跑起来,实时处理真实的用户信號,连续运行七十二小时不出故障,各项性能指標达到方案里承诺的水平。“
    左城看著那张拓扑图,心里迅速计算著工作量。
    实验室仿真和真实基站之间隔著一道巨大的鸿沟。仿真环境里的信號是乾净的、可控的、可重复的;真实基站面对的是三千个活生生的用户,每个人的信號特徵都不一样,移动轨跡不可预测,环境干扰千变万化。
    更麻烦的是硬体。实验室里跑算法用的是高性能伺服器,算力基本不设上限。但基站的信號处理单元是定製的嵌入式平台,算力有限、內存有限、功耗有限。算法必须在这些约束下跑出同样的性能——这就像让一个在宽敞跑道上跑出好成绩的运动员,换到一条满是障碍的窄巷里还得保持同样的速度。
    “硬体平台的技术规格能给我一份吗?“左城问。
    “已经准备好了。“韩哲把一个u盘推过来,“里面有基站信號处理单元的完整硬体手册、接口文档和开发环境配置指南。另外我给你开了远程访问权限,你可以在学校里通过vpn连接到基站的开发测试环境,不用每次都跑过来。“
    “谢谢韩总。“
    “还有一件事。“韩哲靠在椅背上,语气变得隨意了一些,“周总让我转告你,他下周有一天在研发中心,如果你方便的话,他想跟你当面聊聊。“
    周鹤年。蓝湾通信cto。
    “我方便。“左城说。
    从蓝湾通信出来之后,左城在地铁上打开了u盘里的硬体手册。
    他越看眉头皱得越紧。
    基站信號处理单元用的是一款定製的嵌入式处理器,主频不高,但集成了专用的信號处理加速模块。问题在於这个加速模块的指令集和通用处理器完全不同——左城的算法里有大量的矩阵运算,在通用处理器上可以直接调用標准数学库,但在这个定製晶片上,標准库跑不了,必须用专用指令集重新实现。
    这就是方泽的战场了。
    当天晚上,左城把硬体手册和他的初步分析发给了方泽。
    方泽看了两个小时,回了一条很长的消息。
    “处理器架构我大致看明白了。好消息:这款晶片的加速模块对定点数矩阵运算有专门的硬体支持,如果把你的浮点算法改成定点实现,理论上速度能提升三到五倍。坏消息:浮点转定点会引入量化误差,你的算法对精度要求高,量化误差控制不好的话性能会崩。这是一个精度和速度的权衡问题,需要你和我一起啃。“
    左城盯著“一起啃“三个字,嘴角微弯。
    方泽从来不说“我来搞定“,也不说“你来解决“。他说的是“一起啃“。这个人骨子里是个合作者,不是独行侠——前提是他认可你的能力。
    接下来三天,左城和方泽每天晚上在实验室碰头,专攻浮点转定点的精度控制问题。
    这是一场硬仗。
    核心难点在於左城的自適应追踪算法里有一个递归更新的步骤——每一次叠代都会在上一次结果的基础上做微小修正。浮点数的精度足够高,这种微小修正可以精確执行。但定点数的精度有限,每次叠代都会引入一点量化误差,几百次叠代累积下来,误差可能被放大到不可接受的程度。
    左城试了三种常规的误差补偿方法,全部失败——误差要么没压下去,要么压下去了但速度也跟著掉下来,得不偿失。
    第四天,他坐在实验室里对著一屏幕的数据发呆。
    方泽从旁边走过来,把一杯冰美式放在他手边。这是左城第一次看见方泽给別人买咖啡。
    “换个思路。“方泽说,靠在桌边,双手抱胸,“你一直在想怎么减小量化误差,但有没有想过——让算法本身对量化误差不敏感?“
    左城抬起头。
    “你的递归更新步骤之所以会放大误差,是因为更新公式里有一个除法操作——定点除法的精度损失最大。“方泽拿起笔在纸上画了一个简图,“如果把更新公式从乘除形式改成加减形式,用对数域变换把乘除运算转化成加减运算,定点加减的精度损失比乘除小两个数量级。“
    左城瞪著纸上那个简图,脑子里像被闪电劈了一下。
    对数域变换。
    把乘除变成加减。
    这个思路他完全没想到——因为对数域变换在信號处理领域不常用,它是数字通信编码领域的技巧。左城的知识体系是从信號处理这棵树上长出来的,天然存在视野盲区。而方泽做嵌入式底层开发,天天跟定点运算打交道,对这类技巧信手拈来。
    这就是团队的意义——一个人的盲区,恰好是另一个人的强项。
    “方泽,你是天才。“左城说。这不是客套,是由衷的。
    方泽面无表情地喝了一口自己的咖啡:“不是天才,是被定点数折磨过太多次。“
    当天晚上,左城重写了递归更新模块,用对数域变换替换了所有的乘除操作。方泽同步把新的代码移植到定製晶片的模擬器上跑测试。
    凌晨两点,测试结果出来了。
    量化误差降到了原来的五十分之一。算法在定製晶片上的运行速度比浮点版本快了四倍。性能指標和实验室仿真的结果几乎一致。
    方泽看著屏幕上的数据,破天荒地说了句脏话。
    是好的那种。
    左城长长地吐了口气,靠在椅背上,盯著天花板笑了好一会儿。
    光幕在意识中悄然弹出一行字:
    【检测到宿主解决关键技术瓶颈,主线任务链·环节二进度更新:35%】
    才百分之三十五。算法移植只是第一步,后面还有系统集成、联调测试、七十二小时连续运行验证。
    但最难的那道坎,已经迈过去了。
    左城关掉面板,看了一眼手机。凌晨两点十五分,有一条未读消息。
    韩哲发来的,时间是晚上十一点。
    “周总確认下周三下午三点在研发中心,你到时候直接来十七楼就行。另外他让我提前跟你说一声——他想聊的不只是课题的事。“
    不只是课题的事。
    左城把手机放下,目光投向窗外沉寂的校园。
    蓝湾通信cto要聊的“不只是课题的事“,会是什么?
    他暂时想不出答案,但直觉告诉他,下周三那场谈话的分量,可能比拿下整个课题还重。
本站所有小说均来源于会员自主上传,如侵犯你的权益请联系我们,我们会尽快删除。

腐文书,免费小说,免费全本小说,好看的小说,热门小说,小说阅读网
版权所有 https://www.fuwenshu1.com All Rights Reserved, 联系邮箱:ad#taorouwen.com