Electrical system level (ESL) battery discharge simulation

Electronic system level (ESL) design and verification of the present disclosure is utilized to provide an electronic simulation of various loads on one or more batteries of an electronic device resulting from the electronic device performing one or more functional behaviors. Before this electronic simulation occurs, the electronic device is modeled using the high-level software language or the high-level software format. For example, a battery discharge model, a regulator efficiency model, a power delivery network (PDN) model, or a component power model are used to model behaviors of the one or more batteries, regulator circuitry, power delivery network (PDN) circuitry, and other electronic circuits, respectively, of the electronic device. After completion of the modeling of the electronic device, the ESL design and verification of the present disclosure utilizes a simulation algorithm, in conjunction with the high-level software model of the electronic device to simulate the discharge of electrical energy of the one or more batteries.

BACKGROUND

Advances in technology and engineering have allowed designers and manufacturers to offer more portable electronic devices to consumers. These portable electronic devices range from mobile computing devices, also referred to as handheld computers, to mobile communication devices. At the heart of the portable electronic devices lies one or more batteries to provide necessary power for operation. The one or more batteries store energy in a chemical form and convert the stored chemical energy into electrical energy via an electrochemical reaction. Generally, each of the one or more batteries include two electrodes separated by a distance. This distance between the two electrodes conventionally includes an electrolyte that conducts electricity. During operation of the portable electronic devices, a first chemical reaction within a first electrode, called the anode, generates electrons from the first electrode and a second chemical reaction within a second electrode, called the cathode, receives these electrons. This flow of electrons from the anode to the cathode discharges electrical energy from the one or more batteries for operation of the portable electronic devices. The one or more batteries continue to provide this electrical energy until the anode and/or the cathode can no longer perform their respective chemical reactions. Conventionally, the designers and the manufacturers of the portable electronic devices often use rechargeable batteries for the one or more batteries of the portable electronic devices. The chemical energy of the one or more batteries can be restored by applying electrical energy from an outside source to the one or more batteries. This outside source supplies electrons to the anode and removes electrons from the cathode which forces their respective chemical reactions into reverse to replenish the stored chemical energy within the one or more batteries.

DETAILED DESCRIPTION

Conventionally, designers and the manufacturers of portable electronic devices roughly approximate time for discharging of one or more batteries of the portable electronic devices. The discharging describes processes within the one or more batteries which diminish the chemical energy stored in the one or more batteries. This discharging can be considered completed when the first chemical reaction and/or the second chemical reaction no longer produce sufficient power for the portable electronic devices to perform one or more functional behaviors. One conventional formula to roughly approximate the time needed to discharge the one or more batteries of the portable electronic devices is:

BLApprox=0.7*BatteryCapacityDeviceConsumption,(1)
where BLApproxrepresents an approximation of in time, usually expressed in hours (h), to discharge the one or more batteries, BatteryCapacity, usually expressed in milliamps hour (mAh) or in milliwatts hour (mWh), represents an energy storage capacity of the one or more batteries as estimated by a manufacturer of the one or more, and DeviceConsumption, milliwatts (mW) or milliwatts hour (mWh), represents a total current consumption of the portable electronic devices. The factor of 0.7 represents a commonly used industry factor to account for external factors, such as temperature, which can affect the first chemical reaction and/or the second chemical reaction.

Overview

Electronic design automation (EDA), also referred to as electronic computer-aided design (ECAD), represents as a category of software tools available to designers and manufacturers for designing portable electronic devices, such as mobile computing devices or mobile communication devices to provide some examples. One type of EDA is referred to as electronic system level (ESL) design and verification. Generally, the ESL design and verification provides a mechanism for system design, verification, and debugging through a software implementation of the portable electronic devices. In this disclosure, the ESL design and verification is utilized to provide a high-level software model of behavior of one or more batteries of an electronic device using a high-level software language, such as a graphical design tool, for example C, System C, C++, LabVIEW, and/or MATLAB, a general purpose system design language, such as like SysML, SMDL and/or SSDL, or any other suitable high-level software language or the high-level software format that will be apparent to those skilled in the relevant art(s) without departing from the spirit and scope of the present disclosure, or a high-level software format, such as Common Power Format (CPF), Unified Power Formant (UPF), or any other suitable high-level software format that will be apparent to those skilled in the relevant art(s) without departing from the spirit and scope of the present disclosure.

