Was für eine Art von ROM?

OP #4370986
Lesenswert?

Hallo erstmal,

Ich bin momentan damit beschäftigt eine Art "Mikrocontroller"  aus ICs 
der 74LSxx Reihe zu bauen. Der Mikrocontroller hat einen 8 bit Bus. 
Momentan plane ich die Control Matrix, bei der ich jedoch nich weiter 
komme.
In dieser wollte ich eine ROM verbauen der eine Größe von mindestens 32 
x 8 bit hat. Außerdem sollte diese mit den TTL-ICs benutzt werden 
können.

Da ich mich kaum bzw. gar nicht mit ROMs auskenne, wollte ich euch 
fragen, welche ich denn verwenden kann.

Grüße, Steffen
#4370997
Lesenswert?

Hallo,

ein ROM ist normalerweise vom Hersteller maskenprogrammiert. Wo willst 
Du Deinen ROM herstellen lassen?

Ansonsten z.B. stilecht einen 74S188 PROM mit 32x8Bit.
Den kann man zur Not mit DIP-Schaltern und einem Taster programmieren, 
allerdings gibt es die nur noch zu Sammlerpreisen.

32x8 kann man auch noch als Diodenmatrix verdrahten, ansonsten einen 
alten Eprom, EEROM, Flash o.ä. nehmen und die verbleibenden xx kB eben 
ignorieren.

Gruß aus Berlin
Michael
#4371297
Lesenswert?

Hallo,

mehr als Orientierung: 29EE010 oder ähnliche, Du brauchst ja einen guten 
alten wegen der Daten- und Adressleitungen.

Du kannst vermutlich auch einen mit 20MHz getackteten AVR nehmen, muß 
nur genug Pins haben. Zugriffszeit wäre da vermutlich auch um die 
100-150ns.

Die Flashs hat man früher gern aus alten Mainboards gezupft und 
aufgehoben...

Gruß aus Berlin
Michael
Gast #4371316
Lesenswert?

Steffen S. schrieb:

> In dieser wollte ich eine ROM verbauen der eine Größe von mindestens 32
> x 8 bit hat. Außerdem sollte diese mit den TTL-ICs benutzt werden
> können.

Nimm ein normales EPROM (27C256 oder so). Das hat zwar 32768 x 8 bit, 
aber die oberen Adressleitungen musst Du ja nicht benutzen. So ein 
Baustein passt auch von Stil und Alter zu Deinem TTL-Demonstrator.

Das kennst Du?
http://3.14.by/en/read/homemade-cpus
http://www.mycpu.eu/
OP #4371436
Lesenswert?

Ich habe wie schon gesagt keine Erfahrung mit ROMs, außer das was man 
halt dazu im Internet findet. Ich habe weder ein Schreibgerät noch einen 
Schaltkreis, wo ich diese verbaut habe.

Da mein "Mikrocontroller" noch in der Entwicklung ist und auch noch 
lange fertig ist, wäre es ganz praktisch, wenn ich die gespeicherten 
Daten noch im Nachhinein  verändern könnte.

Es wird auch darauf hinauslaufen, dass ich insgesamt 2 mal einen 32x8 
bit Speicher benötige.

Könntet ihr mir da einen Konkreten Chip und oder passende Schreibgeräte 
nennen?

Danke schonmal im voraus.
(Firma: www.wolfgangrobel.de) #4371461
Lesenswert?

So kleine Speicher gibt es nicht mehr "normal" zu kaufen!

Alternativen wurden schon genannt: EPROM oder Flash-PROM

Beispiel: Flash 29C512 (64kByte*8)
Programmiergerät: alle gängigen Eprommer.

Das Teil hat aber PLCC oder breites DIL-Gehäuse...

Wenn Du es klein haben möchtest: Bipolare PROMs in DIL14/16...

Links zum Wissen selbst Aneignen stehen oben.
OP #4371869
Lesenswert?

Was währe denn besser in meinem Fall geeignet? ein EPROM, EEPROM oder 
Flash-Speicher?

Wenn ich es richtig verstanden habe, dann brauche ich für den EPROM 
neben dem Programmiergerät noch ein Gerät zum Löschen des Speichers. 
Wäre es dann nicht einfacher einen EEPROM zu kaufen, bei dem man nur ein 
Gerät brauch, welches sowohl schreiben als auch löschen kann?

Wenn ich einen EEPROM verwende, welchen Chip würdet ihr mir denn dann 
empfehlen (Ich baue es auf einem Steckbrett nach, deswegen währe ein 
DIP-Gehäuse ganz praktisch)?
Was für ein Programmer müsste ich denn dann dazu kaufen?
Gast #4371899
Lesenswert?

