Welche CPU für Homebrew-Computer?

Gast #2225874
Lesenswert?

Hi,

Ich habe vor, aus reinem Interesse einen Computer zu entwickeln. Ich 
habe schon Projekte auf basis des Motorola 6809 gesehen. Der ist mir 
ehrlich gesagt etwas zu angestaubt (und wo bekommt man so einen 
überhaupt noch her?)

Beim Atmel AVR sehe ich das Problem mit der Prozessorarchitektur. Der 
Programmspeicher ist dort ja als festspeicher gedacht. Man könnte zwar 
einen gschickten Bootloader bauen, oder 2 AVRs nehmen, die sich bei 
bedarf gegenseitig flashen, aber da sehe ich das problem der begrenzten 
Lebensdauer des Flash-Speichers. Der ist ja nicht für dauerndes 
Neubeschreiben gedacht.

Dann habe ich noch den Propeller von Parallax in Betracht gezogen. 
Allerdings ist mir der schon ein wenig zu Komplex und hat einige Sachen 
integriert, die ich eigentlich extern lösen wollte (z.B. VGA Output). 
Außerdem hätte ich gern eine 8-Bit-CPU :P

Kennt ihr vielleicht einen Chip, mit dem ich glücklich werden könnte?

Noah
Persönliche Seite #2225893
Lesenswert?

Zunächst mal solltest Du klären, ob Du Dein Projekt auf Basis eines µC 
oder eines µP aufbauen willst. Der µC enthält Speicher und Peripherie, 
die Du dem µP hinzufügen musst, dafür kannst Du beim µP selbst darüber 
bestimmen, wieviel Speicher und welche Peripherie verwendet wird. Der 
Schaltungsaufwand ist natürlich höher.

Der von Dir genannte 6809 ist ein µP, während AVR, Propeller & Co 
allesamt µCs sind.

Andere nicht minder "angestaubte" Kandidaten für 8-Bit-µPs sind 6502, 
Z80, 8080, 8085.
Gast #2225899
Lesenswert?

Externer Daten/Adressbus ist ein Muß. Den haben echte Prozessoren eher 
als Controller. Meine Favoriten für solche Projekte wären:

- 80188 für einen DOS-kompatiblen PC. Kann viel, Aufwand relativ hoch.
- eventuell Z80, hat noch viele Fans, ist einigermaßen beschaffbar

Wenn es ein Controller sein soll, und das 64kB-Limit nicht weh tut: 
großes 8051-Derivat, vielleicht auch Z8

- HC11 (weil es immerhin einen C-Compiler gibt) Beschaffbarkeit 
durchwachsen, aus der Bucht fischen meist einzige Lösung.

Übrigens: Der 6809 ist schön, wenn man Assembler liebt. Mit etwas Suchen 
könnte ich wahrscheinlich noch ein paar Exemplare auftreiben.
#2225907
Lesenswert?

Eine einfache Variante wäre noch 68008 oder 80188 - der Aufwand 
entspricht ungefähr den erwähnten 8-Bittern, aber dafür gibts dann 
beispielsweise auch C Compiler.

Gute Adresse für museumsreife (daher einfache) Mikroprozessoren und 
Peripheriebausteine: http://www.kessler-electronic.de.

Bei Mikrocontrollern sollte es eine von-Neumann-Architektur sein, sonst 
ist man von der Arbeitsweise von Mikroprozessorsystemen zu weit 
entfernt.
Gast #2225929
Lesenswert?

>Externer Daten/Adressbus ist ein Muß. Den haben echte Prozessoren eher
>als Controller.
Die meisten grösseren uCs haben auch ext. Daten/Adressbus (auch f. 
Prgr), bzw gibt es innerhalb der Familie auch Derivate, die das haben.

>- 80188 für einen DOS-kompatiblen PC. Kann viel, Aufwand relativ hoch.
steinalt
> - eventuell Z80, hat noch viele Fans, ist einigermaßen beschaffbar
Zilog : Aufgekauft von IXYS !

