显示控制芯片的设计刚告一段落,宋颜教授就把一沓资料放在吕辰桌上。
“工业计算机的总体架构你来定。”
吕辰翻开资料,第一页就是赵老师写的需求报告,标题用红笔打了三个感叹号,字迹潦草但力道很重。
往下翻,是赵老师手绘的一张表格,列着这130多条产线的类型。
轧钢线、热处理线、锻造线、轴承线、管材线……
每一条的控制逻辑都不一样,每一条都要重新设计电路、重新画版图、重新流片。
130条产线,都需要定制控制柜,集成电路实验室压力很大!!!
需要最后得出结论:工业计算机设计,迫在眉眉睫!
吕辰把资料合上,靠在椅背上。
这不是130条产线的问题,这是工业化的根本矛盾,生产的需求是无限的,但定制的能力是有限的。
如果不解决这个矛盾,集成电路实验室就算再扩大十倍,也永远追不上。
他拿起笔,在稿纸上写下第一行字:我们到底要解决什么问题?
写了一天,又改了一天,查缺补漏又一天。
第四天早上,他拿着写好的方案,来到大会议室。
方案论证在这里进行。
长条桌摆成教室状,桌上放着一个个搪瓷缸和烟灰缸,缸子里泡着茶,茶叶梗浮在水面上,散发出一股茉莉花香。
来的人不少,林林总总六七十人。
刘星海教授等各中心、实验室负责人坐在前排,前面或摊着图纸,或摆着笔记本。
李怀德也来了,坐在刘星海旁边,手里夹着一支烟,正跟旁边的周主任低声说话。
吕辰拿出几张手绘的图纸,磁铁吸在黑板上。
他敲了敲黑板,会议室里安静下来。
“今天要讨论的,是工业控制计算机的总体架构。”
他转过身,在黑板上写了几个大字:我们到底要解决什么问题?
“在讲架构之前,我想先把这个根本问题说清楚。架构是手段,解决问题才是目的。如果我们连问题都没想清楚,架构设计得再漂亮,也是空中楼阁。”
他看向赵老师:“赵老师,您那份需求报告,我看了三遍。您说‘130条产线,每一条都要定制控制柜,集成电路实验室累死也做不完’。”
赵老师点点头,没说话。
“所以,我们要做的,是一台通用的机器。插不同的卡、跑不同的程序,就能控制不同的产线。不需要每次重新设计电路、重新画版图、重新流片。硬件是标准的,软件是定制的。”
他在黑板上画了一个简单的框图,一个方方正正的机柜,旁边画了几张卡片,卡片上写着“轧钢线”“热处理线”“锻造线”。
“这就是工业控制计算机的核心价值。”
他顿了顿,转过身,在黑板上写了三个词:眼前、中期、长期。
“但我把这个问题拆成了三层。光解决眼前的问题,不够。”
他指着“眼前”两个字。
“眼前的问题是什么?集成电路实验室产能不够,定制周期太长。一条产线等几个月,工人等不起,生产等不起。这是火烧眉毛的事,必须解决。”
他的手指移到“中期”。
“中期的问题是什么?产线还在增加。今年130条,明年可能是200条,后年可能是300条。靠手工定制,永远跟不上。不是我们不够努力,是这个模式本身就有上限。一个人一天画24小时的图,也就画那么多。一千个人画图,管理成本就上来了。这条路,走到头也追不上工业化的需求。”
他放下手,转过身看着所有人。
“长期的问题呢?”
他在黑板上写下四个字:工业控制。
“工业控制的本质是什么?不是做一台机器,不是写一段程序。是建立一套体系,一套让全国工厂都能自己解决问题、不用依赖少数专家的体系。”
他转过身:“如果我们只做一台机器,那这台机器再好,也只能管一条线。如果我们做一套体系,那这套体系就能管一千条线、一万条线。这才是工业控制计算机真正的价值。”
会议室里安静了几秒。
刘星海摘下眼镜擦了擦,又戴上,没说话,但嘴角微微动了一下。
李怀德把烟掐灭,靠在椅背上,若有所思。
赵老师开口了:“吕辰,你说的这些,我同意。但体系不是喊出来的,是设计出来的。你的架构,到底怎么支撑这个体系?”
吕辰点点头,转身在黑板上画了一个更大的图。
“好,那我来讲架构。”
他在黑板上画了五个方块,从上到下排列,每个方块旁边写着名字。
“我的设计思路,延续了之前编程机的模块化、总线化、标准化思路。但工业控制计算机和编程机不一样。编程机是给工程师用的,工业控制计算机是给生产线用的。所以,要在之前的基础上,做针对性强化。”
他在第一个方块旁边写下‘模块化’三字。
“模块化要做到骨头里。不是‘分几个模块’就完了,而是每一块板卡都能独立更换、独立升级。中央处理器板坏了,换中央处理器板;I/O板坏了,换I/O板。不用整机拆下来,不用等厂家派人来修。厂里的电工就能干。”
他又写下两个字:冗余。
“冗余是必须要做的。生产线不能停机。停一分钟,可能就是几吨废钢。所以电源要冗余,一个坏了另一个无缝切换。控制核心要冗余,主核死机,辅核在毫秒级接管。甚至I/O模块都要冗余,关键的传感器,接两个模块,一个坏了另一个顶上。”
他顿了顿,写下三个字:实时性。
“工业控制不是科学计算。科学计算等几分钟出结果没关系,但生产线等不了。飞剪的控制指令,必须在毫秒级内发出。晚了,钢板就切废了。所以必须用硬中断、优先级抢占。控制程序永远排在最高优先级,其他任务靠边站。”
他又写下三个字:抗干扰。
“车间的电磁环境有多恶劣,在座的各位比我清楚。大电机启动的瞬间,电压能掉下去几十伏。电焊机工作时,电磁干扰能把收音机变成噪音源。普通计算机扛不住,但我们的工业计算机必须扛住。这是生存底线。”
最后,他写下四个字:可扩展性。
“现在可能只控制一条线,但三年后呢?五年后呢?可能要控制十条线联动的车间。所以架构要留足余量。总线带宽、CPU算力、I/O通道数,都要有升级空间。不能做出来就用死了。”
他放下粉笔,转过身。
“这五个原则,是工业控制计算机的骨架。
他在黑板上画了一张新的图,这次是五个方块排成一排,每个方块
“工业控制计算机,我把它拆成五个核心模块。”
他指着第一个方块。
“第一,中央处理模块。这是机器的‘大脑’。它运行控制程序,做逻辑判断和算术运算。双核心冗余,主核跑程序,辅核负责监控。主核死机,辅核在几毫秒内接管,生产线不会停。”
他顿了顿,补充道:“指令集要精简。只保留工业控制需要的指令,如顺序控制、连锁保护、PID调节、定时器、计数器。不需要浮点运算,不需要向量指令。精简了,芯片面积就小了,成本就低了,可靠性就高了。”
他的手指移到第二个方块。
“第二,I/O模块。这是机器的‘眼睛’和‘手’。它连接所有传感器和执行机构。”
他在方块
“数字量I/O,用光电隔离。车间里的高压和计算机隔开,保护机器也保护人。开关量、脉冲量,都走这条路。模拟量I/O,用高精度ADC。温度、压力、流量这些连续变化的物理量,变成数字信号给CPU处理。”
他抬起头,看着赵老师。
“I/O模块也要模块化。一条生产线需要多少路输入输出,就插多少块板子。不够了再加,多了就减。标准化、积木化。但不再是每次重新设计电路,而是插拔板子。”
他又补充了一句:“I/O模块要支持热插拔。坏了不停机就能换。生产线在跑,电工把坏板子拔下来,插上新板子,系统自动识别、自动恢复。这叫不停机维修。”
赵老师在笔记本上飞快地记着,点了点头。
吕辰的手指移到第三个方块。
“第三,存储模块分三类存储器。”
他在方块
“程序存储器。用只读存储器,存操作系统和控制程序。写进去就不改了,防止程序被意外破坏或者被人篡改。”
“数据存储器。用存储芯片,存生产过程的实时数据。温度、压力、速度,每秒钟记一次,记在循环缓冲区里。满了就写到磁带上。出了事故,翻数据就知道当时发生了什么。”
“参数存储器。用可擦写存储器,存工艺参数。不同的钢材、不同的规格,参数不一样。工人插一张二维卡,机器就把参数加载进来。”
他顿了顿,看着在座的人。
“三类存储分离,各司其职。程序是固化的,数据是临时的,参数是可变的。这种架构,比混在一起可靠得多。”
他的手指移到第四个方块。
“第四,电源模块单单独做。”