Runtime-calibratable analog computing system and methods of use

11017184 · 2021-05-25

Assignee

Inventors

Cpc classification

International classification

Abstract

The inventive disclosures described herein generally pertain to an improved runtime-calibratable analog-computing system. In many embodiments, the improved analog-computing system comprises at least two analog computers, wherein after initial calibration, the system is designed to stagger the runtime calibration modes of each of the at least two analog-computers such that at least one of the analog computers is always in service, thus preventing any downtime for the overall system. In other words, a system user sees one initial calibration, and computing by the overall system is never interrupted.

Claims

1. A method for use with first and second physical analog computers in a production system having production inputs and outputs, each of the analog computers having respective inputs and outputs, and for use with a calibration apparatus having calibration signals to be provided for inputs and receiving signals from outputs, wherein each analog computer comprises at least two integrators, each integrator having an internal state defining the output thereof, the at least two integrators of each analog computer corresponding to the at least two integrators of the other of the analog computers, the method comprising the steps of: connecting the inputs of the first analog computer to the production inputs, and connecting the outputs of the first analog computer to the production outputs, thereby putting the first analog computer into production service; connecting the inputs of the second analog computer to the calibration input signals, and connecting the outputs of the second analog computer to the calibration output signals, thereby putting the second analog computer into calibration mode; carrying out calibration of the second analog computer; disconnecting the inputs of the second analog computer from the calibration inputs and disconnecting the outputs of the second analog computer from the calibration outputs, thereby taking the second analog computer out of calibration mode; connecting the inputs of the second analog computer to the production inputs; upon fulfillment of a predetermined condition, connecting the outputs of the second analog computer to the production outputs, thereby putting the second analog computer into production service; disconnecting the outputs of the first analog computer from the production outputs, thereby taking the first analog computer out of production service; disconnecting the inputs of the first analog computer from the production inputs; connecting the inputs of the first analog computer to the calibration input signals, and connecting the outputs of the first analog computer to the calibration output signals, thereby putting the first analog computer into calibration mode; carrying out calibration of the first analog computer; disconnecting the inputs of the first analog computer from the calibration inputs and disconnecting the outputs of the first analog computer from the calibration outputs, thereby taking the first analog computer out of calibration mode; connecting the inputs of the first analog computer to the production inputs; upon fulfillment of the predetermined condition, connecting the outputs of the first analog computer to the production outputs, thereby putting the first analog computer into production service; disconnecting the outputs of the second analog computer from the production outputs, thereby taking the second analog computer out of production service; disconnecting the inputs of the second analog computer from the production inputs; connecting the inputs of the second analog computer to the calibration input signals, and connecting the outputs of the second analog computer to the calibration output signals, thereby putting the second analog computer into calibration mode; carrying out calibration of the second analog computer; disconnecting the inputs of the second analog computer from the calibration inputs and disconnecting the outputs of the second analog computer from the calibration outputs, thereby taking the second analog computer out of calibration mode; connecting the inputs of the second analog computer to the production inputs; upon fulfillment of a predetermined condition, connecting the outputs of the second analog computer to the production outputs, thereby putting the second analog computer into production service; disconnecting the outputs of the first analog computer from the production outputs, thereby taking the first analog computer out of production service; disconnecting the inputs of the first analog computer from the production inputs; connecting the inputs of the first analog computer to the calibration input signals, and connecting the outputs of the first analog computer to the calibration output signals, thereby putting the first analog computer into calibration mode; carrying out calibration of the first analog computer; disconnecting the inputs of the first analog computer from the calibration inputs and disconnecting the outputs of the first analog computer from the calibration outputs, thereby taking the first analog computer out of calibration mode; connecting the inputs of the first analog computer to the production inputs; upon fulfillment of the predetermined condition, connecting the outputs of the first analog computer to the production outputs, thereby putting the first analog computer into production service; disconnecting the outputs of the second analog computer from the production outputs, thereby taking the second analog computer out of production service; disconnecting the inputs of the second analog computer from the production inputs; connecting the inputs of the second analog computer to the calibration input signals, and connecting the outputs of the second analog computer to the calibration output signals, thereby putting the second analog computer into calibration mode; and carrying out calibration of the second analog computer; the method further comprising the step, performed before each analog computer is placed into calibration mode, of storing the internal states of the integrators thereof, and thereafter transferring the stored internal state of integrators thereof to the corresponding integrators of the other analog computer having just been taken out of calibration mode.

2. The method of claim 1 wherein the predetermined condition is the passage of a predetermined interval of time.

3. The method of claim 1 wherein the predetermined condition is a determination that outputs of the just-calibrated computer have settled, measured by a threshold device.

4. The method of claim 1 wherein the switching of inputs of an analog computer from calibration inputs to production inputs is “break before make”.

5. The method of claim 1 wherein the switching of outputs of an analog computer that was just calibrated, to the production outputs, and the switching of the other analog computer's outputs away from the production outputs, is “make before break”.