>- HC11 (weil es immerhin einen C-Compiler gibt) Beschaffbarkeit
auch mittlerweile sehr alt, vielleicht HC12. (HC16 war noch grösser, 
aber der wird auch nicht mehr favorisiert)
Gast #2225933
Lesenswert?

Vielen Dank :)

Ich denke, ich wede mir einen Z80 kaufen. Dazu gibt es anscheinend viel 
Material und das Teil ist lieferbar (danke an A. K. für den Link). Für 
meine Studienzwecke scheint das der perfekte Mikroprozessor zu sein.
#2225954
Lesenswert?

Noah schrieb:

> Kennt ihr vielleicht einen Chip, mit dem ich glücklich werden könnte?

ARM wäre ein geeigneter Kandidat, auch und gerade weil 32 bittig und 
aktuell weit verbreitet. Schau mal, ob Du mit sowas wie nem LPC2478 
glücklich wirst - der hat auch Ethernet und einen Controller für 
LCD-Panels drin.

Coldfire ist eine RISC-Version der 68000'er Architektur. Nachteil: etwas 
unüblich und verhältnismäßig teuer. Wenn Du die im Vergleich zum 
68000'er fehlenden Adressierungsarten und Opcodes per Unimplemented 
Instruction Trap nachimplementierst, kannst auch direkt 68000'er Code 
fahren, und zwar schneller als das Original. Das Original gabs nämlich 
nicht mit 400 MHz.

Wenn Du unbedingt eine alte Architektur haben möchtest: Zilog ez80F91. 
Ist eine auf 24 Bit aufgebohrte Z80-CPU mit 50 MHz. Empfehlung: Evalkit 
besorgen, da ist die gesamte Entwicklungsumgebung und der 
Hardware-Debugger dabei.

fchk
Gast #2225960
Lesenswert?

Evtl. könnte dich auch dieses Projekt interessieren:

CP/M auf AVR:
Beitrag "CP/M auf ATmega88"
http://avr.cwsurf.de

Dort wird ein vollständiges CP/M System mit einem AVR (ATmega88/168), 
einem (oder 2) DRam's und einer SD Karte gebaut. 8080 CPU Emulation 
vollständig und läuft. CP/M dafür ebenfalls inkl. Anwenderprogrammen 
(z.B MS-Basic).
Z80 Emulation ist noch in Arbeit. Hier könnten wir weitere Unterstützung 
gebrauchen. Neue Platine ist ebenfalls in Arbeit. Lochrasteraufbau geht 
aber auch.


Peter
Gast #2225974
Lesenswert?

Noah schrieb:
> Ich denke, ich wede mir einen Z80 kaufen.

Gute Wahl! Im Gegensatz zu den heutigen xx-bittern kann man die Sache 
noch gut überschauen und die Erfolge lassen nicht lange auf sich warten.
War auch mein Erster und sicher auch der von vielen µOpas hier ;-)
#2225985
Lesenswert?

Wie willst diesen "Computer" denn dann nutzen/programmieren? Soll/muss 
er in der Lage sein, Programme nativ auszuführen, die im RAM liegen? 
Falls ja, fallen AVRs flach.

Alternative: Interpreter im Flash, das zu interpretierende Programm im 
RAM. Mit einem ATMEGA1284p und 16 kiB RAM kann man da schon einiges 
anfangen. Und den gibt es sogar im DIP (z.B. Pollin 6.95 €)
Gast #2225995
Lesenswert?

...kommt immer darauf an, was der TS wirklich möchte.

Wenn Nostalgie überwiegt dann halt Z80 oder möglichst noch älter und 
ausgefallener (EPROMS brennen und im Mäusesonnenstudio wieder löschen 
;-))...

Wenn es um gute Entwickelbarkeit und preiswerte, aber leistungsfähige 
Toolchain geht, dann etwas wie AVR-Atmega oder ARM mit externem 
Businterface als uP benutzen.

jedem Tierchen sein Plaisierchen wie meine Oma immer zu sagen pflegte, 
oder "Allet Jeschmackssache !" sprach Lieschen Müller, und aß ihre 
Popel.

gruss + fiel fergnügen, tom.
Gast #2226023
Lesenswert?

