1978:从婴儿开始增加智商 - 第五十六章:完美的不像人
接下来的日子,陆沉的生活多了一项高度保密的地下工作。
他依旧认真上课,备考,但所有的课余时间,包括晚上熄灯后打手电的时间,几乎都投入到了这份寒假作业中。
他先反覆研读那叠材料,吃透系统需求、硬体约束和核心难点。
然后在笔记本上,开始自己的纸上设计。
没有实际的z80单板机,他就根据tp801的手册(张老师又帮他找了一份更详细的),在笔记本上画出系统內存映射、io口分配、中断向量表。
他设计了一个极简的、基於定时器中断的调度核心,用来协调数据採集、处理和通信任务。
数据滤波算法,他放弃了材料中提到的几种复杂但耗时的方案,结合自己前世的经验,选择了一种改进型的递推平均滤波结合简单限幅滤波的方法,在保证一定效果的前提下,极大减少了计算量。
为了对抗工频干扰,他设计了一个简单的自適应陷波器思路,虽然以z80的性能实现完整的自適应不现实,但他简化了参数调整逻辑,使其能在初始化时根据预设工频进行一次性配置。
每一个设计,他都要反覆推敲时序是否衝突,计算量是否超限,內存是否够用。
他在草稿纸上写满偽代码,画满时序图。
遇到卡住的地方,就去查资料,翻看那本《微型计算机原理》,或者去图书馆的旧纸堆里寻找灵感。
有时也会带著提炼后的问题,去请教张老师,但只问原理和思路,不涉及具体设计细节。
他还真的用苹果ii的basic,写了一些小程序,来模擬验证算法效果。
比如用隨机数模擬带噪声的採样数据,验证他的滤波算法效果;用简单循环模擬多任务调度,看会不会出现优先级反转或死锁。
虽然运行环境天差地別,但能帮助他理清逻辑。
这个过程是孤独的,也是充实的。
常常为了一个中断服务程序里如何既完成操作又快速退出而苦思冥想,也为了找到一种节省內存的数据结构而欣喜。
他仿佛又回到了前世,在实验室里攻克某个技术难点时的状態,只是工具从强大的工作站和仿真器,变成了纸笔和一台苹果ii。
他的投入没有逃过室友的眼睛。
陈浩发现陆沉晚上打手电的时间更长了,看的不是课本,而是一些画满奇怪框图和符號的笔记。
孙鹏则好奇陆沉为什么老在苹果ii上运行一些看不懂的、光列印数字的程序。
刘宇隱约猜到陆沉可能在研究什么深奥的东西,但陆沉不说,他也不多问。
期末考试如期而至,又波澜不惊地结束。
陆沉再次以接近满分的总成绩,稳居年级第一。
实验班的同学们对这个结果已经麻木了,仿佛那是天经地义的事情。
考完试的下午,陆沉没有像其他同学一样急著放鬆或收拾行李回家。
他抱著那份已经翻阅得有些卷边、写满批註的寒假作业材料,以及自己那本厚厚的设计笔记,敲响了张老师办公室的门。
“进来。”张老师正在整理东西,看到陆沉和他怀里那摞东西,眼中闪过一丝瞭然和期待。
“张老师,材料我看完了,也……试著想了想。”陆沉把材料和笔记本放在桌上。
“哦?有什么收穫?隨便说说。”张老师坐直身体,儘量让自己的语气显得隨意。
陆沉没有直接摊开笔记,而是整理了一下思路,开始陈述。
他从系统总体框架说起,讲了自己设想的基於优先级中断的简单任务调度模型,讲了在內存限制下的数据缓衝区设计,重点阐述了他对滤波算法的改进思路和简化策略,详细解释了如何平衡实时性和精度,以及对抗工频干扰的简化方案。
他语气平稳,逻辑清晰,没有引用任何高深术语,都是用最直白的语言,配合著手势在桌上比划,仿佛在描述一台正在他脑海中运行的机器。
张老师起初只是听著,不时点头。
但隨著陆沉越讲越深,越讲越细,他的表情渐渐变了。
惊讶,思索,恍然,再到难以掩饰的震动。
陆沉讲的许多思路,特別是对算法计算量的极致压缩和对中断响应的精细化设计,完全不像是一个中学生(甚至比大学生还要强得多)的思维深度。
这已经不仅仅是有点悟性,这简直像是一个有丰富嵌入式系统开发经验的人,在苛刻条件下做出的优化设计!更关键的是,陆沉的整个设计,紧紧围绕著z80单板机的实际限制展开,没有不切实际的空想,每一步都考虑到了可行性和代价。
“……大概就是这样。还有一些细节,比如看门狗定时器的使用、通信协议里的差错校验,我笔记里写得更详细些,但可能还有不少想当然的地方。”陆沉讲完,喝了口水,看著陷入沉思的张老师。
办公室里安静了片刻。
张老师长长地舒了口气,摘下眼镜,揉了揉鼻樑,然后重新戴上,目光复杂地看著陆沉:“陆沉,你这些想法……都是你自己琢磨出来的?没问別人?”
“主要是自己推演,也查了些资料。有些不確定的地方,问过您原理。”陆沉如实回答。
张老师拿起陆沉那本写满的笔记,快速翻看著。
里面不仅有文字描述,还有大量工整的流程图、时序图、內存分配表、偽代码,甚至还有一些简单的电路连接示意(比如扩展ad晶片与z80的接口设想)。
虽然笔跡稚嫩,但条理之清晰、考虑之周详,令人嘆为观止。
“了不得……”张老师喃喃道,翻到某一页,指著上面一段关於用查表法替代实时浮点运算加速特定滤波环节的备註,“这个查表法的想法,很巧妙。牺牲一点灵活性,换取速度,在这个场景下是划算的。还有这个中断嵌套的处理策略……你连这个都考虑到了。”
他合上笔记,沉默了一会儿,似乎在消化內心的震撼。
添加书签
搜索的提交是按输入法界面上的确定/提交/前进键的