Multiclock Rate Programmable Timer
Original Publication Date: 1985-Mar-01
Included in the Prior Art Database: 2005-Feb-18
A three-byte timer is implemented in a machine running under microcode control at four possible rates. The timer value has to be equivalent to the value of a timer running at a different rate in another machine including its wrap time value which must be the same for all clock rates. The various timer clocks at 100 ns, 125 ns, 137.5 ns, 150 ns, for example, are inputted to a 23-bit timer. The timer value has to be equivalent to the value of a 22-bit timer running at 200 ns and the wrap value must be 524 ns, i.e., 222 x 200 ns for all clock rates. The adjustment of the read value from the timer is done by microcode, the ratio between the 200 ns value and the used clock rate being stored in a random-access memory (RAM) position. 1. 100 ns/200 ns ---> ratio 1/2 The microcode algorithm is 1 shift right of the read timer value. 2.