6. A method for use with first and second physical analog computers in a production system having production inputs and outputs, each of the analog computers having respective inputs and outputs, and for use with a calibration apparatus having calibration signals to be provided for inputs and receiving signals from outputs, the method carried out with respect to a third physical analog computer in the production system, the third analog computer having respective inputs and outputs, and carried out with respect to a threshold device, the threshold device having three inputs, the method comprising the steps of: connecting the inputs of the first analog computer to the production inputs, and connecting the outputs of the first analog computer to the production outputs, thereby putting the first analog computer into production service; connecting the inputs of the second analog computer to the calibration input signals, and connecting the outputs of the second analog computer to the calibration output signals, thereby putting the second analog computer into calibration mode; carrying out calibration of the second analog computer; disconnecting the inputs of the second analog computer from the calibration inputs and disconnecting the outputs of the second analog computer from the calibration outputs, thereby taking the second analog computer out of calibration mode; connecting the inputs of the second analog computer to the production inputs; upon fulfillment of a predetermined condition, connecting the outputs of the second analog computer to the production outputs, thereby putting the second analog computer into production service; disconnecting the outputs of the first analog computer from the production outputs, thereby taking the first analog computer out of production service; disconnecting the inputs of the first analog computer from the production inputs; connecting the inputs of the first analog computer to the calibration input signals, and connecting the outputs of the first analog computer to the calibration output signals, thereby putting the first analog computer into calibration mode; carrying out calibration of the first analog computer; disconnecting the inputs of the first analog computer from the calibration inputs and disconnecting the outputs of the first analog computer from the calibration outputs, thereby taking the first analog computer out of calibration mode; connecting the inputs of the first analog computer to the production inputs; upon fulfillment of the predetermined condition, connecting the outputs of the first analog computer to the production outputs, thereby putting the first analog computer into production service; disconnecting the outputs of the second analog computer from the production outputs, thereby taking the second analog computer out of production service; disconnecting the inputs of the second analog computer from the production inputs; connecting the inputs of the second analog computer to the calibration input signals, and connecting the outputs of the second analog computer to the calibration output signals, thereby putting the second analog computer into calibration mode; carrying out calibration of the second analog computer; disconnecting the inputs of the second analog computer from the calibration inputs and disconnecting the outputs of the second analog computer from the calibration outputs, thereby taking the second analog computer out of calibration mode; connecting the inputs of the second analog computer to the production inputs; upon fulfillment of a predetermined condition, connecting the outputs of the second analog computer to the production outputs, thereby putting the second analog computer into production service; disconnecting the outputs of the first analog computer from the production outputs, thereby taking the first analog computer out of production service; disconnecting the inputs of the first analog computer from the production inputs; connecting the inputs of the first analog computer to the calibration input signals, and connecting the outputs of the first analog computer to the calibration output signals, thereby putting the first analog computer into calibration mode; carrying out calibration of the first analog computer; disconnecting the inputs of the first analog computer from the calibration inputs and disconnecting the outputs of the first analog computer from the calibration outputs, thereby taking the first analog computer out of calibration mode; connecting the inputs of the first analog computer to the production inputs; upon fulfillment of the predetermined condition, connecting the outputs of the first analog computer to the production outputs, thereby putting the first analog computer into production service; disconnecting the outputs of the second analog computer from the production outputs, thereby taking the second analog computer out of production service; disconnecting the inputs of the second analog computer from the production inputs; connecting the inputs of the second analog computer to the calibration input signals, and connecting the outputs of the second analog computer to the calibration output signals, thereby putting the second analog computer into calibration mode; and carrying out calibration of the second analog computer; the method further comprising the steps of: connecting the inputs of the third analog computer to the production inputs; at a time when all three of the analog computers are in production service, connecting the outputs of the three analog computers to respective inputs of the threshold device, and, in the event of an excursion of a production output of any one of the analog computers relative to the production outputs of the other two analog computers in excess of a predetermined threshold, annunciating the event by means of a communication external to the system.

7. The method of claim 6 wherein the predetermined condition is the passage of a predetermined interval of time.

8. The method of claim 6 wherein the predetermined condition is a determination that outputs of the just-calibrated computer have settled, measured by a threshold device.

9. The method of claim 6 wherein the switching of inputs of an analog computer from calibration inputs to production inputs is “break before make”.

10. The method of claim 6 wherein the switching of outputs of an analog computer that was just calibrated, to the production outputs, and the switching of the other analog computer's outputs away from the production outputs, is “make before break”.

