XFX Radeon HD 7870 DD BE - VRM-Signal Mod

haVoc_inc

Komplett-PC-Käufer(in)
Tag zusammen,

Wie der Titel schon sagt, bin ich auf der Suche nach einem BIOS-Mod bzw. Hilfe, das VRM-Signal im BIOS der XFX 7870 DD Black Edition einzustellen.
Ich bin wohl einer der Glücklichen, die damals (2013) eine sehr leise, aber wenig zugängliche 7870 erwischt habe, was OC angeht.

Basiswerte @Stock:

-1050 MHz Core
-1250 MHz RAM
-1,219 VCore
-75,9% ASIC-Qualität
-Pitcairn XT
-Arctic Accellero mit Thermalright TY-143 => max. 60°C bei 40% PWM (666 rpm)

BOOT: 1000/1200/1,219
UVD: 450/1250/1,219
Perf.: 1050/1250/1,219

Maximales OC mit 1,219V: 1140/~1500.

Klingt recht ordentlich, die RAM-Werte erreicht die Karte mMn nur, weil sie die Latenzen extrem nach oben schraubt. Bei 1250MHz ist alles noch ok, bei 1251 MHz lassen sich bereits größere Performance-Einbußen festellen. Bei normalen Spielen macht sich das eher kaum bemerkbar, jedoch sehr auffällig bei Open-Cl-Apps wie z.B. Folding@Home.

Zur Sache.

Die oben verlinkte Karte lässt sich über- bzw. untertakten, soweit alles gut. Was sie aber nicht zulässt, ist jedwede Art der Spannungsvertärkung, mit ein paar Tricks jedoch Spannungsverringerung.
Erste Anlaufstellen waren bei mir Tools wie Sapphire's TRIXX oder MSI's Afterburner, welche Vor- und Nachteile haben, in Wahrheit für vernünftiges Regeln außerhalb der engen Grenzen aber ziemlich unbrauchbar sind.

Afterburner: Core-/RAM-Takt ändern, Richtung beliebig, Board-Power-Limit +/- 20%, Vcore Regler gesperrt.
TRIXX: Core-/RAM-Takt ändern, nicht unterhalb von BOOT-Werten, Board-Power-Limit +/- 20%, VCore von 0,8 bist 1,219 V auswählbar aber nicht anwendbar.

Nachdem irgendwann das VBE7 erschienen ist, machte es das UV/UC zumindest erheblich einfacher. Der Voltage-Table war nun auswählbar und die Taktraten für die verschiedenen States im PowerPlay zumindest editierbar. Des weiteren lassen sich die im BIOS hinterlegten Voltages (1119, 1169, 1219), welche meiner Meinung nach nur für höherwertige Chips (ASIC-Qualität) eingetragen sind, jetzt auch auswählen: 800, 825, 900, 1119, 1169, 1219 mV.
Das heißt, man kann die Karte nun z.B. bei 1,119V und 1035/1250 betreiben, falls man das ins BIOS schreibt. Dadurch, dass die Standardspannung 1,119 V beträgt, lässt TRIXX den Spielraum des Reglers für die VCore von 1,119 bis 1,219 V zu und man kann sich in diesem 0,1 V-Fenster recht frei bewegen.

Allerdings stand damit auch fest, mehr als 1,219V sind trotz VBE7 nicht rauszuholen. Auch ein anderes BIOS ohne VLock wollte partout nicht auf der Karte laufen, weil die VRMs so selten sein müssen, dass sie von keinem anderen BIOS unterstützt werden.

Nach einiger Zeit habe ich mir mal das BIOS selbst vorgenommen und versucht, per Hex-Editor die 1,219V inklusive Voltagetable ausfindig zu machen und per Hand zu modifizieren. Da 7870er für gewöhnlich nicht gelockt sind, musste ich mir als Vorlage erstmal ein BIOS der 79x0 reinziehen und versuchen die parallelen zu finden. Eine recht gute Anleitung, wie man mit etwas Grips soetwas macht, findet sich HIER - BIOS Mod per Hex-Editor.


Um es vorweg zu nehmen, generell stellt das BIOS das VRM Signal und die VCore in Abhängigkeit der ASIC-Qualität ein.
Der Abschnitt mit dem Voltagetable sieht bei einer MSI Radeon 7950 so aus:

Bild

5E 05 AB 00 90 01 4B 05 A8 00 F4 01 96 04 8B 00 26 02 7D 04 87 00 Bios Hex
1374 171 40 1355 168 50 1174 139 55 1149 135 Dezimal
05 5E 00 AB 01 90 05 4B 00 A8 01 F4 04 96 00 8B 02 26 04 7D 00 87 Realer Hex

1.374V 171vrm signal 40% ASIC
1.355v 168vrm signal 50% ASIC
1.174v 139vrm signal 55% ASIC
1.149v 135vrm signal 80% ASIC
1.090V 129vrm signal 102.3% ASIC

