The present invention relates generally to computing systems and chipsets and, more particularly, to a method and system for adjusting bus frequency and link width on a bus.
Today, computing system can include one or more central processing units (CPUs) or microprocessors to access and process data from any number of peripheral devices. The CPUs and peripheral devices are connected via data busses and can access data at high speeds. Such computing systems typically include one or more chipsets (controller circuitry) placed on the mother board, which handles data flow with the computing system and between the CPUs and peripheral devices, as well as from internal/external memory and data caches. A common chipset architecture is the Northbridge and Southbridge architecture. Northbridge typically refers to controller circuitry that communicates with one or more of the computing system's processors and controls interaction with memory and memory caches and graphics ports. Southbridge typically refers to controller circuitry that handles I/O or peripheral device functions to the CPUs. Each of these chipsets can be referred to as a hub for handling various functions for the motherboard.
In such computing system architecture, a host bus, such as the Front Side Bus (FSB) or HyperTransport (HT) bus, connects a CPU to a chipset—i.e., the Northbridge chipset, and provides high bandwidth operation and high performance applications. For example, the HT bus can provide 1 GHz/16-bit operation on a processor-to-chipset link. The HT bus is often considered a flexible, extensible, and a simple bus structure design, which is commonly implemented in many computing systems. A problem with operating at such high speeds and bandwidths is power consumption, thus, many computing systems provide power management applications. For example, for laptop computers or other portable systems, the operating voltages and/or frequencies of processors may be reduced to save power and increase battery life, and/or lower system temperature when the high processing speed is not needed. In contrast, the operating voltages and/or the frequencies may be increased when more processing tasks are demanded or when a high processing speed is needed.
An example of power management application in a computing system is the “PowerNow!®” technology developed by Advanced Micro Devices, Inc. (AMD) that monitors a CPU's operating condition such as its frequency and voltage. It can also change those parameters for the CPU. U.S. Pat. No. 7,073,082 to Hsu, entitled “Method for CPU Power Management and Bus Optimization,” provides an example where the CPU load can be detected by an operating system or by a driver to adjust the operating voltage and the frequency of the CPU. Furthermore, ACPI (Advanced Configuration and Power Interface) is another example of power management in a computer system. Conventional solutions frequently emphasize managing power consumption of processors and devices of the computer system. These solutions, however, do not consider power management of data buses coupled between the processors and devices.
Therefore, there may be a need to consider power management of a data bus and the ability to dynamically adjust operation parameters, such as the bus frequency and the bus link width, on the data bus.
According to one example, a method for adjusting a bus frequency and bus link width of a host bus is disclosed. A bus monitor driver is installed to a Northbridge chipset. Traffic conditions of the host bus are monitored. The bus frequency and bus link width of the host bus are adjusted according to the monitored traffic conditions.
According to another example, a method may operate a computing system having a Northbridge chipset and adjust a bus frequency and bus link width of a host bus, which may be connected between a processor and the Northbridge chipset. A system management interrupt signal is triggered when an adjusting signal is issued. The values regarding a bus frequency and bus link width of the host bus are updated.
According to another example, a computing system may have a processor, a Northbridge chipset, and a host bus connecting the processor to the Northbridge chipset. The Northbridge chipset monitors traffic conditions on the host bus and adjusts at least one of a bus frequency and bus link with of the host bus according to monitored traffic conditions on the host bus.
According to another example, a computer readable medium containing instructions, which if executed by a computing system, may operate to perform: waking up a basic input output operation system (BIOS) in the computing system; storing values in one or more registers related to one or more operating parameters for a host bus; and operating the host bus based on the stored values in the one or more registers.
The accompanying drawings, which are incorporated in and constitute part of this specification, illustrate examples, implementations, and embodiments of the invention, and together with the description, serve to explain the principles of the invention. In the drawings,
Reference will now be made in detail to the exemplary embodiments of the invention, examples of which are illustrated in the accompanying drawings. Wherever possible, the same reference numbers will be used throughout the drawings to refer to the same. The following techniques provide a method and system for adjusting bus frequency and link width on a bus, which can reduce power consumption in a computing system.
In one example, a power management driver, such as PowerNow!® developed by AMD, is installed by CPU 102 to monitor the data traffic from and to CPU 102. This information can be used to derive and monitor data traffic parameters for the host bus 104. For example, depending on the current CPU 102 state, the PowerNow driver can monitor the core voltage and frequency of CPU 102 and can be dynamically adjusted for saving power. Here, the core voltage and frequency of CPU 102 could be dynamically adjusted for saving power. The core voltage and frequency of CPU 106 are updated when the VID/FID cycle is asserted by the CPU to the Northbridge chipset 106. In the VID/FID cycle, there is no information about CPU's 102 frequency and voltage for the Northbridge chipset 106 to determine which new frequency and voltage to set for host bus 104. The following examples illustrate how an SMI cycle may be used to wake up basic input output operating system (BIOS) for computing system 100 to adjust the operating frequency and link bandwidth for host bus 102. Although not shown, computing system 100 may include registers that can store the host bust 104 bus frequency and bus link width, and the registers can be accessible to BIOS to implement the host bus operating parameters change.
As illustrated, the Northbridge chipset 106 is capable of adjusting the operational conditions of a host bus 104. Examples of the above techniques can dynamically change the operation parameters, such as the host bus frequency and the bus link width, according to the state of the bus independently or, in some examples, based on the CPU power management schemes. The present invention may be applied to various systems, such as a computing system using an AMD K8® CPU is one example.
In describing representative examples of the present invention, the specification may have presented the method of the present invention as a particular sequence of steps. However, to the extent that the method does not rely on the particular order of steps set forth herein, the method should not be limited to the particular sequence of steps described. As one of ordinary skill in the art would appreciate, other sequences of steps may be possible. Therefore, the particular order of the steps set forth in the specification should not be construed as limitations on the claims. In addition, the claims directed to the method of the present invention should not be limited to the performance of their steps in the order written, and one skilled in the art can readily appreciate that the sequences may be varied and still remain within the spirit and scope of the present invention.
It will be appreciated by those skilled in the art that changes could be made to the examples described above without departing from the broad inventive concept thereof. It is understood, therefore, that this invention is not limited to the particular examples disclosed, but it is intended to cover modifications within the spirit and scope of the present invention as defined by the appended claims.