The ESL design and verification of the present disclosure is utilized to provide an electronic simulation of various loads on the one or more batteries resulting from the electronic device performing one or more functional behaviors. These loads cause the one or more batteries to discharge electrical energy. This discharge of electrical energy can be a deep discharge in which the one or more batteries are fully discharged or a partial discharge in which the one or more batteries are partially discharged. Before this electronic simulation occurs, the electronic device is modeled using the high-level software language or the high-level software format. For example, a battery discharge model, a regulator efficiency model, a power delivery network (PDN) model, and/or a component power model are used to model behaviors of the one or more batteries, regulator circuitry, power delivery network (PDN) circuitry, and other electronic circuits, respectively, of the electronic device. In this example, these models are used to simulate the discharge of electrical energy of the one or more batteries in relation to a battery discharge rate, regulator efficiency, and/or one or more usage scenarios for the electronic device.

After completion of the modeling of the electronic device, the ESL design and verification of the present disclosure utilizes a simulation algorithm, such as SPICE, Verilog, or VHDL to provide some examples, in conjunction with the high-level software model of the electronic device to simulate the discharge of electrical energy of the one or more batteries. In an exemplary embodiment, this simulation can provide an alternating current (AC) analysis, such as a linear small-signal frequency domain analysis, and/or a direct current (DC) analysis, such as a nonlinear quiescent point calculation or a sequence of nonlinear operating points calculated while sweeping an input voltage or current, or a parameter, of the high-level software model of the electronic device to simulate the discharge of electrical energy of the one or more batteries.

An Exemplary Electronic Device

FIG. 1illustrates a block diagram of an electronic device according to an exemplary embodiment of the present disclosure. An electronic device100represents a specific arrangement of one or more electronic circuits, such as analog circuits and/or digital circuits to provide some examples, which are specifically designed and manufactured to perform one or more functional behaviors. The one or more electronic circuits can include one or more interconnected electronic components that are manufactured and/or designed for placement on a printed circuit board (PCB), within an integrated circuit (IC) package and/or on a IC semiconductor substrate. As illustrated inFIG. 1, the electronic device100includes a power delivery network (PDN)102to provide power for operation of one or more other electronic circuits104.

The PDN102provides operating voltages150.1through150.(c+n) to the one or more other electronic circuits104. As illustrated inFIG. 1, the PDN102includes one or more batteries106and regulators108.1through108.(c+n). In the exemplary embodiment as illustrated inFIG. 1, the one or more batteries106and the regulators108.1through108.(c+n) can be implemented as a hierarchical power tree. The one or more batteries store energy106in a chemical form and convert the stored chemical energy into electrical energy via an electrochemical reaction. Generally, each of the one or more batteries106include two electrodes separated by a distance. This distance between the two electrodes includes an electrolyte that conducts electricity. During operation of the electronic device100, a first chemical reaction within a first electrode, called the anode, generates electrons from the first electrode and a second chemical reaction within a second electrode, called the cathode, receives these electrons. This flow of electrons from the anode to the cathode discharges electrical energy from the one or more batteries106for operation of the portable electronic device100. As additionally illustrated inFIG. 1, this discharge of electrical energy by the one or more batteries106provides a primary battery voltage152for operation of the regulators108.1through108.(c+n).

The one or more batteries106continue to provide this electrical energy until the anode and/or the cathode can no longer perform their respective chemical reactions. In an exemplary embodiment, the one or more batteries106represent one or more rechargeable batteries, such as one or more aluminum-ion batteries, flow batteries, lead-acid batteries, lithium air batteries, lithium-ion batteries, magnesium-ion batteries, molten salt batteries, nickel-cadmium batteries, nickel-cadmium batteries, nickel hydrogen batteries, nickel-iron batteries, nickel metal hydride batteries, nickel-zinc batteries, organic radical batteries, polymer-based batteries, polysulfide bromide batteries, potassium-ion batteries, rechargeable alkaline batteries, rechargeable fuel batteries, silicon air batteries, silver-zinc batteries, silver calcium batteries, sodium-ion batteries, sodium-sulfur batteries, sugar batteries, zinc ion batteries, and/or other suitable rechargeable batteries that will be apparent to those skilled in the relevant art(s) without departing from the spirit and scope of the present disclosure. The chemical energy of the one or more rechargeable batteries can be restored by applying electrical energy from an outside source to the one or more batteries. This outside source supplies electrons to the anode and removes electrons from the cathode which forces their respective chemical reactions into reverse to replenish the stored chemical energy within the one or more batteries106.

