US20060059377A1 - Low power clocking systems and methods - Google Patents

Low power clocking systems and methods Download PDF

Info

Publication number
US20060059377A1
US20060059377A1 US11/218,692 US21869205A US2006059377A1 US 20060059377 A1 US20060059377 A1 US 20060059377A1 US 21869205 A US21869205 A US 21869205A US 2006059377 A1 US2006059377 A1 US 2006059377A1
Authority
US
United States
Prior art keywords
clock
processor
integrated circuit
clock signal
processor unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US11/218,692
Inventor
Robert Sherburne
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intellectual Ventures I LLC
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=25275055&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=US20060059377(A1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Individual filed Critical Individual
Priority to US11/218,692 priority Critical patent/US20060059377A1/en
Publication of US20060059377A1 publication Critical patent/US20060059377A1/en
Assigned to GALLITZIN ALLEGHENY LLC reassignment GALLITZIN ALLEGHENY LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: AIRIP CORPORATION
Assigned to INTELLECTUAL VENTURES I LLC reassignment INTELLECTUAL VENTURES I LLC MERGER (SEE DOCUMENT FOR DETAILS). Assignors: GALLITZIN ALLEGHENY LLC
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/30101Special purpose registers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30076Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
    • G06F9/30083Power or thermal control instructions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30094Condition code generation, e.g. Carry, Zero flag
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline, look ahead using instruction pipelines
    • G06F9/3869Implementation aspects, e.g. pipeline latches; pipeline synchronisation and clocking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • the present invention relates to a low power electronic device.
  • the circuitry that disables the system clock must also save all pertinent information in the microprocessor and associated board logic and restore the data upon resumption of activity such that the state of the computer after resumption of the system clock will be identical to the state of the computer prior to disabling the system clock.
  • this technique for consuming power is both costly because of the complicated circuitry and slow because of the need to store and restore the state of the computer.
  • a typical design style revolves around a single clock rate that drives all clocked elements of the design. Power is managed by turning on or off the clock to subsets of the system. Alternatively power may also be managed by slowing down the clock to a fraction of its normally active rate.
  • the Oak DSP features a “slow mode” whereby a DSP core may be software configured to divide its input clock by an integer N.
  • the Oak processor is described at www.dspg.com/prodtech/core/teak.htm.
  • the Intel 80200 processor a single processor core, accepts an input clock frequency of 33 to 66 MHz and uses an internal PLL to lock to the input clock and multiplies the frequency by a variable multiplier to produce a high-speed core clock.
  • This multiplier is initially configured by the PLL configuration pin and can be changed anytime later by software.
  • Software has the ability to change the frequency of the clock without having to reset the core. Changing the clock frequency is similar to entering a low power mode. First, the core is stalled waiting for all processing to complete, second the new configuration is programmed, and then finally the core waits for the PLL to re-lock. This feature allows software to conserve power by matching the core frequency to the current workload.
  • a system with multiple processing elements is dynamically managed on a per-task basis so as to clock each element at the lowest rate possible, either to reduce peak power dissipation, reduce average power dissipation, minimize buffer memory size and power, or to achieve a related, intermediate goal.
  • a low power a reconfigurable processor core includes one or more processing units, each unit having a clock input that controls the performance of the unit; and a controller having a plurality of clock outputs each coupled to the clock inputs of the processing units, the controller varying the clock frequency of each processing unit to optimize power consumption and processing power for a task.
  • Implementations of the above aspect may include one or more of the following.
  • the system uses a plurality of clock signals, each independently rate controlled to single destination processing element, in a system on a chip which comprises multiple such processors.
  • these clocks may be all derivatives of a single master clock.
  • the clocks can be gated versions of a master clock, thus retaining a level of synchronous relationship to each other.
  • the system can change the clock rate of each processor independently of all the other processors, as a result of a decision or algorithm invoked in order to accomplish some goal, such as power reduction, buffer memory management, or emissions control.
  • the clock rate management may be pre-assigned based upon tasks or routines handled by each processor, or it may be invoked as a result of external or internal system stimuli, including but not limited to user input or thermal management.
  • each processor's clock rate may or may not be performed in a centralized manner on the chip.
  • Clock rate control need not be limited to simple clock division, but rather may be more sophisticated and flexible so as to obtain rates such as three-eighths or two-thirds of the driving clock.
  • Each processing element may connect to other processing elements through use of buffer memories or FIFOs.
  • a FIFO for example, may support isosynchronous or even asynchronous read versus write ports, hence supporting mismatched rate processing elements.
  • the system reduces power dissipation. This yields the benefit of longer usage time per battery replacement or charging; reduced weight and size by use of fewer and/or smaller batteries; reduced thermal and electromagnetic emissions; and increased reliability.
  • the system is ideal for battery-operated processor-based equipment, where it is desirable to minimize battery size so that the equipment can be made small and lightweight.
  • the reduction is due to the fact that the functional units are not kept on when they are not needed. As will be explained in detail below, since CMOS technology is used, power is only consumed when a functional unit is changing state (i.e., switching). Since a functional unit is “off” when it is prevented from changing state, negligible power is consumed by that functional unit.
  • FIG. 1 is a block diagram of a single chip wireless communications integrated circuit.
  • FIG. 2 is a block diagram of a first embodiment to conserve power consumption for a plurality of processing units operating in parallel.
  • FIG. 3 is a block diagram of a second embodiment to conserve power consumption for a plurality of processing units operating in parallel.
  • FIG. 4 is a block diagram of a third embodiment to conserve power consumption for a plurality of processing units operating in parallel.
  • FIG. 5 is a block diagram of a fourth embodiment to conserve power consumption for a plurality of processing units operating in parallel.
  • FIG. 6 is a block diagram of a portable computer system in accordance with the present invention.
  • FIG. 1 shows a block diagram of a multi-mode wireless communicator device 100 fabricated on a single silicon integrated chip.
  • the device 100 is an integrated CMOS device with radio frequency (RF) circuits, including a cellular radio core 110 , a short-range wireless transceiver core 130 , and a sniffer 111 , along side digital circuits, including a reconfigurable processor core 150 , a high-density memory array core 170 , and a router 190 .
  • the high-density memory array core 170 can include various memory technologies such as flash memory and dynamic random access memory (DRAM), among others, on different portions of the memory array core.
  • DRAM dynamic random access memory
  • the reconfigurable processor core 150 can include one or more processors 151 such as MIPS processors and/or one or more digital signal processors (DSPs) 153 , among others.
  • the reconfigurable processor core 150 has a bank of efficient processors 151 and a bank of DSPs 153 with embedded functions. These processors 151 and 153 can be configured to operate optimally on specific problems.
  • the bank of DSPs 153 can be optimized to handle discrete cosine transforms (DCTs) or Viterbi encodings, among others.
  • dedicated hardware 155 can be provided to handle specific algorithms in silicon more efficiently than the programmable processors 151 and 153 .
  • the number of active processors is controlled depending on the application, so that power is not used when it is not needed. This embodiment does not rely on complex clock control methods to conserve power, since the individual clocks are not run at high speed, but rather the unused processor is simply turned off when not needed.
  • One exemplary processor embedded in the multi-processor core 150 includes a register bank, a multiplier, a barrel shifter, an arithmetic logic unit (ALU) and a write data register.
  • the exemplary processor can handle DSP functions by having a multiply-accumulate (MAC) unit in parallel with the ALU.
  • Embodiments of the processor can rapidly execute multiply-accumulate (MAC) and add-compare-subtract (ACS) instructions in either scalar or vector mode.
  • Other parts of the exemplary processor include an instruction pipeline, a multiplexer, one or more instruction decoders, and a read data register.
  • a program counter (PC) register addresses the memory system 170 .
  • a program counter controller serves to increment the program counter value within the program counter register as each instruction is executed and a new instruction must be fetched for the instruction pipeline. Also, when a branch instruction is executed, the target address of the branch instruction is loaded into the program counter by the program counter controller.
  • the processor core 150 incorporates data pathways between the various functional units. The lines of the data pathways may be synchronously used for writing information into the core 150 , or for reading information from the core 150 . Strobe lines can be used for this purpose.
  • instructions within the instruction pipeline are decoded by one or more of the instruction decoders to produce various core control signals that are passed to the different functional elements of the processor core 150 .
  • the different portions of the processor core conduct processing operations, such as multiplication, addition, subtraction and logical operations.
  • the register bank includes a current programming status register (CPSR) and a saved programming status register (SPSR).
  • CPSR current programming status register
  • SPSR saved programming status register
  • the current programming status register holds various condition and status flags for the processor core 150 . These flags may include processing mode flags (e.g. system mode, user mode, memory abort mode, etc.) as well as flags indicating the occurrence of zero results in arithmetic operations, carries and the like.
  • the multi-mode wireless communicator device 100 can detect and communicate with any wireless system it encounters at a given frequency.
  • the router 190 performs the switch in real time through an engine that keeps track of the addresses of where the packets are going.
  • the router 190 can send packets in parallel through two or more separate pathways. For example, if a BluetoothTM. connection is established, the router 190 knows which address it is looking at and will be able to immediately route packets using another connection standard. In doing this operation, the router 190 working with the RF sniffer 111 periodically scans its radio environment (‘ping’) to decide on optimal transmission medium.
  • the router 190 can send some packets in parallel through both the primary and secondary communication channel to make sure some of the packets arrive at their destinations.
  • the reconfigurable processor core 150 controls the cellular radio core 110 and the short-range wireless transceiver core 130 to provide a seamless dual-mode network integrated circuit that operates with a plurality of distinct and unrelated communications standards and protocols such as Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), Enhance Data Rates for GSM Evolution (Edge) and BluetoothTM.
  • GSM Global System for Mobile Communications
  • GPRS General Packet Radio Service
  • Edge Enhance Data Rates for GSM Evolution
  • BluetoothTM BluetoothTM
  • the cell phone core 110 provides wide area network (WAN) access, while the short-range wireless transceiver core 130 supports local area network (LAN) access.
  • the reconfigurable processor core 150 has embedded read-only-memory (ROM) containing software such as IEEE802.11, GSM, GPRS, Edge, and/or BluetoothTM. protocol software, among others.
  • ROM read-only-memory
  • the cellular radio core 110 includes a transmitter/receiver section that is connected to an off-chip antenna (not shown).
  • the transmitter/receiver section is a direct conversion radio that includes an I/Q demodulator, transmit/receive oscillator/clock generator, multi-band power amplifier (PA) and PA control circuit, and voltage-controlled oscillators and synthesizers.
  • IF intermediate frequency
  • the transmitter/receiver section converts received signals into a first intermediate frequency (IF) by mixing the received signals with a synthesized local oscillator frequency and then translates the first IF signal to a second IF signal.
  • the second IF signal is hard-limited and processed to extract an RSSI signal proportional to the logarithm of the amplitude of the second IF signal.
  • the hard-limited IF signal is processed to extract numerical values related to the instantaneous signal phase, which are then combined with the RSSI signal.
  • the combined signals are processed by the processor core 150 to form PCM voice samples that are subsequently converted into an analog signal and provided to an external speaker or earphone.
  • the processor simply transfers the data over an input/output (I/O) port.
  • I/O input/output
  • an off-chip microphone captures analog voice signals, digitizes the signal, and provides the digitized signal to the processor core 150 .
  • the processor core 150 codes the signal and reduces the bit-rate for transmission.
  • the processor core 150 converts the reduced bit-rate signals to modulated signals such as I,I,Q,Q modulating signals, for example.
  • the data is modulated and the modulated signals are then fed to the cellular telephone transmitter of the transmitter/receiver section.
  • the short-range wireless transceiver core 130 contains a radio frequency (RF) modem core 132 that communicates with a link controller core 134 .
  • the processor core 150 controls the link controller vii core 134 .
  • the RF modem core 132 has a direct-conversion radio architecture with integrated VCO and frequency synthesizer.
  • the RF-unit 132 includes an RF receiver connected to an analog-digital converter (ADC), which in turn is connected to a modem 116 performing digital modulation, channel filtering, AFC, symbol timing recovery, and bit slicing operations.
  • ADC analog-digital converter
  • the modem is connected to a digital to analog converter (DAC) that in turn drives an RF transmitter.
  • DAC digital to analog converter
  • the link controller core 134 provides link control function and can be implemented in hardware or in firmware.
  • One embodiment of the core 134 is compliant with the BluetoothTM. specification and processes BluetoothTM. packet types.
  • the link controller core 134 performs a header error check, scrambles the header to randomize the data and to minimize DC bias, and performs forward error correction (FEC) encoding to reduce the chances of getting corrupted information.
  • the payload is passed through a cyclic redundancy check (CRC), encrypted/scrambled and FEC-encoded.
  • CRC cyclic redundancy check
  • the FEC encoded data is then inserted into the header.
  • a user is in his or her office and browses a web site on a portable computer through a wired local area network cable such as an Ethernet cable. Then the user walks to a nearby cubicle. As the user disconnects, the device 100 initiates a short-range connection using a BluetoothTM. connection. When the user drives from his or her office to an off-site meeting, the BluetoothTM. connection is replaced with cellular telephone connection.
  • the device 100 enables easy synchronization and mobility during a cordless connection, and open up possibilities for establishing quick, temporary (ad-hoc) connections with colleagues, friends, or office networks. Appliances using the device 100 are easy to use since they can be set to automatically find and contact each other when within range.
  • the short-range wireless transceiver core 130 When the multi-mode wireless communicator device 100 is in the cellular telephone connection mode, the short-range wireless transceiver core 130 is powered down to save power. Unused sections of the chip are also powered down to save power. Many other battery-power saving features are incorporated, and in particular, the cellular radio core 110 when in the standby mode can be powered down for most of the time and only wake up at predetermined instances to read messages transmitted by cellular telephone base stations in the radio's allocated paging time slot.
  • the cellular radio core 110 uses idle time between its waking periods to activate the short-range wireless transceiver core 130 to search for a BluetoothTM. channel signal. If BluetoothTM. signals are detected, the phone sends a deregistration message to the cellular system and/or a registration message to the BluetoothTM. system. Upon deregistration from the cellular system, the cellular radio core 110 is turned off or put into a deep sleep mode with periodic pinging and the short-range wireless transceiver core 130 and relevant parts of the synthesizer are powered up to listen to the BluetoothTM. channel.
  • the device 100 when the short-range wireless core 130 in the idle mode detects that BluetoothTM. signals have dropped in strength, the device 100 activates the cellular radio core 110 to establish a cellular link, using information from the latest periodic ping. If a cellular connection is established and BluetoothTM. signals are weak, the device 100 sends a deregistration message to the BluetoothTM. system and/or a registration message to the cellular system. Upon registration from the cellular system, the short-range transceiver core 130 is turned off or put into a deep sleep mode and the cellular radio core 110 and relevant parts of the synthesizer are powered up to listen to the cellular channel.
  • the router 190 can send packets in parallel through the separate pathways of cellular or BluetoothTM. For example, if a BluetoothTM connection is established, the router 190 knows which address it is looking at and will be able to immediately route packets using another connection standard. In doing this operation, the router 190 pings its environment to decide on optimal transmission medium. If the signal reception is poor for both pathways, the router 190 can send some packets in parallel through both the primary and secondary communication channel (cellular and/or BluetoothTM) to make sure some of the packets arrive at their destinations. However, if the signal strength is adequate, the router 190 prefers the BluetoothTM mode to minimize the number of subscribers using the capacity-limited and more expensive cellular system at any give time. Only a small percentage of the device 100 , those that are temporarily outside the BluetoothTM coverage, represents a potential load on the capacity of the cellular system, so that the number of mobile users can be many times greater than the capacity of the cellular system alone could support.
  • FIGS. 2-5 show exemplary embodiments to conserve power in a system with a plurality of processing elements or units 310 , 312 , 314 , 316 and 318 .
  • processing units 310 - 312 operate in parallel, while processing units 314 , 316 , and 318 operate in seriatim based on the previous processing unit's outputs.
  • Multiple instructions are executed at the same time in the different execution units 310 , 312 , 314 , 316 and 318 , as long as these instructions do not contend for the same resources (namely, shared memory).
  • power can be saved by varying the clock frequency, the core voltage or a combination thereof, if necessary, to reduce heat or to reduce battery power consumption.
  • FIG. 2 is a block diagram of a first embodiment to conserve power consumption for a plurality of processing units operating in parallel. This embodiment relies on varying the clock signals to control power consumption.
  • Each of the processing units 310 , 312 314 , 316 and 318 is powered by the same voltage rail.
  • a master clock 302 supplies a master clock signal to a clock controller 304 .
  • the clock controller 304 determines for each application the appropriate clock signal that is applied to each of processing units 310 , 312 314 , 316 and 318 .
  • the controller 304 drives the clock input of each of processing units 310 , 312 314 , 316 and 318 .
  • the clock can be driven independently and can be based on the tasks to be performed.
  • a task-based clock scheme for an exemplary three-processor system at a particular time point is as follows: Processor Task 1 Task 2 Task 3 Task 4 Task 5 P0 Clock Clock Clock* 1/32 Clock* 1/32 Clock* 1/32 P1 Clock* 1/16 Clock*2 ⁇ 3 Clock*1 ⁇ 4 Clock* 1/16 Clock* 1/32 P2 Clock* 1/32 Clock* 5/32 Clock*1 ⁇ 2 Clock*1 ⁇ 2 Clock* 1/32
  • the table illustrates a sequence of clock management events in a multiple processing element system. Although the figure indicates all processor clocking management to occur coincidentally, generalization of the invention to include unsynchronized and/or gradual rate changes is a simple extension of the invention. Additionally subsets of processing elements may be grouped and managed together as ensembles.
  • the controller 304 can be implemented in hardware; or the power control may be implemented by means of software. If a high performance operating level of the core is not required for a particular application, software instructions may be utilized to operate the power control circuit. In one implementation, switching ability is no longer provided to the processing unit after a preselected clock cycle period after the processing unit has completed the required task of executing the machine code instruction of the computer program to turned off (deactivated) the unit after it has executed the required task.
  • FIG. 3 is a block diagram of a second embodiment to conserve power consumption for a plurality of processing units operating in parallel. This embodiment is similar to the embodiment of FIG. 2 , except that the output of each of the sequential processing units 314 , 316 and 318 is buffered by buffers 324 , 326 and 328 , respectively.
  • the buffers 324 , 326 and 328 are first-in-first-out (FIFO) buffers.
  • FIG. 4 is a block diagram of a third embodiment to conserve power consumption for a plurality of processing units operating in parallel. This embodiment is also similar to the embodiment of FIG. 2 , with the addition of a programmable voltage source 330 .
  • FIG. 5 is a block diagram of a fourth embodiment similar to the embodiment of FIG. 3 , except that the buffered processing units operating in parallel at individually controlled supply voltages.
  • each of the processing units 310 , 312 314 , 316 and 318 is powered by independent voltage rails whose voltage can be varied within a predetermined range.
  • FIG. 6 illustrates an exemplary computer system 200 with the wireless communication device 100 .
  • the computer system 200 is preferably housed in a small, rectangular portable enclosure.
  • a processor 220 or central processing unit (CPU) provides the processing capability.
  • the processor 220 can be a reduced instruction set computer (RISC) processor or a complex instruction set computer (CISC) processor.
  • RISC reduced instruction set computer
  • CISC complex instruction set computer
  • the processor 220 is a low power CPU such as the MC68328V DragonBall device available from Motorola Inc.
  • the processor 220 is connected to a read-only-memory (ROM) 221 for receiving executable instructions as well as certain predefined data and variables.
  • the processor 220 is also connected to a random access memory (RAM) 222 for storing various run-time variables and data arrays, among others.
  • the RAM 222 is sufficient to store user application programs and data. In this instance, the RAM 222 can be provided with a back-up battery to prevent the loss of data even when the computer system is turned off.
  • non-volatile memory such as a programmable ROM such as an electrically erasable programmable ROM, a flash ROM memory in addition to the ROM 221 for data back-up purposes.
  • the computer system 200 has built-in applications stored in the ROM 221 or downloadable to the RAM 222 which include, among others, an appointment book to keep track of meetings and to-do lists, a phone book to store phone numbers and other contact information, a notepad for simple word processing applications, a world time clock which shows time around the world and city locations on a map, a database for storing user specific data, a stopwatch with an alarm clock and a countdown timer, a calculator for basic computations and financial computations, and a spreadsheet for more complex data modeling and analysis. Additionally, project planning tools, and CAD/CAM systems, Internet browsers, among others, may be added to increase the functionality of portable computing appliances. Users benefit from this software, as the software allows users to be more productive when they travel as well as when they are in their offices.
  • the computer system 200 receives instructions from the user via one or more switches such as push-button switches in a keypad 224 .
  • the processor 220 is also connected to a real-time clock/timer 225 that tracks time.
  • the clock/timer 225 can be a dedicated integrated circuit for tracking the real-time clock data, or alternatively, the clock/timer 225 can be a software clock where time is tracked based on the clock signal clocking the processor 220 .
  • the clock/timer 225 is software-based, it is preferred that the software clock/timer be interrupt driven to minimize the CPU loading. However, even an interrupt-driven software clock/timer 225 requires certain CPU overhead in tracking time.
  • the real-time clock/timer integrated circuit 225 is preferable where high processing performance is needed.
  • the processor 220 drives an internal bus 226 .
  • the computer system can access data from the ROM 221 or RAM 222 , or can acquire I/O information such as visual information via a charged coupled device (CCD) 228 .
  • CCD charged coupled device
  • the CCD unit 228 is further connected to a lens assembly (not shown) for receiving and focusing light beams to the CCD for digitization. Images scanned via the CCD unit 228 can be compressed and transmitted via a suitable network such as the Internet, through BluetoothTM channel, cellular telephone channels or via facsimile to a remote site.
  • the processor 220 is connected to the multi-mode wireless communicator device 100 , which is connected to an antenna 232 .
  • the device 100 satisfies the need to access electronic mail, paging, mode/facsimile, remote access to home computers and the Internet.
  • the antenna 232 can be a loop antenna using flat-strip conductors such as printed circuit board wiring traces as flat strip conductors have lower skin effect loss in the rectangular conductor than that of antennas with round-wire conductors.
  • One simple form of wireless communication device 100 is a wireless link to a cellular telephone where the user simply accesses a cellular channel similar to the making of a regular voice call. Also mention that one channel is reserved for making voice calls.
  • data channels are not usable for voice communications because of the latency and low packet reliability, so a dedicated voice channel is necessary.
  • GPRS there are a total of 8 channels per user, one of which is dedicated to voice when the user decides to make a voice call. This voice connection is independent of the data connection.
  • the processor 220 of the preferred embodiment accepts handwritings as an input medium from the user.
  • a digitizer 234 , a pen 233 , and a display LCD panel 235 are provided to capture the handwriting.
  • the digitizer 234 has a character input region and a numeral input region that are adapted to capture the user's handwritings on words and numbers, respectively.
  • the LCD panel 235 has a viewing screen exposed along one of the planar sides of the enclosure are provided.
  • the assembly combination of the digitizer 234 , the pen 233 and the LCD panel 235 serves as an input/output device. When operating as an output device, the screen 235 displays computer-generated images developed by the CPU 220 .
  • the LCD panel 235 also provides visual feedback to the user when one or more application software execute.
  • the digitizer 234 When operating as an input device, the digitizer 234 senses the position of the tip of the stylus or pen 233 on the viewing screen 235 and provides this information to the computer's processor 220 .
  • the present invention contemplates that display assemblies capable of sensing the pressure of the stylus on the screen can be used to provide further information to the CPU 220 .
  • the CPU 220 accepts pen strokes from the user using the stylus or pen 233 that is positioned over the digitizer 234 .
  • the position of the pen 233 is sensed by the digitizer 234 via an electromagnetic field as the user writes information to the computer system.
  • the digitizer 234 converts the position information to graphic data. For example, graphical images can be input into the pen-based computer by merely moving the stylus over the surface of the screen.
  • the CPU 220 senses the position and movement of the stylus, it generates a corresponding image on the screen to create the illusion that the pen or stylus is drawing the image directly upon the screen.
  • the data on the position and movement of the stylus is also provided to handwriting recognition software, which is stored in the ROM 221 and/or the RAM 222 .
  • the handwriting recognizer suitably converts the written instructions from the user into text data suitable for saving time and expense information. The process of converting the pen strokes into equivalent characters and/or drawing vectors using the handwriting recognizer is described below.
  • the computer system is also connected to one or more input/output (I/O) ports 242 which allow the CPU 220 to communicate with other computers.
  • I/O ports 242 may be a parallel port, a serial port, a universal serial bus (USB) port, a Firewire port, or alternatively a proprietary port to enable the computer system to dock with the host computer.
  • USB universal serial bus
  • Firewire port or alternatively a proprietary port to enable the computer system to dock with the host computer.
  • the I/O port 242 is housed in a docking port, after docking, the I/O ports 242 and software located on a host computer (not shown) support an automatic synchronization of data between the computer system and the host computer.
  • the synchronization software runs in the background mode on the host computer and listens for a synchronization request or command from the computer system 200 of the present invention.
  • the I/O port 242 is preferably a high speed serial port such as an RS-232 port, a Universal Serial Bus, or a Fibre Channel for cost reasons, but can also be a parallel port for higher data transfer rate.
  • One or more portable computers 200 can be dispersed in nearby cell regions and communicate with a cellular mobile support station (MSS) as well as a Bluetooth station.
  • MSS cellular mobile support station
  • the cellular and Bluetooth stations relay the messages via stations positioned on a global basis to ensure that the user is connected to the network, regardless of his or her reference to home.
  • the stations are eventually connected to the Internet, which is a super-network, or a network of networks, interconnecting a number of computers together using predefined protocols to tell the computers how to locate and exchange data with one another.
  • the primary elements of the Internet are host computers that are linked by a backbone telecommunications network and communicate using one or more protocols.
  • the most fundamental of Internet protocols is called Transmission Control Protocol/Internet Protocol (TCP/IP), which is essentially an envelope where data resides.
  • TCP/IP Transmission Control Protocol/Internet Protocol
  • the TCP protocol tells computers what is in the packet, and the IP protocol tells computers where to send the packet.
  • the IP transmits blocks of data called datagrams from sources to destinations throughout the Internet. As packets of information travel across the Internet, routers throughout the network check the addresses of data packages and determine the best route to send them to their destinations. Furthermore, packets of information are detoured around non-operative computers if necessary until the information finds its way to the proper destination.

