Robotrontechnik-Forum

Registrieren || Einloggen || Hilfe/FAQ || Suche || Mitglieder || Home || Statistik || Kalender || Admins Willkommen Gast! RSS

Robotrontechnik-Forum » Technische Diskussionen » KC auf FPGA, die nächste: KC85/4 » Themenansicht

Autor Thread - Seiten: -1-
000
15.11.2015, 14:46 Uhr
mb



Sooo, hier mal ein weiteres FPGA-Projekt: diesmal ist ein Nachbau des KC85/4 das Ziel. Funktioniert schon erstaunlich gut, ich würde das aber noch im Beta-Status sehen.

https://github.com/beokim/kc854fpga

Programme lassen sich über ein nachgebautes M003 vom PC aus übertragen. Die SIO ist ziemlich unvollständig implementiert: 8n1 ist fest und die ganzen exotischen Übertragungsarten fehlen. Der Tastaturersatz und Datenübertragung funktionieren damit allerdings. Da die serielle Schnittstelle auf den FPGA-Boards nur TxD und RxD besitzt sollte man es mit der Datenübertragungsrate nicht übertreiben (1200/2400 Baud sind ok, die Übertragung dauert aber...).

Als nächstes würde ich mir den fehlenden Hires-Grafikmodus mal anschauen. Gibt es da außer dem Fraktalgenerator und einigen Grafikprogrammen noch weitere Software die diesen Modus verwendet?
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
001
15.11.2015, 15:20 Uhr
maleuma



Klingt interessant.

Das Spiel Sokoban4 nutzt den HIRES-Modus für das Titelbild.
Du findest das im KC85-Labor.
--
Mario.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
002
15.11.2015, 15:44 Uhr
Enrico
Default Group and Edit


Das sind dann die ersten Schritte zum KC-Laptop.
--
MFG
Enrico
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
003
16.11.2015, 20:57 Uhr
mb




Zitat:
maleuma schrieb
Das Spiel Sokoban4 nutzt den HIRES-Modus für das Titelbild.
Du findest das im KC85-Labor.



Ok, gefunden. Hires wird jetzt unterstützt. Danke für den Tipp.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
004
21.11.2015, 06:51 Uhr
ralle



Nutzt du die normalen Speicherabzüge?
--
Gruß Ralle

Wenn Sie dazu neigen, Bedienungsanleitungen zusammen mit dem Verpackungsmaterial wegzuwerfen, sehen Sie bitte von einem derart drastischen Schritt ab!...
... Nachdem Sie das Gerät eine Weile ausprobiert haben, machen Sie es sich am besten mit dieser Anleitung und ihrem Lieblingsgetränk ein oder zwei Stunden lang in Ihrem Sessel bequem. Dieser Zeitaufwand wird Sie dann später belohnen...

aus KENWOOD-Bedienungsanleitung TM-D700
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
005
21.11.2015, 16:22 Uhr
Anonymous301




Zitat:
Enrico schrieb
Das sind dann die ersten Schritte zum KC-Laptop.



nen c64 laptop gibts ja schon.....
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
006
22.11.2015, 20:24 Uhr
mb




Zitat:
ralle schrieb
Nutzt du die normalen Speicherabzüge?



Ich habe zum Testen KCC-Files über die serielle Schnittstelle hochgeladen.

Zur Übertragung muss man den Tape-Header (die ersten 128 Bytes) weglassen und vor die Datei gehört noch die Zieladresse und die Anzahl Bytes. Ich habe das über ein Bash-Script (Verzeichnis /tape auf Github) durchgeführt. Ist allerdings etwas mühselig... Wie das genau funktioniert ist im Systemhandbuch Seite 121 beschrieben.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
007
01.04.2017, 17:03 Uhr
Giesberth

Avatar von Giesberth

Gibt es hier eigentlich etwas Neues.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
008
02.04.2017, 15:25 Uhr
ambrosius



Ja, einen sehr interessanten Vortrag zu diesem Thema in Garitz am gestrigen Sonnabend
--
Viele Grüße
Holger
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
009
02.04.2017, 15:46 Uhr
Micha

Avatar von Micha

Naja Jein!

Gestern hat Bert eine FPGA Implementierung vorgestellt, das war allerdings der Z1013, nicht der KC85/4.
Den Z1013 würde ich persönlich als den "ZX81 des Ostens" bezeichnen, wärend es für die Mühlhäuser KCs eher keinen Ost-West-Vergleich gibt.

