Einzelnen Beitrag anzeigen

Muetze1
(Gast)

n/a Beiträge
 
#2

Re: Fragen zur CPU Temperaturmessung

  Alt 22. Feb 2007, 14:21
1. Winbond ist eine Firma, welche IC und anderes herstellt
2. der SMBus (System management bus) ist ein auf dem Mainboard integriertes Bussystem, welches mehrere Geräte anbindet. U.a. auch die Info-ROMs der Speichermodule und andere Geräte.
3. Winbond baut u.a. ein paar Schaltkreise, welche ein SMBus Interface haben und u.a. der Systemüberwachung dienen. An ihnen werden die Tachosignale angeschlossen sowie die Spannungsversorgungen und weitere Sensoren. Diese Informationen digitalisiert bzw. bereitet der Schaltkreis auf um sie dann in Registern anzubieten und auch weiterführende Aktion zu bestimmen. So können diese Schaltkreise auch einen Interrupt auslösen, wenn bestimmte Werte bestimmte Grenzen verletzen (z.B. Tacho Signal zu langsam, Spannung zu hoch/niedrig, gleichs für die Temperatur).
4. Der SMBus endet heutzutage meist am Chipsatz, meist an der Southbridge. Dort kann diese bedient und abgefragt werden, in dem man den Chipsatz in seinen Register für die SMBus Funktionalität entsprechend bedient. Da aber jeder Hersteller sein eigenes Süppchen kocht, bist du relativ stark auf die Unterlagen der Hersteller angewiesen. Während Intel seine Register der Chipsätze noch freiwillig, frei und gut dokumentiert sieht da AMD oder auch nVidia eher ein Problem, solche Informationen heraus zu geben. Diese verlangen eine recht hohe Schutzgebühr oder anderes.
5. Der Prozessor bzw. die Kerne haben solche thermischen Sensoren mit integriert. Diese kann man über die MSR (machine specific registers) auslesen und auch konfigurieren. Auch hier wiederrum, versuchen Hersteller z.T. ihr eigenes Süppchen zu kochen und andere versuchen kompatibel zu sein. In diesem Falle sieht die Dokumentation recht gut aus, aber es gibt ein anderes (kleines) Problem: Die MSR Register haben weitreichende Steuerungsfunktionen und von daher sind Änderungen und Zugriff für Ring-3 (Applikationen) verboten. Du musst für fast alle MSR Register in den Ring-0 um Zugriff zu haben, ansonsten gibt es eine EPrivilege Exception (privilegierte Anweisung) bei dem Opcode.

Hilft das?
  Mit Zitat antworten Zitat