11. Apparatus comprising first and second physical analog computers in a production system having production inputs and outputs, each of the analog computers having respective inputs and outputs, the apparatus further comprising a calibration apparatus having calibration signals to be provided for inputs and receiving signals from outputs, the apparatus further comprising a switching fabric disposed to selectively connect the inputs of the first analog computer to the production inputs or to the calibration inputs, and disposed to selectively connect the outputs of the first analog computer to the production outputs or to the calibration outputs, the switching fabric further disposed to selectively connect the inputs of the second analog computer to the production inputs or to the calibration inputs, and disposed to selectively connect the outputs of the second analog computer to the production outputs or to the calibration outputs, wherein each analog computer comprises at least two integrators, each integrator having an internal state defining the output thereof, the at least two integrators of each analog computer corresponding to the at least two integrators of the other of the analog computers, the apparatus further comprising transfer means disposed at predetermined times to store the internal states of the integrators of any one of the analog computers, and to transfer stored internal state of said integrators to the corresponding integrators of the other analog computer.

12. The apparatus of claim 11 wherein the switching fabric is further characterized in that the switching of inputs of to an analog computer is “break before make”.

13. The apparatus of claim 11 wherein the switching fabric is further characterized in that the switching of outputs of the analog computers to production outputs is “make before break”.

14. The apparatus of claim 11 wherein the predetermined time is a time when a first one of the analog computers has just been taken out of calibration mode, and a second one of the analog computers is about to be placed into calibration mode, the transfer being from the second analog computer to the first analog computer.

15. Apparatus comprising first and second physical analog computers in a production system having production inputs and outputs, each of the analog computers having respective inputs and outputs, the apparatus further comprising a calibration apparatus having calibration signals to be provided for inputs and receiving signals from outputs, the apparatus further comprising a switching fabric disposed to selectively connect the inputs of the first analog computer to the production inputs or to the calibration inputs, and disposed to selectively connect the outputs of the first analog computer to the production outputs or to the calibration outputs, the switching fabric further disposed to selectively connect the inputs of the second analog computer to the production inputs or to the calibration inputs, and disposed to selectively connect the outputs of the second analog computer to the production outputs or to the calibration outputs, further comprising a third analog computer in the production system, the third analog computer having respective inputs and outputs, the switching fabric further disposed to selectively connect the inputs of the third analog computer to the production inputs or to the calibration inputs, and disposed to selectively connect the outputs of the third analog computer to the production outputs or to the calibration outputs, the apparatus further comprising a threshold device disposed to annunciate an excursion of a production output of any one of the analog computers relative to the production outputs of the other two analog computers in excess of a predetermined threshold, the annunciation communicated external to the system.

16. The apparatus of claim 15 wherein the switching fabric is further characterized in that the switching of inputs of to an analog computer is “break before make”.

17. The apparatus of claim 15 wherein the switching fabric is further characterized in that the switching of outputs of the analog computers to production outputs is “make before break”.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

(1) FIG. 1A depicts a typical output versus time profile of a prior-art analog-computing system that has to follow a conventional calibration process.

(2) FIG. 1B depicts a simplified timeline for a prior-art analog-computing system that illustrates the ongoing issue with maintaining the calibration of such a system; that is, the system must be periodically taken offline for calibration.

(3) FIG. 1C depicts one embodiment of a simplified timeline illustration of the calibration of an improved analog-computing system; that is, the improved analog-computing system, as perceived by an external user, requiring (or appearing to to the external user to require) only an initial calibration of the analog-computing system before it comes online, and then maintaining its calibrated status thereafter without (from the point of view of the external user) having to go out of service.

(4) FIG. 2A depicts a simplified timeline illustration of an improved analog-computing system that is comprised of two analog computers, such that while the first analog computer is computing, the second one is calibrating, and vice-versa. Notably, there is an overlap between the two “computing” blocks so as to avoid any interruption in actual in-service operations of the overall system.

(5) FIG. 2B depicts the simplified timeline illustration of an improved analog-computing system from FIG. 2A, except that in this embodiment the system uses a smooth “handoff” of system state information while the two separate onboard analog computers swap modes between being in service and being in calibration. It is important to ensure that the “handoff” occurs without causing transients in the overall analog-computing system.

(6) FIG. 2C depicts one example of a physical embodiment of an actual two-analog-computer board that implements the calibration schema of FIGS. 2A and 2B.

(7) FIGS. 3A through 3D collectively illustrate one embodiment of a simplified example of the runtime-calibration scheme for an improved analog-computing system. In FIG. 3A, Computer-1 is in service while Computer-2 is in a calibration mode. In FIG. 3B, Computer-1 is still in service; however, Computer-2 is transitioning out of calibration mode by connecting it to the input (thus, the input of Computer-2 is no longer received from the calibration module); however, the output switch for Computer-2 is still positioned to be connected to the calibration module and not connected to the overall system output in order to give Computer2 time for transients (e.g., “hunting”) to dissipate. FIG. 3C shows the next phase of the system transition, in that Computer-2 is now connected to the overall system output (that is, placed in service), which places the operations of Computer-1 and Computer-2 in parallel with each other for a brief period of time. Next, as shown in FIG. 3D, Computer-1 is placed in calibration mode, which removes Computer-1 from the overall system output.