Erinner mich, daß in Garitz vor zwei (oder drei?) Jahren mal der Zwischenstand einer Implementierung des KC85/4 auf FPGA vorgestellt worden war. Würde mich auch mal interessieren, wie weit jenes Projekt danach noch gekommen ist. Einziges Detail an das ich mich momentan erinnere: der Autor hatte hier einen Avatar aus "South Park" ?
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
010
02.04.2017, 19:24 Uhr
ambrosius



Hast vollkommen Recht, Micha - klar war das ein Z1013! Ich werde langsam alt ... aber wer soll auf den Treffen immer die riesige Typenvielfalt auseinanderhalten
--
Viele Grüße
Holger
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
011
04.04.2017, 21:55 Uhr
mb



Nun ja, aktuell gibt es nicht wirklich was Neues. Der Nachbau funktioniert ja bereits ganz gut.

Ein großer Knackpunkt ist immer noch die Tastatur. Normalerweise funktioniert sie ja, nur Spiele wie Digger machen da noch ziemliche Probleme. Ich hatte das mal debuggt: durch ein Feuerwerk an höher priorisierten CTC Interrupts wird der für Tastatur manchmal zu stark verzögert. Die gedrückte Taste wird dann nicht erkannt. Vermutlich müsste ich hier cheaten. Auf dem richtigen KC scheint das aber irgendwie zu funktionieren...

Ansonsten wäre Massenspeicher noch ganz nett.

Außerdem ist das verwendete Board (Terasic DE1) inzwischen doch ziemlich veraltet. Ich arbeite daher ab und zu an einem Port auf eins von den preiswerten Cyclone IV Boards (auf Ebay für ca. 50 Euro). Ein eigener Z1013, der nur mit dem internen Speicher auskommt war kein Problem. Für den KC müsste ich mich aber mal überwinden und einen Speichercontroller für den SDRAM schreiben... Die 4 MB Flash auf dem Board wären als Datenspeicher ganz interessant. Vielleicht baue ich deswegen den Z1013 erstmal noch etwas aus.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
012
08.04.2017, 11:28 Uhr
ad fontes



Ich hab ja auch mal an einem Z1013 - FPGA gewerkelt:
http://www.robotrontechnik.de/html/forum/thwb/showtopic.php?threadid=9276

und meld mich mal zurück. An welche FPGA-Platform ist den derzeit gedacht?
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
013
08.04.2017, 21:09 Uhr
selco



Ich würde mir den MiniMig als Platform wünschen.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
014
10.04.2017, 07:04 Uhr
ad fontes



Minimig hat einen Xilinx FPGA das kommt mit eigentlich entgegen. Allerdings scheint das board kaum noch lieferbar und recht teurer. (180€).

Ich hab mir die oben erwähnten Sourcen vom KC85/4 gezogen und schau mal das ich die für eine Xilinx -board, wahrscheinlich das digilent nexys 3 umsetze.

Gibt es inzwischen einen Tastaturumsetzer o.ä. das man auch eine USB-Tastatur leicht an einem FPGA betreiben kann? Eine PS2-fähige Tastatur zu finden war damals schon nicht einfach.

Die ähnliche Frage für den Monitor, VGA ist ja auch nicht mehr selbstverständlich, gibt das Projekte einen KC etc. an HDMI anzustecken? Oder bleibt ein zusätzlicher VGA zu irgendwas Adapter die erste Wahl?
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
015
10.04.2017, 07:16 Uhr
Creep



Hallo,

PS/2 Tastaturen gibt es noch billig bei Reichelt. Die Ansteuerung von USB per FPGA ist unverhältnismäßig aufwendiger und braucht wohl mehr Aufwand als ein kleines Z80 System.

Schaut euch doch mal den MiST an. Der bringt noch einen ARM mit für die Unterstützung der Peripherie, wie USB Tastatur und SD-Karte. Für den gibt es schon Cores von ZX81 über C64 bis Amiga. Auf dem noch den KC umzusetzen dürfte leicht möglich sein und erreicht dann auch eine große Fangemeinde, die sich über einen neuen Core freut.

Gruß, Rene
--
- Privatnachrichten bitte per Email. Mein Postfach ist immer knapp vor Überlauf -
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
016
10.04.2017, 07:53 Uhr
felge1966



