2019年7月是阿波羅11號登月50週年。

Photo credit: NASA

關於20世紀人類這次最偉大沒有之一的演出,也許用任何短文紀念和評論都是可笑的。

所以我只是攫取了自己關注的兩個小角落,分享一下自己的好奇心。

一、

阿波羅計劃1961年開始的時候,集成電路(晶元)才剛剛發明兩三年,計算機還是重達幾百公斤充滿整個房間的龐然大物。

因為飛船速度極快,登月艙從月球起飛後還要精準地和繞月球飛了幾十圈的軌道艙對接,靠人駕駛是不太現實的,把計算機裝進飛船是當時科學家和工程師挑戰的「不可能任務」之一。

其實那時的集成電路裡面才一兩個晶體管而已,現在手機的晶元比它多一億倍。即使為了減輕重量(最後只有32公斤),這個導航計算機還是用了30000個零件,花了2000人年的手工裝配起來。

導航計算機設計極其緊湊和模塊化

飛船主要是慣性導航,六分儀、陀螺儀和加速計提供測量數據,還有通過望遠鏡確認星星的位置,電腦進行實時分析處理。

二、

這臺機器是人類最早的用硅晶元做的計算機。1963年為它採購的晶元佔美國當年晶元總產量的60%。這種用邏輯電路組成的CPU是今天我們用的電腦的雛形。

導航計算機的邏輯模塊一瞥

所以,登月工程極大促進了半導體業的發展。今天全世界人們的電子化生活,應該說都和這個項目有很大關係。

當年還沒有我們今天用的這種半導體內存和硬碟,那麼數據存在哪裡呢?這是最有意思的部分。

導航計算機的程序有36,864個字組成,紡織女工們用繩子打結的方式表示0和1,存儲了這些程序。顯然,這種存儲是隻讀的,不能改。優點也很顯著,就是很結實不會壞。

繩子Memory被捲到這個模塊裏

CPU處理需要把程序臨時調入內存,女工們在繩子上套上小鐵環,通過磁力變化來區別0和1。登月用的內存是2K,比今天手機內存小了一百萬倍。

繩子磁芯 Memory 模塊打開圖

三、

導航計算機是由麻省理工學院開發的。當年的程序也不是像今天的碼農這樣敲進去的,而都是在紙上手寫的。紙上寫完,再做成穿孔紙帶輸入大型計算機做驗證,最後成功了再給女工們去打結。

下圖是展示寫這些程序用了多少紙。全部是彙編語言和一些數學演算法,總共花了1400人年。從這裡看,現在的程序員應該感到無比幸福才對。

Photo credit: MIT

阿波羅導航計算機顯示了其無與倫比的可靠性。在後來的多次登月活動中,幾乎沒有出現任何問題。

登月的源代碼有在Github公佈,網上也有不少該計算機的模擬器,有興趣的同學可以體會一下。

漂亮的人機界面 Credit:NASA

四、

最後,我們看一下登月用的相機:瑞典哈蘇。宇航員在月球上使用的是配備蔡司F5.6鏡頭的哈蘇數據相機,這個相機在-65°C到120°C都可以正常工作。

Photo credit: Hasselblad

因為返回地球的重量越輕越好,宇航員拍完照片會把膠片盒取下來,然後把相機扔掉。五次登月活動總共有12臺哈蘇相機被遺棄在月球上。

最後放一張登月全過程示意圖:

Photo Credit: Smithsonian Magazine

推薦閱讀:

《光刻機之戰》?

mp.weixin.qq.com

《內存的故事》?

mp.weixin.qq.com

《程序員之神》?

mp.weixin.qq.com


推薦閱讀:

相關文章