(8) FIG. 4A depicts one simple behavioral model for a two-analog-computer configuration for the improved analog-computing-system calibration schema.

(9) FIG. 4B depicts a graphical representation of the analog-computing system output in terms of the alternating service and calibration modes of operation for Computer-1 and Computer-2, with a plot for each analog-computer and a plot for the overall system output that an external user sees. It should be noted that the transient region as one analog computer moves from the calibration mode to the service mode overlaps the service mode of the other analog computer so as to ensure a continuous and stable overall system output.

(10) FIG. 4C depicts one embodiment of a simplified example of a two analog computer approach, with an “input” and an “output”, input switches, output switches, a calibration module, and state-information-exchange circuitry.

(11) FIG. 4D depicts one embodiment of a simplified process block diagram of the system-calibration process of a computing system with two analog computers.

(12) FIGS. 5A and 5B each depict embodiments of two simplified diagrams on how to accomplish the transfer of state information between two analog computers in an improved analog-computing system, via a data-transfer apparatus. In FIG. 5A, the state-information transfer occurs via a direct transfer of analog data. In FIG. 5B, the state-information transfer occurs via the use of intermediary onboard analog-data processing components, such as analog-to-digital converters (ADCs), random-access memory (RAM), and digital-to-analog converters (DACs).

DETAILED DESCRIPTION

(13) [1] Overview

(14) The inventive disclosures described herein generally pertain to an improved runtime-calibratable analog-computing system. In many embodiments, the improved analog-computing system comprises at least two analog computers, wherein after initial calibration, the system is designed to stagger the runtime calibration modes of each of the at least two analog-computers such that at least one of the analog computers is always in service, thus preventing any downtime for the overall system. In other words, a system user sees one initial calibration, and computing by the overall system is never interrupted.

(15) [2] An Improved Runtime-Calibratable Analog-Computing System

(16) This Section II is directed generally to an improved runtime-calibratable analog-computing system. Refer to FIGS. 1A through 6C.

(17) [1] Achieving Transparent Runtime Calibration of an Analog-Computing System

(18) In the prior art, to maintain the proper calibration of an analog-computing system, the system must be taken out of service, calibrated, then placed back in service. The experienced user appreciates that even the placing back into service is not instant, because there is some lag time before the system is back to optimum performance due to system transients as it comes back on line. See FIG. 1A, which depicts the typical output versus time profile of a prior-art analog-computing system that has to follow this calibration process. FIG. 1B depicts a simplified timeline for a prior-art analog-computing system that illustrates the ongoing issue with maintaining the calibration of such a system; that is, the system must be periodically taken offline for calibration. The general goal of the preset improved analog-computing system is to create an analog-computing system that, from a standpoint, of an external point of view, requires (or appears from the external point of view to require) only an initial calibration of the analog-computing system before it comes online, and then maintains its calibrated status thereafter without having to go out of service, as depicted in the simplified timeline illustration in FIG. 1C.

(19) In one embodiment, two analog computers (or two sub-analog-computers on the same chip) are used. Referring to FIG. 2A, while the first analog computer is computing, the second one is calibrating, and vice-versa. Notably, there is an overlap between the two “computing” blocks so as to avoid any interruption in actual in-service operations of the overall system. Using a smooth “handoff” (see FIG. 2B) of system state information, the two separate analog computers swap modes between being in service and being in calibration. In variations, the “handoff” occurs from one analog computer to another. However, it is important to ensure that the “handoff” occurs without causing transients in the system. One solution is to adopt a long-established technique for filter tuning, as described in Y. Tsividis, “Self-tuned filters,” Electronics Letters, vol. 17, no. 12, pp. 406-407, 11 Jun. 1981, the teachings of which are incorporated herein by reference. FIG. 2C depicts one example of an actual two-analog-computer board that implements this calibration schema.

(20) The alert reader will be aware that there are several ways to accomplish the computation that uses two or more analog computers as described herein, in coordination with digital computer resources. FIG. 2C shows a circuit board with two analog computers shown as Computer 1 and Computer 2. Each computer, for example Computer 1, has integrators, function generators, multipliers, adders, inverters, and other circuit elements that help to make up an electronic analog computer. In and around these circuit elements is an analog switching fabric that is controlled from outside the analog computer. This switching fabric serves a function closely analogous to the “plug board” which was used many decades ago with legacy analog computers. The switching fabric will remind the alert reader of the connections that come into existence during the configuration of a field programmable gate array (FPGA) in present-day digital technology. The analog switching fabric of the analog computer such as Computer 1 is controlled by digital computing resources that are external to the analog computer.

(21) The alert reader will further appreciate that if the number of circuit elements in the analog computer named Computer 1 is sufficiently large, then for a given set of differential equations that is to be solved, it may be possible to “construct” two analog computers within Computer 1, each of which is composed of whatever circuit elements are needed to carry out the desired computation. The two analog computers would then be contained within a single chip appearing to the human observer to be Computer 1. This gives rise to the notion of two sub-analog-computers on the same chip.

