Hallo! Baue gerade einen Testbildgenerator mittels FPGA für TV und Monitore. Der Monitorteil funktioniert, jetzt meine Frage an die Spezis unter euch, gibt es evtl. ein IC das mir das RGB-Signal in ein brauchbares FBAS-Signal wandelt? Möchte mir nicht die einzelnen Spannungsamplituden für das FBAS mit einem DAC erzeugen. Desweiteren bin ich auf der Suche nach einem Programm mit dem ich z.B. aus einer Bitmap-Datei eine Tabelle für ein EEPROM erzeugen kann wo dann die einzelnen Pixel des Bildes gespeichert sind. So wären dann die Testbilder beliebig erweiterbar. Vielen Dank!
Hi Schnagg! Probiere es doch mal mit dem MC1377, ist ein RGB->FBAS WandlerIC. Da hast du dann dein Videosignal mit dem du über AV in den TV kannst, du kannst dann aber noch einen VHF-Modulator dahinter setzen mit dessen Ausgang du dann zur Antenne rein kannst. Zu dem gesuchten Programm kann ich dir leider nichts sagen. Würde mich aber ehrlich gesagt auch mal Interressieren ob es da was gibt!! Gruß Marco
Zum Programm kann ich nur sagen, das dürfte nicht schwer sein, je nach dem in welchem format du die Daten am ende haben willst, aber wenn die eingangs Daten Windows Bmp´s sind, ist es echt einfach, die zu konvertiern. Bitmapstruktur: http://de.wikipedia.org/wiki/Windows_bitmap Wenn du willst helf ich dir beim umwandeln, wenn ich von dir schaltplan und co bekomm ;-). michi-schroeder[at]t-online.de
Ist das Projekt inzwischen fertig geworden? Son FPGA der nen Videosignal (am besten mit eingebautem Bildspeicher der anzuzeigenden Daten) liefert wäre schon was feines :)
Hallo, ich hab sowas erst gebaut ... nachdem mir eine Zeitung (die ich namentlich nicht erwähne) mir erst die Veröffentlichug zugesagt hatte und dann plötzlich nach einem halben Jahr mit Kommentaren wie "pal ist nicht mehr so interessant" gekommen ist, seh ich jetzt auch keinen Grund mehr das Projekt nicht baldmöglichst Publik zu machen. Hier gibts mal einen Überblick von dem Projekt: http://www.oxed.de/index.php?open=3&sub=7&side=pal/overview.html und hier gibt es paar Bilder, die über eine PC-TV-Karte gecaptured wurden: http://home.in.tum.de/~pototsch/graphiti/ Ich feil schon lang an einer neuen Webseite, auf der es dann auch mal was zum Download geben soll ... Einen Account bei OpenCores hab ich mir schon zugelegt. Mfg Thomas Pototschnig
Nachtrag: Meine Webseite ist im moment nicht mehr so aktuell ... das Ding hat zur Zeit ein SPI-Interface. Wishbone ist evtl geplant. Das Parallelle asynchrone Interface wirds wohl so schnell garnicht geben. Als Portierung hab ich: - Spartan-III (passt in einen 200k Gater) und - Altera EP1C12F256 (~30% voll) Intern wird noch fast zu genau gearbeitet ... Wäre interessant wie klein man den Core kriegen kann, wenn man dafür eine schlechtere Qualität in Kauf nimmt.
Respekt das sieht echt klasse aus!!! Wie siehst du die Chance für nen Anfänger solch einen FPGA zu proggen? Kann man pixel einzeln setzen/löschen? Oder nur fertige Bilder laden.
Danke ^^ Das Hauptproblem ist wohl die Plattform. Mit einem Spartan-3/Altera Entwicklungsboard alleine ist es nicht getan. Der Pal-Encoder braucht noch 1MB SRAM für den Bildschirmpuffer organisiert als 512K*16 oder parallel zwei mal 512K*8 (16bit datenbreite ist wichtig sonst geht nichts) und dem DAC und Videoverstärker. Wenn das Dev-Board den RAM schon hat (ich hatte 15ns verwendet ... der reichte aus) ists nicht mehr schlimm. Die Platine mit dem DAC ist gleich geätzt ... Die VHDL-Anpassungen wären nicht weiter schlimm - im Grunde nur neue Pinzuweisungen. Zu den Pixeln: Das funktionierte so, dass man über die SPI-Schnittstelle einen Adresspointer für die aktuelle Pixelposition im Bildschirm-RAM setzen konnte und mit jedem weiteren Schreibbefehl wurde dann das Pixel gesetzt und der Pointer gleich um 1 erhöht. Dabei werden immer 16Bit (RGB) auf einmal gesetzt. Mfg Thomas Pototschnig
Hast du ne übersicht wieviel sone Platine kosten würde die du auf deiner Homepage vorgestellt hast? (also allein die Bauteile die Platine mal noch nicht eingerechnet)
Das EVAL Board hätte das RAM, es ist aber nicht Dual-Ported. Das müsste man selber realiseren, womit nur maximal die halbe Datenrate nach Aussen über wäre. Da e aber ein DDR ist müsste man die volle Bandbreite zum RAM hin eigentlich ausnutzen können, wenn man Schreiben und Lesen alternierend schachtelt. Ich habe aber kein Gefühl dafür, wie schnell der Spartan das kann. Bei 80MHz würde man mit multiplexten Ports auch ohne Verrenkungen noch 40MHz bidirektionalen Zugriff hinbekommen. Das würde für 800x600@72 reichen.
@Läubi: Hmm ... ich hatte das mal überschlagen und bin (inkl Platine, wenn man ein paar Stück mehr macht) auf ca 40EUR gekommen. @Xilinxuser: Das RAM das ich verwendet hab ich auch kein Dualported-RAM. Es ist ein schlichtes SRAM. Der FPGA koordiniert die Lese- und Schreibzugriffe auf das SRAM - quasi ein "Cycle-Shared-RAM", bei dem ein Schreib und Lesezyklus von 2 unabhängigen Bussen gleichzeitig passieren darf und die interne Statemachine läuft mit dem 4fachen Takt und erzeugt in einem Zyklus dann effektiv zwei Zugriffe auf das RAM. Das klappt auch wunderbar. Getestet ist es aber bisher nur, dass von dem einen Bus geschrieben, vom anderen nur gelesen wird. Die Datenrate ist 30MB/sec pro Bus (15MHz mit 16Bit Datenbreite pro Bus; die Statemachine läuft auf 60MHz - das kann der Spartan noch gut) Die Auflösung des Pal-Encoders ist 780*576 @16Bit bei 50Hz Halbbildern. Und das was rauskommt ist nicht für einen VGA-Monitor, sondern es kommt ein digitales PAL-Signal raus. Ein Speicherinterface für SDRAM und DDR-SDRAM hab ich bisher noch nie implementiert und kann dazu dann garnichts sagen. Ich muss mich dann mal ranhalten, dass ich mal endlich fertig werde mit meiner neuen HP ... dann gibts das Ding auch zum Runterladen. Mfg Thomas Pototschnig
du meisnt ein analoges PAL Signal oder? 40€ sind ja fast schon tauglich, man hätte dann ja ein TV taugliches Interface für µC, womit man sogar eine kleine Spielekonsole bauen könnte.
Was ist denn ein "digitales" PAL-Signal? Wenn es nur das niederbandige Fernsehsignal (12MHz) geht, kann man das auch mit einer Transistormischstufe über R und einer Diode fürs blank lösen. Der FPGA kann dann z.B. 6 Farbstufen durch 5faches Übertakten realisieren. 00000, 00100, 01010, 10101, 11011, 11111. Das wären dann 12x5 = 60 Mhz.
Bei Dontronics ist ein uC USB/V24 VGA CHIP ist das was ???? ca 20Euro
@Läubi: Das Ding hatte ich extra als Grafikkarte für µCs, an denen ein kleiner TFT mit PAL-Videoeingang angeschlossen wird, entwickelt. Aber in die endgültige Applikation wurde er noch nicht itegriert. Am SPI muss ich noch etwas feilen, weil der noch etwas lahm ist. Aus verschiedenen Timinggründen haut das noch nicht so schnell hin, wie es gehen könnte. @Xilinxuser: Ein digitales PAL-Signal ist ein Analoges PAL-Signal, bevor es von digital nach analog gewandelt wurde. Ganze 6 Farbstufen? Da kann mein PAL-Signal mit voller Auflösung und 16Bit Farbtiefe natürlich nicht mithalten ;-) Ne aber im ernst - genau das ist es, was ich immer etwas schade finde. Es es gibt tausend schlechte Lösungen, aber so gut wie keine Guten. Das PAL-Signal was beim FPGA rauskommt hat schon annähernd Broadcast-Qualität. Der 10Bit DAC (bis zu 16Bit wenn man einen anderen DAC verwendet) läuft auf 45MHz und da gibts kaum einen PAL-Encoder, der die Präzision hat. Auch die ganzen Timings, Farbträgerfrequenz usw sind naherzu exakt. Wenn man es genau nimmt, ist das für die normale Verwendung schon fast zu genau. Den Core könnte man daher noch um einiges shrinken und die Qualität würde wohl dann noch "gut genug" bleiben. Dann wär auch Platz für eine z.B. eine Soft-CPU. Wen es interessiert, hier mal ein Blockschaltbild: http://home.in.tum.de/~pototsch/blockschaltbild.png Mfg Thomas Pototschnig
@holger: Bei Deutronic hab ich gekuckt, aber das Ding nicht gefunden. Hast du einen Link? Mfg Thomas Pototschnig
Hier der Link, sonst nach VGA im Shop suchen. http://www.dontronics-shop.com/product.php?productid=16389&cat=262&page=1
@Thomas http://www.dontronics-shop.com/product.php?productid=16145&cat=0&page=1 Is nur das Base Board. Einfach in shop nach VGA suchen. Da sind auch pdf's drin. Mus man aber suchen. Die Page ist nich so userfreundlich gemacht. Ich habe mal bei google unter Stichwort AVR VGA aber unter Bilder suchen. Nicht im Web suchen. also nur unter Bilder anklicken, Links mit uC-VGA Kopplung gefunden aus dem Jahr 2005 auch welche aus hier aus dem Forum. mit Source-Code. http://www.tvterminal.de/ ist die lowcost. VGA an uC ist ne Marktlücke. Und das in Australia ??? 1985 nem 2MHz 6809 hatten wir GDC mit Color ScaledTextFonts und Grafik. 800*600. Das Ding an nem AVRuc mit USB<->GDC für ProzessVisual wow.
@Thomas Holger wrote: > VGA an uC ist ne Marktlücke. Nö, sowas gibt es als 2 Chip Lösung: S1D13506. Auf der einen Seite hat man einen 16bit Datenbus, auf der anderen Seite ein TV/VGA/LCD/TFT Anschluss. Man kann sogar LCD/TFT und TV/VGA gleichzeitig betreiben. Die ältere Version (S1D13504 ohne internen RAMDAC) bekommt man bei CSD für 15€. Dazu braucht man dann noch ein 512kB-1MByte DRAM. Was sind das für ICs auf den Micro VGA Boards ? Immerhin werden bei 640x480 rund 300kByte RAM benötigt. Ein schneller uC hat nicht soviel intern, vielleicht ein FPGA mit Blockram ? Oder doch ein ASIC ?
falls es noch jemanden interessiert: > Ich feil schon lang an einer neuen Webseite, auf der es dann auch mal > was zum Download geben soll ... Einen Account bei OpenCores hab ich mir > schon zugelegt. Das Projekt ist jetzt vollständig auf OpenCores: http://www.opencores.org/projects.cgi/web/graphiti/overview Mfg Thomas Pototschnig
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.