XX/XE88LC03 Data Sheet XE88LC03 Ultra Low-Power Low-Voltage Microcontroller General Description Key product Features The XE88LC03 is an ultra low-power low-voltage microcontroller unit (MCU) with extremely high efficiency, allowing for 1 MIPS at 300uA at 2.4 V, and 8 x 8 bits multiplying in one clock cycle. * XE88LC03 is available with on chip Multiple-Time-Programmable (MTP) program memory. Applications * * * * * Internet connected appliances Portable, battery operated instruments RF system supervisor Remote control HVAC control * * * * * * * * Ultra low-power MCU * 300 uA at 1 MIPS operation * 6 uA at 32 kHz operation * 1 uA time keeping Low-voltage operation (2.4 - 5.5 V supply voltage) 22 kB (8 kW) MTP, 512 B RAM 4 counters PWM UART Analog matrix switching independant RC and crystal oscillators 5 reset, 15 interrupt, 8 event sources Ordering Information Nomenclature: (XX identifies pre-production products) XE88LC03ME012 package: 015: SO28 026: TQFP32 program memory temperature M: MTP I: -40 to 85 C Cool Solutions XEMICS SA, Switzerland. Tel: +41 32 720 51 70 Fax: +41 32 720 57 70 e-mail: info@xemics.com web: www.xemics.com Low-Power Microcontroller XX-XE88LC01 30 1 2 3 4 28 26 24 XEMICS 22 XX88LC03MI N9K1444 7 9920 5 20 10 12 14 production lot identification packaging date 6 8 device type 18 16 Pinout of the XX-XE88LC03 in TQFP32 package VBat VReg TEST/VHigh OSCout OSCin/FREQin Vgnd PA[0] PA[1] PA[2] PA[3] PA[4] PA[5] PA[6] PA[7] 28 27 26 25 24 23 22 21 20 19 18 17 16 15 RCRes RESET PB[7] PB[6] PB[5] PB[4] PB[3] PB[2] PB[1] PB[0] PC[3] PC[2] PC[1] PC[0] Pinout of the XX-XE88LC03 in SOP28 package Pin Second function name Position in SO28 Position in TQFP32 Function name 1 2 13 14 Vbat Vreg 3 15 TEST/Vhigh Vhigh Special 4 16 OscOut ptck Analog/Input 5 17 OscIn ck_cr Analog/Input 6 18 Vss 7 19 PA(0) testin Input 8 20 PA(1) testck Input 9 21 PA(2) Input Type Power Analog Power 10 22 PA(3) Input 11 12 13 14 15 16 17 18 23 24 25 26 27 28 29 30 31 32 1 2 PA(4) PA(5) PA(6) PA(7) PC(0) PC(1) PC(2) PC(3) PC(4) PC(5) PC(6) PC(7) Input Input Input Input Input/Output Input/Output Input/Output Input/Output Input/Output Input/Output Input/Output Input/Output 19 3 PB(0) 20 4 PB(1) testout 1 2 3 4 5 6 7 8 9 10 11 12 13 14 XEMICS XX88LC03xI015 9920 Detailed Pin Description Input/Output/Analog Input/Output/Analog Description Positive power supply Regulated supply Test mode/High voltage for MTP programing Connection to Xtal/ Peripheral clock for test and MTP programing Connection to Xtal/ CoolRISC clock for test and MTP programing Negative power supply, connected to substrate Input of Port A/ Data input for test and MTP programing/ Counter A input Input of Port A/ Data clock for test and MTP programing/ Counter B input Input of Port A/ Counter C input/ Counter capture input Input of Port A/ Counter D input/ Counter capture input Input of Port A Input of Port A Input of Port A Input of Port A Input-Output of Port C Input-Output of Port C Input-Output of Port C Input-Output of Port C Input-Output of Port C Input-Output of Port C Input-Output of Port C Input-Output of Port C Input-Output-Analog of Port B/ Data output for test and MTP programing/ PWM output Input-Output-Analog of Port B/ PWM output Pin-out of the XX-XE88LC03 in SO28 and TQFP32 XX/D010-060 Product Preliminary Specification Page 2 Low-Power Microcontroller XX-XE88LC01 Pin Second function name Description Position in SO28 Position in TQFP32 Function name 21 5 PB(2) 22 6 PB(3) SOU Input/Output/Analog 23 7 PB(4) SCL Input/Output/Analog 24 8 PB(5) SIN Input/Output/Analog 25 9 PB(6) Tx Input/Output/Analog 26 10 PB(7) Rx Input/Output/Analog 27 28 11 12 RESET RCRes Type Input/Output/Analog Input Analog Input-Output-Analog of Port B Input-Output-Analog of Port B, Output pin of USRT Input-Output-Analog of Port B/ Clock pin of USRT Input-Output-Analog of Port B/ Data input or input-output pin of USRT Input-Output-Analog of Port B/ Emission pin of UART Input-Output-Analog of Port B/ Reception pin of UART Reset pin (active high) Optional external resistor for RC oscillator Pin-out of the XX-XE88LC03 in SO28 and TQFP32 XE88LC03xI Electrical Characteristics Operation conditions Power supply min typ 2.4 CPU running at 1 MIPS Current requirement MTP CPU running at 32 kHz on Xtal, RC off CPU halt, timer on Xtal, RC off CPU halt, timer on Xtal, RC ready CPU halt, Xtal off timer on RC at 100 kHz Voltage level detection Prog. voltage Erase time Write/Erase cycles Data retention 10.3 10 10 3 100 max Unit Remarks 5.5 V 1 310 uA 1 10 uA 1 1 uA 1 1.7 uA 1 1.4 uA 1 15 uA 1 10.8 30 V s year Current requirement of the XE88LC03 Note: 1)Power supply: 2.4 V - 5.5 V, at 27C; min voltage of XX version may be higher. CPU The XE88LC03 CPU is a low power RISC core. It has 16 internal registers for efficient implementation of the C compiler. Its instruction set is made of 35 generic instructions, all coded on 22 bits, with 8 addressing modes. All instruc- XX/D010-060 Product Preliminary Specification Page 3 Low-Power Microcontroller XX-XE88LC01 tions are executed in one clock cycle, including conditional jumps and 8x8 multiplication, therefore the XE88LC03 runs at 1 MIPS on a 1 MHz clock. A complete tool suite for development is available from XEMICS, including programmer, C-compiler, assembler, simulator, linker, all integrated in a modern and efficient graphical user interface. NAME JUMP Jcc CALL CALLS Parameters res op1 op2 addr:16 ip addr:16 ip addr:16 ip addr:16 ip PC0 <- addr PC0 <- ip if cc then PC0 <- addr if cc then PC0 <- ip PCn <- PCn-1 (n>1), PC1 <- PC0+1, PC0 <- addr PCn <- PCn-1 (n>1), PC1 <- PC0+1, PC0 <- ip ip <- PC0+1, PC0 <- addr:16 ip <- PC0+1, PC0 <- ip PCn-1 (n>0) <- PCn PC0 <- ip PCn-1 (n>0) <- PCn, GIE <- 1 PCn <- PCn-1 (n>1), PC1 <- ip, PC0 <- PC0+1 ip <- PC1, PCn-1 (n>1) <- PCn, PC0 <- PC0+1 RET RETS RETI PUSH POP MOVE CMVD CMVS SHL SHLC SHR SHRC SHRA CPL1 CPL2 CPL2C INC INCC reg, data:8 reg1, reg2 reg, eaddr eaddr, reg addr:8, data:8 reg1, reg2 reg, eaddr reg1, reg2 reg reg, eaddr reg1, reg2 reg reg, eaddr reg1, reg2 reg reg, eaddr reg1, reg2 reg reg, eaddr reg1, reg2 reg reg, eaddr reg1, reg2 reg reg, eaddr reg1, reg2 reg reg, eaddr reg1, reg2 reg reg, eaddr reg1, reg2 reg reg, eaddr reg1, reg2 reg reg, eaddr FUNCTION reg reg1 reg eaddr addr reg1 reg reg1 reg reg reg1 reg reg reg1 reg reg reg1 reg reg reg1 reg reg reg1 reg reg reg1 reg reg reg1 reg reg reg1 reg reg reg1 reg reg data reg2 eaddr reg data reg2 eaddr reg2 reg eaddr reg2 reg eaddr reg2 reg eaddr reg2 reg eaddr reg2 reg eaddr reg2 reg eaddr reg2 reg eaddr reg2 reg eaddr reg2 reg eaddr reg2 reg eaddr MODIF. -,-,-,- -,-,-,- -,-,Z,a res <- op1 -,-,-,if C=0 then res <- op1 if C=1 then res <- op1 -,-,Z,a res(bitn) <- op1(bitn-1) (0= shift), reg(bitn) <- reg (bitn+8-shift) for (bitn < shift) reg(bitn) <- reg(bitn+shift) for (bitn + shift < 8), a(bitn) <- reg (bitn-8+shift) for (bitn + shift >= 8) a <- SHRA(shift,reg), a <- SHL(8-shift,reg), SHRA propagates sign, do not use with shift=0x01 reg data reg1 reg2 reg eaddr if op2 > op1 then C <- 0, V = C AND NOT(Z), unsigned -, -, -, a -, -, -, a -, -, -, a C, V, Z, a Table 1.2: XE8000 Instruction Set XX/D010-060 Product Preliminary Specification Page 5 Low-Power Microcontroller XX-XE88LC01 NAME Parameters CMPA TSTB SETB CLRB INVB SFLAG RFLAG FREQ HALT NOP PMD res reg, data:8 reg1, reg2 reg, eaddr reg, bit:3 reg, bit:3 reg, bit:3 reg, bit:3 reg eaddr divn:4 op1 op2 FUNCTION MODIF. reg data reg1 reg2 reg eaddr if op2 > op1 then C <- 0, V = C AND NOT(Z), signed C, V, Z, a Z <- NOT(reg(bit)) reg(bit) <- 1 reg(bit) <- 0 reg(bit) <- NOT(reg(bit)) a(7) <- C, a(6) <- C XOR V -, -, Z, a -, -, Z, a -, -, Z, a -, -, Z, a -, -, -, a flags <- op1, SHL op1, SHL a C, V, Z, a set cpu frequency divider stops CPU no operation if s=1 then starts program dump, if s=0 stops program dump -, -, -, -, -, -, -, -, -, -, -, -, - reg eaddr s:1 Table 1.2: XE8000 Instruction Set Memory organisation Program memory 8k instructions Data address bus Program address bus The CPU uses a Harvard architecture, so that memory is organised in two separated fields: program memory and data memory. As both memory are separated, the central processing unit can read/write data at the same time it loads an instruction. Peripherals and system control registers are mapped on data memory space. Program memory is made in one page. Data is made of several 256 bytes pages. RAM 512 Bytes CPU Peripherals CPU Instruction pipeline registers 22 bits wide Registers 8 bits wide Memory organization Program memory The program memory is implemented as Multiple Time Programmable (MTP) Flash memory. The power consumption of MTP is linear with the access frequency (no static current). Memory sizes: * Flash MTP: 8192 x 22 bits (= 22 kBytes) block size address MTP 8192 x 22 H0000 - H1FFF Program addresses XX/D010-060 Product Preliminary Specification Page 6 Low-Power Microcontroller XX-XE88LC01 Data memory The data memory is implemented as static Random-Access Memory (RAM). The size is 512 x 8 bits plus 8 low power RAM bytes that require very low current when addressed, programs using this low power RAM instead of regular RAM will spare even more current. Note: The registers in Data memory are not related to the CPU registers. block size address LP RAM RAM 8x8 512 x 8 H0000 - H0007 H0080 - H027F RAM addresses Peripherals mapping block size address LP RAM System control Port A Port B Port C Port D MTP Event Interrupts control reserved UART Counters reserved reserved reserved Other (VLD) RAM1 RAM2 RAM3 8x8 16x8 8x8 8x8 4x8 4x8 4x8 4x8 8x8 8x8 8x8 8x8 8x8 12x8 8x8 H0000-H0007 H0010-H001F H0020-H0027 H0028-H002F H0030-H0033 H0034-H0037 H0038-H003B H003C-H003F H0040-H0047 H0048-H004F H0050-H0057 H0058-H005F H0060-H0067 H0068-H0073 H0074-H007B 4x8 H007C-H007F 128x8 256x8 128x8 H0080 - H00FF H0100 - H01FF H0200 - H027F Page Page 0 Page 1 Page 2 Peripherals addresses Peripherals The XE88LC03 includes usual microcontroller peripherals and some other blocks more specific to low-voltage or mixed-signal operation. They are 3 parallel ports, one input port (A), one IO and analog port (B) with analog switching capabilities and one general purpose IO port (C). A watchdog is available, connected to a prescaler. Four 8-bit counters, with capture, PWM and chaining capabilities are available. The UART can handle transmission speeds as high as 38kbaud. Low-power low-voltage blocks include a voltage level detector, two oscillators (one internal 0.1-4 MHz RC oscillator and a 32 kHz crystal oscillator) and a specific regulation scheme that largely uncouples current requirement from external power supply (usual CMOS ASICs require much more current at 5.5 V than they need at 2.4 V. This is not the case for the XE88LC03). XX/D010-060 Product Preliminary Specification Page 7 Low-Power Microcontroller XX-XE88LC01 XE8000 Family Features The main characteristics of the XE8000 MCU family is * Ultra low power operation * Low voltage operation (1.2 V for the XE88LC04, XE88LC06 and XE88LC07, 2.4 V for the others) * High efficiency CPU * 1 instruction per clock cycle, for all instructions * 22 bits wide instructions * Integrated 8x8 -> 16 bits multiplier * All instructions on one page * 8 bits data bus * 8 addressing modes * MTP (multiple time programmable) memory available * Dual clock (X-tal and/or RC) * Each peripheral can be set on/off individually for minimal power consumption * UART * Watch dog * 4x8 bits timers with PWM ability * Advanced acquisition path * Fully differential analog signal path on signal and reference * 4x2 or 7x1 + 1 signal input * 2x2 reference input * 0.5 - 1000 programmable gain amplifier * Offset programmed over +- 10 full scale * 5 - 16 bits resolution ADC * Low speed modes with reduced bias current for minimal power consumption * Bias and signal DACs for resistive bridge sensing and analog output * Complete development tools using Windows95 or NT graphical interface * Assembler * ANSI-C compiler * Source level debugger * Current and memory usage monitoring (Profiler) * CPU Simulator * Programmer and starter kit (XE88LC03ProStart) Family The XE8000 Family ultra low-power microcontroller is made of several members, all using the same microprocessor core and differing by the peripherals available. The XE88LC01 is a low power sensing microcontroller, based on the XE88LC03, with an advanced acquisition path including differential programmable gain amplifiers and a high resolution analog to digital converter. Its main applications are dataloggers and process control. The XE88LC02 is a low power sensing microcontroller, based on the XE88LC06 with the analog part of the XE88LC01, with an additional LCD driver. Its main applications are metering and dataloggers. TThe XE88LC03 is a low power, low voltage, general purpose microcontroller. Its main points are the very efficient CoolRISC core, the low voltage function and the real time clock. Its main applications are low voltage control and supervision. XX/D010-060 Product Preliminary Specification Page 8 Low-Power Microcontroller XX-XE88LC01 The XE88LC04 is a low power, low voltage, general purpose microcontroller, based on the XE88LC06, with an additional LCD driver. Its main points are the very efficient CoolRISC core, the low voltage function and the real time clock. Its main applications are low voltage control and supervision. The XE88LC05 is a low power sensing microcontroller, based on the XE88LC01, with analog outputs. Its main applications are piezoresistive sensors and 4 - 20 mA loops systems. The XE88LC06 is an improved XE88LC03, with 4 low power analog comparators. Its main applications are low voltage control and supervision. The XE88LC07 is a smaller and even lower power microcontroller, based on the XE88LC06, with less memory. XE88LC01 Supply voltage 2.4 - 5.5 V Max speed Operating temperature 2 MIPS -40 - 85 C XE88LC02 PWM Package TQFP44, die Availability yes XE88LC04 XE88LC05 1.2- 5.5 V for ROM 2.4 - 5.5 V 2.4 - 5.5 V 2.4 - 5.5 V 2.4 - 5.5 V for MTP 4 MIPS 2 MIPS 4 MIPS at 2.4 V 2 MIPS -40 - 85 C -40 - 85 C -40 - 85 C -40 - 85 C -40 - 125 C -40 - 125 C CoolRISC 816, CoolRISC 816, CoolRISC 816, CoolRISC 816, 22 bits 22 bits 22 bits 22 bits instructions instructions instructions instructions 8 bits data 8 bits data 8 bits data 8 bits data HW multiplier HW multiplier HW multiplier HW multiplier 8k Instruction 8k Instructions 8k Instructions 8k Instructions = 22 kB = 22 kB = 22 kB = 22 kB ROM or MTP ROM or MTP ROM or MTP ROM or MTP 768 + 8 Bytes 512 + 8 Bytes 768 + 8 Bytes 512 + 8 Bytes 8 input and 8 input and 8 input and 8 input and external interrupt external interrupt external interrupt external interrupt 8 input/output and 8 input/output and 8 input/output and 8 input/output and analog analog analog analog 8 input/output 4 to 8 input/output 4 to 8 input/output 8 input/output yes yes yes yes CoolRISC 816, 22 bits CPU instructions 8 bits data HW multiplier 8k Instructions Program memory = 22 kB ROM or MTP Data memory 512 + 8 Bytes 8 input and Port A external interrupt 8 input/output and Port B analog Port C 8 input/output Watchdog timer yes General purpose 4 x 8 bits 4 x 8 bits timers with PWM UART yes yes transition transition 2-3 wires serial detection detection interface + software + software Voltage level yes yes detector 32 kHz quartz, 32 kHz quartz, Oscillators internal RC internal RC LCD drivers 120 segments Port B and Port B and Analog mux 4x2 or 7x1+1 4x2 or 7x1+1 LP comparators 4 PGA gain 0.5 - 1000 gain 0.5 - 1000 5 - 16 bits 5 - 16 bits ADC resolution resolution DAC XE88LC03 4 x 8 bits 4 x 8 bits 4 x 8 bits yes transition detection + software yes transition detection + software yes transition detection + software yes yes yes 32 kHz quartz, internal RC 32 kHz quartz, internal RC 120 segments 32 kHz quartz, internal RC Port B Port B Port B and 4x2 or 7x1+1 4 PWM PWM samples Q2/01 SO28, TQFP32, die yes PWM gain 0.5 - 1000 5 - 16 bits resolution PWM 8 bit bias DAC, 4 - 16 bits signal DAC TQFP64, die samples Q2/01 yes Table 1.3: List of the XE8000 family members functions XX/D010-060 Product Preliminary Specification Page 9 Low-Power Microcontroller XX-XE88LC01 Contacting XEMICS You can contact XEMICS at XEMICS SA Tel: +41 32 720 5170 Fax: +41 32 720 5770 E-mail: info@xemics.ch You will find more information about the XE88LC03 and other XEMICS products, as well as addresses of our representatives and distributors for your region on www.xemics.ch. Copyright XEMICS All rights are reserved. Reproduction whole or in part is prohibited without the prior written consent of the copyright owner. The information presented in this document does not form part of any quotation or contract, is believed to be accurate and reliable and may be changed without notice. No liability will be accepted by the publisher for any consequence of its use. Publication thereof does not convey nor imply any license under patent- or other industrial or intellectual property rights.Printed in Switzerland. XX/D010-060 Product Preliminary Specification Page 10 Low-Power Microcontroller XX-XE88LC01 XX/D010-060 Product Preliminary Specification Page 11