Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Ku pamięci... zapomnianych pamięci, cz. 2.

Urgon 23 Jan 2023 09:15 1074 5
  • Ku pamięci... zapomnianych pamięci, cz. 2.
    Zainspirowany podcastami o historii komputerów (podcast #19 - część I oraz część II) postanowiłem przybliżyć Wam dokładniej zapomniane i nieużywane już technologie. Na początek tego małego cyklu będzie o pamięci. Moim zdaniem jej rozwój dyktował rozwój i produkcję komputerów, a nie na odwrót. Miała też wpływ na sposób programowania komputerów i dostęp do danych wynikowych. Temat jest bogaty, a technologii pamięci powstało wiele. Przez to wyszedł mi tak długi artykuł, że nawet mnie męczy jego czytanie. Dlatego podzieliłem go na trzy części. W pierwszej części przedstawiłem wczesne technologie, z których tylko jedna przetrwała dłużej. Druga część przedstawi technologie niegdyś bardzo popularne, teraz już w większości zapomniane. Trzecia część zaś przedstawi technologie pamięci masowej, które w większości dotrwały do dzisiaj, oraz moje przeczucia na temat technologii, które mogą odejść do lamusa. Tak że zapraszam do czytania.


    Toksyczna pojemność - rtęciowa, akustyczna linia opóźniająca

    Linia opóźniająca opiera się o zjawisko przewodnictwa akustycznego w różnych materiałach. Dźwięk w powietrzu rozchodzi się z prędkością 343m/s. W wodzie morskiej, ze względu na jej większą gęstość i mniejszą sprężystość, z prędkością 1533m/s. W rtęci zaś rozchodzi się z prędkością 1450m/s. Prędkość ta zależna jest też od temperatury nośnika, co ma istotne znaczenie dla pamięci.

    Weźmy rurę o długości 1,45m. Na jednym końcu umocujmy głośnik, na drugim mikrofon, między nimi dajmy wzmacniacz. Wypełnijmy rurę rtęcią. Teraz podajemy krótki impuls na głośnik. Głośnik się deformuje generując falę zmiennego ciśnienia. Fala ta podróżuje przez rtęć, tracąc po drodze energię, dociera do mikrofonu, ten zmienia ją na impuls elektryczny, ten jest wzmacniany i trafia ponownie na głośnik. Cały ten proces się powtarza i ten jeden impuls będzie powtarzał się z częstotliwością ~1kHz, bo pokona rurę z rtęcią w ciągu jednej milisekundy. By pozbyć się tego impulsu trzeba w odpowiednim momencie odłączyć mikrofon, głośnik lub wzmacniacz. Z wyjścia wzmacniacza można też przekazać ten impuls dalej, do innych układów.

    Tak działa właśnie rtęciowa, akustyczna linia opóźniająca. Zamiast standardowych głośników i mikrofonów używało się przetworników piezoelektrycznych, które udoskonalono na potrzeby sonarów. Pojemność pamięci zależy od opóźnień wprowadzanych przez przetworniki i wzmacniacz, oraz od długości rury. Dla zwiększenia pojemności można łączyć wiele rur równolegle. Dla komputera UNIVAC 1 opracowano pamięć rtęciową, gdzie rolę rur pełniły specjalnie wyprofilowane kanały. UNIVAC 1 posiadał 1000 słów pamięci o długości 12 bitów zorganizowane w 100 rejestrów o pojemności 10 słów. By taka pamięć sprawnie działała, musi być utrzymywana w stałej temperaturze, by czas podróży fal akustycznych przez linię był też stały i zsynchronizowany z cyklem pracy procesora.

    Ku pamięci... zapomnianych pamięci, cz. 2.


    Ze względu na sposób działania procesor nie może w dowolnej chwili odczytać dowolnego słowa z pamięci. Pamięć była szeregowa i sekwencyjna, co oznaczało, że czas dostępu był powolny - procesor musiał "czekać" aż pojawi się wybrane słowo w sekwencji. Stosowano więc znaczniki startu sekwencji i liczono czas aż do trafienia na właściwą sekwencję.

    Linie opóźniające, lecz już nie rtęciowe, znalazły zastosowanie w innych dziedzinach elektroniki: od efektów gitarowych po "pamięć" używaną w telewizorach analogowych do dekodowania informacji o kolorze. Wróciła też na pewien czas w świecie komputerów, ale w nieco innej formie.


    Dużo koronkowej roboty, czyli pamięć ferrytowa

    Pamięć ferrytowa "rządziła" jako podstawowa pamięć operacyjna od 1955 do 1975 roku. Była dużo bardziej bezpieczna od rtęciowej linii opóźniającej, zajmowała mniej miejsca, oferowała dostęp do każdej lokalizacji w dowolnym cyklu, i była przy tym szybsza. Proces produkcji był jednak żmudny, wymagał cierpliwości i precyzji. Z tego powodu do jej wykonywania zatrudniano kobiety.

    Ku pamięci... zapomnianych pamięci, cz. 2.


    Do budowy pamięci ferrytowej stosuje się specjalny rodzaj toroidalnych rdzeni ferrytowych, które zachowują stan namagnesowania. Do tego jeszcze są bardzo małe, często mniej niż milimetr średnicy. Rdzenie nanizane są na siatkę drutów, na ich skrzyżowaniach. Obrócone są na zmianę w lewo i w prawo, by ze sobą nie interferować za bardzo. Dodatkowo przez każdy rdzeń przechodzi jeden (w starszych wykonaniach dwa) drut wspólny. Pełni on funkcję detekcji i inhibicji pola magnetycznego. W starszych pamięciach funkcje te były rozdzielone. Jedna taka siatka, zwana płytą (plane) stanowiła zwykle tylko jeden bit danych, przez co komputer miał tyle płyt pamięci, ile miał bitów. Płyty tworzyły banki pamięci, a komputer mógł mieć więcej, niż jeden bank.

    Pamięć ferrytowa jest pamięcią nieulotną - zanik zasilania jej nie kasuje. Jednocześnie odczyt komórki pamięci kasuje ją wymuszając potrzebę ponownego zapisu. Proces odczytu przebiega następująco:
    1. Wybrane linie rzędu i kolumny są polaryzowane. To wybiera jeden rdzeń na płycie.
    2. Pole magnetyczne obu przewodów na skrzyżowaniu jest wystarczająco duże, by wyindukować pole magnetyczne w rdzeniu potrzebne do jego przemagnesowania:
    a. jeśli rdzeń miał zapisany stan 1, zostaje przemagnesowany na stan 0, po upływie niewielkiego czasu przemagnesowanie wyindukuje impuls w przewodzie detekcyjnym;
    b. jeśli rdzeń miał zapisany stan 0, jego stan się nie zmienia. W przewodzie nie pojawia się żaden impuls.
    3. Sygnał z linii detekcyjnej jest wzmacniany i podawany na wyjście pamięci.
    Proces ten jest wykonywany dla całego banku pamięci, by odczytać pełne słowo w jednym cyklu zegarowym. Opóźnienie między wybraniem rdzenia, a pojawieniem się sygnału na linii detekcyjnej określa minimalny czas odczytu.
    Po odczycie następuje zapis:
    1. Linie wybierające określony rdzeń są polaryzowane w przeciwnym kierunku, niż do odczytu.
    2. To powoduje, że na ich skrzyżowaniu indukuje się wystarczające pole, by przemagnesować rdzeń:
    a. jeśli chcemy zapisać 0, przez linię inhibitującą jest przepuszczany taki prąd, by uniemożliwić przemagnesowanie rdzenia;
    b. by zapisać 1 wystarczy linii inhibitującej nie polaryzować, rdzeń zostanie i tak przemagnesowany.
    Cykl zapisu jest wykonywany po cyklu odczytu przez układ kontrolny pamięci.

    Ciekawą odmianą tej pamięci była pamięć słowa. Tym razem przez rdzenie przechodziły dwa przewody poziome i jeden pionowy. Jedna linia służyła do odczytu, druga do zapisu, a przewody pionowe odczytywały całe słowo. Do odczytu przesyłało się pełen prąd przez linię odczytu, co powodowało przemagnesowanie rdzeni i indukcję prądu w przewodach pionowych tam, gdzie rdzenie były namagnesowane do stanu 1. To kasowało też całe słowo. W celu zapisu połowę potrzebnego prądu podawało się w przeciwnym kierunku przez linię zapisu, drugą połowę zaś na poszczególne linie pionowe - tam gdzie suma prądów była wystarczająca, rdzeń się przemagnesowywał do stanu 1. Takie pamięci używane były jako podręczne rejestry i pamięci pomocnicze. Zaletą był fakt, że w jednym cyklu można było wyczyścić dowolną liczbę wartości, albo zaprogramować jedną wartość do wielu komórek.

    Dzięki dużej prędkości działania (1-1,66MHz typowo dla odczytu i zapisu) pamięci ferrytowe stały się głównymi pamięciami RAM komputerów. Problemem było to, że komputery nie miały tej pamięci zbyt wiele: od 1k do 32k słów w typowych konfiguracjach. By pokonać problem ograniczonej pojemności często do komputera dołączone były inne typy pamięci masowej, o której będzie poniżej.


    ROM zaplatany

    Pochodną pamięci ferrytowej była pamięć linowa (core rope). W tej pamięci układało się rząd rdzeni, przez wszystkie przechodził przewód odczytu, do tego też przechodziły przewody adresowe, ale nie przez wszystkie rdzenie. Sposób zaplatania linii adresowych był pomyślany tak, by spolaryzowanie kombinacji przewodów odpowiadających danemu adresowi namagnesowało wszystkie rdzenie z wyjątkiem jednego. Przez rdzenie przechodzi też zestaw przewodów detekcyjnych, zwanych przewodami danych. Gdy przewód przechodzi przez rdzeń, jest to stan 1 dla tego przewodu pod tym adresem rdzenia. Gdy omija go, jest to stan zero. Jeden rdzeń może mieć wiele przewodów danych, co drastycznie zwiększa gęstość danych. Odczyt polega na wybraniu jednego rdzenia, który nie będzie spolaryzowany przewodami adresowymi, przepuszczeniu impulsu prądu w przeciwnym kierunku przez przewód odczytu. Tylko w tym jednym rdzeniu wyindukuje się prąd, który spolaryzuje w odpowiednim kierunku przewody danych przechodzące przez rdzeń.

    NASA wykorzystywało ten typ pamięci we wczesnych misjach marsjańskich i w misjach Apollo jako pamięć programu. Komputer nawigacyjny Apollo był maszyną 15-bitową z dodatkowym bitem parzystości. Jako pamięci RAM używał dwóch kilosłów pamięci ferrytowej. Firmware i programy misji zapisane były w sześciu modułach pamięci linowej, Każdy moduł zawierał 512 rdzeni, każdy rdzeń przechowywał 12 słów programu za pomocą 192 przewodów danych. Pamięć w module ułożona była w dwóch warstwach po 256 rdzeni, elektronicznie jednak zorganizowana była w cztery banki po 128 rdzeni. Daje to nam 1536 słów na bank, 6144 słowa na moduł i 36864 słowa pamięci, czyli 72 kilobajty współczesnej pamięci ośmiobitowej. Dwa kilosłowa pamięci RAM zaś to 4kB pamięci ośmiobitowej. Poza samymi rdzeniami i przewodami każdy moduł zawierał też niezbędne obwody do selekcji adresu oparte o diody i rezystory. Sama pamięć stanowiła tylko połowę objętości modułu.

    Jak łatwo się domyślić, produkcja pamięci linowej nie była prosta. Przez każdy rdzeń może przechodzić ponad dwieście niezwykle cienkich przewodów. Praca ta była często wykonywana ręcznie. Najpierw program był konwertowany na postać binarną i testowany w emulatorze pamięci linowej. Potem przygotowywano taśmę perforowaną zawierającą ten kod binarny. Na stanowisku "tkackim" kobiety najpierw przeplatały linie adresowe, czytania (i resetu), a potem skomplikowany wzór linii inhibitujących/adresu. Na końcu każdy przewód detekcyjny/danych był przeplatany przez rdzenie, przy czym specjalna maszyna czytała taśmę i wskazywała lokację, gdzie przewód ma przejść przez rdzeń. Po przepleceniu 192 przewodów danych pamięć była ostrożnie składana na pół, przewody lutowane do terminali, a całość trafiała do kolejnej maszyny, która używając tej samej taśmy przeprowadzała automatyczny test pamięci - porównywano wartości zadane z wartościami odczytanymi z pamięci. W razie pomyłki cały moduł trzeba robić od nowa, bo zawiera około 800 metrów drutów nawojowych. Każda misja Apollo wymagała nowego zestawu modułów z nowymi programami, i to nie jednego, a kilkunastu (dla komputerów w kapsułach, symulatorach i jako części zapasowe).


    Kręcenie drutem - magnetostrykcyjna linia opóźniająca

    Jedną z wad rtęciowej linii opóźniającej była duża wrażliwość na zakłócenia mechaniczne. Rozwiązaniem tego problemu jest zamiana fali akustycznej kompresującej nośnik na inny typ deformacji mechanicznej. W przypadku magnetostrykcyjnej linii opóźniającej tym tym innym typem była siła skręcająca stalowy drut. Kilka zwojów takiego drutu było luźno umocowane do podstawy. Do obu końców przyczepiano pasek materiału o właściwościach magnetostrykcyjnych. Typowo był to nikiel. Paski znajdowały się wewnątrz elektromagnesów. Pole elektromagnetyczne rozciągało lub naprężało taśmę, jej deformacja zaś skręcała koniec drutu. Ta fala skręcająca podróżowała wzdłuż drutu do drugiego przetwornika, gdzie deformacja taśmy wytwarzała słabe pole magnetyczne wykrywane przez drugi magnes. Ten sygnał był wzmacniany i podawany na pierwszy przetwornik, analogicznie jak w rtęciowej linii akustycznej.

    Pojemność magnetostrykcyjnej linii opóźniającej była wprost proporcjonalna do ilości użytego drutu. Ponieważ drut ten może być zwinięty w zwoje, łatwo było go upakować. Pamięć zamontowana na płycie o wymiarach 30 x 30 cm mogła pomieścić 1 kilobit danych, a czas dostępu wynosił typowo 500µs. Pamięci tego typu spotykało się w terminalach komputerowych, gdzie szybki czas dostępu nie był wymagany, oraz we wczesnych kalkulatorach biurkowych oraz kalkulatorach programowalnych, jak Olivetti Programma 101. Ze względu na relatywnie niski koszt, przyzwoitą pojemność i prostotę konstrukcji pamięci magnetostrykcyjne stosowane były aż do lat 80tych.


    "Masz fajne bąbelki" - pamięć bąbelkowa

    Jest to ciekawa forma pamięci RAM, która łączy zachowania linii opóźniających i pamięci ferrytowej oferując przy tym gęstość porównywalną do wczesnych dysków twardych i brak ruchomych części. Odniosła sukces w niszowych zastosowaniach, gdzie potrzebna jest spora pojemność, nieulotność danych i właśnie brak części ruchomych. W końcu została wyparta przez pamięci krzemowe (SRAM z podtrzymaniem bateryjnym i Flash).

    Pamięć bąbelkowa składa się ze specjalnej folii magnetycznej oraz dwóch kolumn przetworników, czy też głowic. Głowica zapisująca na jednym końcu folii wytwarza "bąbelki" pola magnetycznego w materiale - każdy nowy "bąbelek" przesuwa poprzedni w stronę drugiego końca folii i głowicy czytającej. Było to możliwe dzięki umieszczeniu nośnika z materiałem magnetycznym w zespole cewek, które kontrolowały przesuwanie się "bąbelków". Odczyt zachodzi analogicznie do odczytu linii opóźniającej, ale dane są zapisane trwale, jak w pamięci ferrytowej. Sposób działania i konieczność "odświeżania" przy odczycie ograniczały prędkość pracy tej pamięci - mimo to i tak bywała szybsza niż typowe pamięci dyskowe. Dla przykładu pamięć Intel 7110 oferowała 1 megabit pojemności i prędkość 100kbps - to wszystko w opakowaniu o wymiarach około 4 x 4 cm. Dość szybko gęstość zapisu dysków twardych przegoniła tę pamięć, co w połączeniu z wysokimi kosztami produkcji wykluczyło ją z powszechnego użytku już na starcie. Dlatego znalazła zastosowanie tylko w niszowych aplikacjach, gdzie wolny dostęp nie był wadą, a brak części ruchomych był zaletą.


    Zapisane w krzemie - ROM, EPROM, EEPROM

    Pamięci krzemowe pojawiły się wraz z rozwojem układów logicznych i mikroprocesorów czy mikrokontrolerów. Pamięci te są wciąż używane, choć w wielu sytuacjach wyparła je pamięć Flash. Pamięć ROM programowana jest fizycznie, w trakcie produkcji - odpowiednio spreparowana maska w czasie produkcji układu tworzy strukturę połączeń, w której zakodowane są informacje. Producenci używają tej metody by trwale zakodować firmware lub mikrokod układu nie dając przy tym nie wyprowadzając żadnych linii adresowych czy danych na zewnątrz. Czasem pamięci ROM produkowane były jako oddzielne układy, i zawierały na przykład gotowe tablice znaków/czcionki dla drukarek lub terminali komputerowych.

    Pamięci EPROM dominowały rynek komputerowy lat 70tych i 80tych jako nośnik oprogramowania systemowego i mikrokodu. Ich charakterystyczną cechą jest kwarcowe okienko ukazujące całą strukturę układu, często zabezpieczone nieprzeźroczystą naklejką. Pamięci te były programowane elektrycznie używając specjalnego programatora i napięcia wyższego od napięcia pracy. Kasowanie polegało na naświetleniu struktury źródłem światła UV, stąd naklejka ochronna. Pamięci te spotyka się głównie w urządzeniach z lat 80tych i 90tych. Bywają też używane jako pamięć jednorazowego programowania w mikrokontrolerach. Wtedy kwarcowego okienka nie ma, a pamięć raz zaprogramowana nie może być wyczyszczona i użyta ponownie. Pamięci EEPROM są programowane i kasowane elektronicznie, występuje zarówno jako oddzielne układy, jak i jako część mikrokontrolerów. Starsze modele wymagały wyższego napięcia do programowania i kasowania. Obecnie używana jako pamięć danych/ustawień i wypierana przez pamięć Flash.

    Na pamięciach ROM, EPROM i EEPROM wykonywało się często dekodery rozkazów i układy sekwencyjne dla komputerów typu mainframe i minikomputerów. Łącząc linie adresowe wielu układów równolegle możemy zamienić jeden adres o szerokości 8-16 bitów na kombinację stanów niskich i wysokich dla dziesiątek, jak nie setek wyjść. Tak też te pamięci były wykorzystywane. Warto wspomnieć też o pastylkach Dallas/iButton, gdzie każda ma indywidualny adres zapisany jako 64-bitowa liczba w pamięci ROM programowanej w trakcie produkcji. 8 bitów tego adresu zabiera numer identyfikujący rodzinę, 8 bitów suma kontrolna CRC, co daje nam 48 bitów indywidualnych adresów, czyli 281474976710656 dostępnych kombinacji. Pastylki Dallas/iButton znalazły zastosowanie jako elektroniczne klucze do zamków albo immobilizerów samochodowych - być może niektórzy z Was spotkali się z nimi.


    To tyle w tej części. Zapraszam też do części poprzedniej i następnej, a także do komentowania. Może spotkaliście się z którąś z form pamięci tu przedstawionych? A może chcielibyście zobaczyć praktyczny model linii opóźniającej albo pamięci ferrytowej?

    Cool? Ranking DIY
    About Author
    Urgon
    Editor
    Offline 
    Has specialization in: projektowanie pcb, tłumaczenie, mikrokontrolery PIC
    Urgon wrote 5852 posts with rating 1807, helped 195 times. Live in city Garwolin. Been with us since 2008 year.
  • #2
    stachu_l
    Level 33  
    Laboratoriom minikomputerów MERA 300 Wydział ETI.
    MERA 300 - procesor Momik 8b - miał pamięć 8k słów 8 bitowych na rdzeniach ferrytowych. Byliśmy ostatnim rocznikiem który pracował na tym sprzęcie, na każde stanowisko przypadało kilka (3-4) grup dwuosobowych ćwiczących w różnych terminach. Na początku semestru gdy program był wprowadzany z klawiszy bitowych a kontrolowany na lampkach umówiliśmy się na oddzielne obszary pamięci dla każdej grupy. Ciekawe doświadczenie - wracasz na zajęcie po tygodniu, przekręcasz kluczyk (jak od Syrenki), wprowadzasz adres i odczytujesz kolejne komórki pamięci - Oooo nasz program z zeszłego tygodnia ciągle tu jest :-).
    Jak programy były coraz większe to dostaliśmy taki egzekutor na taśmie perforowanej którym można było wydziurkować na taśmie dowolny obszar pamięci a także wczytać taki obszar więc nie trzeba było już liczyć na szczęście, że nikt nie zajedzie "naszego" obszaru pamięci tylko ilość taśmy perforowanej rosła.
    Gdzieś mam także taki płat pamięci ferrytowej ale nie wiem z jakiej maszyny.

    W kącie tego laboratorium stała sobie pamięć bębnowa ale nie była już do niczego podłączona więc tylko widziałem i dotykałem.

    Pamięć z liniami opóźniającymi miały maszyny ZAM. Zdjęcia takiej pamięci widziałem w książeczce poświęconej maszynie ZAM a napisanej chyba przez pana Bogdana Misia. Jak znajdę to potwierdzę.

    ROM szyty na rdzeniach to jest chyba w kalkulatorze takim biurkowym z lampami NIXIE - wydaje mi się, że to był kalkulator Iskra ale muszę wykopać i jeszcze raz rozkręcić.
  • #3
    acctr
    Level 26  
    W temacie EPROM można dodać, że jednorazowo programowana pamięć oznacza się jako OTP. Jeżeli są jakieś okazje tanich układów należy zwracać na to uwagę.
    Np. EPROMy 27Cxxx mają te same oznaczenia dla OTP i kasowalnych przez UV. Ale z kolei PICe OTP mają literkę C zamiast F, np. PIC16C84.
    Można się rozczarować kupując wersję mikrokontrolera, który można zaprogramować tylko raz.

    Pośród rodzajów pamięci półprzewodnikowych warta wzmianki jest pamięć wielopoziomowa Nonvolatile Multilevel Storage Array, służąca do przechowywania sygnału analogowego. Opatentowana przez Winbond, stosowana w układach serii ISD do nagrywania mowy, o czasach zapisu do kilku minut.
    Technologia już raczej zapomniana, wyparta przez tanie jak barszcz chińskie moduły mp3 z kartą miniSD jako storage.
    Co prawda, układy typu ISD2560/120 itd są jeszcze do kupienia, ale są to już ceny przedmiotów "kolekcjonerskich", czyli rzędu 100 zł i więcej.
  • #5
    Dariusz Goliński
    Level 22  
    I procesory motoroli programowane za pomocą chyba ST6_Realizer.
    Raz coś na tym pisałem. Fajny symulator programu był bo samego procka tylko raz można było zaprogramować bo potem już się nie dało.

    Pamiętam jak wszyscy zazdrościliśmy koledze który sam zbudował zx-spectrum na tekturce. Rom zbudował na kościach ram i 2 tygodnie ją programował za pomocą przełącznika ( który generował kolejne cykle zegarowe ) i płaskiej baterii 4,5V.
    Nawet nie wiecie jak gość się zagotował jak mu kumpel coś tam poruszył w tej konstrukcji z drutu i papieru i na chwilę odłączył tą baterię. Mieliśmy zakaz wstępu do jego mieszkania na 2 miechy :-).
  • #6
    fotomh-s
    Level 23  
    Urgon wrote:
    Linie opóźniające, lecz już nie rtęciowe, znalazły zastosowanie w innych dziedzinach elektroniki: od efektów gitarowych po "pamięć" używaną w telewizorach analogowych do dekodowania informacji o kolorze. Wróciła też na pewien czas w świecie komputerów, ale w nieco innej formie.

    We wczesnych kalkulatorach programowalnych stosowano linię opóźniającą w formie zwoju drutu.

    Urgon wrote:
    Firmware i programy misji zapisane były w sześciu modułach pamięci linowej,

    Generalnie to AGC posiadał prymitywny system operacyjny (wspierał timesharing oraz wywłaszczenie procesu zajmującego zbyt wiele czasu maszynowego), a więc to było coś więcej niż tylko firmware.
    Co ciekawe wszystko to odbywało się programowo, AGC nie posiadał dedykowanego hardware do tych celów tak jak np. IBM System 360 (stosowany w RTCC). ZTCP to program misji mógł także być wykonywany z pamięci RAM w późniejszych wersjach software. ZTCP stosowano to do deorbitacji LEM, gdzie prosty program do tego celu był przesyłany łączem danych i ładowny do pamięci RAM. Nie zapominajmy także o reszcie komputerów (AGS oraz LVDC).

    Urgon wrote:
    Każda misja Apollo wymagała nowego zestawu modułów z nowymi programami

    Nie do końca prawda. Np. misje serii J (15,16,17) wszystkie korzystały z takiego samego softu Luminary 1E rev 210 dla LM.