Abstract

A low power a reconfigurable processor core includes one or more processing units, each unit having a clock input that controls the performance of the unit; and a controller having a plurality of clock outputs each coupled to the clock inputs of the processing units, the controller varying the clock frequency of each processing unit to optimize power consumption and processing power for a task.

Description

  • This application is a continuation of U.S. patent application Ser. No. 09/837,651, filed Apr. 18, 2001 entitled “Low Power Clocking Systems and Methods” by Robert Warren Sherburne, Jr.
  • BACKGROUND
  • The present invention relates to a low power electronic device.
  • Advances in technology have allowed ever increasing functional products that cost less. Due to the increasing functionality, power consumption for each device has also increased. For certain products such as laptop or notebook computers, handheld computers, cellular telephones, and other wireless personal digital assistants that are designed for situations where power outlets are not available, the conservation of power is particularly important.
  • While portability requires compact, highly integrated devices to decrease size and weight, portable devices are not necessarily simplistic devices. For example, to handle wireless signal processing, cell phones and wireless handheld devices require intensive calculation and processing. One way to achieve high performance is to apply parallelism in the processing of instructions. For example, multiple execution units can be operated in parallel under the control of a dispatcher to permit simultaneous processing of instructions. While the use of multiple parallel-operated execution units increases the performance of the computer, this results in increased power consumption. Even though multiple parallel execution units increase the performance of the processor, power is wasted when some of the execution units are idle or performing no operations during various time intervals.
  • Designers have used various techniques for reducing power consumption of the processor. For example, as discussed in U.S. Pat. No. 6,088,807 to Maher, et al., the speed of the system clock is reduced to a fraction of the normal operating frequency during periods of inactivity. Since the power consumption of the processor is proportional to the frequency, reducing the frequency of the system clock also reduces the power consumption of the microprocessor. A second technique for reducing power turns off the system clock during periods of inactivity. Turning off the system clock affects all circuitry on the motherboard. Consequently, the circuitry that disables the system clock must also save all pertinent information in the microprocessor and associated board logic and restore the data upon resumption of activity such that the state of the computer after resumption of the system clock will be identical to the state of the computer prior to disabling the system clock. As a result, this technique for consuming power is both costly because of the complicated circuitry and slow because of the need to store and restore the state of the computer.
  • In clocked synchronous digital systems, a typical design style revolves around a single clock rate that drives all clocked elements of the design. Power is managed by turning on or off the clock to subsets of the system. Alternatively power may also be managed by slowing down the clock to a fraction of its normally active rate. For example, the Oak DSP features a “slow mode” whereby a DSP core may be software configured to divide its input clock by an integer N. The Oak processor is described at www.dspg.com/prodtech/core/teak.htm.
  • More recently, designs may rely on dynamic voltage management in order to reduce power consumption as in the Intel Xscale architecture; this however cannot be performed instantly and is targeted at relatively infrequent mode or usage changes. In one implementation of the Intel Xscale for mobile processing applications, the Intel 80200 processor, a single processor core, accepts an input clock frequency of 33 to 66 MHz and uses an internal PLL to lock to the input clock and multiplies the frequency by a variable multiplier to produce a high-speed core clock. This multiplier is initially configured by the PLL configuration pin and can be changed anytime later by software. Software has the ability to change the frequency of the clock without having to reset the core. Changing the clock frequency is similar to entering a low power mode. First, the core is stalled waiting for all processing to complete, second the new configuration is programmed, and then finally the core waits for the PLL to re-lock. This feature allows software to conserve power by matching the core frequency to the current workload.
  • SUMMARY
  • A system with multiple processing elements is dynamically managed on a per-task basis so as to clock each element at the lowest rate possible, either to reduce peak power dissipation, reduce average power dissipation, minimize buffer memory size and power, or to achieve a related, intermediate goal.
  • In one aspect, a low power a reconfigurable processor core includes one or more processing units, each unit having a clock input that controls the performance of the unit; and a controller having a plurality of clock outputs each coupled to the clock inputs of the processing units, the controller varying the clock frequency of each processing unit to optimize power consumption and processing power for a task.
  • Implementations of the above aspect may include one or more of the following. The system uses a plurality of clock signals, each independently rate controlled to single destination processing element, in a system on a chip which comprises multiple such processors. In one implementation, these clocks may be all derivatives of a single master clock. In another implementation, the clocks can be gated versions of a master clock, thus retaining a level of synchronous relationship to each other.
  • The system can change the clock rate of each processor independently of all the other processors, as a result of a decision or algorithm invoked in order to accomplish some goal, such as power reduction, buffer memory management, or emissions control. The clock rate management may be pre-assigned based upon tasks or routines handled by each processor, or it may be invoked as a result of external or internal system stimuli, including but not limited to user input or thermal management.
  • The system allows these changes to occur on-the-fly, during normal operation as the processors' tasks or needs vary. The control of each processor's clock rate may or may not be performed in a centralized manner on the chip. Clock rate control need not be limited to simple clock division, but rather may be more sophisticated and flexible so as to obtain rates such as three-eighths or two-thirds of the driving clock.
  • Each processing element may connect to other processing elements through use of buffer memories or FIFOs. A FIFO, for example, may support isosynchronous or even asynchronous read versus write ports, hence supporting mismatched rate processing elements.
  • Advantages of the system may include one or more of the following. The system reduces power dissipation. This yields the benefit of longer usage time per battery replacement or charging; reduced weight and size by use of fewer and/or smaller batteries; reduced thermal and electromagnetic emissions; and increased reliability. The system is ideal for battery-operated processor-based equipment, where it is desirable to minimize battery size so that the equipment can be made small and lightweight. The reduction is due to the fact that the functional units are not kept on when they are not needed. As will be explained in detail below, since CMOS technology is used, power is only consumed when a functional unit is changing state (i.e., switching). Since a functional unit is “off” when it is prevented from changing state, negligible power is consumed by that functional unit. This means that a functional unit that is off does not consume power, which results in the power consumption reduction. Since power consumption is reduced, the heat dissipation requirements and associated packaging of the system is reduced. In addition, when a battery source is used, it can be made smaller for a given operational period of time. Furthermore, because power consumption is reduced, the line width of power supply buses can also be reduced.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The accompanying drawings, which are incorporated in and form a part of this specification, illustrate embodiments of the invention and, together with the description, serve to explain the principles of the invention:
  • FIG. 1 is a block diagram of a single chip wireless communications integrated circuit.
  • FIG. 2 is a block diagram of a first embodiment to conserve power consumption for a plurality of processing units operating in parallel.
  • FIG. 3 is a block diagram of a second embodiment to conserve power consumption for a plurality of processing units operating in parallel.
  • FIG. 4 is a block diagram of a third embodiment to conserve power consumption for a plurality of processing units operating in parallel.
  • FIG. 5 is a block diagram of a fourth embodiment to conserve power consumption for a plurality of processing units operating in parallel.
  • FIG. 6 is a block diagram of a portable computer system in accordance with the present invention.
  • DETAILED DESCRIPTION
  • Reference will now be made in detail to the preferred embodiments of the invention, examples of which are illustrated in the accompanying drawings. While the invention will be described in conjunction with the preferred embodiments, it will be understood that they are not intended to limit the invention to these embodiments. On the contrary, the invention is intended to cover alternatives, modifications and equivalents, which may be included within the spirit and scope of the invention as defined by the appended claims. Furthermore, in the following detailed description of the present invention, numerous specific details are set forth in order to provide a thorough understanding of the present invention. However, it will be obvious to one of ordinary skill in the art that the present invention may be practiced without these specific details. In other instances, well known methods, procedures, components, and circuits have not been described in detail as not to unnecessarily obscure aspects of the present invention.
  • FIG. 1 shows a block diagram of a multi-mode wireless communicator device 100 fabricated on a single silicon integrated chip. In one implementation, the device 100 is an integrated CMOS device with radio frequency (RF) circuits, including a cellular radio core 110, a short-range wireless transceiver core 130, and a sniffer 111, along side digital circuits, including a reconfigurable processor core 150, a high-density memory array core 170, and a router 190. The high-density memory array core 170 can include various memory technologies such as flash memory and dynamic random access memory (DRAM), among others, on different portions of the memory array core.
  • The reconfigurable processor core 150 can include one or more processors 151 such as MIPS processors and/or one or more digital signal processors (DSPs) 153, among others. The reconfigurable processor core 150 has a bank of efficient processors 151 and a bank of DSPs 153 with embedded functions. These processors 151 and 153 can be configured to operate optimally on specific problems. For example, the bank of DSPs 153 can be optimized to handle discrete cosine transforms (DCTs) or Viterbi encodings, among others. Additionally, dedicated hardware 155 can be provided to handle specific algorithms in silicon more efficiently than the programmable processors 151 and 153. The number of active processors is controlled depending on the application, so that power is not used when it is not needed. This embodiment does not rely on complex clock control methods to conserve power, since the individual clocks are not run at high speed, but rather the unused processor is simply turned off when not needed.
  • One exemplary processor embedded in the multi-processor core 150 includes a register bank, a multiplier, a barrel shifter, an arithmetic logic unit (ALU) and a write data register. The exemplary processor can handle DSP functions by having a multiply-accumulate (MAC) unit in parallel with the ALU. Embodiments of the processor can rapidly execute multiply-accumulate (MAC) and add-compare-subtract (ACS) instructions in either scalar or vector mode. Other parts of the exemplary processor include an instruction pipeline, a multiplexer, one or more instruction decoders, and a read data register. A program counter (PC) register addresses the memory system 170. A program counter controller serves to increment the program counter value within the program counter register as each instruction is executed and a new instruction must be fetched for the instruction pipeline. Also, when a branch instruction is executed, the target address of the branch instruction is loaded into the program counter by the program counter controller. The processor core 150 incorporates data pathways between the various functional units. The lines of the data pathways may be synchronously used for writing information into the core 150, or for reading information from the core 150. Strobe lines can be used for this purpose.
  • In operation, instructions within the instruction pipeline are decoded by one or more of the instruction decoders to produce various core control signals that are passed to the different functional elements of the processor core 150. In response to these core control signals, the different portions of the processor core conduct processing operations, such as multiplication, addition, subtraction and logical operations. The register bank includes a current programming status register (CPSR) and a saved programming status register (SPSR). The current programming status register holds various condition and status flags for the processor core 150. These flags may include processing mode flags (e.g. system mode, user mode, memory abort mode, etc.) as well as flags indicating the occurrence of zero results in arithmetic operations, carries and the like.
  • Through the router 190, the multi-mode wireless communicator device 100 can detect and communicate with any wireless system it encounters at a given frequency. The router 190 performs the switch in real time through an engine that keeps track of the addresses of where the packets are going. The router 190 can send packets in parallel through two or more separate pathways. For example, if a Bluetooth™. connection is established, the router 190 knows which address it is looking at and will be able to immediately route packets using another connection standard. In doing this operation, the router 190 working with the RF sniffer 111 periodically scans its radio environment (‘ping’) to decide on optimal transmission medium. The router 190 can send some packets in parallel through both the primary and secondary communication channel to make sure some of the packets arrive at their destinations.
  • The reconfigurable processor core 150 controls the cellular radio core 110 and the short-range wireless transceiver core 130 to provide a seamless dual-mode network integrated circuit that operates with a plurality of distinct and unrelated communications standards and protocols such as Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), Enhance Data Rates for GSM Evolution (Edge) and Bluetooth™. The cell phone core 110 provides wide area network (WAN) access, while the short-range wireless transceiver core 130 supports local area network (LAN) access. The reconfigurable processor core 150 has embedded read-only-memory (ROM) containing software such as IEEE802.11, GSM, GPRS, Edge, and/or Bluetooth™. protocol software, among others.
  • In one embodiment, the cellular radio core 110 includes a transmitter/receiver section that is connected to an off-chip antenna (not shown). The transmitter/receiver section is a direct conversion radio that includes an I/Q demodulator, transmit/receive oscillator/clock generator, multi-band power amplifier (PA) and PA control circuit, and voltage-controlled oscillators and synthesizers. In another embodiment of transmitter/receiver section 112, intermediate frequency (IF) stages are used. In this embodiment, during cellular reception, the transmitter/receiver section converts received signals into a first intermediate frequency (IF) by mixing the received signals with a synthesized local oscillator frequency and then translates the first IF signal to a second IF signal. The second IF signal is hard-limited and processed to extract an RSSI signal proportional to the logarithm of the amplitude of the second IF signal. The hard-limited IF signal is processed to extract numerical values related to the instantaneous signal phase, which are then combined with the RSSI signal.
  • For voice reception, the combined signals are processed by the processor core 150 to form PCM voice samples that are subsequently converted into an analog signal and provided to an external speaker or earphone. For data reception, the processor simply transfers the data over an input/output (I/O) port. During voice transmission, an off-chip microphone captures analog voice signals, digitizes the signal, and provides the digitized signal to the processor core 150. The processor core 150 codes the signal and reduces the bit-rate for transmission. The processor core 150 converts the reduced bit-rate signals to modulated signals such as I,I,Q,Q modulating signals, for example. During data transmission, the data is modulated and the modulated signals are then fed to the cellular telephone transmitter of the transmitter/receiver section.
  • Turning now to the short-range wireless transceiver core 130, the short-range wireless transceiver core 130 contains a radio frequency (RF) modem core 132 that communicates with a link controller core 134. The processor core 150 controls the link controller vii core 134. In one embodiment, the RF modem core 132 has a direct-conversion radio architecture with integrated VCO and frequency synthesizer. The RF-unit 132 includes an RF receiver connected to an analog-digital converter (ADC), which in turn is connected to a modem 116 performing digital modulation, channel filtering, AFC, symbol timing recovery, and bit slicing operations. For transmission, the modem is connected to a digital to analog converter (DAC) that in turn drives an RF transmitter.
  • The link controller core 134 provides link control function and can be implemented in hardware or in firmware. One embodiment of the core 134 is compliant with the Bluetooth™. specification and processes Bluetooth™. packet types. For header creation, the link controller core 134 performs a header error check, scrambles the header to randomize the data and to minimize DC bias, and performs forward error correction (FEC) encoding to reduce the chances of getting corrupted information. The payload is passed through a cyclic redundancy check (CRC), encrypted/scrambled and FEC-encoded. The FEC encoded data is then inserted into the header.
  • In one exemplary operating sequence, a user is in his or her office and browses a web site on a portable computer through a wired local area network cable such as an Ethernet cable. Then the user walks to a nearby cubicle. As the user disconnects, the device 100 initiates a short-range connection using a Bluetooth™. connection. When the user drives from his or her office to an off-site meeting, the Bluetooth™. connection is replaced with cellular telephone connection. Thus, the device 100 enables easy synchronization and mobility during a cordless connection, and open up possibilities for establishing quick, temporary (ad-hoc) connections with colleagues, friends, or office networks. Appliances using the device 100 are easy to use since they can be set to automatically find and contact each other when within range.
  • When the multi-mode wireless communicator device 100 is in the cellular telephone connection mode, the short-range wireless transceiver core 130 is powered down to save power. Unused sections of the chip are also powered down to save power. Many other battery-power saving features are incorporated, and in particular, the cellular radio core 110 when in the standby mode can be powered down for most of the time and only wake up at predetermined instances to read messages transmitted by cellular telephone base stations in the radio's allocated paging time slot.
  • When the user arrives at the destination, according to one implementation, the cellular radio core 110 uses idle time between its waking periods to activate the short-range wireless transceiver core 130 to search for a Bluetooth™. channel signal. If Bluetooth™. signals are detected, the phone sends a deregistration message to the cellular system and/or a registration message to the Bluetooth™. system. Upon deregistration from the cellular system, the cellular radio core 110 is turned off or put into a deep sleep mode with periodic pinging and the short-range wireless transceiver core 130 and relevant parts of the synthesizer are powered up to listen to the Bluetooth™. channel.
  • According to one implementation, when the short-range wireless core 130 in the idle mode detects that Bluetooth™. signals have dropped in strength, the device 100 activates the cellular radio core 110 to establish a cellular link, using information from the latest periodic ping. If a cellular connection is established and Bluetooth™. signals are weak, the device 100 sends a deregistration message to the Bluetooth™. system and/or a registration message to the cellular system. Upon registration from the cellular system, the short-range transceiver core 130 is turned off or put into a deep sleep mode and the cellular radio core 110 and relevant parts of the synthesizer are powered up to listen to the cellular channel.
  • The router 190 can send packets in parallel through the separate pathways of cellular or Bluetooth™. For example, if a Bluetooth™ connection is established, the router 190 knows which address it is looking at and will be able to immediately route packets using another connection standard. In doing this operation, the router 190 pings its environment to decide on optimal transmission medium. If the signal reception is poor for both pathways, the router 190 can send some packets in parallel through both the primary and secondary communication channel (cellular and/or Bluetooth™) to make sure some of the packets arrive at their destinations. However, if the signal strength is adequate, the router 190 prefers the Bluetooth™ mode to minimize the number of subscribers using the capacity-limited and more expensive cellular system at any give time. Only a small percentage of the device 100, those that are temporarily outside the Bluetooth™ coverage, represents a potential load on the capacity of the cellular system, so that the number of mobile users can be many times greater than the capacity of the cellular system alone could support.
  • FIGS. 2-5 show exemplary embodiments to conserve power in a system with a plurality of processing elements or units 310, 312, 314, 316 and 318. In these embodiments, processing units 310-312 operate in parallel, while processing units 314, 316, and 318 operate in seriatim based on the previous processing unit's outputs. Multiple instructions are executed at the same time in the different execution units 310, 312, 314, 316 and 318, as long as these instructions do not contend for the same resources (namely, shared memory). As discussed below, power can be saved by varying the clock frequency, the core voltage or a combination thereof, if necessary, to reduce heat or to reduce battery power consumption.
  • FIG. 2 is a block diagram of a first embodiment to conserve power consumption for a plurality of processing units operating in parallel. This embodiment relies on varying the clock signals to control power consumption. Each of the processing units 310, 312 314, 316 and 318 is powered by the same voltage rail. A master clock 302 supplies a master clock signal to a clock controller 304. The clock controller 304 determines for each application the appropriate clock signal that is applied to each of processing units 310, 312 314, 316 and 318. The controller 304 drives the clock input of each of processing units 310, 312 314, 316 and 318. The clock can be driven independently and can be based on the tasks to be performed. For example, a task-based clock scheme for an exemplary three-processor system at a particular time point is as follows:
    Processor Task 1 Task 2 Task 3 Task 4 Task 5
    P0 Clock Clock Clock* 1/32 Clock* 1/32 Clock* 1/32
    P1 Clock* 1/16 Clock*⅔ Clock*¼ Clock* 1/16 Clock* 1/32
    P2 Clock* 1/32 Clock* 5/32 Clock*½ Clock*½ Clock* 1/32
  • The table illustrates a sequence of clock management events in a multiple processing element system. Although the figure indicates all processor clocking management to occur coincidentally, generalization of the invention to include unsynchronized and/or gradual rate changes is a simple extension of the invention. Additionally subsets of processing elements may be grouped and managed together as ensembles.
  • The controller 304 can be implemented in hardware; or the power control may be implemented by means of software. If a high performance operating level of the core is not required for a particular application, software instructions may be utilized to operate the power control circuit. In one implementation, switching ability is no longer provided to the processing unit after a preselected clock cycle period after the processing unit has completed the required task of executing the machine code instruction of the computer program to turned off (deactivated) the unit after it has executed the required task.
  • FIG. 3 is a block diagram of a second embodiment to conserve power consumption for a plurality of processing units operating in parallel. This embodiment is similar to the embodiment of FIG. 2, except that the output of each of the sequential processing units 314, 316 and 318 is buffered by buffers 324, 326 and 328, respectively. In one embodiment, the buffers 324, 326 and 328 are first-in-first-out (FIFO) buffers.
  • FIG. 4 is a block diagram of a third embodiment to conserve power consumption for a plurality of processing units operating in parallel. This embodiment is also similar to the embodiment of FIG. 2, with the addition of a programmable voltage source 330. FIG. 5 is a block diagram of a fourth embodiment similar to the embodiment of FIG. 3, except that the buffered processing units operating in parallel at individually controlled supply voltages. In the embodiments of FIGS. 4-5, each of the processing units 310, 312 314, 316 and 318 is powered by independent voltage rails whose voltage can be varied within a predetermined range.
  • FIG. 6 illustrates an exemplary computer system 200 with the wireless communication device 100. The computer system 200 is preferably housed in a small, rectangular portable enclosure. Referring now to FIG. 2, a general purpose architecture for entering information into the data management by writing or speaking to the computer system is illustrated. A processor 220 or central processing unit (CPU) provides the processing capability. The processor 220 can be a reduced instruction set computer (RISC) processor or a complex instruction set computer (CISC) processor. In one embodiment, the processor 220 is a low power CPU such as the MC68328V DragonBall device available from Motorola Inc.
  • The processor 220 is connected to a read-only-memory (ROM) 221 for receiving executable instructions as well as certain predefined data and variables. The processor 220 is also connected to a random access memory (RAM) 222 for storing various run-time variables and data arrays, among others. The RAM 222 is sufficient to store user application programs and data. In this instance, the RAM 222 can be provided with a back-up battery to prevent the loss of data even when the computer system is turned off. However, it is generally desirable to have some type of long term storage such as a commercially available miniature hard disk drive, or non-volatile memory such as a programmable ROM such as an electrically erasable programmable ROM, a flash ROM memory in addition to the ROM 221 for data back-up purposes.
  • The computer system 200 has built-in applications stored in the ROM 221 or downloadable to the RAM 222 which include, among others, an appointment book to keep track of meetings and to-do lists, a phone book to store phone numbers and other contact information, a notepad for simple word processing applications, a world time clock which shows time around the world and city locations on a map, a database for storing user specific data, a stopwatch with an alarm clock and a countdown timer, a calculator for basic computations and financial computations, and a spreadsheet for more complex data modeling and analysis. Additionally, project planning tools, and CAD/CAM systems, Internet browsers, among others, may be added to increase the functionality of portable computing appliances. Users benefit from this software, as the software allows users to be more productive when they travel as well as when they are in their offices.
  • The computer system 200 receives instructions from the user via one or more switches such as push-button switches in a keypad 224. The processor 220 is also connected to a real-time clock/timer 225 that tracks time. The clock/timer 225 can be a dedicated integrated circuit for tracking the real-time clock data, or alternatively, the clock/timer 225 can be a software clock where time is tracked based on the clock signal clocking the processor 220. In the event that the clock/timer 225 is software-based, it is preferred that the software clock/timer be interrupt driven to minimize the CPU loading. However, even an interrupt-driven software clock/timer 225 requires certain CPU overhead in tracking time. Thus, the real-time clock/timer integrated circuit 225 is preferable where high processing performance is needed.
  • The processor 220 drives an internal bus 226. Through the bus 226, the computer system can access data from the ROM 221 or RAM 222, or can acquire I/O information such as visual information via a charged coupled device (CCD) 228. The CCD unit 228 is further connected to a lens assembly (not shown) for receiving and focusing light beams to the CCD for digitization. Images scanned via the CCD unit 228 can be compressed and transmitted via a suitable network such as the Internet, through Bluetooth™ channel, cellular telephone channels or via facsimile to a remote site.
  • Additionally, the processor 220 is connected to the multi-mode wireless communicator device 100, which is connected to an antenna 232. The device 100 satisfies the need to access electronic mail, paging, mode/facsimile, remote access to home computers and the Internet. The antenna 232 can be a loop antenna using flat-strip conductors such as printed circuit board wiring traces as flat strip conductors have lower skin effect loss in the rectangular conductor than that of antennas with round-wire conductors. One simple form of wireless communication device 100 is a wireless link to a cellular telephone where the user simply accesses a cellular channel similar to the making of a regular voice call. Also mention that one channel is reserved for making voice calls. Typically, data channels are not usable for voice communications because of the latency and low packet reliability, so a dedicated voice channel is necessary. In one implementation, GPRS, there are a total of 8 channels per user, one of which is dedicated to voice when the user decides to make a voice call. This voice connection is independent of the data connection.
  • The processor 220 of the preferred embodiment accepts handwritings as an input medium from the user. A digitizer 234, a pen 233, and a display LCD panel 235 are provided to capture the handwriting. Preferably, the digitizer 234 has a character input region and a numeral input region that are adapted to capture the user's handwritings on words and numbers, respectively. The LCD panel 235 has a viewing screen exposed along one of the planar sides of the enclosure are provided. The assembly combination of the digitizer 234, the pen 233 and the LCD panel 235 serves as an input/output device. When operating as an output device, the screen 235 displays computer-generated images developed by the CPU 220. The LCD panel 235 also provides visual feedback to the user when one or more application software execute. When operating as an input device, the digitizer 234 senses the position of the tip of the stylus or pen 233 on the viewing screen 235 and provides this information to the computer's processor 220. In addition to the vector information, the present invention contemplates that display assemblies capable of sensing the pressure of the stylus on the screen can be used to provide further information to the CPU 220.
  • The CPU 220 accepts pen strokes from the user using the stylus or pen 233 that is positioned over the digitizer 234. As the user “writes,” the position of the pen 233 is sensed by the digitizer 234 via an electromagnetic field as the user writes information to the computer system. The digitizer 234 converts the position information to graphic data. For example, graphical images can be input into the pen-based computer by merely moving the stylus over the surface of the screen. As the CPU 220 senses the position and movement of the stylus, it generates a corresponding image on the screen to create the illusion that the pen or stylus is drawing the image directly upon the screen. The data on the position and movement of the stylus is also provided to handwriting recognition software, which is stored in the ROM 221 and/or the RAM 222. The handwriting recognizer suitably converts the written instructions from the user into text data suitable for saving time and expense information. The process of converting the pen strokes into equivalent characters and/or drawing vectors using the handwriting recognizer is described below.
  • The computer system is also connected to one or more input/output (I/O) ports 242 which allow the CPU 220 to communicate with other computers. Each of the I/O ports 242 may be a parallel port, a serial port, a universal serial bus (USB) port, a Firewire port, or alternatively a proprietary port to enable the computer system to dock with the host computer. In the event that the I/O port 242 is housed in a docking port, after docking, the I/O ports 242 and software located on a host computer (not shown) support an automatic synchronization of data between the computer system and the host computer. During operation, the synchronization software runs in the background mode on the host computer and listens for a synchronization request or command from the computer system 200 of the present invention. Changes made on the computer system and the host computer will be reflected on both systems after synchronization. Preferably, the synchronization software only synchronizes the portions of the files that have been modified to reduce the updating times. The I/O port 242 is preferably a high speed serial port such as an RS-232 port, a Universal Serial Bus, or a Fibre Channel for cost reasons, but can also be a parallel port for higher data transfer rate.
  • One or more portable computers 200 can be dispersed in nearby cell regions and communicate with a cellular mobile support station (MSS) as well as a Bluetooth station. The cellular and Bluetooth stations relay the messages via stations positioned on a global basis to ensure that the user is connected to the network, regardless of his or her reference to home. The stations are eventually connected to the Internet, which is a super-network, or a network of networks, interconnecting a number of computers together using predefined protocols to tell the computers how to locate and exchange data with one another. The primary elements of the Internet are host computers that are linked by a backbone telecommunications network and communicate using one or more protocols. The most fundamental of Internet protocols is called Transmission Control Protocol/Internet Protocol (TCP/IP), which is essentially an envelope where data resides. The TCP protocol tells computers what is in the packet, and the IP protocol tells computers where to send the packet. The IP transmits blocks of data called datagrams from sources to destinations throughout the Internet. As packets of information travel across the Internet, routers throughout the network check the addresses of data packages and determine the best route to send them to their destinations. Furthermore, packets of information are detoured around non-operative computers if necessary until the information finds its way to the proper destination.
  • Although specific embodiments of the present invention have been illustrated in the accompanying drawings and described in the foregoing detailed description, it will be understood that the invention is not limited to the particular embodiments described herein, but is capable of numerous rearrangements, modifications, and substitutions without departing from the scope of the invention. The following claims are intended to encompass all such modifications.