The regulators108.1through108.(c+n) provide the operating voltages150.1through150.(c+n) to the one or more other electronic circuits104based upon the primary battery voltage152. In an exemplary embodiment, each of the regulators108.1through108.(c+n) can be characterized in accordance with a corresponding regulator efficiency (η) from among regulator efficiencies η1through η(c+n). As illustrated inFIG. 1, the regulators108.1through108.(c+n) include a first group of regulators108.1through108.aand/or a second group of regulators108.bthrough108.(c+n). The first group of regulators108.1through108.aregulates the primary battery voltage152to provide the operating voltages150.1through150.a. In contrast, the second group of regulators108.bthrough108.(c+n) provides the operating voltages150.bthrough150.(c+n) based upon the primary battery voltage152. For example, as additionally illustrated inFIG. 1, the regulator108.bregulates the primary battery voltage152to provide a secondary regulated voltage154, which is regulated by the second group of regulators108.cthrough108.(c+n) to provide the operating voltages150.cthrough150.(c+n). It should be noted the configuration and arrangement of the regulators108.1through108.(c+n) is for exemplary purposes only. Those skilled in the relevant art(s) will recognize that other configurations and arrangements are possible for the regulators108.1through108.(c+n) without departing from the spirit and scope of the present disclosure. For example, these other configurations and arrangements can include only the first group of regulators108.1through108.a, only the second group of regulators108.bthrough108.(c+n), or one or more of the first group of regulators108.1through108.aand/or of the second group of regulators108.bthrough108.(c+n) being configured and arranged in a substantially similar manner as the regulator108.bto provide some examples. The regulators108.1through108.(c+n) can be implemented as one or more linear regulators, switching regulators, one or more silicon controlled rectifiers (SCRs), and/or other suitable regulators that will be apparent to those skilled in the relevant art(s) without departing from the spirit and scope of the present disclosure. In some situations, the regulators108.1through108.(c+n) can be implemented on an integrated circuit (IC) semiconductor substrate, within an IC package and/or on a IC semiconductor substrate. In other situations, the regulators108.1through108.(c+n) can be implemented across multiple IC semiconductor substrates, within multiple IC packages and/or on multiple IC semiconductor substrates.

The one or more other electronic circuits104receive the operating voltages150.1through150.(c+n) from the PDN102. Generally, the operating voltages150.1through150.(c+n) provide necessary power for operation of the one or more other electronic circuits104to perform the one or more functional behaviors of the electronic device100. The one or more other electronic circuits104can include one or more analog circuits, digital circuits, and/or other suitable electronic circuits that will be apparent to those skilled in the relevant art(s) without departing from the spirit and scope of the present disclosure. In an exemplary embodiment, the one or more analog circuits, the one or more digital circuits, and/or the other suitable electronic circuits can represent one or more processors, one or more memories, one or more application-specific integrated circuits (ASICs), and/or one or more physical layer (PHY) devices to provide some examples. In another exemplary embodiment, the electronic device100can represent a host device. In this exemplary embodiment, the one or more other electronic circuits104can include analog circuits, digital circuits, and/or other suitable electronic circuits that will be apparent to those skilled in the relevant art(s) without departing from the spirit and scope of the present disclosure, such as one or more memoires and/or one or more peripheral devices to provide some example, which are capable to being coupled to the electronic device100and are characterized as receiving operational power from the one or more batteries106.

Modeling of the Electronic Device

FIG. 2illustrates exemplary high-level software models for the electronic device according to an exemplary embodiment of the present disclosure. As discussed above, the ESL design and verification provides a mechanism for system design, verification, and debugging through a software implementation of the electronic device100. Although the ESL design and verification is available to design, to verify, and to debug a wide-variety of aspects of the electronic device100, the present disclosure utilizes the ESL design and verification to provide a high-level software model of the one or more batteries106using the high-level software language or the high-level software format. Those skilled in the relevant art(s) will recognize that other ESL designs and verifications are available to design, to verify, and to debug other aspects of the electronic device100and these other ESL designs and verifications can be used in conjunction with the ESL design and verification disclosed herein to design, to verify, and to debug the electronic device100without departing from the spirit and scope of the present disclosure. As illustrated inFIG. 2, a battery discharge model202for the one or more batteries106, a regulator efficiency model204for the regulators108.1through108.(c+n), and a PDN model206for the PDN102can be used to model behaviors of the one or more batteries106, the PDN102, and the regulators108.1through108.(c+n), and the PDN102, respectively. As to be discussed in further detail below, the battery discharge model202, the regulator efficiency model204, and the PDN model206can be used in connection with a component power model for the one or more other electronic circuits104to model of behavior of the one or more batteries106. The component power model for the one or more other electronic circuits104is further described in U.S. patent application Ser. No. 15/260,143, filed on Sep. 8, 2016, which is incorporated herein by reference in its entirety.

