Method and apparatus for performing wake on LAN power management
Claim Score by NHIP
Abstract
A single integrated circuit includes logic that supports 10BASE-T, 100BASE-T and 1000BASE-T transceiver functionality. The invention implements power management techniques by placing unused functionality in sleep mode. When the functionality is required later, then that functionality may be awakened again and used as required for the particular situation. A processor is able to interact with the media access controller (MAC), and the MAC then communicates with the physical layer (PHY). The invention is adaptable to various devices that are capable to operating using 10BASE-T, 100BASE-T and 1000BASE-T, even those the PHY of these devices may be somewhat different.

Term
Term ended
Projected expiry passed 5 October 2023, 3 years ago.
- Priority
- Filed
- Published
- Projected expiry
- Today
20 claims: 3 independent, 17 dependent
- 1A method to operate a system that is operable to support 10 megabit functionality, 100 megabit functionality, and gigabit functionality, the method comprising:operating the 10 megabit functionality, the 100 megabit functionality and the gigabit functionality;putting two functionalities selected from the 10 megabit functionality, the 100 megabit functionality and the gigabit functionality into sleep mode;and continuing to operate a remaining functionality selected from the 10 megabit functionality, the 100 megabit functionality and the gigabit functionality, the remaining functionality not being put into sleep mode.
- 17Broadest claimClaim Score 77, broad(NHIP)A method to put an integrated circuit into sleep mode, the integrated circuit comprises a plurality of management registers, the plurality of management registers comprising a wake on LAN bit, a restart auto-negotiation bit, and an advertisement register, the method comprising:setting the wake-on-LAN bit;changing the advertisement register;setting the restart auto-negotiation bit;auto-negotiating a capability set;and gating-off logic associated with the capability set after completing auto-negotiation.
- 19A method to wake an integrated circuit from sleep mode, the integrated circuit comprises a plurality of management registers, the plurality of management registers comprising a wake on LAN bit, a restart auto-negotiation bit, and an advertisement register, the method comprising:clearing the wake-on-LAN bit using a media access controller;changing the advertisement register in a physical layer by using the media access controller;setting the restart auto-negotiation bit in the physical layer by using the media access controller;turning on a plurality of clocks using the physical layer;and starting auto-negotiation, at the physical layer, after turning on the plurality of clocks.
Independent claims3
60 paragraphs in 5 sections, as filed
SPECIFICATION
Cross Reference to Related Applications
P-0001[0001] The present U.S. Utility Patent Application claims priority pursuant to 35 U.S.C. §119(e) to U.S. Provisional Patent Application Serial No. 60/346,099, entitled “METHOD AND APPARATUS FOR PERFORMING WAKE ON LAN POWER MANAGEMENT,” Docket No. BP1517P, filed Jan. 3, 2002, pending, which is hereby incorporated herein by reference in its entirety and is made part of the present U.S. Utility Patent Application for all purposes.
BACKGROUND
[0002] 1. Technical Field
[0003] The invention relates generally to communications devices; and more particularly, it relates to power management in communications devices.
[0004] 2. Related Art
[0005] Computer interconnectivity and communication technologies have rapidly advanced over the last few decades. In particular, Local Area Networks (LANs) are now common and serve as building blocks for much larger networks. LANs include various devices that perform communication functions; these devices include bridges, switches, routers, hubs, gateways, etc. These communication devices usually include a number of Network Interface Cards (NICs) that service one or more interfaces to other LAN devices. In some of these devices, NICs communicate with one another across communication paths located on the backside of a shared housing, such communication paths referred to generally as the back plane. The back plane serves as a data highway, providing communications paths for these interface cards to communicate with each other.
[0006] Each NIC typically includes a number of integrated circuits. These integrated circuits (computer integrated circuits) perform various communication and interface functions and support communications across the backplane. For example processor A residing on NIC A may communicate with processor B residing on NIC B via a communication path that includes the backplane, additional circuitry, and routing paths located on the NIC A and NIC B.
[0007] For equipment of differing vendors to interact properly, NICs typically operate according to at least one industry standard. The NIC typically interfaces to the LAN via a networking standard and interfaces to a host computer or other NECs via a second operating standard (across the back plane). An example of this second operating standard is the PCI Local Bus standard. The PCI Local Bus Standard sets forth the operating requirements for devices that communicate across a PCI Local Bus. Generally speaking, the PCI Local Bus is a parallel bus that services a variety of cards in addition to NICs, e.g., sound cards, gaming device cards, parallel port cards, and serial port cards, among others. Although the PCI Local Bus standard provides significant direction for communication interface, some operational aspects not addressed, e.g., power management.
[0008] In most implementations, power management is performed at lower levels of operation, e.g., Basic Input Output System (BIOS) operations, System Management Mode (SMM) code operations, etc. These operations are typically platform unique. Unfortunately, power managements performed by BIOS and SMM operations are inherently problematic in computer networking applications because they have no knowledge regarding the busy or idle status of a managed device. Such is the case because the operating system manages the busy/idle status of managed NIC(s). Thus, in computer networking applications, it makes sense to place the responsibility for power management with the operating system. However, because the computer hardware managed by the operating system is typically proprietary, the operating system generally cannot perform power management for the hardware devices of all vendors.
[0009] These problems are particularly inherent in NICs whose back planes operate according to the PCI Local Bus Specification. The PCI Local Bus Specification addresses the power consumption requirements for cards (including network cards) that interface to a PCI compliant bus. For example, the PCI Local Bus Specification sets forth 375 mA as the maximum current consumption for a Network Interface Card (NIC) connecting to a PCI Local Bus. However, the PCI Local Bus Specification standard does not dictate how this power requirement is to be met by the various integrated circuits contained on the NIC.
[0010] As NICs include more integrated circuitry that is located in increasingly smaller surface areas, it becomes harder to meet the power requirement imposed by the PCI Local Bus Standard. For example, in modern day communication integrated circuits, it is not uncommon to place the entire functionality for a transmitter/receiver (i.e., a transceiver) on a single integrated circuit. Furthermore, technology has advanced to the point where the circuitry for several transceivers may reside on a single processor. These advances not only increase the functionality of a NIC containing such integrated circuitry, but they also reduce the overall cost required to service all of the functionality.
[0011] However, a hard limitation for placing multiple transceivers (or increased functionality) on a single integrated circuit relates to power consumption. Since the PCI specification places an upper limit on the power that may be consumed by a compliant NIC, the limitations imposed thereby may limit the functionality that may be provided by a single NIC.
[0012] Further limitations and disadvantages of conventional and traditional systems will become apparent through comparison of such systems with the invention as set forth in the remainder of the present application with reference to the drawings.
SUMMARY OF THE INVENTION
[0013] The invention provides for a method and system to manage and conserve power in a processor with substantial functionality and heavily integrated circuitry. The invention provides a technique for power management of an integrated circuit compliant with the Institute for Electrical and Electronic Engineers (IEEE) 802.3 standard. According to one embodiment, the invention is implemented in a single monolithic CMOS integrated circuit including 10BASE-T, 100BASE-T, and 1000BASE-T functionality.
[0014] Power management is accomplished in the invention by disengaging various functions of the integrated circuit and placing these functions in a mode entitled “sleep mode” when they are not required. When there is a specific use for the functionality, the logic supporting this functionality, it is reengaged by placing the integrated circuit in a mode entitled “wake mode.”
[0015] For example, in one embodiment, a single integrated circuit/multi-function transceiver implements the invention. The multi-function transceiver includes 10BASE-T functionality, 100BASE-T functionality, and 1000BASE-T functionality. When the integrated circuit is using the 10BASE-T functionality, the other functionality can be put in sleep mode to conserve power. Therefore, the unused 100BASE-T and the 1000BASE-T functionality is put into sleep mode until it is required. When the system does require the 100BASE-T and the 1000BASE-T functionality, the integrated circuit wakes up the logic supporting this functionality.
[0016] Utilizing certain aspects of the invention, a higher-level processor detects when parts of the integrated circuit are not being utilized during communications. The processor signals to an interface card housing the processor, to go into sleep mode. Once the current communication is concluded, the PHY drops the link and negotiates to communicate with a subset of the integrated circuits functionality, thereby conserving power. The interaction between the processor, the physical layer (PHY), and media access controller (MAC) are as follows: the processor employs a higher level protocol interface to the MAC; the MAC then programs the PHY into the wake on LAN mode (WOL) where the PHY drops the link and re-negotiates. The processor then establishes a second link using the subset of the integrated circuits functionality. Using the subset of the integrated circuits functionality, the processor is still able to communicate packets. When additional functionality is required, the processor generates a special packet to wake the system. The unused functionality is re-engaged, and the integrated circuit is able to operate with all of its functionality. The second link is then dropped and the processor negotiates with the link partner to determine the highest level of functionality that both systems can support.
[0017] The above-referenced description of the summary of the invention captures some, but not all, of the various aspects of the invention. The claims are directed to some other of the various other embodiments of the subject matter towards which the invention is directed. In addition, other aspects, advantages and novel features of the invention will become apparent from the following detailed description of the invention when considered in conjunction with the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
P-0018[0018] A better understanding of the invention can be obtained when the following detailed description of various exemplary embodiments is considered in conjunction with the following drawings.
P-0019[0019]FIG. 1 is a system diagram generally illustrating a Local Area Network (LAN) having network devices that operate in accordance with certain aspects of the invention.
P-0020[0020]FIG. 2 is a block diagram that illustrates the mapping between the Open System Interconnection (OSI) model and the functional layers of a LAN as described in the Institute of Electrical and Electronic Engineering (IEEE) Standards and relating to certain aspects of the invention.
P-0021[0021]FIG. 3 is a functional block diagram illustrating an integrated circuit that operates according to certain aspects to the invention.
P-0022[0022]FIG. 4 is a logic diagram illustrating one embodiment of power management operations of a method that is performed in accordance with certain aspects of the invention.
P-0023[0023]FIG. 5 is a logic diagram illustrating additional aspects of operations of the invention.
P-0024[0024]FIG. 6 is a logic diagram illustrating some operations of the invention in more detail.
P-0025[0025]FIG. 7 is a logic diagram illustrating some operations of the invention in more detail.
P-0026[0026]FIG. 8 is a schematic diagram illustrating components that operate to perform various aspects of the invention.
DETAILED DESCRIPTION OF THE INVENTION
P-0027[0027]FIG. 1 displays a conceptual view of a Local Area network (LAN) <b>100</b>. The LAN includes a number of computers <b>120</b>, <b>130</b> and <b>140</b>. In addition, the LAN <b>100</b> may also include a communications device such as a bridge, a router, a hub, or a gateway as shown by <b>150</b>. The communications device <b>150</b> may connect the LAN <b>100</b> to other network(s) <b>155</b> that may include other LAN(s), Intranet(s), and/or the Internet itself.
P-0028[0028] In the LAN <b>100</b>, the computers <b>120</b>, <b>130</b>, <b>140</b>, and the communications device <b>150</b> transmit and receive their respective communications signals via medium <b>110</b>. The medium <b>110</b> may be coaxial cable, a fiber-optic cable, twisted pair cable, etc. The computers <b>120</b>, <b>130</b> and <b>140</b> each include a backplane or a bus that runs along the back or the side of the computer housing. In addition, communications device <b>150</b> may also include a backplane or a bus. The backplane connects various interface cards such as modems, mother boards, etc, within the computer housing. The backplane in these devices may conform to standards such as the PCI Local Bus standard. The PCI Local Bus standard places constraints on the devices, e.g., Network Interface Cards (NICs) that couple to the backplanes. For example, the PCI Local Bus Standard places a power consumption limitation on the cards that couple to the backplane. The method of the invention enables these NICs to meet the power consumption limitations imposed by the PCI Local Bus standard.
P-0029[0029] Computers <b>120</b>, <b>130</b> and <b>140</b> use the medium <b>110</b> to communicate with each other. When two computers attempt to communicate with each other, they use standard operating protocols such as IEEE 803.3 to communicate between each other. Once the communication has been accomplished, or the link has been established, the devices are referred to as link partners. For example, computers <b>120</b> and <b>130</b> exchange packets of information, i.e., messages, for signaling and/or to transfer data between each other, making them communication partners or link partners.
P-0030[0030] Link partners are able to communicate in real-time while performing power management operations that allow the respective NICs to meet the PCI Local Bus imposed maximum power consumption limitations. Resources required to service the link of a managed link partner are maintained as operational in a “wake mode,” while resources not required to service the link are placed in a “sleep mode”.
P-0031[0031] The IEEE standard is compliant with a reference model known as the Open System Interconnection (OSI) reference model. FIG. 2 displays a mapping of the OSI reference model <b>200</b> and the implementation of these layers in the IEEE 802.3 standard, as shown at <b>250</b>. The OSI reference model breaks communications functionality into several layers such as the physical layer <b>202</b>, the data link layer <b>204</b>, the network layer <b>206</b>, the transport layer <b>208</b>, the session layer <b>210</b>, the presentation layer <b>212</b>, and the application layer <b>214</b>. The functionality of the invention is implemented at the physical layer <b>202</b> (the PHY) as described in the IEEE 802.3.
P-0032[0032] The IEEE 802.3 model, shown at <b>250</b>, facilitates the use of several mediums as depicted by <b>252</b>. For example, twisted pair technology, coaxial cable technology, copper technology and fiber-optic technology are all anticipated as potential communication mediums. In addition, the IEEE 802.3 model includes communicating information at speeds such as 10 Megabit/sec, 100 megabit/set and 1000 megabit/sec, the communication speed depending upon the media employed and the capabilities of a link partner.
P-0033[0033] In the IEEE 802.3 model 250, the medium <b>252</b> interfaces into a first interface <b>254</b>. The first interface <b>254</b> is a Medium Dependent Interface (MDI). The MDI <b>254</b> is a dependent interface that is established to work with a specific medium such as a coaxial cable or a twisted pair cable. The MDI <b>254</b> couples to a second interface <b>256</b>. The second interface <b>256</b> is referred to as the physical layer device (PHY) in I.E.E.E. 802.3. The PHY <b>256</b> provides the means to transform data bytes provided by the higher level layers into appropriate signals for transmission on the medium <b>252</b>. Likewise, the PHY <b>256</b> converts signals received from the medium <b>252</b> into appropriate data bytes before passing them to the higher level layers.
P-0034[0034] The PHY <b>256</b> includes a physical medium dependent (PMD) layer, a physical medium attachment (PMA) layer and a physical coding sub layer (PCS) in 10 Megabit/sec, 100 Megabit/sec, and 1 Gigabit/sec systems. The PCS provides the functions of data coding and decoding, which are usually independent of the physical media used. The PMA sub-layer performs symbol serialization and de-serialization. In IEEE 802.3 compliant systems, an encoded stream of symbols is serialized before transmission. Received encoded symbols are de-serialized and passed to the PCS layer. The PMD layer performs the function of converting signals from the PMA layer into the signals appropriate for the specific media. Although, the physical layer device <b>156</b> is defined differently in 10 Megabit/sec, 100 Megabit/sec, and 1 Gigabit/sec devices, all three variations may be implemented to perform the various aspects of the invention. That is to say, even though the PHY is implemented differently in these different devices, the invention is adaptable to each of the various types of PHY implementations.
P-0035[0035] The PHY <b>256</b> connects with a third interface <b>258</b> that represents a Media Independent Interface (MII) in 10 Mb/s systems and 100 Mb/s systems or a Gigabit Media Independent interface (GMII) in 1 Gb/s systems. Finally in 10 Mb/s systems, 100 Mb/s systems, and Gb/s systems a third interface <b>258</b> connect to a reconciliation layer <b>260</b>. The first interface <b>254</b>, the second interface <b>256</b> (the PHY), and third interface <b>258</b> are adjusted for 10 Mb/s, 100 Mb/s and 1 Gb/s systems, however, similar functionality is provided. The reconciliation layer <b>260</b> is connected to the Media Access Control (MAC) layer <b>262</b>. The MAC layer <b>262</b> and a logical link layer <b>264</b> are the IEEE 802.3 implementation of the data link layer <b>204</b> of the OSI model. In addition, there are higher layers of functionality as shown by <b>266</b>.
P-0036[0036] The MAC layer <b>262</b> is responsible for the enforcement of the CSMA/CD protocol. The MAC layer <b>262</b> functionality is primarily separated into two types of functionality: (1) Transmit and receive message data encapsulation and (2) Media access management. Under the transmit and receive message data encapsulation, the MAC layer <b>262</b> performs: (a) framing such as frame boundary delineation, and frame synchronization; (b) addressing such as source and destination address handling; and (c) error detection such as physical-medium transmission error. The media access management includes: (a) medium allocation such as collision avoidance and (b) contention resolution or collision handling. In the method of the invention, packets are passed between the MAC layer and the physical layer to maintain communications while portions of the integrated circuit are in sleep mode.
P-0037[0037]FIG. 3 is a functional block diagram illustrating an integrated circuit <b>300</b> that operates according to the invention. In the transmit path, the integrated circuit <b>300</b> includes a symbol encoder <b>302</b> that encodes into symbols data and control bits it receives as an incoming data stream. A transmit Digital-to-Analog Converter (DAC) <b>308</b> receives the encoded symbols from the symbol encoder <b>302</b> and performs signal shaping, which decreases unwanted high frequency signal components. In addition, the transmit DAC <b>308</b> performs pre-equalization of the encoded signal. The output of the DAC <b>308</b> is transmitted on a coupled medium.
P-0038[0038] The Analog-to-Digital Converter (ADC) <b>314</b> samples incoming data on the media after it has been gain adjusted by a Programmable Gain Amplifier <b>312</b>. The output of the ADC <b>314</b> is provided to a Digital Adaptive Equalizer. The Digital Adaptive Equalizer removes inter-symbol interference created by the transmission channel media and includes the combination of a Feed Forward Equalizer <b>316</b> and a Decision Feedback Equalizer/Trellis Decoder <b>318</b>. A symbol decoder <b>320</b> receives the output of the Decision Feedback Equalizer/Trellis Decoder <b>318</b> and produces received data. The Decision Feedback Equalizer/Trellis Decoder <b>318</b> also couples to a timing and phase recovery block <b>322</b>. The timing and phase recovery block <b>322</b> detects timing and phase errors in the sampled received symbols and adjusts the operation of the ADC <b>314</b> to correct such detected errors.
P-0039[0039] The single integrated circuit <b>300</b> architecture of FIG. 3 supports 1000BASE-T functionality, 100BASE-T functionality, and 10BASE-T functionality. In 1000BASE-T operation, symbols are both transmitted and received on conductors of a coupled media. Such transmission and receipt of the same conductors causes cross-talk and impairment of signals. A cross talk canceller <b>304</b> removes this impairment and separates independent signals. As a result of the bi-directional nature of transmission and receipt of communications on shared conductors, an echo canceller <b>306</b> is used to remove transmitted signal impairment from an incoming receive signal.
P-0040[0040] In the monolithic integrated circuit <b>300</b>, the 1000BASE-T and 100BASE-TX data streams are not always DC balanced. Because the receive signal must pass through a transformer, the DC offset of the differential receive input can wander. This effect is know as baseline wander and can greatly reduce the noise immunity of the receiver. The integrated circuit <b>300</b> includes baseline wander correction <b>310</b> that reduces the baseline wander by removing the DC offset from the input signal, and thereby significantly reduces the probability of receive symbol error. Functional blocks for timing and phase recovery <b>322</b>, clock generation <b>334</b>, bias generation <b>336</b>, voltage regulation <b>338</b>, and Light Emitting Diode circuitry (LED) <b>326</b> are also included in the integrated circuit.
P-0041[0041] The integrated circuit <b>300</b> has auto-negotiation functionality as shown at <b>324</b>. The integrated circuit <b>300</b> negotiates its mode of operation using the auto-negotiation mechanism defined in the IEEE specifications. Auto-Negotiation can be enabled or disabled by hardware or software control. When the Auto-Negotiation function is enabled, the integrated circuit <b>300</b> automatically chooses the mode of operation by advertising its abilities and comparing them with those received from its link partner to establish an agreed set of capabilities with which to communicate.
P-0042[0042] The integrated circuit logic can be configured to advertise various capabilities using the auto-negotiation function. Among these capabilities are 1000BASE-T full duplex and/or half-duplex, 100BASE-T full duplex and/or half-duplex, and 10BASE-T full-duplex and/or half-duplex. A Media Independent Interface is the digital data interface between the MAC and the physical layer when functioning in the 10BASE-T and the 100BASE-T modes; the same type of interface is employed for the Gigabit Media Independent interface (GMII). The Media Independent Interface (MII) registers <b>330</b> include a superset of I.E.E.E. 802.3 compliant registers for managing the overall functionality of the integrated circuit. For example during auto-negotiation advertising is accomplished using registers 04 h (auto-negotiation advertisement) and 09 h (1000BASE-T control register). These registers include information on the capability set of the initiating link partner that is then advertised.
P-0043[0043] In addition, the MII register <b>330</b> includes an auxiliary control register 18 h. A specific bit (i.e. bit <b>3</b>, the Wake on LAN bit) of the auxiliary control register places the integrated circuit <b>300</b> in Wake on LAN mode. In Wake on LAN mode, the integrated circuit <b>300</b> shuts down the functionality that is not being used or unnecessary for the current communications. This enables the integrated circuit to preserve power and meet the PCI Interface Local Bus imposed requirements. Finally, MII control register (register address 00 hex) includes the auto-negotiation enable and auto-negotiation restart bits required for the method of the invention. A MII Management control interface <b>328</b> contains a set of multipurpose registers for management and control.
P-0044[0044] The method of the invention enables power management, by utilizing the minimal functionality required for a specific communication. The single integrated circuit <b>300</b> has 10BASE-T functionality, 100BASE-T functionality, and 1000BASE-T functionality. According to the invention, power consumption is reduced by using the functionality of the integrated circuit <b>300</b> required for communications and placing the other functionality in a sleep mode. In such case, the functionality of the integrated circuit <b>300</b> not required to service ongoing communications is not powered and the overall power consumption of the integrated circuit <b>300</b> is reduced. When the unused functionality is required, the portions of the integrated circuit <b>300</b> that provide the additional functionality are awakened or placed in wake mode, so that the additional functionality is provided.
P-0045[0045] Generally speaking, the integrated circuit <b>300</b> may be considered to provide a 10BASE-T transceiver, a 100BASE-T transceiver, and a 1000BASE-T transceiver. Some of the components of the integrated circuit <b>300</b> may be fully used by each of these transceivers. These components may not be placed in sleep mode at any time. Some of the components of the integrated circuit <b>300</b> may be shared by two of these transceivers. These components may be placed in sleep mode only when the third transceiver is being used. Finally, some of the components of the integrated circuit are employed by only a single one of the transceivers. These components may be placed in a sleep mode when either of the two other transceivers is operational.
P-0046[0046] As is shown in FIG. 3, when fully operational, the ADC <b>314</b> samples <b>8</b> conductors of the media and the DAC <b>308</b> produces outputs that are coupled to the <b>8</b> conductors of the media. When the integrated circuit <b>300</b> operates in the 1000BASE-T mode, each of these <b>8</b> conductors of the media used and all of the functionality of the ADC <b>314</b> and the DAC <b>308</b> are required. However, when the integrated circuit <b>300</b> is operating in the 100BASE-T or 10BASE-T modes of operation, only a subset of the functionality of the ADC <b>314</b> and DAC <b>308</b> is required. In such case, a remaining portion of this functionality is not required and is placed in sleep mode. Nearly every device is affected, at least in some way, when power management is initiated. For example, some of the other devices that may be partially or fully placed in sleep mode during particular modes of operation include the PGA <b>312</b>, the echo canceller <b>306</b>, the FFE <b>316</b>, the DFE/trellis decoder <b>318</b>, the Xtalk canceller <b>304</b>, the symbol encoder <b>302</b>, the symbol decoder <b>320</b>, and the timing and phase recovery <b>322</b>, among others.
P-0047[0047]FIG. 4 is a logic diagram illustrating one embodiment of power management operations of a method of the invention. In one operating condition, the integrated circuit <b>300</b> of FIG. 3 operates with all of its functionality as shown in FIG. 4 (at block <b>400</b>). In such operating condition, the 10BASE-T, 100BASE-T and 1000BASE-T transceivers are all operational. When the integrated circuit <b>300</b> detects that one mode of operation is not being used, it proceeds to put the logic associated with that transceiver to sleep as shown at <b>402</b>. This may mean decoupling or disconnecting the 10BASE-T functionality, the 100BASE-T functionality or the 1000BASE-T functionality. Should the system decide that one of the two remaining transceivers is unnecessary, the integrated circuit can then decide to put the second transceiver to sleep as shown at <b>404</b>. For example, if the integrated circuit puts the logic that supports the 1000BASE-T functionality to sleep, then this would mean that the integrated circuit may put the 100BASE-T functionality to sleep next and just operate the third functionality or the 10BASE-T functionality as shown at <b>406</b>. It should be appreciated that the logic supporting any one of the three transceiver functions can be put to sleep first as shown at <b>402</b>, put to sleep second as shown at <b>404</b> or left operational as shown at <b>406</b>. It should also be appreciated that the logic supporting two transceivers may be put to sleep at the same time as shown at <b>408</b>. For example, both the 10BASE-T and the 100BASE-T circuitry may be put to sleep.
P-0048[0048] Ultimately, once the logic supporting different functions of the integrated circuit are put in sleep mode the integrated circuit will operate with a subset of its capabilities. Should additional capabilities be required the integrated circuit awakens the sleeping functionality. The integrated circuit may wake the logic supporting the first transceiver as shown in <b>410</b> and then wake the logic supporting the second transceiver as shown in <b>412</b>. Therefore, if the integrated circuit put the 100BASE-T functionality to sleep first and the 1000BASE-T functionality to sleep next, the integrated circuit may wake the 100BASE-T functionality as indicated by <b>410</b> and then wake the 1000BASE-T functionality.
P-0049[0049] In the alternative, the integrated circuit <b>300</b> may wake the second functionality first as shown at <b>414</b> and then wake the first functionality as shown at <b>416</b>. Therefore, using the current example, the integrated circuit would wake the logic supporting the 1000BASE-T functionality and then wake the logic supporting the 100BASE-T functionality. Finally, the integrated circuit may wake the logic related to both functions at the same time as shown at <b>418</b>. Using our current example, this would mean that the integrated circuit would wake both the 100BASE-T and the 1000BASE-T functionality at the same time.
P-0050[0050]FIG. 5 is a logic diagram illustrating additional aspects of operations of the invention. In FIG. 5, an integrated circuit decides to place some of its functionality in sleep mode as shown in a block <b>502</b>; it is noted that the PHY itself does not make this decision. The relationship between a processor, the PHY, and the MAC may be described as follows: the processor employs a higher level protocol interface to communicate with the MAC; the MAC communicates and interacts with the PHY; the communication between the processor and the PHY is via the MAC, and only the MAC talks with the PHY.
P-0051[0051] This would usually occur because respective functions of the processor are not operative. The processor would signal to the adapter to go to sleep as shown at <b>504</b>. Since the interface may currently have a communications session going, the MAC layer completes the current packet transfer as shown at <b>506</b>. Since the physical layer typically handles the physical signaling of a communications link, the MAC layer then signals to the PHY to go to sleep mode and to drop the communications link as shown at <b>508</b>. The physical layer will then drop the link and then begin auto-negotiation at the PHY level, advertising a subset of the full capability of the integrated circuit as shown at <b>510</b>.
P-0052[0052] Ultimately, the logic associated with the unused functionality is placed in sleep mode. However, the physical layer is still able to pass packets to the MAC layer while the other functionality is turned off as shown at <b>512</b>. When the MAC receives a predetermined or “magic packet” from a higher level processor, the MAC in turn signals the physical layer to wake the logic associated with the unused functionality. Once the logic associated with the unused functionality has been awakened or re-engaged, the physical layer drops the current link and then advertises the full capability set (i.e., 10BASE-T, 100BASE-T, 1000BASE-T) and signals the PHY to wake up to full operation as shown at <b>516</b>. Here, the PHY then transfers onto the MAC any information it receives. Within the wake on LAN mode (WOL), receiver circuitry and transmitter circuitry may still be enabled when in the WOL mode. In other words, in some WOL embodiments, it is only required to receive packets; other WOL embodiments operate using both receive and transfer packets. At a very minimum, the PHY is able to receive packets, and the MAC is able then to determine if it needs to wake up the device. If it is determined that the MAC is to wake up the device, then the MAC may decide to re-advertise. If it does so, then it re-sets auto-negotiation, and then the PHY drops links and does re-auto-negotiation.
P-0053[0053]FIG. 6 is a logic diagram illustrating in more detail operations of the invention. In the method of the invention, the integrated circuit is placed in both sleep and wake modes. Sleep mode refers to disengaging functionality on the integrated circuit and wake mode refers to re-engaging and using the disengaged functionality. The logic of the integrated circuit relating to specific functionality is put into sleep mode by a sequence of steps; these steps are the steps that are shown in the flow chart of the FIG. 5 in certain embodiments.
P-0054[0054] The integrated circuit first toggles the Wake on LAN bit to signal to the system that the logic related with specific functions of the integrated circuit are going into sleep mode as shown at <b>602</b>. The new functionality is advertised using registers 04 h and 09 h as shown in <b>606</b>. The restart register is set and the system auto-negotiates as shown at <b>608</b> using a subset of the integrated circuits overall functionality. The associated logic is then placed into sleep mode as shown in <b>610</b>; the non-advertised functions would be those functions that are placed in sleep mode. For example, if one of the functionalities associated with the 10BASE-T, 100BASE-T, or 1000BASE-T functionality is put in sleep mode, then that associated logic is gated off. More specifically, if the 10BASE-T functionality is put in sleep mode, then the logic associated with the 10BASE-T functionality is gated off; if the 100BASE-T functionality is put in sleep mode, then the logic associated with the 100BASE-T functionality is gated off; and if the 1000BASE-T functionality is put in sleep mode, then the logic associated with the 1000BASE-T functionality is gated off. However, it is noted that one of the functionalities is employed in a given situation, and the other two functionalities that have been put in sleep mode may be gated off.
P-0055[0055]FIG. 7 is a logic diagram illustrating in more detail operations of the invention. To wake the logic associated with functionality that has been placed in sleep mode, the processor takes the steps displayed in the flow chart of FIG. 7. First, the MAC clears the Wake on LAN bit in the PHY as shown at <b>702</b>. The MAC changes advertise registers <b>4</b> and <b>9</b> in the PHY as shown at <b>706</b>. Using the example above, the integrated circuit may now advertise, 10BASE-T, 100BASE-T, and 1000BASE-T functionality. The MAC sets the restart auto-negotiation bit in the PHY as shown at <b>708</b>. The PHY then turns on all clocks at <b>710</b>; the PHY wakes up all the logic in the device. Auto-negotiation is then performed at the PHY level as shown at <b>714</b>.
P-0056[0056]FIG. 8 is a schematic diagram illustrating components that operate according to the invention. FIG. 8 displays a circuit implementation of the invention. The circuit of FIG. 8 includes a number of variables. A definition of each variable is provided in TABLE 1 as follows: <tables id="TABLE-US-00001" num="1"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="2"><colspec colname="1" colwidth="70PT" align="left" /><colspec colname="2" colwidth="147PT" align="left" /><thead><row><entry /></row><row><entry namest="1" nameend="2" align="center" rowsep="1" /></row><row><entry>Variable</entry><entry>Definition</entry></row><row><entry namest="1" nameend="2" align="center" rowsep="1" /></row></thead><tbody valign="top"><row><entry>WOL</entry><entry>Wake on LAN</entry></row><row><entry>autoneg_adv</entry><entry>auto-negotiation advertisement</entry></row><row><entry>linkenab_10t</entry><entry>10BASET link enable</entry></row><row><entry>linkenab_100t</entry><entry>100BASET link enable</entry></row><row><entry>linkenab_1000t</entry><entry>1000BASET link enable</entry></row><row><entry>1p10t</entry><entry>low power for 10BASET communications</entry></row><row><entry>1p100t</entry><entry>low power for 100BASET communications</entry></row><row><entry>1p1000t</entry><entry>low power for 1000BASET communications</entry></row><row><entry>1p10_clkoff</entry><entry>low power for 10BASET clock off</entry></row><row><entry>1p100_clkoff</entry><entry>low power for 100BASET clock off</entry></row><row><entry>1p1000_clkoff</entry><entry>low power for 1000BASET clock off</entry></row><row><entry>wol_clkoff_10t</entry><entry>Wake on LAN clock off for 10BASET</entry></row><row><entry>wol_clkoff_100t</entry><entry>Wake on LAN clock off for 100BASET</entry></row><row><entry>clock</entry><entry>System clock</entry></row><row><entry>10T clocks</entry><entry>10BASET clocks</entry></row><row><entry>100T clocks</entry><entry>100BASET clocks</entry></row><row><entry>1000T clocks</entry><entry>1000BASET clocks</entry></row><row><entry>gated 10T clocks</entry><entry>gated 10BASET clocks</entry></row><row><entry>gated 100T clocks</entry><entry>gated 100BASET clocks</entry></row><row><entry>gated 1000T clocks</entry><entry>gated 1000BASET clocks</entry></row><row><entry namest="1" nameend="2" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
P-0057[0057] In FIG. 8, the circuitry <b>800</b> receives a number of inputs. Among the inputs are the (a) Wake on LAN input, which indicates that the system is going to be placed in Wake on LAN mode. The Wake on LAN mode is a mode of operation that enables the integrated circuit to gate off the logic for different functions (i.e. 10BASET, 100BASET, and 1000BASET) on the integrated circuit. This disengages the logic and circuitry associated with these functional components of the integrated circuit. The auto-negotiation advertisements (autoneg_adv) are inputs that indicate which functionality has been advertised. The link enable variables (linkenab<sub>—</sub>10t, linkenab<sub>—</sub>100t, and linkenab<sub>—</sub>1000t) indicate that the 10BASET, 100BASET or 1000BASET link has been established. Lastly, the clock input to logic circuitry <b>800</b> is the system clock for the system.
P-0058[0058] The combination of the inputs to logic circuitry <b>800</b> produces a signal to turn off the clocks for either Wake on LAN 10BASEt (wol_clkoff<sub>—</sub>10t) or Wake on LAN 100BASEt (wol_clkoff<sub>—</sub>100t). The variables (lp10t, lp100t, and lp1000t) all allow for low power operation for 10BASET, 100BASET, and 1000BASET.
P-0059[0059] In view of the above detailed description of the invention and associated drawings, other modifications and variations will now become apparent. It should also be apparent that such other modifications and variations may be effected without departing from the spirit and scope of the invention.
Contents5
9 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| US2008069014A1 | Cited by | United States of America | Pre-grant |
| US8665901B1 | Cited by | United States of America | Search report |
| CN105677459A | Cited by | China | Search report |
| US7616587B1 | Cited by | United States of America | Search report |
| US2006288245A1 | Cited by | United States of America | Pre-grant |
| US8935555B2 | Cited by | United States of America | Search report |
| US8185757B2 | Cited by | United States of America | Applicant |
| US11671521B2 | Cited by | United States of America | Applicant |
| US9524010B2 | Cited by | United States of America | Search report |
| US8837468B1 | Cited by | United States of America | Search report |
| US11431468B2 | Cited by | United States of America | Applicant |
| US11757550B2 | Cited by | United States of America | Applicant |
| US2006136754A1 | Cited by | United States of America | Pre-grant |
| US12256443B2 | Cited by | United States of America | Applicant |
| US8345673B1 | Cited by | United States of America | Search report |
| US12093103B2 | Cited by | United States of America | Search report |
| US11513577B2 | Cited by | United States of America | Search report |
| US7707435B2 | Cited by | United States of America | Search report |
| US8346850B2 | Cited by | United States of America | Applicant |
| US9531586B1 | Cited by | United States of America | Applicant |
| US9351247B1 | Cited by | United States of America | Applicant |
| US10327158B2 | Cited by | United States of America | Search report |
| CN106254414A | Cited by | China | Search report |
| US8559361B1 | Cited by | United States of America | Applicant |
| CN100390707C | Cited by | China | Search report |
| US7480729B2 | Cited by | United States of America | Applicant |
| US9461809B2 | Cited by | United States of America | Applicant |
| US8867564B2 | Cited by | United States of America | Search report |
| US11665020B2 | Cited by | United States of America | Applicant |
| US9853803B1 | Cited by | United States of America | Applicant |
| US12137156B2 | Cited by | United States of America | Applicant |
| US11516855B2 | Cited by | United States of America | Applicant |
| GB2459216B | Cited by | United Kingdom | Search report |
| US12323192B2 | Cited by | United States of America | Applicant |
| WO2008074365A1 | Cited by | World Intellectual Property Organization (WIPO) | International search |
| US2016162003A1 | Cited by | United States of America | Pre-grant |
| GB2459216A | Cited by | United Kingdom | Search report |
| US7243220B2 | Cited by | United States of America | Search report |
| US8045483B1 | Cited by | United States of America | Search report |
| US2010077023A1 | Cited by | United States of America | Pre-grant |
| US7881755B1 | Cited by | United States of America | Search report |
| US7325149B2 | Cited by | United States of America | Applicant |
| US10146290B2 | Cited by | United States of America | Search report |
| US2005033955A1 | Cited by | United States of America | Pre-grant |
| US2014059370A1 | Cited by | United States of America | Pre-grant |
| US2010207685A1 | Cited by | United States of America | Pre-grant |
| US5675282A | Cites | United States of America | Pre-grant |
| US5754552A | Cites | United States of America | Pre-grant |
| US6049885A | Cites | United States of America | Pre-grant |
| US6360106B1 | Cites | United States of America | Pre-grant |
| US6507591B1 | Cites | United States of America | Pre-grant |
| US6567855B1 | Cites | United States of America | Pre-grant |
| US6683904B2 | Cites | United States of America | Pre-grant |
| US6690742B2 | Cites | United States of America | Pre-grant |
| US6732190B1 | Cites | United States of America | Pre-grant |
| US6795450B1 | Cites | United States of America | Pre-grant |
| US6883025B2 | Cites | United States of America | Pre-grant |
3 members in 1 office; this record represents the family
Priority claims5
| Document | Office | Kind | Date |
|---|---|---|---|
| 34609902 | United States of America | P | |
| 17230702 | United States of America | A | |
| 60346099 | – | – | – |
| US20020172307 | – | – | – |
| US20020346099P | – | – | – |
Members3
| Document | Office | Kind | |
|---|---|---|---|
| US2003126486A1 | United States of America | A1 | |
| US7047428B2 | United States of America | B2 | |
| US2006184813A1 | United States of America | A1 |
16 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| Maintenance fee paymentMAFP | MAFP | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| Fee paymentFPAY | FPAY | |
| Fee paymentFPAY | FPAY | |
| Fee payment procedurePAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITYFEPP | FEPP | |
| Fee payment procedurePAYER NUMBER DE-ASSIGNED (ORIGINAL EVENT CODE: RMPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITYFEPP | FEPP | |
| Information on status: patent grantGrantedPATENTED CASESTCF | STCF | |
| AssignmentAS | AS |
Numbers
- Publication, DOCDB
- 2003126486
- Publication, EPODOC
- US2003126486
- Application
- 10172307
- Application, DOCDB
- 17230702
- Application, EPODOC
- US20020172307
Titles
- English
- Method and apparatus for performing wake on LAN power management
Classification
- CPC, 2
- H04L12/12
- Y02D30/50
- IPC, 1
- H04L12 12
- USPC, 1
- 713320000