(22) The teachings of the present invention offer their benefits regardless of whether the two computers that are linked up (with one being calibrated while the other is carrying out the externally observed computations) are on the one hand visible to a human user as separate chips, or are merely distinct analog computers constructed by means of suitable configuration of switching fabric and circuit elements all within a single chip.

(23) See FIGS. 3A through 3D, which collectively illustrate one embodiment of a simplified example of the runtime-calibration scheme for an improved analog-computing system 1. Assume that an “input” 40 and an “output” 45 are present. It will be appreciated that in real-life situations these values are likely to be vector values. Saying this differently, each of the switches for example 5 and 10 and 15 and 20 is a multiple-pole switch. For simplicity of portrayal in the figures, and to make the textual discussion easy to follow, we will speak as if there were a single line of input and a single line of output, and that each of switches for example 5 and 10 and 15 and 20 is a single-pole switch. But again it is emphasized that the more general case is that there are vector values switched by multiplex switches. It will thus be convenient in discussions below of apparatus to refer in a general way to “switching fabric” that brings about the (likely multiplex) switching at for example 5 and 10 and 15 and 20.

(24) In FIG. 3A, Computer-1 25 is in service (by which we mean “production service”), based on the positions of input switch 5 and output switch 15, while Computer-2 30 is in a calibration mode and in communication with a calibration module 35 via the positions of input switch 10 and output switch 20. In FIG. 3B, Computer-1 25 is still in service, based on the positions of input switch 5 and output switch 15; however, Computer-2 30 is transitioning out of calibration mode by connecting it to the input 40 via input switch 10 (thus, the input of Computer-2 30 is no longer received from the calibration module 35); however, the output switch 20 is still positioned to be connected to the calibration module 35 and not connected to the output 45 in order to give Computer2 30 time for transients (e.g., “hunting”) to dissipate, after which the output of Computer-2 30 can be used for the system output 45. In typical variations, the calibration module 35 comprises a test suite of test signals/input values to be processed through the connected analog computer undergoing calibration, an associated set of predicted output values to compare with the output of the analog computer undergoing calibration, and a means to adjust the calibration settings of the analog computer. FIG. 3C shows the next phase of the system transition, in that Computer-2 30 is now connected to the system output 45 (that is, placed in service) via output switch 20, which places the operations of Computer-1 25 and Computer-2 30 in parallel with each other for a brief period of time. Next, as shown in FIG. 3D, Computer-1 25 is placed in calibration mode 35 via input switch 5 and output switch 15.

(25) It should be understood by the alert reader that in some preferred embodiments, some of the aforementioned switches 5, 10, 15, 20 should be of a “make-before-break” type to ensure that the transition between analog computers as one reenters its service mode and the other enters the calibration mode does not result in a dropped/lost signal (input or output). Others might be a “break before make” type as will be discussed below.

(26) In more variations, the improved analog-computing system 1 includes a means to compare the outputs of the two analog computers 25, 30 to determine whether the analog computer 25, 30 outputs are within a predetermined differential with respect to each other in order to avoid a sudden and undesired system transient as a result of the swap of the in-service analog computers 25, 30. If the output differential between the oncoming analog computer 25, 30 exceeds some predetermined threshold, then in some embodiments, a means to provide a system alert/annunciation is provided for end users, and/or the handoff/transfer between the analog computers 25, 30 may be suspended to allow for end-user troubleshooting. The overall system 1 is configured to swap the operational modes of Computer-1 25 and Computer-2 30, back and forth, in a similar manner in order to maintain overall system 1 calibration while eliminating any externally observed downtime of system 1.

(27) In other variations, more than two analog computers 25, 30 can be used for such swapping between service and calibration modes in order to increase overall system 1 reliability for especially high-risk practical applications. The aforementioned output-comparison means during the transition of in-service analog computers 25, 30, in which there are three or more analog computers involved, can be subjected to a coincidence-logic or “voting” system whereby if the output values for the majority of the analog computers are within a predetermined threshold of each other, then that majority value (which in variations can be an average of the majority values) will control whether or not to allow an analog computer that has been in calibration mode to come online and take-over the system operations.

(28) The key in making this scheme work is the relative timing of the input and output multiplexers at the analog computers. FIGS. 4A though 4D describe one embodiment of an example of this technique, with FIG. 4A showing a simple behavioral model for a two-analog-computer configuration. FIG. 4B depicts a graphical representation of the analog-computing system output in terms of the alternating service and calibration modes of operation for Computer-1 and Computer-2, with a plot for each analog-computer and a plot for the overall system output that a user sees. It should be noted that the transient region as one analog computer moves from the calibration mode to the service mode overlaps the service mode of the other analog computer so as to ensure a continuous and stable overall system output. From an external point of view, a system user only sees one calibration cycle (as opposed to hundreds or more) and the analog-computing system never has to be taken down for re-calibration. This technique makes the difference between interrupted service and continuous service.