Wenn ich so auf die Seite von lotharek.pl sehe, so scheint da aber auch ein Ende für die Plattform absehbar, denn er wirbt dort mit ...die letzten 40 Stück...
Für eine komplette Neuentwicklung ist das nicht die beste Basis - oder gibt es dazu belastbare Aussagen, daß das Teil (MiST) noch ein paar Jahre verfügbar ist?

Gruß Jörg
--
http://felgentreu.spdns.org/bilder/jacob120.gif
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
017
10.04.2017, 08:13 Uhr
Creep



Da könnte man mal beim Entwickler nachfragen. Zum einen wird der MiST auch noch woanders produziert, zum anderen gab esbschon Andeutungen über einen Nachfolger. Ich bin ja auch in den MiST Foren unterwegs und hab auchbwin wenig darauf "programmiert", war aber seit Dezember mehr mit anderen Projekten beschäftigt.

Gruß, Rene
--
- Privatnachrichten bitte per Email. Mein Postfach ist immer knapp vor Überlauf -
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
018
10.04.2017, 09:30 Uhr
Creep



Hier noch etwas Hintergrund zum MiST:

https://github.com/mist-devel/mist-board/wiki

Interessant wäre, ob man auch an die Layout-Files kommen kann. Als PDF sind sie ja verfügbar, wenn auch nicht sehr nützlich.

Gruß, Rene
--
- Privatnachrichten bitte per Email. Mein Postfach ist immer knapp vor Überlauf -
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
019
10.04.2017, 19:52 Uhr
selco



Den MiniMig kann man ja auch selber bauen, der ist ja komplett open Source. (Habe ich so gemacht)
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
020
10.04.2017, 21:04 Uhr
Bert



Ich hab ja den Z1013 auf dem MiST (Code kommt noch).
Die Platform bietet sich auch für den KC85 an.
So wie ich das sehe, gibt es vom MiST eine neue Version mit MIDI-Schnittstelle.

Im MiST wird die USB-Tastatur (sowie SD-Karte und Bedienmenü) von einem Mikrocontroller bedient, der zum FPGA hin PS/2 emuliert. Das funktioniert ganz gut.

Viele Grüße,
Bert
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
021
10.04.2017, 21:05 Uhr
paulotto



könnte man mit einem Bord mit einem ZYNQ (hat einen ARM9 schon intus) was anfangen?

Gruß,

Klaus
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
022
10.04.2017, 21:41 Uhr
ad fontes




Zitat:
paulotto schrieb
könnte man mit einem Bord mit einem ZYNQ (hat einen ARM9 schon intus) was anfangen?



Ja könnte man, hab ich auch (ZyBO-Board), mag aber nicht.

Es fängt damit an, das es keinen PS/2 oder COM-Port (DSUB-9) Anchluss hat, so das man diese an die Buchsenleiste fädeln muß. Dann gibt es wohl auch einen USB-Port mit dem einen UART nachstellen kann der ist aber mit dem ARM und nicht mit dem FPGA Teil des Zynq verbunden. Braucht man UART im FPGA muss man über die normalen GPIO - Pins gehen und muss also einen levelshifter fädeln. Einfach so den FPGA teil in ein PROM brennen und dann starten geht auch nicht, weil beim Zynq erst der ARM bootet und dann der FPGA-Anteil. Das verkompliziert die Image-Erstellung etwas. Und dann brauchts dafür eine neue Entwicklungsumgebung - Vivado mit der ich mir schwer tue. Da lob ich mir die ISE deren Bugs und Hintertürchen man inzwischen kennt, die aber keinen Zynq unterstützt.

Die bessere Lösung einen ARM als Coprozessor/Companion für ein FPGA-KC board zu nutzen ist IMHO der RasPi. Der bringt einige GPIO's und auch RS232 -pins mit, mit denen man relativ einfach mit normalen FPGA-Pins mit einem beliebigen FPGA-Board kommunizieren kann. Der RasPi kann so auch als Cardreader oder USB-Tastatur adapter dienen. Ist auch nicht größer als ein FPGA-Board und kostet in der kleinen Ausführung 25€.

Beispiel: http://catherineh.github.io/programming/2016/11/15/raspberry-pi-to-fpga-communication-example

MfG,
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
023
10.04.2017, 21:45 Uhr
Micha

Avatar von Micha

