Een bijzonder RAM geheugen (Toestel of techniek)

door loek @, Exloo (Drenthe), 18-12-2014, 21:53 (3410 dagen geleden)
Gewijzigd door loek, 18-12-2014, 22:37

Hallo forum lezer,
Hierbij een verhaal over een RAM geheugen uit de perioden rond 1972. Het gaat hier over een draadgeheugen ook wel “Delay line memory” genoemd. Dit geheugen komt uit factureringsmachine van Olivetti.
[image]
Korte omschrijving van de werking:
Het geheugen werkt op het principe dat geluidsgolven een bepaalde looptijd hebben.In dit geval wordt een geluidsgolf opgewekt aan de ene zijde van de draad en aan de andere zijde wordt deze geluidsgolf weer waargenomen.
De draad is van nikkelijzer en bestaat uit 17 windingen met een diameter van 15 cm.De lengte is dan ongeveer 8 meter. De voortplantingssnelheid van geluid is bij nikkelijzer ongeveer 2950 meter per seconde.Dus de totale looptijd is ongeveer 3 mS. De geluidsgolven worden opgewekt door het begin van de draad te torderen. Dit wordt uitgevoerd met een nikkel bandje dat via een piëzo-element(of spoel) bewogen wordt. Aan de andere zijde wordt via een zelfde constructie de geluidgolf weer terug gelezen in een piëzo-element.
[image]
Hieronder zie je een detail van het nikkel bandje met piëzo-element
[image]
Meestal werden er geluidsgolven gemaakt met een tijdsduur van 0,5 uS. Er kunnen dan in totaal 3000/0,5= 6000 pulsen verstuurd worden. Uitgaande van een byte zou je dus 750 karakters kunnen bewaren in het delay-line geheugen. Als het karakter nog niet gebruikt was dan werd het direct weer ingelezen in het delay line geheugen. Dus alles wat de gebruiker van de factureermachine aan het intypen was werd opgeslagen in dit geheugen. En bij verwerking van deze gegevens werden op het juiste moment de gegevens uit het geheugen gehaald. Het geheel lijkt dus verdacht veel op onze huidige RAM geheugens eigenlijk is er niets nieuws!!! Nu was de uitdaging of ik het geheugen weer operationeel kon krijgen voor demonstraties.De gehele unit bestond uit een “analoog deel/print” waarmee de piëzo-elementen gelezen en geschreven werden.
[image]
Het tweede deel bestond uit een aantal IC die de controle besturing uit voerde . Helaas was het zeer lastig om de printen los te halen om zo de sporen te kunnen volgen. Bij los halen was er veel gevaar dat de geheugendraad beschadigd zou worden. Totaal waren er 14 aansluitpunten.
[image]
De IC's op het besturingsdeel hadden indicaties zoals T102 en T109, etc. en natuurlijk had ik daar weer geen documentatie van. Gelukkig heb ik deze informatie gekregen van een forumlezer (Jac Janssen).Door deze documentatie kon je al snel herkennen dat het ging om TTL IC’s. Hierdoor waren de voedingspunten (en spanning 5V ) op de connector bekend dus nu nog maar 12 pennen uitzoeken. Op het “analoge deel” zat een IC type 72710 dit is de 710 comperator volgens de specificatie heeft deze twee voedingsspanningen +12 en -6Volt. Via een ohmmeter kon je deze twee punten niet rechtstreeks terug vinden op de connector. Er zat wat weerstand tussen en wat later blijkt ook nog een stabilisator schakeling voor de -6Volt. Maar duidelijk was wel welke twee punten op de connector hiervoor bedoeld waren. Dus weer twee bekend en nog maar 10 pennen uitzoeken. Dankzij de gegevens van de T…. IC’s kon je wel bepalen wat bij de overgebleven connectorpennen de uitgang en ingangen waren. Het resultaat was:
5 waren ingang en 5 waren uitgang. Waarvan bij de uitgang er 2*2 pennen parallel stonden dus eigenlijk waren er 3 uitgangen. Hieronder zie je de eerste proef opstelling.
[image]
Als eerste de 5 volt aangesloten. Op de 2*2 pennen die parallel stonden stond een blokgolf van 2MHz . Ten opzichte van erkaar in tegen fase. Op het contol board zat een kristal met een paar transistoren. Via een aantal IC werd dit signaal gedeeld naar 2MHz. Hierna heb ik voorzichtig de +(12?) en (6V?) spanningen aangesloten met als referentie de spanningen op het IC710. Bij aanbieden van +15 en -15volt waren deze spanningen correct op het 710 IC.
Bij nog wat nader meten beredeneren ging het er steeds meer op lijken dat de twee uitgangen nodig waren voor in/uit klokken van data. En dat deze nu dus even niet nodig waren. Er blijft dus eigenlijk één uitgang over. Hierop heb ik een scoop aangesloten. Omdat de overige 5 nog onbekende ingangspennen waren was het verantwoord om deze naar aarde of +5 aan te sluiten en te kijken wat er gebeurde op de scoop.
A)Bij één pen kon je de 2MHz uitschakelen. Dus nog 4 onbekende over.
B)Één pen deed helemaal niets , Dus nog 3 onbekende over.
C)Bij één pen gingen de uitgangen van de oscillatoren weer aan . Dus nog 2 onbekende over
D)Door nu veel te rommelen met een pulsgenerator, etc. kwam ik er achter dat met één van de twee nog onbekende aansluitingen het geheugen op scherp kon zetten.
E)Op de laatste onbekende werden de pulsen doorgegeven naar de draad. En deze zag je dan op de scoop terug komen. Ook werd duidelijk dat de pen bij stap A eigenlijk een reset pen was.
Dus samenvattend waren nu bekend:
Pen voor reset,
Pen voor geheugen op lezen zetten
Pen voor pulsen in geheugen inlezen
Pen om pulsen uit geheugen te lezen.
Twee pennen voor +5 Volt en aarde
Twee pennen voor +15 en -15V
Voor de demonstratie heb ik niet het gehele control gedeelte, zoals dit gezeten heeft in de originele factureer machine, nagebouwd. Om de factureermachine na te bootsen gebruik ik een microprocessor. Deze zal verder geen invloed hebben op het moment dat de pulsen rond in het geheugen draaien. De processor telt wel hoeveel pulsen er ronddraaien. Voor de demonstratie is gekozen voor pulsbreedte van 5uS en niet voor 0,5 uS omdat dit wat minder kritisch is.
Je kiest eerst via de microprocessor hoeveel pulsen je wilt versturen (max 99) zie op de print met drie knoppen.
[image]
Daarna druk je op de verzendknop en de pulsen worden naar het geheugen gestuurd. Hierna gaat via een eenvoudige TTL schakeling (met 7408,7432 en 7404) de uitgang van het geheugen naar de ingang.
[image]
Er zit dus dan niets meer tussen dat de pulsen hersteld/verwijder of telt.
Dezelfde microprocessor die eerst de pulsen verstuurd heeft gaat nu op de uitgang van het geheugen kijken hoeveel pulsen er binnen komen. Dus eerst zoeken naar het “gat” en dan tellen, weer zoeken, etc. Dit resultaat zie je op het display (zonder toetsen).
Op de onderstaande foto zie je een voorbeeld van 4 pulsen. Ook zie je dat de pulstrein om de (ongeveer) 3 ms terug komt. Dit is de totale looptijd van het geheugen.
[image]
[image]
Op de volgende foto zie je een voorbeeld voor 24 pulsen.
[image]
[image]
[image]
Ik ga het geheel nu nog netjes op een plank monteren met een plexiglas plaat over het geheugen. Bij een volgende gelegenheid kan ik dan hiermee een demonstratie geven. Ik hoop dat jullie het een leuk onderwerp gevonden hebben.
Met vriendelijke groet,
Loek


Complete draad:

 RSS Feed van berichtenreeks

powered by my little forum