mm m I1111(1)]!6l(l)lll7llltillllllllll mm m

Similar documents
(12) Patent Application Publication (10) Pub. No.: US 2006/ A1. Choi et al. (43) Pub. Date: Apr. 27, 2006

United States Patent 19 Norris

(12) United States Patent (10) Patent No.: US 7,640,289 B2

Gammalcode. Frame 1, Frame 2. drive signal. (12) Patent Application Publication (10) Pub. No.: US 2016/ A1. Timing code.

US 7.663,338 B2. Feb. 16, (45) Date of Patent: (10) Patent No.: Guthrie et al. used to receive a USB bus voltage from the USB interface and (51)

(12) United States Patent (10) Patent No.: US 6,199,058 B1

/ client computer. \ single sign-on. application program server (AP) network. server (SS0) (12) United States Patent Hsieh et a].

260k] 2801K].éGND MROUT I.12

(12) Patent Application Publication (10) Pub. No.: US 2012/ A1

(12) United States Patent

(12) United States Patent (10) Patent No.: US 7,679,316 B2

(12) United States Patent (10) Patent No.: US 7, B2

(12) United States Patent (10) Patent No.: US 7,739,050 B2

(12) Patent Application Publication (10) Pub. No.: US 2012/ A1. Hsu et al. (43) Pub. Date: Jan. 26, 2012

(12) United States Patent (10) Patent No.: US 6,237,112 B1

(12) United States Patent

(12) United States Patent

(12) United States Patent

(12) Patent Application Publication (10) Pub. No.: US 2008/ A1

(12) United States Patent (10) Patent No.: US 6,657,548 B2. Dai (45) Date of Patent: Dec. 2, 2003

(12) United States Patent

United States Patent (19) Haines

(12) United States Patent

(12) Patent Application Publication (10) Pub. No.: US 2006/ A1

(12) (10) Patent No.: US 7,330,395 B2. Ichijo (45) Date of Patent: Feb. 12, 2008

US A United States Patent (19) 11 Patent Number: 6,055,373 McElroy et al. (45) Date of Patent: Apr. 25, 2000

336w 330 FPGA / 330 MW} Compgnenf _/14 / 38 US 7,774,801 B1. Aug. 10, 2010 (56) (10) Patent N0.: (45) Date of Patent: (12) United States Patent Fitkin

United States Patent (19) O Brien

(12) United States Patent (10) Patent No.: US 6,845,158 B2

US A1 (19) United States (12) Patent Application Publication (10) Pub. No.: US 2009/ A1 Joshi et al. (43) Pub. Date: Nov.

USOO A United States Patent (19) 11 Patent Number: 6,125,450 Kardach (45) Date of Patent: *Sep. 26, 2000

(12) United States Patent

(12) Patent Application Publication (10) Pub. No.: US 2004/ A1

(12) Patent Application Publication (10) Pub. No.: US 2004/ A1

(12) Patent Application Publication (10) Pub. No.: US 2008/ A1

(12) United States Patent (10) Patent No.: US 6,611,682 B1

US A United States Patent (19) 11 Patent Number: 6,058,048 KWOn (45) Date of Patent: May 2, 2000

(12) (10) Patent N0.: US 6,879,518 B1. Curry (45) Date of Patent: Apr. 12, 2005

(12) Patent Application Publication (10) Pub. No.: US 2011/ A1

(12) United States Patent (10) Patent No.: US 9,198,206 B2

wo W /1997 * cited by examiner

(12) United States Patent (10) Patent No.: US 6,208,340 B1. Amin et al. (45) Date of Patent: Mar. 27, 2001

-Gorse III IEEEEEEEEE OFF-TIM -17B is 12 L=y 3 14 KB/Mouse 16- DSP-CONT. United States Patent 19 Yoshida 0 T 1 O LEVEL I LEVEL 10

(12) United States Patent

(12) United States Patent

(12) United States Patent

(12) United States Patent (10) Patent No.: US 7,002,560 B2

(12) United States Patent

Bunnell (45) Date of Patent: Oct. 8, 1996

(12) Patent Application Publication (10) Pub. No.: US 2006/ A1

(12) United States Patent (10) Patent No.: US 6,467,088 B1

(12) Patent Application Publication (10) Pub. No.: US 2010/ A1