Claims (21)

1-20. (canceled)
21. An integrated circuit comprising:
a reconfigurable processor core including a plurality of processor units having clock inputs to receive a clock frequency to clock operation of the respective unit; and
a controller having a plurality of clock outputs coupled to respective clock inputs of at least some of the plurality of processor units, wherein the controller is capable of independently controlling the clock frequency for the at least some of the plurality of processor units.
22. The integrated circuit of claim 21, wherein at least one of the plurality of processor units comprises a digital signal processor (DSP).
23. The integrated circuit of claim 22, wherein at least another one of the plurality of processor units comprises a reduced instruction set computer (RISC) processor.
24. The integrated circuit of claim 21, wherein at least one of the plurality of processor units is to be dynamically manageable on a per-task basis.
25. The integrated circuit of claim 21, wherein the controller is capable of independently controlling the clock frequency for at least some of the plurality of processor units on a pre-assigned basis.
26. The integrated circuit of claim 21, further comprising a buffer coupled between an output of a first one of the plurality of processor units and an input to a second one of the plurality of processor units.
27. The integrated circuit of claim 21, wherein the integrated circuit further comprises:
a first radio frequency wireless transceiver coupled to the plurality of processor units; and
a second radio frequency wireless transceiver coupled to the plurality of processor units.
28. The integrated circuit of claim 27, wherein the plurality of processor units, the first radio frequency wireless transceiver, and the second radio frequency wireless transceiver are integrated on a single substrate.
29. The integrated circuit of claim 21, wherein the controller is capable of independently controlling the clock frequency for at least some of the plurality of processor units based upon a system stimulus.
30. The integrated circuit of claim 21, wherein the controller is capable of pre-assigning a clock frequency to at least one of the plurality of processor units based upon a task to be performed by the at least one processor unit.
31. The integrated circuit of claim 21, wherein the plurality of processor units comprises at least two processor units capable of operating in parallel and at least two serial processor units coupled such that an output of the first serial processor unit is coupled to an input of the second serial processor unit.
32. The integrated circuit of claim 31, wherein each of the plurality of processor units is coupled to receive an independently controllable supply voltage.
33. A system comprising:
a display; and
an integrated circuit on a single substrate coupled to the display, the integrated circuit including:
a plurality of processor units including a first processor unit having a first clock input to receive a first clock signal to clock operation of the first processor unit, a second processor unit having a second clock input to receive a second clock signal to clock operation of the second processor unit, and a third processor unit having a third clock input to receive a third clock signal to clock operation of the third processor unit; and
a controller to generate and independently rate control the first clock signal, the second clock signal and the third clock signal, wherein the controller is capable of varying the first clock signal, the second clock signal and the third clock signal; and
a first radio frequency wireless transceiver coupled to the plurality of processor units.
34. The system of claim 33, wherein the integrated circuit further comprises a second radio frequency wireless transceiver coupled to the plurality of processor units.
35. The system of claim 33, further comprising a buffer coupled between an output of the third processor unit and an input to a fourth processor unit, the fourth processor unit on the single substrate.
36. The system of claim 35, wherein the first processor unit and the second processor unit comprise parallel processors and the third processor unit and the fourth processor unit comprise serial processors.
37. A method comprising:
generating at least a first clock signal, a second clock signal and a third clock signal via a controller on an integrated circuit; and
providing the first clock signal to a first processor unit and a second processor unit of the integrated circuit; and
providing the second clock signal and the third clock signal to a third processor unit and a fourth processor unit on the integrated circuit, respectively.
38. The method of claim 37, further comprising varying at least one of the first, second, and third clock signals using the controller.
39. The method of claim 37, further comprising independently rate controlling each of the first clock signal, the second clock signal and the third clock signal.
40. The method of claim 37, further comprising providing a clock signal controlled by the controller to a radio frequency wireless transceiver on the integrated circuit.
US11/218,692 2001-04-18 2005-09-02 Low power clocking systems and methods Abandoned US20060059377A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/218,692 US20060059377A1 (en) 2001-04-18 2005-09-02 Low power clocking systems and methods

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/837,651 US6993669B2 (en) 2001-04-18 2001-04-18 Low power clocking systems and methods
US11/218,692 US20060059377A1 (en) 2001-04-18 2005-09-02 Low power clocking systems and methods

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US09/837,651 Continuation US6993669B2 (en) 2001-03-21 2001-04-18 Low power clocking systems and methods

