Retrodatorprojekt - TU55 bandstation till USB
-
- Inlägg: 742
- Blev medlem: 27 maj 2011, 20:27:12
- Ort: Älvsjö
- Kontakt:
Retrodatorprojekt - TU55 bandstation till USB
Nej. jag har inte lagt ned PDP-11/04 projektet. Det går bara väldigt långsamt just nu. Och så har det dykt upp andra saker. Som t ex den PDP-12 som vi fick från Olle i slutet av förra året. Tack för den Olle!
Det går inte så fort med att få i ordning den. Har bara börjat med kontrollera av nätdelen till den.
Men med maskinen fick vi en hel mängd magnetband av typen DECtape (anders_bzn tog hand om de som var mer PDP-9 orienterade). Tyvärr kommer det nog ta en stund att kunna få igång den så att den kan läsa banden och det vore intressant att se vad de innehåller innan dess. Varför inte bygga en controller för TU55 så man kan koppla in den via USB till en modern dator?
Projektet är redan påbörjat och jag tänkte försöka dokumentera det och varför inte dela med mig här medan jag håller på.
En TU55 ser ut så här:
Och så här bakifrån:
När bandet löper över huvudet så drar en av motorerna med fullt moment och den andra motorn håller i mot med ett lägre moment. Det finns ingen capstan eller liknande så bandhastigheten kommer variera beroende på om det är i början av bandet eller slutet. Men det gör ingenting eftersom man spelar in data med en separat klocksignal. Totalt har man 10 spår, men de är ihop parade elektriskt i läshuvudet så man har fem kanaler effektivt. Av dessa är som sagt en klock-signal, en kallas mark-track, de tre andra är data-spår. Mark-track anger t ex block-start eller block-slut etc.
TU55 är precis som ett skivminne, random access. Man formaterar bandet och kan sedan adressera enskilda block. Ett DECtape band innehåller 849036 enskilda 3 bitars ord. Dvs ca 318 kByte rå data kapacitet innan man räknar bort blockstruktur etc.
TU55 bandstationen använder röda R-moduler och därmed så har man logiknivåerna 0V och -3V så det går inte att koppla in direkt mot modern hårdvara utan nivåskiftning. Dessutom ska den ha 110V (intressant att notera att en TU55 kan antingen vara 50Hz eller 60Hz - motorerna är olika).
En TU55 är en ganska enkel konstruktion. Det mesta av logiken ligger i controllern. TC01 och TC08 för PDP-8, TC02 för PDP-9/15, TC11 för PDP-11.
Här är schemat:
Signalen från läs/skriv huvudet går direkt till controllern. Controllern styr driven genom att välja en drive select signal och därefter aktivera GO/STOP och FWD/REW. Av outgrundlig anledning har man två komplementära signaler för GO/STOP och FWD/REW. Troligen för att TU55 ursprungligen var gjord för att styras med reläer (i LINC -LaboratoryINstrumentComputer) och dessa då motsvarar en växlande kontakt.
Planen är att bygga en liten AtMega baserad controller som styr GO/STOP och FWD/REW signalerna och därefter läser ut data från huvudet via en detektorkrets. Sedan föra över rådata från bandet till en värddator via USB för att göra efterbehandling där.
Det går inte så fort med att få i ordning den. Har bara börjat med kontrollera av nätdelen till den.
Men med maskinen fick vi en hel mängd magnetband av typen DECtape (anders_bzn tog hand om de som var mer PDP-9 orienterade). Tyvärr kommer det nog ta en stund att kunna få igång den så att den kan läsa banden och det vore intressant att se vad de innehåller innan dess. Varför inte bygga en controller för TU55 så man kan koppla in den via USB till en modern dator?
Projektet är redan påbörjat och jag tänkte försöka dokumentera det och varför inte dela med mig här medan jag håller på.
En TU55 ser ut så här:
Och så här bakifrån:
När bandet löper över huvudet så drar en av motorerna med fullt moment och den andra motorn håller i mot med ett lägre moment. Det finns ingen capstan eller liknande så bandhastigheten kommer variera beroende på om det är i början av bandet eller slutet. Men det gör ingenting eftersom man spelar in data med en separat klocksignal. Totalt har man 10 spår, men de är ihop parade elektriskt i läshuvudet så man har fem kanaler effektivt. Av dessa är som sagt en klock-signal, en kallas mark-track, de tre andra är data-spår. Mark-track anger t ex block-start eller block-slut etc.
TU55 är precis som ett skivminne, random access. Man formaterar bandet och kan sedan adressera enskilda block. Ett DECtape band innehåller 849036 enskilda 3 bitars ord. Dvs ca 318 kByte rå data kapacitet innan man räknar bort blockstruktur etc.
TU55 bandstationen använder röda R-moduler och därmed så har man logiknivåerna 0V och -3V så det går inte att koppla in direkt mot modern hårdvara utan nivåskiftning. Dessutom ska den ha 110V (intressant att notera att en TU55 kan antingen vara 50Hz eller 60Hz - motorerna är olika).
En TU55 är en ganska enkel konstruktion. Det mesta av logiken ligger i controllern. TC01 och TC08 för PDP-8, TC02 för PDP-9/15, TC11 för PDP-11.
Här är schemat:
Signalen från läs/skriv huvudet går direkt till controllern. Controllern styr driven genom att välja en drive select signal och därefter aktivera GO/STOP och FWD/REW. Av outgrundlig anledning har man två komplementära signaler för GO/STOP och FWD/REW. Troligen för att TU55 ursprungligen var gjord för att styras med reläer (i LINC -LaboratoryINstrumentComputer) och dessa då motsvarar en växlande kontakt.
Planen är att bygga en liten AtMega baserad controller som styr GO/STOP och FWD/REW signalerna och därefter läser ut data från huvudet via en detektorkrets. Sedan föra över rådata från bandet till en värddator via USB för att göra efterbehandling där.
- anders_bzn
- Inlägg: 5462
- Blev medlem: 17 december 2008, 19:22:18
- Ort: Kävlinge
- Kontakt:
Re: Retrodatorprojekt - TU55 bandstation till USB
Ja. Jag har ju också band att läsa av och ett antal TU55:or. Så detta är jag intresserad av. Fast det vet Mattis redan!
Jag fick ju en PDP-9 vid samma tillfälle (Tack Olle!). Tillsammans med en många både band och remsor. Jag började med remsorna: http://elektronikforumet.com/forum/view ... =2&t=75663
Vi får se om det blir något av detta eftersom jag fått ett annat erbjudande när det kommer till remsläsare.
Jag fick ju en PDP-9 vid samma tillfälle (Tack Olle!). Tillsammans med en många både band och remsor. Jag började med remsorna: http://elektronikforumet.com/forum/view ... =2&t=75663
Vi får se om det blir något av detta eftersom jag fått ett annat erbjudande när det kommer till remsläsare.
Re: Retrodatorprojekt - TU55 bandstation till USB
Vilken bithastighet per kanal används? och krävs orginaldelarna för att demodulera korrekt? Den digitala signalen lär kunna hanteras av en MCU rimligtvis lätt.
-
- Inlägg: 742
- Blev medlem: 27 maj 2011, 20:27:12
- Ort: Älvsjö
- Kontakt:
Re: Retrodatorprojekt - TU55 bandstation till USB
Roligt att du frågar. Som av en händelse så råkar jag har förberett just det (som matlagningsprogram i TV...)qx5 skrev:Vilken bithastighet per kanal används? och krävs orginaldelarna för att demodulera korrekt? Den digitala signalen lär kunna hanteras av en MCU rimligtvis lätt.
Det här det kort i TC01/TC02 som ansluter till läs/skrivhuvudet:
Och detta är det som sitter i PDP-12 / TC11:
Inga märkligheter som synes. Jag gjorde en egen variant med hjälp av några TL074:
(Nej, jag är inte särskilt stolt över utseendet...)
Men den gav det här resultatet:
Den övre signalen är timing-track (klockan) och den nedre är mark-track.Som synes är periodtiden 35 us. Så 4 bitar data (med mark track) med ungefär 30 kHz alltså, eller ungefär 15kbyte / sekund. Inte speciellt svårt för en MCU att klara av. Man kan läsa ut en sekvens 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 1 ur oscilloskåp-bilden vilket är sekvensen på mark track som indikerar data på data-spåren.
Om jag digitaliserar signalen och matar in den i min logikanalysator så hittar jag den här lite mer annorlunda sekvensen:
Kod: Markera allt
1 1 1 0 0 0 1 1 1 0 1 1 1 1 1 0
1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 0
1 0 0 1 1 0 0 1 0 1 0 1 0 1 0 1
0 1 0 1 0 1 0 1 0 1 1 0 0 1 1 0
1 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0
1 0 0 0 0 0 1 0 0 0 1 1 1 0 0 0
Kod: Markera allt
111000 DATA MARK
111011 PRE-FINAL MARK
111011 FINAL MARK
111011 PCC MARK
111011 REVERSE LOCK MARK
101001 GUARD MARK
100101 REVERSE BLOCK MARK
010101 INTERBLOCK SYNC MARK
010101 INTERBLOCK SYNC MARK
010110 FORWARD BLOCK MARK
011010 REVERSE GUARD MARK
001000 LOCK MARK
001000 REVERSE PCC MARK
001000 REVERSE FINAL MARK
001000 REVERSE PRE-FINAL MARK
111000 DATA MARK
Det jag funderar på nu är om jag ska använda en AtMega328 med simpel serieport där överföringshastigheten sätts till 230400 bps och ett FT232 chip eller om jag ska köra med en AtMega32u4. Det finns ju en tråd här i projekt-delen där man använder AtMega32u4 för ISA kort. Ska nog titta på det.
-
- Inlägg: 742
- Blev medlem: 27 maj 2011, 20:27:12
- Ort: Älvsjö
- Kontakt:
Re: Retrodatorprojekt - TU55 bandstation till USB
Exakt. Jag tror vi kommer ha en hel del att göra med att dels rita schema och kretskort och dels koda och debugga MCU och host mjukvara tillsammans!anders_bzn skrev:Ja. Jag har ju också band att läsa av och ett antal TU55:or. Så detta är jag intresserad av. Fast det vet Mattis redan!
Re: Retrodatorprojekt - TU55 bandstation till USB
Ännu en kul tråd från retrodatorgänget
Jag är väl bara inte nog klipsk, men vad definierar en etta och en nolla i oscilloskopbilden?
Jag är väl bara inte nog klipsk, men vad definierar en etta och en nolla i oscilloskopbilden?
-
- Inlägg: 742
- Blev medlem: 27 maj 2011, 20:27:12
- Ort: Älvsjö
- Kontakt:
Re: Retrodatorprojekt - TU55 bandstation till USB
Det är en högst relevant fråga. Grejen är den att det kan välja om jag förstår det hela rätt. Bandet kan läsas i båda riktningarna och det gör att det som är nolla åt ena hållet blir etta åt andra hållet eftersom kodningen på bandet är manchester. Man har alltid två flux reversals per bit. Klockspåret har sekvensen 0, 1, 0, 1, 0, 1, 0 etc.Oskar skrev:Jag är väl bara inte nog klipsk, men vad definierar en etta och en nolla i oscilloskopbilden?
När jag läste av oscilloskåp-bilden bestämde jag bara uppåtgående flank på klockan samplar data. Sedan tyckte jag att hög nivå är mer 1 än låg nivå...
- anders_bzn
- Inlägg: 5462
- Blev medlem: 17 december 2008, 19:22:18
- Ort: Kävlinge
- Kontakt:
Re: Retrodatorprojekt - TU55 bandstation till USB
Var har du mätt? Är det signalen efter tonhuvudet? Hur ser din koppling ut?
Re: Retrodatorprojekt - TU55 bandstation till USB
Intressant projekt! Hur mycket kan man lagra effektivt på ett band, efter formatering etc? Vad är det för årsmodell?
- anders_bzn
- Inlägg: 5462
- Blev medlem: 17 december 2008, 19:22:18
- Ort: Kävlinge
- Kontakt:
Re: Retrodatorprojekt - TU55 bandstation till USB
Om man räknar om lite så kommer man till ~250 kilobyte. Men det beror på om man sparade 12 eller 18-bitars ord.
144K * 18 bitar
184K * 12 bitar
Tidsera, grovt räknat andra hälften 1960-talet.
Intressant är att alla spår är dubblerade. Banden har också mylar på båda sidorna, med magnetskiktet i mitten. Detta gör banden slitstarka och robusta. De ska klara att man gör ett 1/4" stort hål igenom bandet utan att man ska få läsfel.
Många av dessa banden går fortfarande att läsa felfritt.
144K * 18 bitar
184K * 12 bitar
Tidsera, grovt räknat andra hälften 1960-talet.
Intressant är att alla spår är dubblerade. Banden har också mylar på båda sidorna, med magnetskiktet i mitten. Detta gör banden slitstarka och robusta. De ska klara att man gör ett 1/4" stort hål igenom bandet utan att man ska få läsfel.
Många av dessa banden går fortfarande att läsa felfritt.
-
- Inlägg: 742
- Blev medlem: 27 maj 2011, 20:27:12
- Ort: Älvsjö
- Kontakt:
Re: Retrodatorprojekt - TU55 bandstation till USB
Det är signalen efter op-amparna.anders_bzn skrev:Var har du mätt? Är det signalen efter tonhuvudet? Hur ser din koppling ut?
Jag har två TL074 op-ampar efter varandra. Den första förstärker 100 gånger. Den andra ca 10 gånger. Ungefär som andra schemat ovan.
-
- Inlägg: 742
- Blev medlem: 27 maj 2011, 20:27:12
- Ort: Älvsjö
- Kontakt:
Re: Retrodatorprojekt - TU55 bandstation till USB
Efter att ha presenterat oscilloskop-bilden i ett annat forum så kom det viss (befogad) kritik att kretsen är en ren amplitud diskriminator. Därför är den mer känslig för amplitudvariationer och drop-outs som kan uppstå på gamla band. Tittar man i schemor för andra vanliga bandstationer så sitter de ett differentierande steg efter den första förstärkaren. Tanken är att man ska hitta toppen på signalen istället för där signalen gå igenom noll.
Fast varför hade man inte gjort det i original kretsen? För att vara säker simulerade jag original kretsen:
Insignalen approximerar jag med en triangelvåg. Och som jag misstänkte så är original-kretsen lika bra eller lika dålig som min. Jag misstänker att anledningen till att man inte använde differentiering var att man hade redundanta läs/skrivhuvuden. De kommer kompensera för drop-outs och variationer i amplitud.
Jag tänkte att eftersom tanken är att läsa gamla band så kanske det var en bra idé att använda en differentierande krets. Jag letade lite grann på nätet och fann detta patent från 1979 som en person på DEC hade fått. Den kretsen verkade lovande.
Jag körde en simulering på den kretsen med:
Simulering ger att kretsen borde kunna fungera. Triangelvågen är insignalen och fyrkantsignalen är utsignal. Peaken på triangelvågen är ganska när flankerna på fyrkantvågen. Men hur blev det i verkligheten med brus och annat elände (hittade inget sätt att simulera brus) ? Den gamla kretsen var för skrotig för att bygga vidare på så det behövdes helt nya tag:
Som gav denna signal ut för klock-signalen:
Den övre signalen är efter den första 100 gånger förstärkaren och den nedre efter peak-detektorn. Peaken på den övre signalen ligger ganska nära zero-crossing på den nedre signalen.
Nu är vi i realtid med projektet så att säga. Nu måste jag bygga tre läskretsar till, digitalisera signalen och trycka in den in MCUn. Därefter bygga nivåkonvertering för signalerna som ska styra bandstationen FWD/REW, GO/STOP etc.
Fast varför hade man inte gjort det i original kretsen? För att vara säker simulerade jag original kretsen:
Insignalen approximerar jag med en triangelvåg. Och som jag misstänkte så är original-kretsen lika bra eller lika dålig som min. Jag misstänker att anledningen till att man inte använde differentiering var att man hade redundanta läs/skrivhuvuden. De kommer kompensera för drop-outs och variationer i amplitud.
Jag tänkte att eftersom tanken är att läsa gamla band så kanske det var en bra idé att använda en differentierande krets. Jag letade lite grann på nätet och fann detta patent från 1979 som en person på DEC hade fått. Den kretsen verkade lovande.
Jag körde en simulering på den kretsen med:
Simulering ger att kretsen borde kunna fungera. Triangelvågen är insignalen och fyrkantsignalen är utsignal. Peaken på triangelvågen är ganska när flankerna på fyrkantvågen. Men hur blev det i verkligheten med brus och annat elände (hittade inget sätt att simulera brus) ? Den gamla kretsen var för skrotig för att bygga vidare på så det behövdes helt nya tag:
Som gav denna signal ut för klock-signalen:
Den övre signalen är efter den första 100 gånger förstärkaren och den nedre efter peak-detektorn. Peaken på den övre signalen ligger ganska nära zero-crossing på den nedre signalen.
Nu är vi i realtid med projektet så att säga. Nu måste jag bygga tre läskretsar till, digitalisera signalen och trycka in den in MCUn. Därefter bygga nivåkonvertering för signalerna som ska styra bandstationen FWD/REW, GO/STOP etc.
- anders_bzn
- Inlägg: 5462
- Blev medlem: 17 december 2008, 19:22:18
- Ort: Kävlinge
- Kontakt:
Re: Retrodatorprojekt - TU55 bandstation till USB
Vad har du för amplitud på signalen på kanal 2 egentligen? Stämmer det med 200mV/ruta eller har du en 10x prob?
EDIT: Jag läste fel. om någon hann läsa mitt yra förlag.
EDIT: Jag läste fel. om någon hann läsa mitt yra förlag.
-
- EF Sponsor
- Inlägg: 920
- Blev medlem: 26 maj 2014, 12:54:35
- Ort: Karlskoga
Re: Retrodatorprojekt - TU55 bandstation till USB
Vad simulerar du i? Den första ser inte ut som LT-spice, men det gör andra schemat mer.
I LT-spice kan man köra med en wav-fil som input. Förmodligen går det i andra spice-varianter också. Nu har du ju redan byggt oc testat på hårdvara, men annars kanske du kunde tagit en dump från oscillloskopet och kört som insignal i simulatorn...
Jag gjorde det nyligen för jag var nyfiken på mina gamla band från TI-99 som ligger i en skrivbordslåda. Jag digitaliserade ett band och byggde input-kretsen från schemat i spice som jag körde den igenom. Kunde konstatera att för att läsa banden idag skulle ett mostånd i en integrator behöva bytas.... Återkommer med en projekt-tråd, men det får vänta tills jag gått i pension. Om 20 år...
I LT-spice kan man köra med en wav-fil som input. Förmodligen går det i andra spice-varianter också. Nu har du ju redan byggt oc testat på hårdvara, men annars kanske du kunde tagit en dump från oscillloskopet och kört som insignal i simulatorn...
Jag gjorde det nyligen för jag var nyfiken på mina gamla band från TI-99 som ligger i en skrivbordslåda. Jag digitaliserade ett band och byggde input-kretsen från schemat i spice som jag körde den igenom. Kunde konstatera att för att läsa banden idag skulle ett mostånd i en integrator behöva bytas.... Återkommer med en projekt-tråd, men det får vänta tills jag gått i pension. Om 20 år...
- anders_bzn
- Inlägg: 5462
- Blev medlem: 17 december 2008, 19:22:18
- Ort: Kävlinge
- Kontakt:
Re: Retrodatorprojekt - TU55 bandstation till USB
Jag tror jag fattar nu, du har tre OP i din koppling. En förstärkare på hundra gånger innan kretsen du simulerade. Jag sitter och lurar på om man inte skulle kunna bygga detta men en OP med enkel matningspänning.