(12) United States Patent (10) Patent No.: US 6,418,453 B1

(12) Patent Application Publication (10) Pub. No.: US 2009/ A1

MEMORY 14. (12) Patent Application Publication (10) Pub. No.: US 2005/ A1. (19) United States. ucontroller MEMORY 16 INTEGRATED CIRCUIT

(12) Patent Application Publication (10) Pub. No.: US 2016/ A1

United States Patent (19) 11 Patent 2 Number: LOe: 5,616,900 Seewoster (45) Date of Patent: Apr. 1, 1997

(12) Patent Application Publication (10) Pub. No.: US 2008/ A1

contact United States Patent (19) (11) 3,967,257 Hager (45) June 29, 1976 CURRENT MONITOR LOAD DEVICE 73) Assignee: Westinghouse Electric Corporation,

(12) Patent Application Publication (10) Pub. No.: US 2010/ A1. Breiner et al. (43) Pub. Date: Mar. 4, 2010

(12) United States Patent (10) Patent No.: US 6,642,750 B1

(12) United States Patent

(12) Patent Application Publication (10) Pub. No.: US 2016/ A1

(12) Patent Application Publication (10) Pub. No.: US 2008/ A1

(12) United States Patent (10) Patent N0.: US 6,418,141 B1 Votava (45) Date of Patent: Jul. 9, 2002

(12) Patent Application Publication (10) Pub. No.: US 2005/ A1

(12) Patent Application Publication (10) Pub. No.: US 2007/ A1

(12) Patent Application Publication (10) Pub. No.: US 2015/ A1. (51) Int. Cl. (52) U.S. Cl COMMUNICATIONS

(12) United States Patent

Is more than one finger placed on touchpad surface?

(12) United States Patent (10) Patent No.: US 6,649,849 B2

(12) United States Patent (10) Patent No.: US 8,385,897 B1

(12) Patent Application Publication (10) Pub. No.: US 2007/ A1

58 Field of Search ,154.15s, a housing adapted to be affixed to the interior of the mailbox,

(12) United States Patent (10) Patent No.: US 8, B2. Cha et al. (45) Date of Patent: Oct. 8, 2013

(12) Patent Application Publication (10) Pub. No.: US 2009/ A1

(12) United States Patent (10) Patent N0.: US 6,446,174 B1 Dow (45) Date of Patent: Sep. 3, 2002

Medina (45) Date of Patent: Aug. 18, (54) FOOT CONTROLLED COMPUTER MOUSE 2004/ A1* 11/2004 Koda et al , 183

SCSI routing table (90) and a SCSI to Fibre Channel routing table (92). The system receives a cross bus transfer of data

(12) Patent Application Publication (10) Pub. No.: US 2002/ A1

(12) United States Patent (10) Patent No.: US 6,650,589 B2

OSPATCHER. United States Patent (19) Anschuetz et al. 11 Patent Number: 5,305,455 (45) Date of Patent: Apr. 19, 1994

(12) United States Patent

Xying. GoD-12 ACL 1-1. (12) Patent Application Publication (10) Pub. No.: US 2009/ A1. (19) United States SUPPLIER POLICY DRIVER/-108 PLATFORM

(12) Patent Application Publication (10) Pub. No.: US 2007/ A1

(12) (10) Patent No.: US 7, B2. Peng (45) Date of Patent: Mar. 20, 2007

(12) United States Patent (10) Patent No.: US 7, B2

(12) United States Patent (10) Patent No.: US 8,536,920 B2 Shen

(12) United States Patent (10) Patent No.: US 6,199,163 B1

(12) Patent Application Publication (10) Pub. No.: US 2016/ A1

(12) United States Patent (10) Patent No.: US 6,922,791 B2

(12) Patent Application Publication (10) Pub. No.: US 2012/ A1

(12) United States Patent (10) Patent No.: US 7.212,887 B2. Shah et al. (45) Date of Patent: May 1, 2007

United States Patent (19) [11] Patent Number: 5,327,531. Bealkowski et al. (45) Date of Patent: Jul. 5, 1994

Appeal Decision. Appeal No Singapore KINGLITE HOLDINGS INC. Tokyo, Japan