Ich hab zwar ein DE1 Board, aber glaub inzwischen der MiST ist ne interessante Alternative:
Die Idee, Routine-Aufgaben wie Zugriff auf SD-Card und PS-2 Tastatur vom FPGA auf nen Hilfsprozessor auszulagern, hat was.

Aus deutscher Sicht ist natürlich der Name zumindest lustig: wer ist denn auf die verrückte Idee gekommen, so einen Mist 'MiST' zu nennen?
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
024
10.04.2017, 21:45 Uhr
Creep




Zitat:
Bert schrieb
Ich hab ja den Z1013 auf dem MiST (Code kommt noch).
Die Platform bietet sich auch für den KC85 an.
So wie ich das sehe, gibt es vom MiST eine neue Version mit MIDI-Schnittstelle.

Im MiST wird die USB-Tastatur (sowie SD-Karte und Bedienmenü) von einem Mikrocontroller bedient, der zum FPGA hin PS/2 emuliert. Das funktioniert ganz gut.

Viele Grüße,
Bert



Hallo Bert,

an dem Code wäre ich auch sehr interessiert. Ich hab mir aus dem MiST ja einen quasi-Laptop gebastelt, um immer alle Systeme dabei haben zu können. Mit dem "multicomp" auf dem MiST hab ich meine ersten Versuche gemacht (basierend auf einem schon vorhandenen Stand) und wollte das eigentlich auch bis zur CP/M-Fähigkeit weiterführen, hatte aber noch nicht die Zeit, mich mit SDRAM- und SD-Card Anbindung zu beschäftigen.

Gruß, Rene
--
- Privatnachrichten bitte per Email. Mein Postfach ist immer knapp vor Überlauf -
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
025
10.04.2017, 21:48 Uhr
Creep




Zitat:
Micha schriebAus deutscher Sicht ist natürlich der Name zumindest lustig: wer ist denn auf die verrückte Idee gekommen, so einen Mist 'MiST' zu nennen?


Immerhin stammt das Ding ja von einem Deutschen (Till Harbaum) und war ursprünglich als ATARI Emulator, als Mini ST oder MiST geplant

Gruß, Rene
--
- Privatnachrichten bitte per Email. Mein Postfach ist immer knapp vor Überlauf -
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
026
10.04.2017, 22:05 Uhr
paulotto



danke Volker für Deine Ausführungen.

Gruß,

Klaus
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
027
10.04.2017, 22:11 Uhr
ad fontes




Zitat:
Micha schrieb

Aus deutscher Sicht ist natürlich der Name zumindest lustig: wer ist denn auf die verrückte Idee gekommen, so einen Mist 'MiST' zu nennen?



Grmh, wollte wissen, was des kost und hab bei Google nach "MiST kaufen" gesucht. Jetzt wühl ich mich durch diese Sch* ...
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
028
11.04.2017, 06:21 Uhr
srn

Avatar von srn


Zitat:
ad fontes schrieb
Grmh, wollte wissen, was des kost und hab bei Google nach "MiST kaufen" gesucht. Jetzt wühl ich mich durch diese Sch* ...


Kannst Du doch bei "Lotharek" sehen
http://www.lotharek.pl
--
http://www.kc-und-atari.de/ --- M004
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
029
11.04.2017, 06:54 Uhr
ad fontes




Zitat:
srn schrieb
Kannst Du doch bei "Lotharek" sehen
http://www.lotharek.pl



Ja ich weiß 200 Oggen, plus ca.20 Oggen für Versand. Ich finde es nur amüsant das google bei Mist kaufen tatsächlich Angebote für Versand von Pferdemist präsentiert, beispielsweise von amazon in der Rubrik "Küche und Haushalt" ?! ...

Also da überleg ich mir mal ein Konzept um möglichst beliebige Images für die verschiedenen FPGA-Boards zu generieren. Knifflig ist wohl Videospeicher aus den OnBoard Speicher nachzubilden.

Wie schnell ist eigentlich das Kasetteninterface von KC und Z1013 (PIO) "firmwaremäßig" nutzbar? Also wenn die bits statt vom Tape von einem RAM mit einem Image kommen - wie lang dauert es dann mit der originalen Firmware ein Programm zu laden? ich schätze so mit 100 kbit/sec also ca 10 sec für 64 kbyte? Das wäre IMHo akzeptabel und ein Hintertür zum Z80-Speicher schreiben nicht zwingend nötig. Oder ist garnicht der Tonkopf der Kasette der einzige Flaschenhals sondern der Datentransfer über die PIO?
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
030
11.12.2018, 13:14 Uhr
f_richter



