An apparatus featuring a feedback signal for controlling a powering voltage for asynchronous electronic circuitry therein

Abstract: An apparatus comprises digital data processing electronic circuitry based on self-timed elements. Moreover, it comprises a buffer that is connected either to the input or to the output of said circuitry. A filling degree signal from the buffer is fed back to a control input of a powering voltage controller. In this way the powering voltage is adjusted in such a way that the buffer tends not to fill and neither becomes empty.

Description: An apparatus featuring a feedback or feedforward signal for controlling a powering voltage of electronic circuitry therein. The invention relates to an apparatus comprising a data source means feeding buffer means for intermediate storage of data and subsequent outputting thereof, and comprising feedback means for under control of a filling degree signal of said buffer means dynamically controlling the data generating rate of said data source means, wherein said feedback means controls the actual powering voltage of said data source means, which powering voltage directly controls the overall data generating rate of said data source means. Such an apparatus is known from Skov and Newman, Buffer System, IBM Technical Disclosure Bulletin, Vol. 2, No. 5, February 1960, pages 86-89. The data source is a seven-channel magnetic tape, the buffer is a six word magnetic core store at seven bits per word, and the data destination is a synchronous unit. The feedback signal allows to control acceleration and deceleration, respectively, of the magnetic tape. In this way problems relating to tape speed variation are mitigated. The present invention has realized that modern design methodologies for electronic circuitry have attained a stage wherein miniaturization of many functionalities within a single, stand-alone, battery-operated unit has become feasible. Moreover, self-timed digital electronics have been developed that need no clock synchronization. This means that within a chain of circuit elements the sequence of activations is correct on any time scale. Accordingly, one of the objects of the present invention is to realize an apparatus of the kind described wherein dynamic power saving is combined with intrinsically correct functioning. Power saving means a longer life for non-rechargeable batteries. Alternatively, a smaller battery could be used without too much compromising as regards uninterrupted service. Moreover, at a lower current drawn, the same battery often shows a higher rating as measured in ampère-hours. In rechargeable batteries, lowering the current means less recharging, or again, smaller battery and less weight. And in technologically advanced realizations the lower current means lower dissipation leading to lower requirements on heat transport capability. And this could lead to cheaper packaging, such as a plastic DIL instead of a ceramic DIL module. In other circumstances, expensive provisions for cooling could be omitted. Even in case of mains-powered apparatus, the power saving could be a favourable property. According to one of its aspects, the object is accommodated in that the apparatus is characterized in that said data source means comprises integrated digital data processing electronic circuitry based on self-timed elements. Through varying the powering voltage also the power consumption is influenced, so that keeping the voltage at a lower level saves power. Power consumed falls in two categories. Static power consumption such as through a resistance is proportional to the voltage. This type occurs typically in bipolar technology. Dynamic power is consumed through loading a capacitance: the energy is ½ CV² and therefor proportional to the square of the voltage. This type occurs typically in technologies where the switching of gates is determining the power, such as, for example, in CMOS and GAAS technologies. Even if the total number of switching operations is constant, the power still goes as the square of the voltage. Now, the operating speed increases monotonously with the powering voltage, provided that the latter is between prespecified boundaries and operates according to complex physical laws that need not be considered here. In non-self-timed circuitry this could mean that also the number of switching operations would be variable under the powering voltage, such as in case of a clock. In self-timed circuitry a further advantage occurs, however, in that all operations at an interface between two circuit elements are intrinsically correct, regardless of the actual switching speed of either of those elements. Now, varying the handling rate in electronic synchronous circuitry has up to now been realized generally on an off/on-basis. By itself, the principles of self-timing are treated in Mead & Conway, Introduction to VLSI Systems, Addison-Wesley 1980, pages 242-262. A particular example is a PLA-type full adder on pages 250-252. Furthermore, a specific realization is by delay-insensitive elements, see US Patent 5,005,136 to the present assignee, in particular Figures 14, 15 thereof. This design methodology has been evolved even more in Kees van Berkel et al., The VLSI Programming Language Tangram and its Translation into Handshake Circuits, submitted to the European Design and Automation Conference, EDAC, Amsterdam, The Netherlands, February 1991. By itself, the influence of powering voltage level on the functioning or otherwise of synchronous circuitry has been considered in P. Macken et al., A voltage reduction technique for digital Systems, ISSCC '90 / Friday, February 16, 1990, proceedings pages 238/239. Herein, solely the feasibility of attaining a minimum powering voltage while still operating correctly was addressed. No attention was directed to the influence of the momentary situation on the effectiveness of operations related to the data processing themselves. None of the references addresses the feasibility of operating at various voltage levels in self-timed electric circuit elements and applying advantages offered thereby on a higher organizational level. According to the present invention, the processing may go faster or slower because of various operational conditions that would influence data throughput: although the processing speed is the same, the data destination may dynamically require a greater or lesser throughput as defined as the number of data items required; due to some particular circumstance, the processing takes more operations, for example, additional iterations, to produce the same number of data items. A particular example is where the data processing is related to error correction decoding. This may require different levels of processing: decoding a faultless word takes fewer operations as compared to a faulty one; various other operational conditions may be influential on the effective overall processing speed, besides those that are determined by the behaviour of the data processing devices. First, ambient temperature would influence operating speed. At the same powering voltage level operation slows down with raised temperature. Therefore, at lower temperatures the operating voltage level may be lowered. In particular, according to the invention, the voltage level is not controlled by the ambient temperature itself, but by the effects of ambient temperature on the processing. Often, this would lead to about the lowest powering voltage that just barely meets processing requirements; another variable is due to variations in manufacturing process technology spread: a spread in operational velocity of 20% is not uncommon. This means that "faster" copies of a particular circuit may be driven at lower powering voltage level without any pre-use testing in this respect. Of course, such test may nevertheless be executed to set ultra-low consumption devices apart from those that are standard grade. All of these effects could influence the filling state of the buffer recited. Moreover, the effects of those conditions are additive, which means that great spreads could occur in practice between best case and worst case. Therefore, also the power saving according to the above may be quite appreciable. An additional advantage of practising the invention were the following. The peak processing power is required relatively rarely. This may allow design of the circuit for an average power that is rather much lower, influencing heat conduction from a circuit package, heat capacity within a circuit chip, etcetera. Alternatively to having the data processing at the input of the buffer, it can be situated at the output thereof. Accordingly, another aspect of the invention relates to an apparatus comprising buffer means for receiving and intermediate storing of data and subsequent outputting thereof to data processing means and comprising feedforward means for under control of a filling degree signal of said buffer means dynamically controlling a data handling rate of said data processing means, said data processing means comprising electronic integrated circuitry based on self-timed elements and said feedforward means controlling an actual powering voltage of said circuitry, which powering voltage directly determines an operating speed of said electronic circuitry. Generally, similar arguments apply as before, although the direction of the data transfer between the buffer and the data processing is now the other way round. It should be obvious that the buffer/data processing combination may form part of a more comprehensive entity that may, but need not follow the power level regulation as recited supra. Other parts of such entity may be synchronized by a fixed clock, may be in another technology, or in another integrated circuit chip. Even if the circuitry of another element were identical, it may have other operational velocity due to the spread in the manufacturing process. A further example of variations in the apparently required processing power would be recording apparatus that were capable of high-speed dubbing: the information is then copied at twice the standard read-out speed (or some other factor), which would tax the processing elements quite a bit higher than normal use. Only in this case the higher powering level(s) would be used. Still another advantageous example is in pattern recognition (visual, audio or other). Often, the input signal is first scanned for candidate locations, after which a candidate found is completely scrutinized. As long as no candidate is found, the amount of processing is little, and an input buffer containing the input signal samples would tend to become empty. Then, voltage level of subsequent processing circuitry can be lowered. Various other aspects of the invention are recited in dependent Claims, although not all aspects need be present for nevertheless reaching the invention's advantages. For example, the invention may be advantageously used in remote-solar-cell powered devices. BRIEF DESCRIPTION OF THE FIGURES These and other aspects and advantages of the invention will be explained hereinafter with regard to the appended Figures that show various preferred embodiments, and in particular: Figure 1 shows an embodiment with feedback control; Figure 2 shows a second embodiment with feedback control; Figure 3 shows an embodiment of the control mechanism; Figure 4 is a block diagram of an error correction device for use in an apparatus according to the invention; Figure 5 is an energy-consumption diagram therefor. DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS The invention inter alia aims at the extension of battery lifetimes in portable equipment such as lap-tops, CD-, DCC-players and mobile communication equipment incorporating asynchronous electronic circuits. This extension is realized by reducing the power consumption of the asynchronous circuits. The invention proposes control mechanisms for this purpose. Many products from electronic industry, formerly using analog signal processing are transferred to digital signal processing. For example, the gramophone record player is succeeded by Compact Disc and the cassette recorder is being replaced by the Digital Compact Cassette system. Several applications in digital audio broadcasting and digital communication are soon to follow. All these products, including computers, can have dimensions such that they can be used as portables. However, the amount of data processing performed in these products is such that power dissipation is in point of fact too large for a battery supply, taken into account commercially acceptable life of the battery versus the total weight of the apparatus in question. IC's are designed to operate properly under certain given worst case conditions. Such conditions may be operating temperature, IC processing variations etcetera. They also are designed to have a specified performance at a certain maximum workload. These conditions have a significant impact on dissipated power. For typical operating conditions and typical workload the circuits are considerably faster than required and hence dissipate more than necessary. In synchronous systems it is hard to obtain such a reduced power consumption, cf. the Macken reference, supra. Although it is possible to reduce the supply voltage, an excess decrease in voltage will yield a malfunctioning circuit. A reduction of the clock frequency is even harder, if at all possible, to obtain. In an asynchronous circuit, the result of providing excess power is that the circuit behaves beyond the specified performance. Normally, the required performance will be achieved by means of synchronization with external circuits. The extent of the present invention is to insert a buffer circuit between the asynchronous circuit and the external circuits either at the output or at the input. Normally, in the case of an output buffer, such a buffer will fill up when there is excess processing power. In the proposed configuration, a control is introduced that regulates the supply voltage. For an output buffer this is done such that the buffer does not become empty and also not tends to fill up. By itself, a full buffer is not harmful since synchronization with external circuits would then occur just as if no buffer is provided; however overflow, as well as underflow are never acceptable. This means that in certain circumstances the voltage regulation according to the present invention is combined with a stop-go control signalization, either in the same direction as the transfer direction of the data, or in the reverse direction, and based on a second, different, filling degree signal of said buffer. By itself, stop-go control is well known and is not further discussed for brevity. In the Figures, an additional lead therefore has been omitted. Combination of the voltage regulation and the stop-go quasi emergency feature would avoid data loss and also realize low power consumption. Similarly to the above, for an input buffer the mechanism is to let the buffer not become full and also provide a tendency not to be empty. In this way a supply voltage is obtained that is just enough for the asynchronous circuit to perform at required performance for the current operating parameter. Figure 1 shows a configuration with feedback. Buffer 20 is on the output side of processing function 22. Data input I and data output O are shown. Filling degree of buffer 20 provides a feedback control signal on line(s) 24 to voltage regulator 26. In this way supply voltage V i is aptly regulated to actual powering voltage V o by voltage regulator 26. By itself, regulating a voltage level as starting from a constant voltage source is known to the skilled art worker, in view of regulating the output of a varying voltage source to a standard output voltage. By itself, also, the supply voltage need not be higher than the voltage applied to the electronic circuitry. It is conventional practice to convert a battery or other supply voltage to either a higher voltage or a lower voltage for application to the electronic circuit elements. For brevity no such conversion has been detailed on the level of the electronic circuitry. For example, a standard voltage of 5 volts could be controlled anywhere between 4 volts and 5 volts or even a little bit higher than 5 volts. Likewise, Figure 2 shows an embodiment with a feedforward control signal that is codirectional with the data flow; Figures 1 and 2 have an identical complement of blocks and signal lines apart from the interchange of blocks 20 and 22. Note that the nature of the control signals on lines 24, 28 is different inasmuch as in Figure 1 a fuller buffer would slow down the processing speed, wherein in Figure 2 a fuller buffer would speed up the processing speed. Like in Skov and Newman, supra, the control system prefers the filling degree of the buffer roughly half-way. However another preferred filling degree is feasible as well. A few examples of situations where the invention can provide remarkable benefits: • Error correction: most input provided to an error corrector can be error free. In this situation only error detection and no correction is needed. The resulting reduced data processing can be done at low speed with reduced supply voltage. Depending on actual needs, the buffer may be either on the input, or on the output side of the processing circuitry. Another specific aspect of error protection by error corrective codes is the trend to use the same circuitry for encoding as well as for decoding, inasfar as this suits the transfer medium (magnetic storage, two-way IR or radio wave communication digital telephone, CD recordable and the like). Obviously, the processing requirements may be different in the two directions. • High speed dubbing. Only in the situation of high speed dubbing, the supply voltage needs to be increased for the required additional performance. For normal playing conditions, the voltage will be reduced. Figure 3 shows an exemplary embodiment of the control mechanism. Processing function 30 receives data Di and produced data Do. These are temporarily stored in buffer 32 before outputting on line 36. The latter can operate synchronously, such as for outputting audio or video. Alternatively, line 36 carries a handshaking protocol with a data destination not shown. Herein, the initiative can be with the buffer itself or with the data destination device. Buffer 32 outputs four filling degree signalizations as shown that become logic 1 at 1/4, 1/2, 3/4 and 1/1 filling degree, respectively as shown. AND-gates 40..46 combine these with periodic signals of various duty cycles, as shown. The AND-function is transmitted through OR-gate 48 for controlling element 34. This outputs a continuously high voltage at a complete filling of buffer 32, varying to a 50% duty cycle signal at a filling degree of 1/4 or less. Controlling element 34 receives battery voltage V i and outputs actual powering voltage V o that is controlled as required. In consequence, the control is effectively two-tiered: first, the filling degree of the buffer controls the duty cycle.Second, the duty cycle controls the effective powering voltage. Figure 4 is a block diagram of an error correction device, for example such as used for compact disc digital audio. Block 50 is the compact disc interface that outputs a stream of 8 bit symbols that consists of data symbols and parity symbols of a cross-interleaved Reed-Solomon code. It may also output reliability indicators on symbol basis and further signalizations that may be used for the decoding, but that are not discussed further. Block 52 represents a first level buffer that interfaces between block 50 and central decoder/router 54. Information received from buffer 52 is forwarded by central element 54 to RAM storage 60 that contains intermediate information of various categories: symbols before decoding symbols of words that are still being decoded symbols of fully decoded words that have not yet been called up for outputting. To this effect, block 60 receives addresses from block 54 and communicates data bidirectionally with block 54. There is consistent data flow equalization between blocks 50, 52 which means that total filling degree of block 52 is approximately constant. Any deviation is signalled on line 66 to the Compact Disc interface and will control the speed of the turntable thereof. Such variations of course are on a relatively long timescale in view of the rotational inertia of the turntable. Block 58 represents the user output buffer that operates in FIFO-organization. In contradistinction thereto, block 60 operates according to random accessibility in view of CD's complex interleaving and scrambling techniques. Block 68 is the synchronous user-oriented interface inclusive of such elements as digital-analog conversion. Block 54 contains the decoder proper that routes and processes channel symbols cum associated reliability flags. By itself the processing may be along conventional ways. The processing result is either correct symbols or unreliable symbols with associated flags. In case of unreliable symbols, further measures may be interpolating or muting. This may be done either within decoder 54 or within user interface 68. As soon as a multi-symbol word is completely decoded, the symbols thereof may be outputted from RAM 60 to output buffer 58 under synchronization by the internal clock of system 54. In view of the different complexity of the decoding on a word by word basis, this makes the data outputting rate from RAM 60 rather irregular. This irregularity is then smoothed out by the output buffer of block 58. Block 58 is read out by a synchronous clock to maintain reproduction pitch constant. This clock has not been shown for brevity. A filling degree signal is output on line 62, which as indicated in the foregoing, may control the powering voltage of blocks 54, to influence its operating speed. In the example, it is understood that operating frequency of RAM 60 is always sufficient to cope with the access requirements from block 54. In the opposite case, the powering voltage of RAM 60 should be controlled as well. It should be noted that the control by the filling degree signal from output buffer in block 58 operates on a relatively short time scale. The control of the turntable via line 66 operates on a much longer time scale. The ratio may be a factor of 10 or more. One of the relevant parameters is the size of the various buffers: the larger the storage in block 58, the slower and smaller the variations of the powering voltage. It has been found for CMOS-circuitry that power consumption varies as the square of the powering voltage. This means that larger variations in powering voltage level will increase power consumption. To a certain degree, therefore, power consumption in an apparatus according to the present invention would decrease for a larger buffer size. In the arrangement, certain provisions may have two or all of storage 52, 58, 60 as part of a single storage subsystem while keeping the controls and data paths as shown. From the foregoing, it would also be obvious that controlling powering voltage level according to an on/off scheme is very unattractive. First it would lead to a higher overall power consumption as explained supra. Second it could give rise to dynamic problems related to the starting and termination, respectively, of the processing. Third, the input system 50 could not be controlled instantaneously, so its continuous data input would have to be served anyway. All of these arguments favour a more gradual control policy. Actual granularity of the control mechanism is a trade off between optimum operation versus necessary investment. Figure 5 is an energy consumption diagram for the arrangement of Figure 4. The vertical lines relate the energy consumption for each of a series of sequential operations. Figure 5A relates to a word (28 symbols of 8 bits each); powering voltage for Figures 5A, 5B is identical. At 70 there is initialization and resetting. Each of lines 72 relates to the multiplying of one symbol with the parity check matrix. At 74 the syndromes are checked and -zero- errors are detected. At 76 the decoding is ready and dissipation is essentially zero until decoding of the next code word commences. In practice, the operations during intervals 70, 72, 74 and their relations to power consumed are somewhat more complicated, but the overall trend of power consumption is as shown, just to prove the advantages of the present invention, whereas the decoding proper has been described in numerous instances elsewhere. The pattern in Figure 5B corresponds thereto in parts 70, 72. At 78 incorrectness is detected and the decision is made to effect a Chien search. At 80 for each symbol location the Chien search locator is evaluated. At 82 the errors located are corrected and the word is outputted. At 84 power consumption is virtually zero. Again, another error correction algorithm would produce a similar pattern, in particular, in that the number of processing cycles would be much greater, each such processing cycle taking a generally uniform amount of energy consumption. As shown, the processing in Figure 5B takes twice as much time. Therefore, in Figure 5A the powering voltage may be reduced so that both operations would need equal time. Of course, this cannot be done on the basis of a single word or frame, but only on the filling degree of the buffer. Generally, in CMOS the power goes as the square of the voltage. Various other factors may also influence the number of processing steps in decoding a compact disc word: the policy to be followed: certain words are signalled beforehand as easy, difficult, and hopeless, respectively; certain words carry clues as to where probably errors are located. All this would influence policy. Further, it has been contemplated to use the decoder hardware for encoding. This can be done by considering the locations of the parity symbols as error locations that are known beforehand. Now, a CD code word has four parity symbols to correct two errors at unknown locations or four erasures of which the locations were known. This means that during such encoding the number of pseudo erasures is twice as high as during normal error decoding. This would tend to make encoding more complicated and so, more time-consuming than normal decoding. Recapitulating, the invention may be applied in many fields of use, including portable apparatus, battery apparatus, consumer electronics apparatus, telephone apparatus that is based on a conversion key, table of expression set (such demodulation by table, or decoding by means of public key or parity check matrix), dubbing based apparatus, broadcast reception, infrared reception apparatus, audio/video apparatus. The circuitry may be in various technology, such as ECL, CMOS, bipolar or various others.