Passend wäre wohl ein EEPROM - weil man die Löcheinrichtung spart.
So etwas wie 28C64 (8 K x 8) bekommt man noch als DIP28.

Wenn der Speicher seriell (SPI) sein darf, gibt es auch welche im DIP8 
und sehr günstig.
OP #4371936
Lesenswert?

>Wie wäre es denn, den "ROM" aus 32 8-fach-DIL-Schaltern aufzubauen?
Währe natürlich eine gute Lösung, aber wird das nicht etwas teuer mit 
knapp 0.30€ für einen 8 poligen DIL-Schalter mit den dazugehörigen 
Steckbrettern?

>Wie schnell muss dein "ROM" sein?
Soweit ich weiß kann man meine verwendeten ICs mit maximal 50 MHz 
betreiben. Da ich werde aber eine Taktung nehmen, die sich im KHz 
Bereich oder noch geringer befindet. Jedoch bin ich eher dagegen in 
einem selbstgebauten µC einen vorgefertigten µC zu verbauen.

>Wenn der Speicher seriell (SPI) sein darf, gibt es auch welche im DIP8 und sehr 
günstig.
Nein, er darf nicht seriell sein.
#4371960
Lesenswert?

Steffen S. schrieb:
>>Wie wäre es denn, den "ROM" aus 32 8-fach-DIL-Schaltern aufzubauen?
> Währe natürlich eine gute Lösung, aber wird das nicht etwas teuer mit
> knapp 0.30€ für einen 8 poligen DIL-Schalter mit den dazugehörigen
> Steckbrettern?

Das musst u natürlich entscheiden. Pro DIL-Schalter käme ja auch noch 
ein Tristate-Treiber dazu. Mir würde die Zeit fürs Löten jedenfalls 
deutlich mehr weh tun als die 15€ Materialeinsatz.

Dafür wäre es dann wirklich "logikgatter-only"!

Viel Spaß, Stefan
Moderator (Firma: Titel) Persönliche Seite #4371998
Lesenswert?

Steffen S. schrieb:
> Ich bin momentan damit beschäftigt eine Art "Mikrocontroller"  aus ICs
> der 74LSxx Reihe zu bauen.
Mal ehrlich: wenn du selbst einen uC bauen willst, dann solltest du 
nicht nach einem geeigneten ROM fragen müssen...

Ansonsten sieh dir doch einfach mal an, wie Andere das gemacht haben 
und überleg dir, was du davon verwenden könntest:
https://www.google.de/search?q=prozessor+ttl
OP #4372141
Lesenswert?

>Mal ehrlich: wenn du selbst einen uC bauen willst, dann solltest du
>nicht nach einem geeigneten ROM fragen müssen...

>Ansonsten sieh dir doch einfach mal an, wie Andere das gemacht haben
>und überleg dir, was du davon verwenden könntest:
>https://www.google.de/search?q=prozessor+ttl

Hab ich schon alles nachgeschaut. Es wird jedoch seltenst aufgezählt, 
was sie für einen ROM benutzt haben. Wenn dann ein Name genannt wird, 
gibt es diese Chips kaum noch oder sind für 40€ zu haben.
Außerdem kenne ich mich wie oben schon gesagt nicht bei ROM Chips aus 
und ich weis auch nicht, auf welche Werte ich achten muss.

>Nimm einen 28C64 (kannst auch einen von mir haben, da liegen noch welche
>rum) und die kannst du mit fast jedem beliebigen Mikrocontroller
>beschreiben.

Danke für das Angebot, aber gäbe es denn noch Alternative EEPROMS, die 
man leichter bekommt? Und woran erkenne ich eigentlich, ob diese mit 
meinen TTL-ICs kompatibel sind?
Moderator (Firma: Titel) Persönliche Seite #4372323
Lesenswert?

