Mikrocontroller für Computerprojekt gesucht

Ich plane, einen kleinen Computer im "Heimcomputer" -Stil der 80er Jahre zu bauen, etwas mit den folgenden Spezifikationen: s

  • 8-12 MHz
  • 256 / 512 KB externer Speicher
  • 128 KB EPROM
  • 320 x 200 x 32 Farben (VGA-Schnittstelle)
  • SD-Karte zum Speichern (kann keine Bandhardware finden ;) )
  • Ich würde eine Entwicklungsumgebung mit Live-Debugger und schnellem Rebuild-Prozess für einen optimierten Entwicklungsprozess bevorzugen.

Ich habe nichts gefunden, was dieser Beschreibung entspricht, AVR ist out, Zilog scheint out zu sein, da ich keine vernünftige Entwicklungsumgebung finden kann (wie oben beschrieben) und PIC nie eine Alternative war (aus dem gleichen Grund wie AVR)

Also, habt ihr irgendwelche Tipps?

Warum ist AVR out? Es gibt eine etablierte Werkzeugkette (einschließlich Debugger) und einige ziemlich leistungsfähige Chips. Möglicherweise müssen Sie einige Komponenten zusammenfügen, um mehr externen Speicher und EPROM zu erhalten, aber das ist Teil des Spaßes, oder?
Ich habe kein AVR-Teil gefunden, das Adressleitungen oder Datenleitungen hat, also ging ich davon aus, dass es nur Onchip-Speicher (?)
Eine externe Speicherschnittstelle ist in Low-End-MCUs nicht sehr verbreitet. Wenn Sie wirklich wollen, schauen Sie sich vielleicht die höherwertigen STM32 oder LM3S oder LPC24xx an. Sie können auch immer mit GPIOs bitbangen, insbesondere wenn Sie keine hohen Geschwindigkeiten benötigen.
Schade, ich habe mich ein bisschen auf Zilogs Classic-Sortiment umgesehen, aber ich weiß nicht, wie die Entwicklungsumgebungssituation aussieht, ansonsten sieht der z80182 wie ein Anwärter aus ....
Viele der AVRs haben Hardwareunterstützung für SPI, das für den Zugriff auf externen Speicher verwendet werden kann (offensichtlich nicht so schnell wie andere Methoden).
Das Problem ist, dass diese neue Art von MCUs, wie ich es verstehe, den externen Speicher nicht verwenden können, also müssen Sie ihn in den internen RAM "auslagern", bevor Sie ihn verwenden können (?)
Suchen Sie nicht nach einem Mikroprozessor anstelle eines Mikrocontrollers?
Fange an zu denken, ja..
Es gibt AVR-Xmega-Geräte mit externem Speicherinterface bis in den Megabyte-Bereich. Sogar einige megaAVR-Geräte haben bis zu 64kB externe RAM-Schnittstellen.

Antworten (6)

Eine interessante Option für einen Retro-Computer ist die Verwendung eines FPGA; Diese 6809-Implementierung läuft auf einem Digilent Spartan-3-Board für 99 US-Dollar. Ich habe es vor ein paar Jahren ausprobiert - es funktionierte sehr gut mit einem VGA-Monitor und einer PS2-Tastatur, die an die FPGA-Karte angeschlossen waren. Es wurden mehrere ähnliche Systeme entwickelt, einschließlich dieses Apple II , das ein Altera-FPGA-Board verwendet.

