- आधुनिक USB-C वॉल चार्जर के अंदर मौजूद microcontroller, 1969 के Apollo 11 Guidance Computer से तुलना लायक clock, memory और storage तक बढ़ चुके हैं
- Anker PowerPort Atom PD 2 का CYPD4225 48MHz ARM Cortex-M0, 128KB Flash और 8KB RAM रखता है; गणना के अनुसार अधिकतर instruction execution के आधार पर यह AGC से लगभग 563 गुना तेज है
- storage क्षमता instruction encoding की धारणाओं पर निर्भर करती है, और CYPD4225 AGC से 1.19~1.78 गुना अधिक instructions रख सकता है
- Apollo 11 में 2 AGC, 1 LVDC, 1 AGS यानी कुल 4 computers थे, और मूल design को बहुत बदले बिना किसी single charger chip से सभी को replace करना कठिन है
- सिर्फ compute performance देखें तो Anker chargers के 4 units Apollo 11 स्तर की computing के बराबर दिख सकते हैं, लेकिन space environment certification, peripherals, voltage levels और LVDC की triple-redundant logic अलग constraints बने रहते हैं
तुलना के लक्ष्य और basic specifications
- तुलना के लक्ष्य Apollo 11 Guidance Computer और हाल के 3 USB-C chargers हैं
- Google Pixel 18W Charger: Weltrend WT6630P, 10MHz, 512 bytes RAM, 8KB storage
- Huawei 40W SuperCharge: Richtek RT7205, 22.7MHz, “0.75kB” RAM, 24KB storage
- Anker PowerPort Atom PD 2: Cypress CYPD4225, 48MHz, 8KB RAM, 128KB Flash
- Apollo 11 Guidance Computer: discrete components आधारित, 1.024MHz, 2,048 15-bit word RAM, 36,864 15-bit word program storage
- AGC ने CSM की अधिकतर lunar flight, LEM की moon landing और takeoff, तथा CSM की Earth return को support किया
- table में सबसे powerful CPU Anker PowerPort Atom PD 2 का CYPD4225 है
- AGC की तुलना में clock लगभग 48 गुना
- program storage लगभग 1.8 गुना
instruction execution speed की तुलना
- AGC 1.024MHz master clock का उपयोग करता है, और एक instruction के लिए कम से कम 12 clock cycles चाहिए
- integer operations में one's complement का उपयोग होता है
- floating point नहीं है
- arithmetic operations के लिए single accumulator register का उपयोग होता है
- CYPD4225 में ARM Cortex-M0 CPU है
- AGC और Cortex-M0 दोनों में cache नहीं है, memory access time स्थिर है, और instructions क्रम से execute होते हैं
- दोनों में hardware floating point और AVX, SSE, NEON जैसे vector/matrix hardware नहीं हैं
- समान instructions के cycle counts की तुलना करें तो Cortex-M0 काफी आगे है
- 15-bit addition/subtraction: AGC 24 cycles, Cortex-M0 1 cycle
- 31-bit addition/subtraction: AGC 36 cycles, Cortex-M0 1 cycle
- multiplication: AGC 36 cycles, Cortex-M0 1 cycle
- zero branch: AGC 24 cycles, Cortex-M0 बिना CMP 1~4 cycles, CMP सहित 2~5 cycles
- memory store/load: AGC 24 cycles, Cortex-M0 2 cycles
- अधिकतर AGC instructions Cortex-M0 से लगभग 12 गुना अधिक clock cycles लेते हैं, और Cortex-M0 48MHz पर चलता है
- formula है
12 * 48MHz / 1.024MHz - इस आधार पर Anker PowerPort Atom PD 2 USB-C charger CPU अधिकतर applications में AGC से 563 गुना तेज है
- formula है
- Cortex-M0 में AGC की तुलना में जो instruction साफ तौर पर missing है, वह division है
- AGC की division 72 cycles लेती है, यानी लगभग 70.3µs
- उतने ही समय में CYPD4225 लगभग 3,374 arithmetic instructions execute कर सकता है
- branch cost लगभग 3 cycles है, इसलिए software division implementation की गुंजाइश है
program storage और instruction encoding
- Apollo programmers ने Guidance Computer की storage कमी के कारण virtual machine/interpreter लिखा था
- storage बचाने के लिए speed sacrifice करनी पड़े, इतनी बड़ी space constraint थी
- AGC 36,864 15-bit words store करता है, और CYPD4225 में storage के रूप में 128KB Flash है
- simple information amount के आधार पर CYPD4225 AGC से 1.90 गुना अधिक information store कर सकता है
- AGC instructions 15-bit fixed-width instructions हैं
- Cortex-M0 THUMB2 instruction set implement करता है, और 16-bit तथा 32-bit instructions का उपयोग करता है
- 16-bit instructions में arithmetic, branch, load/store जैसे अधिकांश सामान्य tasks शामिल हैं
- अगर सभी instructions को 16-bit मानकर simple assumption लें, तो CYPD4225 65,536 instructions store कर सकता है
- AGC के 36,864 instructions की तुलना में अधिकतम 1.78 गुना
- आधे 16-bit और आधे 32-bit वाली अधिक extreme assumption में कुल 43,690 instructions store किए जा सकते हैं
- AGC की तुलना में 1.19 गुना
- instruction density की तुलना simple नहीं है
- Cortex-M0 में arithmetic results रखने के लिए 12 general-purpose registers हैं
- AGC single accumulator का उपयोग करता है, लेकिन arithmetic result को सीधे memory location में store कर सकता है
- Cortex-M0 को अलग store instruction चाहिए
- AGC की bank switching arithmetic instructions में अधिक memory addresses को सीधे encode करने देती है
- Cortex-M0 की memory अधिक simple है और bank switching की जरूरत नहीं है
- CYPD4225 1.19~1.78 गुना अधिक instructions रख सकता है, इसलिए माना जाता है कि यह AGC के बराबर program भी accommodate कर सकता है
- अन्य USB-C chargers की program capacity AGC से कम है
- 8KB के साथ चांद तक जाना मुश्किल दिखता है
- AGC को भी शुरू में कम program storage के साथ design किया गया था, लेकिन उसे बढ़ाना पड़ा
- इसलिए अन्य charger CPUs को चांद तक जाने वाले candidates से बाहर रखा गया
RAM तुलना
- AGC 15-bit words के 2,048 units store कर सकता है
- CYPD4225 में 8KB RAM है
- byte आधार पर यह AGC से थोड़ा अधिक 2 गुना RAM रखता है
- AGC मुख्यतः 15-bit word units में calculation करता है
- Cortex-M0 पर equivalent calculation 16-bit word units में होती है
- calculation unit के आधार पर CYPD4225 में 4,096 16-bit words हैं और AGC में 2,048 15-bit words, यानी ठीक 2 गुना
Apollo 11 के पूरे computers और जरूरी chargers की संख्या
- Wikipedia के अनुसार Apollo 11 spacecraft में 4 computers थे
- 2 AGC: 1 LEM में, 1 CSM में
- 1 Saturn Launch Vehicle Digital Computer
- 1 Apollo Abort Guidance System
- ये 4 computers spacecraft के अलग-अलग हिस्सों में थे, इसलिए एक single CYPD4225 से सभी को replace करना कठिन है
- Apollo 11 design को बहुत ज्यादा न बदलने की शर्त में माना गया है कि 4 computers चाहिए
- table में दिखे Apollo 11 के हर computer की performance और memory Anker PowerPort Atom PD 2 से कम है
- AGC: 1.024MHz, 2,048 15-bit word RAM, 36,864 15-bit word program storage
- LVDC: 2.048MHz, 4,096 13-bit word RAM, 32,768 13-bit word program storage
- AGS: 1.024MHz, 2,048 18-bit word RAM, 2,048 18-bit word program storage
- मान लें कि LVDC और AGS ऐसे special instructions का उपयोग नहीं करते जिन्हें Cortex-M0 पर perform करना मुश्किल हो
- division, multiplication से ज्यादा समय ले सकती है
- Apollo 11 computers में से कोई एक single multiplication जितने समय में करता है, उतने में CYPD4225 हजारों arithmetic instructions execute कर सकता है
- केवल compute performance देखें तो 4 Anker PowerPort Atom PD 2 USB-C chargers की processing capability से चांद तक जाना संभव लगता है
बाकी constraints और debate points
- CYPD4225 space-grade certified component नहीं है
- space में यह काम करेगा या नहीं, पता नहीं
- Apollo 11 computers द्वारा उपयोग किए गए peripherals की अलग से समीक्षा नहीं की गई
- CYPD4225 में 30 GPIO signals हैं और यह UART, I2C, SPI support करता है
- AGC ने 100 peripherals support किए थे, 10, या उससे अधिक—इसके लिए अतिरिक्त verification चाहिए
- 1960s के voltage levels शायद CYPD4225 से सीधे connect करने के लिए बहुत high हों
- LVDC में वास्तव में triple-redundant logic शामिल थी
- structure ऐसा था कि logic 3 answers निकालती थी और voting mechanism winner चुनता था
- LVDC से तुलना करने के लिए कहा जा सकता है कि 3 USB-C chargers चाहिए
- यह redundancy reliability के लिए थी, और पूरे calculation में reliability को ignore किया गया है
- 3 microcontrollers और voting के लिए चौथे microcontroller से इस तरीके की नकल करें, तब भी system reliability ज्यादा नहीं होगी—ऐसा माना जाता है
- यह हिस्सा debatable हो सकता है
USB-C power delivery से आई complexity
- 2012~2013 के आसपास Structure Sensor firmware उस समय अधिकांश USB chargers में मौजूद USB charger detection का उपयोग करता था
- यह USB D+ / D- signals के बीच resistor network तरीका था, और digital communication नहीं था
- याद है कि firmware implementation आसान था
- 2020 में USB-C आम हो गया, और कई USB chargers में CPU वाला microcontroller शामिल होने लगा
- कुछ AGC से कम powerful हैं
- कुछ AGC से अधिक powerful हैं
- अधिकतर की clock speed कम से कम लगभग 10 गुना तेज है
- USB-C Power Delivery समस्याएं हल करता है और नई capabilities देता है, लेकिन complexity भी बढ़ाता है
- manufacturing process में handle करने के लिए एक और firmware और chip आ जाती है
- cable की 1 wire का उपयोग करके, USB-C charger को arbitrary charging current और voltage present करने देने वाला कोई alternative प्रस्तुत नहीं किया गया
1 टिप्पणियां
Hacker News की राय
एनालॉग कंप्यूटर को भी उसका उचित श्रेय मिलना चाहिए। Apollo 11 अंतरिक्षयान में एक और कंप्यूटर था, FCC(Flight Control Computer), जो Saturn V में रॉकेट gimbal को नियंत्रित करता था
यह 2 फुट का बेलनाकार उपकरण था और इसका वज़न लगभग 100 पाउंड था
दोनों का एक ही नाम इसलिए पड़ा क्योंकि दोनों मूल रूप से उन लोगों की जगह लेने के लिए बनाए गए थे जो यांत्रिक डेस्क कैलकुलेटर से गणना करते थे, यानी जिनका काम “computer” कहलाता था
flight control “computer”, Cray-1, AGC, Arduino, laptop, charger की तुलना में analog synthesizer module के ज़्यादा करीब है। तुलना में रखे गए डिजिटल उपकरण आपस में लगभग अलग न किए जा सकने जितने समान हैं
“Flight Control Computer(FCC) पूरी तरह analog signal processing device था, और Saturn V Switch Selector Unit द्वारा नियंत्रित relay का उपयोग करके internal redundancy और filter bank selection को प्रबंधित करता था। FCC में triple-redundant कई signal-processing paths थे, और primary channel comparison fail होने पर यह standby channel पर switch कर सकता था। flight control computer ने powered flight के दौरान thrust vector control के लिए basic proportional-derivative feedback लागू किया, और S-IVB auxiliary propulsion system(APS) control के लिए phase-plane logic भी शामिल की।”
“Powered flight में FCC ने control law $ \beta_c = a_0 H_0(s) \theta_e + a_1 H_1(s) \dot{\theta} $ लागू किया। यहाँ $ a_0 $ और $ a_1 $ proportional और derivative gain हैं, और $ H_0(s) $ attitude तथा attitude-rate channel structural bending filter का continuous-time transfer function है। Saturn V configuration में $ a_0 $ और $ a_1 $ gain किसी schedule के अनुसार नहीं बदले जाते थे, बल्कि discrete gain switch थे। Saturn V FCC ने ramp generator का उपयोग करते हुए electronic thrust vector cant function भी लागू किया, जिससे launch के 20 सेकंड बाद से S-IC engine को लगभग 2 degree बाहर की ओर vector किया जाता था ताकि thrust vector alignment mismatch sensitivity कम हो।”
https://ntrs.nasa.gov/api/citations/20200002830/downloads/20...
[1] https://imgur.com/qscoWrR
[2] https://imgur.com/HHg5ohS
किसने कहा कि महिलाएँ गणित नहीं कर सकतीं?
https://www.smithsonianmag.com/science-nature/history-human-...
“चाँद पर उतरे उपकरण बनाम आज के हार्डवेयर” जैसी सनसनीखेज़ पोस्टों से मैं थोड़ा ऊब चुका हूँ। पहले विमान में किसी भी तरह का कंप्यूटर नहीं था, इसलिए computing power ही ऐसी चीज़ों के प्रदर्शन और सफलता को तय करने वाला एकमात्र तत्व नहीं है
Apollo मिशनों का software और hardware बहुत अच्छी तरह डिज़ाइन किया गया था। हम सब जानते हैं कि तब से computing power बेहिसाब बढ़ गई है, लेकिन इसका मतलब यह नहीं कि आज वही काम आसानी से किया जा सकता है। प्रदर्शन बेहतर हो जाने से अच्छी engineering की ज़रूरत खत्म नहीं हो जाती। लेकिन कुछ लोग मानो इसी धारणा पर बहुत निर्भर लगते हैं
ज़्यादा दिलचस्प बात यह तुलना है कि जिन तकनीकों पर हम ध्यान नहीं देते वे कितनी जटिल हो चुकी हैं। कोई smart device भी नहीं, 80 के दशक की digital watch भी नहीं, बल्कि एक साधारण cable में ही Apollo 11 जितनी तकनीक है और हमें इसका एहसास भी नहीं होता
पलटकर तर्क दूँ तो, चाँद तक जाना USB device को charge करने से कठिन होने की एक वजह यह है कि spaceflight में off-the-shelf parts नहीं होते। अगर हर बार फ़ोन charge करते समय आपको USB charger को शुरू से बनाना पड़े, और USB spec भी पहली बार परिभाषित करनी पड़े, तो USB cable भी जल्द ही कठिन समस्या कहलाती
ऐसी पोस्टों से सबसे बड़ा संदेश यह नहीं है कि Apollo 11 कोई बहुत बड़ी engineering उपलब्धि नहीं थी। बल्कि यह कि हमारे रोज़मर्रा के जीवन में भी बड़े पैमाने पर निर्मित, अनदेखी रह जाने वाली विशाल engineering मौजूद है
अगर वे engineers आज के समय में आ जाएँ, तो वे नए hardware को भी आसानी से सीख लेंगे। हम अब भी वही इंसान हैं और वही मानव मस्तिष्क इस्तेमाल करते हैं
क्या “computing power ही एकमात्र निर्णायक कारक नहीं है” वाली बात फ़ोन charge करने के काम पर भी लागू नहीं होती?
अब वज़न और लागत की गणना इतनी बेहतर हो गई है कि शायद सर्किट को खुद radiation-hardened बनाने से बेहतर पूरे प्रोसेसर को shield करना सस्ता पड़ता होगा, यह सोच रहा हूँ। radiation-hardened सर्किट में off-the-shelf parts का उपयोग करना मुश्किल होता है और नई तकनीक के इस्तेमाल पर भी पाबंदी रहती है, इसलिए वे काफी महंगे होते हैं
अगर ठीक याद है, तो यह शायद उन क्षेत्रों में से एक था जिनकी Mars ड्रोन में पड़ताल की जा रही थी, लेकिन Mars की सतह पर radiation की चिंता अंतरिक्ष में उपयोग के मामले से कितनी अलग है, यह पक्का नहीं मालूम
“Flight software C/C++ में लिखा जाता है और x86 environment में चलता है। हर calculation/decision पर ‘flight string’ दो cores के परिणामों की तुलना करता है। अगर mismatch होता है, तो उस string को defective माना जाता है और वह कोई command नहीं भेजता। अगर दोनों cores एक ही response लौटाते हैं, तो string rocket के कई microcontrollers को commands भेजता है, जो engine और grid fins जैसी चीज़ों को नियंत्रित करते हैं।”
https://space.stackexchange.com/a/9446/53026
Galileo probe ने relay receiver processor की सुरक्षा के लिए tungsten plates का इस्तेमाल किया था, और Galileo plasma instrument ने tantalum shielding का उपयोग किया था। संयोग से मैं अभी radiation shielding पर पढ़ ही रहा था
लगभग हर USB chip में, अगर datasheet देखें, एक पूरी तरह programmable CPU होता है। साधारण HID या charging device के लिए यह थोड़ा मज़ाकिया लग सकता है, लेकिन basic microcontroller सस्ता पड़ता है और वास्तव में ASIC की तुलना में लागत बचाता है
“LVDC में वास्तव में triple-redundant logic है” — यह बात छोटी लग सकती है, लेकिन सिर्फ इसलिए कि किसी चीज़ की 3 copies हैं, वह triple redundancy नहीं बन जाती। redundancy के मानक से देखें तो 3 का मतलब double redundancy है, 2 का मतलब single redundancy, और 1 का मतलब redundancy नहीं
जब तक voting mechanism किसी तरह ऐसी स्थिति में भी सही उत्तर नहीं निकाल सकता जहाँ तीनों implementations अलग-अलग उत्तर दें, तब तक इसे triple redundancy कैसे कहें, समझ नहीं आता। क्या voting mechanism खुद functional रूप से चौथा implementation है?
LVDC एक serial computer है, इसलिए यह एक समय में केवल एक bit संभालता है, और इसी वजह से voting implementation ज़्यादा सरल है
LVDC एक high-redundancy design था जिसे fail नहीं होना था, जबकि AGC में redundancy नहीं थी, लेकिन उसे failure होने पर जल्दी recover करने के लिए design किया गया था
यह जानने का कोई तरीका है क्या कि आम तौर पर कंप्यूटर न माने जाने वाले छोटे devices — जैसे smartphone charger — में वास्तव में कौन-सा hardware उपयोग होता है, बिना उन्हें खोले?
क्या कोई खास datasheets या government certification documents होते हैं? रोज़मर्रा के electronics को चलाने वाले minimum-spec hardware में मेरी हमेशा दिलचस्पी रही है, इसलिए जानना चाहता हूँ कि लेखक को यह जानकारी कहाँ से मिली
1970s के पुराने keyboards में भी पूरी तरह programmable CPU होता था, आम तौर पर Intel MCS-48 का कोई variant https://en.wikipedia.org/wiki/Intel_MCS-48#Uses
आज तो यह और भी ज़्यादा सच है। keyboards, trackpads, mice, और हर USB device में पूरी तरह programmable CPU होता है
Anker PowerPort Atom PD 2 USB-C Wall Charger का CPU Apollo 11 Guidance Computer से 563 गुना तेज़ है — यह सोचकर हैरानी होती है कि अगर मेरे डिवाइस चार्ज करने वाली इस चीज़ को प्रोग्राम किया जाए, तो शायद इससे इंसानों को चाँद पर भी भेजा जा सकता था
ज़मीन पर मौजूद कई इंजीनियरों के पास कंप्यूटर थे ही नहीं, और जिन भाग्यशाली लोगों के पास थे भी, वे personal computer नहीं बल्कि mainframe थे
कंप्यूटर इतने कीमती थे कि उनका इस्तेमाल सिर्फ उन्हीं कामों में होता था जहाँ कंप्यूटर सचमुच ज़रूरी हो, खासकर जहाँ गणना की सटीकता या गति महत्वपूर्ण हो
यह दिखाता है कि जो लोग मूल रूप से slide rule से ही aerospace में बहुत अच्छे थे, उन्हें mainframe-स्तर के संसाधन दे दिए जाएँ तो क्या हो सकता है
हर landing में पायलट ने कंट्रोल संभाला था, और thruster सॉफ़्टवेयर-नियंत्रित fly-by-wire तरीके से चलते थे
https://www.quora.com/Could-the-Apollo-Guidance-Computer-hav...:
“P64. लगभग 7,000 फीट की ऊँचाई पर, जिसे ‘high gate’ कहा जाता था, कंप्यूटर अपने-आप P64 पर स्विच हो जाता था। कंप्यूटर अब भी पूरी उड़ान चला रहा था और LM को landing target की ओर ले जा रहा था। लेकिन Commander landing site को देखकर अगर उसे पसंद न आए, तो दूसरा target चुन सकता था, और कंप्यूटर trajectory बदलकर LM को वहाँ ले जाता था.
इस बिंदु पर landing पूरी करने के लिए तीन में से एक प्रोग्राम इस्तेमाल किया जाता था.
P66. सभी छह चंद्र landing में वास्तव में यही प्रोग्राम इस्तेमाल हुआ। सतह से कुछ सौ फीट ऊपर Commander कंप्यूटर को P66 पर स्विच करने का निर्देश देता था। इसे अक्सर ‘manual mode’ कहा जाता है, लेकिन वास्तव में यह पूरी तरह manual नहीं था। इस mode में Commander कंप्यूटर को बताता था कि वह क्या करना चाहता है, और कंप्यूटर उसे execute करता था। यही प्रक्रिया landing तक चलती रहती थी।
P65. यह वही automatic mode है जिसके बारे में सवाल था। अगर कंप्यूटर लगभग 150 फीट की ऊँचाई तक P64 में बना रहता, तो वह अपने-आप P65 पर चला जाता, और P65 कंप्यूटर नियंत्रण में LM को सतह तक ले जाता। समस्या यह थी कि कंप्यूटर के पास न तो बाधाएँ पहचानने का तरीका था, न ही यह जानने का कि target landing site कितनी समतल है। हर उड़ान में Commander कंप्यूटर द्वारा चुनी जा रही जगह के बजाय कोई दूसरी जगह चुनना चाहता था, इसलिए कंप्यूटर के अपने-आप P65 पर जाने से पहले ही P66 पर स्विच कर दिया जाता था। [Update: बाद की उड़ानों में P65 code को AGC से हटा दिया गया। प्रोग्रामरों को दूसरे code के लिए memory चाहिए थी, और AGC में memory इतनी सीमित थी कि एक जगह code जोड़ने के लिए दूसरी जगह से कुछ हटाना पड़ता था। तब तक यह साफ़ हो चुका था कि कोई भी crew automatic landing mode का इस्तेमाल नहीं करेगा, इसलिए P65 हटा दिया गया.]
P67. यही असली पूरी तरह manual mode है। P66 में पायलट नियंत्रण करता है, लेकिन कंप्यूटर अब भी loop में रहता है। P67 में कंप्यूटर पूरी तरह अलग हो जाता है। वह altitude और descent rate जैसे डेटा देता रहता है, लेकिन vehicle को नियंत्रित नहीं करता।”
50 साल बाद आज के datacenter के GPT-4 training cluster के बराबर की चीज़ किसी सस्ते केबल के अंदर होगी, और वह आज के पूरे cluster से 100 गुना से भी ज़्यादा तेज़ चलेगी
अगर मानें कि GPT-4 training में लगभग 100 दिन लगे, तो इसका मतलब होगा कि 50 साल बाद एक साधारण phone-class device GPT-4 स्तर के model को scratch से 1 सेकंड से कम में train कर सकेगा
मुझे नहीं पता था कि सिर्फ LVDC में ही triple modular redundancy था
यह बात काफ़ी स्पष्ट है कि “3 microcontroller और voting tally के लिए एक चौथा controller लगाकर इस voting scheme की नकल करने से system reliability नहीं बढ़ती,” क्योंकि tally करने वाला ही single point of failure बन जाता है
Tandem और Stratus दो processor के बीच mismatch को कैसे संभालते थे, यह मुझे ठीक से नहीं पता। Stratus ने OTC 68K processor की एक जोड़ी इस्तेमाल की थी, लेकिन वह voting जैसा नहीं लगता। अगर voter सिर्फ दो हों, तो mismatch resolve कैसे होगा, यह समझ नहीं आता
off-the-shelf CPU chip से voting-आधारित “reliable” processor बनाना आसान नहीं दिखता। शायद हर CPU को बाकी दो CPU के output पर नज़र रखनी होगी, और vote हारने पर खुद vote देना बंद करना होगा, लेकिन यह तो custom CPU hardware जैसा लगता है
vote की तुलना करना, CPU को vote रोकने के लिए बताना, और winning output की ओर route करना — यह बाहरी hardware आख़िरकार vote tally करने वाला ही हुआ, और वही single point of failure है। tally करने वाले तीन रखकर उन्हें एक-दूसरे पर नज़र रखने को कहा जा सकता है, लेकिन तब tally करने वालों की tally करने वाला भी चाहिए होगा। उसके नीचे तो endless turtles ही हैं
आम तौर पर reliability बढ़ाने के लिए कई CPU से voting करवाने का तरीका जोखिम भरा लगता है, क्योंकि यह complexity बढ़ाकर उल्टे reliability घटा सकता है
reliable processor बनाना शायद आख़िरकार बस एक भरोसेमंद processor बनाना ही है
अफ़सोस है कि Jonny Kim की biography वाली link टूटी हुई है। काम करने वाली link यह है: https://www.nasa.gov/people/jonny-kim/
वह शायद इतिहास के सबसे प्रभावशाली इंसानों में से एक हैं। उनके पास decorated Navy SEAL, Harvard doctor, astronaut जैसी कई उपलब्धियाँ हैं। सुनने में ऐसा लगता है जैसे किसी बच्चे ने ultimate G.I. Joe बना दिया हो