TG68K.C am Amiga

TobiFlex

Kennt sich schon aus
Mitglied seit
23 November 2008
Beiträge
140
Punkte
18
Hallo,
Ich hab mal den 68000 aus einem A500 entfernt und dafür ein FPGA-Board angeschlossen. Darauf läuft mein stark verbesserter TG68K.C IP-Core. Der ersetzt einen 68000 vollständig. Und mit der ebenfalls auf dem Board realisierten Fastmemerweiterung kann sich die Geschwindigkeit auch sehen lassen - finde ich.

IMGP1233k.jpg

IMGP1228k.jpg



EDIT 23.02.10
Der TG68K.C Core läuft mit 40MHz und hat 8Byte ICache. Wenn man mit dem Cache noch etwas Aufwand treibt ist bestimmt noch eine Steigerung möglich.

Jetzt habe ich den ICache von 8 auf 16 Byte erhöht und schon ist der TG68K.C wieder um einiges schneller geworden.

Noch eine Anmerkung zum Minimig AGA. Dort wird noch der alte TG68 Core eingesetzt. Der TG68K.C ist komplett überarbeitet. Der alte Core brauchte zum Dekodieren des Opcodes immer einen eigenen Takt. D.h. Der schnellste Befehl benötigte 2 Takte. Beim TG68K.C ist der Decoder mit in die Pipeline eingearbeitet. D.h. jetzt wird nur noch ein Takt benötigt. In diesem Takt passiert folgendes gleichzeitig -> nächsten Befehl holen / Befehl dekodieren / letzten Befehl ausführen(stark vereinfacht).
Beim TG68 wurden in der Dekodierphase beim halben Takt(HL-Flanke) die Registerinhalt geholt. Beim TG68K.C geschieht das zum Ende der Dekodierphase(LH-Flanke). D.h der TG68K.C verträgt den doppelten Takt gegenüber dem TG68.
Also doppelter Takt * halber Ausführungszeit = 4 fache Power.
Und das der alte TG68 auch schon schneller als ein 68020 ist hat Jacub mit dem Minimig AGA festgestellt. Mit dem TG68K.C ist also noch eine Steigerung möglich die sich irgendwo zwischen 2x und 4x bewegen wird. Denn in einem realen System wird der CPU Core durch Speicher und Chipzugriffe gebremst.

Ich frage mich welche Befehle und Adressierungsarten des 68020 für AGA wirklich wichtig sind. Wenn man da etwas weglassen könnte (z.B. CALLM) dürfte ein Aufbohren des Core ja nicht so schwer sein - und schnell ist er ja schon.

IMGP1242k.jpg


EDIT 23.04.2010
Ein kleiner Fortschritt => ein kleines Foto.
Der TG68K.C läßt sich jetzt zwischen 68000 und 68010 umschalten.
Sysinfo kennt den TG68K.C nicht und kann daher die Taktfrequenz nicht korrekt berechnen. 280MHz sind auf jeden Fall falsch. Der TG68K.C läuft in diesem Setup mit 31,5MHz. Die "Balkenwerte" sind OK denke ich.

TG68K_68010.jpg

Viele Grüße
TobiFlex
 
Zuletzt bearbeitet:

Kronos

Wurde assimiliert
Mitglied seit
31 August 2008
Beiträge
2.885
Punkte
63
Hmm, kannste mir auf die Schnelle verraten was für ein Board das ist ? (sieht ja nach so einem Entwicklersystem aus) Was kost das, wieviel Luft ist noch im FPGA ? Gibt es grössere/schnellere Typen die kompatibel sind ? Jetzt auch in mit den 5V des Amigas ?

Sonst hätt ich im Moment keine Fragen ;)
 

Taschenlampe

Wurde assimiliert
Mitglied seit
28 Februar 2007
Beiträge
11.872
Punkte
63
Jetzt müsste man das ganze nur noch kleiner hinbekommen und fertig wäre die Turbokarte schlichthin für den A500/2000 etc. :)

Kannst mal den Speicherdurchsatz mit AIBB benchen?

Wie bist du auf die Idee gekommen an den A500 einen FPGA dranzubauen?
 

TobiFlex