Der ZXUNO wäre auch gut dafür geeignet.
http://zxuno.speccy.org/index_e.shtml
Und einen Spectrum und diverse andere Cores gibt es dafür schon.
Hardware: Xilinx Spartan 6 XC6, 2MB SRAM und 16MB Flash.
Ich habe einen und habe letzes Jahr schon Z1013,KC87,AC1,LLC2 zum laufen gebracht.
Den KC85 zu portieren hatte ich angefangen, allerdings waren meine VHDL und vor allem KC85 Kentnisse zu schwach um den Videocontroller auf einen 8 Bit RAM umzubauen.
Das Design von oben https://github.com/beokim/kc854fpga benutzt einen 16 Bit SRAM.

Viele Grüße

Dieser Beitrag wurde am 11.12.2018 um 13:15 Uhr von f_richter editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
031
12.12.2018, 01:59 Uhr
mb




Zitat:
f_richter schrieb
Der ZXUNO wäre auch gut dafür geeignet.
http://zxuno.speccy.org/index_e.shtml
Und einen Spectrum und diverse andere Cores gibt es dafür schon.
Hardware: Xilinx Spartan 6 XC6, 2MB SRAM und 16MB Flash.
Ich habe einen und habe letzes Jahr schon Z1013,KC87,AC1,LLC2 zum laufen gebracht.
Den KC85 zu portieren hatte ich angefangen, allerdings waren meine VHDL und vor allem KC85 Kentnisse zu schwach um den Videocontroller auf einen 8 Bit RAM umzubauen.
Das Design von oben https://github.com/beokim/kc854fpga benutzt einen 16 Bit SRAM.

Viele Grüße



Das wird leider keine besonders einfache Aufgabe, wenn ich den Schaltplan richtig entziffere, dann gibt das Board nur Composite aus oder? D.h. du müsstest den Videocontroller auf PAL umbauen. Momentan gibt er VGA mit einer Auflösung von 1024x768@60Hz aus. Das Blinksignal (wichtig für einige Spiele) wird von 50Hz auf 60Hz synchronisiert, damit sieht das halbwegs original aus. Es gibt auch 2 Taktdomänen (Takt in der Videoausgabe war etwas zu hoch für den Rest).

Für PAL brauchst du das nicht und müsstest es im Prinzip eh fast komplett neu schreiben. Die Videoausgabe erfordert nicht mehr einen so hohen Takt und du könntest das gesamte Design auf ein Vielfaches des Videotaktes umbauen. Damit fallen die beiden unterschiedlichen Taktdomänen weg und die Videoausgabe wird deutlich einfacher.

Eine andere Baustelle ist das Bankswitching (memcontrol). Die Logik welcher Ram/Rom wann zu sehen ist kannst du übernehmen (ist ausführlich im Quelltext dokumentiert). Im KC können Speicherbereiche an der gleichen Adresse stehen, in solchen Fällen habe ich dann das obere und untere Byte der 16 Bit benutzt und die Bereiche stehen nebeneinander im SRAM. Der Videobrereich ist etwas speziell, hat im SRAM seinen eigenen Adressbereich und wird bei Bedarf an der richtigen Adresse eingeblendet. Die Umschaltung zwischen den beiden Hälften müsstest du auf ein Adressbit umbauen.

Problematisch ist eigentlich nur der Zugriff der Videohardware. Die Farb- und Pixeldaten liegen in den 16 Bit nebeneinander und werden mit einem Zugriff ausgelesen. Das geht mit 8 Bit natürlich nicht mehr und du brauchst 2 Zugriffe.

Beim Bootvorgang müsstest du noch beachten, dass er etwas anders als im normalen KC abläuft. Die 3 Roms liegen erstmal nur komprimiert in einem 16kB Blockram vor. Sie müssen ausgepackt und an die richtige Stelle mit Speicher kopiert werden. Danach werden die Bereiche schreibgeschützt und der KC kann wie gewohnt starten. Das spart Blockrams und vereinfacht das Bankswitching etwas: der Ram ist durchgängig von 0 bis 64k und nur der Videoram muss bei Bedarf eingeblendet werden. Geht mit 8 Bit leider auch nicht mehr so ganz einfach. Du müsstest die 2. RAM8-Bank und das Basic-Rom in einen anderen Bereich des SRAM verlegen.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
032
12.12.2018, 08:50 Uhr
f_richter



