吕辰把《程序设计院筹建方案》的初稿递给陈教授时,已经是第三天傍晚。
三天里,他几乎没怎么合眼。
笔记本上密密麻麻写满了各种设想,又划掉,又重写,反反复复改了七八遍。
稿纸堆了半尺高,最后定下来的,就是手里这薄薄七页。
陈教授接过方案,慢慢的看了起来。
虽辰先给自己倒了杯茶,又把陈教授面前的杯子续满。
夕阳透过玻璃照进来,在桌面上铺了一层暖色。
陈教授看完,拿起笔,在纸上画了一个图。
“你这个架构,本质上是一个哑铃型组织。”
他用笔尖点着图的两端:“一头是系统软件部,一头是技术支持部,中间是应用软件部、培训部和综合管理部。系统软件部负责造轮子,技术支持部负责修轮子,应用软件部和培训部负责用轮子。”
他放下笔,看着吕辰:“逻辑是对的。但有一个问题,这个架构,谁来管?”
吕辰愣了一下:“院长啊。”
“院长谁来当?”
“陈教授,当然是您啊。”
陈教授摇了摇头,端起茶杯喝了一口,慢慢放下。
“小吕,我不能当这个院长。”
吕辰张了张嘴,想说什么,被陈教授抬手制止了。
“不是我不想,是我当不了。”他的声音很平静,“理论组那边,我还有一大摊子事。程序设计院如果挂在我名下,我顾不过来,反而害了它。这个院长,必须是一个能天天坐镇、随时处理问题的人。”
他顿了顿,看着吕辰:“你觉得谁合适?”
吕辰沉默了一会儿,脑子里飞快地转着。
陈教授是理论组的核心,他的主要精力确实在那边。
程序设计院虽然以理论组为班底,但本质上是工程实体,需要的是一个懂技术、能服众、有行政能力、还能坐得住的人。
他想了半天,试探着说:“能不能请你们数学系的张教授出山……?”
陈教授又摇头:“小吕,你不知道吧,老张他……已经去了农场。”
吕辰黯然,过了一会又道:“那我们学校数学系的唐教授呢?”
陈教授没有回应,他靠在椅背上,看着天花板想了一会儿,然后忽然坐直了身子。
“我有一个提议。”
“您说。”
“程序设计院不设院长。”
吕辰愣住了:“不设院长?”
“对。”陈教授拿起笔,在纸上画了一个圆,“设一个技术委员会,由五到七名专家组成。委员会设主席一名,副主席两名。重大事项由委员会投票决定,日常事务由常务副院长负责。”
他顿了顿,低声道:“第一,咱们不把鸡蛋放在一个篮子里,整个院就不会因个人原因而瘫痪。第二,专家集体决策,比一个人拍板更稳妥,也更能服众。第三,也是最关键的,委员会制在当前的形势下,比一把手制更安全。”
吕辰瞬间就明白了。
委员会制,集体决策,集体责任,这是最稳妥、最安全的办法。
“陈教授这个想法好。”吕辰说,“那委员会主席……”
“我挂名。”陈教授说,“但我只挂名,不干预日常事务。日常事务由常务副院长负责。”
“常务副院长的人选呢?”
陈教授想了想,在纸上写了一个名字。
吕辰看了一眼,点了点头。
架构定下来之后,两个人开始逐条讨论五个部门的职能。
系统软件部是程序设计院的核心,负责系统软件开发、维护和升级。
“这个部门,要配最强的人。”陈教授说,“系统软件是整个设计院的‘地基’,地基不稳,上面盖什么都白搭。”
吕辰在笔记本上记了一笔:“系统软件部,编制暂定30人,设部长1人,副部长2人。”
应用软件部负责针对不同应用场景,开发专用的程序库和算法包。
“雷达信号处理、导弹弹道计算、卫星轨道规划、电力系统分析……”
吕辰一项一项地列:“每一个方向,都需要专门的算法库。这些库,不能等用户自己写,要提前做出来。”
陈教授点头:“应用软件部要和用户单位紧密合作。搞雷达的、搞导弹的、搞电力的,他们最清楚自己的需求。我们的人要驻场,和他们一起干。”
吕辰记下来:“应用软件部,编制暂定40人,设部长1人,副部长3人。下设雷达组、导弹组、电力组、卫星组四个专业组。”
培训部负责编写使用手册、编程指南、维护手册,并对全国用户进行技术培训。
“手册要写得通俗易懂。”陈教授强调,“不要满篇术语,要让一线工程师能看懂。配图、配案例、配习题。工人看完就能上手。”
吕辰补充道:“培训要分层次。领导干部的培训,重点是能干什么,不是怎么干。技术骨干的培训,要上机实操,手把手教。普通操作人员的培训,要侧重日常使用和维护。”
陈教授点头认可。
“培训部,编制暂定15人,设部长1人,副部长1人。”
技术支持部负责处理各地用户的问题反馈,派技术人员现场支援。
“全国各地的用户,出了问题,首先找的就是这个部门。”吕辰说,“所以技术支持部的人,技术要过硬,沟通能力要强,还要能吃苦。动不动就要出差,一去就是十天半个月。”
陈教授想了想,加了一句:“技术支持部要建一个问题库。每一个用户反馈的问题,都要记录在案,什么问题、怎么解决的、有没有更好的办法。这个库积累起来,就是最宝贵的经验。”
“编制暂定20人,设部长1人,副部长2人。”
综合管理部负责行政、人事、财务、保密、档案等事务。
“综合管理部是不管部。”吕辰笑着说,“其他四个部门不管的事,都归它管。”
陈教授也笑了:“但这个部门最关键。尤其是保密和档案,一点都不能马虎。”
“综合管理部,编制暂定10人,设主任1人。”
五个部门的编制加起来,一共115人。
陈教授看完数字,皱了皱眉:“115人,理论组现在没有这么多人手。”
吕辰早就想好了这个问题:“人员从三个渠道来。”
“第一,从理论组现有人员中抽调。研究生、博士生,他们理论基础扎实,工程实践充分,这是核心支柱。”
“第二,从星河计划各协作单位抽调。北大、北钢院、哈工大、西军电……这些单位都有搞计算机软件的人才。以星河计划的名义,借调或者双聘。”
“第三,从毕业生中招聘,挑理论基础出的,直接招进来锻炼。”
陈教授听完,沉默了一会儿:“115人的规模,是不是太大了?”
吕辰摇了摇头:“陈教授,您放心,这点人还不够,国会有多少台午马?一台午马需要多少系统软件?每一个用户都需要培训,每一个问题都需要支持。115人,只少不多。”
他顿了顿:“需要要的人只会越来越多。”
他又补充道:“而且,这个编制还不是一步到位,随着星河计划的开展,工业计算机、昆仑1机等陆续研发出来,程序需求会越来越大。115人,只能算是先搭个班子,要不了几年,上千人的团队都不一定能保证需求。”
陈教授想了想,点了点头。
两人又说起经费与待遇,这是最现实的问题。
吕辰的方案里,写了三条经费来源。
首先,肯定是星河计划的专项经费。程序设计院是星河计划的组成部分,理应获得专项经费支持。
其次是技术服务收入,用户单位的培训、技术支持、定制开发,都可以收费。
最后是软件销售,应用软件部开发的专用程序库、算法包,可以作为产品出售。
“三条腿走路,比单靠国家拨款稳当。”陈教授看着那三条,点了点头。
……
两个人一直讨论到深夜。
茶换了两泡,烟抽了半包。
桌上的稿纸越堆越高,最后定下来的章程,一共十二条。
吕辰把章程从头到尾念了一遍:
星河计划程序设计院章程(草案)
第一条(宗旨) 程序设计院是为昆仑系列科研计算机及后续机型提供系统软件开发、维护、定制、推广服务的专业技术机构,旨在保障星河计划相关计算机系统的稳定运行,服务全国用户……
念完之后,吕辰抬起头,看着陈教授。
陈教授没说话,拿起笔,在草案最后一页签了自己的名字。
“可以了。”他把笔放下,“明天,我把这份章程带到理论组,征求他们的意见,没问题就正式上报星河计划了。”
吕辰点了点头,把章程收好,放进一个牛皮纸袋里,打个结,递给了陈教授。
陈教授接过:“小吕,你说这个设计院,能撑多久?”
吕辰笑道:“只要国家还需要集成电路,它就能撑下去,撑很多年。”
陈教授点点头,推门走了出去,清晨的风从门里灌进来,带着一股凉意。
他的身影没入了黑暗,远处传来鸡鸣声,隐隐约约,断断续续。
……
陈教授离开后,吕辰在椅子上眯了一会,再次醒来,已是早上八点,所里早已人来人往,开始工作了。
冷水浇面,去食堂领了一个馒头,啃着往机房走去。
机房里灯火通明,16台午马机全面在工作,指示灯红红绿绿地亮着,显示器屏幕上的绿色字符跳动着,映着机器前的人。
第九组三十几号人,分成几个小队,围在不同的机器前面。
有的手里拿着二维卡,正在往读卡机里塞;
有的蹲在机柜后面,手里拿着万用表,在量着什么;
有的趴在实验台上,对着一张手绘的拓扑图,跟旁边的人小声讨论。
钱兰站在中央存储柜旁边,面前围着一圈人。
她手里拿着一支笔,在实验台上画着星型网的数据流向图。
“……存储控制器收到读写请求后,会根据地址判断数据在哪个存储块里,然后通过总线把数据取出来。”
她用粉笔画了一个箭头:“注意,多个节点同时请求的时候,控制器有优先级仲裁。优先级高的先处理,低的排队。你们写程序的时候,要……”
有人举手问:“钱师姐,优先级是怎么定的?”
“硬件优先级,按节点编号。编号小的优先级高。”钱兰在纸上写下一行字,“也可以通过调度器设置优先级。调度器会把高优先级的任务分配给编号小的节点,间接实现优先级控制。”
诸葛彪面前也围着一些人。
他蹲在一台午马机的后面,手里拿着一根同轴电缆的接头,正在演示环网的接线方法。
“……T型接头里面有个终端匹配电阻,120欧姆,跟同轴电缆的特性阻抗一致。如果匹配电阻坏了,信号就会反射,令牌就传不下去了。”
他把接头拧开,露出里面的电阻,用镊子夹起来让大家看。
“所以,排查环网故障的时候,第一件事就是检查这个电阻。”
一个年轻人问:“诸葛师兄,如果电阻正常,但还是传不下去呢?”
“那就用示波器看信号。在T型接头的测试口上勾一下,看波形。如果波形圆了、扁了、有毛刺,那就是线缆或者接头的问题……”
他起身走到一台午马机前面,敲了几个键,屏幕上出现了一行命令:“RI”。
“这是环网诊断命令,你们记住。敲下去之后,机器会发一个测试令牌,在环上跑一圈。屏幕上会显示每一跳的延迟时间。如果哪个节点没响应,就是它或者它的上下游有问题。”
几个年轻人掏出笔记本,飞快地记着。
吕辰又往里面走了几步。
几个人围在一台午马机前面,正在练习用调度器提交任务。
一个年轻研究员坐在操作台前,手里拿着一张二维卡,不知道该怎么操作。
旁边的人小声提醒:“先敲SUBMIT,然后把卡片塞进去。”
研究员照做了,读卡机“咔嗒”一声把卡片吞进去,屏幕上出现了一行新任务,状态变成了“等待”。
然后屏幕上又跳出一行字:“TASK 0005 DISPATCHED TO NODE 7”。
研究员愣了一下:“为什么分给7号机?”
旁边的人说:“调度器看负载的。7号机负载最低,就给它了。”
吕辰看着他在本子上记下“SUBMIT”命令的用法,心里有一种说不出的踏实。
他转过身,钱兰已经讲完了,正在收拾纸笔。
“钱师姐,昨晚没回去。”他走过去。
钱兰笑道:“我是早上来的,接替了国华。”
“怎么样,培训还顺利?”
钱兰从包里掏出一个小本子,翻了翻。
“今天是第三天,每个小组轮训半天,上机操作。我们分了13个小组,每组30人左右。今天上午是第九、第十组,下午换剩下三个组。”
她合上本子:“这毕竟是新东西,大家又喜欢钻研,刨根问底,问题不少。”
她顿了顿,声音低了一些:“大家都觉得,做芯片的就不能不懂计算机,非要把所有东西弄明白。我们商量,先在会议室把理论讲通,然后才来上机。昨天晚上,第七组呆了一整晚。”
诸葛彪从角落里走过来,手里拿着那根同轴电缆接头,往兜里一揣。
“吕辰,你来得正好。”他拿出一包烟,“走,出门说。”
二人来到外面,点上烟,诸葛彪吸了一口:“培训马上结束了,接下来就是单元库录入了。”
吕辰道:“余师兄那边怎么说?”
“第三组正在推进2微米库的建设,录入的事,恐怕还得第八组当主力。”
吕辰点了点头:“行,我去和余师兄商量。”
“你在这儿盯着,还是回去休息?”
“你先去吃早饭,吃完回来换我。”
诸葛彪点了点头,又拿出一烟点了起来。