黑板上,画着工业计算机的“五大模块”
架构图——中央处理模块、存储模块、输入输出模块、通信模块、电源模块。
吕辰站在黑板前:“电路梳理已经结束。73类通用逻辑,1867个基本操作。这些,就是我们要做成芯片的东西。”
他指着黑板上的架构图:“按五大模块分类,我把这些通用逻辑分配到了26颗芯片上。”
他拿起粉笔,开始讲解芯片分类。
“中央处理模块是整台计算机的大脑,是唯一需要运行通用微程序的部分,要读取二维卡上的控制程序,并据此出指令。我们做一个4芯方案——1颗主控制核心运行主控微程序,负责顺序控制、连锁保护逻辑;1颗冗余监控核心,与主核心跑同样的程序,结果比对,不一致就报警或接管;2颗定点运算器,负责处理简单的算术运算,如计数、计时、累加。”
钱兰问:“完全不考虑浮点运算吗?”
“暂时不考虑。工业控制主要还是温度、压力、度,定点够用了。”
吕辰继续讲存储模块:“存储模块,我们做一个7芯方案。1颗程序存储器,固化操作系统和自检程序,只读;5颗数据存储器,暂存生产过程中的温度、压力、度等数据,可读写,每秒钟记一次,循环缓冲区;1颗参数存储器,存储工艺参数,可擦写,通过插二维卡加载。”
诸葛彪弹了弹烟灰:“5颗数据存储器?一条产线用得着这么多吗?”
钱兰摇头:“诸葛,你算算,温度、压力、度、位置、电流、电压,上百个数据点,每秒钟记一次,数据量不小。5颗只能算是勉强够用。”
“钱师姐说得对,先这样,不够再加。”
吕辰点点头,“输入输出模块是专用芯片最多的部分,负责与车间里的传感器、电机、阀门打交道。这是大头,保守估计,需要9颗。”
他掰着手指头数:“2颗数字量输入隔离,接收开关、按钮、限位开关的信号,光电隔离,保护计算机;2颗数字量输出驱动,驱动继电器、接触器、指示灯;2颗模拟量输入,将温度、压力、流量等连续信号转换为数字量;2颗模拟量输出,将数字控制量转换为模拟信号,控制变频器、调节阀;1颗热电偶Rtd接口,专门处理热电偶、热电阻信号的放大和线性化。”
诸葛彪又问:“热电偶和热电阻的接口电路不一样,一颗芯片能搞定?”
“信号调理部分做在一起,前端加一个可编程增益放大器,通过配置寄存器选择热电偶或热电阻模式。这样一颗就够了。”
诸葛彪点了点头,在本子上记下来。
接下来是通信模块,吕辰设计了一个3芯组合:1颗二维卡接口,读取微程序和数据;1颗串行通信控制器,实现Rs-232Rs-485协议,用于未来联网;再预留1颗无线通信控制器,用于多机协同。
“无线通信控制器,先不设计。”
吕辰说,“但接口要留出来。”
诸葛彪看着“无线通信控制器”
那一行,沉默了几秒:“吕辰,你说这个预留接口,什么时候能真正用上?”
“五年?十年?”
吕辰笑了笑,“先留出来,等那天来了,不用重新设计。”
最后是电源模块,这是一个3芯方案:电压监测冗余切换1颗,监控主电源,故障时在毫秒内切换到备用电源;过流过压保护1颗,监测电流电压,异常时切断输出;dc-dc转换器1颗,将24V工业电源转换为芯片所需的±5V、±12V。
他放下粉笔,转过身,看着台下。
“26颗芯片,只有中央处理模块的4颗是可编程的‘大脑’,其余22颗全是功能固定的专用芯片。”
他顿了顿:“22颗专用芯片采用5微米工艺,4颗可编程芯片用2微米工艺。”
钱兰抬起头,有些疑惑:“吕辰,可编程芯片用2微米工艺?杀鸡用牛刀了吧?”
吕辰摇了摇头:“不是为了追求性能。2微米工艺能在同样的面积下做冗余设计。4颗可编程芯片,每一颗内部都可以塞下三套逻辑电路,一套跑程序,两套做备份。车间里不能停机,冗余比性能重要。宋教授那边昆仑1流片失败的教训,咱们不能白吃——高性能芯片追求的是‘快’,工业计算机追求的是‘稳’。宁可面积大一点,功耗高一点,也要保证在车间里跑上三年不出岔子。”