主题:【原创】我所见到的测控卫星的“大型”机 一 -- fj1989
SB们学的时候,没有学透彻。看到人家IBM的大型机是36位的数据线,我们也搞个36位的数据线。至于为什么要36位的数据线就不懂了,结果就把这36位数据线胡乱理解,胡乱分组了。嘿嘿,好玩。欧阳锋倒练九阴真经。
36位字长,前6位是指令,第7位到第9位是状态码。后面是操作数或地址。可以算出,指令最多只能有64条。这算不算是精简指令集?
按互动百科上的解释:
我觉得可以算是了。
理论上内存的寻址范围也可以确定了:2的27次方,128M。
指令集的具体细节记不清了,而当年是能默写的。
然后谈谈程序代码。
所谓汇编语言,就是因为机器代码难记才搞出来的。用了一些帮助记忆的缩写词什么的,编译后执行效率最高。但是很难调试。所以一般只用在开发底层接口或是有什么特殊需要的地方。当年,汇编语言和高级语言的混合编译是一门很高深的学问。大伙一般是用高级语言做框架,在需要直接对硬件操作的时候,或是涉及程序执行效率实在绕不过去时,才用上汇编。
不过,717机没有汇编程序。八十年代,据说有一个牛人想在PC上给717机弄一套汇编,而且还有了雏形。不过之后就没下文了。没有汇编程序怎么办?大牛们才不在乎那些,直接用机器代码!
所以,有幸看到的程序代码就是象这样的:
64 3 101 323 744
01 6 200 333 551
要说规律,当然是有。只是看到一寸厚的本子上全是这样的东西,当时就头大了。
这都啥事儿啊!都七、八十年代了,没Fortran就算了,汇编也不给开发一个。看来做这机器(717)的人根本就没打算让人用这机器。
好在有牛人前赴后继地啃这本东东,所以上面有非常多的注解。有的人很认真,象蝇头小楷似的;有的人大气磅薄,金钩银画;有的人天马行空,一个箭头从本页就不知指到哪去了。就这样,这本程序还是十分宝贝的。只有中队长才能拥有。轮到我时,就不知他会写些什么了。新人么,老老实实地打印一份,装订好,对着教程从头啃吧。
前面说过,我是计算机中队的,还有一个程序中队。我们搞维护的,只能往机器装两个程序,一个是所谓的“考机程序”,就是自检程序;另一个就是通道对接程序。至于任务程序,对不起,那是程序中队负责的。
我要打印的,就是自检程序。
因为这是最容易读懂,也是对我们最有用的程序。
说它容易懂,是因为其逻辑性强,内容全面。从指令的检查开始,到累加器的检查,到内存检查,再到通道检查。所有的指令和所有的执行方式都涉及了。编这个程序的太牛了,居然连操作台上的喇叭都检查到了,而且还不是让它发一声就算了,人家编了程序,让它奏乐,还不只奏一首,有东方红,浏阳河,国际歌什么的。只是没有和弦,所以听多了有点难受。
程序存在那里?硬盘吗?我去的时候是在硬盘里了。不过,以前没有硬盘的时候,是放在磁带里的。还有接收下来的数据,也是存在磁带里的。
实际上,当时是有两台717机的。一台完成了改造,用一台286微机加上接口板,全面替代了磁带机。另外一台,则没有改造,还是用的磁带。而第一台改造后,为保险起见,还是保留了磁带的。只是后来微机实在太好用了,所以磁带就没人用了。
每台主机配了四台磁带机。可见当时,外存是最不让人放心的。每次写数据的时候,都是同时向两台磁带机里写入,以防有一台出错。至于另外两台,是整体来备份这两台的。以防止控制这两台磁带机的电路有什么故障,导致最宝贵的数据丢失。 至于另外一台主机么,在执行实时测控任务的时候,也是全部开机进行热备份的,就是接收全部的数据,只是不能发指令罢了。所以,在硬件可靠性不高的年代,为了那些数据,要投入多少的金钱。
据说,在八台磁带机一齐开机的时候,那里面根本就不能称之为机房,起码不是现在意义上静谧的机房。电流声,人声,全都被磁带机叮咛哐啷的声响盖过了。有人形容说象金工车间,我是去得迟了,无缘得见。不过,在调试备用主机时,四台磁带机同时开机的动静是见识到了。
网络传输CRC校验往往就1位就足够了,因为网络传输的误码率用1位来纠正就足够保证正确了。计算机内部的数据传递没听说过有出错还需要纠错的,内存到CPU还校验数据有点不可思议,一来内部数据的误码率不可能比网络传输的误码率还要高,需要比网络传输校验位还多;二来如果四位校验码,那对CPU和内存的消耗太大了,那个年代的计算机内存多金贵,连年份都只用两位数字表示
采用36位应该是
毕竟这是专门设计的计算机
每一个集成块都可以用万用表的电阻档或二极管通断档大致判断出好坏。譬如74系列,一正一反量电源输入和零线那两个引脚,都导通那肯定是完蛋了。其他还有很多门道,不过这么多年过去,都给化学物质给化了。
晒图用的是氨水啊,那个香吗?
如果能配上一些照片,就图文并茂了。
你没有看到他下面写的么,为了保证存储的正确,用了几个磁带来同时存储啊?嘿嘿,我就不说你SBer了。细了,我就不说了,你们再练练吧。网络传输的CRC校验是1位吗?呵呵,你也不到网上先查一查?什么叫CRC16, 什么叫CRC32啊?ITU是怎么定义的啊?以太网是怎么定义的啊?不说了。
前面有朋友提到校验的事,这个倒是有。不过不是在主机里,而是在磁带机中有应用。我依稀记得是海明校验,能达到一个磁道错能自纠,二个磁道错能报警的效果。
为了继续写这篇文章,还是放狗一搜。结果网上还真有:
外链出处。作者是刘启业(原中科院计算所十四组助理研究员,解放军某研究所原总工程师)。看来刘老是这台机的体系结构设计者之一了。如果有机会,可以向他当面讨教一下为什么采用了36位的总线设计。刘老是计算所的,说不定和弓老先生认识。
文章里写的是第一代的717机了。我们用的是第二代。可能主体逻辑没怎么改,就是用集成电路代替了分立元件。第一代机的性能和稳定性会差一些。根据文中所提到的,主要部署在湘西、南宁、昆明、三亚、喀什等站。实际上,这些测控站,还有拉萨、长春、渭南等站,构成了中国第一代的卫星测控网。完成了东方红一号等卫星的测控任务。
随着地球同步卫星发射的测控需要,国家开始重点建设一南一北两个装备了微波测控设备的测控站。对测控机的改造就提到了议事日程上来。当时上海的工业力量还是全国最强的。所以改造任务就放到了上海无线电十三厂。改进型号应该称691机。不过大家习惯了叫她717机。
这篇文章里面有我在本文第一篇里的引文。
里面提到了半固定(采用双轴磁芯)存储器曾用于691机。不过我接手时,已经被改造了。用了74系列的芯片和日本的存储芯片替换了原来的磁存储器。改造非常成功,除了与运控、通道分机接口没变化外,里面脱胎换骨。稳定性大大提高。事实上,这也是整个机器最稳定的部分。印象里内存分机只坏过几次,而且很快就能排除。因为集成度的提高,整个内存分机只有十来块大电路板,而且都有备份。因为是后期改造的缘故,增加了不少信号灯,系统状态一目了然,哪块板有了故障直接就可以换掉。
当时这些都是保密的装备,相机根本带不进机房的。再说,那时相机也不像今天这般普及。
剩下的是一种很特别的味道。