In a micro processor including a bus fraction register having an encoded value stored therein, said encoded value placing a contents of said bus fraction register in either an initial state, a first state or a second state, said initial state indicating a default bus clock speed, said first state indicating a first bus clock speed and said second state indicating a second bus clock speed, data processing logic that includes a number of units arranged as an instruction pipeline, said units being clocked by an internal clock running at a first frequency and operating with an input/output (I/0) bus clocked by an I/O clock running at a second frequency, said second frequency being a fraction of said first frequency, one of said units being a bus unit which controls bus cycles in said pipeline and generates a bus unit busy (BBSY) signal upon a condition that said bus unit is busy with bus cycles, a method comprising the steps of:
- A. generating a stop clock signal upon a condition that said contents of said bus fraction register is in said first state or said second state;
- B. polling said bus unit busy (BBSY) signal line to determine if said BBSY signal line is asserted or not asserted, said polling being initiated in response to said stop clock signal;
- C. asserting a stop mode signal upon a condition that said contents of said bus fraction register is in said second state and upon a condition that said BBSY signal line is not asserted;
- D. signaling said internal clock and said I/O clock to stop in response to a no operation (NOP) micro instruction placed in said pipe line, to indicate that said pipeline is clear of pending instructions;
- and,
- E. executing a number of NOP micro instructions, the number being determined by the amount of time required by said I/O clock to stop.