Claims: An apparatus comprising a data source means (22, Fig, 1), feeding buffer means (20) for intermediate storage of data and subsequent outputting thereof, and comprising feedback means (24, 26) for, under control of a filling degree signal of said buffer means (20),dynamically controlling the data generating rate of said data source means (22), wherein said feedback means (24, 26) controls the actual powering voltage (Vo) of said data source means (22), which powering voltage (Vo) directly controls the overall data generating rate of said data source means (22), characterized in that said data source means (22) comprises integrated digital data processing electronic circuitry comprising self-timed circuit elements. An apparatus comprising buffer means (20, Fig.2) for receiving and intermediate storing of data and subsequent outputting thereof to data processing means (22), and comprising feedforward means (28, 26) for, under control of a filling degree signal of said buffer means (20), dynamically controlling the data handling rate of said data processing means (22), wherein said feedforward means (28, 26) controls the actual powering voltage (Vo) of said data processing means (22), which powering voltage (Vo) directly controls the overall data handling rate of said data processing means (22), wherein said data processing means (22) comprises integrated digital data processing electronic circuitry comprising self-timed circuit elements. An apparatus as claimed in Claim 1 or 2, wherein said self-timed circuit elements are delay-insensitive elements. An apparatus as claimed in Claim 3, wherein said delay-insensitive elements have interelement interfacing by handshake means. An apparatus as claimed in any one of Claims 1 to 4 and executed as battery-powered apparatus. An apparatus as claimed in any one of Claims 1 to 5 and executed as portable apparatus. An apparatus as claimed in any one of Claims 1 to 6 and wherein said data processing electronic circuitry is programmed for data conversion as based on a conversion key, conversion table or conversion expression set. An apparatus as claimed in any one of Claims 1 to 7 wherein said circuitry is based at least partly on CMOS technology. An apparatus as claimed in any one of Claims 1 to 8 and combined with stop-go control means based upon a further filling degree signal of said buffer effective on said electronic circuitry.

Inventors: NIESSEN CORNELIS, VAN BERKEL CORNELIS HERMANUS, NIESSEN, CORNELIS, VAN BERKEL, CORNELIS HERMANUS
Applicants: PHILIPS ELECTRONICS NV, PHILIPS ELECTRONICS N.V.
Application year: 1992
Main classification: G06F5
IPC codes: G06F13, G06F1, G06F5