Abstract:
An intelligent optical burst switching module for use in an optical switching network includes an optical receiver array, optical transmitter array, a core switch unit and a control unit. The core switch unit routes optical control and data signals received via a plurality of optical input lines to the optical receiver array and a plurality of output lines, respectively. The optical output lines provide propagation paths for a plurality of TDM channels. The optical receiver array converts the optical control signal to an electrical signal. The control unit processes the converted control signal and, responsive thereto, causes the core switch unit to route at least a portion of the data signal to one of the TDM channels. The control unit also causes the optical transmitter to generate a new optical control signal and cause the switch unit to route the new control signal to another of the TDM channels.

Description:
FIELD OF THE INVENTION 
   The field of invention relates to optical networks in general; and, more specifically, to optical burst switching. Still more particularly, the present invention relates to optical burst and packet switching modules and their networking protocols within optical switched networks. 
   BACKGROUND 
   Transmission bandwidth demands in telecommunication networks (e.g., the Internet) appear to be ever increasing and solutions are being sought to support this bandwidth demand. One solution to problem is to use fiber-optic networks, where wavelength-division-multiplexing (WDM) technology is used to support the ever growing demand in optical networks for higher data rates. 
   Conventional optical switched networks typically use wavelength routing techniques that require optical-electrical-optical (OEO) conversion of optical signals. OEO conversion can typically require about ten milliseconds at each switching node in the optical network, which is very costly, and potentially creates a traffic bottleneck for the optical switched network. In addition, current optical switch technologies cannot efficiently support “bursty” nature of the traffic that is often experienced in packet communication applications (e.g., the Internet). 
   A large network can be implemented using several sub-networks. For example, a large network to support Internet traffic can be divided into a large number of relatively small access networks operated by Internet service providers (ISPs), which are coupled to a number of metropolitan area networks (Optical MANs), which are in turn coupled to a large “backbone” wide area network (WAN). While the local-area networks (LANs) can be relatively low bandwidth, the optical MANs and WANs typically require high bandwidth in order to provide a level of service demanded by their high-end users. 

   
     BRIEF DESCRIPTION OF THE DRAWINGS 
     Non-limiting and non-exhaustive embodiments of the present invention are described with reference to the following figures, wherein like reference numerals refer to like parts throughout the various views unless otherwise specified. 
       FIGS. 1 and 1A  are simplified block diagrams illustrating optical burst switching networks, according to one embodiment of the present invention. 
       FIG. 2  is a simplified flow diagram illustrating the operation of an optical burst switching network, according to one embodiment of the present invention. 
       FIG. 3  is a block diagram illustrating a core node module for use in an optical burst switching network, according to one embodiment of the present invention. 
       FIGS. 4A and 4B  are diagram illustrating the format of an optical payload and an optical label for use in an optical burst switching network, according to one embodiment of the present invention. 
       FIG. 5  is a flow diagram illustrating the operation of a core switching node module, according to one embodiment of the present invention. 
       FIG. 6  is a diagram illustrating time slot provisioning, according to one embodiment of the present invention. 
       FIG. 7  is a diagram illustrating multi-wavelength time slot provisioning, according to one embodiment of the present invention. 
       FIG. 8  is a block diagram illustrating a core switching node module that supports generalized multi-protocol label switching (GMPLS), according to one embodiment of the present invention. 
   

   DETAILED DESCRIPTION 
     FIG. 1  illustrates an optical burst switching network  10 , according to one embodiment of the present invention. The term optical burst is used herein to refer to statistically-multiplexed packets (e.g., internet protocol (IP) packets) having similar routing requirements. An optical burst typically includes an optical label containing the header information of the packets and a payload containing the data segments of the packets. 
   This embodiment of optical burst switching network  10  includes a optical MAN  11 , local area networks (LANs)  13   1 – 13   N  and a backbone WAN (not shown). In addition, this embodiment of optical MAN  11  includes ingress switching nodes  15   1 – 15   M , core switching nodes  17   1 – 17   L , and egress switching node  18 . Optical MAN  11  can include other ingress and core switching nodes (not shown) that are interconnected with the switching nodes shown in  FIG. 1 . 
   In this embodiment, ingress switching nodes  15   1 – 15   M  are implemented with optical switching units or modules that are each configured to receive optical signals from a LAN (via a label switch router (LSR) in some embodiments), and appropriately route the received optical signals to other switching nodes of optical MAN  11 . In addition, ingress switching nodes  15   1 – 15   M  are configured to receive optical signals from other switching nodes of optical MAN  11  and send them to other LANs. In one embodiment, the ingress switching nodes perform optical-electrical-optical (OEO) conversion of received optical signals, and include electronic memory to buffer the received signals until they are sent to the appropriate LAN or switching node of optical MAN  11 . Embodiments of the ingress switching nodes are described further below. 
   Egress switching node  18  is implemented with optical switching units or modules that are configured to receive optical signals from other nodes of optical MAN  11  and route them to the WAN. Egress switching node  18  can also receive optical signals from the WAN and send them to the appropriate node of optical MAN  11 . In one embodiment, egress switching node  18  performs OEO conversion of received optical signals, and includes electronic memory to buffer received signals until they are sent to the appropriate node of optical MAN  11  (or to the WAN). Embodiments of egress switching node  18  are described further below. 
   Core switching nodes  17   1 – 17   L  are implemented with optical switching units or modules that are each configured to receive optical signals from other switching nodes and appropriately route the received optical signals to other switching nodes of optical MAN  11 . As is described below, the core switching nodes perform OEO conversion of “control” optical signals. In some embodiments, the control optical signals are propagated only on preselected wavelengths. The preselected wavelengths do not propagate optical “data” (as opposed to control) signals in such embodiments, even though the control signals may be include control information for a particular group of optical data signals. In another embodiment, optical control and data signals may be propagated on the same wavelength(s) using different encoding schemes such as different modulation formats, etc. In either approach, the optical control signals are sent asynchronously relative to its corresponding optical data signals. In still another embodiment, the optical control signals are propagated at different transmission rates as the optical data signals. 
   Although core switching nodes  17   1 – 17   L  may perform OEO conversion of the optical control signals, in this embodiment, the core switching nodes do not perform OEO conversion of the optical data signals. Rather, core switching nodes  17   1 – 17   L  perform purely optical switching of the optical data signals. Thus, the core switching nodes can include electronic circuitry to store and process the incoming optical control signals that were converted to electronic form and use the control information to configure the optical switch settings, and to properly route the optical data signals corresponding to the optical control signals. The new control information, which replaces the previous control information based on the new routing information, is converted to an optical control signal, and it transmitted to the next core or egress switching nodes. Embodiments of the core switching nodes are described further below. 
   The elements of exemplary optical burst switching network  10  are interconnected as follows. LANs  13   1 – 13   N  are connected to corresponding ones of ingress switching nodes  15   1 – 15   M  of optical MAN  11 . As shown in  FIG. 1A , in some embodiments, a label switching router (LSR)  19  may be interposed between one or more LANs and an ingress switching node. 
   Within optical MAN  11 , ingress switching nodes  15   1 – 15   M  and egress switching node  18  are connected to some of core switching nodes  17   1 – 17   L  via optical fibers. Core switching nodes  17   1 – 17   L  are also interconnected to each other via optical fibers in mesh architecture to form a relatively large number of optical paths or links between the ingress switching nodes, and between ingress switching nodes  15   1 – 15   L  and egress switching node  18 . Ideally, core switching nodes  17   1 – 17   L  provide more than one optical path between each end point of optical MAN  11  (i.e., the ingress switching nodes and egress switching node  18  are endpoints within optical MAN  11 ). 
   As described below in conjunction with  FIG. 2 , the ingress, egress and core switching nodes of optical MAN  11  are configured to send and/or receive optical burst signals that are wavelength multiplexed so as to propagate the optical labels on preselected wavelength(s) and optical data or payloads on different preselected wavelength(s). In addition, labels (and payloads) can be time division multiplexed (TDM) on a given wavelength. Still further, the endpoints of optical MAN  11  can send optical label signals when sending data out of optical MAN  11 . 
     FIG. 2  illustrates the operational flow of optical burst switching network  10 , according to one embodiment of the present invention. Referring to  FIGS. 1 and 2 , optical burst switching network  10  operates as follows. 
   Optical MAN  11  receives packets from LANs  13   1 – 13   N . In one embodiment, optical MAN  11  receives IP packets at ingress switching nodes  15   1 – 15   M . The received packets can be in electronic form rather than in optical form, or received in optical form and then converted to electronic form. In this embodiment, the ingress switching nodes store the received packets electronically. A block  21  represents this operation. 
   For clarity, the rest of the description of the operational flow of optical burst switching network  10  focuses on the transport of information from ingress switching node  15   1  to egress switching node  18 . The transport of information from ingress switching nodes  15   2 – 15   M  is substantially similar. 
   A label and payload (i.e., an optical burst) is formed from the received packets. In one embodiment, ingress switching node  15   1  uses statistical multiplexing techniques to form the label and payload from the received packets stored in ingress switching node  15   1 . For example, packets received by ingress switching node  15   1  and having to pass through egress switching node  18  on their paths to a destination can be assembled into an optical burst. A block  22  represents this operation. 
   Bandwidth is reserved to transport the optical burst through optical burst switching network  10 . In one embodiment, ingress switching node  15   1  reserves a time slot (i.e., a time slot of a TDM system) in an optical data signal path through optical burst switching network  10 . Further, in one embodiment, the bandwidth is reserved for a time period sufficient to transport the optical burst from the ingress switching node to the egress switching node. For example, in some embodiments, the ingress switching nodes maintain a list of all used and available time slots. The time slots can be allocated and distributed over multiple wavelengths and optical fibers. Thus, a reserved time slot (also referred to herein as a TDM channel) may be in one wavelength of one fiber, or can be spread across multiple wavelengths and multiple optical fibers. A block  24  represents this operation. 
   When an ingress switching node reserves bandwidth or when bandwidth is released after an optical burst is transported, a master network controller (not shown) updates the list. In one embodiment, the master network controller and the ingress or egress switching nodes perform this updating process using various burst or packet scheduling algorithms based on the available network resources and traffic patterns. The available time slots, which are continuously broadcasted to all the ingress and egress switching nodes, are transmitted on the same wavelength as the optical labels or on a different common preselected wavelength throughout the optical network. The master network controller function can reside in one of the ingress switching nodes or can be distributed across two or more ingress switching nodes. 
   The optical burst (i.e., payload) is then transported through optical burst switching network  10  in the reserved time slot or TDM channel. In one embodiment, ingress switching node  15   1  transmits the label to the next switching node in the route determined by the network controller. In this embodiment, the network controller uses a dynamic routing protocol (e.g., GMPLS) over one or more wavelengths to determine the best available route to the next switching node. In one embodiment, ingress switching node  15   1  then asynchronously transmits the payload to the same switching node with little or no time delay. A time delay allows the switching node to process the label and configure the optical core switches to appropriately switch and forward the payload to the next switching node without buffering or OEO conversion. In some embodiments, the switching node may perform OEO conversion of the label so that the node can extract routing information contained in the label. Further, in some embodiments, the TDM channel is propagated in wavelengths that are not used for propagating labels. Alternatively, the label and payload can be modulated on the same wavelength in the same optical fiber using different modulation formats. For example, labels can be transmitted using non-return-to-zero (NRZ) modulation format, while payloads are transmitted using return-to-zero (RZ) modulation format. The optical burst is transmitted from one switching node to another switching node in a similar optical MAN until the optical burst is transported to egress switching node  18 . A block  25  represents this operation. 
   The IP packets are then extracted from the optical burst. In this embodiment, egress switching node  18  converts the optical burst to electronic signals that egress switching node  18  can process to recover the header and data segment of each of the packets. A block  27  represents this operation, which is basically the inverse of block  22 . 
   The extracted IP packets are processed and then routed to the target network. In this embodiment, egress switching node  18  transmits the packets to the WAN using electronic signals rather than optical signals. A block  28  represents this operation. 
   IP Packets received at egress switching node  18  from the WAN can be transported to a targeted LAN via optical MAN  11  in a substantially similar manner. For example, the egress switching node  18  can receive and store packets from the WAN (similar to block  21 ). Egress switching node  18  can form optical bursts using statistical multiplexing techniques (similar to block  22 ). Egress switching node  18  can then reserve a TDM channel through optical MAN  11  (similar to block  24 ) and send the optical burst to a targeted ingress switching node via the reserved TDM channel (similar to block  25 ). The targeted ingress switching node can then extract the IP packets from the optical burst (similar to block  27 ) and send the IP packets electronically to the target LAN (similar to block  28 ). 
   Optical burst switching network  10  can achieve increased bandwidth efficiency through the additional flexibility afforded by the TDM channels. Although this exemplary embodiment described above includes an optical MAN having ingress, core and egress switching nodes to couple multiple LANs to an optical WAN backbone, in other embodiments the networks do not have to be LANs, optical MANs or WAN backbones. That is, optical MAN  11  need not service a “metropolitan area”. Rather, optical burst switching network  10  may include a number of relatively small networks that are coupled to a relatively larger network that in turn is coupled to a backbone network. 
     FIG. 3  illustrates a module  17  for use as a core switching node in optical burst switching network  10  ( FIG. 1 ), according to one embodiment of the present invention. In this embodiment, module  17  includes a set of optical wavelength division demultiplexers  30   1 – 30   A , where A represents the number of input optical fibers used for propagating payloads, labels, and other network resources to the module. For example, in this embodiment, each input fiber could carry a set of C wavelengths (i.e., WDM wavelengths), although in other embodiments the input optical fibers may carry differing numbers of wavelengths. Module  17  would also include a set of N×N optical core switches  32   1 – 32   B , where N is the number of input/output ports of each optical core switch. Thus, in this embodiment, the maximum number of wavelengths at each optical core switch is A·C, where N≧A·C. For embodiments in which N is greater than A·C, the extra input/output ports can be used to loop back an optical signal for buffering. 
   Further, although optical core switches  32   1 – 32   B  are shown as separate units, they can be implemented as a B×B optical core switch using any suitable switch architecture. Module  17  also includes a set of optical wavelength division multiplexers  34   1 – 34   A , a set of optical-to-electrical signal converters  36  (e.g., photo detectors), a control interface unit  37 , and a set of electrical-to-optical signal converters  38  (e.g., lasers). 
   The elements of this embodiment of module  17  are interconnected as follows. Optical demultiplexers  30   1 – 30   A  are connected to a set of A input optical fibers that propagate input optical signals from other switching nodes of optical burst switching network  10  ( FIG. 10 ). The output leads of the optical demultiplexers are connected to the set of B core optical switches  32   1 – 32   B  and to optical signal converter  36 . For example, optical demultiplexer  30   1  has B output leads connected to input leads of the optical core switches  32   1 – 32   B  (i.e., one output lead of optical demultiplexer  30   1 ° to one input lead of each optical core switch) and at least one output lead connected to optical signal converter  36 . 
   The output leads of optical core switches  32   1 – 32   B  are connected to optical multiplexers  34   1 – 34   A . For example, optical core switch  32   1  has A output leads connected to input leads of optical multiplexers  34   1 – 34   A  (i.e., one output lead of optical core switch  32   1  to one input lead of each optical multiplexer). Each optical multiplexer also an input lead connected to an output lead of electrical-to-optical signal converter  38 . Control unit  37  has an input lead or port connected to the output lead or port of optical-to-electrical signal converter  36 . The output leads of control unit  37  are connected to the control leads of optical core switches  32   1 – 32   B  and electrical-to-optical signal converter  38 . As described below in conjunction with the flow diagram of  FIG. 5 , module  17  is used to receive and transmit optical bursts. In one embodiment, the labels and payloads of the optical bursts have transmission formats as shown in  FIGS. 4A and 4B . 
     FIG. 4A  illustrates the format of an optical payload for use in optical burst switching network  10  ( FIG. 1 ), according to one embodiment of the present invention. In this embodiment, each optical payload has a start guard band  40 , an IP payload data segment  41 , an IP header segment  42 , a payload sync segment  43  (typically a small number of bits), and an end guard band  44  as shown in  FIG. 4A . IP payload data segment  41  includes the data segments of the IP packets used to form the burst. Although  FIG. 4A  shows the payload as contiguous, module  17  transmits payloads in a TDM format. It should be pointed out that in this embodiment, the optical labels have local significance only at the optical MAN, and may loose their significance at the optical WAN. 
     FIG. 4B  illustrates the format of an optical label for use in optical burst switching network  10  ( FIG. 1 ), according to one embodiment of the present invention. In this embodiment, each optical label has a start guard band  46 , an IP label data segment  47 , a label sync segment  48  (typically a small number of bits), and an end guard band  48  as shown in  FIG. 4B . Label data segment  47  contains the header information of the IP packets used to form the optical burst. Although  FIG. 4B  shows the payload as contiguous, in this embodiment module  17  transmits labels in a TDM format. 
     FIG. 5  illustrates the operational flow of module  17  ( FIG. 3 ), according to one embodiment of the present invention. Referring to  FIGS. 3 and 5 , module  17  operates as follows. 
   Module  17  receives an optical signal with TDM control and data signals. In this embodiment, module  17  receives a control signal (i.e., label signal in this embodiment) and a data signal (i.e., payload signal in this embodiment) at one or two of the optical demultiplexers. For example, the label signal may be modulated on a first wavelength of an optical signal received by optical demultiplexer  30   A , while the payload signal is modulated on a second wavelength of the optical signal received by optical demultiplexer  30   A . In some embodiments, the label signal may be received by a first optical demultiplexer while the payload signal is received by a second optical demultiplexer. A block  51  represents this operation. 
   Module  17  converts the optical control signal into an electrical signal. In this embodiment, the control signal is the label signal, which is separated from the received optical signal by the optical demultiplexer and sent to optical-to-electrical signal converter  36 . Optical-to-electrical signal converter  36  converts the optical label signal into an electrical signal. For example, in one embodiment each portion of the TDM label signal is converted to an electrical signal and stored by optical-to-electrical signal converter  36 . The stored portions are then reassembled to form the label, which is then received by control unit  37 . In this embodiment, control unit  37  stores and processes the labels. A block  53  represents this operation. 
   Module  17  then routes the optical data signals (i.e., payload signals in this embodiment) to one of optical multiplexers  34   1 – 34   A , based on routing information contained in the label. In this embodiment, control unit  37  processes the label to extract the routing information and sends appropriate control signals to the set of B optical core switches  32   1 – 32   B  to re-configure each of the core switches to switch the corresponding payload signals. A block  55  represents this operation. 
   Module  17  then converts the processed electrical control signal (i.e. label signal in this embodiment) to an optical signal. In this embodiment, control unit  37  provides time slots alignment so that the reconverted or new label signal is generated in the desired wavelength and TDM time slot. The new label may be modulated on a wavelength and/or time slot that are different form the wavelength and time slot of the label signal received in block  51 . A block  57  represents this operation. 
   Module  17  then sends the optical control signal (i.e., label signal in this embodiment) to the next switching node in the route. In this embodiment, electrical-to-optical signal generator  38  sends the new label signal to appropriate optical multiplexer of optical multiplexers  34   1 – 34   A  to achieve the route. A block  59  represents this operation. 
     FIG. 6  illustrates time slot or TDM channel provisioning, according to one embodiment of the present invention. In this example, a label signal is propagated on a control wavelength λ C1  while the corresponding payload signal is propagated on a data wavelength λ D1  via an output optical fiber(s) selected according to the routing information contained in the label signal. In some embodiments, the label signal is transmitted before the payload signal with sufficient lead time to allow all the nodes in the route to process the label signal before it receives the payload signal. In this way, the modules can configure their optical core switches to transport the payload signal with minimal delay. As shown in  FIG. 6 , in this example the label signal is TDM transmitted in E portions on control wavelength λ C1 . Although not shown, other label signals can be TDM transmitted in different time slots of wavelength λ C1 . The payload signal in this example is TDM transmitted in F portions on data wavelength λ C1 . 
   When received by a module (e.g., module  17  of  FIG. 3 ), the label signal undergoes OEO conversion so that the label signal can be processed to extract control information (e.g., routing information). The processed label signal is then transmitted out of the module via an output optical fiber(s) selected by the routing information extracted from the received label signal. In this embodiment, the label signal can be transmitted on a different control wavelength (e.g., wavelength λ C2 ) as shown in the  FIG. 6  example. In other instances, the module can transmit the new label signal on the same control wavelength that the module received the label signal. 
   The payload signal, when received by the module, is not OEO converted. Rather, the optical core switch module switches the payload signal in the appropriate TDM channel, and route the payload signal to the next switching node based on the new routing information contained in the label. The TDM channel is on the same data wavelength (wavelength λ D2 ) as shown in the  FIG. 6  example, but the wavelength is propagated by the optical fiber selected by the optical core switches of the module. In some embodiments, the optical core switch module may change the available time slot using fiber delay lines. 
     FIG. 7  illustrates multi-wavelength time slot or TDM channel provisioning, according to one embodiment of the present invention. This embodiment, the label signal is TDM propagated on control wavelengths λ C1  and λ C2 . As shown in  FIG. 7 , when received by the module, some TDM portions of the label signal are propagated in time slots on wavelength λ C1  while others are propagated in time slots on wavelength λ C2 . After OEO conversion, the new label signal can be TDM transmitted on different wavelengths and/or time slots. Similarly, the TDM portions of the payload signal are distributed over multiple wavelengths. In this example, the TDM portions of the payload signal are optically switched to the selected output optical fibers on the same wavelengths and time slots as received. However, in other embodiments, the TDM portions of the payload signal can be transmitted in different timeslots. 
     FIG. 8  illustrates module  17  that implements a core switching node of optical burst switching network  10  ( FIG. 1 ) that supports generalized multi-protocol label switching (GMPLS), according to one embodiment of the present invention. This embodiment is similar to the embodiment of  FIG. 3 , except that control unit  37  is contained in a control interface unit  81  that also contains the set of optical-to-electrical signal converters  36  and the set of electrical-to-optical signal generators  38 . In addition, control unit  37  is implemented with a control microprocessor  82 , a network processor  83 , memory  84  and glue logic  85 . This embodiment of module  17  also includes an optical buffer  87  implemented with precision fiber delay lines. In this embodiment, optical core switches  32   1 – 32   B  are implemented using the fast polysilicon trench waveguide technology disclosed in two co-pending and commonly assigned U.S. Patent Applications both entitled “Method and Apparatus For Steering An Optical Beam In A Semiconductor Substrate”, Ser. No. 09/811,171 filed Mar. 16, 2001 by Ansheng Liu et al., and Ser. No. 09/819,160 filed Mar. 27, 2001 by Ansheng Liu et al. In other embodiments, different types of optical core switch technology can be used. 
   This embodiment of module  17  operates in substantially the same way as described above in conjunction with  FIGS. 3 and 5 . More particularly to this embodiment, control processor  82  can receive GMPLS information from a network master controller  88  (shown in dashed lines) that is external to the module. In such an embodiment, the network master controller can be a separate hardware processing unit, or a software module residing in a module external to module  17 . In this embodiment, network master  88  is configured to provide control using known GMPLS protocol. In this way, network master controller  88  can maintain the list of available TDM channels and determine an efficient route to transport an optical burst. In another embodiment, the network master controller can reside as a software module in network processor  83 . 
   Network processor  83  can perform label swapping, TDM control, burst assembly/disassembly, and other necessary functions. Network processor  83  can provide timing and control signals to glue logic  85  to control the timing and switch configuration of the optical core switches to process the routing information extracted from received label signals. Network processor  83  can also control the optical core switches to route signals to optical buffer  87  when a desired TDM channel is not available (e.g., due to contention). With the networking protocol used in optical burst switching network  10  ( FIG. 1 ), the size of optical buffer  87  (e.g., the length of the optical delay lines) can be significantly smaller than what would be required to implement for a conventional optical burst or packet switching network. 
   This embodiment of module  17  can be modified to implement egress switching nodes by adding circuitry for optical-to-electrical conversion of payload signals and memory for electrically storing the converted payload data. In addition, an electronic output interface would be added to this module  17  to output IP packets to the WAN. 
   Similarly, this embodiment of module  17  can be modified to implement an ingress module by adding an electronic input interface to receive and store IP packets from the access networks and circuitry for electrical-to-optical conversion of the stored packet header and data segments that are combined to form an optical burst. 
   Embodiments of method and apparatus for implementing an optical burst switching network are described herein. In the above description, numerous specific details are set forth to provide a thorough understanding of embodiments of the invention. One skilled in the relevant art will recognize, however, that the invention can be practiced without one or more of the specific details, or with other methods, components, materials, etc. In other instances, well-known structures, materials, or operations are not shown or described in detail to avoid obscuring aspects of the invention. 
   Reference throughout this specification to “one embodiment” or “an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. Thus, the appearances of the phrases “in one embodiment” or “in an embodiment” in various places throughout this specification are not necessarily all referring to the same embodiment. Furthermore, the particular features, structures, or characteristics may be combined in any suitable optical manner in one or more embodiments. 
   In addition, embodiments of the present description may be implemented not only within a semiconductor chip but also within machine-readable media. For example, the designs described above may be stored upon and/or embedded within machine readable media associated with a design tool used for designing semiconductor devices. Examples include a netlist formatted in the VHSIC Hardware Description Language (VHDL) language, Verilog language or SPICE language. Some netlist examples include: a behavioral level netlist, a register transfer level (RTL) netlist, a gate level netlist and a transistor level netlist. Machine-readable media also include media having layout information such as a GDS-II file. Furthermore, netlist files or other machine-readable media for semiconductor chip design may be used in a simulation environment to perform the methods of the teachings described above. 
   Thus, embodiments of this invention may be used as or to support software program executed upon some form of processing core (such as the CPU of a computer) or otherwise implemented or realized upon or within a machine-readable medium. A machine-readable medium includes any mechanism for storing or transmitting information in a form readable by a machine (e.g., a computer). For example, a machine-readable medium can include such as a read only memory (ROM); a random access memory (RAM); a magnetic disk storage media; an optical storage media; and a flash memory device, etc. In addition, a machine-readable medium can include propagated signals such as electrical, optical, acoustical or other form of propagated signals (e.g., carrier waves, infrared signals, digital signals, etc.). 
   In the foregoing specification, the invention has been described with reference to specific exemplary embodiments thereof. It will, however, be evident that various modifications and changes may be made thereto without departing from the broader spirit and scope of the invention as set forth in the appended claims. The specification and drawings are, accordingly, to be regarded in an illustrative rather than a restrictive sense.