ZTEX

Products
FPGA Boards
  USB-FPGA Module 1.15
  USB-FPGA Module 1.11
  USB-FPGA Module 1.2
  Experimental Board 1.3
  Experimental Board 1.2
  Analog Experimental Board
  Power Supply Module 1.1
  Reference designs
USB Microcontroller Boards
  USB Board
  USB-XMEGA Board
To the ZTEX Shop ZTEX Shop
SDK and Examples
  Overview
  Documentation
  Downloads
  Example
  Release history
  ZTEX Wiki
OS Discount Program
 
Miscellaneous
  k10ctl
  c2ctl
 
Downloads
 
Contact
Impressum
Terms and Conditions
RoHS
 
    Home / Products         SDK    
    To the ZTEX Shop Shop   
    Wiki / Forums         Downloads    
       

k10ctl

Warning

USE THIS PROGRAM AT YOU OWN RISK. IT MAY DAMAGE YOUR HARDWARE.

What is k10ctl?

The main purpose of k10ctl is overclocking and / or "undervolting" the CPU and to configure Cool'n'Quiet settings. In particular

  • It is intended for AMD Family 10h (aka K10) CPU's (e.g. Phenom, Phenom II)
  • It runs under Linux
  • It can modify the P-States, i.e. alter processor and the northbridge frequencies and voltages;
  • set / change the P-State;
  • read out frequency and voltage information

Download

k10ctl.tar.bz2 Source code with a precompiled, statical linked binary.

Requirements

  • A Linux kernel with MSR support (Processor type and features -- > /dev/cpu/*/msr - Model-specific register support) and write access to /dev/cpu/*/msr
  • Read access to /proc/bus/pci/00/18.3
  • Libraries: none (linked statically)
  • For Compiling: Freepascal compiler

Usage

k10ctl <cpu>[-<cpun>]
    Print some information about CPU(s) <cpu>(-<cpun>)

k10ctl <cpu>[-<cpun>] <p-state>
    Set the P-State for CPU(s) <cpu>(-<cpun>)

k10ctl <cpu>[-<cpun>] <p-state> [parameters]
    Configure the P-State for CPU(s) <cpu>(-<cpun>), see below
    
k10ctl <cpu>[-<cpun>] -a
    Print DSDT template for CPU(s) <cpu>(-<cpun>) using P-State MSR's
    
k10ctl -h
    Help

Parameters for the P-State configuration:

  -nv <NbVid>    Nothbridge VID (0..127)
  -nd <NbDid>    Nothbridge DID (0..1)
  -cv <CpuVid>   CPU VID (0..127)
  -cd <CpuDid>   CPU DID (0..7)
  -cf <CpuFid>   CPU FID (0..63)
  -p <mW>        Power dissipation in mW

Meaning of the vid's, fid's and did's

The meaning of the vid's, fid's and did's are described in [1].

The vid to voltage conversion formula depends on whether the mainboard runs in parallel or serial VID interface mode. The interface mode is detected automatically by k10ctl and can be shown using the syntax k10ctl <cpu>[-<cpun>].

In parallel VID interface mode the conversion formula is

  if vid>=64 then U=375 mV
  else if vid>=32 then U=1162.5mV - vid=12.5 mV
  else U=1550mV - vid*25 mV .
In serial VID interface mode it is
  if vid>=124 then U=0 mV
  else U=1550mV - vid*12.5 mV .

The CPU frequency multiplier is computed by

  CpuMult = (CpuFid + 16) / (2^(CpuDid+1)).
The reference clock is usually 200 MHz.

The northbridge divisor is computed by

  NbDiv = 2^NbDid .
NbDid=1 is not supported by all K10 revisions - mainboard combinations.

Examples

k10ctl 0-3
    Prints a lot of information about cores 0-3

k10ctl 0-3 0 -nv 46 -cv 22 -cd 0 -cf 16
    Set NbVid=46, CpuVid=22, CpuDiD=0, CpuFid=16 for CPU's 0-3 and
    P-State 0
    
k10ctl 0-3 0
    Set P-State 0 for CPU's 0-3

k10ctl 0 -a
    Print a DSDT template for CPU 0

References

[1] BIOS and Kernel Developers Guide (BKDG) For AMD Family 10h, http://support.amd.com/de/Processor_TechDocs/31116.pdf


[Home]  [Impressum]   
© ZTEX GmbH