> Ich habe vor, aus reinem Interesse einen Computer zu entwickeln.

Wozu soll der dienen ?

Wenn man ihn wirklich verstehen will, sollte man ihn aus einzelnen 
TTL-Chips aufbauen, allerdings supersimpel.
Da kann man dann auch LEDs quasi an jedes interne Register bauen und ihn 
mit Tastendruck durchpulsen. Es gibt einige

http://www.google.de/#sclient=psy&hl=de&site=&source=hp&q=4+bit+ttl+cpu&aq=f&aqi=&aql=&oq=&pbx=1&bav=on.2,or.r_gc.r_pw.&fp=b9836c8e707a78be&biw=1043&bih=885

Wenn man frei sein will, sollte man ein grosses FPGA programmieren,
dann kann man jeden Tag einen neuen Prozessor bauen ohne löten zu müssen 
und alle bekannten (C64, Apple][, ...) nachbauen. Für die passende 
Peripherie sollte man vorher sorgen.

Wenn man was bestimmtes damit machen will, sollte man erst mal 
nachdenken, welche Leistung man dafür braucht.
Moderator Persönliche Seite #2226074
Lesenswert?

Peter Sieg schrieb:

> Z80 Emulation ist noch in Arbeit. Hier könnten wir weitere Unterstützung
> gebrauchen.

Was ist daran so schwierig, die fehlenden Z80-Opcodes nachzubauen? Ich 
hatte mal Mitte der 90er für SCO-Unix bzw. Linux unter X11 als 
Oberfläche spaßeshalber einen ZX-Spectrum-Emulator in C programmiert. 
Der bestand im wesentlichen aus 3 großen case-Switches über die 3 x 256 
Opcodes, lief also über die "brutale" Methode, ging deshalb nicht gerade 
sparsam mit dem Speicher um, lief dafür aber richtig flott.

Ich glaube, ich könnte nach kurzer Einarbeitung wieder Z80-Programme 
direkt in Hex eintippen... so habe ich das damals für kürzere Programme 
jedenfalls gemacht. Sparte das zeitaufwendige Laden des Assemblers per 
Cassetten-Recorder ;-)

Wenn ich Euch bei der Z80 Emulation helfen kann, melde Dich einfach bei 
mir per PM.

Gruß,

Frank
#2226083
Lesenswert?

Ich weiß ich habe hier eine Ausnahmemeinung, aber ich würde das wirklich 
auf AVR-Basis machen. Der Trick dabei ist, das Dateisystem im Flash zu 
halten. Wenn Du es schaffst Programmdateien am Stück zu schreiben, so 
musst Du nur aufpassen dass Dein Code relozierbar ist (keine absoluten 
Sprünge, etc) und das sollte funktionieren.
Damit braucht man nicht so viele Schreibzyklen und muss auch nichts 
laden.

Der große Vorteil liegt in der Nachbaubarkeit.
Gast #2226154
Lesenswert?

"Everyone and their mother has built their own Z80 computer."

Muss ich gleich mal meine Mutti anrufen, dass sie mir dabei helfen soll 
xD

Im Prinzip kann man den Thread jetzt schließen. Ihr habt mir geholfen. 
Danke.
(Firma: electronica@tdnet) Persönliche Seite #2226191
Lesenswert?

Noah schrieb:
> Ich
> habe schon Projekte auf basis des Motorola 6809 gesehen. Der ist mir
> ehrlich gesagt etwas zu angestaubt (und wo bekommt man so einen
> überhaupt noch her?)

Ausgeschlachtet?

> Dann habe ich noch den Propeller von Parallax in Betracht gezogen.
> Allerdings ist mir der schon ein wenig zu Komplex und hat einige Sachen
> integriert, die ich eigentlich extern lösen wollte (z.B. VGA Output).
> Außerdem hätte ich gern eine 8-Bit-CPU :P
>
> Kennt ihr vielleicht einen Chip, mit dem ich glücklich werden könnte?

Wie währe es mit einem ARM9 Microcontroller im QFP?

Also ne Briefmarke mit Beinchen dran.  Die gibt es mit bis zu 180 MHz 
und 24bit RGB Interface, USB OTG, 24bit RGB Interface, SD Card, ...