Generally, the battery discharge model202, the regulator efficiency model204, and/or the PDN model206represent one or more functional characterizations of various parameters and/or attributes of the one or more batteries106, the regulators108.1through108.(c+n), and/or the PDN102, respectively. The one or more functional characterizations of the various parameters and/or attributes are utilized to form a text netlist describing the electronic device100. As illustrated inFIG. 2, the battery discharge model202represents a functional characterizations of parameters and/or attributes208for the one or more batteries106. These parameters and/or attributes208can include load (mA), battery voltage (V), temperature (C), discharge cycle, switching frequency and/or any other suitable parameter and/or attribute for the one or more batteries106that will be apparent to those skilled in the relevant art(s) without departing from the spirit and scope of the present disclosure. The battery discharge model202can be modeled as a battery functional expression210, such as BATTERY_NAME (LOAD, BATTERY VOLTAGE, TEMPERATURE, DISCHARGE CYCLE, SWITCHING FREQUENCY) as illustrated inFIG. 2to provide an example.

As additionally illustrated inFIG. 2, the regulator efficiency model204represents a functional characterizations of parameters and/or attributes212for the regulators108.1through108.(c+n). These parameters and/or attributes212can include load (mA), battery voltage (V), temperature (C), mode (PFM/PWM), and/or any other suitable parameter and/or attribute of regulators108.1through108.(c+n) that will be apparent to those skilled in the relevant art(s) without departing from the spirit and scope of the present disclosure. The regulator efficiency model204can be modeled in terms of one or more regulator efficiency functional expressions214, such as REGULATOR_NAME (LOAD, VIN, VOUT, TEMPERATURE, MODE) as illustrated inFIG. 2to provide an example. In some situations, each of the one or more regulator efficiency functional expressions214corresponds to a functional characterization of one of the regulators108.1through108.(c+n). In these situations, the regulator efficiency model204includes (c+n) regulator efficiency functional expressions214, each of the (c+n) regulator efficiency functional expressions214corresponding to one of the regulators108.1through108.(c+n).

The PDN model206is utilized to generate a text netlist describing the electronic device100. As further illustrated inFIG. 2, the PDN model206represents functional characterizations of parameters and/or attributes216for the PDN102. These parameters and/or attributes216can include the battery functional expression210, denoted as BATTERY_NAME, the one or more regulator efficiency functional expressions214, denoted as REGULATOR_NAME, reference designators of one or more connections for the one or more batteries106and the regulators108.1through108.(c+n), and/or any other suitable parameter and/or attribute for the PDN102that will be apparent to those skilled in the relevant art(s) without departing from the spirit and scope of the present disclosure. The parameters and/or attributes216can include reference designators of power nets, reference designators of power ports, reference designators of control ports for the one or more batteries106and the regulators108.1through108.(c+n), to provide some examples. The PDN model206can be modeled in terms of one or more PDN functional expressions218and220, such as REGULATOR_CONNECTION−INPUT {INPUT_NAME}−OUTPUT {OUTPUT_NAME}−CONTROL {CONTROL_NAME}−REGULATOR_NAME or BATTERY_CONNECTION−INPUT{INPUT_NAME}−OUTPUT{OUTPUT_NAME}-BATTERY_NAME as illustrated inFIG. 2to provide some examples. The PDN functional expression218, namely REGULATOR_CONNECTION, assigns various reference designators to various input/output (IO) circuit nodes for one of the regulators108.1through108.(c+n). Similarly, the PDN functional expression220, namely BATTERY_CONNECTION, assigns various reference designators to various IO circuit nodes for the one or more batteries106.

Simulating the Model of the Electronic Device

After completion of the modeling of the electronic device100, the ESL design and verification of the present disclosure utilizes the simulation algorithm in conjunction with the battery discharge model202, the regulator efficiency model204, the PDN model206, and the component power model for the one or more other electronic circuits104as described in U.S. patent application Ser. No. 15/260,143, filed on Sep. 8, 2016, which is incorporated herein by reference in its entirety, to simulate the discharge of electrical energy of the one or more batteries106.

