Schachcomputer.info Community

Zurück   Schachcomputer.info Community > Schachcomputer / Chess Computer: > Technische Fragen und Probleme / Tuning


Antwort
 
Themen-Optionen Ansicht

  #11  
Alt 13.02.2007, 17:32
Benutzerbild von EberlW
EberlW EberlW ist offline
Lebende Foren Legende
 
Registriert seit: 09.01.2005
Ort: Leverkusen-Küppersteg
Alter: 58
Land:
Beiträge: 3.111
Abgegebene Danke: 45
Erhielt 58 Danke für 43 Beiträge
Aktivitäten Langlebigkeit
0/20 20/20
Heute Beiträge
0/3 sssss3111
AW: schnelle 6502 Prozessoren

Ja, das mit der übrigen Hardware ist natürlich so eine Sache. Wenn man jedoch auf Basis eines "Turbo-Kits" arbeiten würde, sind mit heutigen Mitteln sicher sehr hohe Taktraten möglich. Unter Umständen dürfte die Zusatzelektronik so klein ausfallen, dass man sie in die größeren Geräte gleich mit einbauen kann (also keinen "Schuhkarton" danebenstellen muss). Ob man wohl an einen Schaltplan des "Turbo-Kits" herankommen kann?

Zehnfache Taktung würde im Mittel zwei Halbzüge mehr bedeuten - keine schlechte Ausbeute und für so manche 6502-Kiste wäre das genau der richtige "Kick" um mit den "dicken Brummern" mithalten zu können.

Stellt sich nur die Frage nach dem finanziellen Aufwand für ein solches Projekt...

Gruß, Willi
Mit Zitat antworten
  #12  
Alt 16.02.2007, 14:32
Mo Sai Mo Sai ist offline
MACH IV
 
Registriert seit: 23.01.2007
Beiträge: 157
Abgegebene Danke: 3
Erhielt 31 Danke für 21 Beiträge
Aktivitäten Langlebigkeit
1/20 18/20
Heute Beiträge
0/3 ssssss157
AW: schnelle 6502 Prozessoren

Hi Willi,

 Zitat von EberlW
... Zehnfache Taktung würde im Mittel zwei Halbzüge mehr bedeuten - keine schlechte Ausbeute und für so manche 6502-Kiste wäre das genau der richtige "Kick" um mit den "dicken Brummern" mithalten zu können.
Stellt sich nur die Frage nach dem finanziellen Aufwand für ein solches Projekt...
Wie ist es eigentlich mit aus EPROMs ausgelesenen Programmen auf Emulatoren, die 6502-Prozessoren simulieren? Dann hätten wir doch unsere Lieblinge mit 3GHz ?!
Habe selbst von solchen Emulatoren keine Ahnung, sondern das Thema nur irgendwo aufgeschnappt. Vielleicht weiß ja jemand mehr darüber.

Herzliche Grüße.
Mo Sai
Mit Zitat antworten
  #13  
Alt 16.02.2007, 20:58
Benutzerbild von Mach2000
Mach2000 Mach2000 ist offline
Mephisto Genius 68030
 
Registriert seit: 29.01.2007
Ort: Mainz
Alter: 54
Land:
Beiträge: 321
Abgegebene Danke: 21
Erhielt 18 Danke für 9 Beiträge
Aktivitäten Langlebigkeit
0/20 18/20
Heute Beiträge
0/3 ssssss321
AW: schnelle 6502 Prozessoren

 Zitat von Mo Sai
Hi Willi,


Wie ist es eigentlich mit aus EPROMs ausgelesenen Programmen auf Emulatoren, die 6502-Prozessoren simulieren? Dann hätten wir doch unsere Lieblinge mit 3GHz ?!
Habe selbst von solchen Emulatoren keine Ahnung, sondern das Thema nur irgendwo aufgeschnappt. Vielleicht weiß ja jemand mehr darüber.