Steffen S. schrieb:
>> Ansonsten sieh dir doch einfach mal an, wie Andere das gemacht haben
>>>und überleg dir, was du davon verwenden könntest:
>> https://www.google.de/search?q=prozessor+ttl
> Hab ich schon alles nachgeschaut. Es wird jedoch seltenst aufgezählt,
> was sie für einen ROM benutzt haben.
Eigentlich fast immer...
Im ersten Link 
(http://www.heise.de/make/meldung/CPU-aus-13-alten-TTL-ICs-2842731.html) 
sind zwei 2816 zu sehen.
Im http://cpuville.com/Z80.htm steht "The computer as shown here has 2K 
EPROM" also ein 2716.
Dort im 
http://repository.cmu.edu/cgi/viewcontent.cgi?article=1595&context=compsci 
steht "AT28C17   2k×8 Parallel EEPROM"

> Und woran erkenne ich eigentlich, ob diese mit meinen TTL-ICs kompatibel
> sind?
An der Versorgungsspannung. Die ist nämlich gleichzeitig die 
EA-Spannung. Solche Sachen stehen aber tatsächlich im Datenblatt (ich 
weiß das hört sich jetzt irgendwie hochnäsig an, ist aber wahr).

> Danke für das Angebot, aber gäbe es denn noch Alternative EEPROMS, die
> man leichter bekommt?
Nimm welche, die in aktuellen uC eingebaut sind...
Im Ernst: DU willst doch unbedingt eine CPU mit uralten Bausteinen 
aufbauen. Klar, dass es die nicht mehr an jeder Ecke gibt.
OP #4372524
Lesenswert?

Danke für die Hilfe, aber drei kleine Fragen hätte ich dann noch:

1. Wenn ich 16 Bit benötige, muss ich den 28C64 zwei mal kaufen. Kann 
ich diese dann einfach miteinander verbinden? Also kann man einfach den 
Adresspin 1 vom ersten Chip mit dem Adresspin 1 von zweiten Chip usw. 
verbinden oder muss man da was beachten?

2. Kann ich die Ausgabepins direkt mit den anderen TTL-ICs verbinden 
oder muss ich etwas dazwischen geben?

3. Sind alle EEPROM-Programmer mit dem 28C64 kompatibel oder muss man 
auf bestimmte Angaben im Datenblatt achten?
Gast #4372532
Lesenswert?

Steffen S. schrieb:
> Außerdem kenne ich mich wie oben schon gesagt nicht bei ROM Chips aus
> und ich weis auch nicht, auf welche Werte ich achten muss.

Ich vermute mal, du kennst dich mit anderen Chip auch nicht aus.
Das du einen Programmer brauchst, habe ich dir schon angedeutet.
Alle parallelen EPROM, EEPROM usw. kannst du nehmen. Sogar die von einer 
Hauptplatine gehen.
Deine immer wieder genannten EEPROM sind teuer und selten.
Welchen RAM nimmst du eigentlich?
Moderator (Firma: Titel) Persönliche Seite #4372538
Lesenswert?

Steffen S. schrieb:
> 1. Wenn ich 16 Bit benötige
Eine TTL CPU mit 16Bit? Hut ab!

> 3. Sind alle EEPROM-Programmer mit dem 28C64 kompatibel oder muss man
> auf bestimmte Angaben im Datenblatt achten?
Zwei Fragen, zwei Antworten:
Nein.
Ja: in der Liste der unterstützten Bausteine muss der 28C64 stehen. 
Idealerweise vom richtigen Hersteller.

> 2. Kann ich die Ausgabepins direkt mit den anderen TTL-ICs verbinden
> oder muss ich etwas dazwischen geben?
Ja.
Nein.


Jetzt wirds aber langsam echt trollig hier...
OP #4372558
Lesenswert?

Als RAM benutze ich einen 74189, den ein Freund mir geschenkt hatte, da 
er ihn nicht brauchte.
Durch diesen IC hatte ich auch die Idee mit diesem Projekt anzufangen, 
auch wollte ich halt etwas mehr über digitale Elektronik lernen. Bis vor 
einem halben Jahr wusste ich über ICs quasi nichts.In der Schule hat 
mein  Informatiklehrer uns  einmal ein paar Experimente mit dem 74LS08 
gezeigt.
Seit dem habe ich mich mit ein paar Lektüren und Artikeln im Internet 
informiert, sowie ich natürlich selber  Versuchemit den ICs der 74LSxx 
durchgeführt habe.

Aber danke für die Hilfe, die ihr mir gegeben habt. Hat mir wirklich 
sehr weitergeholfen.

Schönen Aben noch.

Grüße Steffen
Gast #4372870
Lesenswert?

Steffen S. schrieb:

> Als RAM benutze ich einen 74189, den ein Freund mir geschenkt hatte, da
> er ihn nicht brauchte.

Verkauf den und hol Dir ein 6264 oder 62256. Der 74189 wird als 
MMU-Register für CP/M 3 - Systeme gebraucht und hat daher einen gewissen 
Sammlerwert.

Meine sind zur Zeit aus China unterwegs :-)
#4372880
Lesenswert?

Axel S. schrieb:
> OK, für eine 4-Bit-CPU würde es wohl reichen...

Eben.

Als Demo-CPU absolut ausreichend, realistisch grosse Programme laufen 
auf einem Nibler sowieso nicht.