FIG. 3illustrates a flowchart of an exemplary operational control flow incorporating a simulation algorithm of the electronic device according to an exemplary embodiment of the present disclosure. The disclosure is not limited to this operational description. Rather, it will be apparent to ordinary persons skilled in the relevant art(s) that other operational control flows are within the scope and spirit of the present disclosure. The following discussion describes an exemplary operational control flow300in designing and manufacturing the electronic device100. In an exemplary embodiment, the exemplary operational control flow300, as well as other exemplary operational control flows to be discussed herein, can be implemented in hardware, firmware, software, or any combination thereof. As another example, the exemplary operational control flow300, as well as other exemplary operational control flows to be discussed herein, can be implemented as instructions stored on a machine-readable medium, which may be read and executed by one or more processors. A machine-readable medium may include any mechanism for storing or transmitting information in a form readable by a machine (e.g., a computing device). A machine-readable medium can include read only memory (ROM); random access memory (RAM); magnetic disk storage media; optical storage media; flash memory devices; electrical, optical, acoustical or other forms of propagated signals (e.g., carrier waves, infrared signals, digital signals, etc.), and others. Further, firmware, software, routines, and/or instructions may be described herein as performing certain actions. However, it should be appreciated that such descriptions are merely for convenience and that such actions in fact result from computing devices, processors, controllers, or other devices that will be apparent to those skilled in the relevant art(s) executing the firmware, software, routines, and/or instructions.

At step302, the operational control flow300develops an electronic architectural design for the electronic device100. In an exemplary embodiment, the electronic architectural design includes the PDN102, having the one or more batteries106and the regulators108.1through108.(c+n), and/or the one or more other electronic circuits104of the electronic device100as described inFIG. 1. The electronic architectural design can be developed in accordance with an electronic design specification. The electronic design specification can outline one or more requirements for one or more functional behaviors for the electronic architectural design. In some situations, one or more of these functional behavioral requirements can be outlined terms of operational usage time, for example, a minimal operational usage time, before the one or more batteries106are discharged. For example, the electronic design specification can outline the electronic architectural design is to provide two hours of talktime or ten hours of audio playback before the one or more batteries106are discharged. In an exemplary embodiment, the electronic architectural design represents an ESL synthesis, also referred to as a high-level synthesis (HLS), of the electronic architectural design using the high-level software language or the high-level software format at a register-transfer level (RTL). Generally, the high-level software language or the high-level software format interprets an algorithmic description of the electronic device100to create a software implementation of analog and/or digital circuitry as the electronic architectural design. For example, the high-level software language or the high-level software format creates a software implementation of analog and/or digital circuitry for the PDN102and/or the one or more other electronic circuits104of the electronic device100as described inFIG. 1. The high-level software language or the high-level software format can include a graphical design tool, for example C, C++, LabVIEW, and/or MATLAB, a general purpose system design language, such as a Systems Modeling Language (SysML), a Semantic Model Definition Language (SMDL) and/or a schema definition language (SSDL), or any other suitable high-level software language or the high-level software format that will be apparent to those skilled in the relevant art(s) without departing from the spirit and scope of the present disclosure.

At step304, the operational control flow300simulates the electronic architectural design from step302to determine whether one or more functional behaviors of the electronic architectural design from step302, such as batterylife to provide an example, satisfies the electronic design specification from step302. Before this electronic simulation occurs, the electronic architectural design from step302is modeled using the high-level software language or the high-level software format. For example, the operational control flow300generates the battery discharge model202, the regulator efficiency model204, and/or the PDN model206, and/or the component power model as described inFIG. 2using the high-level software language or the high-level software format. After completion of the modeling of the electronic architectural design from step302, the operational control flow300utilizes a simulation algorithm, such as SPICE, Verilog, or VHDL to provide some examples, in conjunction with the high-level software model of the electronic architectural design to simulate the discharge of electrical energy of the one or more batteries106while the electronic architectural design from step302is performing the one or more functional behaviors. In some situations, the simulation algorithm utilizes a text netlist describing the electronic architectural design from step302and translates this text netlist into one or more equations, such as nonlinear differential algebraic equations to provide an example, to be solved. In these situations, the simulation algorithm can provide an alternating current (AC) analysis, such as a linear small-signal frequency domain analysis, and/or a direct current (DC) analysis, such as a nonlinear quiescent point calculation or a sequence of nonlinear operating points calculated while sweeping an input voltage or current or a parameter, of the electronic architectural design from step302. In an exemplary embodiment, the AC analysis and/or the DC analysis can be used to determine the discharge of electrical energy of the one or more batteries106. The simulation of step304is further described inFIG. 4. In another exemplary embodiment, the simulation algorithm can compare different branches of the hierarchical power tree to determine which of these different branches can be characterized as having a longest discharge time.