Herzliche Grüße.
Mo Sai
Genug Emulatoren für 6502 Prozessoren gibt es, einige davon auch quelloffen (selbst Mame, eigentlich ein Spielhöllenautomatenemulator kennt den Proz). Neben dem Prozessor muss aber auch die Peripherie emuliert werden (beispielweise die Art mit der Züge eingegeben werden, die Displays etc.)

Ein paar Emus findet man hier:
http://www.6502.org/crossdev/emu/

Gruß Mike
Mit Zitat antworten
  #14  
Alt 19.02.2007, 18:19
Mo Sai Mo Sai ist offline
MACH IV
 
Registriert seit: 23.01.2007
Beiträge: 157
Abgegebene Danke: 3
Erhielt 31 Danke für 21 Beiträge
Aktivitäten Langlebigkeit
1/20 18/20
Heute Beiträge
0/3 ssssss157
AW: schnelle 6502 Prozessoren

Hi all,

 Zitat von Mach2000
Neben dem Prozessor muss aber auch die Peripherie emuliert werden (beispielweise die Art mit der Züge eingegeben werden, die Displays etc.)
Heißt das, dass die Realisierung nicht so einfach ist?

Herzliche Grüße.
Mo Sai
Mit Zitat antworten
  #15  
Alt 19.02.2007, 21:35
Benutzerbild von Mach2000
Mach2000 Mach2000 ist offline
Mephisto Genius 68030
 
Registriert seit: 29.01.2007
Ort: Mainz
Alter: 54
Land:
Beiträge: 321
Abgegebene Danke: 21
Erhielt 18 Danke für 9 Beiträge
Aktivitäten Langlebigkeit
0/20 18/20
Heute Beiträge
0/3 ssssss321
AW: schnelle 6502 Prozessoren

 Zitat von Mo Sai
Hi all,


Heißt das, dass die Realisierung nicht so einfach ist?

Herzliche Grüße.
Mo Sai
Nicht ganz so einfach wie man denken könnte. Wenn man mal ein MMIV öffnet sieht man, dass dort noch ein paar Dinge mehr als nur der Prozessor werkeln. Zum einen gibt's das Display das die Ergebnisse anzeigt, zum anderen die Tastatur die Eingaben ermöglicht etc. Wenn man nur den Prozessor emuliert, kann man zwar das Programm auf dem Eprom ausführen lassen und sich entsprechend die Inhalte der Register (sind ja nicht wirklich viele, wenn meine Erinnerung mich nicht täuscht gab's den Akkumulator, das X- und Y-Register) und den Ram-Inhalt ansehen, nur helfen wird dir das nichts Damit das "emulierte" Modul einen Nutzen bringt, muss entsprechend auch das drumherum (Ram, Display, Tastatur etc) in irgendeiner Art emuliert werden. Oder man bastelt eine eigene UCI-Schnittstelle drumherum um das Ganze dann als Engine unter Fritz zu verwenden.

Leider kenne ich an meiner ehemaligen Uni keinen "Schach-Prof" sonst könnte man das als Diplom Arbeit vorschlagen
Mit Zitat antworten
  #16  
Alt 19.02.2007, 21:53
Benutzerbild von RolandLangfeld
RolandLangfeld RolandLangfeld ist offline
Mephisto Genius 68030
 
Registriert seit: 28.03.2005
Ort: Frankfurt Main
Alter: 67
Beiträge: 323
Abgegebene Danke: 93
Erhielt 297 Danke für 79 Beiträge
Aktivitäten Langlebigkeit
0/20 20/20
Heute Beiträge
0/3 ssssss323
AW: schnelle 6502 Prozessoren

ich habe einen in C geschriebenen Emultor für den 6502, der einen MM IV oder einen MMV (mit den jew. Eröffnungsmodulen) emuliert. Neben den eben beschriebenen Problemen, den Tastatur/Brett/Display - Status korrekt ein- und auszulesen ergibt sich noch das Problem der Interruptbehandlung, um in den Genuß des "Permanent Brain" zu gelangen und um die Uhr richtig laufen zu lassen. Für letzteres hatte ich eine, wenn auch wenig elegante Lösung.

Wenn jemand ernsthaft an der Fortführung der Arbeiten interessiert ist und seine Ergebnisse auch der Community zur Verfügung stellt, bin ich gerne zu einem Infoaustausch bereit !

Gruß
Roland
Mit Zitat antworten
  #17  
Alt 20.02.2007, 00:32
Benutzerbild von EberlW
EberlW EberlW ist offline
Lebende Foren Legende
 
Registriert seit: 09.01.2005
Ort: Leverkusen-Küppersteg
Alter: 58
Land:
Beiträge: 3.111
Abgegebene Danke: 45
Erhielt 58 Danke für 43 Beiträge
Aktivitäten Langlebigkeit
0/20 20/20
Heute Beiträge
0/3 sssss3111
AW: schnelle 6502 Prozessoren

 Zitat von Mo Sai
Hi Willi,

Wie ist es eigentlich mit aus EPROMs ausgelesenen Programmen auf Emulatoren, die 6502-Prozessoren simulieren? Dann hätten wir doch unsere Lieblinge mit 3GHz ?!
Habe selbst von solchen Emulatoren keine Ahnung, sondern das Thema nur irgendwo aufgeschnappt. Vielleicht weiß ja jemand mehr darüber.

Herzliche Grüße.
Mo Sai
Hallo Mo Sai,

mit dieser Thematik habe ich mich bisher noch nicht weitergehend befasst. Die Idee an sich habe ich auch schon mal gesponnen...

Wie es ausschaut hat Roland da schon mal ein wenig weitergebastelt - hätte ich im Moment mehr Zeit, würde ich mich der Sache durchaus einmal annehmen. Schließlich ist ein 6502 nicht schwer zu programmieren.

So ganz weiß ich jetzt aber nicht, worauf die Diskussion hier im Idealfall hinauslaufen soll? Soll der 6502 nebst Schachproggi auf einem PC emuliert werden um beispielsweise via COM-Port oder USB an ein Brett angeschlossen zu werden, der soll das Programm völlig autonom arbeiten, d.h. die Ein-und Ausgaben via Maus und Bildshirm funktionieren? Bei letzterer Idee wäre eine UCI-Engine natürlich das non-plus-ultra... aber vielleicht ließe sich beides kombinieren?

Mit den 3 GHz muss ich dich allerdings enttäuschen - obwohl der Gedanke daran sicher herzerwärmend ist. Leider wird die Emulation den Löwenanteil der Rechenleistung für sich beanspruchen. Um es mal in Zahlen auszudrücken:

Ein Colossus 4.0 auf dem C64 (1MHz) hat allerhöchstens was knapp an 1500 Elo, wenn überhaupt. Auf dem Rechner meines Nachbarn (AMD XP2600+ mit realen 2 GHz) machte die Emulation mit dem schnellsten verfügbaren Emulator und den am besten auf Geschwindigkeit optimierten Einstellungen durchschnittlich 8000 - 8200% der Leistung eines originalen 64ers. D.h., es wurde ein 64er mit rund 80 MHz emuliert (bei immerhin 2 GHz Rechenpower).

Die Suchtiefe war gegenüber dem Original um 3-4 Plies tiefer - und die Eloleistung... naja, ein originalgetakteter Miami (nicht gerade ein "Schwächling", wenn wir mal ehrlich sind) hatte nicht den Hauch einer Chance gegen dieses 64er-Monster.

Gegenüber einer 5 MHz CPU wäre der Emulator sicherlich weniger effizient, aber es bliebe trotzdem bei rund 80 MHz - immer noch eine gewaltige Steigerung von mindestens 2 Plies. Bei 3 GHz PC-Power wären es 120 MHz und wenn wir mal berücksichtigen, dass dieser von mir getestete Emulator immerhin einen kompletten 64er nebst Floppy emuliert, dann dürfen wir davon ausgehen dass eine gut programmierte Emulation eines (vergleichsweise funktionsarmen) "Schach-6502" bei gleicher CPU rund 200 - 300 MHz emuliert ... das sollte eine nicht zu verachtende Hausnummer sein. 3 GHz wären das dann zwar noch lange nicht, aber virtuelle 200 - 300 MHz dürften so manchem Brettcomputerfreund ein Lächeln ins Gesicht zaubern...