Das einzige Problem dieser intzegrierten RAM und ROM: Man sieht ihren 
Inhalt nicht, denn das wirklich interessante an einem mit TTL 
aufgebauten Rechner ist ja, daß man al alle Leitungen und Register LEDs 
dranmachen kann um immer unmittelbar alle Daten zu sehen - sonst 
bräuchte man die TTL ICs nicht die noch jede Leitung nach draussen 
führen, sondern wäre mit einem CPLD besser bedient.

Als Programm-ROM würde ich also Steckbrücken oder DIP-Schalter 
empfehlen, so 64 Befehle sollten zur Demonstration reichen, und als RAM 
wären 74xx373 mit OE dauer-enabled und 74xx244 als Tri-State 
interessant, weil dann eine LED pro Bit möglich ist. Mehr als 16 Byte 
wird man damit auch ungern aufbauen.
#4373130
Lesenswert?

Steffen S. schrieb:
> 2. Kann ich die Ausgabepins direkt mit den anderen TTL-ICs verbinden
> oder muss ich etwas dazwischen geben?

Vermutlich musst Du einen Puffer/Bustreiber zwischen die Datenausgänge 
des EPROMs und die TTL-Chips schalten, denn gerade Standard TTL-Chips 
(74xxx) ziehen nicht nur einen beachtlichne Strom aus dem Netzteil, 
sondern haben auch eine nicht zu unterschätzende Stromaufnahme an den 
Eingängen (~1,6mA bei Low). Wenn Du mehrere TTL-Eingänge an die 
Datenausgänge des EPROMs schalten willst, sind die Ausgangstreiber im 
EPROM schnell überfordert.
(AFAIK war ein Fan-Out von einer Standard TTL-Last bei den EPROMs und 
vielen anderen 5V-Microcontroller Bausteinen üblich)
OP #4373255
Lesenswert?

Um die Situation verständlicher zu machen: Ich orientiere mich dem 
"Simple as Possible 1" aus dem Buch "Digital Computer Electronics", da 
unsere Bibliothek genau dieses Buch hatte und der dort erklärt Computer 
genau den 74189 verwendet. Allerdings ist die Auflage von 1990 oder so.
Dieser Computer benutz TTL und hat eine 8-Bit Architektur.
Nur leider wird nirgendwo gesagt, welcher Baustein für die ROM benutz 
wird und ich mich wie schon gesagt nicht mit ROMs auskenne.
Ich brauche für die ROM 16 bit, da ich 16 Teile habe, die ich ansteuern 
möchte.

Zu dem Preis: ich habe bis jetzt ungefähr 15 Euro ausgeben, wenn man die 
Kabel nicht mitzählt. Es fehlen mir halt nurnoch die ROM Chips.

Wenn es für euch einfacher währe, dann kann ich gerne den Schaltplan 
hochladen.
Moderator (Firma: Titel) Persönliche Seite #4373323
Lesenswert?

Steffen S. schrieb:
> Ich orientiere mich dem "Simple as Possible 1" aus dem Buch "Digital
> Computer Electronics"
Ja, endlich wird Ross&Reiter genannt und schon kommt die Lösung:
> Nur leider wird nirgendwo gesagt, welcher Baustein für die ROM benutz
Der hat gar kein ROM. Die Befehle sind im RAM gespeichert:
http://drghimire.com.np/simple-as-possible-computer-1-sap1-architecture/
Gast #4373424
Lesenswert?

Lothar M. schrieb:
> Die Befehle sind im RAM gespeichert:

Sowas gabs doch bei den ersten PDPs für den Urlader: x Adressschalter 
und y Datenschalter und eine Taste - einstellen, Taste drücken und schon 
war ein Byte im RAM gespeichert. Leicht zu erweitern, aber bei kBytes 
wird es echte Arbeit. 18000 mal schalten.

Georg
(Firma: www.wolfgangrobel.de) #4373861
Lesenswert?

Für die Control-Matrix (Schaltwerk) eines diskreten Prozessors ist so 
ein PROM genau richtig, aber eben nichts für Anfänger. Ich befürchte 
nur, dass das mit dem Projekt nichts wird, weil alles zu teuer ist... 
Ein billiges Programmiergerät für EPROMs kostet auch mindestens 40 Euro, 
und da muss man schon wissen, was man damit vorhat.

Eine andere Alternative geringer Komplexität sind übrigens PALs oder 
GALs, aber dafür müsste man sich mit Logikgleichungen und JEDEC 
auskennen...

Aber auch diese benötigen ein Programmiergerät.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren