A data processing system (100) comprises a system bus (120), a plurality
of devices (110, 150, 160, 170) coupled to the system bus (120), a bus
monitor circuit (140), and a clock generator (130). The plurality of
devices (110, 150, 160, 170) includes at least one bus master (110, 150)
which is capable of performing accesses on the system bus (120). The bus
monitor circuit (140) is coupled to the at least one bus master (110,
150), and has an output for providing a bus idle signal to indicate that
no bus master is attempting to perform an access on the system bus (120).
The clock generator (130) has an output coupled to at least one of the
plurality of devices (110, 150, 160, 170) and provides a bus clock signal
having a first frequency when the bus idle signal is inactive and having
a second frequency lower than the first frequency when the bus idle
signal is active.