So weit meine Überlegungen zur "Bretti-Emulation".
Gruß, Willi

PS @ Roland:
U.U. habe ich ab spätem Frühjahr stundenweise Zeit, mich mit dem Projekt vertraut zu machen. In welcher Sprache ist das Programm geschrieben und ganz wichtig: Gibt es Dokumentationen dazu? Eines aber gleich vorweg: Ich habe seit Ende 1996 keine Programme mehr geschrieben und bin völlig raus aus der Materie. Für unser Hobby aber würde ich mich da wieder reinknien - Erlaubnis meiner LG liegt vor!

PPS: Habe irgendwie überlesen, dass es sich um ein C-Programm handelt (irgendwie lässt meine Aufmerksamkeit im Augenblick zu wünschen übrig). Aber gut - solange es Dokumentation gibt, sollte eine Einarbeitung nicht das Problem sein...

Geändert von EberlW (20.02.2007 um 10:29 Uhr)
Mit Zitat antworten
  #18  
Alt 20.02.2007, 05:29
Benutzerbild von iuppiter
iuppiter iuppiter ist offline
TASC R40
 
Registriert seit: 28.08.2005
Beiträge: 504
Bilder: 34
Abgegebene Danke: 9
Erhielt 8 Danke für 5 Beiträge
Member Photo Albums
Aktivitäten Langlebigkeit
0/20 19/20
Heute Beiträge
0/3 ssssss504
AW: schnelle 6502 Prozessoren

Hallo,

nach langem Mitlesen möchte ich meinen Senf auch mal dazu geben. Ich beschäftige mich auch mit dem Tuning einiger (auf dem 6502 basierenden) Schachcomputer, d.h. sofern es meine Freizeit mir erlaubt. Zur Zeit experimentiere ich mit dem w65c816s von WDC - die ersten Ergebnisse sind etwas enttäuschen: Zwar läuft der Milano damit, doch der Polgar (offenbar auch MM IV und V) kann mit der CPU trotz Anpassung nichts anfangen. Die einzig logische Erklärung, die mir dazu eingefallen ist, ist folgende: Möglicherweise verwendet der Polgar einen der "illegalen" OP-Codes der CPU, die bei der w65c816s anders belegt sind. Wenn dem tatsächlich so ist, dann könnte man eventuell das Programm an die w65c816s anpassen.

Die Idee mit FPGAs hatte ich auch schon, auch entstünde dadurch der Vorteil, dass man die komplette Peripherie samt Speicher mit in den FPGA laden könnte, allerdings entsteht dadurch auch ein kaum aufzuwiegender Nachteil: Man müsste die komplette Platine des zu tunenden Gerätes zurück in ein Schaltplan zurückführen, was nur mit sehr hohem Zeitaufwand zu realisieren wäre. Ein weiteres Problem wäre das, dass man dann eine neue Platine entwickeln und herstellen müsste, was aber relativ einfach wäre. Auch stellt sich die Frage wie schnell die nachgebildete CPU tatsächlich wäre, es auszuprobieren wäre der Aufwand aber auf jeden Fall wert.

Eine weitere Performancesteigerung könnte man dadurch erreichen, indem man eine schnelle, moderne CPU nimmt und das Programm darauf portiert und optimieren, die Speicherzugriffe der 6502 CPU böten sicherlich einiges Potential. Man könnte z.Bsp. das Resurrection Modul dafür nehmen, so brächte man nicht mal ein neues zu entwickeln. Diese Idee gilt auch für einen PC, wenn die 6502 Emulatoren nicht schnell genug sind, so spricht nichts dagegen das Programm auf x86 Code umzusetzen. Das Produkt wäre dann aber kaum als Schachcomputer zu bezeichnen und für mich somit uninteressant.

MfG
Vitali
Mit Zitat antworten
  #19  