Publications (1)

Publication Number Publication Date
US20060059377A1 true US20060059377A1 (en) 2006-03-16

Family

ID=25275055

Family Applications (3)

Application Number Title Priority Date Filing Date
US09/837,651 Expired - Lifetime US6993669B2 (en) 2001-03-21 2001-04-18 Low power clocking systems and methods
US10/867,901 Expired - Lifetime US7139921B2 (en) 2001-03-21 2004-06-14 Low power clocking systems and methods
US11/218,692 Abandoned US20060059377A1 (en) 2001-04-18 2005-09-02 Low power clocking systems and methods

Family Applications Before (2)

Application Number Title Priority Date Filing Date
US09/837,651 Expired - Lifetime US6993669B2 (en) 2001-03-21 2001-04-18 Low power clocking systems and methods
US10/867,901 Expired - Lifetime US7139921B2 (en) 2001-03-21 2004-06-14 Low power clocking systems and methods

Country Status (1)

Country Link
US (3) US6993669B2 (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040174906A1 (en) * 2003-03-05 2004-09-09 Takahiro Ohkuma Packet processing circuit
US20050228904A1 (en) * 2004-03-16 2005-10-13 Moore Charles H Computer processor array
US20060080566A1 (en) * 2001-03-21 2006-04-13 Sherburne Robert W Jr Low power clocking systems and methods
US20070072549A1 (en) * 2005-09-29 2007-03-29 Carolan Kevin M Method for reducing electromagnetic emissions in a multiple micro-controller device
US20070192646A1 (en) * 2006-02-16 2007-08-16 Moore Charles H Asynchronous power saving computer
US20090096797A1 (en) * 2007-10-11 2009-04-16 Qualcomm Incorporated Demand based power control in a graphics processing unit
US20090138737A1 (en) * 2007-11-28 2009-05-28 International Business Machines Corporation Apparatus, method and program product for adaptive real-time power and perfomance optimization of multi-core processors
US20090199023A1 (en) * 2008-02-05 2009-08-06 Samsung Electronics Co., Ltd. Processor and Semiconductor Device Capable of Reducing Power Consumption
US20090235108A1 (en) * 2008-03-11 2009-09-17 Gold Spencer M Automatic processor overclocking
US20100281238A1 (en) * 2006-02-16 2010-11-04 Moore Charles H Execution of instructions directly from input source
US20110016251A1 (en) * 2009-07-16 2011-01-20 Via Technologies, Inc. Multi-processor system and dynamic power saving method thereof
US7904615B2 (en) 2006-02-16 2011-03-08 Vns Portfolio Llc Asynchronous computer communication
US7966481B2 (en) 2006-02-16 2011-06-21 Vns Portfolio Llc Computer system and method for executing port communications without interrupting the receiving computer
US20110258417A1 (en) * 2010-04-20 2011-10-20 Senthilkannan Chandrasekaran Power and throughput optimization of an unbalanced instruction pipeline

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7142882B2 (en) 2001-03-09 2006-11-28 Schmidt Dominik J Single chip wireless communication integrated circuit
US6993669B2 (en) * 2001-04-18 2006-01-31 Gallitzin Allegheny Llc Low power clocking systems and methods
US20030023794A1 (en) * 2001-07-26 2003-01-30 Venkitakrishnan Padmanabha I. Cache coherent split transaction memory bus architecture and protocol for a multi processor chip device
US7187663B2 (en) * 2001-10-09 2007-03-06 Schmidt Dominik J Flexible processing system
US7120755B2 (en) * 2002-01-02 2006-10-10 Intel Corporation Transfer of cache lines on-chip between processing cores in a multi-core system
US7191350B2 (en) * 2002-01-30 2007-03-13 Matsushita Electric Industrial Co., Ltd. Instruction conversion apparatus and instruction conversion method providing power control information, program and circuit for implementing the instruction conversion, and microprocessor for executing the converted instruction
EP1351117A1 (en) * 2002-04-03 2003-10-08 Hewlett-Packard Company Data processing system and method
US8090928B2 (en) * 2002-06-28 2012-01-03 Intellectual Ventures I Llc Methods and apparatus for processing scalar and vector instructions
DE10310771A1 (en) * 2003-03-12 2004-09-23 Infineon Technologies Ag Mobile phone power consumption control device for controlling the power consumed by a phone that can support at least two transmission standards, has a control unit that controls power consumed by a low frequency generator
US7299370B2 (en) * 2003-06-10 2007-11-20 Intel Corporation Method and apparatus for improved reliability and reduced power in a processor by automatic voltage control during processor idle states
US7146514B2 (en) * 2003-07-23 2006-12-05 Intel Corporation Determining target operating frequencies for a multiprocessor system
JP4549652B2 (en) * 2003-10-27 2010-09-22 パナソニック株式会社 Processor system
US8156472B2 (en) * 2004-02-12 2012-04-10 Microsoft Corporation Process language for microprocessors with finite resources
US7206950B2 (en) * 2004-06-16 2007-04-17 Matsushita Electric Industrial Co., Ltd. Processor system, instruction sequence optimization device, and instruction sequence optimization program
JP4475145B2 (en) * 2005-03-04 2010-06-09 株式会社日立製作所 Software defined radio and library configuration
US20060294401A1 (en) * 2005-06-24 2006-12-28 Dell Products L.P. Power management of multiple processors
KR101299420B1 (en) 2005-09-30 2013-08-29 프리스케일 세미컨덕터, 인크. Nicam processor
US7653448B2 (en) * 2005-09-30 2010-01-26 Freescale Semiconductor, Inc. NICAM processing method
JP4459150B2 (en) * 2005-10-07 2010-04-28 キヤノン株式会社 Printing apparatus and control method thereof
US20070106877A1 (en) * 2005-11-10 2007-05-10 Tsan-Bih Tang Single-chip multiple-microcontroller architecture and timing control method for the same
US7698437B2 (en) * 2006-01-18 2010-04-13 Digital Acoustics L.L.C. Method and apparatus for multiple audio connections over networks
US8046565B2 (en) * 2006-12-06 2011-10-25 Kabushiki Kaisha Toshiba Accelerator load balancing with dynamic frequency and voltage reduction
US20080162858A1 (en) * 2007-01-03 2008-07-03 Freescale Semiconductor, Inc. Hardware-based memory initialization with software support
US7917799B2 (en) * 2007-04-12 2011-03-29 International Business Machines Corporation Method and system for digital frequency clocking in processor cores
US8161314B2 (en) * 2007-04-12 2012-04-17 International Business Machines Corporation Method and system for analog frequency clocking in processor cores
US8665899B2 (en) * 2007-04-13 2014-03-04 Interdigital Technology Corporation Method and apparatus for integrating a soft mobile VoIP client in a cellular PC card
JP2008287562A (en) * 2007-05-18 2008-11-27 Sony Corp Processor and device control unit
US7937568B2 (en) * 2007-07-11 2011-05-03 International Business Machines Corporation Adaptive execution cycle control method for enhanced instruction throughput
US7779237B2 (en) * 2007-07-11 2010-08-17 International Business Machines Corporation Adaptive execution frequency control method for enhanced instruction throughput
US7979097B2 (en) * 2008-03-18 2011-07-12 Kyocera Corporation Power management for multimode wireless communication device
US8370673B2 (en) 2008-10-30 2013-02-05 Dell Products, Lp System and method of utilizing resources within an information handling system
US8065540B2 (en) * 2008-10-31 2011-11-22 Dell Products, Lp Power control for information handling system having shared resources
CN101403982B (en) * 2008-11-03 2011-07-20 华为技术有限公司 Task distribution method, system for multi-core processor
CN101782862B (en) * 2009-01-16 2013-03-13 鸿富锦精密工业(深圳)有限公司 Processor distribution control system and control method thereof
EP2595056A4 (en) * 2010-07-13 2013-08-28 Fujitsu Ltd Information processing device, method for controlling information processing device, and program
US9391476B2 (en) * 2010-09-09 2016-07-12 Semiconductor Energy Laboratory Co., Ltd. Power feeding device, wireless power feeding system using the same and wireless power feeding method
US8756442B2 (en) 2010-12-16 2014-06-17 Advanced Micro Devices, Inc. System for processor power limit management
US8193831B1 (en) * 2011-02-16 2012-06-05 Broadcom Corporation Method and apparatus for reducing power consumption in a digital circuit by controlling the clock
US9310873B2 (en) * 2012-08-31 2016-04-12 Vixs Systems, Inc. Video processing device with register adjustment generator and methods for use therewith
EP2932610A4 (en) 2012-09-07 2016-10-05 Univ Virginia Patent Found Low power clock source
US9360918B2 (en) 2012-12-21 2016-06-07 Advanced Micro Devices, Inc. Power control for multi-core data processor
US9223383B2 (en) 2012-12-21 2015-12-29 Advanced Micro Devices, Inc. Guardband reduction for multi-core data processor
US9678807B2 (en) * 2013-12-16 2017-06-13 Intel Corporation Hybrid threading
EP3977237A4 (en) * 2019-05-24 2023-06-28 Intel Corporation Device, method and system for transparently changing a frequency of an interconnect fabric

Citations (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5502819A (en) * 1992-11-02 1996-03-26 Amdahl Corporation Clock distribution system for reducing clock skew between processors in a dual sided tightly coupled system
US5592658A (en) * 1994-09-29 1997-01-07 Novacom Technologies Ltd. Apparatus and method for computer network clock recovery and jitter attenuation
US5724591A (en) * 1995-01-27 1998-03-03 Hitachi, Ltd. Multiprocessor system with reduced power mode and improved variation of power demand
US5774703A (en) * 1996-01-05 1998-06-30 Motorola, Inc. Data processing system having a register controllable speed
US5778218A (en) * 1996-12-19 1998-07-07 Advanced Micro Devices, Inc. Method and apparatus for clock synchronization across an isochronous bus by adjustment of frame clock rates
US5790817A (en) * 1996-09-25 1998-08-04 Advanced Micro Devices, Inc. Configurable digital wireless and wired communications system architecture for implementing baseband functionality
US5790877A (en) * 1995-07-06 1998-08-04 Hitachi, Ltd. Method for controlling a processor for power-saving in a computer for executing a program, compiler medium and processor system
US5910930A (en) * 1997-06-03 1999-06-08 International Business Machines Corporation Dynamic control of power management circuitry
US5925133A (en) * 1994-10-19 1999-07-20 Advanced Micro Devices, Inc. Integrated processor system adapted for portable personal information devices
US5996083A (en) * 1995-08-11 1999-11-30 Hewlett-Packard Company Microprocessor having software controllable power consumption
US6047248A (en) * 1996-04-29 2000-04-04 International Business Machines Corporation Performance-temperature optimization by cooperatively varying the voltage and frequency of a circuit
US6088807A (en) * 1992-03-27 2000-07-11 National Semiconductor Corporation Computer system with low power mode invoked by halt instruction
US6122686A (en) * 1993-10-11 2000-09-19 Siemens Aktiengesellschaft Processing module for a modular automation system
US6141762A (en) * 1998-08-03 2000-10-31 Nicol; Christopher J. Power reduction in a multiprocessor digital signal processor based on processor load
US6188381B1 (en) * 1997-09-08 2001-02-13 Sarnoff Corporation Modular parallel-pipelined vision system for real-time video processing
US6216234B1 (en) * 1996-11-13 2001-04-10 Intel Corporation Processor having execution core sections operating at different clock rates
US6216324B1 (en) * 1998-02-26 2001-04-17 International Business Machines Corporation Method for a thin film multilayer capacitor
US6317840B1 (en) * 1999-03-24 2001-11-13 International Business Machines Corporation Control of multiple equivalent functional units for power reduction
US20020147932A1 (en) * 2001-04-05 2002-10-10 International Business Machines Corporation Controlling power and performance in a multiprocessing system
US20020169990A1 (en) * 2001-03-21 2002-11-14 Sherburne Robert Warren Low power clocking systems and methods
US20020175839A1 (en) * 1999-10-29 2002-11-28 Thomas Frey Method and apparatus for a signal processing circuit
US20020184546A1 (en) * 2001-04-18 2002-12-05 Sherburne, Jr Robert Warren Method and device for modifying the memory contents of and reprogramming a memory
US6636976B1 (en) * 2000-06-30 2003-10-21 Intel Corporation Mechanism to control di/dt for a microprocessor
US6647502B1 (en) * 1999-07-13 2003-11-11 Sony Corporation Method and apparatus for providing power based on the amount of data stored in buffers
US6711691B1 (en) * 1999-05-13 2004-03-23 Apple Computer, Inc. Power management for computer systems
US6807235B2 (en) * 2001-02-09 2004-10-19 Hitachi, Ltd. Wireless communication apparatus processing intermittent data

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US175839A (en) * 1876-04-11 Improvement in steam-engine governors
US4021784A (en) * 1976-03-12 1977-05-03 Sperry Rand Corporation Clock synchronization system
US5117442A (en) * 1988-12-14 1992-05-26 National Semiconductor Corporation Methods and circuits for synchronizing signals in a modular redundant fault tolerant computer system
US5381157A (en) * 1991-05-02 1995-01-10 Sumitomo Electric Industries, Ltd. Monolithic microwave integrated circuit receiving device having a space between antenna element and substrate
JPH0916545A (en) * 1995-06-28 1997-01-17 Mitsubishi Electric Corp Microcomputer
US5799005A (en) * 1996-04-30 1998-08-25 Qualcomm Incorporated System and method for determining received pilot power and path loss in a CDMA communication system
US5960331A (en) 1996-07-01 1999-09-28 Harris Corporation Device and method for maintaining synchronization and frequency stability in a wireless telecommunication system
JPH113134A (en) 1997-06-13 1999-01-06 Toshiba Corp Semiconductor chip kit
US6052036A (en) 1997-10-31 2000-04-18 Telefonaktiebolaget L M Ericsson Crystal oscillator with AGC and on-chip tuning
US5914961A (en) 1997-12-10 1999-06-22 L-3 Communications Corporation Fixed wireless loop system having dual direct synthesizer
US6043693A (en) 1998-06-01 2000-03-28 3Dfx Interactive, Incorporated Multiplexed synchronization circuits for switching frequency synthesized signals
US6047214A (en) 1998-06-09 2000-04-04 North Carolina State University System and method for powering, controlling, and communicating with multiple inductively-powered devices
KR100551163B1 (en) 1999-01-09 2006-02-13 유티스타콤코리아 유한회사 Operation method of base station for solving abrupt cut in communication according to coverage moving of mobile station in cdma communication system
US6542754B1 (en) 1999-05-12 2003-04-01 Cisco Systems, Inc. Synchronizing clock signals in wireless networks
US6300881B1 (en) 1999-06-09 2001-10-09 Motorola, Inc. Data transfer system and method for communicating utility consumption data over power line carriers
US6625036B1 (en) 1999-08-31 2003-09-23 Rohm Co., Ltd. Infrared data communication module and method of making the same
US6560712B1 (en) 1999-11-16 2003-05-06 Motorola, Inc. Bus arbitration in low power system
JP2001223713A (en) 2000-02-14 2001-08-17 Yazaki Corp In-vehicle radio lan system
US6236278B1 (en) 2000-02-16 2001-05-22 National Semiconductor Corporation Apparatus and method for a fast locking phase locked loop
US6578155B1 (en) 2000-03-16 2003-06-10 International Business Machines Corporation Data processing system with adjustable clocks for partitioned synchronous interfaces
US6829017B2 (en) 2001-02-01 2004-12-07 Avid Technology, Inc. Specifying a point of origin of a sound for audio effects using displayed visual information from a motion picture
US6848074B2 (en) 2001-06-21 2005-01-25 Arc International Method and apparatus for implementing a single cycle operation in a data processing system
US6898721B2 (en) 2001-06-22 2005-05-24 Gallitzin Allegheny Llc Clock generation systems and methods
US6563448B1 (en) 2002-04-29 2003-05-13 Texas Instruments Incorporated Flexible sample rate converter for multimedia digital-to-analog conversion in a wireless telephone

Patent Citations (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6088807A (en) * 1992-03-27 2000-07-11 National Semiconductor Corporation Computer system with low power mode invoked by halt instruction
US5502819A (en) * 1992-11-02 1996-03-26 Amdahl Corporation Clock distribution system for reducing clock skew between processors in a dual sided tightly coupled system
US6122686A (en) * 1993-10-11 2000-09-19 Siemens Aktiengesellschaft Processing module for a modular automation system
US5592658A (en) * 1994-09-29 1997-01-07 Novacom Technologies Ltd. Apparatus and method for computer network clock recovery and jitter attenuation
US5925133A (en) * 1994-10-19 1999-07-20 Advanced Micro Devices, Inc. Integrated processor system adapted for portable personal information devices
US5724591A (en) * 1995-01-27 1998-03-03 Hitachi, Ltd. Multiprocessor system with reduced power mode and improved variation of power demand
US5790877A (en) * 1995-07-06 1998-08-04 Hitachi, Ltd. Method for controlling a processor for power-saving in a computer for executing a program, compiler medium and processor system
US5996083A (en) * 1995-08-11 1999-11-30 Hewlett-Packard Company Microprocessor having software controllable power consumption
US5774703A (en) * 1996-01-05 1998-06-30 Motorola, Inc. Data processing system having a register controllable speed
US6047248A (en) * 1996-04-29 2000-04-04 International Business Machines Corporation Performance-temperature optimization by cooperatively varying the voltage and frequency of a circuit
US5790817A (en) * 1996-09-25 1998-08-04 Advanced Micro Devices, Inc. Configurable digital wireless and wired communications system architecture for implementing baseband functionality
US6216234B1 (en) * 1996-11-13 2001-04-10 Intel Corporation Processor having execution core sections operating at different clock rates
US5778218A (en) * 1996-12-19 1998-07-07 Advanced Micro Devices, Inc. Method and apparatus for clock synchronization across an isochronous bus by adjustment of frame clock rates
US5910930A (en) * 1997-06-03 1999-06-08 International Business Machines Corporation Dynamic control of power management circuitry
US6188381B1 (en) * 1997-09-08 2001-02-13 Sarnoff Corporation Modular parallel-pipelined vision system for real-time video processing
US6216324B1 (en) * 1998-02-26 2001-04-17 International Business Machines Corporation Method for a thin film multilayer capacitor
US6141762A (en) * 1998-08-03 2000-10-31 Nicol; Christopher J. Power reduction in a multiprocessor digital signal processor based on processor load
US6317840B1 (en) * 1999-03-24 2001-11-13 International Business Machines Corporation Control of multiple equivalent functional units for power reduction
US6711691B1 (en) * 1999-05-13 2004-03-23 Apple Computer, Inc. Power management for computer systems
US6647502B1 (en) * 1999-07-13 2003-11-11 Sony Corporation Method and apparatus for providing power based on the amount of data stored in buffers
US20020175839A1 (en) * 1999-10-29 2002-11-28 Thomas Frey Method and apparatus for a signal processing circuit
US6636976B1 (en) * 2000-06-30 2003-10-21 Intel Corporation Mechanism to control di/dt for a microprocessor
US6807235B2 (en) * 2001-02-09 2004-10-19 Hitachi, Ltd. Wireless communication apparatus processing intermittent data
US20020169990A1 (en) * 2001-03-21 2002-11-14 Sherburne Robert Warren Low power clocking systems and methods
US7139921B2 (en) * 2001-03-21 2006-11-21 Sherburne Jr Robert Warren Low power clocking systems and methods
US20020147932A1 (en) * 2001-04-05 2002-10-10 International Business Machines Corporation Controlling power and performance in a multiprocessing system
US6993669B2 (en) * 2001-04-18 2006-01-31 Gallitzin Allegheny Llc Low power clocking systems and methods
US20020184546A1 (en) * 2001-04-18 2002-12-05 Sherburne, Jr Robert Warren Method and device for modifying the memory contents of and reprogramming a memory

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7398414B2 (en) 2001-03-21 2008-07-08 Gallitzin Allegheny Llc Clocking system including a clock controller that uses buffer feedback to vary a clock frequency
US20060080566A1 (en) * 2001-03-21 2006-04-13 Sherburne Robert W Jr Low power clocking systems and methods
US20040174906A1 (en) * 2003-03-05 2004-09-09 Takahiro Ohkuma Packet processing circuit
US7443887B2 (en) * 2003-03-05 2008-10-28 Nec Corporation Packet processing circuit
US7984266B2 (en) 2004-03-16 2011-07-19 Vns Portfolio Llc Integrated computer array with independent functional configurations
US20050228904A1 (en) * 2004-03-16 2005-10-13 Moore Charles H Computer processor array
US7937557B2 (en) 2004-03-16 2011-05-03 Vns Portfolio Llc System and method for intercommunication between computers in an array
US20070072549A1 (en) * 2005-09-29 2007-03-29 Carolan Kevin M Method for reducing electromagnetic emissions in a multiple micro-controller device
US7702283B2 (en) * 2005-09-29 2010-04-20 Xerox Corporation Method for reducing electromagnetic emissions in a multiple micro-controller device
US7966481B2 (en) 2006-02-16 2011-06-21 Vns Portfolio Llc Computer system and method for executing port communications without interrupting the receiving computer
US8825924B2 (en) 2006-02-16 2014-09-02 Array Portfolio Llc Asynchronous computer communication
US20070192646A1 (en) * 2006-02-16 2007-08-16 Moore Charles H Asynchronous power saving computer
US20100281238A1 (en) * 2006-02-16 2010-11-04 Moore Charles H Execution of instructions directly from input source
US7904615B2 (en) 2006-02-16 2011-03-08 Vns Portfolio Llc Asynchronous computer communication
US7904695B2 (en) 2006-02-16 2011-03-08 Vns Portfolio Llc Asynchronous power saving computer
US20090096797A1 (en) * 2007-10-11 2009-04-16 Qualcomm Incorporated Demand based power control in a graphics processing unit
US8458497B2 (en) * 2007-10-11 2013-06-04 Qualcomm Incorporated Demand based power control in a graphics processing unit
US9189057B2 (en) 2007-11-28 2015-11-17 International Business Machines Corporation Adaptive real-time power and performance optimization of multi-core processors
US20090138737A1 (en) * 2007-11-28 2009-05-28 International Business Machines Corporation Apparatus, method and program product for adaptive real-time power and perfomance optimization of multi-core processors
US8578193B2 (en) * 2007-11-28 2013-11-05 International Business Machines Corporation Apparatus, method and program product for adaptive real-time power and perfomance optimization of multi-core processors
US20090199023A1 (en) * 2008-02-05 2009-08-06 Samsung Electronics Co., Ltd. Processor and Semiconductor Device Capable of Reducing Power Consumption
US20090235108A1 (en) * 2008-03-11 2009-09-17 Gold Spencer M Automatic processor overclocking
US8131907B2 (en) * 2009-07-16 2012-03-06 Via Technologies, Inc. Multi-processor system supporting dynamic power saving and dynamic power saving method thereof
US20110016251A1 (en) * 2009-07-16 2011-01-20 Via Technologies, Inc. Multi-processor system and dynamic power saving method thereof
US20110258417A1 (en) * 2010-04-20 2011-10-20 Senthilkannan Chandrasekaran Power and throughput optimization of an unbalanced instruction pipeline
US9141392B2 (en) * 2010-04-20 2015-09-22 Texas Instruments Incorporated Different clock frequencies and stalls for unbalanced pipeline execution logics

Also Published As

Publication number Publication date
US6993669B2 (en) 2006-01-31
US20040243866A1 (en) 2004-12-02
US7139921B2 (en) 2006-11-21
US20020184546A1 (en) 2002-12-05

Similar Documents

Publication Publication Date Title
US6993669B2 (en) Low power clocking systems and methods
US7398414B2 (en) Clocking system including a clock controller that uses buffer feedback to vary a clock frequency
US6898721B2 (en) Clock generation systems and methods
US7924878B2 (en) Flexible processing system
US7142882B2 (en) Single chip wireless communication integrated circuit
WO2005114433A2 (en) Integrated circuit with a plurality of host processor family types
US7529958B2 (en) Programmable power transition counter
KR100922086B1 (en) Method for reducing power consumption in bluetooth and cdma modes of operation
KR100479948B1 (en) Mobile radio telephone set
US20060025180A1 (en) Method for waking a wireless device
KR20080092847A (en) Communication terminal and computer-readable storage medium
EP1969820B1 (en) Power management system for sca based software defined radio and related method
US20050113151A1 (en) Method for reducing power consumption in a multi-mode device
CN114598354B (en) Continuous phase maintaining method and device for frequency hopping system under non-integer multiple sampling rate
CN210609725U (en) Single-card multi-mode module
JPH11234193A (en) Portable terminal equipment and control method
Loy et al. Active Mode Power Management for Mobile Devices

Legal Events

Date Code Title Description
AS Assignment

Owner name: GALLITZIN ALLEGHENY LLC, NEVADA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:AIRIP CORPORATION;REEL/FRAME:020173/0258

Effective date: 20040830

Owner name: GALLITZIN ALLEGHENY LLC,NEVADA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:AIRIP CORPORATION;REEL/FRAME:020173/0258

Effective date: 20040830

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION

AS Assignment

Owner name: INTELLECTUAL VENTURES I LLC, DELAWARE

Free format text: MERGER;ASSIGNOR:GALLITZIN ALLEGHENY LLC;REEL/FRAME:025996/0421

Effective date: 20101207