Kennt sich schon aus
Mitglied seit
23 November 2008
Beiträge
140
Punkte
18
Das Board ist das DE2 von Terasic für 495€ und ist 22% belegt. 5V Typen gibt es meines Wissens nicht in der Größe. Schnelle FPGAs gibt es - die sind aber meist auch teurer.
Viele Grüße
TobiFlex
 

Kronos

Wurde assimiliert
Mitglied seit
31 August 2008
Beiträge
2.885
Punkte
63
Das Board ist das DE2 von Terasic für 495€ und ist 22% belegt. 5V Typen gibt es meines Wiiens nicht in der Größe. Schnelle FPGAs gibt es - die sind aber meist auch teurer.
Viele Grüße
TobiFlex


:confused: :confused:

Der Amiga hat doch 5V oder rieselt da bei mir schon der Kalk ? Mit wieviel mV der FPGA dann intern arbeitet ist mir ja auch egal, Hauptsache er ist 5V-resistent ;)

78% frei ? Hmmm, da kann man ja noch das ein oder andere Schweinerl reinpacken :D
 

Kronos

Wurde assimiliert
Mitglied seit
31 August 2008
Beiträge
2.885
Punkte
63
Mal gekookelt :
http:http://university.altera.com/materials/boards/de2///

> * ine In/Out, Microphone In (24-bit Audio CODEC)
Soundkarte !
> * Video Out (VGA 10-bit DAC)
GFX-Karte !
> * Video In (NTSC/PAL/Multi-format)
TV-Karte !
> * RS232
> * Infrared port
> * PS/2 mouse or keyboard port
> * 10/100 Ethernet
Netzwerk !
> * USB 2.0 (type A and type B)
Sind wohl kaum also Host zu gebrauchen
> * Expansion headers (two 40-pin headers)
Da hast du ja schon zugeschlagen

> * 8 MB SDRAM, 512 KB SRAM, 4 MB Flash
FastRAM, KickROM !
> * SD memory card slot
Harddisk !

:P
 

TobiFlex

Kennt sich schon aus
Mitglied seit
23 November 2008
Beiträge
140
Punkte
18
:confused: :confused:

Der Amiga hat doch 5V oder rieselt da bei mir schon der Kalk ? Mit wieviel mV der FPGA dann intern arbeitet ist mir ja auch egal, Hauptsache er ist 5V-resistent ;)

78% frei ? Hmmm, da kann man ja noch das ein oder andere Schweinerl reinpacken :D

Das Board hat schon Serienwiderstände zur Pegelanpassung vor den Steckverbindern. Im Cyclone-FPGA werden dann die PCI-Clampingdioden aktiviert. Da diese erst nach der Konfiguration des FPGAs aktiv sind muss unbedingt die Einschaltreihenfolge beachtet werden.
Bei einem Boardentwurf ist also die Pegelanpassung ein MUSSTHEMA.
 

Dadys_Toy

Wurde assimiliert
Mitglied seit
8 Juni 2008
Beiträge
3.349
Punkte
48
Standort
3k under
Was im stillen Kämmerlein immer wieder für Hardware entsteht :spitze:

Auch die Geschwindigkeit geht schon in Ordnung. Meine M-Tec1230 ist auch nur 1,52x schneller als der Basis-A1200. Also könnte es doch möglich sein in Zukunft neue bezahlbare Turbokarten für die Amigas zu erstellen. Bin ich echt dafür. :alogo1:

mfg :)
 

botfixer

Moderator
Teammitglied
Mitglied seit
31 Dezember 2005
Beiträge
5.966
Punkte
113
Standort
European Area 51
Hey cool,

das eine FPGA Implementation so schnell ist, hätte ich jetzt nicht erwartet.

Ich bin jetzt nicht so ganz auf dem Stand. Wie verhält sich die hier dargestellte Performance zu echten nativen 68K Karten (030, 040 oder 060)?


So eine Pegelanpassung ist jetzt nicht so ein Drama. Evtl. gibt es eine 5 Volt Toleranten FPGA oder CPLD mit dem man sowas machen kann.

Wie viele Macrozellen braucht man den für den 68K?
 

TobiFlex

Kennt sich schon aus
Mitglied seit
23 November 2008
Beiträge
140
Punkte
18
Hey cool,