Alt 20.02.2007, 09:40
Benutzerbild von Stefan
Stefan Stefan ist offline
Mephisto Wundermaschine
 
Registriert seit: 01.07.2004
Ort: Dresden
Alter: 58
Land:
Beiträge: 495
Abgegebene Danke: 2
Erhielt 10 Danke für 9 Beiträge
Aktivitäten Langlebigkeit
0/20 20/20
Heute Beiträge
0/3 ssssss495
AW: schnelle 6502 Prozessoren

 Zitat von iuppiter
Hallo,

nach langem Mitlesen möchte ich meinen Senf auch mal dazu geben. Ich beschäftige mich auch mit dem Tuning einiger (auf dem 6502 basierenden) Schachcomputer, d.h. sofern es meine Freizeit mir erlaubt. Zur Zeit experimentiere ich mit dem w65c816s von WDC - die ersten Ergebnisse sind etwas enttäuschen: Zwar läuft der Milano damit, doch der Polgar (offenbar auch MM IV und V) kann mit der CPU trotz Anpassung nichts anfangen. Die einzig logische Erklärung, die mir dazu eingefallen ist, ist folgende: Möglicherweise verwendet der Polgar einen der "illegalen" OP-Codes der CPU, die bei der w65c816s anders belegt sind. Wenn dem tatsächlich so ist, dann könnte man eventuell das Programm an die w65c816s anpassen.

Die Idee mit FPGAs hatte ich auch schon, auch entstünde dadurch der Vorteil, dass man die komplette Peripherie samt Speicher mit in den FPGA laden könnte, allerdings entsteht dadurch auch ein kaum aufzuwiegender Nachteil: Man müsste die komplette Platine des zu tunenden Gerätes zurück in ein Schaltplan zurückführen, was nur mit sehr hohem Zeitaufwand zu realisieren wäre. Ein weiteres Problem wäre das, dass man dann eine neue Platine entwickeln und herstellen müsste, was aber relativ einfach wäre. Auch stellt sich die Frage wie schnell die nachgebildete CPU tatsächlich wäre, es auszuprobieren wäre der Aufwand aber auf jeden Fall wert.

Eine weitere Performancesteigerung könnte man dadurch erreichen, indem man eine schnelle, moderne CPU nimmt und das Programm darauf portiert und optimieren, die Speicherzugriffe der 6502 CPU böten sicherlich einiges Potential. Man könnte z.Bsp. das Resurrection Modul dafür nehmen, so brächte man nicht mal ein neues zu entwickeln. Diese Idee gilt auch für einen PC, wenn die 6502 Emulatoren nicht schnell genug sind, so spricht nichts dagegen das Programm auf x86 Code umzusetzen. Das Produkt wäre dann aber kaum als Schachcomputer zu bezeichnen und für mich somit uninteressant.

MfG
Vitali
Hallo Vitali,

ich habe mit selbiger CPU auch erste Versuche gemaess der bekannten Umloetanleitung (zwecks Pinkompatibilitaet) gemacht. Leider laeuft es mit den Novag Geraeten auch nicht besonders gut: Der Expert bootet (bis 7 MHz) lauft aber irgendwie beider Brettsteuerung instabil, d. h. es leuchten gelegentlich willenlos LEDs auf und das Geraet haengt dann. Mit Suer Expert/Super Forte geht gar nix (kein Booten), da bin ich aber noch dran, da ich grad eine interesante Entdeckung auf meinen Super Expert C gemacht habe.

Viele Gruesse
Stefan
Mit Zitat antworten
  #20  
Alt 20.02.2007, 10:55
Benutzerbild von EberlW
EberlW EberlW ist offline
Lebende Foren Legende
 
Registriert seit: 09.01.2005
Ort: Leverkusen-Küppersteg
Alter: 58
Land:
Beiträge: 3.111
Abgegebene Danke: 45
Erhielt 58 Danke für 43 Beiträge
Aktivitäten Langlebigkeit
0/20 20/20
Heute Beiträge
0/3 sssss3111
AW: schnelle 6502 Prozessoren

 Zitat von iuppiter
