Ich habe die Atmel ATMEGA- und ATTINY-Mikrocontroller verwendet und halte sie für ziemlich gut. Eine Sache, die ich nicht besonders mag, ist die Tatsache, dass sie (und auch Microchip PIC uC-Familie) alle Harvard-Maschinen sind, was bedeutet, dass ich nicht wirklich externen Speicher verwenden oder aus dem RAM ausführen kann, nur den Flash. p>
Zwar gibt es offensichtliche Vorteile für dieses Design, aber es macht es technisch sehr schwierig, Dinge wie FORTH mit einem AVR oder PIC zu machen. (Ich weiß, es gibt mindestens eine Implementierung, aber es funktioniert nicht wie ein normaler FORTH und wird den Blitz ziemlich schnell abnutzen)
FORTH wurde ursprünglich für Systeme mit interaktiver Maschinensteuerung entwickelt, bei denen viel Flexibilität erforderlich war. So wurden Dinge wie der Z80 oder 6809 als Mikrocontroller verwendet, wenn das Steuerungsprogramm oder RAM oder ein anderes Speichergerät ausgeführt wurde.
Kennt jemand aktuelle Geräte ähnlicher Komplexität (vorzugsweise in DIP-Paketen verfügbar) für den AVR / PIC, die von Neumman-Maschinen sind?
Farnell hat eine nette Suchfunktion, mit der Sie nach Mikrocontrollern in DIP-Paketen suchen können. Obwohl Sie herausfinden müssen, welche Familien nicht Harvard sind, indem Sie die Datenblätter betrachten.
Sieh dir die 68K und die HCS08 an.
Update : In der Zwischenzeit sind einige ARM Cortex-M Controller in DIP-Paketen verfügbar, die LPC810M021FN8 und die LPC1114FN28 von NXP.
Zusätzlich zu den Freescale-Prozessoren, auf die Sternblau bereits hingewiesen hat, verwendet die Texas Instruments MSP430-Familie die von Neumann-Architektur. Jedoch sind nur die kleinsten in einem DIP-Paket verfügbar.
UPDATE, um PIC32 einzubeziehen:
In meinem ursprünglichen Beitrag hatte ich vergessen, dass PIC32-Mikrocontroller immer in der Lage waren, aus dem RAM auszuführen, wie in dieses Codebeispiel ; und nun hat Microchip das neue PIC32MZ Linie von Mikrocontrollern, mit bis zu 2 MB Flash und 512 K RAM, die sie für ziemlich große RAM-basierte Programme möglich machen. Leider sind keine Chips in DIP-Paketen verfügbar.
Allerdings hat Olimex, eine Art bulgarisches Pendant zu SparkFun und Adafruit, eine PIC32-HMZ144 Entwicklungsboard für $ 21,95 EUR, was ungefähr $ 24 ist. Dies ist ein Rauchen Hot Deal , da der Prozessor allein kostet über $ 12 bei Digi-Key . (Es gibt andere Boards von US-Anbietern ab etwa 50 Dollar.)
Die ursprüngliche PIC32MX-Linie hat zwanzig Varianten in 28-poligen DIP-Paketen, aber sie sind auf einen Maximalwert von 64K RAM begrenzt, was für einige Projekte noch nützlich ist.
Sie können sich die im OpenCores Projekt verfügbaren Designs ansehen. Dies ist ein Open-Source-Projekt, das CPU-Kerndesigns gewidmet ist, die in VHDL, Verilog und ähnlichen FPGA-Designsprachen implementiert sind. Es gibt vollständige und respektable Implementierungen von klassischen 8-Bit-CPUs wie dem 8080 , 6502 und 8051 . Der 6502, den ich verlinkte, behauptet, er sei zyklusgenau im Vergleich zum ursprünglichen Chip. Andere sind funktional komplett, haben aber oft modernere Busse und Signale.
Sie werden nicht (glaube ich) in DIP-Paketen verfügbar sein, aber Sie können immer Breakout Boards finden.
Die Designs sind alle Open Source, unter einer Vielzahl von Lizenzen.
Die Arm-basierten, sogar der Cortex-m3 behauptet, Harvard zu sein, aber Sie können Programme in den Daten-RAM laden und von diesem Ram ausführen. es ist wirklich nicht Harvard. Andere Arme sind normalerweise nicht Harvard, einige haben externe Speicherschnittstellen, die Sie verwenden können, um die internen Ressourcen zu erweitern.
Das ist eigentlich keine Frage, sondern eher eine verwandte Frage. Warum sollten Sie in einem Mikrocontroller zu von-neumann gehen, wenn die vorherige Generation Harvard war? Ist das nicht alles in Bezug auf die Leistung win-win? Anders als die Komplexität (was, wenn die ursprünglichen PICs damit umgehen können, sollte nicht so toll sein), was sind die Schattenseiten der Harvard-Architektur?
Sie können sich auch das Zilog eZ80 ansehen. Da sie mit dem alten Z80 binär kompatibel sind, sollten Sie in der Lage sein, eine FORTH-Implementierung zu finden, die auf ihnen ausgeführt wird, aber Sie müssten sie wahrscheinlich auf einem guten alten CP / M ausführen:)
Auch das sind die einzigen, die ich gefunden habe, die den Speicherbus von außen zugänglich haben, d. h. Codeausführung von externem Speicher erlauben.
Die neue Kinetis Mikrocontroller-Linie von Freescale setzt einen ARM Cortex-M4 in ein Mikrocontroller-Paket, und Programmcode kann überall im adressierbaren Speicherbereich (RAM oder FLASH) platziert werden oder sogar Flex Memory.)
Der Kinetis Solution Advisor ist eine leistungsstarke Auswahlhilfe, die Ihnen helfen kann Finde das Mikro, das du willst. Speicher von 32kB bis 1MB, alle Peripheriegeräte, die Sie wollen, und Preise von unter einem Dollar bis etwa 10.
Tags und Links microcontroller von-neumann 8bit