das eine FPGA Implementation so schnell ist, hätte ich jetzt nicht erwartet.
Der TG68K.C Core läuft mit 40MHz und hat 8Byte ICache. Wenn man mit dem Cache noch etwas Aufwand treibt ist bestimmt noch eine Steigerung möglich.

Ich bin jetzt nicht so ganz auf dem Stand. Wie verhält sich die hier dargestellte Performance zu echten nativen 68K Karten (030, 040 oder 060)?
Das interessiert mich auch.

So eine Pegelanpassung ist jetzt nicht so ein Drama. Evtl. gibt es eine 5 Volt Toleranten FPGA oder CPLD mit dem man sowas machen kann.
5V tolerante FPGAs in passender Größe sind mir nicht bekannt. Aber zur Pegelanpassung gibt es passende Chips.

Wie viele Macrozellen braucht man den für den 68K?
Weniger als 4000LCs bei ALTERA. Andere Hersteller haben zum Teil andere Zählweisen - deswegen halte ich mich da zurück.
 

wawa

Wohnt hier
Mitglied seit
31 August 2007
Beiträge
1.981
Punkte
48
na, das war mal sowas von fällig. ich meine mich an ein statement erinnern zu können, softcores in fpga können nicht schnell genug werden, und jetzt das. die geschwindigkeit ist auf dem ersten blick durchaus vertretbar, so in der gegend von 030/40 nicht wahr? das de2 gibts auch schon ne weile und ist eigentlich echt billig, also mit einem custom fpga board liesse sich sicher noch was ausrichten. also ist das 050 softcore von natami team eventuell doch kein schwindel?
 

Kronos

Wurde assimiliert
Mitglied seit
31 August 2008
Beiträge
2.885
Punkte
63
die geschwindigkeit ist auf dem ersten blick durchaus vertretbar, so in der gegend von 030/50 nicht wahr? d

1.24 x A3000@25Mhz also eher 030@33MHz.

Inwieweit diese Werte praxisnah sind ist noch ne ganz andere Frage, 240.10MHz klingen irgentwie seltsam ...
 

botfixer

Moderator
Teammitglied
Mitglied seit
31 Dezember 2005
Beiträge
5.966
Punkte
113
Standort
European Area 51
Also wenn der Core sich so kompatibel verhält, dass man damit was anfangen kann (gehe ich jetzt mal von aus), dann könnte man eine sehr kleine TK bauen.

Mich würde jetzt mal ein konkreter Vergleich mit einen 030er@50MHz Interessieren.
 

wawa

Wohnt hier
Mitglied seit
31 August 2007
Beiträge
1.981
Punkte
48
ach übrigens, glückwunsch wollte ich sagen, bitte meine anmerkungen nicht als nörgeln nehmen. was ist das denn fürn mod neben dem leeren cpu sockel? ich kenne mich sowas von nicht aus mit a500 layout.

edit: habe mal mein vergleich zu 030/50 nach genaueren hinsehen heruntereditiert, aber mir gehts um die grossenordnung. dass ist ja ein reines 68000 core nur höher getaktet, nicht wahr? ohne cashes, ohne irgendwelche erweiterten befehlssätze, ohne superscalar. dh, das speicher-interface spielt sicher auch ne rolle. in dem zusammenhang sehe ich das einfach als ein zu erwartendes ergebnis, ohne den verdienst schmällern zu wollen. aber man kann es sicher noch steigern.

edit2: die schlimmsten typos...
 

boing4000

Wurde assimiliert
Mitglied seit
30 April 2007
Beiträge
20.699
Punkte
113
Standort
/home/
Hallo,
Ich hab mal den 68000 aus einem A500 entfernt und dafür ein FPGA-Board angeschlossen.

Puh echt starke Leistung! Sysinfo verrechnet sich ja gerne mal, aber 240MHz ist schon gut daneben ;). Mit dem echten Fastram ab $200000 auf dem FPGA Board hebt sich die gesamte Leistung natürlich extrem an! Somit läuft das gesamte Programm quasi ausserhalb der echten Amiga Hardware, rein auf dem FPGA und in seinem schnellen RAM. Das ist also schon eine Turbokarte.

Die Werte aus AIBB6.5 oder SysSpeed wären auch gut für einen Vergleich.
 
Oben