Zur Zeit experimentiere ich mit dem w65c816s von WDC - die ersten Ergebnisse sind etwas enttäuschen: Zwar läuft der Milano damit, doch der Polgar (offenbar auch MM IV und V) kann mit der CPU trotz Anpassung nichts anfangen. Die einzig logische Erklärung, die mir dazu eingefallen ist, ist folgende: Möglicherweise verwendet der Polgar einen der "illegalen" OP-Codes der CPU, die bei der w65c816s anders belegt sind. Wenn dem tatsächlich so ist, dann könnte man eventuell das Programm an die w65c816s anpassen.
Der Gedanke an illegale Opcodes ist mir auch schon gekommen. Hast Du eine Möglichkeit die Programme auszulesen?
Ich muss aber zugeben, da die WDCs einige Zusatzbefehle kennen, bin ich bisher davon ausgegangen dass die illegalen auch implementiert sind. Es wäre schon ein bisschen enttäuschend, hätte WDC das versäumt. Wie dem auch sei: Ein Auslesen und Anpassen ist allein schon wegen der Uhr interessant.
Zitieren:
Die Idee mit FPGAs hatte ich auch schon, auch entstünde dadurch der Vorteil, dass man die komplette Peripherie samt Speicher mit in den FPGA laden könnte, allerdings entsteht dadurch auch ein kaum aufzuwiegender Nachteil: Man müsste die komplette Platine des zu tunenden Gerätes zurück in ein Schaltplan zurückführen, was nur mit sehr hohem Zeitaufwand zu realisieren wäre. Ein weiteres Problem wäre das, dass man dann eine neue Platine entwickeln und herstellen müsste, was aber relativ einfach wäre. Auch stellt sich die Frage wie schnell die nachgebildete CPU tatsächlich wäre, es auszuprobieren wäre der Aufwand aber auf jeden Fall wert.
Hmm, der Aufwand ist sicher nicht unbeträchtlich. Mit FPGAs habe ich mich aber noch nie befasst - wie sind da die Entwicklungskosten einzuschätzen?
Zitieren:
Eine weitere Performancesteigerung könnte man dadurch erreichen, indem man eine schnelle, moderne CPU nimmt und das Programm darauf portiert und optimieren, die Speicherzugriffe der 6502 CPU böten sicherlich einiges Potential. Man könnte z.Bsp. das Resurrection Modul dafür nehmen, so brächte man nicht mal ein neues zu entwickeln. Diese Idee gilt auch für einen PC, wenn die 6502 Emulatoren nicht schnell genug sind, so spricht nichts dagegen das Programm auf x86 Code umzusetzen. Das Produkt wäre dann aber kaum als Schachcomputer zu bezeichnen und für mich somit uninteressant.

MfG
Vitali
Ach was, solange man das Endprodukt in ein Brett stecken kann (als Modul wie zB. ein Res., oder als zusätzliche Platine -meinetwegen auch als gänzlicher Ersatz- in einem Compi), ist das immer noch ein reinrassiger Bretti.

Gruß, Willi
Mit Zitat antworten
Antwort


Forumregeln
Du bist nicht berechtigt, neue Themen zu erstellen.
Du bist nicht berechtigt, auf Beiträge zu antworten.
Du bist nicht berechtigt, Anhänge hochzuladen.
Du bist nicht berechtigt, deine Beiträge zu bearbeiten.

BB code ist An
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.

Gehe zu

Ähnliche Themen
Thema Erstellt von Forum Antworten Letzter Beitrag
Frage: Schnelle Antwort benötigt: Mephisto Mirage! Moregothic Die ganze Welt der Schachcomputer / World of chess computers 11 01.06.2008 11:53
14 MHz 6502er-Prozessoren RolandLangfeld Technische Fragen und Probleme / Tuning 2 03.08.2007 23:07


Alle Zeitangaben in WEZ +2. Es ist jetzt 14:54 Uhr.



Powered by vBulletin (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
©Schachcomputer.info