101. (12) Patent Application Publication (10) Pub. No.: US 2015/ A1. (19) United States. (43) Pub. Date: Nov. 26, Atkins et al.

(54) MAPPING VIRTUAL DESKTOPS TO Publication Classi?cation PHYSICAL MONITORS (51) Int- Cl

(12) United States Patent

(12) Patent Application Publication (10) Pub. No.: US 2011/ A1

System and method for encoding and decoding data files

Transcription:

United States Patent [19] Wisor et al. mm m I1111(1)]!6l(l)lll7llltillllllllll mm m [11] Patent Number: [45] Date of Patent: Feb., 1997 [541 [75] [21] [22] [63] [511 [52] [58] [56] SYSTEM MANAGEMENT INTERRUPT 5,032,8 7/1991 Kuznicki..... 340/636 SOURCE INCLUDING A PROGRAMMABLE 5,047,987 9/1991 Kosuge............. 371/66 COUNTER AND POWER MANAGEMENT 5,266,736 11/1993 Sa1to..... 84/668 SYSTEM EMPLOYING THE SAME FOREIGN PATENT DOCUMENTS Inventors: Michael T. Wisor; Rita M. O Brien, W093/01542 1/1993 WIPO. both of Austin, Tex. OTHER PUBLICATIONS Assigneei Advanced Micf'" Devices Inc" John Gallant, Low power ups simplify design of portable Sunnyvale, cahf- computers, Apr. 29, 1993, vol. 38 No. 9, pp. 39-48. Graham Conn, The SCC68070: a monolithic 68000 CPU Appl. No.: 554,396 and peripherals, 1987, vol. 8 No. 2, pp. 95-0. Filed? NOV- 6, 1995 Primary Examiner Daniel H. Pan Related US. Application Data Attorney, Agent, or Firm-Conley, Rose & Tayon P.C.; B. Noel Kivlin Continuation of Ser. No. 190,597, Feb. 2, 1994, abandoned. [57] ABSTRACT Int- 01-6..... A periodic System management source is G06F 13/18; G061: 13/22 provided that includes a programmable timer for asserting US. Cl...... 395/800; 395/750; 395/182.2; an SMI a predetennined rate A microprocessor is coupled to 395/182-22; 364/DIG- 1; 364/DIG- 2; 340/663 a periodic SMI source through a CPU local bus. The periodic Field of Search..... 395/18222, 185.08, SMI source may be programmed by executing an I/O write 395/800, 550, 750, 700, 182.2; 364/DIG. 1, cycle which allows a count value and an enable bit to be 483, DIG. 2, 492, 140, 145, 464.04; 340/8.08, loaded into an internal con?guration register. When the 663; 455/127, 117 enable bit is set, the programmable timer asserts a periodic system management interrupt at a?xed rate as determined References Cited by the count value within the con?guration register. The Us PATENT DOCUMENTS periodic system management interrupt may be asserted, for example, at intervals of 16 milliseconds, 64 milliseconds, 4,099,232 7/1978 Mensch, Jr...... 395/550 245 milliseconds, 1 second, 16 seconds, or 1 minute. The 4,307,455 12/ 1981 Juh?SZ et al. 395/182-22 periodic SMI source allows for the automatic generation of 4,343,743 9/1982 Dozier 395/550 a periodic system management interrupt independently of 4,460,870 7/1984 Finger..... 324/429 Softwam 4,707,795 11/1987 Alber et al.. 364/550 4,761,824 8/1988 Saito..... 340/663 4,868,832 9/1989 Marrington et a1...... 371/66 5 Claims, 1 Drawing Sheet r4 POWER 1 BATJTIERY Vb r112 o MONITOR BATTERY / to MANAGEMENT ~/ 5 6 SUBSYSTEM PORT f r8, SMI CPU CPU LOCAL BUS ll IN DATA ADDRESS IOW DECODER ; : 122 CONFIGURATION 1 - \ REGISTER < 112 - : PERIODlC I z I SMI : < r128 ; PROGRAMMABLE I124 SOURCE ; PERIODIC - COUNTER ~ SYSTEM I _ T I MANAGEMENT ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' - ' INTERRUPT CLK

1 SYSTEM MANAGEMENT INTERRUPT SOURCE INCLUDING A PROGRAMMABLE COUNTER AND POWER MANAGEIVIENT SYSTEM EMPLOYING THE SAME This application is a continuation of application Ser. No. 08/190,597,?led Feb. 2, 1994, now abandoned. BACKGROUND OF THE INVENTION 1. Field of the Invention This invention relates to computer systems and more particularly to system management interrupt sources employed within computer systems. 2. Description of the Relevant Art Interrupt-driven computer systems provide a mechanism that allows a hardware signal to force the software to change its path of execution. The?rst step a microprocessor takes to process an interrupt is to save the program counter (usually on the stack, an area of memory pointed to by the micro processor s stack pointer that operates in a last-in-?rst-out fashion). This allows the software to return to normal program?ow at the point at which it was interrupted by loading the saved value from the stack into the micropro cessor s program counter. Some microprocessors automati cally save other registers (such as the accumulator or index pointer) in addition to the program counter. The actual interrupt processing begins when the microprocessor jumps to the interrupt service routine. The interrupt service routine is a subset of software code that services the interrupt. If the microprocessor hardware cannot distinguish between various interrupt sources, then the interrupts are called non-vectored. For non-vectored interrupts, the inter rupt service routine must test (poll) each of the possible interrupt sources to determine which device generated the interrupt. A faster scheme involves vectored interrupts, which allow an interrupting device to identify itself by driving an ID code on the data bus during an interrupt acknowledge cycle at the beginning of the interrupt process ing. The microprocessor then executes the indicated inter rupt service routine. Microprocessors such as the particularly popular models 80386 and 80486 microprocessors include an input terminal (INT) for receiving an interrupt signal. Computer systems that include multiple interrupting devices frequently employ programmable interrupt controllers that allow software pri~ oritizing and masking of the various interrupt sources. Exemplary interrupt sources include keyboards, printers, and real time clocks. Most microprocessors also employ a non-maskable inter rupt (NMI) which cannot be disabled by software. This interrupt is usually processed at the end of the current instruction execution. It is typically used for relatively high-priority error interrupts, such as an abort signal or power-failure detection. Yet another type of interrupt is a system management interrupt (SMI). A system management interrupt is typically treated with a higher priority than both non-maskable inter rupts and standard interrupts. System management interrupts are used to initiate and/or maintain various system manage ment functions, such as, for example, power management. One problem associated with a typical computer system is the inability to automatically generate a periodic system management interrupt. Such a periodic system management interrupt would be particularly desirable when used in 20 30 35 45 50 55 60 65 2 conjunction with power management functions that require high priority servicing at regular intervals and with minimal processing overhead. Since the typical computer system does not employ a?exible periodic system management interrupt source, overall functionality of the system is lim ited and/or software itself must manage and control the intervals between power management servicing. Thus, a greater burden may be imposed upon the system manage ment software and the performance thereof may be degraded. SUMMARY OF THE INVENTION The problems outlined above are in large part solved by periodic SMI source including a programmable timer according to the present invention. In one embodiment, a microprocessor is coupled to a periodic SMI source through a CPU local bus. The periodic SMI source may be pro grammed by executing an I/O write cycle which allows a count value and an enable bit to be loaded into an internal con?guration register. When the enable bit is set, the pro grammable timer asserts a periodic system management interrupt at a?xed rate as determined by the count value within the con?guration register. The periodic system man agement interrupt may be asserted, for example, at intervals of 16 milliseconds, 64 milliseconds, 245 milliseconds, 1 second, 16 seconds, or 1 minute. The periodic SMI source allows for the automatic generation of a periodic system management interrupt independently of software. Accord ingly, system management service routines may be prompted for execution at a programmable rate with mini mal system overhead. One computer system that employs the periodic SMI source includes a power management subsystem for tracking the capacity of a battery which provides power to the computer system. A value indicative of the voltage of the battery may be read through an I/O port coupled to a battery monitor. The periodic SMI source asserts a system manage ment interrupt signal at a predetermined rate which causes the power management subsystem to read the I/O port upon each asserted interrupt signal. The power management sub system uses the information read from the I/O port to update the estimated remaining capacity of the battery. Broadly speaking, the present invention contemplates a computer system comprising a microprocessor including an interrupt input terminal and a system management interrupt source coupled to the interrupt input terminal. The system management interrupt source includes a programmable counter capable of asserting a system management interrupt signal at predetermined periodic rate. The present invention further contemplates a system management interrupt source for a computer system includ' ing a microprocessor having an interrupt input terminal. The system management interrupt source comprises a program mable counter capable of asserting a system management interrupt signal at a predetermined rate, a con?guration register for storing a count value indicative of a predeter mined periodic rate, and a decoder coupled to the con?gu ration register and capable of causing the count value to be stored within the con?guration register. The present invention?nally contemplates a computer system comprising a microprocessor including an interrupt input terminal, a battery for providing power to the computer system, a battery monitor coupled to the battery for moni toring an output voltage level of the battery, and an I/O port coupled to the battery monitor, wherein the microprocessor

3 is capable of reading a digital value at the I/O port that is indicative of the output voltage level. The computer system further comprises a power management subsystem for track ing an estimated capacity value of the battery and a system management interrupt source coupled to the interrupt input terminal and including a programmable counter capable of asserting a system management interrupt signal at a prede termined rate. The microprocessor reads the digital value at the I/O port in response to each assertion of the system management interrupt signal. BRIEF DESCRIPTION OF THE DRAWINGS Other objects and advantages of the invention will become apparent upon reading the following detailed description and upon reference to the accompanying draw ing in which: FIG. 1 is a block diagram of a computer system including a periodic SMI source according to the present invention. While the invention is susceptible to various modi?ca tions and alternative forms, speci?c embodiments thereof are shown by way of example in the drawing and will herein be described in detail. It should be understood, however, that the drawing and detailed description thereto are not intended to limit the invention to the particular form disclosed, but on the contrary, the intention is to cover all modi?cations, equivalents and alternatives falling within the spirit and scope of the present invention as de?ned by the appended claims. DETAILED DESCRIPTION OF THE INVENTION Referring now to the drawing, FIG. 1 is a block diagram of a computer system 0 that employs a periodic system management interrupt (SMI) source 2 according to the present invention. In addition to the periodic SMI source 2, the computer system 0 further includes a micropro cessor (CPU) 4, a power management subsystem 5, and an I/O (input/output) port 6 coupled to periodic SMI source 2 via a CPU local bus 8. The computer system 0 is?nally illustrated with a battery monitor 1 coupled between I/O port 6 and a battery 112. Microprocessor 4 is a data processing unit that imple ments a predetermined instruction set and is exemplary of, for example, a model 80486 microprocessor. Power man agement subsystem 5 is provided to regulate and mini mize the overall power consumption of computer system 0, and may be implemented via hardware, software, or a combination thereof. In the embodiment of FIG. 1, power management subsystem 5 includes a so-called fuel gauge that estimates and tracks the capacity of battery 112. Battery 112 provides power to the computer system 0. Battery monitor 1 and I/O port 6 are provided to allow the power management subsystem 5 to read a value indicative of the output voltage Vb of battery 112. Speci? cally, battery monitor 1 converts the analog voltage value of battery 112 to a digital value that can be read through I/O port 6 by power management subsystem 5. Power management subsystem 5 includes software code that reads I/O port 6 upon the assertion of a system manage ment interrupt signal at the SMI IN terminal of micropro cessor 4. Following the read of I/O port 6, power management subsystem 5 processes the digital value (representative of the battery voltage V,,) to determine the remaining capacity of battery 112. Speci?c techniques for 35 45 50 55 60 65 4 estimating battery capacity based on output voltage are well-known. The generation of the periodic system management inter rupt signal is next explained. Periodic SMI source 2 includes a decoder 120, a con?guration register 122, and a programmable counter 124. As will be understood from the description below, periodic SMI source 2 is provided to automatically assert the periodic system management inter rupt signal at a selected?xed rate. The periodic SMI source 2 is initialized by executing a write cycle to the I/O addressable space of computer system 0 to which con?guration register 122 is mapped. Speci? cally, a programmer may execute an I/O write cycle with an address signal that corresponds to con?guration register 122. Decoder 120 receives this address signal along with the I/O Write strobe signal IOW and responsively causes con?gu ration register 122 to latch and store the initialization data provided on the data lines of CPU local bus 8. In one embodiment, three bits of the initialization data provided to con?guration register 122 controls the count value of pro grammable counter 124. A fourth bit (i.e., an enable bit) enables the programmable counter 124. Once the enable bit is set, programmable counter 124 repetitively counts to the count value stored within register 122 and resets. Upon each count cycle of programmable counter 124, the system man agement interrupt signal at line 128 is asserted. Depending upon the count value stored within con?guration register 122, the system management interrupt signal is asserted at intervals of 16 milliseconds, 64 milliseconds, 245 millisec onds, 1 second, 16 seconds, or 1 minute. When micropro cessor 4 receives the system management interrupt signal, the microprocessor 4 jumps to the system management interrupt routine which causes power management sub~ system 5 to read I/O port 6. As explained previously, power management subsystem 5 uses the digital value read from I/O port 6 to determine the remaining capacity of battery 112. In accordance with the computer system 0 employing the periodic SMI source 2 as described above, a system management interrupt signal is generated at a predetermined and programmable periodic rate. The periodic SMI source 2 allows for the programming of a wide range of periodic rates, and frees the microprocessor 4 and the power management subsystem 5 from associated timekeeping tasks. Accordingly, system management functions may be initiated and executed at regular intervals with minimal processing overhead. It is noted that the periodic system management interrupt source as described above may be used in conjunction with an immediate system management interrupt source as described within the copending, commonly assigned patent application entitled Immediate System Management Inter rupt Source with Associated Reason Register, by Wisor, et al., Ser. No. 08/190,285,?led concurrently herewith. The periodic system management interrupt source as described above may further be employed within a computer system that incorporates the circuitry and techniques described within the copending, commonly assigned patent applica tions: Power Managment Message Bus for Integrated Pro cessor, by Gephardt, et al., Ser. No. 08/190,279,?led concurrently herewith; Power Management Unit Including Software Con?gurable State Register and Time-Out Counters for Protecting Against Misbehaved Software, by O Brien, et al., Ser. No. 08/190,279, now U.S. Pat. No. 5,504,9,?led concurrently herewith; and Power Man agement System for an Integrated Processor, by O Brien, et al., Ser. No. 08/190,292, now U.S. Pat. No. 5,511,203,?led

5 concurrently herewith. The above copending and commonly assigned patent applications are incorporated herein by reference in their entirety. Numerous variations and modi?cations will become apparent to those skilled in the at once the above disclosure is fully appreciated. It is intended that the following claims be interpreted to embrace all such variations and modi?ca tions. What is claimed is: 1. A computer system comprising: a microprocessor including a system management inter rupt input terminal and a general purpose interrupt input terminal, wherein said microprocessor is con?g ured to process an interrupt received at said system management interrupt input terminal with a higher priority and with precedence over an interrupt simul taneously received at said general purpose interrupt input terminal; a system management interrupt source coupled to said system management interrupt input terminal, wherein said system management interrupt source includes: a programmable counter capable of asserting a system management interrupt signal at a predetermined peri odic rate independent of other system activity as long as an enable bit is set; a con?guration register coupled to said programmable counter and capable of receiving a count value indicative of said predetermined periodic rate during an I/O write cycle generated by said microprocessor, wherein said con?guration register includes a stor age location for storing said enable bit, and wherein an output of said storage location is coupled to said 6 programmable counter whereby said enable bit selectively enables said programmable counter; a decoder coupled to said con?guration register for decoding an address signal during said I/O write cycle and for causing said count value to be stored within said con?guration register; a battery for providing power to said computer system; a battery monitor coupled to said battery for monitoring an output voltage level of said battery; an I/O port coupled to said battery monitor for reading a digital value indicative of said output voltage level; and a power management subsystem associated with said microprocessor, wherein said microprocessor causes said power management subsystem to read said digital value indicative of said output voltage level from said I/O port in response to the assertion of said system management interrupt signal. 2. The computer system as recited in claim 1 wherein said microprocessor is coupled to said system management inter rupt source via a CPU local bus. 3. The computer system as recited in claim 1 wherein said power management subsystem is further capable of tracking an estimated capacity value of said battery. 4. The computer system as recited in claim 1 wherein said progranunable counter is programmable such that said sys tem management interrupt signal is asserted at intervals ranging from 16 milliseconds to 1 minute. 5. The computer system as recited in claim 1 wherein said decoder further receives an I/O write signal.