Forum: Mikrocontroller und Digitale Elektronik Simpler "FBAS-Grafikchip" (CPLD?) für AVR


von Bernd (Gast)


Lesenswert?

Hi!

Gibt es einen simplen Grafikchip der in einen (PLCC-)CPLD passen könnte?
Die Ausgabe sollte als FBAS und die Ansteuerung über einen ATMega644 
erfolgen. :)
Daraus soll jetzt erstmal nichts Sinnvolles entstehen, ich will damit 
ein wenig rumspielen und was lernen.

grüsse,
Bernd

von David M. (md2k7)


Lesenswert?


von Falk B. (falk)


Lesenswert?

@ Bernd (Gast)

>Gibt es einen simplen Grafikchip der in einen (PLCC-)CPLD passen könnte?

CPLD ist zu klein, aber FPGA geht.

Beitrag "High-Quality PAL-Grafikkarte für µCs"

MFG
Falk

von Andi (Gast)


Lesenswert?

Eine andere Möglichkeit ist der Parallax Propeller Chip. Damit lässt 
sich sehr einfach ein FBAS Signal erzeugen. Und er ist auch nicht 
teuerer als ein FPGA.

Gruss
Andi

von the.deathgate (Gast)


Lesenswert?

Um das Thema nach 5 monaten nochmal aufzuwärmen:

Ein CPLD kann wunderbar Singale erzeugen.
Natürlich auch FBAS.
Die Frage ist ehr, was du darstellen willst und wie komplex das ganze 
werden soll.

Du kannst z.B. einen Chip mit den etwas größeren CPLDs (>= 64 Macro) 
entwickeln, der einfach die Zeilen am Fernseher synchronisiert 
durchläuft, und immer wenn er an einem IO Pin angesteuert wird an der 
Stelle an der er sich gerade im TV-Bild befindet einen Punkt ausgibt.
So ähnlich funktionierte das auch beim ATARI.
Wenn dann der Rücklauf statt findet, gibt das CPLD dies durch einen 
anderen IO Pin an den Controller weiter und könnte dort einen Interrupt 
auslösen.

Wenn du allerdings an Bitmaps denkst wird die Sache komplizierter.
Dann brauchst du schnelle SRAMs(<= 55ns) oder Cach-RAMs (15ns).
Dort könntest du über XMEM die Daten reinpacken, dem CPLD ein 
Startimpuls geben.
Dieser wiederrum müsste Intern einen 16 bit Zähler haben - was dann 
schon 16 Macros aufbraucht (sollte man bedenken wenn man z.B. nur 64 
Macrocells hat).
Dann wird's auch mit dem FBAS Signal schwieriger und freie Port-Wahl 
hast du dann auch nicht mehr.

Einfacher ist es mit RGB an Scart.

Ich plane gerade eine kleine Grafikeinheit, die ein RGB Signal aus einem 
SRAM erzeugt. Jedoch mit Hilfe eines ATMega8515 und eines schnellen 32kB 
Cache-Rams.
Ich versuche jedoch nicht stur Pixeldaten in ein Bild zu hämmern, 
sondern Character bzw. Zeichen, die auch ins SRAM geschrieben werden. 
Das spart Platz bei der Bilderzeugung (siehe Gameboy, Sega Master System 
etc.).
Der AVR kümmert sich dabei um die Adressierung des Rams, so dass ich 
auch in kleineren CPLDs genug Resourcen habe.

von gast (Gast)


Lesenswert?

Am einfachsten ist es über ein "Shared Ram", wobei der µC während des
Zeilenrücklaufs, das nächste Bild/Änderungen ins Ram Kopiert.
Die Bildgenerierung (VGA/Pal mit RGB) liest dann nur noch blind die 
Daten
aus dem Ram. Somit sind Problemlos 320x240x32 erreichbar. Ganze ist dann
ähnlich dem HAM (Hold And Modify) verfahren des Amigas.
Mit 2 Speichbänken läßt sich sogar nur durch Schieberegister ein 
Horzintaler/Vertikalerer Scroller bauen.
20MIPS sind für eine solche Appilikation mehr wie aussreichend.
Ein CharRom im Flash des µC ist natürlich zwingend erforderlich.

Für ein RamUpdate hat man sogar bis zur ca. 32sten Zeile Zeit (PAL).

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
Noch kein Account? Hier anmelden.