Hallo meine Lieben! Ich stell mich mal kurz vor, Bin eigentlich Maschinenbauer und Multitalent, Mitte 30 mit nem Hang zum Strom seit Kindesalter! Habe mir Autodidakt schon einiges beigebracht, repariere Platinen von alten Maschinen (80er Jahre Technik, sehr viel 74xx ICs) hab mir einiges an Messgeräten und tools die man so benötigt angeschafft, und lerne sehr schnell! Jedoch stehe ich langsam mit meinem Selbststudium an, und bräuchte Jemanden, der mir ein wenig unter die Arme greifen will daher, bin ich auf der Suche nach etwas Unterstützung in Elektrotechnik Grundlagen - Thema Speicher Adressierung SRAM / ROM Adressierung ect,.. Ich habe eine Community zum erhalt von CNC Maschinen gegründet (maho24.at) und da entstand Nachfrage nach alten Platinen. Ich habe jetzt mal ein paar der alten Platinen komplett reverse engineered, (habe hunderte Platinen aus den Maschinen geerbt) habe schemata, habe auch schon einfache Platinen selbst bestellt usw,.. (mal sehen ob die auch funktionieren) und will daran etwas umbauen :) also es soll Speicher auf das "Mainboard" kommen. allerdings nicht 32x8 sondern gleich 512x8 und da habe ich bei der Adressierung noch Fragen. ja und wie gesagt, suche ich nach jemandem der mir ein paar Fragen beantworten kann und mir vielleicht etwas weiter hilft! vielleicht findet sich jemand der mir, der sehr interessiert an dem Thema ist, ein paar Fragen beantworten mag / kann :) habe alles in Eagle gezeichnet (das is erstmal in zwei Tagen lernen musste) jetzt habe ich ein paar Ideen, aber bevor ich jetzt mit mächtig try & error weiter mache dachte ich mir, ich frage mal hier nach :) LG Florian.
Ach so, ich vergaß nach den Fragen zu fragen: Welche wären das denn?
Flo R. schrieb: > Maschinenbauer und Multitalent Bescheidenheit ist eine Zier, doch weiter kommt man ohne ihr. (ich bin übrigens der berühmte C&P-Lyriker) C Lover schrieb: > Welche wären das denn? Hab mich auch sehr bemüht, aber keine decodieren können.
C Lover schrieb: > Schwurbel, Laber, Freitag?! Impfung nicht vertragen? C Lover schrieb: > Ach so, ich vergaß nach den Fragen zu fragen: > > Welche wären das denn? das ist nicht so einfach, 1. läuft auf da kein DOS oÄ drauf 2. ich habe die Software als HEX files die normal auf 10 stk 27c010 ROMS gespeichert ist - kann ich das wenn ich die Adressen passend verteile auch auf einen Baustein mit 2MB packen?! auf dem "mainboard" ab jetzt CPU oder CPM Modul genannt, sind die Adressen 17-22 per logikbausteinen verschalten sodass diese adressen die einzlenen SRAM Bausteine (62256) adressieren, schaue ich mir größere SRAMs an finde ich manche mit 2 CS eingängen und manche mit statt 0-14 adresssen dann 0-16 oder 0-18 adressen hier wäre meine Frage wie die Matrix aufgedröselt wird bei solchen Speicher Matrixen (SRAMS) welche adressen was machen kann ich mir ja über die ganzen logik gatter zurück verfolgen, aber ich könnte ja auch einfach hergehen und statt 2 27010ern einen mit 64x8 usw verbauen,.. ich denke dass der Speicher in dem OS das auf dieser Hardware läuft direkt codiert ist,.. denn die Maschinen akzeptieren maximal 512kB auf dem CPM Modul und nochmal 2x1MB erweiterungskarten welche auch per jumper codiert werden müssen,.. ach, auch noch ne frage, ich habe teilweise DOKU aus alten Dokumenten aus den 1985ern aufgetrieben,.. und da habe ich zum Beispiel ne Memorymap gefunden 000000H - 256K Ram (32 Bit) 040000H - 256K Ram (32 Bit) 080000H - optional RAM 1280K (32 Bit) 140000H - leer usw... oder solche infos 4x 27010 + 4x 27010 F0.000 FF.FFFF 4x 27020 + 4x 27010 E8.000 FF.FFFF RAM 000000H - 03FFFFH kann mir bitte wer erklären was es mit den adressen auf sich hat? 7 Stellig?! ergibt für mich keinen Sinn! sowas in Beiträgen zu klären ist schwer, suche jemanden mit dem ich mal Skypen kann - das ist getextet viel zu aufwändig :) ausserdem würde ich gerne meine Schemata herzeigen und die DOKU die ich habe usw,... so U see - I'm NOT schwubbling around :)
:
Bearbeitet durch User
Meine Weisheiten schrieb: > Flo R. schrieb: >> Maschinenbauer und Multitalent > > Bescheidenheit ist eine Zier, doch weiter kommt man ohne ihr. > Niveau sieht nur von unten aus wie Arroganz ;) > (ich bin übrigens der berühmte C&P-Lyriker) > C&P Lyriker? ist das ein insider? > C Lover schrieb: >> Welche wären das denn? > > Hab mich auch sehr bemüht, aber keine decodieren können. im zweiten Absatz hätte man schon etwas dekodieren können, "jemand hier der auf retro-hardware 386 und Speicher Adressierung fit ist?" bin mal auf ne Antwort von euch gespannt :) mir würde es auch helfen wenn ihr mir nur sagt wo ich mich einlesen kann oder auf projekte verweisen oder ein buch nennt das es online gibt das ich schnell inhalieren kann,..
:
Bearbeitet durch User
CPM Modul ?? Soll jetzt aber nicht CP/M Modul sein? Denn das lief nur auf 8-Bittern. Obwohl es auch ein CP/M-86 gab. https://de.wikipedia.org/wiki/CP/M
nene, die karten sind nur so benannt CPM - central processing module TELEX - Teletext modul (grafikkarte + tastatur input) MEM - könnt ihr euch vermutlich denken,... usw.. das CPM Modul sieht so aus: http://www.shop.werkzeugmaschinen24.de/images/product_images/original_images/20255_01.jpg
nun du solltest mal schreiben was für eine CPU du genau hast. Ist der Datenbus wirklich 3b2Bit breit? 10 mal 27010 Eproms passt irgendwie nicht zu 32Bit Datenbus. Naturlich kann man Eproms zusammenfassen aber wieso? Willst du etwa das CPU Mainboard neu machen?
ich habe wie gesagt das Modul schon zu 95% fertig nachgezeichnet, ein paar R und C's fehlen noch, aber signale sind alle schon verbunden.
Thomas Z. schrieb: > nun du solltest mal schreiben was für eine CPU du genau hast. CPU - A80386DX-25 DMA - A82380 UPI - N80C452 der Rest ist absolut custom gemacht für diese Steuerungen - übrigens von Philips! (432/10 CNC) Ist der > Datenbus wirklich 3b2Bit breit? 10 mal 27010 Eproms passt irgendwie > nicht zu 32Bit Datenbus. Naturlich kann man Eproms zusammenfassen aber > wieso? Willst du etwa das CPU Mainboard neu machen? ja scheinbar ist der 32Bit breit, sofern ich das richtig verstehe es werden vom Datenbus 0-31 und vom Adressbus 0-31 genutzt und ja, das Ziel ist es ein eigenes CPM Modul zu machen das gleich die 2MB Speicher mit an board hat. schön wäre noch die Eproms gegen ne SD karte zu tauschen und alle Daten der Maschine statt im SRAM "dauerhaft" auf nem flash speicher zu speichern, da die maschinen bei leerer pufferbatterie alles vergessen. wenn ich das allerdings richtig verstanden habe ist das technisch nicht möglich, oder wenn nur fü jemanden der nen FPGA dafür programmiert der den alten Speicheraufbau mit den passenden adressen ect "simuliert" was ich mir abschminken kann da ich das selbst nicht umgesetzt bekomme. also ist mein erreichbares ziel, die SRAM 256k gegen 1MB zu tauschen mit passender adressverteilung und vielleicht die roms gegen größere zu tauschen, und auf SMD technik zu wechseln mit dem drawback dass man noch eine schaltung raucht umn die dann "flashen" zu können.
:
Bearbeitet durch User
Dann hast du ja schon einen Schaltplan oder? Hat das Original CPU Modul nicht einen Coprozessor eingebaut? Das Board sieht irgendwie nach VME 6HE aus. Keine Ahnung ob es das mit 386er gab. Achja 95% fertig glaub ich weniger. Die VG Leiste ist ja noch ziemlich leer. Den Inhalt der GALS/PALS kennst du? Ich würde mal sagen das ist hoffnungslos.
Thomas Z. schrieb: > Dann hast du ja schon einen Schaltplan oder? ja im schlecht gescannten original plus von der neuen version wo ich mir alle bezeichnungen der signale geklaut habe plus stunden mit dem MM :) Hat das Original CPU Modul > nicht einen Coprozessor eingebaut? jop genau gab es mit 387 und ohne :) das können wir ignorieren, da ich das so übernehme wie es ist! Das Board sieht irgendwie nach VME > 6HE aus. Keine Ahnung ob es das mit 386er gab. glaube mir - das Kartendesign ist exklusiv von philips für MAHO gemacht worden, platinen größe wurde aus dem vorgänger 432/9 und 432 übernommen, das hat seinen Ursprung in den 70ern :) > Achja 95% fertig glaub ich weniger. Die VG Leiste ist ja noch ziemlich > leer. ja die spielt zum Verständnis auch keine Rolle! > Den Inhalt der GALS/PALS kennst du? sisi konnte ich auslesen :) sind auch nur 2 Stück auf dem Board, und ich hab davon mehrere Originale und man bekommt den "Formfaktor" noch, weiters könnte man die ja auch brute forcen, das heute kein großes Thema mehr,.. gibt es sogar plug & pray hardware dafür. Ich würde mal sagen das ist > hoffnungslos. wieso sollte es das sein? ich habe das board bereits nachgezeichnet, im schlimmsten fall sind da Fehler drin, dann schnappe ich mir eines der boards, mach alle komponenten ab, laminiere es auf einen Alu Block und schleife es auf der Flachschleifmaschine weg und mach alle heiligen Zeiten Fotos davon, das ist ein 4 layer board mit VCC und GND in der mitte - dauert eben ein paar Momente länger nochmals zeichnen ect - aber bisher ergibt der Schaltplan sinn - klar würde ich zuerst eine 1:1 kopie des PCBs fertigen lassen, alle komponenten aufsetzen und schauen ob das funktioniert - und dann erst den speicherumbau angehen...
Flo R. schrieb: > 000000H - 03FFFFH > > kann mir bitte wer erklären was es mit den adressen auf sich hat? 7 > Stellig?! ergibt für mich keinen Sinn! Ich komme auf 6 Ziffern und den Buchstaben H.
Flo R. schrieb: > glaube mir - das Kartendesign ist exklusiv von philips für MAHO gemacht > worden, das kann ja sein. Trotzdem sieht das ganze nach 6HE VME Bus aus. https://de.wikipedia.org/wiki/VMEbus#/media/Datei:VMEbus.jpg Es gibt heute große FLASH und SRAM Speicher Chips. 29F010 würde deinen 27C010 entsprechen 29F040 eben 27C040. (8 Bit) Den Umbau könnte man sogar probehalber auf der Original Platine mit etwas Gluelogig fädeln. Beim SRAM bin ich nicht ganz auf dem laufenden. Ich habe aber schon 512kByte SRams von Cypress gesehen. Das SRAM sitzt auf der umgedrehten Huckepack Platine? Ach ja brute force ist bei Gals nur bei reinen Logigfunktionen sinnvoll möglich. Sobald der Clock Eingang mit den Registern zum Einsatz kommt wird das nicht mehr funktionieren.
:
Bearbeitet durch User
Hallo, Flo R schrieb: " ach, auch noch ne frage, ich habe teilweise DOKU aus alten Dokumenten aus den 1985ern aufgetrieben,.. und da habe ich zum Beispiel ne Memorymap gefunden 000000H - 256K Ram (32 Bit) 040000H - 256K Ram (32 Bit) 080000H - optional RAM 1280K (32 Bit) 140000H - leer usw... " 000000H ist eine Zahl im Hex-Format (=0) und ist die Startadresse des ersten 256KByte großen Ram-Block der 32 Bit breit ist. Die Adressierung meint aber Byte und nicht 32-Bit Wörter. Die letzte Adresse von diesem Ram-Block ist 03ffffH. 040000H ist der Start des zweiten 256kByte Rams. Also zwischen den beiden Ram-Blöcken gibt es keine Lücke. Ich hoffe das hilft ein wenig. MfG egonotto
Beitrag #6951230 wurde von einem Moderator gelöscht.
Thomas Z. schrieb: > Flo R. schrieb: >> glaube mir - das Kartendesign ist exklusiv von philips für MAHO gemacht >> worden, > > das kann ja sein. Trotzdem sieht das ganze nach 6HE VME Bus aus. > https://de.wikipedia.org/wiki/VMEbus#/media/Datei:VMEbus.jpg > Philipps nutzt nur einen der beiden DIN41612 stecker und nennt es X1000 bus die Pinbelegung ist aauch anders als bei VME > Es gibt heute große FLASH und SRAM Speicher Chips. > 29F010 würde deinen 27C010 entsprechen 29F040 eben 27C040. (8 Bit) Den > Umbau könnte man sogar probehalber auf der Original Platine mit etwas > Gluelogig fädeln. oder mit ner kleinen Platine, denn ich habe den gesamten Daten und adressbus auch auf diesen 48p Header namens X7 - da kann ich mir ne schöne aufsteckplatine machen und lasse die Sockel einfach frei! > Beim SRAM bin ich nicht ganz auf dem laufenden. Ich habe aber schon > 512kByte SRams von Cypress gesehen. Das SRAM sitzt auf der umgedrehten > Huckepack Platine? ja und darunter nochmals,. 2x 8stk HM62256LFP > > Ach ja brute force ist bei Gals nur bei reinen Logigfunktionen sinnvoll > möglich. Sobald der Clock Eingang mit den Registern zum Einsatz kommt > wird das nicht mehr funktionieren. zum glück konnte ich die ja lesen :) danke für die Info!
Manfred L. schrieb: > Hallo, > > Flo R schrieb: > " > ach, auch noch ne frage, ich habe teilweise DOKU aus alten Dokumenten > aus den 1985ern aufgetrieben,.. und da habe ich zum Beispiel ne > Memorymap gefunden > > 000000H - 256K Ram (32 Bit) > 040000H - 256K Ram (32 Bit) > 080000H - optional RAM 1280K (32 Bit) > 140000H - leer > usw... > " > 000000H ist eine Zahl im Hex-Format (=0) und ist die Startadresse des > ersten 256KByte großen Ram-Block der 32 Bit breit ist. Die Adressierung > meint aber Byte und nicht 32-Bit Wörter. Die letzte Adresse von diesem > Ram-Block ist 03ffffH. > 040000H ist der Start des zweiten 256kByte Rams. Also zwischen den > beiden Ram-Blöcken gibt es keine Lücke. > > Ich hoffe das hilft ein wenig. > > MfG > egonotto darf ich weiter fragen? Was Hex was Binär was BDC und was Dezimal ist weiß ich, ich verstehe jedoch die aufteilung noch nicht ganz wenn ich das richtig verstanden habe hat die CPU eine 32bit breite adress und daten lane und 4 btye enabler, damit hat man schienbar ein speicher gatter (nennt man das so? oder ne matrix) gebaut die daten bits sind aufgeteilt in 4x8 bit breite die adressen sind parallel von 0-14 an allen spalten verteilt und die byte enabler sowie die adressen 15-22 sind über logik gatter verschalten um daraus die einzelnen reihen der speicher anzusprechen es gibt SRAM seitig 8x 62256 am mainboard 8x 62256 als huckepack palatine und dann noch 2 mal 32x62256 also jeweils noch 1 MB pro externer Karte. und dann ist da noch ein bootprom auch 62256 der von der UPI geladen wird. ROM seitig gibt es ne Matrix von 12x 28p Sockel wo man 27010 rein stecken kann. geh bitte noch näher auf die adressen ein, und wo der unterschied zwischen 32kx8 und 512kx8 ist (außer mehr speicher) und wieso die einen a0-a14 und die anderen 0-18 adresslanes haben und wie die matrix in nem rom dann zwischen row und colum auswählt
:
Bearbeitet durch User
Flo R. schrieb: > wenn ich das richtig verstanden habe hat die CPU eine 32bit breite > adress Das muss aber nicht heissen, dass man den Adressraum vollständig ausdekodiert. Mann kann dabei auch einige oberen Adressleitungen weglassen. Dann wiederholt sich das zwar im Adressraum, aber das ist egal.
> Flo R. schrieb: [teils schwurbel] > Flo R. schrieb: >ich habe das board bereits nachgezeichnet Aha... > Flo R. schrieb: >mach alle komponenten ab, laminiere es auf einen Alu Block und >schleife es auf der Flachschleifmaschine weg Aua. "Schuster bleib bei deinen Leisten" > Flo R. schrieb: >das ist ein 4 layer board Sicher? ;) Die 2390 CPU - die vor mir liegt - hat jedenfalls keine 4 Lagen. Ich habe bisher verstanden: * Du willst also eine MAHO432 (Typ 2390) 386er CPU Karte nachbauen Was war nochmal genau Deine Frage? Du scheinst ja ansonsten schon alles (besser) zu wissen... Als Einzelstück oder kommerziell? VG, Stephan
Flo R. schrieb: > und wo der unterschied > zwischen 32kx8 und 512kx8 ist (außer mehr speicher) und wieso die einen > a0-a14 und die anderen 0-18 adresslanes haben 32*1024 = 2^15, also A0..14 am RAM 512*1024 = 2^19, also A0..18 am RAM A0..14 am RAM bedeutet bei 32-Bit Daten und 8-Bit RAMs A2..A16 am Bus.
:
Bearbeitet durch User
Flo R. schrieb: > und dann noch 2 mal 32x62256 also jeweils noch 1 MB pro externer Karte. Oder man nimmt diesen Nachbau (ich bin nicht verwandt oder verschwägert) ebay: "Speichererweiterung für Philips CNC 432 mit über 2MB MAHO Memo Mod CAD CAM" ;) Die Original "MEMOMOD" wird jedenfalls von der hier betrachteten 386er CPU UND von der ebenfalls erhältlichen 286er CPU Karte unterstützt ohne das man an der Backplane etwas ändern muss. Das hat auch was mit dem Systemdesign des Daten- und Adress-Bus zu tun. Das haben sich die Philips Ings damals schon fein ausgedacht.
Flo R. schrieb: > wenn ich das richtig verstanden habe hat die CPU eine 32bit breite > adress und daten lane und 4 btye enabler, ja der Datenbus ist 32 Bit weshalb mit 8 Bit Bausteinen immer ein vielfaches von 4 gebraucht werden. Deshalb finde ich es seltsam wenn nur 10 Eproms da sind. Ein Ramblock belegt 256kbyte 0x00 0000 .. 0x03 FFFF aufgeteilt auf 8 Chips. Bei einem 32Bit System benutzt man A0 und A1 der CPU in der Regel zur Codierung von /CS, A2..A16 (CPU) -> A0..A14 (RAM). Es sind aber auch andere Varianten denkbar. Achtung: In deiner Netzliste oben fehlen an mindestens 2 Eproms die Datenleitungen Du wirst nicht umhinkommen den Schaltplan zu posten. Bei einem 386er startet Ram immer an Adresse 0, Boot immer and der höchsten Adresse. Beim Eprom ist es etwas komplizierter: Zuerst musst du rausbekommen welche Eprom Bank welchem Adress Bereich zu geordnet ist. Dann musst du rausbekommen warum die 3. Bank nur mit 2 Eproms bestückt ist. Da ich vermute dass ein Teil der Adressdekoder in den Gals steckt sind Modifikationen ziemlich kompliziert wenn du von den Dingern keine Quellen hast.
Stephan schrieb: >> Flo R. schrieb: > [teils schwurbel] > >> Flo R. schrieb: >>ich habe das board bereits nachgezeichnet > > Aha... aha? > >> Flo R. schrieb: >>mach alle komponenten ab, laminiere es auf einen Alu Block und >>schleife es auf der Flachschleifmaschine weg > > Aua. "Schuster bleib bei deinen Leisten" > aua? nachdem ich kein röntgenrgerät habe wirtd mir nichts anderes übrig bleiben >> Flo R. schrieb: >>das ist ein 4 layer board > > Sicher? ;) Die 2390 CPU - die vor mir liegt - hat jedenfalls keine 4 > Lagen. > > Ich habe bisher verstanden: > * Du willst also eine MAHO432 (Typ 2390) 386er CPU Karte nachbauen > > Was war nochmal genau Deine Frage? > Du scheinst ja ansonsten schon alles (besser) zu wissen... > Als Einzelstück oder kommerziell? > VG, Stephan weiß ned wem dei unguter zynissmus helfen soll! du bist ein typischer nein sager, wie viele layer die CPU hat die vor dir liegt hat weiß ich nicht, aber das PCB das vor mir liegt hat 4 Layer, und ja das weiß ich weil ich es einige STunden betrachtet habe! wo weiß ich etwas besser? außer dass es kein VME Bus ist und die platine 4 layer hat?
Thomas Z. schrieb: > Da ich vermute dass ein Teil der Adressdekoder in den Gals steckt Du vermutest natürlich richtig.
Flo R. schrieb: > du bist ein typischer nein sager, Ja;) Aber nochmal: was genau willst Du denn eigentlich wissen?
Stephan schrieb: > Du vermutest natürlich richtig. Die Sache wird wohl doch etwas komplexer, wenn ich das so lese. Studenten haben solche Fälle durch schrittweises debuggen einer funktionierenden CPU gemeistert. Wenn allerdings nicht mal die HW läuft, sind mir zu viele UNbekannte im Spiel. Woher soll jetzt einer wissen, wohin z.B. ein Sprung im RAM richtig ist?
Thomas Z. schrieb: > Flo R. schrieb: >> wenn ich das richtig verstanden habe hat die CPU eine 32bit breite >> adress und daten lane und 4 btye enabler, > > ja der Datenbus ist 32 Bit weshalb mit 8 Bit Bausteinen immer ein > vielfaches von 4 gebraucht werden. Deshalb finde ich es seltsam wenn nur > 10 Eproms da sind. > Ein Ramblock belegt 256kbyte 0x00 0000 .. 0x03 FFFF aufgeteilt auf 8 > Chips. > Bei einem 32Bit System benutzt man A0 und A1 der CPU in der Regel zur > Codierung von /CS, A2..A16 (CPU) -> A0..A14 (RAM). Es sind aber auch > andere Varianten denkbar. > Achtung: In deiner Netzliste oben fehlen an mindestens 2 Eproms die > Datenleitungen > Du wirst nicht umhinkommen den Schaltplan zu posten. > > Bei einem 386er startet Ram immer an Adresse 0, Boot immer and der > höchsten Adresse. > > Beim Eprom ist es etwas komplizierter: > Zuerst musst du rausbekommen welche Eprom Bank welchem Adress Bereich zu > geordnet ist. Dann musst du rausbekommen warum die 3. Bank nur mit 2 > Eproms bestückt ist. Da ich vermute dass ein Teil der Adressdekoder in > den Gals steckt sind Modifikationen ziemlich kompliziert wenn du von den > Dingern keine Quellen hast. Erstmal DAAAANKEEEE! das hat vom Verständnis her schonmal extrem geholfen ich komm dann nochmal mit fragen dazu zurück :) > Achtung: In deiner Netzliste oben fehlen an mindestens 2 Eproms die > Datenleitungen kann auch ne darstellungssache sein, PROMS und SDRAM ist voll "verkabelt" ich kann hier auch gerne mal posten wie welcher baustein auf welcher adresse hhängt, ich werde den schaltplan aber nicht posten, das hat mich MONATE an Arbeit gekostet, und ich bin einer der ganz wenigen die originale Dokumente zu den Platinen haben, die freien zwei Sockel sind für IPLC programme die ersten 8 sind System PROMs 9 & 10 sind LANG Proms und 11&12 sind IPLC proms wie soll ich die bus & adresslanes darstellen? screenshot aus dem Schaltplan? von allen Speichern oder soll ich einfach kurz was aufmalen welches WE/CE/OE signal zu welcher Bank geht?! ich will das ja nicht von irgendwem komplett vorgekaut haben, ich finde das immer etwas blöd wenn man in ein forum geht und sich erwartet dass einem jemand sein problem löst! ich will da bis zu nem gewissen grad selbst draufkommen oder es zumindest so verstehen dass ich mir sowas auch vielleicht mit wenig hilfe selbst basteln könnte! wie ist das mit der codierung der colums and rows? 32x8k da ist die rede von words (ich nehme an ein word ist ein byte und enthält 8 bit, ich habe auch gesehen dass die matrix zB 512x512 hat,.. damit fange ich auch nichts an. ich stelle mir eine Matrix vor, auf der über X und Y ein punkt bestimmt wird es gibt bei 32k demnach 32.768 "speicherorte" in denen jeweils ein Zeichen gespeichert wird? wie ein riesen sortimentkasten der 62256 hat 9 Adress rows und 6 columns.. nutzt also 15 adressen richtig?
Flo R. schrieb: > der 62256 hat 9 Adress rows und 6 columns.. nutzt also 15 adressen > richtig? Die Matrix kann dir bei SRAMs egal sein. 256 KBit Gesamtkapazität und 8 Bits Breite ergeben 32 K Worte zu 8 Bits, also 2 hoch 15 Worte, also 15 Adressbits
oszi40 schrieb: > Stephan schrieb: >> Du vermutest natürlich richtig. > > Die Sache wird wohl doch etwas komplexer, wenn ich das so lese. > Studenten haben solche Fälle durch schrittweises debuggen einer > funktionierenden CPU gemeistert. Wenn allerdings nicht mal die HW > läuft, sind mir zu viele UNbekannte im Spiel. Woher soll jetzt einer > wissen, wohin z.B. ein Sprung im RAM richtig ist? schrittweise wird die 386 cpu das nicht mitmachen, die braucht ja was ich so gelesen habe einen gewissen mindest clock speed - du meinst wie Ben Eater das mit der 6502 gemacht hat oder? wer sagt denn dass die hardware nicht läuft? ich habe 2 voll funktionierende CPM Module und eines das etwas rumzickt, das würde ich zur Not eben opfern sofern nicht zufällig ein komplett defektes irgendwo aufsteht! habe circa 200 der Steuerungsplatinen, die meisten funktionieren, oder haben kleinere Fehler, hab damit eben schon viel experimentiert, ein paar platinen auch kaputt gemacht dafür auch schon ein paar gerettet die kaputt waren :) habe auch ein paar neuere 532er 386er cpu platinen mit originaler doku und schemata da ist auch sehr viel ähnlich, pals sind natürlich anders! aber die ganzen signalbezeichnungen konnte ich mir dort "stehlen" da die in der Doku für die Platine die ich gerne nachbauen würde leider fehlen,..
Flo R. schrieb: > (ich nehme an ein word ist ein byte und enthält 8 bit, Jein; ein Byte sind immer 8 Bit. Die WORD-Länge kommt auf den Kontext an. Die typische Definition im x86 Umfeld ist: WORD ^ 16Bit. Kann aber auch 32Bit oder mehr bedeuten...
Im Kontext von Speicherchips sind Worte die Datenbreite der einzelnen Chips. Das können auch 4 oder 16 oder wasauchimmer Bits sein. X86 Worte sind davon völlig unabhängig.
:
Bearbeitet durch User
Flo R. schrieb: > kann auch ne darstellungssache sein, PROMS und SDRAM ist voll > "verkabelt" dann ist dein Schaltplan ev. falsch. Vielleicht übersehe ich aber auch was. Vergiss die Sache mit der Matrix (das ist eine Filmreihe) und trägt nicht zum Verständnis bei. Ebenso die Sache mit den Rows und Colums. Die Sache mit den WORDS: Da du 8 Bit Speicher hast sind die Speicher Byte adressiert. Dein System ist aber 32Bit 1 WORD wird dann eben 4 Bytes beinhalten. Beispiel Ram Block: 256 kByte aber eben auch 64 KWord. Eprom Block: 512kByte 2 Blöcke ergibt 1 MByte (System) Speicher oder eben 256kWord. Adressen werden werden in Hex üblicherweise als byte Adressen geschrieben auch wenn es die in der Realität bei einer 32Bit CPU nicht gibt. Du solltest zumindestens mal die Speicher Blöcke posten + die Gal Belegung da du ja genau da auch eingreifen willst.
Das Design schaut ziemlich straight forward zu sein. Das Pal macht rein kombinatorische Logik Im Prinzip halt ein dicker Addressdekoder. Adressbus schaut nach 24 Bit aus. Dein Blatt 4 mit den Eproms solltest du in höherer Auflösumg posten da kann man nichts lesen. Ich sehe allerdings nicht wo du viel einsparen kannst. max 4 Eproms wenn du 27c020 nimmst anstelle 27010. Die letzte Bank wird ja offensichtlich anders benutzt. Diese Speicher werden vermutlich ins Ram kopiert. Beim RAM ist es nicht so viel anders, dort ist eine Reduktion auf 4 Chips möglich. Das würde die Huckepack Platine einsparen. Bei allen Änderungen wirst du das PAL änderen müssen oder die /CS und /OE Signale mit zusätzlicher Gluelogik generieren müssen. Was man in jedem Fall noch checken muss ist die Zugriffszeit der Speicher. 25Mhz ist jetzt noch nicht so schnell könnte aber im Einzelfall ein Problem werden. Die ext. Speichererweiterungen werden vermutlich wesentlich mehr Einsparpotential haben.
:
Bearbeitet durch User
Um das also all die Worte leicht verständlich zusammenzufassen: Die Wortbreite der Speicherchips beträgt 8 Bits, die von Microsoft und Intel 16 Bits und die des externen Datenbusses 32 Bits.
Thomas Z. schrieb: > Das Design schaut ziemlich straight forward zu sein. Das Pal macht rein > kombinatorische Logik Im Prinzip halt ein dicker Addressdekoder. > Adressbus schaut nach 24 Bit aus. > Dein Blatt 4 mit den Eproms solltest du in höherer Auflösumg posten da > kann man nichts lesen. Ich sehe allerdings nicht wo du viel einsparen > kannst. > max 4 Eproms wenn du 27c020 nimmst anstelle 27010. Die letzte Bank wird > ja offensichtlich anders benutzt. Diese Speicher werden vermutlich ins > Ram kopiert. Beim RAM ist es nicht so viel anders, dort ist eine > Reduktion auf 4 Chips möglich. Das würde die Huckepack Platine > einsparen. > > Bei allen Änderungen wirst du das PAL änderen müssen oder die /CS und > /OE Signale mit zusätzlicher Gluelogik generieren müssen. > > Was man in jedem Fall noch checken muss ist die Zugriffszeit der > Speicher. 25Mhz ist jetzt noch nicht so schnell könnte aber im > Einzelfall ein Problem werden. > Die ext. Speichererweiterungen werden vermutlich wesentlich mehr > Einsparpotential haben. schön wäre es eben nur nach dem PAL anzugreifen sodass ich das einfach übernehmen kann. zum Verständins, dem RAM ist der PAL ziemlich egal oder? denn da sind zwar OS seitig adressen codiert, aber solange er die adressen erreicht ists ja egal, stell mir das vl zu einfach vor, aber das der speicher am anfang ja leer ist ists ja egal wie mand die adressen verkabelt oder? beim rom geht das nicht, weil das programm sonst nicht ausgeführt werden kann, spung auf adresse xxx nur dort sind dann keine daten und ende Gelände richtig? habe da etwas gefunden, die huckepack platinen gab es mit .25MB und mit 1MB womit dann entweder 512kb oder 1536kB zur verfügung stehen, dazu wurden 628128er verwendte und die zweiadresslanes 15&16 direkt dazu auf den Sram geschalten und die adressen 18bis22 über nen 74x138 zu ner chip select logik verschalten. d.h. ich kann beim RAM mal probieren mir so ne 1MB karte zu machen, schauen ob die hardware ohne wechsel des PALs die so frisst, wenn Ja, kann ich wohl auch die unteren 8 gegen 4 628128er tauschen, damit hätte ich mal die 1,25MB an board. da ich auf der Platine eben die Huckepack platine habe die wegfallen könnte und stattdessen könnte ich entweder über die X30/X31 (huckepackplatinen header) oder über X7 ne aufsteckplatine machen mit SMD SRAMS und 2MB speicher. schön wäre es die roms gegen SMD bauteile zu wechseln, dann müsste ich nur nen jumper an VCC um den trennen zu können (oder ne kleine lötbrücke) um die mit ner TSOP Klemme einfach zu programmieren right? software wird im normalfall nie mehr getauscht! da die letzte Version die einzige ist mit der abwärtskompatiblität. auf die alfa brücken kann ich auch verzichten, die benötigt man nur für andere IPLC software - kann ich nicht einfach einen 4MB SRAM Baustein direkt an die CPU knallen? oder von mir aus 4GB komplett egal, denn es werden ja nur gewisse adressbereiche verwendet - damit ists doch von der Logik her bowil ob da noch mehr platz ist der wird einfach ignoriert oder liege ich da falsch?
:
Bearbeitet durch User
Flo R. schrieb: > dem RAM ist der PAL ziemlich egal oder Ich habe mir jetzt deinen Plan nicht angeschaut, aber normalerweise belegt jeder RAM Chip nur einen Teil des ganzen Adressraums. Deswegen muss da schon ein Address-Dekoder vorgeschaltet werden.
(prx) A. K. schrieb: > die des externen Datenbusses 32 Bits. Zusatzinfo: Bei dieser 386-CPU-Karte ist der externe (also Backplane) DatenBus auch nur 16 Bit. Thomas Z. schrieb: > Die ext. Speichererweiterungen werden vermutlich wesentlich mehr > Einsparpotential haben. Jupp (kann man an dem o.g. Nachbau erahnen); wobei die Original Philips "MEMOMOD" auch nur mit 8 Datenbits an die Backplane angebunden ist.
(prx) A. K. schrieb: > Um das also all die Worte leicht verständlich zusammenzufassen: Die > Wortbreite der Speicherchips beträgt 8 Bits, die von Microsoft und Intel > 16 Bits und die des externen Datenbusses 32 Bits. auch noch ne n00b frage, sind ein Byte nicht immer 8 bits? oder hat die wortlänge nichts mit bytes zu tun? 32.000 worte bedeutet ja 32kB oder? einfachere frage, finde den Vergleich mit dem Sortimentkasten nicht so schlecht, also ich hab nen sortimentkasten der 32tausendfünfhundertirgendwas laden hat, und in jede lade passen 8 bit also 8 mal 0 oder 1 richtig? bei den adressen haben wir beispielsweise 16 verwendete adresslanes das sind 2^16 mögliche kombinationen eine adresse ist binär oder? also 0 oder 1 richtig? also habe ich 65.536 mögliche adressen pro ROM/SRAM baustein werden derzeit 8 adresslanes genutzt - ne da verstehe ich irgendwas falsch,d as geht mathematisch auf 8 nicht auf, 2^8 ist 256, ne da passt in meiner Logik was nicht,.. aber was? zurück zum sortimentkasten, wenn der statt 32k dann 128k hat muss ich zusätzliche zwei adresslanes aufschalten, aber wie gehts sich das dann aus, und wie kommt am ende die selbe "architektur" zusammen sodass die adressen auch erreicht werden,...
Stephan schrieb: > (prx) A. K. schrieb: >> die des externen Datenbusses 32 Bits. > Zusatzinfo: Bei dieser 386-CPU-Karte ist der externe (also Backplane) > DatenBus auch nur 16 Bit. > > Thomas Z. schrieb: >> Die ext. Speichererweiterungen werden vermutlich wesentlich mehr >> Einsparpotential haben. > Jupp (kann man an dem o.g. Nachbau erahnen); wobei die Original Philips > "MEMOMOD" auch nur mit 8 Datenbits an die Backplane angebunden ist. die memo card alleine nachzubauen und zwei davon mit SMD bauteilen auf eine Platine zu knallen ist kein hexenwerk, aber wie du gerade sagst hat der X1000 Bus zwar 18 Adresslanes aber nur 8 daten lanes. und da das ja auch SRAM bausteine sind, muss man die nicht extra auf ner externen platine aufbauen, sondern kann die adresslanes und datenlanes direkt am CPU Board abgreifen (weiß uach nicht wieso niemand dazu mainboard sagt, ist eben das CPM board... )
hier noch ein paar Infos mit denen ihr bestimmt mehr anfangt als ich,..
Das CPU Board ist offensichtlich dafür ausgelegt mit unterschiedlichen Eproms bestückt zu werden. Die Jumper sowie die zusätzlichen Adressleitungen an Pin1, Pin30 und Pin31 deuten darauf hin. Da 8Bit Speicher verwendet werden sind immer 4 Chips notwendig damit man auf den 32Bit Bus kommt. Es gibt auch 16Bit Eproms (selten) dann wären im besten Fall nur 2 Chips notwendig. Die Verschaltung ist dann aber eine andere. Die 2 zusätzlichen Speicherblöcke werden 16 Bit breit angesteuert diese können also nur als ReadOnly Datenspeicher eingeblendet werden. Nie als exec. Herkömmliche Flashs gibts in DIL und PLCC. Zusätzlich sind auch Flatpac Varianten erhältlich (auch in 16 Bit). Ich sehe aber keinen Vorteil außer Platz sowas zu verwenden. Deine CPU Platine kannst du ja nicht kleiner machen. Im Gegenteil wenn du SMD Flashs verwendest wird die Programmierung aufwendiger. Auch beim Ram sind immer 4 Chips notwendig. Die Speichermap wird immer durch das PAL gemacht. Das muss also zur Bestückung passen. Ein CY62158 SRAM hat 1 MByte. 4 Stück davon wären also 4 MByte, selbst wenn du nur 2 MByte davon nutzen kannst sind es immer noch nur 4 Chips.
Die Anzahl der richtigen Chips garantiert noch nicht, dass der Bus sauber läuft. Da wären noch Lastfaktor der CPU und Signallaufzeiten ...
Wenn ich mich so an meine CPU-Reparatur-Z80 Zeiten erinnere, so würde ich jetzt, nach dem Aufbau erst mal ein paar eigene ganz einfache Tests laufen lassen wie RAM mit 00 od. FF füllen, um schrittweise die Gesundheit der HW zu testen. Oft waren da schon Hänger beim RAM-Test od. Prüfzahl-Test der EPROMs (auch durch Zugriffszeiten). Bei etwas gründlicheren Tests mit Zufallszahlen fielen dann schon die ersten Adressierungsfehler auf. WENN das alles funktionieren sollte, kannst Du langsam die eigentliche SW beobachten.
Aus den alten CS-Leitungen für die 4 Parallelen ROMs der '32Bit Banks', (Zwei CS vorhanden??) einfach neue Adressleitungen machen! Und diese an A17 A18... legen. Und die neuen CS der großen ROMs per und-Gattern (oder Dioden) mit einschalten. Das bringt aber effektiv keine Vergrößerung des Speicherplatzes. Damit kann man bloß 8 kleine ROMs auf vier große 'umbauen', ohne dass sich das 'mapping' verschiebt oder du Code ändern müsstest. Das weißt du aber bestimmt selber. Sorry falls es unpassend ist. Gruß tsx
:
Bearbeitet durch User
oszi40 schrieb: > Wenn ich mich so an meine CPU-Reparatur-Z80 Zeiten erinnere, so würde > ich jetzt, nach dem Aufbau erst mal ein paar eigene ganz einfache Tests > laufen lassen wie RAM mit 00 od. FF füllen, um schrittweise die > Gesundheit der HW zu testen. Oft waren da schon Hänger beim RAM-Test od. > Prüfzahl-Test der EPROMs (auch durch Zugriffszeiten). Bei etwas > gründlicheren Tests mit Zufallszahlen fielen dann schon die ersten > Adressierungsfehler auf. WENN das alles funktionieren sollte, kannst Du > langsam die eigentliche SW beobachten. danke für die Hinweise :) ich habe mich jetzt ein bisschen eingelesen, ich habe für die ROMs eine FLASH alternative gefunden die "angeblich" plug & pray passt, damit kann ich die roms mal ersetzen / ist sogar billiger als die rom bausteine da werde ich am adressbus nichts angreifen! dann habe ich mich gestern eigentlich den ganzen Tag mit meinem PAL20L beschäftigt weil dazu bedenken geäussert wurden. ich habe das Glück dass mein PAL20L8 8x input und 14 mal output hat und nicht registerd sondern active low combinatorial ist. ich hab das Ding ja schonmal ausgelesen und daten erhalten, dabei hat mir jemand geholfen ohne dass ich wirklich wusste was da vor sich geht ect. ich bin jetzt mal hergegangen und habe die Signale zum PAL angeschaut, und was aus dem raus kommt, und dann auch noch in meiner Doku ein paar Hinweise gefunden (siehe Bilder) dann habe ich den PAL20L mal aufgespannt und mit ne chip tester ausgelesen bzw mal durchgecheckt was da raus kommt,.. hab jetzt ein Excelfile mit 16.387 Zeilen das beschreibt wie der PAL sich verhält. und ein bin file das leer ist,.. habe den schonmal mit nem EPROM Programmer ausgelesen, und habe Daten rausbekommen. ich finde zum brute forcen und zum auslesen bzw schreiben von den PALs kaum etwas an Informationen, meine Frage, da der PAL20L8 nicht registered ist kann man den ja auslesen oder? kann mir bitte jemand da weiter helfen, wie sind PALs zu beschreiben, zum auslesen ect,... finde online nicht wirklich was unter PAL (außer natürlich dem TV Format) LG
:
Bearbeitet durch User
Flo R. schrieb: > ich habe das Glück dass mein PAL20L8 8x input und 14 mal output das ist falsch ein 20L8 hat max 20 Inputs und max 8 Outputs Bei dir sind 19..22 definitiv Outputs. ADMxx sind input WCS0 und WCS1 sind Outputs. Bei anderen Sig. muss man in den Schaltplan schauen
Thomas Z. schrieb: > Flo R. schrieb: >> ich habe das Glück dass mein PAL20L8 8x input und 14 mal output > > das ist falsch ein 20L8 hat max 20 Inputs und max 8 Outputs > > Bei dir sind 19..22 definitiv Outputs. ADMxx sind input > WCS0 und WCS1 sind Outputs. Bei anderen Sig. muss man in den Schaltplan > schauen ahh ja! vertauscht, 14in und 8 out! meine ich ja! mit Glück meinte ich dass meine Hardware max 8 outputs loggen kann :)
:
Bearbeitet durch User
Ich hab mal einen Entwurf für 4*27c020 gezeichnet der mit dem Original Pal funktionieren sollte. Die 27C010 Inhalte werden dann einfach in die obere bzw untere Hälfte eines 27c020 kopiert. Das kann man auch mit Flashbausteinen machen. Dazu analog könnte man wohl auch mit den letzten beiden Eproms verfahren, das hab ich mir jetzt aber nicht genau angeschaut.
Thomas Z. schrieb: > Ich hab mal einen Entwurf für 4*27c020 gezeichnet der mit dem Original > Pal funktionieren sollte. Die 27C010 Inhalte werden dann einfach in die > obere bzw untere Hälfte eines 27c020 kopiert. Das kann man auch mit > Flashbausteinen machen. > > Dazu analog könnte man wohl auch mit den letzten beiden Eproms > verfahren, das hab ich mir jetzt aber nicht genau angeschaut. ahhhmmm.. wow! DANKE! damit hab ich nicht gerechnet! danke danke danke! ich bin noch an dem PAL dran, da werde ich andere Hardware bracuhen, ich bestell jetzt mal 10 Stück zum rumprobieren,... //- falls das jemanden interessiert -// registered GALs und PALs lassen sich ANGEBLICH trotz fuse und leseschutz über voltage manipulation irgendwie dazu bringen doch gelesen werden zu können, dazu soll wohl ein "löschbefehl" ausgeführt werden (Vo sind 12 oder 18V) und dann wird die Spannung nur an der Stelle erhöht an der die interne Löschroutine des GALs die Fuse löscht. hab das selbst nicht versucht, aber gefunden, dachte wenn hier schon ein paar keywords um PALs/GALs gefunden werden schreibe ich das dazu zum Glück betrifft mich das erstmal nicht!...
wie schon weiter oben geschrieben lässt sich das auch relativ einfach am Original testen. Es sind ja nur wenige Signale die man an die Eproms dran fädeln muss. VPP kann man lt. Datenblatt auch offen lassen. Da durch das Gatter die Zugriffszeit etwas länger wird sollten etwas schnellere Bausteine genommen werden. 120ns anstelle der original 150ns sollten es tun.
Thomas Z. schrieb: > wie schon weiter oben geschrieben lässt sich das auch relativ einfach am > Original testen. Es sind ja nur wenige Signale die man an die Eproms > dran fädeln muss. VPP kann man lt. Datenblatt auch offen lassen. > > Da durch das Gatter die Zugriffszeit etwas länger wird sollten etwas > schnellere Bausteine genommen werden. 120ns anstelle der original 150ns > sollten es tun. vielen Dank nochmals,. ich mache mir da eine aufsteckplatine für den X7 connector, dort findet man ja alles was man benötigt! beim Ram habe ich mir schon selbst was zusammen gebastelt,.. zur Zeit suche ich noch nach nem Programmer der den PAL20L8 lesen kann und irgendwas ist schief mit dem TBP28L22N den ich da habe, der lässt sich nicht lesen,.. hmmmmm habe den Top3000 Eprom Programmer und den TL866 II plus beide wollen irgendwie nicht...
TBP28L22N ist doch ein (schnelles) PROM, gibt es die Bausteine noch zu kaufen? http://dexterslab2013.blogspot.com/2017/02/reading-unsupported-proms-using-minipro.html vielleicht hilft das. Der Galep kann sowohl die PALs als auch die TI Proms
Thomas Z. schrieb: > TBP28L22N ist doch ein (schnelles) PROM, gibt es die Bausteine noch zu > kaufen? > > http://dexterslab2013.blogspot.com/2017/02/reading-unsupported-proms-using-minipro.html > vielleicht hilft das. > > Der Galep kann sowohl die PALs als auch die TI Proms einen Galep-III habe ich da :) brauch ich nur noch nen 32bit rechner und software
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.