(29) As was mentioned above in the discussion relating to FIG. 2C, the two computers being linked might be in two separate chips as shown in FIG. 2C. But they might just as well be distinct computers (perhaps termed “sub-computers”) within a single chip, created by suitable allocation of circuit elements to the two sub-computers and by suitable configuration of the analog switching fabric. In the latter approach, the switching of inputs to the two computers, and the switching of outputs from the two computers, according to the teachings of the invention, would likely be accomplished by real-time manipulation of the analog switching fabric just mentioned.

(30) [2] Timing Constraints

(31) Since one analog computer needs to be calibrated and since it is necessary to wait for its transients to die out, while the second analog computer is computing:
T.sub.compute>T.sub.calibrate+T.sub.transients Where: T.sub.compute is the compute time period; T.sub.calibrate is the calibration time period; and T.sub.transients is the time period for system transients to dissipate.

(32) [3] Application to Amplitude Scaling in Analog Computers

(33) To eliminate the back-in-service transient, an embodiment an amplitude-scaling technique for filters can be used, in which the states (that is, capacitor voltages) are held while scaling changes are made, while transients are avoided. See, e.g., U.S. Pat. No. 5,541,600 to E. Blumenkrantz et al., for “Signal processing circuit including a variable gain input stage.” The teachings of U.S. Pat. No. 5,541,600 are incorporated by reference.

(34) This amplitude-scaling technique can be extended to the case of two (or more) analog computers, in which the states (that is, the integrator outputs) are passed from one analog computer to the other. If the pause times can be eliminated or minimized/tolerated in a given application, then this state-information-exchange schema should be considered. FIG. 4C depicts one behavioral model of a system with two analog computers, with an “input” 40 and an “output” 45 (once again, these values can be vectors), input switches 5, 10, output switches 15, 20, first and second computers 25A, 30A, calibration module 35, and state-information-exchange circuitry 50. FIG. 4D depicts a simplified process block diagram of a system with two analog computers according to such a behavioral model: Computer 1 25A undergoes the processes of Compute 55, Pause/Transfer state 60 (sending state data to Computer 2 30A), Calibrate 65, and Accept state 70 (receiving state data from Computer 2 30A); and Computer 2 30A undergoes the parallel processes (with respect to Computer 1 25A) of Calibrate 75, Accept state 80 (receiving state data from Computer 1 25A), Compute 85, and Pause/Transfer state 90 (sending state data to Computer 1 30A). These processes repeat throughout system operation.

(35) FIGS. 5A and 5B each depict embodiments of two simplified diagrams on how to accomplish the transfer of state information between Computer 1 25A and Computer 2 30A, via a data-transfer apparatus 50. In a variation, as shown in FIG. 5A, the state-information transfer occurs via a direct transfer of analog data 50. In an alternate variation, as shown in FIG. 5B, the state-information transfer occurs via the use of intermediary onboard analog-data processing components 50, such as analog-to-digital converters (ADCs), random-access memory (RAM), and digital-to-analog converters (DACs).

(36) In additional embodiments, the approaches described above can be used for amplitude scaling without interruption. In fact, amplitude scaling can be considered as part of the calibration process. Some examples of circuit configurations that can be exploited to combine such system-input filtering with the calibration schemas presented above are disclosed in U.S. Pat. No. 7,274,760 to Palaskas et al., for “Circuit and method for dynamically modifiable signal processor,” and U.S. Pat. No. 7,274,760 is hereby incorporated by reference.

(37) It may thus be helpful to review what has been described. The approach according to the invention is to provide first and second analog computers, each having respective inputs and outputs. At any given moment one computer or the other can be in production service, serving whatever the user goals are for the production system. This might be assisting in management of an electric vehicle or an electrical energy storage system but could be any environment in which analog computation is helpful. Typical environments where such computation is helpful are environments in which it is a goal to provide solutions or at least near solutions to systems of non-linear differential equations. The solution itself may be put to use directly, for example to determine some concrete result in management of some physical system. Or some near solution may be developed which is in turn provided to a digital system which takes the near solution as a starting point and arrives at a digitally computed result which is put to use directly to determine some concrete result in management of some physical system.

(38) According to the invention, while one of the analog computers is in production service, its inputs are connected to the production inputs of the system and its outputs are connected to the production outputs of the system. This is typically carried out by means of an analog crosspoint switching fabric providing analog switching capability to each of the two analog computers, to calibration equipment, and to the production inputs and outputs.

(39) While one of the analog computers is thus in production service, it is thus possible to carry out calibration of the other of the analog computers. Its inputs are connected to calibration inputs of the calibration equipment, and its outputs are connected to calibration output-receiving signal lines of the calibration equipment. Calibration is then carried out. Depending upon the analog computation elements involved, and their technology, the calibration might take milliseconds or seconds, but for some technologies the calibration might take on the order of minutes.