Hallo,
Vielen Dank für die Rückmeldung und die Tipps.
Das Board kann beides PAL/NTSC und VGA über die Steckleiste auf der linken Seite.
Die für die anderen Cores habe ich auch 1024x769@60Hz benutzt.
Mein größtes Problem, war der 16Bit Zugriff auf die Farb- und Pixeldaten, ich hatte aber auch nie wirklich mit einem KC85 näher zu tun und kenne mich mit dem Speicherlayout nicht aus.
Vielleicht sollte man für das Stück mit dem 16Bit Zugriff einfach ein Stück Blockram verwenden?
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
033
12.12.2018, 12:13 Uhr
kaiOr

Avatar von kaiOr

Der VTG holt die 2x8Bit schön hintereinander weg (sonst hätte mein Umbau damals auf Dual-Port-SRAM nicht funktioniert) und packt die in ein Latch. Ich musste aber glaube für den 4-Farben-Modus noch ein zusätzliches Latch verbraten, dafür konnte ich die ganze MUX-ifizierung rausklimpern und wahlweise auch den bremsenden WAIT zum U880. Ein async. Dual-Port-Zugriff ist aus meiner Sicht absolut notwendig, wenn man dem KC Feuer unterm Hintern machen will.
Dieser Beitrag wurde am 12.12.2018 um 12:16 Uhr von kaiOr editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
034
12.12.2018, 13:09 Uhr
f_richter



Ok, Du hast das mit echter Hardware gebaut?
Im FPGA wäre Dualport ja vorhanden, wie groß müsste der dann sein?
Vielleicht komme ich über Weihnachten mal dazu das mir nochmal anzusehen, mein Versuch ist schon etwas her.
Gruß
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
035
12.12.2018, 19:30 Uhr
mb




Zitat:
f_richter schrieb
Ok, Du hast das mit echter Hardware gebaut?
Im FPGA wäre Dualport ja vorhanden, wie groß müsste der dann sein?
Vielleicht komme ich über Weihnachten mal dazu das mir nochmal anzusehen, mein Versuch ist schon etwas her.
Gruß



Im echten KC gibt es 64kB Videospeicher (in 4 Pages a 16k). D.h. das Blockram im SLX9 würde normalerweise nicht reichen. Allerdings benutzt der KC nur die erste Seite komplett, bei den anderen gibt es unbenutzte Bereiche (ein Teil von der ersten Seite ist immer sichtbar). Du bräuchtest also 8+3*5=23 Blockrams. Hmm, oder nur den wirklich notwendigen Teil in den Blockram packen und den Teil ab A800 aus dem SRAM lesen? Dann brauchst du nur noch 20 Blockrams... Von den 32 Blockrams im SLX9 bleiben also noch ein paar über. Hier ein Bild wie der Aufbau des Speichers aussieht:

https://www.iee.et.tu-dresden.de/~kc-club/05/BOOK06/0506-012.GIF

Bleibt nur zu hoffen, dass die ISE nicht versucht das zu optimieren und dir da netterweise einfach 1 Bit x 16k (x32) Blockram draus macht .

Wenn du den kompletten Video-RAM in den Blockram bekommst, dann könntest du den Video-Teil vereinfachen. Blockram ist recht praktisch um Daten in unterschiedliche Taktdomänen zu bekommen (hier KC-Bereich und VGA-Ausgabe). Der Cyclone II von meinem Board hatte aber nicht genug davon um den Video-Speicher komplett abzubilden. Ich konnte die Daten daher immer nur zeilenweise übertragen. Der VGA-Bereich sagt dann nur noch welche er als nächste haben möchte. Diese Logik könntest du rauswerfen, den Blockram gleich im Dual-Port Modus verwenden und das Design dadurch vereinfachen.

Noch was anderes: ISE kann also inzwischen den T80 übersetzen? Hatte das vor langer Zeit mal probiert und wenn ein Spartan 6 eingestellt war, dann gab es recht schräge Übersetzungsfehler. Für Spartan 3 ging das dagegen problemlos... Das lag wohl an den unterschiedlichen Toolchains für die beiden Familien. Man konnte das scheinbar irgendwie umstellen...
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
Seiten: -1-     [ Technische Diskussionen ]  



Robotrontechnik-Forum

powered by ThWboard 3 Beta 2.84-php5
© by Paul Baecher & Felix Gonschorek