Building blocks for current-mode implementation of VLSI fuzzy microcontrollers
Abstract
A fuzzy microcontroller is presented implementing a simplified inference mechanism. Fuzzification, rule composition and defuzzification are carried out by means of (basically) analog current-mode CMOS circuits operating in strong inversion. Also a voltage interface is provided with the external world. Combining analog and digital techniques allow a programming capability.
Full text
BUILDING BLOCKS FOR CURRENT-MODE IMPLEMENTATION OF VLSI FUZZY MICROCONTROLLERS J. L. Huertas, S. Sánchez Solano, I. Baturone, A. Barriga Instituto de Microelectrónica de Sevilla - Centro Nacional de Microelectrónica Avda. Reina Mercedes s/n, (Edif. CICA) E-41012, Sevilla, Spain Fifth International Fuzzy Systems Association World Congress (IFSA’93), Vol. II, pp. 929-932, Seoul - Korea, July 4-9 1993. This material is presented to ensure timely dissemination of scholarly and technical work. Copyright and all rights therein are retained by authors or by other copyright holders. All persons copying this information are expected to adhere to the terms and constraints invoked by each author’s copyright. In most cases, these works may not be reposted without the explicit permission of the copyright holder.
Building Blocks for Current-Mode Implementation of VLSI Fuzzy Microcontrollers J. L. Huertas, S. Sánchez-Solano, I. Baturone, A. Barriga Dept. of Design of Analog Circuits. Centro Nacional de Microelectrónica, Edificio CICA, Avda. Reina Mercedes s/n, 41012-Sevilla (Spain) Abstract-- A fuzzy microcontroller is presented implementing a simplified inference mechanism. Fuzzification, rule composition and defuzzification are carried out by means of (basically) analog current-mode CMOS circuits operating in strong inversion. Also a voltage interface is provided with the external world. Combining analog and digital techniques allow a programming capability. I. INTRODUCTION The application of inference techniques based on fuzzy logic to real-time control problems requires specialized hardware realizations tailored to the fuzzy paradigm. Most fuzzy microcontrollers presently used in industrial applications correspond to digital implementations. A main reason for this is the many advantages derived from sound design techniques, flexible programmability, and easy connection to digital processing environments. However, resorting to analog techniques might give better results since fuzzy logic is intrinsically more alike the multivalued and continuous world than to the digital one. This may allow to design circuits with a better ratio “silicon area/inference speed”, eliminating as well the need for A/D and D/A interfacing. Adapting fuzzy control concepts to fit microelectronics constraints, both in terms of architecture and circuitry, has been a major issue in this field. There have been reported fuzzy controllers implemented by massively parallel structures for both evaluating the control rule contributions and handling the fuzzy information employed by the consequents [1]. The huge size of parallel implementations can be substantially reduced when a series architecture is used, as the one proposed by the authors in [2], since there is possible to establish a trade-off between silicon area and operation speed. A different issue is related to simplifying the algorithms employed for the inference process. When we evaluate the controller output, if we do not disregard the contribution of the pertenence functions overlapping zones, and if, in addition, these functions are symmetrical, a center of gravity calculation is equivalent to compute the center of the maximum values for the different functions. From a mathematical viewpoint, this is equivalent to substitute the pertenence functions representing the rule consequent linguistic label by a singleton membership function located in the point where the original function reaches a maximum. This simplified inference procedure is much more adequate for controller hardware implementations [3]. Concerning circuit design methodologies, current-mode techniques are specially suited for a direct implementation of the arithmetic operations (addition and subtraction) needed by the basic fuzzy operators. Working in currentmode, dynamic range problems can be handled very flexibly, in a manner which does not depend upon bias voltage values; also, a high operation speed can be attained. Another important feature that worth considering is the controller interfacing capability with existing devices. In this sense, although some sensors (actuators) provide (accept) currents, most applications require voltages as the control variables. Another essential issue to guarantee a broad application spectrum for a controller is its programming capability, in such a way that it can be adapted to solve many problems without demanding complex adjusting procedures. The aim of this communication is to describe a hardware realization for a fuzzy controller implementing a simplified inference mechanism. Although the processes of fuzzification, rule composition and defuzzification are performed by current-mode circuits, this system provides voltage-to-current interfacing at its inputs and current-to-voltage at its outputs. Programming functionalities are added by combining analog and digital techniques, giving rise to a versatile microcontroller. II. ARCHITECTURE DESCRIPTION The fuzzy microcontroller we are about to describe is based on rules: If x1 is Ai and/or x2 is Bi and/or ... Then z is Ci where xi are input variables, z is the output variable, Ai,Bi, ... are linguistic labels represented by pertenence functions, and Ci are discrete values associated to the consequents. The contribution from a given control rule (zi) is calculated by multiplying the consequent Ci by the rule activation degree, hi. The latter, in turn, is a function of the inputs
pertenence degree and of the connectives among the different antecedents. Hence, the controller output can be calculated by the expression: z = ∑ Ci hi / ∑ hi(1) Figure 1 represents a block diagram for an architecture implementing the described inference algorithm. Circuit structures for each block in Figure 1 will be detailed in the next Sections. III. MEMBERSHIP FUNCTION CIRCUITS A simple manner to implement a Membership Function Circuit is shown in Figure 2. Inputs are voltages and outputs are currents. The input part is a voltage-to-current converter designed by means of a circuit described in [4]. We use PMOS transistors for a positive slope of the voltage-current relationship, avoiding the substrate effect of transistor M2. Figure 2-a depicts a circuit schematic for the MFC for a triangle-shaped function. Figure 2-b plots the simulated transfer characteristic for the circuit in Figure 2-a. In this example we have assumed one V-I converter element within each MFC. Since the converter circuitry is so simple, an alternative is to use as many converters as rule antecedents exist, and then replicate the resulting current for the different rules. The former can be carried out at the pin interfacing circuitry, thus suggesting that pads for the controller inputs can be designed to perform the voltage to current conversion. IV. RULE EVALUATION CIRCUITRY AND and OR fuzzy operators connecting the control rules are associated to MIN and MAX operations, respectively. Figure 3-a shows a rule evaluation circuit. The left part implements a MIN/MAX operator; the right part is a multiple-output current mirror followed by a set of switches, used to add digital programmability to the consequents, Ci. Figure 3-b depicts experimental results for the MIN/MAX operator. Taking into account that the number of antecedents is usually not too high, and that the simplified inference method requires neither MIN operators to relate antecedents and consequents nor MAX operators to relate all the rules among them, restricting to 2-input operators is not very limiting. Of course, alternatives can be found by adapting voltage-driven multiple-input MAX operators. A candidate is the circuit in [5] using an OTA with multiple outputs in a feedback loop (Figure 4-a). However, when this is the case, stability problems can arise, restricting the circuit applicability. Another alternative is offered by the circuit in [6] and [7], which can be simplified as shown in Figure 4-b where only one diode-connected transistor is used to discharge the common gate node with a reduced power consumption. Fig.1.- Controller Architecture. ∑ Ci hi ÷z From other antecedents From other control rules MFC X2∑ hi MFC X1⊕ ⊕ hi Antecedents Composition Block Consequent Block zi Fig.2.- a) Membership Function Circuit. b) Transfer Characteristic for the MFC. M3 M2 M1 Iin Iaux Vbn T1 T2Iout Iref/m cN 1 : m cN cN Vbp cN Vin Vb (a) (b)
V. DEFUZZIFIER BLOCK Since defuzzifiers are based on division or normalization, it is customary to use circuits based on a global feedback loop where a high-gain element is embedded. However, these circuits are complex and usually prone to instability problems. On the contrary, the defuzzifier we propose herein does require only transistors operating in strong inversion; the circuit output is a voltage and only local feedback loops are used. It is based on a variable transresistance element, and its circuit schematic is given in Figure 5-a. It is formed by three parts (from right to left): a voltage-controlled resistor [8], a current-controlled biasing circuit, and a current squaring [9]. Disregarding the substrate effect (VT1=VT2=VT), Vout can be expressed by: Vout = IB / βR (VB - VSS - 2VT) (2) The voltage supplied by the biasing circuit is: And the squaring circuit output is: I = IA2 / 8 ISS (4) VBVSS 2VT22I β ----++=(3) Fig.3.- a) Rule Evaluation Circuit. b) Experimental Results for MAX and MIN operators. I2 IMIN I1 T1 T2 cP cP IMAX cN cN cP Iout bMbC2 bC1 bC0 Vbn Vbp cN (a) (b) Fig.4.- Current-Mode Multiple-Inputs MAX Operators. a) With a Feedback Loop. b) Based on the Circuit proposed in [6] and [7]. (a) (b) I1I2INImax I1 I2 IN Imax cN
After substituting (3) and (4) into (2): within an operating range 0≤Vout≤VB-VT. Since in our case IB corresponds to ∑Ci hi and IA corresponds to ∑ hi, the operating range can be expressed as: This limitation is not very restrictive, specially because we are working with currents and thus we can scale them easily. Figure 5-b shows a simulation result obtained varying IB with IA as the parameter, taking values from -15 µA to - 40 µA in steps of 5 µA. From the Figure it should be apparent the circuit linearity for this case. VI. CONCLUDING REMARKS A set of circuits have been presented to implement a fuzzy controller handling voltage inputs and outputs but processing currents. This is a way to take advantage of the inherent high speed of current-mode circuitry still retaining voltages as the external controller variables. The different components have been sent to integration, but not all of them have been available yet; for that reason experimental results are given only for some of them. The issue of dynamic range worth considering, since the input range is going from 3 to 4 volts, whilst the output range is from 0 to 1 volts. This must not be a problem because this controller is not intended for driving another controller, in addition, input buffering and level shifting can be added specifically tailored to every application where this controller is going to be used. Vout βISS βR --------------- IB IA ----- ×=(5) β βR ------ ISSCmax VSS VT –()βISS +IA4ISS ≤≤ (6) REFERENCES [1] T. Yamakawa, “High-speed fuzzy controller hardware system: the mega FIPS machine,” Elsevier Science Pub. Comp. Inc., 1988. [2] J. L. Huertas, S. Sánchez-Solano, A. Barriga, I. Baturone, “Serial architecture for fuzzy controllers: hardware implementation using analog/digital VLSI techniques,” 2nd. International Conference on Fuzzy Logic and Neural Networks, Iizuka, 1992. [3] M. Sasaki, N. Ishikawa, F. Ueno, T. Inoue, “Current-mode analog fuzzy hardware with voltage input interface and normalization locked loop”, IEICE Trans. Fundamentals, Vol. E75-A. No 6. June 1992. [4] K. Bult, H. Wallinga, “A class of analog Cmos circuits based on the square-law characteristic of an Mos transistor in saturation”, IEEE SC-22, No 3. June 1987. [5] T. Inoue, F. Ueno and T. Motomura, “Analysis and Design of Analog CMOS Building Blocks for Integrated Fuzzy Inference Circuits”, Proc. IEEE 1990 Int. Symp. Circ. and Syst. [6] A. Andreou, “ Synthetic neural systems using current-mode circuits”, Proc. IEEE 1990 Int. Symp. Circ. and Syst. May 1990. [7] M. Sasaki, F. Ueno, T. Inoue, “ A VLSI realization of fuzzy controller using current-mode circuits”, Trans. IEICE, J73-A. May 1990. [8] Z. Wang, “ Novel voltage-controlled grounded resistor”, Elec. Lett. Vol. 26, No 20. September 1990. [9] R. Wiegerink, “ A Cmos four-quadrant analog current multiplierr”, Proc. IEEE 1990 Int. Symp. Circ. and Syst. Fig.5.- a) Defuzzifier Circuit. b). Input-Output Characteristic for the Circuit in Figure 5-a. Fig. IA ISS Vo 112 IB cN cP (a) (b)