(40) Because the production function is being supported by the other analog computer (the computer that is not being calibrated), it is not a problem if the calibration process takes seconds or even minutes.

(41) When the calibration process has finished, then a handover takes place. The computer that just finished calibration gets its inputs disconnected from the calibration inputs and connected to the production inputs. This will typically be a “break before make” type of switching.

(42) After a while this computer settles and its outputs can likely be trusted. Upon occurrence of a predetermined condition, the outputs of this computer get connected to the production outputs and the outputs of the other computer (that had previously been in production) get disconnected from the production outputs. This will typically be a “make before break” type of switching.

(43) The alert reader will appreciate that in the figures, the many inputs to a particular analog computer are portrayed symbolically as a single signal line, the many outputs are portrayed symbolically as a single signal line, and so on, for simplicity of portrayal in the figures. The analog signal switching which is actually many analog switches is portrayed symbolically as a single-pole double-throw switch, again for simplicity of portrayal in the figures. It is nonetheless appreciated that in actual implementation there are a multiplicity of signals arriving at the inputs and at the outputs of any given analog computer or calibration apparatus, or at the inputs or at the outputs of the physical system for which the production apparatus is providing analog computation.

(44) A predetermined condition is chosen by the system designer to determine when to connect the outputs of the just-calibrated analog computer to the production outputs. A simple predetermined condition which may be employed is simply to allow the passage of a predetermined time interval, based upon accumulated experience as to the settling time of the various analog computational elements, or based upon a modeled settling time thereof.

(45) A slightly more sophisticated predetermined condition which may be employed is to provide a threshold device (by which is meant a system of threshold devices, one for each pair of signals) to compare output signals from the two analog computers, meaning the computer that has been in production and the computer that just finished calibration. And the threshold may be employed to arrive at a conclusion that settling has happened in the computer that just finished calibration. Given that settling has happened, then the condition is deemed satisfied, and that computer has its outputs connected to the production outputs. In plain language, that computer is put into production service.

(46) The duty cycle for production and calibration is selected taking into account accumulated experience as to the likely pace and magnitude of drift in the analog computer computational elements, or a modeled drift. The goal of course is to carry out calibration often enough to minimize the accumulated drift at any particular time prior to the next calibration having taken place.

(47) The alert reader will also appreciate one other possible benefit to provision of the threshold device mentioned above, namely that it can also be employed during production service to monitor drift in the analog computer that has had the longest time having passed since calibration. This monitoring can be helpful in any of several ways. First, it permits further accumulated experience as to drift, which permits more informed decisions in future as to generally speaking how often recalibration is likely to be needed. Second it could permit individual real-time decisions as to when to carry out calibration in that analog computer. Third, in the event of widely divergent outputs from the two analog computers, this could provide a warning that one of the analog computers may have suffered a failure of some analog computational element.

(48) The threshold device is of course a two-input device. The alert reader will also appreciate that in production environments where high reliability is needed, it would be possible to provide (for example) three analog computers and a three-input voter containing suitable threshold devices and voting logic. In the event of one analog computer running amok, for example due to catastrophic failure of some analog computational element, the voter could work out which two analog computers to keep in production service and which one analog computer to disconnect from production service. The high-reliability system just mentioned can also carry out the calibration processes mentioned earlier, in which one computer provides production computations (or two computers provide production computations) while another computer is undergoing recalibration.

(49) What is described, then, is a method for use with first and second physical analog computers in a production system having production inputs and outputs, each of the analog computers having respective inputs and outputs, and for use with a calibration apparatus having calibration signals to be provided for inputs and receiving signals from outputs, the method comprising the steps of:

(50) connecting the inputs of the first analog computer to the production inputs, and connecting the outputs of the first analog computer to the production outputs, thereby putting the first analog computer into production service;

(51) connecting the inputs of the second analog computer to the calibration input signals, and connecting the outputs of the second analog computer to the calibration output signals, thereby putting the second analog computer into calibration mode;

(52) carrying out calibration of the second analog computer;

(53) disconnecting the inputs of the second analog computer from the calibration inputs and disconnecting the outputs of the second analog computer from the calibration outputs, thereby taking the second analog computer out of calibration mode;

(54) connecting the inputs of the second analog computer to the production inputs;

(55) upon fulfillment of a predetermined condition, connecting the outputs of the second analog computer to the production outputs, thereby putting the second analog computer into production service;

(56) disconnecting the outputs of the first analog computer from the production outputs, thereby taking the first analog computer out of production service;

(57) disconnecting the inputs of the first analog computer from the production inputs;

(58) and repeating this process over and over again. So for example at a subsequent time, the method involves once again connecting the inputs of the first analog computer to the calibration input signals, and connecting the outputs of the first analog computer to the calibration output signals, thereby putting the first analog computer into calibration mode;