Haben Sie den Parallax-Propeller-Chip in Betracht gezogen? Soweit ich weiß, ist es die einzige 32-Bit-CPU (Mikroprozessor oder Mikrocontroller), die derzeit in einem DIP-Gehäuse hergestellt wird. (Sie ist auch in SMT erhältlich, wie jede andere 32-Bit-CPU, die derzeit hergestellt wird). Ich habe mehrere Projekte damit gesehen, die jede Ihrer Spezifikationen individuell erfüllen, obwohl ich kein einziges Projekt gesehen habe, das alle erfüllt:

  • 8 MHz oder mehr – ja
  • 256 / 512 KB externer Speicher; 128-KB-EPROM -- Der Wikipedia-Artikel zum HYDRA-Spielentwicklungskit behauptet, dass eine Erweiterungskarte mit 512 kB RAM und 128 kB EEPROM in das Hydra eingesteckt werden kann, was Ihre Spezifikation für externen Speicher zu erfüllen scheint
  • 320 x 200 x 32 Farben (VGA-Schnittstelle) -- Der Hydra erzeugt VGA mit 800 x 600 x 64 Farben.
  • SD-Karte – das Propeller-Wiki erwähnt mehrere SD-Karten-Projekte ).
  • Entwicklungsumgebung -- der Parallax-Propeller- Wikipedia-Artikel behauptet, dass "der Propeller dafür bekannt ist, dass er einfach zu programmieren ist".

Wenn Sie einen neuen und ziemlich leistungsfähigen Chip wollten, könnten Sie einen LPC1768-Chip verwenden. Sie können mit dem DIP-freundlichen mBed-Modul beginnen.

Programmierung und Debugging sind einfach. Ich kann IDEs nicht kommentieren, weil ich Vim + ein Makefile bevorzuge, aber CodeSourcery bietet eine kostenlose vorkonfigurierte Toolchain (für Linux und Windows IIRC) an.

Auch kein externer Speicherbus auf dieser Chipfamilie (?)
@ RA01 Nun, es bietet 512 KB ROM und 64 KB RAM. Ich würde sagen, das ist mehr als genug für die meisten Dinge, die ich tue. Und die meisten (frühen) 80er-Computer hatten nicht viel mehr als 64 KB RAM

Hast du dir die FEZ Cobra angeschaut ? Wenn Sie dem .NET Micro Framework nicht abgeneigt sind , scheint es sehr mächtig zu sein.

Es verfügt über 16 BM RAM, 4,5 MB Flash (anstelle eines EPROM), einen 72-MHz-Prozessor, eine SD-Karte, Ethernet und vieles mehr. Ich habe nicht speziell mit diesem Board gearbeitet, aber ich habe mit dem Netduino gearbeitet und das Entwickeln / Debuggen ist ein absoluter Kinderspiel. Der Code wird über USB auf das Gerät übertragen, und das Debuggen erfolgt über dasselbe USB-Kabel.

Die Entwicklungsumgebung ist Visual Studio (die kostenlose Version ist Visual Studio Express ).

Ich plane, das Board als Lernprojekt selbst zu bauen, aber danke für die Tipps, vielleicht für ein anderes Projekt!

Haben Sie darüber nachgedacht, eine echte 80er-CPU zu verwenden? Wenn Sie weniger als 10 Artikel bauen, sollte es in Ordnung sein, Ihre Lieblings-80er-CPU zu verwenden, auch wenn sie schon lange als veraltet erklärt und nicht mehr hergestellt wird - es gibt immer noch eine Menge Teile, die in Elektronikläden herumschwirren .

Haben Sie gute Erinnerungen an den 6502, 6802 oder den 6809? Vielleicht interessiert Sie das Homebrew-Computerprojekt N8VEM 6x0x . Vielleicht können Sie ein paar Tipps aus dem N8VEM Home Brew Computer Project Wiki entnehmen .

Haben Sie gute Erinnerungen an den 68000? Vielleicht interessiert es Sie, wie man eine verdrahtete 68000-Platine entwirft, die an den S-100-Computerbus angeschlossen wird . Oder vielleicht sind Sie mehr daran interessiert, Tipps für die Arbeit mit einem oberflächenmontierten 68000 im Minimig-Projekt zu sammeln .