Also hab ich das gleiche getan und mal den Abschnitt in meinem BIOS gesucht und auch gefunden:
Reihenfolge: BIOS-HEX, Realer-HEX, Dezimal
Code:
CF 03 01 08 00 00 E8 03 01 11 24 00 00 04 00 00 C3 04 00 00 C3 04 00 00 5F 03 91 04 00 00 8C 03 5F 04 00 00 BC 03 5F 04 00 00 FF 03
03 cf 08 01 00 00 03 e8 11 01 00 24 04 00 00 00 04 c3 00 00 04 c3 00 00 03 5f 04 91 00 00 03 8c 04 5f 00 00 03 bc 04 5f 00 00 03 ff
975   2049        1000  4353  36    1024        1219        1219        863   1169        908   1119        956   1119        1023

Es fällt auf, dass bei hier zwar Spannungen und die dazugehörigen ASIC-Qualitäten eingetragen sind, aber nicht das entsprechende VRM-Signal. Also mal noch etwas mehr Code freilegen:
Code:
00 00 7c 00 03 01 01 00 30 00 00 06 00 00 00 f0 10 60 00 00 00 40 20 03 00 70 10 20 39 03 00 30 00 20 84 03 00 c0 10 20 5f 04 00 80 10 20 91 04 00 70 10 00 f5 04 04 00 24 00 00 04 00 00 01 08 00 00 00 00 00 00 52 03 01 00 00 00 b6 03 00 08 00 00 CF 03 01 08 00 00 E8 03 01 11 24 00 00 04 00 00 C3 04 00 00 C3 04 00 00 5F 03 91 04 00 00 8C 03 5F 04 00 00 BC 03 5F 04 00 00 FF 03
00 00 00 7c 01 03 00 01 00 30 06 00 00 00 f0 00 60 10 00 00 40 00 03 20 70 00 20 10 03 39 30 00 20 00 03 84 c0 00 20 10 04 5f 80 00 20 10 04 91 70 00 00 10 04 f5 00 04 00 24 04 00 00 00 08 01 00 00 00 00 00 00 03 52 00 01 00 00 03 b6 08 00 00 00 03 cf 08 01 00 00 03 e8 11 01 00 24 04 00 00 00 04 c3 00 00 04 c3 00 00 03 5f 04 91 00 00 03 8c 04 5f 00 00 03 bc 04 5f 00 00 03 ff
0     124   259   1     48    1536  0     61440 24592 0     16384 800   28672 8208  825   12288 8192  900   49152 8208  1119  32768 8208  1169  28672 16    1269  4     36    1024  0     2049  0     0     0     850   1     0     950   2048  0     975   2049  0     1000  4353  36    1024  0     1219  0     1219	0     863   1169  0	908   1119  0	  956   1119  0     1023

Nun tauchen alle Spannungen, die in VBE7 auswählbar sind, auch auf (800-1219), allerdings werde ich aus den anderen Werten nicht wirklich schlau.
Jetzt könnte man natürlich hergehen und einfach mal alle 1219 durch 1269 ersetzen, was dann am Ende 1,269V ergibt. Macht man dies, verändert sich in VBE7 zwar der Voltagetable soweit, dass man 1,269 V auswählen kann und selbst TRIXX seinen Regelbereich nun z.B. von 1,219 V auf 1,269 V erhöht, jedoch ist trotz +0,05V kein zusätzliches MHz drin.

Mit anderen Worten, die Spannung lässt sich durch diesen Mod zwar erhöhen, in TRIXX danach auswählen und einstellen, mit GPU-Z auslesen ABER trotzdem kommt an der Karte nicht mehr Saft an. Außerdem steigt die Temperatur, geht man von 1,119V stufenweise um 0,05 V nach oben, ab 1,219 V nicht mehr wie gehabt um ca. 2 K an.

Falls mir an dieser Stelle jemand weiterhelfen kann oder will, nur her damit, so langsam gehen mir die Ideen aus :) Aktuell bin ich auf der Suche nach den RAM-Timings im BIOS und dem "verdammten" VRM-Signal, wer hier also helfen könnte -> feine Sahne ;)
Ich denke mal, es würde wohl reichen, das VRM-Signal soweit zu erhöhen, dass die GPU mehr Saft bekommt; allerdings keinen Dunst wie :P
Angehängt habe ich jetzt mal keine Kartoffel sondern, das Original-BIOS und das mod-BIOS.

Cheers,

haVoc

EDIT:
Das XFX BIOS hat folgende Werte zu ASIC:

1,119V bei 95,6% ASIC
1,119V bei 90,8% ASIC
1,169V bei 86,3% ASIC
1,219V bei allem darunter.
 

Anhänge

  • Pitcairn - 1269_inv_check.zip
    41,2 KB · Aufrufe: 86
  • Pitcairn.zip
    41,2 KB · Aufrufe: 88
Ich täte mal schauen, ob nicht der Steuerchip der Spannungswandler per Hardware nicht mehr ausgeben kann. Ein kurzer Test via Multimeter würde einem zumindest die Gewissheit geben.
 
an und für sich wär das aber ne idee, aber ich hab grad keins da und wüsste auch nicht wo die geeignetsten messpunkte sind...
 
Die Messpunkte wären überhaupt nicht zu übersehen. Nämlich an den Spulen der Spannungswandler. Den Gegenpol an 12V oder Masse, je nachdem, was durch die Spannungswandler "zerhackt" wird.
 
Was bei raus gekommen? Hatte auch mal ein ähnliches Problem mit dem meiner 270X da VBE7 die Voltagecontroller net unterstützt. Versuche mitm Hex sind damals ebenfalls gescheitert...
 
Zurück