(59) carrying out calibration of the first analog computer;

(60) disconnecting the inputs of the first analog computer from the calibration inputs and disconnecting the outputs of the first analog computer from the calibration outputs, thereby taking the first analog computer out of calibration mode;

(61) connecting the inputs of the first analog computer to the production inputs;

(62) upon fulfillment of the predetermined condition, connecting the outputs of the first analog computer to the production outputs, thereby putting the first analog computer into production service;

(63) disconnecting the outputs of the second analog computer from the production outputs, thereby taking the second analog computer out of production service;

(64) disconnecting the inputs of the second analog computer from the production inputs;

(65) connecting the inputs of the second analog computer to the calibration input signals, and connecting the outputs of the second analog computer to the calibration output signals, thereby putting the second analog computer into calibration mode;

(66) carrying out calibration of the second analog computer;

(67) disconnecting the inputs of the second analog computer from the calibration inputs and disconnecting the outputs of the second analog computer from the calibration outputs, thereby taking the second analog computer out of calibration mode;

(68) connecting the inputs of the second analog computer to the production inputs;

(69) upon fulfillment of a predetermined condition, connecting the outputs of the second analog computer to the production outputs, thereby putting the second analog computer into production service;

(70) disconnecting the outputs of the first analog computer from the production outputs, thereby taking the first analog computer out of production service;

(71) disconnecting the inputs of the first analog computer from the production inputs;

(72) connecting the inputs of the first analog computer to the calibration input signals, and connecting the outputs of the first analog computer to the calibration output signals, thereby putting the first analog computer into calibration mode;

(73) carrying out calibration of the first analog computer;

(74) disconnecting the inputs of the first analog computer from the calibration inputs and disconnecting the outputs of the first analog computer from the calibration outputs, thereby taking the first analog computer out of calibration mode;

(75) connecting the inputs of the first analog computer to the production inputs;

(76) upon fulfillment of the predetermined condition, connecting the outputs of the first analog computer to the production outputs, thereby putting the first analog computer into production service;

(77) disconnecting the outputs of the second analog computer from the production outputs, thereby taking the second analog computer out of production service;

(78) disconnecting the inputs of the second analog computer from the production inputs;

(79) connecting the inputs of the second analog computer to the calibration input signals, and connecting the outputs of the second analog computer to the calibration output signals, thereby putting the second analog computer into calibration mode; and

(80) carrying out calibration of the second analog computer.

(81) As discussed earlier the predetermined condition for switching a just-calibrated analog computer back into production service may simply be the passage of a predetermined interval of time. Alternatively, the predetermined condition may be a determination that outputs of the just-calibrated computer have settled, measured by a threshold device.

(82) The switching of inputs of an analog computer from calibration inputs to production inputs may be “break before make”. The switching of outputs of an analog computer that was just calibrated, to the production outputs, and the switching of the other analog computer's outputs away from the production outputs, may be “make before break”.

(83) It will be reviewed that each analog computer will comprise several integrators, each integrator having an internal state defining the output thereof. Before an analog computer is placed into calibration mode, we may store the internal states of the integrators thereof. We then may transfer the stored internal state of integrators thereof to the corresponding integrators of the other analog computer having just been taken out of calibration mode.

(84) A third physical analog computer may be provided in the production system, the third analog computer having respective inputs and outputs. What then can take place is that the inputs of the third analog computer are connected to the production inputs. Then, at a time when all three of the analog computers are in production service, the outputs of the three analog computers may be connected to respective inputs of the threshold device, and, in the event of an excursion of a production output of any one of the analog computers relative to the production outputs of the other two analog computers in excess of a predetermined threshold, the event may be annunciated by means of a communication external to the system.

(85) We thus may have apparatus comprising first and second physical analog computers in a production system having production inputs and outputs, each of the analog computers having respective inputs and outputs, the apparatus further comprising a calibration apparatus having calibration signals to be provided for inputs and receiving signals from outputs, the apparatus further comprising a switching fabric disposed to selectively connect the inputs of the first analog computer to the production inputs or to the calibration inputs, and disposed to selectively connect the outputs of the first analog computer to the production outputs or to the calibration outputs, the switching fabric further disposed to selectively connect the inputs of the second analog computer to the production inputs or to the calibration inputs, and disposed to selectively connect the outputs of the second analog computer to the production outputs or to the calibration outputs.

(86) The various embodiments and variations thereof described herein, including the descriptions in any appended Claims and/or illustrated in the accompanying Figures, are merely exemplary and are not meant to limit the scope of the inventive disclosure. It should be appreciated that numerous variations of the invention have been contemplated as would be obvious to alert readers with the benefit of this disclosure.

(87) Hence, alert readers will have no difficulty devising myriad obvious variations and improvements to the invention, all of which are intended to be encompassed within the scope of the Description, Figures, and Claims herein.