At step306, the operational control flow300verifies whether the one or more simulated functional behaviors of the electronic architectural design from step304satisfies the electronic design specification from step302. For example, the operational control flow300verifies the discharge of electrical energy of the one or more batteries106while the electronic architectural design from step302is performing the one or more functional behaviors, such as talktime or audio playback to provide some examples, satisfies requirements for the discharge of electrical energy as outlined in the electronic design specification from step302, such as two hours of talktime or ten hours of audio playback to provide some examples. The operational control flow300proceeds to step308when the simulated one or more functional behaviors of the electronic architectural design from step304satisfies the electronic design specification from step302. Otherwise, the simulated one or more functional behaviors of the electronic architectural design from step304do not satisfy the electronic design specification from step302. In this situation, the operational control flow300reverts to step302to alter the electronic architectural design from step302and/or the electronic design specification from step302.

At step308, the operational control flow300fabricates the electronic architectural design from step302onto an integrated circuit (IC) semiconductor substrate when the simulated one or more functional behaviors of the electronic architectural design from step304satisfy the electronic design specification from step302to form the electronic device100. The operational control flow300creates a representation of the electronic architectural design from step304in terms of planar geometric shapes which correspond to diffusion layers, polysilicon layers, metal layers, and/or interconnections between layers. Thereafter, the operational control flow300translates these planar geometric shapes into one or more photomasks for fabrication onto the IC semiconductor substrate. In some situations, the electronic architectural design from step302is converted into an industry standard file format before this translation can occur. For example, the electronic architectural design from step302can be converted from RTL format to a version of a Graphic Database System (GDS) format. Once the electronic architectural design of step302is fabricated onto the IC semiconductor substrate using the one or more photomasks to form the electronic device100, the electronic device100can be tested in a laboratory environment to verify one or more functional behaviors of electronic device100satisfies the electronic design specification from step302.

Exemplary Simulation Algorithm

FIG. 4illustrates a flowchart of an exemplary simulation algorithm according to an exemplary embodiment of the present disclosure. The disclosure is not limited to this operational description. Rather, it will be apparent to ordinary persons skilled in the relevant art(s) that other operational control flows are within the scope and spirit of the present disclosure. The following discussion describes an exemplary operational control flow400in simulating the discharge of the electrical energy of the one or more batteries106of the electronic architectural design from step302. The operational control flow400can represent an exemplary embodiment of step304as described above inFIG. 3.

At step402, the operational control flow400determines one or more functional behaviors for the electronic architectural design to be simulated. For example, the one or more functional behaviors can include the electronic architectural design providing two hours of talktime or ten hours of audio playback. In an exemplary embodiment, the operational control flow400can additionally assign various parameters and/or attributes to the one or more functional behaviors. In this exemplary embodiment, these various parameters and/or attributes can relate to the one or more batteries106, such as a starting voltage, VBAT(START), for the one or more batteries106which corresponds to a voltage present in the one or more batteries106before simulating the one or more functional behaviors, a stopping voltage, VBAT(STOP), for the one or more batteries106which corresponds to a voltage present in the one or more batteries106after simulating the one or more functional behaviors, and/or a voltage tolerance to accommodate for various environmental factors, such as temperature and humidity to provide some examples.

At step404, the operational control flow400establishes a simulation environment for simulating the one or more functional behaviors from step402. In an exemplary embodiment, the simulation environment includes one or more high-level software models of the electronic architectural design, such as the battery discharge model202, the regulator efficiency model204, the PDN model206, and/or the component power model as described inFIG. 2above.

At step406, the operational control flow400calculates a load current needed to be supplied by the one or more batteries106to perform the one or more functional behaviors from step402. In some situations, the operational control flow400can calculate the load current from the simulation environment of step402. For example, the operational control flow400can calculate the load current according to:

LOAD⁡(t)=∑i=1(c+n)⁢POWERI⁡(t)η⁡(POWERI⁡(t))VBAT⁡(t),(2)
where LOAD(t) represents the load current, expressed in mA, needed to be supplied by the one or more batteries106during a time t, POWERi(t) represents the power to be supplied by an ithregulator from among the regulators108.1through108.(c+n) to the other electronic circuits104of the electronic architectural design to perform the one or more functional behaviors, and η represents an efficiency of the ithregulator from among the from among regulator efficiencies η1through η(c+n).