Ich habe, aber ich konnte keine vernünftige Entwicklungsumgebung für die Z80182-MCU finden, die ich verwenden wollte. Das Programmieren von Eproms und das Debuggen mit led:s sind heutzutage keine Option mehr, zu wenig Zeit bleibt nach all den täglichen Aufgaben.

Ihre Spezifikationen sind widersprüchlich, etwas mit einer so niedrigen Taktrate wird ein eingebetteter Mikrocontroller sein und keinen externen Speicher haben, kaum externe Pins für diese Angelegenheit.

Ich verstehe den Wunsch nach externem Speicher wirklich nicht, Sie können 128 KB oder 256 KB, vielleicht sogar 512 KB, auf dem Chip finden, normalerweise kein Wartezustand.

Um diese Funktionen zu erhalten, werden Sie am Ende einen erheblich schnelleren Prozessor haben, das bedeutet nicht, dass Sie ihn so schnell ausführen müssen, aber um diese Schnittstellen und Funktionen zu erhalten, werden Sie dort landen.

Erweiterung der bereits gegebenen Antworten.

Sie sollten eine FPGA-Lösung untersuchen. Lattice hat ein paar weiche Kerne, genau wie Xilinx, Eval-Boards sind an einer Reihe von Orten erhältlich, knjn.com, Avnet usw. Schade, dass das $ 50-Spartan3a-Board, das ich habe, nicht mehr verfügbar ist. Opencores hat viele Kerne, die Sie verwenden können, zpu zum Beispiel, volle gcc-Compiler-Unterstützung. Eine FPGA-Lösung ermöglicht Ihnen die maximale Flexibilität, vielleicht mehr als eine, eine für den Prozessorkern mit einer generischen Speicherschnittstelle, dann eine andere für die Videounterstützung usw.

Die PIC32-Serie ist ein Mips, also sollte es da draußen jede Menge Unterstützung geben, On-Chip-Speicher sicher ...

Einige Leute haben da draußen Atari 2600-Lösungen sowie Amiga, Sie könnten sich einige Komponenten aus diesen Bemühungen schnappen und mischen und anpassen.

Rabbit Semi Digi hat jetzt einige mit 8/16 Bit externen Speicherschnittstellen. Dies ist ein modifizierter z80-Kern, wenn ich mich recht erinnere. Dallas hatte jetzt Maxim das TINI-Board mit einem 8051-basierten Deal und ich weiß, dass es externes Flash unterstützte, sie wollten Java ausführen, also hatte es möglicherweise externen RAM. Der sdcc-Compiler war für 8051 bekannt, wenn ich mich recht erinnere. Ich denke, Renesas ist ein weiteres 8051-Haus, und zweifellos könnten Sie einen 8051 in einem FPGA finden oder bauen.

Ich empfehle dringend, mit etwas Armbasiertem zu gehen. atmel, st, stellaris (ti), eine Wäscheliste von anderen. Cirrus hat einen ARM7 mit einem Cache und einem externen 32-Bit-Speicherbus, vielleicht hat die arm9-Version auch einen externen Speicher. Sie können Boards von embeddedarm.com kaufen, die Cirrus-Teile verwenden. Omap und Marvell sind jedoch diejenigen, nach denen Sie suchen müssen, vorausgesetzt, Sie suchen nach Hunderten von MHz, aber die Teile haben das, was Sie interessiert, externe Speicherschnittstellen, Video usw. Boards wie das Hawkboard, Beagleboard (ich mag das Beagleboard wirklich nicht groß Abzocke, nehmen Sie die chinesische Nachahmung, mag meine Hawkboards besser, sieht aber so aus, als hätte es ein Designproblem gegeben), da ist das Open-RD (ich mag es viel besser als die Plug-Computer).

Sie könnten einen Gameboy Advance sezieren, Ihnen eine parallele Schnittstelle geben, etwas um den Xport von Charmed Labs herum entwerfen.

Oh ja, und vielleicht möchten Sie sich den xcore von xmos ansehen, ein im Allgemeinen gut aussehendes Produkt.