Ram Speicher meistens bis 64 MByte und Flash bis 256 oder 512 MByte.

Da kannst Du entweder was selber Programmieren wie zippi und sein 
Handheld Project oder Linux (z.B: http://www.emdebian.org/) drauf 
installieren.

Ich habe zwar einen größeren Microcontroller genommen, aber die Platine 
ist genauso groß wie mein 8" 800x600/64k Display (Formike) und liegt 
flach an.  Auf der Platine ist eine 5mm flache 6Ah LiPoly Zelle, der 
PMIC (Lader, 3 Buck, 1 Boost, 4 LDO) und der µC mit RAM, NAND FLASH, 
microSD, GSM, GPS, BlueTooth und sonstwas untergebracht.

Das ganze kann entwedr als TablePC oder Netbook aufgebaut werden...

Ist als nichts, was man nicht selber basteln kann.

180MHz ist zwar nicht der Killer aber als nettes selbstbau 
Bastel-Project perfect.

Ich bezweifele,das die meisten einen BGA löten und einen Microcontroller 
mit mehr als 500MHz handhaben können und ich habe meine Marvel Armada 
300 (2000MHz) vier mal versaut bis Marvel mir geholfen hatte, ein 
fünftes Board funktionsfähig hinzubekommen.  Gleiches Problem übrigends 
auch mit dem 1200MHz Marvel Kirkwood 88F6281 sowie Discovery MV78200.

Grüße und viel Spaß beim Basteln
Michelle
Gast #2226269
Lesenswert?

Michelle Konzack schrieb:
> Ich habe zwar einen größeren Microcontroller genommen, aber die Platine
> ist genauso groß wie mein 8" 800x600/64k Display (Formike) und liegt
> flach an.  Auf der Platine ist eine 5mm flache 6Ah LiPoly Zelle, der
> PMIC (Lader, 3 Buck, 1 Boost, 4 LDO) und der µC mit RAM, NAND FLASH,
> microSD, GSM, GPS, BlueTooth und sonstwas untergebracht.

Du bist ja auch eine super tolle Frau, die man auch als großkotzig 
bezeichnen kann. Du solltest Dich besser um Deine Millionenprojekte 
kümmern ;-)
Die Frage war hier nach einem 8-Bitter und nicht nach ultimativer 
Selbstdarstellung. Ein ARM9 ist auch kein Mikrocontroller.
Gast #2226287
Lesenswert?

Ich hab damals (muss Ende der 70er oder Anfang der 80er gewesen sein) 
meinen ersten Computer auch selbst zusammengebaut. Nach einem Rezept von 
Elektor, nannte sich Junior Computer. Basierte auf einem 6502 und hatte 
noch nicht mal ein Video-Interface sondern nur Siebensegment-Displays. 
Das waren noch Zeiten damals...
Gast #2226336
Lesenswert?

>Dann habe ich noch den Propeller von Parallax in Betracht gezogen.
>Allerdings ist mir der schon ein wenig zu Komplex und hat einige Sachen
>integriert, die ich eigentlich extern lösen wollte

Der Propeller ist nicht komplex. Von der Strukur her eher viel einfacher 
als ein Atmega. Ausser dass es 8 CPUs mit 32 Bit gibt.
Gast #2252721
Lesenswert?

Hallo Noah,
ich habe mir kürzlich einen kleinen Eigenbau-Z80-Computer gebastelt mit 
128k RAM, 8K EEPROM. Eigentlich bin ich noch dabei, ich entwerfe gerade 
ein neues Board mit ordentlichem Bankswitching und IDE-Schnittstelle.
Den Z80 bekommt man bei Reichelt für ein paar Euros. Am 6502 hatte ich 
auch Interesse, doch habe ich keinen Händler gefunden, der den noch 
vertreibt.
Falls es Dich interessiert, in meinem Blog findest Du weitere Infos:

http://dirk-hobbyblog.blogspot.com/

Bei Fragen einfach nen Kommentar im Blog posten.

Viele Grüße,
Dirk

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