NKC Forum
Registrieren | FAQ | Suche | Wer ist online? | Mitgliederliste | Heutige Beiträge | Kalender | Einloggen



Autor Thema: Hardware Projekte
DerInder
Fast schon Admin
Seitenadmins
***
ID # 2


  Erstellt am 07. März 2007 09:44 (#1)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Moin Moin,

da es in unserer kleinen Communitie wohl doch ein paar parallel Entwicklungen bei Hardwarecomponenten gibt, halte ich es für sinnvoll, dass wir uns hier darüber austauchen/abstimmen.

Ich mach mal den Anfang:
Ganz oben bei mir auf der Liste steht eine GDP mit VGA-Anschluss. Es wird sich dabei aus einer Kombination eines CPLDs und eines Atmels handeln und soll im Endausbau voll kompatiebel zur GDP64 evtl. GDP64HS werden.
Derzeitiger Stand ist, ich bekomme ein Bild auf den Monitor :D Sprich das timming des CPLDs stimmt.

-----------------------
Gruß
-=jens=-

Beiträge: 912 | Mitglied seit: Juni 2004 | IP-Adresse: gespeichert
tasscaff
Kennt sich schon aus
**
ID # 54


  Erstellt am 07. März 2007 14:19 (#2)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Moin moin,

ich mach glein mal weiter:
z.Z. arbeite ich an der Fertigstellung des Projektes KEY4-Baugruppe = Anschluß eines PS/2-Desktops (Tastatur und Maus) an den NKC. Ich denke, daß ich nächste Woche damit fertig werde. Handbuch ist schon in Arbeit.
Danach wird eine Ramdisk mit 2MB als I/O-Baugruppe oder eine SER-Baugruppe mit 2 Kanälen zu 115kBaud auf Basis des 88C681 in Angriff genommen. Dazu bräuchte ich eben Infos zu der "Phantom"-Baugruppe SER2.

mfg. Gerald

Beiträge: 110 | Mitglied seit: April 2006 | IP-Adresse: gespeichert
DerInder
Fast schon Admin
Seitenadmins
***
ID # 2


  Erstellt am 10. März 2007 08:35 (#3)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Moin Moin,

bitte nicht wundern, ich hab den Tread etwas aufgeräumt ;)
Die restlichen Beiträge sind jetzt hier zu finden.

-----------------------
Gruß
-=jens=-

Beiträge: 912 | Mitglied seit: Juni 2004 | IP-Adresse: gespeichert
Gelöscht
Gelöscht

ID # 63


  Erstellt am 09. April 2007 18:41 (#4)  |  Zitat Zitat
Hallo,

zum Thema GDP64HS mit VGA Anschluss kann ich möglicherweise etwas beitragen. Und zwar arbeite ich seit einiger Zeit an einem Nachbau der GDP64HS in VHDL.
Der GDP9366 ist derzeit schon zu ca. 80% fertig.
- Command Decoder funktioniert und ist getestet.
- Vektor-Engine funktioniert und ist getestet.
- Character-Engine ist noch nicht ganz fertig.
- VGA-Engine (generieren des VGA-kompatiblen Signals) fehlt noch.

Als VRAM-Interface verwende ich ein FPGA-externes 8 bit breites SRAM. Mein Ziel ist es nicht den GDP pinkompatibel nachzubauen sondern nur funktionskompatibel. (Das aufwendige DRAM-Interface des Originals habe ich nicht nachgebaut, sondern durch ein einfacheres SRAM-Interface ersetzt).
Mit einem entsprechenden schnellen SRAM schafft mein Core bei gleicher Taktfrequenz (14 MHz) ca. die 2-3 fache Zeichengeschwindigkeit wie das Original.

Mein längerfristiges Ziel ist einen "Single-Chip" NDR Computer. Zumindest mit dem Z80 ist dies durchaus realistisch (Z80 Core habe ich schon von OpenCores).

MfG.
Andreas :)

IP-Adresse: gespeichert
DerInder
Fast schon Admin
Seitenadmins
***
ID # 2


  Erstellt am 09. April 2007 19:06 (#5)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Hallo Andreas,

bisher hab ich mich nicht an FPGAs rangetraut ;) Da mir VHDL irgendwie ein graus ist :rolleyes:

Welchen FPGA verwendes du? Vielleicht spring ich auch mal auf diesen Zug auf :)

Bei mir sah die Planung so aus: Timming und Co. macht ein CPLD, die Grafik- und Charakterfunktionen sollte ein Atmel liefern.

-----------------------
Gruß
-=jens=-

Beiträge: 912 | Mitglied seit: Juni 2004 | IP-Adresse: gespeichert
Gelöscht
Gelöscht

ID # 63


  Erstellt am 09. April 2007 19:48 (#6)  |  Zitat Zitat
Hallo,

ich arbeite beim GDP-Projekt mit einem Altera Cyclone FPGA (EP1C12).
Wenn man nur die GDP64HS betrachtet dann wird sicherlich ein sehr kleiner FPGA (wenn nicht sogar ein grösserer CPLD) ausreichen. Genauere Flächenangaben kann ich machen wenn alle Blöcke mal relativ fertig sind.

Bei meiner Lösung macht alles der FPGA. Die Auslagerung der komplexeren Befehle in einen AVR erschien mir performancetechnisch relativ ungünstig. Und einen Bresenham Linienalgorithmus in VHDL habe ich von einem meiner älteren Projekte "re-usen" können. Der Bresenham kann z.B. in jedem Takt einen neuen Pixel berechnen. Nur meine VRAM-Implementierung benötigt zwei Takte zum schreiben des Pixels (Read - modify - write), da der Speicher 8 bit (8 pixels) breit ist. Weiters kann mein GDP nicht nur in der horiz. und vertik. Austastlücke zeichnen wie das original sondern immer (egal ob Bilddarstellung ein oder ausgeschaltet ist), da mein Speicherinterface sehr viel schneller ist als das Original. Dadurch wird auch die Zeichengeschwindigkeit viel höher.
Nur mit dem Charakerfunktionen bin ich noch nicht fertig.

MfG.
Andreas

IP-Adresse: gespeichert
DerInder
Fast schon Admin
Seitenadmins
***
ID # 2


  Erstellt am 09. April 2007 21:52 (#7)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Hallo Andreas,

das hört sich doch schon sehr gut an :)
Mit welcher Bildschirmauflösung arbeitest du?
Ich hab bei mir 800x600 Pixel mit 60Hz gewählt, wobei ein Fenster von 512x512 Pixeln mittig benutzt wird (jede Zeile wird alledings 2 mal ausgegeben um auf 512x256 zu kommen).
Mit dieser kombi läuft das ganze absolut problemlos auch auf TFT Monitoren ;)
Mit deinen 2 Takten beim Read-Modify-Write kann ich allerdings nicht mithalten, da braucht mein 20MHz Atmel 6 Taktzyklen :(
Vielleicht ist deine Variante doch um einiges besser wie meine :eek:
Lass hören wenn da etwas mehr läuft.

-----------------------
Gruß
-=jens=-

Beiträge: 912 | Mitglied seit: Juni 2004 | IP-Adresse: gespeichert
Gelöscht
Gelöscht

ID # 63


  Erstellt am 10. April 2007 07:35 (#8)  |  Zitat Zitat
Hallo,

ich hatte an VGA-Auflösung (25 MHz Pixeltakt) gedacht um die 512 x 256 darzustellen. Aber wie gesagt dieser Teil ist noch nicht implementiert. Aber Deine 800x600 erscheinen mir sinnvoller. Vielleicht könnten wir uns hierbei etwas synchronisieren um Redundanzen vermeiden.
Welchen Pixeltakt verwendest Du (40 MHz) ?
Meine maximale Taktfrequenz ist derzeit 50 MHz für das ganze Design.
Der verwendete SRAM hat 10 ns (100 MHz) Zugriffszeit, hat also jede Menge Bandbreite sollte dies erforderlich sein (gleichzeitiges darstellen eines Bildes und schreiben ins VRAM ohne Performaceeinbussen).

PS. Ich werde meine Lösung natürlich freigeben sobald diese einigermassen fertig ist.

MfG.
Andreas

IP-Adresse: gespeichert
Gelöscht
Gelöscht

ID # 63


  Erstellt am 10. April 2007 07:58 (#9)  |  Zitat Zitat
Ach ja,
was mir bisher noch fehlt ist der Character-ROM-Inhalt. Wenn Du schon einen zum GDP9366 kompatiblen 5x8 Font besitzt dann würde mir das sehr viel Zeit sparen. :)
=> Ich werde daraus einen FPGA-internen ROM machen.

MfG.
Andreas

IP-Adresse: gespeichert
DerInder
Fast schon Admin
Seitenadmins
***
ID # 2


  Erstellt am 10. April 2007 08:08 (#10)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Moin Moin,

hier mal mein Timming:

Horizontal (Pixel):
Front Porch 40
Sync 128
Back Porch 88
Vorlauf 144
Aktiv 512
Nachlauf 144
Gesamt 1056

Vertikal (Linien):
Front Porch 1
Sync 4
Back Porch 23
Vorlauf 44
Aktiv 512
Nachlauf 44
Gesamt 628

Der Takt ist 40MHz, die Zählung der Pixel und der Linien beginne ich immer beim Aktiv (Bild), dadurch habe ich automatisch die richtige Adresse fürs RAM. Ach ja, ich gebe jede Linie im Aktiv-Bereich 2 mal aus, dadurch komme ich dann auf die 512x256 Pixel.
Dieses Timming entspricht exakt dem SVGA2 Timming und damit kommt eigentlich jeder Monitor klar. Bei deiner Variante würde es warscheinlich nur bei Röhren-Monitoren funktionieren.

Hmm, das Charakter-ROM hab ich leider nicht :rolleyes:

-----------------------
Gruß
-=jens=-

Beiträge: 912 | Mitglied seit: Juni 2004 | IP-Adresse: gespeichert
Gelöscht
Gelöscht

ID # 63


  Erstellt am 10. April 2007 09:35 (#11)  |  Zitat Zitat
Hallo,

schaut gut aus. Dieses Timing werde ich dann übernehmen.
Wie ist eigentlich der Status bei Deinem Projekt ?

MfG.
Andreas

IP-Adresse: gespeichert
DerInder
Fast schon Admin
Seitenadmins
***
ID # 2


  Erstellt am 10. April 2007 10:21 (#12)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Moin Moin,

nun der aktuelle Status ist: es liegt in der Ecke :(
Ich hatte in letzter Zeit fast keine Zeit/Lust daran weiterzuarbeiten ;)

Allerdings ist der CPLD fast fertig, nur die Anbindung des µCs ist noch nicht gut. Für den µC fehlt mir praktisch noch alles.

-----------------------
Gruß
-=jens=-

Beiträge: 912 | Mitglied seit: Juni 2004 | IP-Adresse: gespeichert
hschuetz
Administrator
Seitenadmins
******
ID # 3


  Erstellt am 10. April 2007 13:19 (#13)  |  Zitat Zitat   PN PN   E-Mail E-Mail   HP HP
Hallo,
ich denke ihr solltet zusammenarbeiten... vielleicht kommt dann eine gute Lösung heraus...
Gruß
Hans- Werner

-----------------------
Ob 8bit oder 16 oder 32 ist doch egal, Haupsache selbstgebaut!

Beiträge: 906 | Mitglied seit: Juni 2004 | IP-Adresse: gespeichert
Gelöscht
Gelöscht

ID # 63


  Erstellt am 10. April 2007 19:28 (#14)  |  Zitat Zitat
Hallo,

eine Zusammenarbeit halte ich auf jeden Fall für sinnvoll.

@Jens: wie hast Du die CPLD-Logik für die Bilddarstellung gemacht ? Vielleicht kann ich davon was wiederverwenden für mein GDP-Design.

MfG.
Andreas

IP-Adresse: gespeichert
DerInder
Fast schon Admin
Seitenadmins
***
ID # 2


  Erstellt am 10. April 2007 19:32 (#15)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Moin Moin,

zusammenarbeit ist gut :)

Ich hab meine(n) CPLD(s) mit Schaltplänen programmiert (das kann ich wenigstens). Ich glaub nicht, dass du davon viel nutzen kannst.
Mal sehen evtl. bekomme ich das Charakter-ROM :cool:

-----------------------
Gruß
-=jens=-

Beiträge: 912 | Mitglied seit: Juni 2004 | IP-Adresse: gespeichert
Gelöscht
Gelöscht

ID # 63


  Erstellt am 18. April 2007 22:14 (#16)  |  Zitat Zitat
Hallo,

das VHDL-Design der GDP64HS ist fertig. :D
Die Simulationsergebnisse der Grafiktests sind einwandfrei.
Der schwierigere Teil ist nun eine Platine dafür zu entwerfen. Vielleicht hat jemand Lust hierbei mitzuarbeiten, denn Platinendesign ist nicht so meine Stärke.

MfG.
Andreas

IP-Adresse: gespeichert
DrCRAZY
Stammgast
Seitenadmins
**
ID # 1



779-186-02
  Erstellt am 19. April 2007 02:28 (#17)  |  Zitat Zitat   PN PN   E-Mail E-Mail   HP HP
denn Platinendesign ist nicht so meine Stärke.

hihi , kenn ich ...
Bei meiner Uhr ist es auch so ..
Schaltung fertig , testlauf okai (z80)
die testplatine ist leider Abgeraucht (hatte sie auf einem gedrehten BUS falsch gesteckt und ein BUS (gefädelt) ist abgeraucht)
aber das Platinenlayout ist ner mein ding.

-----------------------
:: 32 Bit sind 24 Bit zu viel :: Es sei denn es ist Linux drauf ^^

Beiträge: 180 | Mitglied seit: Juni 2004 | IP-Adresse: gespeichert
tasscaff
Kennt sich schon aus
**
ID # 54


  Erstellt am 19. April 2007 08:38 (#18)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Moin moin,

ein Platinenlayout kann ich machen. Ich bäuchte dann aber einen Schaltplan; Entwurf reicht. Die Herstellung von Prototypenplatinen könnte danach Hans-Werner vielleicht organisieren.

mfg. Gerald

Beiträge: 110 | Mitglied seit: April 2006 | IP-Adresse: gespeichert
hschuetz
Administrator
Seitenadmins
******
ID # 3


  Erstellt am 19. April 2007 09:20 (#19)  |  Zitat Zitat   PN PN   E-Mail E-Mail   HP HP
Hallo Leute,
am besten wäre schon einmal ein Schaltbild.... evtl kann ich dann einen Kollegen dazu bewegen uns das zu layouten...
@Gerald.. ich hab noch keine Rückmeldung ob das mit deinen Gerberdateien hinhaut.. die PDF Datei ist nicht so dolle..
vielleicht solltest du auf Eagle umschwenken....
Gruß
Hans- Werner

-----------------------
Ob 8bit oder 16 oder 32 ist doch egal, Haupsache selbstgebaut!

Beiträge: 906 | Mitglied seit: Juni 2004 | IP-Adresse: gespeichert
tasscaff
Kennt sich schon aus
**
ID # 54


  Erstellt am 19. April 2007 09:32 (#20)  |  Zitat Zitat   PN PN   E-Mail E-Mail
Hallo Hans-Werner,

habe Dir das Layout als Gerberdaten gestern geschickt. Klappt das ?

mfg. Gerald

Beiträge: 110 | Mitglied seit: April 2006 | IP-Adresse: gespeichert



| https://hschuetz.selfhost.eu | Boardregeln | Datenschutzerklärung


Tritanium Bulletin Board 1.8
© 2010–2021 Tritanium Scripts


Seite in 0,029951 Sekunden erstellt
25 Dateien verarbeitet
gzip Komprimierung eingeschaltet
2235,20 KiB Speichernutzung