At step408, the operational control flow400calculates the discharge of the one or more batteries106to provide the load current from step406. Generally, each of the one or more batteries106include two electrodes separated by a distance. This distance between the two electrodes conventionally includes an electrolyte that conducts electricity. During operation of the electronic architectural design, the operational control flow400effectively simulates a first chemical reaction within a first electrode, called the anode, which generates electrons from the first electrode and a second chemical reaction within a second electrode, called the cathode, which receives these electrons. This simulation of the flow of electrons from the anode to the cathode simulates the discharge of electrical energy from the one or more batteries. As the one or more batteries106are simulated to provide the load current from step406, the operational control flow400simulates the first chemical reaction and the second chemical reaction diminishing the stored chemical energy within the one or more batteries106. The operational control flow400simulates this diminishing stored chemical energy in step408by calculating the voltage of the one or more batteries106at various instances in time, for example, milliseconds or seconds. In an exemplary embodiment, the various instances in time can be based on power state changes of the one or more other electronic circuits104. In this exemplary embodiment, the one or more other electronic circuits104can change operational states while performing the one or more functional behaviors from step402. These operational states are associated with power state changes in the amount of power needed by the one or more other electronic circuits104to operate under the operational states. For example, the voltage of the one or more batteries106at each instance in time can be calculated by:
VBAT(START+Δt(i))=VBAT(START)−Δt(i)*DR,  (3)
where VBAT(START) represents the starting voltage, VBAT(START), for the one or more batteries106from step402, VBAT(START+Δt(i)) represents the voltage of the one or more batteries106at a time Δt(i) subsequent to a start time START of the simulation, and DR represents a discharge rate of the one or more batteries106. In an exemplary embodiment, the discharge rate of the one or more batteries106represents a measure of a rate at which the one or more batteries106are discharged relative to their maximum capacity usually a function relating to VBAT(START), the load current from step406, and/or temperature in Celsius. In some situations, manufacturers of the one or more batteries106specify the discharge rate of the one or more batteries106in terms of load current and temperature. In these situations, the operational control flow400can store the discharge rate of the one or more batteries106in terms of load current and temperature in a tabular form as a look-up table (LUT) to provide an example.

At step410, the operational control flow400verifies whether the discharge of the one or more batteries106calculated in step408satisfies an electronic design specification, such as the electronic design specification from step302. In an exemplary embodiment, the operational control flow400verifies whether the calculated VBAT(START+Δt(i)) from step408satisfies the electronic design specification, such as the stopping voltage, VBAT(STOP), from step402to provide an example. In this exemplary embodiment, the operational control flow400compares the VBAT(START+Δt(i) from step408with the stopping voltage, VBAT(STOP), for the one or more batteries106from step402. Also in this exemplary embodiment, the operational control flow400determines the one or more batteries106do not satisfy the electronic design specification when the VBAT(START+Δt(i)) from step408is less than the stopping voltage, VBAT(STOP), for the one or more batteries106. In this situation, the operational control flow400reverts to alter the electronic architectural design and/or the electronic design specification. Otherwise, in this exemplary embodiment, the operational control flow400determines the one or more batteries106satisfy the electronic design specification when the VBAT(START+Δt(i)) from step408is greater than or equal to the stopping voltage, VBAT(STOP), for the one or more batteries106from step402. In this situation, the operational control flow400reverts to step402to define other behaviors for other simulations. In another exemplary embodiment, the operational control flow400compares a difference between the VBAT(START+Δt(i)) from step408and the stopping voltage, VBAT(STOP), for the one or more batteries106from step402to the voltage tolerance from step402. In this other exemplary embodiment, the operational control flow400determines the one or more batteries106do not satisfy the electronic design specification when the difference is less than the voltage tolerance from step402. Otherwise, in this exemplary embodiment, the operational control flow400determines the one or more batteries106satisfy the electronic design specification when the difference is greater than or equal to the voltage tolerance from step402.

Exemplary Computer System for Simulating and Modeling the Electronic Device

FIG. 5illustrates a block diagram of an exemplary computer system500for simulating and modeling the exemplary electronic device according to an exemplary embodiment of the present disclosure. Various embodiments are described in terms of this example computer system500. After reading this description, it will become apparent to a person skilled in the relevant art how to implement embodiments using other computer systems and/or computer architectures.

The computer system500includes one or more processors504, also referred to as central processing units, or CPUs, to simulate and/or model the electronic device100and/or the electronic architectural design as described above inFIG. 1throughFIG. 4. The one or more processors504can be connected to a communication infrastructure or bus506. In an exemplary embodiment, one or more of the one or more processors504can be implemented as a graphics processing unit (GPU). The GPU represents a specialized electronic circuit designed to rapidly process mathematically intensive applications on electronic devices. The GPU may have a highly parallel structure that is efficient for parallel processing of large blocks of data, such as mathematically intensive data common to computer graphics applications, images and videos.

The computer system500also includes user input/output device(s)503, such as monitors, keyboards, pointing devices, etc., which communicate with communication infrastructure506through user input/output interface(s)502.

The computer system500also includes a main or primary memory508, such as a random access memory (RAM) to provide an example. The main memory508can include one or more levels of cache. The main memory508has stored therein control logic (i.e., computer software) and/or data, such as the simulation algorithm as described inFIG. 1throughFIG. 4and/or any of the models for the electronic device100and/or the electronic architectural design as described inFIG. 1throughFIG. 4.

The computer system500can also include one or more secondary storage devices or memory510to store the simulation algorithm as described inFIG. 1throughFIG. 4and/or any of the models for the electronic device100and/or the electronic architectural design as described inFIG. 1throughFIG. 4to provide some examples. The one or more secondary storage devices or memory510can include, for example, a hard disk drive512and/or a removable storage device or drive514. The removable storage drive514may be a floppy disk drive, a magnetic tape drive, a compact disk drive, an optical storage device, tape backup device, a flash storage device, and/or any other storage device/drive. The removable storage drive514may interact with a removable storage unit518. The removable storage unit518includes a computer usable or readable storage device having stored thereon computer software (control logic) and/or data. The removable storage unit518may be a floppy disk, magnetic tape, compact disk, DVD, optical storage disk, flash storage device, and/any other computer data storage device. The removable storage drive514reads from and/or writes to removable storage unit518in a well-known manner.

According to an exemplary embodiment, the one or more secondary storage devices or memory510may include other means, instrumentalities or other approaches for allowing computer programs and/or other instructions and/or data to be accessed by computer system500. Such means, instrumentalities or other approaches may include, for example, a removable storage unit522and an interface520. Examples of the removable storage unit522and the interface520may include a program cartridge and cartridge interface (such as that found in video game devices), a removable memory chip (such as an EPROM or PROM) and associated socket, a memory stick and USB port, a memory card and associated memory card slot, and/or any other removable storage unit and associated interface.

The computer system500may further include a communication or network interface524. The communication or network interface524enables the computer system500to communicate and interact with any combination of remote devices, remote networks, remote entities, etc. (individually and collectively referenced by reference number528). For example, the communication or network interface524may allow the computer system500to communicate with the remote devices528over a communications path526, which may be wired and/or wireless, and which may include any combination of LANs, WANs, the Internet, etc. Control logic and/or data may be transmitted to and from the computer system500via communication path526.

In an embodiment, a tangible apparatus or article of manufacture comprising a tangible computer useable or readable medium having control logic (software) stored thereon is also referred to herein as a computer program product or program storage device. This includes, but is not limited to, the computer system500, the main memory508, the secondary memory510, and the removable storage units518and522, as well as tangible articles of manufacture embodying any combination of the foregoing. Such control logic, when executed by one or more data processing devices (such as computer system500), causes such data processing devices to operate as described herein.

CONCLUSION

The foregoing Detailed Description discloses a method for simulating discharge of one or more batteries of an electronic device. The method includes developing, by a computer system, an electronic architectural design to perform one or more functional behaviors of the electronic device in accordance with an electronic design specification, modeling, by the computer system, a power delivery network (PDN) of the electronic architectural design and one or more other electronic circuits of the electronic architectural design that receive power from the PDN, simulating, by the computer system using the modeling, the discharge of the one or more batteries while the electronic architectural design is performing the one or more functional behaviors, and determining, by the computer system, whether the simulated discharge of the one or more batteries satisfies the electronic design specification.

The foregoing Detailed Description also discloses a computer system for simulating discharge of one or more batteries of an electronic device. The computer includes a memory that stores instructions and a processor in communication with the memory. The instructions, when executed by the processor, configure the processor the processor to: develop an electronic architectural design to perform one or more functional behaviors of the electronic device in accordance with an electronic design specification, model a power delivery network (PDN) of the electronic architectural design and one or more other electronic circuits of the electronic architectural design that receive power from the PDN, simulate, using the modeled PDN and the modeled one or more other electronic circuits, the discharge of the one or more batteries while the electronic architectural design is performing the one or more functional behaviors, and determine whether the simulated discharge of the one or more batteries satisfies the electronic design specification.

The foregoing Detailed Description further discloses a non-transitory computer-readable medium having instructions stored thereon that, when executed by a computer system, causes the computer system to perform operations. The operations include developing, by the computer system, an electronic architectural design to perform one or more functional behaviors of the electronic device in accordance with an electronic design specification, modeling, by the computer system, a power delivery network (PDN) of the electronic architectural design and one or more other electronic circuits of the electronic architectural design that receive power from the PDN, simulating, by the computer system using the modeling, the discharge of the one or more batteries while the electronic architectural design is performing the one or more functional behaviors, and determining, by the computer system, whether the simulated discharge of the one or more batteries satisfies the electronic design specification.