INTEGRATED CIRCUITS DATA SHEET TDA8030; TDA8031 USB smart card reader (OTP or ROM) Product specification 2003 Jul 04 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) CONTENTS TDA8030; TDA8031 8.5 8.5.1 8.5.2 8.5.3 8.5.4 8.5.5 8.5.6 8.5.7 8.5.8 8.5.9 USB INTERFACE End-points Phase-locked loop Bit clock recovery Interface signals with the microcontroller Block diagram USB registers Instruction set Analog interface Suspend mode 9 LIMITING VALUES 10 THERMAL CHARACTERISTICS 1 FEATURES 2 APPLICATIONS 3 GENERAL DESCRIPTION 4 ORDERING INFORMATION 5 QUICK REFERENCE DATA 6 BLOCK DIAGRAM 7 PINNING 7.1 7.2 TDA8030 TDA8031 8 FUNCTIONAL DESCRIPTION 11 CHARACTERISTICS ISO7816 UART AND ASSOCIATED LOGIC Interface control Control registers General registers ISO UART REGISTERS CARDS REGISTERS Registers summary SUPPLY Power switch control 3.3 V regulator DC-to-DC converter Supply supervisor ISO7816 SECURITY Introduction Protections and limitations Activation sequence Deactivation sequence MICROCONTROLLER Low power modes 12 APPLICATION INFORMATION 13 PACKAGE OUTLINE 14 SOLDERING 14.1 Introduction to soldering surface mount packages Reflow soldering Wave soldering Manual soldering Suitability of surface mount IC packages for wave and reflow soldering methods 8.1 8.1.1 8.1.2 8.1.3 8.1.4 8.1.5 8.1.6 8.2 8.2.1 8.2.2 8.2.3 8.2.4 8.3 8.3.1 8.3.2 8.3.3 8.3.4 8.4 8.4.1 2003 Jul 04 14.2 14.3 14.4 14.5 2 15 DATA SHEET STATUS 16 DEFINITIONS 17 DISCLAIMERS Philips Semiconductors Product specification USB smart card reader (OTP or ROM) 1 TDA8030; TDA8031 FEATURES • 83C51 core with 16 kbytes EPROM (ROM); 256 bytes RAM; 512 bytes AUXRAM; Timer 0,1, 2 and enhanced UART • Full speed USB interface device which complies with USB 1.1 specification; accessible with MOVX instructions • Control input and output; 1 generic input and output and 2 generic input end-points • Compatible with bus powered and suspend mode supply current requirements • Current limitations on cards contacts and emergency deactivation in case of over consumption or overheating • Specific ISO7816 UART; accessible with MOVX instructions for automatic convention processing; variable baud rate through frequency or division ratio programming; error management at character level for T = 0 protocol; extra guard time register • Special circuitry for killing spikes during power-on or power-off • VCC generation (5 or 3 V maximum current 55 mA or 1.8 V maximum current 35 mA) with controlled rise and fall times; current limitation and overload detection at 100 mA • Soft switch on for avoiding current inrush at plug in • Supply supervisor for power-on or power-off reset • High efficiency inductive DC-to-DC converter for VCC generation • Enhanced ESD protections on cards contacts (6 kV minimum) • Software library for easy integration within the application. • Cards clock generation with three times synchronous frequency doubling (12, 6, 3 and 1.5 MHz) • Cards clock STOP HIGH or LOW or 1.25 MHz (from an integrated oscillator) for cards power reduction mode 2 • Automatic activation and deactivation sequences through an independent sequencer • Smart card readers for PC’s or Set Top Boxes. • Supports the asynchronous protocols T = 0 and T = 1 in accordance with ISO7816 and EMV 3 GENERAL DESCRIPTION The TDA8030; TDA8031 is a bus powered full-speed USB device. All analog and digital functions for an EMV compliant Smart Card Reader are built-in. The embedded 83C51 microcontroller has 16 kbytes EPROM (ROM for TDA8031), 256 bytes RAM and 512 bytes of AUXRAM. • Versatile 24-bit time-out counter for Answer To Reset (ATR) and waiting times processing • Supports synchronous cards • Specific Elementary Time Unit (ETU) counter for Block Guard Time (BGT) 4 APPLICATIONS ORDERING INFORMATION PACKAGE TYPE NUMBER NAME TDA8030HL LQFP64 DESCRIPTION plastic low profile quad flat package; 64 leads; body 10 × 10 × 1.4 mm TDA8031HL 2003 Jul 04 3 VERSION SOT314-2 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) 5 TDA8030; TDA8031 QUICK REFERENCE DATA SYMBOL PARAMETER CONDITIONS MIN. TYP. MAX. UNIT VDDU bus supply voltage 4.2 − 5.5 V IDDU bus supply current VCC = 5 V; ICC = 40 mA; fclk = 6 MHz − − 100 mA Isus suspend current card inactive; microcontroller in Power-down mode − − 500 µA VCC card supply voltage ICC card supply current including static load; 5 V card 4.75 5 5.25 V with dynamic loads on 200 nF 4.60 − 5.40 V including static loads; 3 V card 2.85 3 3.15 V with dynamic loads on 200 nF 2.75 − 3.25 V including static loads; 1.8 V card 1.64 1.8 1.96 V with dynamic loads on 200 nF 1.62 − 1.98 V 5 V card − − −55 mA 3 V card − − −55 mA 1.8 V card − − −35 mA Ilim current limit on VCC − − 100 mA Iod overload detection on VCC − − 100 mA Tamb ambient temperature −25 − +85 °C 2003 Jul 04 4 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) 6 TDA8030; TDA8031 BLOCK DIAGRAM VDD handbook, full pagewidth 6.8 µH 7 RESET 52 PSEN 53 ALE/PROG LX 31 24 SUPPLY SUPERVISOR 23 VUP STEP-UP CONVERTER 54 EA/VPP CDELAY TIME-OUT COUNTER 8xC51 MICROCONTROLLER 16 kbytes EPROM P10 to P17 P30 to P37 63, 64, 1 to 6 256 bytes RAM 32 to 39 TIMER 0, 1, 2 ISO7816 UART CLOCK CIRCUITRY ENHANCED UART P32/INT0 44 to 51 P20 to P27 P33/INT1 ALE P36/WR 42 CDEC 1 µF DGND 3.3 V LDO VDDU 43 28 UGND 26 INTERFACE CONTROL P37/RD 512 bytes AUXRAM 27 22 POWER SWITCH CONTROL 41 PLL XTAL OSCILLATOR 10 µF D+ D− DELATT 40 29 30 10 USB ATX INTERNAL OSCILLATOR USB INTERFACE 8 9 RFU RFU 11 14 MGU881 RFU RFU Fig.1 Block diagram (TDA8030). 2003 Jul 04 VCC RST CGND CLK I/O C4 C8 PRES TDA8030 12 CPROG VDD 20 21 18 19 13 17 15 16 62 to 55 P00 to P07 VDDD ANALOG DRIVERS AND SEQUENCER 1 µF 25 STGND 5 TEST XTAL1 XTAL2 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) TDA8030; TDA8031 VDD handbook, full pagewidth 6.8 µH 7 RESET 52 PSEN 53 ALE LX 24 SUPPLY SUPERVISOR 23 VUP STEP-UP CONVERTER 54 EA CDELAY 31 TIME-OUT COUNTER 8xC51 MICROCONTROLLER 16 kbytes EPROM P10 to P17 P30 to P37 63, 64, 1 to 6 256 bytes RAM 32 to 39 TIMER 0, 1, 2 ISO7816 UART CLOCK CIRCUITRY ENHANCED UART P32/INT0 44 to 51 P20 to P27 ANALOG DRIVERS AND SEQUENCER 1 µF 25 STGND 20 21 18 19 13 17 15 16 P33/INT1 VCC RST CGND CLK I/O C4 C8 PRES TDA8031 62 to 55 P00 to P07 ALE 42 VDDD CDEC 1 µF DGND 43 P36/WR 3.3 V LDO 512 bytes AUXRAM 27 VDDU 28 UGND 26 VDD INTERFACE CONTROL P37/RD 22 POWER SWITCH CONTROL 41 PLL XTAL OSCILLATOR 10 µF D+ D− DELATT 40 29 30 10 USB ATX INTERNAL OSCILLATOR USB INTERFACE 12 8, 11 9, 14 2 2 RFU RFU MGU882 SCANEN Fig.2 Block diagram (TDA8031). 2003 Jul 04 6 TEST XTAL1 XTAL2 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) 7 TDA8030; TDA8031 PINNING 7.1 TDA8030 SYMBOL PIN DESCRIPTION P12 1 8xC51 general purpose I/O port (USB_MC_READY) P13 2 8xC51 general purpose I/O port (USB_CLK_EN_N) P14 3 8xC51 general purpose I/O port (USB_RESET_N) P15 4 8xC51 general purpose I/O port (USB_SOFTCONNECT_EXT) P16 5 8xC51 general purpose I/O port (available for the application) P17 6 8xC51 general purpose I/O port (available for the application) RESET 7 reset input (active HIGH, integrated pull-down resistor to ground) RFU 8 test pin; leave open-circuit in the application RFU 9 test pin; leave open-circuit in the application DELATT 10 delayed attachment reference signal output for external pull-up resistor on pin D+ (an internal 1.5 kΩ pull-up resistor is already embedded on-chip) RFU 11 test pin; leave open-circuit in the application CPROG 12 connect to GND within the application; for programming the EPROM connect to VDD as well as pin TEST (pin 22); also used for test purposes I/O 13 data input/output from the card (C7); 14 kΩ integrated pull-up resistor connected to VCC RFU 14 test pin; leave open-circuit in the application C8 15 auxiliary I/O for C8 contact; 14 kΩ integrated pull-up resistor connected to VCC PRES 16 card presence detection input (active HIGH; no need for external pull-up) C4 17 auxiliary I/O for C4 contact; 14 kΩ integrated pull-up resistor connected to VCC CGND 18 cards ground (C5) Must be connected to GND CLK 19 clock output (C30) VCC 20 card supply output voltage (ISO C1 contact); must be decoupled with two 100 nF low ESR ceramic capacitors to CGND RST 21 cards reset output (C2) TEST 22 test pin input VUP 23 output of the DC-to-DC converter (decouple with a 1 µF capacitor to STGND) LX 24 DC-to-DC converter inductor connection (a Schottky diode should be tied to VUP) STGND 25 DC-to-DC converter ground connection VDD 26 soft switched positive supply voltage (decouple with 10 µF capacitor to GND) VDDU 27 positive supply voltage for the bus (4.2 to 5.5 V) UGND 28 bus ground D+ 29 USB D+ data line D− 30 USB D− data line CDELAY 31 connection for an external capacitor to ground determining the Power-on reset pulse width (typ 1 ms per 2 nF) P30/RxD 32 8xC51 general purpose I/O port/serial input port (available for the application) P31/TxD 33 8xC51 general purpose I/O port/serial output port (available for the application) P32/INT0 34 8xC51 general purpose I/O port/external interrupt 0 (used by the ISO UART)) P33/INT1 35 8xC51 general purpose I/O port/external interrupt 1 (used by the USB interface) 2003 Jul 04 7 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) SYMBOL PIN TDA8030; TDA8031 DESCRIPTION P34 36 8xC51 general purpose I/O port (USB_SUSPEND in TDA8030) P35 37 8xC51 general purpose I/O port (USB_WAKEUP_N in TDA8031) P36/WR 38 external data memory write strobe P37/RD 39 external data memory read strobe XTAL2 40 12 MHz crystal output; leave open-circuit if an external clock is used XTAL1 41 external 12 MHz crystal connection or input for an external clock signal VDDD 42 3.3 V regulated digital supply voltage output (decouple with 1 µF ceramic capacitor) DGND 43 Digital ground P20/A8 44 8xC51 general purpose I/O port/address 8 (available for the application) P21/A9 45 8xC51 general purpose I/O port/address 9 (available for the application) P22/A10 46 8xC51 general purpose I/O port/address 10 (available for the application) P23/A11 47 8xC51 general purpose I/O port/address 11 (available for the application) P24/A12 48 8xC51 general purpose I/O port/address 12 (available for the application) P25/A13 49 8xC51 general purpose I/O port/address 13 (USB_MP_C) P26/A14 50 8xC51 general purpose I/O port/address 14 (USB_MP_SEL) P27/A15 51 8xC51 general purpose I/O port/address 15 (ISO_UART_CS) PSEN 52 Program Store Enable: read strobe to external program memory when executing code from the external program memory; PSEN is activated twice each machine cycle except when two PSEN activations are skipped during each access to external data memory. PSEN is not activated during fetches from internal program memory. ALE/PROG 53 Address Latch Enable/Program Pulse: output pulse for latching the low byte of the address during an access to external memory. In normal operation ALE is emitted at a constant rate of 1/6 the oscillator frequency and can be used for external timing or clocking. It should be noted that one ALE pulse is skipped during each access to external data memory. This pin is also the program pulse input (PROG) during EPROM programming. ALE can be disabled by setting SFR Auxiliary0. With this bit set ALE will be active only during a MOVX instruction. EA/VPP 54 External Access Enable/Programming Supply Voltage: EA must be externally held LOW to enable the device to fetch code from external program memory locations starting with 0000H. If EA is held HIGH the device executes from internal program memory unless the program counter contains an address greater than 3FFFH (16 kbytes boundary). This pin also receives the 12.75 V programming supply voltage (VPP) during EPROM programming. If security bit 1 is programmed EA will be internally latched on reset. P07/AD7 55 8xC51 general purpose I/O port/address/data 7 P06/AD6 56 8xC51 general purpose I/O port/address/data 6 P05/AD5 57 8xC51 general purpose I/O port/address/data 5 P04/AD4 58 8xC51 general purpose I/O port/address/data 4 P03/AD3 59 8xC51 general purpose I/O port/address/data 3 P02/AD2 60 8xC51 general purpose I/O port/address/data 2 P01/AD1 61 8xC51 general purpose I/O port/address/data 1 P00/AD0 62 8xC51 general purpose I/O port/address/data 0 P10 63 8xC51 general purpose I/O port (USB_INT_MASK) P11 64 8xC51 general purpose I/O port (USB_SOFTCONNECT_INT) 2003 Jul 04 8 Philips Semiconductors Product specification 49 P25/A13 50 P26/A14 51 P27/A15 54 EA/VPP 55 P07/AD7 56 P06/AD6 57 P05/AD5 58 P04/AD4 59 P03/AD3 60 P02/AD2 61 P01/AD1 62 P00/AD0 63 P10 64 P11 handbook, full pagewidth 52 PSEN TDA8030; TDA8031 53 ALE/PROG USB smart card reader (OTP or ROM) P12 1 48 P24/A12 P13 2 47 P23/A11 P14 3 46 P22/A10 P15 4 45 P21/A9 P16 5 44 P20/A8 P17 6 43 DGND RESET 7 42 VDDD 41 XTAL1 RFU 8 TDA8030 40 XTAL2 RFU 9 DELATT 10 39 P37/RD RFU 11 38 P36/WR CPROG 12 37 P35 I/O 13 36 P34 RFU 14 35 P33/INT1 C8 15 34 P32/INT0 33 P31/TxD Fig.3 Pin configuration (top view). 2003 Jul 04 9 P30/RxD 32 CDELAY 31 D− 30 D + 29 UGND 28 VDDU 27 VDD 26 STGND 25 LX 24 VUP 23 TEST 22 RST 21 VCC 20 CLK 19 CGND 18 C4 17 PRES 16 MGU883 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) 7.2 TDA8030; TDA8031 TDA8031 SYMBOL PIN DESCRIPTION P12 1 8xC51 general purpose I/O port (USB_MC_READY) P13 2 8xC51 general purpose I/O port (USB_CLK_EN_N) P14 3 8xC51 general purpose I/O port (USB_RESET_N) P15 4 8xC51 general purpose I/O port (USB_SOFTCONNECT_EXT) P16 5 8xC51 general purpose I/O port (available for the application) P17 6 8xC51 general purpose I/O port (available for the application) RESET 7 reset input (active HIGH, integrated pull-down resistor to ground) RFU 8 test pin; leave open-circuit in the application RFU 9 test pin; leave open-circuit in the application DELATT 10 delayed attachment reference signal output for external pull-up resistor on pin D+ (an internal 1.5 kΩ pull-up resistor is already embedded in the chip) RFU 11 test pin; leave open-circuit in the application SCANEN 12 connect to GND within the application; for programming the EPROM connect to VDD as well as pin TEST (pin 22); also used for test purposes I/O 13 data input/output from the card (C7); 14 kΩ integrated pull-up resistor connected to VCC RFU 14 test pin; leave open-circuit in the application C8 15 auxiliary I/O for C8 contact; 14 kΩ integrated pull-up resistor connected to VCC PRES 16 card presence detection input (active HIGH; no need for external pull-up) C4 17 auxiliary I/O for C4 contact; 14 kΩ integrated pull-up resistor connected to VCC CGND 18 cards ground (C5) Must be connected to GND CLK 19 clock output (C30) VCC 20 card supply output voltage (ISO C1 contact); must be decoupled with two 100 nF low ESR ceramic capacitors to CGND RST 21 cards reset output (C2) TEST 22 test pin input VUP 23 output of the DC-to-DC converter (decouple with a 1 µF capacitor to STGND) LX 24 DC-to-DC converter inductor connection (a Schottky diode should be tied to VUP) STGND 25 DC-to-DC converter ground connection VDD 26 soft switched positive supply voltage (decouple with 10 µF capacitor to GND) VDDU 27 positive supply voltage for the bus (4.2 to 5.5 V) UGND 28 bus ground D+ 29 USB D+ data line D− 30 USB D− data line CDELAY 31 connection for an external capacitor to ground determining the Power-on reset pulse width (typ 1 ms per 2 nF) P30/RxD 32 8xC51 general purpose I/O port/serial input port (available for the application) P31/TxD 33 8xC51 general purpose I/O port/serial output port (available for the application) P32/INT0 34 8xC51 general purpose I/O port/external interrupt 0 (used by the ISO UART)) P33/INT1 35 8xC51 general purpose I/O port/external interrupt 1 (used by the USB interface) P34 36 8xC51 general purpose I/O port (USB_SUSPEND in TDA8030) 2003 Jul 04 10 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) SYMBOL P35 PIN TDA8030; TDA8031 DESCRIPTION 37 8xC51 general purpose I/O port (USB_WAKEUP_N in TDA8030) P36/WR 38 external data memory write strobe P37/RD 39 external data memory read strobe XTAL2 40 12 MHz crystal output; leave open-circuit if an external clock is used XTAL1 41 external 12 MHz crystal connection or input for an external clock signal VDDD 42 3.3 V regulated digital supply voltage output (decouple with 1 µF ceramic capacitor) DGND 43 Digital ground P20/A8 44 8xC51 general purpose I/O port/address 8 (available for the application) P21/A9 45 8xC51 general purpose I/O port/address 9 (available for the application) P22/A10 46 8xC51 general purpose I/O port/address 10 (available for the application) P23/A11 47 8xC51 general purpose I/O port/address 11 (available for the application) P24/A12 48 8xC51 general purpose I/O port/address 12 (available for the application) P25/A13 49 8xC51 general purpose I/O port/address 13 (USB_MP_C) P26/A14 50 8xC51 general purpose I/O port/address 14 (USB_MP_SEL) P27/A15 51 8xC51 general purpose I/O port/address 15 (ISO_UART_CS) PSEN 52 Program Store Enable: read strobe to external program memory when executing code from the external program memory; PSEN is activated twice each machine cycle except when two PSEN activations are skipped during each access to external data memory. PSEN is not activated during fetches from internal program memory. ALE 53 Address Latch Enable/Program Pulse: output pulse for latching the low byte of the address during an access to external memory. In normal operation ALE is emitted at a constant rate of 1/6 the oscillator frequency and can be used for external timing or clocking. It should be noted that one ALE pulse is skipped during each access to external data memory. This pin is also the program pulse input (PROG) during EPROM programming. ALE can be disabled by setting SFR Auxiliary0. With this bit set ALE will be active only during a MOVX instruction. EA 54 External Access Enable/Programming Supply Voltage: EA must be externally held LOW to enable the device to fetch code from external program memory locations starting with 0000H. If EA is held HIGH the device executes from internal program memory unless the program counter contains an address greater than 3FFFH (16 kbytes boundary). This pin also receives the 12.75 V programming supply voltage (VPP) during EPROM programming. If security bit 1 is programmed EA will be internally latched on reset. P07/AD7 55 8xC51 general purpose I/O port/address/data 7 P06/AD6 56 8xC51 general purpose I/O port/address/data 6 P05/AD5 57 8xC51 general purpose I/O port/address/data 5 P04/AD4 58 8xC51 general purpose I/O port/address/data 4 P03/AD3 59 8xC51 general purpose I/O port/address/data 3 P02/AD2 60 8xC51 general purpose I/O port/address/data 2 P01/AD1 61 8xC51 general purpose I/O port/address/data 1 P00/AD0 62 8xC51 general purpose I/O port/address/data 0 P10 63 8xC51 general purpose I/O port (USB_INT_MASK) P11 64 8xC51 general purpose I/O port (USB_SOFTCONNECT_INT) 2003 Jul 04 11 Philips Semiconductors Product specification 49 P25/A13 50 P26/A14 51 P27/A15 52 PSEN 53 ALE 54 EA 55 P07/AD7 TDA8030; TDA8031 56 P06/AD6 57 P05/AD5 58 P04/AD4 59 P03/AD3 60 P02/AD2 61 P01/AD1 63 P10 64 P11 handbook, full pagewidth 62 P00/AD0 USB smart card reader (OTP or ROM) P12 1 48 P24/A12 P13 2 47 P23/A11 P14 3 46 P22/A10 P15 4 45 P21/A9 P16 5 44 P20/A8 P17 6 43 DGND RESET 7 42 VDDD 41 XTAL1 RFU 8 TDA8031 40 XTAL2 RFU 9 DELATT 10 39 P37/RD RFU 11 38 P36/WR SCANEN 12 37 P35 I/O 13 36 P34 RFU 14 35 P33/INT1 C8 15 34 P32/INT0 33 P31/TxD Fig.4 Pin configuration (top view). 2003 Jul 04 12 P30/RxD 32 CDELAY 31 D− 30 D + 29 UGND 28 VDDU 27 VDD 26 STGND 25 LX 24 VUP 23 TEST 22 RST 21 VCC 20 CLK 19 CGND 18 C4 17 PRES 16 MGU884 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) 8 FUNCTIONAL DESCRIPTION The registers within the ISO7816 UART may be written to or read from by using the standard 83C51 MOVX instructions. It should be noted, that only if pin P27/A15 is HIGH, can the UART be accessed. Throughout this specification, it is assumed that the reader is aware of ISO7816 and USB norms terminology. 8.1 ISO7816 UART AND ASSOCIATED LOGIC When pin P27/A15 is HIGH, the demultiplexing of address and data is done internally by means of the ALE signal. A LOW pulse on pin P37/RD enables the selected register to be read, a LOW pulse on pin P36/WR enables the selected register to be written to. This section describes how the integrated ISO7816 UART operates, how it can be programmed by means of its control registers and how it is internally interfaced to the embedded microcontroller. 8.1.1 TDA8030; TDA8031 The ISO UART interrupt line is directly connected to the microcontrollers External Interrupt 0 input, pin P32/INT0. For that reason, the External Interrupt 0 of the 83C51 microcontroller must be enabled to ensure a proper function. INTERFACE CONTROL The ISO7816 UART can be controlled via an 8-bit parallel bus. This bus is directly (internally) connected to Port 0 (P07 to P00) of the embedded 83C51 microcontroller. handbook, fullALE pagewidth CS D0 to D7 address data read address data write RD WR MGU885 Fig.5 Control via MOVX instructions. 2003 Jul 04 13 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) 8.1.2 CONTROL REGISTERS The Hardware Status Register (HSR) gives the status of the supply voltage, of the hardware protections and of the card movements. The TDA8030; TDA8031 has 1 analog interface for 7 contacts cards. The data to and from the cards is fed into an ISO UART. The USR and HSR give interrupts on pins INT when some of their bits have been changed. The Card Select Register (CSR) contains one bit for resetting the ISO UART (RIU, active LOW). This bit is reset after power-on and must be set HIGH before starting any operation. It may be reset by software when necessary. The MSR does not give interrupts and may be used in the polling mode for some operations; when this is the case, the bit Transmit Buffer Empty/Receive Buffer Full (TBE/RBF) within the USR may be masked. The following dedicated registers enable the parameters of the ISO UART and the ETU counters to be set: A 24-bit time-out counter may be started to provide an interrupt after a number of ETUs programmed in time-out registers TOR1, TOR2 and TOR3. This will help the microcontroller when processing different real-time tasks (ATR, WWT and BWT etc.), mainly if the microcontrollers and cards clock are asynchronous. • Programmable Divider Register (PDR) • Guard Time Register (GTR) • Two UART Control Registers (UCR1 and UCR2) • Clock Configuration Register (CCR) • Time-Out Configuration Register (TOCR) This counter is configured with a Time-Out Counter Configuration register (TOCC) and may be used as a 24-bit or as a 16 + 8-bit counter. Each counter may be set to start counting once data has been written, or on detection of a start bit on the I/O or as autoreload. • Three Time-Out Registers (TOR1, TOR2 and TOR3). There is also a dedicated Power Control Register (PCR) for controlling the power to the card. When the specific parameters of the card have been programmed, the UART may be used with the following registers: 8.1.3 GENERAL REGISTERS 8.1.3.1 • UART Receive Register (URR) Card select register The Card Select Register (CSR) is used for resetting the ISO UART. • UART Transmit Register (UTR) • UART Status Register (USR) The bit Reset ISO UART (RIU) must be set to logic 1 by software before any action on the UART. When set to logic 0, this bit resets a large part of the UART registers to their default value; see Table 1. A minimum pulse of 10 ns is needed on RIU. This bit must be reset before any new activation. • Mixed Status Register (MSR). In the reception mode, a FIFO of 1 to 8 characters may be used and is configured with the FIFO Control Register (FCR). This register may also be used for programming an automatic repetition of NAKed characters in the transmission mode. Table 1 TDA8030; TDA8031 Card select register (address 00H; write and read); note 1 7 6 5 4 3 2 1 0 − − − − RIU − − − Note 1. All bits are cleared after reset. 2003 Jul 04 14 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) 8.1.3.2 TDA8030; TDA8031 Hardware status register The Hardware Status Register (HSR) gives the status of the chip after a hardware problem has been detected. Table 2 Hardware Status Register (address 0FH; read only); note 1 7 6 5 4 3 2 1 0 − − PRTL SUPL − PRL − PTL Note 1. All bits are cleared after reset. Table 3 Description of the HSR bits BIT SYMBOL DESCRIPTION 7 and 6 − 5 PRTL Protection 1: Bit PRTL = 1 when a default has been detected on card reader. Bit PRTL is the OR function of the protection on pins VCC and RST. 4 SUPL Supervisor Latch: Bit SUPL = 1 when the supervisor has been activated. 3 − 2 PRL 1 − 0 PTL not used not used Presence Latch: Bit PRL = 1 when a change has occurred on pin PRES. not used Overheating: Bit PTL = 1 if overheating has occurred. When either bits PRTL, PRL or PTL is logic 1, then pin INT0 is LOW. The bits having caused the interrupt are cleared when the HSR has been readout (2 × fint cycles after the rising edge of RD). At power-on, or after a supply voltage drop-out, SUPL is set and INT0 is LOW. INT0 will return HIGH at the end of the internal Power-on reset pulse defined by the value of the capacitor connected to pin CDELAY. SUPL will be reset only after a status register readout outside the Power-on reset pulse; see Fig.8. In the event of emergency deactivation (by PRTL, SUPL, PRL and PTL), bit START will be automatically reset by hardware. 8.1.3.3 Time-out registers The three Time-Out Registers TOR1, TOR2 and TOR3 form a programmable 24-bit ETU counter, or two independant counters (one 16-bit and one 8-bit). The value to load in TOR1, TOR2 and TOR3 is the number of ETUs to count. Table 4 Time-out register 1 (address 09H; write only); note 1 7 6 5 4 3 2 1 0 TOL7 TOL6 TOL5 TOL4 TOL3 TOL2 TOL1 TOL0 Note 1. All bits are cleared after reset. 2003 Jul 04 15 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) Table 5 TDA8030; TDA8031 Time-out register 2 (address 0AH; write only); note 1 7 6 5 4 3 2 1 0 TOL15 TOL14 TOL13 TOL12 TOL11 TOL10 TOL9 TOL8 Note 1. All bits are cleared after reset. Table 6 Time-out register 3 (address 0BH; write only); note 1 7 6 5 4 3 2 1 0 TOL23 TOL22 TOL21 TOL20 TOL19 TOL18 TOL17 TOL16 Note 1. All bits are cleared after reset. 8.1.3.4 Time-out configuration register The Time-Out Configuration register (TOCR) is used for setting different configurations of the time-out counter according to Table 8; all other configurations are undefined. The timers can operate in 3 modes: 1. Software triggered 2. Start bit triggered 3. Autoreload. Table 7 Time-out configuration register (address 08H; read and write); note 1 7 6 5 4 3 2 1 0 TOC7 TOC6 TOC5 TOC4 TOC3 TOC2 TOC1 TOC0 Note 1. All bits are cleared after reset. 2003 Jul 04 16 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) Table 8 TDA8030; TDA8031 Time-out counter configuration TOC VALUE OPERATING MODE 00H All counters are stopped. 05H Counters 2 and 3 are stopped; counter 1 continues to operate in autoreload mode. 61H Counter 1 is stopped and counters 3 and 2 form a 16-bit counter. Counting the value stored in TOR3 and TOR2 is started after 6H is written in the TOCR. An interrupt is given and bit TO3 is set within the USR when the terminal count is reached. The counter is stopped by writing 00H in the TOCR and will be stopped before reloading a new value in TOR2 and TOR3. 65H Counter 1 is an 8-bit autoreload counter and counters 3 and 2 form a 16-bit counter. Counter 1 starts counting the content of TOR1 on the first START bit (reception or transmission) detected on I/O after 65H is written in the TOCR. When Counter 1 reaches its terminal count, an interrupt is given, bit TO1 in the USR is set and the counter automatically restarts the same count until it is stopped. It is not allowed to change the content of TOR1 during a count. Counters 3 and 2 are wired as a single 16-bit counter and starts counting the value TOR3 and TOR2 when 65H is written in the TOCR. When the counter reaches its terminal count, an interrupt is given and bit TO3 is set within the USR. Both counters are stopped when 00H is written in the TOCR. Counters 3 and 2 will be stopped by writing 05H in the TOCR before reloading a new value in TOR2 and TOR3. 68H Counters 3, 2 and 1 are wired as a single 24-bit counter. Counting the value stored in TOR3, TOR2 and TOR1 is started after 68H is written in the TOCR. The counter is stopped by writing 00H in the TOCR. It is not allowed to change the content of TOR3, TOR2 and TOR1 within a count. 7CH Counters 3, 2 and 1 are wired as a single 24-bit counter. Counting the value stored in TOR3, TOR2 and TOR1 on the first start bit detected on I/O (reception or transmission) after the value has been written. It is possible to change the content of TOR3, TOR2 and TOR1 during a count; the current count will not be affected and the new count value will be taken into account at the next start bit. The counter is stopped by writing 00H in the TOCR. In this configuration TOR3, TOR2 and TOR1 must not be all zero. 85H Same as 05H, except that all the counters will be stopped at the end of the 12th ETU following the first received start bit detected after 85H has been written in the TOCR. E5H Same configuration as TOCR = 65H, except that Counter 1 will be stopped at the end of the 12th ETU following the first start bit detected after E5H has been written in the TOCR. The time-out counter is very useful for processing the clock counting during ATR, the Work Waiting Time (WWT) or the waiting times defined in T = 1 protocol. The 200 and 384 clock counter used during ATR is done by hardware when Start Session is set, a specific hardware takes care of BGT in T = 1 protocol and a specific register is present for processing the extra guard time. The minimum time interval between 2 successive write operations in TOCR is 2⁄31 or 2⁄32 ETU. It is obvious that the counters may only be used once the card has been activated. Detailed examples of how to use these specific timers can be found in Application Note “AN01012”. It is not allowed to change the content of the TOR registers whilst a counter is in software triggered mode, or in autoreload mode. In these modes, it is mandatory to stop the counters (TOCR = 00H or 05H) before updating the count value in the TOR registers. In start bit triggered mode, the value may be changed at any time; the new count value will be taken into account on the next start bit. 2003 Jul 04 17 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) 8.1.4 • Does not start if the transmission of the previous character is not completed. ISO UART REGISTERS 8.1.4.1 TDA8030; TDA8031 UART transmit register When the transmission is completed: When the microcontroller wants to transmit a character to the card, it writes the data in direct convention in this register. • In T = 0, bit TBE is set at 11.5 ETU, and bit PE in the event of parity error • In T = 1, bit TBE is set at 10.5 ETU. The transmission: • Starts at the end of this writing (2 clock cycles after the rising edge of WR) if the previous character has been transmitted and if the extra guard time has expired In the event of synchronous cards (bit SAN set within UCR2), UT0 is only relevant and is copied on the I/O of the card. It is possible to write within the UTR before setting the transmission mode, which may be useful in some cases. • Starts at the end of the extra guard time if this one has not expired • Starts at 13.5 ETU in manual mode and 15 ETU in automatic mode if the previous character has been NAKed by the card; see Section 8.1.4.4 Table 9 UART transmit register (address 0DH; write only); note 1 7 6 5 4 3 2 1 0 UT7 UT6 UT5 UT4 UT3 UT2 UT1 UT0 Note 1. All bits are cleared after reset. 8.1.4.2 UART receive register In both protocols, when a character has been stored, then the bit RBF in the status register USR is set at 10.5 ETU. This bit is reset when the character has been read from the URR. When the microcontroller wants to read data from the card, it reads it from this register in direct convention. In the event of synchronous cards, only UR0 is relevant and is a copy of the state of the card I/O. When the URR is empty, then bit FE (in the MSR) is set as long as no character has been received. In the event of parity error: • The bit PE in the status register USR is set at 10.5 ETU and INT0 falls LOW • In protocol T = 0, the received byte is not stored in URR; In protocol T = 1, the received byte is stored. Table 10 UART receive register (address 0DH; read only); note 1 7 6 5 4 3 2 1 0 UR7 UR6 UR5 UR4 UR3 UR2 UR1 UR0 Note 1. All bits are cleared after reset. 2003 Jul 04 18 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) 8.1.4.3 TDA8030; TDA8031 Mixed status register The Mixed Status Register (MSR) relates the status of the cards presence contact PRES, the BGT counter, the FIFO empty indication, the transmit/receive ready indicator TBE/RBF and the completion of clock switching to or from 1⁄2fint. Table 11 Mixed status register (address 0CH; read only); note 1 7 6 5 4 3 2 1 0 CLKSW FE BGT − − PR − TBE/RBF Note 1. Bits TBE/RBF are cleared after reset; bit FE is set after reset. Table 12 Description of the MSR bits; note 1 BIT SYMBOL DESCRIPTION 7 CLKSW Clock switch: Bit CLKSW = 1 when the TDA8030; TDA8031 has performed a required clock switch from 1⁄nfxtal to 1⁄2fint and is reset when the TDA8030; TDA8031 has performed a required clock switch from 1⁄2fint to 1⁄nfxtal; the application will wait until this bit has been set or reset before setting the microcontroller in power-down mode or restarting sending commands after leaving power-down mode (only needed when the clock is not stopped). This bit is also reset by RIU and at power-on. 6 FE FIFO Empty: Bit FE = 1 when the reception FIFO is empty; it is reset when at least one character has been loaded in the FIFO. 5 BGT Block Guard Time: In T = 1 protocol, the bit BGT is linked with a 22 ETU counter, which is started at every start bit on the I/O. If the count is finished before the next start bit, then bit BGT is set. This helps to ensure that the card has not answered before 22 ETU after the last transmitted character, or that the reader is not transmitting a character before 22 ETU after the last received character. In T = 0 protocol, the bit BGT is linked to a 16 ETU counter, which is started at every start bit on the I/O. If the count is finished before the next start bit, then the bit BGT is set. This helps to ensure that the reader is not transmitting too early after the last received character. 4 and 3 2 not used PR 1 − 0 TBE/RBF Presence: Bit PR = 1 when the card is present. not used Transmit Buffer Empty/Receive Buffer Full: Bit TBE/RBF = 1 when: • Changing from reception mode to transmission mode • A character has been transmitted by the UART (except when a character has been transmitted free of parity error while LCT = 1) • The reception buffer is full. Bit TBE/RBF = 0 after power-on, or after one of the following: • When the bit RIU is reset • When a character has been written into register UTR • When the character has been read in register URR • When changing from transmission mode to reception mode. Note 1. No bits within the MSR have an effect on INT0. 2003 Jul 04 19 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) 8.1.4.4 TDA8030; TDA8031 FIFO control register The FIFO Control Register (FCR) relates the parity error count and the FIFO length. Table 13 FIFO control register (address 0CH; write only); note 1 7 6 5 4 3 2 1 0 − PEC2 PEC1 PEC0 − FL2 FL1 FL0 Note 1. All bits are cleared after reset. Table 14 Description of the FCR bits BIT SYMBOL 7 − 6 to 4 PEC2 to PEC0 DESCRIPTION not used Parity Error Count: PEC2, PEC1 and PEC0 determine the number of parity errors before setting the bit PE within the USR and pulling INT0 LOW; 000 means that only one parity error has occurred and bit PE is set. The value 000 indicates that if only one parity error has occurred bit PE is set; the value 111 indicates that PE will be set after 8 parity errors. In protocol T = 0: • If a correct character is received before the programmed error number is reached the error counter will be reset • If the programmed number of allowed parity errors is reached, bit PE in the USR will be set as long as the USR has not been read • If a transmitted character has NAKed by the card, then the TDA8030; TDA8031 will automatically re-transmit it a number of times equal to the value programmed in PEC2, PEC1 and PEC0. The character will be resent at 15 ETU • In transmission mode, if bits PEC2, PEC1 and PEC0 are at logic 0, then the automatic re-transmission is invalidated; the character manually rewritten in the UTR will start at 13.5 ETU. In protocol T = 1: • The error counter has no action; bit PE is set at the first incorrectly received character. 3 − 2 to 0 FL2 to FL0 not used FIFO Length: Bits FL2, FL1 and FL0 determine the depth of the FIFO: • 000 = length 1 • 111 = length 8 2003 Jul 04 20 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) 8.1.4.5 TDA8030; TDA8031 UART status register The UART Status Register (USR) is used by the microcontroller to monitor the activity of the ISO UART and of the time-out counter. Table 15 UART status register (address 0EH; read only); note 1 7 6 5 4 3 2 1 0 TO3 − TO1 EA PE OVR FER TBE/RBF Note 1. All bits are cleared after reset. Table 16 Description of the USR bits BIT SYMBOL 7 TO3 DESCRIPTION Time-Out counter 3: Bit TO3 = 1 when counter 3, or counters 3 + 2 or counters 3 + 2 + 1 have reached their terminal count. 6 − 5 TO1 Time-Out counter 1: Bit TO1 = 1 when counter 1 has reached its terminal count. 4 EA Early Answer: When bit RST is LOW, EA is HIGH if the first start bit on the I/O during ATR has been detected between 200 and 384 clock pulses (all activities on the I/O during the first 200 clock pulses with RST LOW are not taken into account). When RST is HIGH, EA is HIGH if a start bit has been detected before the 384th clock pulse. These two features are reinitialized at each toggling of RST. 3 PE Parity Error: In T = 0 protocol, PE = 1 if the UART has detected a number of received characters with parity error equal to the number written in PEC2, PEC1 and PEC0 or if a transmitted character has been NAKed by the card a number of times equal to the value programmed in PEC2, 1 and 0. It is set at 10.5 ETU in reception mode and at 11.5 ETU in transmission mode. not used In T = 0 protocol, a character received with a parity error is not stored in the FIFO, the card is supposed to repeat this character. In T = 1 protocol, a character with a parity error is stored in the FIFO and the parity error counter is not operating. 2 OVR Overrun: Bit OVR = 1 if the UART has received a new character while the URR was full. In this case, at least one character has been lost. OVR is set at 10.5 ETU. 1 FER Framing Error: Bit FER = 1 when the I/O was not in high-impedance state at 10.25 ETU after a start bit. It is reset when the USR has been read-out. 0 TBE/RBF Transmission Buffer Empty/Reception Buffer Full: Bits TBE and RBF share the same bit within the USR. When in transmission mode the relevant bit is TBE; when in reception mode it is RBF. Bit TBE = 1 when the UART is in transmission mode and when the microcontroller may write the next character to transmit in the UTR. It is reset when the microcontroller has written data in the Transmit Register, or when the bit T/R within UCR1 has been reset either automatically or by software. TBE is set at 11.5 ETU in T = 0 protocol and at 10.5 ETU in T = 1 protocol. Bit RBF = 1 when the FIFO is full. The microcontroller may read some of the characters in the URR, which clears the bit RBF. Bit RBF is also reset when entering the reception mode and is set at 10.5 ETU. 2003 Jul 04 21 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) If any of the status bits FER, OVR, PE, EA, TO1 or TO3 are set, then INT0 is LOW. The bit having caused the interrupt is reset 2 × fint cycles after the rising edge of RD during a read operation of the USR. If TBE/RBF is set and if the mask bit DISTBE/RBF within UCR2 is not set, then INT0 is also LOW. TBE/RBF is reset 2 clock cycles after data has been written into the UTR, or 2 clock cycles after data has been read from the URR, or when changing from transmission mode to reception mode if the FIFO had not been left full when going to transmission mode. If the Last Character to Transmit (LCT) is used for transmitting the last character, then TBE will not be set at the end of the transmission. TDA8030; TDA8031 8.1.5 CARDS REGISTERS When working with a card, the following registers may be used for programming some specific parameters: 8.1.5.1 Programmable divider register The Programmable Divider Register (PDR) is used for counting the cards clock cycles which form the ETU. It is an autoreload 8-bit counter decounting from the programmed value down to 0. Table 17 Programmable divider register (address 02H; read and write); note 1 7 6 5 4 3 2 1 0 PD7 PD6 PD5 PD4 PD3 PD2 PD1 PD0 Note 1. All bits are cleared after reset. 8.1.5.2 UART configuration register 2 Table 18 UART configuration register 2 (address 03H; read and write); note 1 27 26 25 24 23 22 21 20 ENINT1 DISTBE/ RBF − − SAN AUTOCONV CKU PSC Note 1. All bits are cleared after reset. 2003 Jul 04 22 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) TDA8030; TDA8031 Table 19 Description of the UCR2 bits BIT SYMBOL 27 ENINT1 Enable Interrupt 1: If bit ENINT1 = 1, then a HIGH-to-LOW transition on INT1 will wake-up the microcontroller from power-down mode. When not in power-down mode, bit ENINT1 has no effect. 26 DISTBE/ RBF Disable TBE/RBF interrupts: If bit DISTBE/RBF = 1, then reception or transmission of a character will not generate an interrupt. This feature is useful for increasing communication speed with the card; in this case, the copy of TBE/RBF bit within the MSR must be polled and not the original, in order not to loose priority interrupts which can occur in the USR. 25 − not used 24 − not used 23 SAN 22 DESCRIPTION Synchronous/Asynchronous: Bit SAN is set by software if a synchronous card is expected. Then, the UART is bypassed and only bit 0 in the URR and UTR is connected to the I/O. In this case, the clock is controlled by bit SC in the CCR. AUTOCONV Auto convention: If bit AUTOCONV = 1, then the convention is set by software with bit CONV in the UART Configuration Register. If it is reset, then the configuration is automatically detected on the first received character while the bit SS (Start Session) is set. 21 CKU Clock UART: Bit CKU is used to clock the UART at twice the clock frequency of the card. An ETU will last 31 × PDR clock pulses if CKU = 0 and half if CKU = 1. It should be noted that when CKU = 1 it has no effect if fCLK = fXTAL1. This means, for example, that a baud rate of 76800 is not possible when the card is clocked with the frequency on XTAL1. 20 PSC Prescaler: If bit PSC = 1, then the prescaler value is 32. If PSC = 0, then the prescaler value is 31. One ETU will last a number of cards clock cycles equal to PSC × PDR. All baud rates specified in “ISO7816” norm are achievable with this configuration. handbook, full pagewidth CLK MUX 2 × CLK ÷ 31 or 32 PSC ÷ PDR MGU886 CKU Fig.6 ETU generation. 2003 Jul 04 23 ETU Philips Semiconductors Product specification USB smart card reader (OTP or ROM) 8.1.5.3 TDA8030; TDA8031 Baud rate selection using F and D; card clock frequency fCLK = 3.58 MHz for PSC = 31 and 4.92 MHz for PSC = 32 (31;12 means prescaler set to 31 and PDR set to 12) F D 0 1 2 3 4 5 6 9 10 11 12 13 1 31;12 9600 31;12 9600 31;18 6400 31;24 4 800 31;36 3200 31;48 2400 31;60 1920 32;16 9600 32;24 6400 32;32 4800 32;48 3200 32;64 2400 2 31;6 19200 31;6 19200 31;9 12800 31;12 9600 31;18 6400 31;24 4800 31;30 3840 32;8 19200 32;12 12800 32;16 9600 32;24 6400 32;32 4800 3 31;3 38400 31;3 38400 31;6 31;9 19200 12800 31;12 9600 31;15 7680 32;4 38400 32;6 25600 32;8 19200 32;12 12800 32;16 9600 31;3 38400 31;6 19200 32;2 76800 32;3 51300 32;4 38400 32;6 25600 32;8 19200 31;3 38400 32;1 153600 32;2 76800 32;3 51300 32;4 38400 4 5 6 8 32;1 153600 31;1 31;1 115200 115200 31;2 31;3 57600 38400 31;4 28800 9 31;5 23040 32;2 76800 32;2 76800 32;4 38400 31;3 38400 8.1.5.4 Guard time register The Guard Time Register (GTR) is used for storing the number of guard ETUs given by the card during ATR. In transmission mode, the UART will wait this number of ETU + 0.5 before transmitting the character stored in UTR. In T = 1 protocol, GTR = FFH means operation at 11.5 ETU. In T = 0 protocol and GTR = FFH means operation at 12.5 ETU. Table 20 Guard time register (address 05H; read and write); note 1 7 6 5 4 3 2 1 0 GT7 GT6 GT5 GT4 GT3 GT2 GT1 GT0 Note 1. All bits are cleared after reset. 8.1.5.5 UART configuration register 1 The UART Configuration Register 1 (UCR1) is used for setting the parameters of the ISO UART. Table 21 UART configuration register 1 (address 06H; read and write); note 1 7 6 5 4 3 2 1 0 − FIP FC PROT T/R LCT SS CONV Note 1. All bits are cleared after reset. 2003 Jul 04 24 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) TDA8030; TDA8031 Table 22 Description of the UCR1 bits BIT SYMBOL 7 − 6 FIP Force Inverse Parity: If FIP = 1, then the UART will NAK a correct received character and will transmit characters with wrong parity bit. 5 FC Bit FC is a test bit and must be left at logic 0. 4 PROT Protocol: Bit PROT = 1 if the protocol type is asynchronous T = 1. If PROT = 0, the protocol is T = 0. 3 T/R Transmit/Receive: Bit T/R is set by software for transmission mode. A change from 0 to 1 will set bit TBE in the USR. T/R is automatically reset by hardware if LCT has been used before transmitting the last character. 2 LCT Last Character to Transmit: Bit LCT is set by software before writing the last character to transmit into the UTR. It allows automatic change to reception mode when reset by hardware at the end of a successful transmission (11 + 28⁄31 or 28⁄32 ETU in T = 0 and 10 + 28⁄31 or 28⁄32 ETU in T = 1). When LCT is being reset, the bit T/R is also reset and the UART is then ready for receiving a character. 1 SS Start Session: Bit SS is set by software before ATR for automatic convention detection and early answer detection. It is automatically reset by hardware at 10.5 ETU after reception of the initial character. 0 CONV Convention: Bit CONV = 1 if the convention is direct. CONV is either automatically written to by hardware, according to the convention detected during ATR, or by software if bit AUTOCONV is set. 8.1.5.6 DESCRIPTION not used Clock configuration register The Clock Configuration Register (CCR) defines the clock to the card and the clock to the ISO UART. If bit CKU in the Prescaler Register (UCR2) of the card is set, then the ISO UART is clocked at twice the frequency to the card, this allows higher baud rates to be reached than foreseen in the ISO7816 norm. Table 23 Clock configuration register (address 01H; read and write); note 1 7 6 5 4 3 2 1 0 − − SHL CST SC AC2 AC1 AC0 Note 1. All bits are cleared after reset. 2003 Jul 04 25 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) TDA8030; TDA8031 Table 24 Description of the CCR bits BIT SYMBOL DESCRIPTION 7 − not used 6 − not used 5 SHL Stop HIGH or LOW: If bit CST = 1, then the clock is stopped at LOW level if SHL = 0 and at HIGH level if SHL = 1. In these modes, the bias current in the card drivers is reduced; the current drawn by the card (ICC) should be less than 10 mA at all VCC voltages. 4 CST Clock stop: In case of asynchronous cards, bit CST defines whether the clock to the card is stopped or not. If bit CST is reset, then the clock is determined by bits AC0, AC1 and AC2; see Table 25. All frequency changes are synchronous, thus ensuring that no spike or unwanted pulse widths occurs during changes. 3 SC Synchronous Clock: In the event of synchronous cards, the clock contact is a copy of the value written in SC. In reception mode, the data from the card is available in bit UR0 after a read operation of the URR register. In transmission mode, bit UT0 is written on the I/O line of the card when UTR register has been written. 2 to 0 AC2 to AC0 When switching from 1⁄nfxtal to 1⁄2fint or vice versa, only bit AC2 must be changed; AC1 and AC0 must remain the same. When switching from 1⁄nfxtal or 1⁄2fint to CLK STOP or vice versa, only bits CST and SHL must be changed. When switching from 1⁄nfxtal to 1⁄2fint or vice versa, a maximum delay of 200 µs can occur between the command and the effective frequency change on pin CLK. The fastest switch is from 1⁄2fxtal to 1⁄2fint or vice versa, the best duty cycle is from 1⁄8fxtal to 1⁄2fint or vice versa. The status bit CLKSW within the MSR gives the effective switch moment. Table 25 CLK value for an asynchronous card AC2 AC1 AC0 CLK(1) 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 fxtal 1⁄ f 2 xtal 1⁄ f 4 xtal 1⁄ f 8 xtal 1⁄ f 2 int 1⁄ f 2 int 1⁄ f 2 int 1⁄ f 2 int Note 1. If fCLK = fXTAL, the duty cycle must be ensured by the incoming clock signal on XTAL1. 2003 Jul 04 26 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) 8.1.5.7 TDA8030; TDA8031 Power control register The Power Control Register (PCR) performs two tasks: 1. Starts or stops card sessions 2. Reads from or writes to auxiliary card contacts C4 and C8. Table 26 Power control register (address 07H; read and write); note 1 7 6 5 4 3 2 1 0 − − C8 C4 1.8V RSTIN 3/5V START Note 1. All bits are cleared after reset. Table 27 Description of the PCR bits BIT SYMBOL DESCRIPTION 7 − not used 6 − not used 5 C8 Contact 8: When writing to the PCR bit C8 will output the value of bit C8. When reading from the PCR, bit C8 will store the value on pin C8. 4 C4 Contact 4: When writing to the PCR bit C4 will output the value written of bit C4. When reading from the PCR bit C4 will store the value on pin C4. 3 1.8V 2 RSTIN 1 3/5V 0 START 1.8 V cards: if bit 1.8V is set, then VCC = 1.8 V. Reset bit: When the card is activated, pin RST is the copy of the value written in RSTIN. 3 or 5 V cards: If bit 3/5V is set to logic 1, then VCC is 3 V; If bit 3/5V is set to logic 0, then VCC is 5 V. Start: If the microcontroller sets bit START to logic 1, then the selected card is activated; see Section 8.3.3. If the microcontroller resets START to logic 0, then the card is deactivated; see Section 8.3.4. START is automatically reset in the event of emergency deactivation. For deactivating the card, only bit START should be reset. 2003 Jul 04 27 This text is here in white to force landscape pages to be rotated correctly when browsing through the pdf in the Acrobat reader.This text is here in _white to force landscape pages to be rotated correctly when browsing through the pdf in the Acrobat reader.This text is here inThis text is here in white to force landscape pages to be rotated correctly when browsing through the pdf in the Acrobat reader. white to force landscape pages to be ... 28 ADDR R/W 7 6 5 4 3 2 1 0 VALUE AT RESET VALUE WHEN RIU = 0 CSR 00H R/W − − − − RIU − − − XXXX0XXX XXXX0XXX CCR 01H R/W − − SHL CST SC AC2 AC1 AC0 XX000000 XX000000 PDR 02H R/W PD7 PD6 PD5 PD4 PD3 PD2 PD1 PD0 00000000 00000000 UCR2 03H R/W ENINT1 DISTBE/ RBF − − SAN AUTOCO NV CKU PSC 00XX0000 00XX0000 GTR 05H R/W GT7 GT6 GT5 GT4 GT3 GT2 GT1 GT0 00000000 00000000 UCR1 06H R/W − FIP FC PROT T/R LCT SS CONV X0000000 X0000000 PCR 07H R/W − − C8 C4 1.8 V RSTIN 3/5 V START XX110000 XX110000 TOC 08H R/W TOC7 TOC6 TOC5 TOC4 TOC3 TOC2 TOC1 TOC0 00000000 00000000 TOR1 09H W TOL7 TOL6 TOL5 TOL4 TOL3 TOL2 TOL1 TOL0 00000000 00000000 TOR2 0AH W TOL15 TOL14 TOL13 TOL12 TOL11 TOL10 TOL9 TOL8 00000000 00000000 TOR3 0BH W TOL23 TOL22 TOL21 TOL20 TOL19 TOL18 TOL17 TOL16 00000000 00000000 MSR 0CH R CLKSW FE BGT − − PR − TBE/RBF 010XXXX0 010XXXX0 FCR 0CH W − PEC2 PEC1 PEC0 − FL2 FL1 FL0 X000X000 X000X000 UTR 0DH W UT7 UT6 UT5 UT4 UT3 UT2 UT1 UT0 00000000 00000000 URR 0DH R UR7 UR6 UR5 UR4 UR3 UR2 UR1 UR0 00000000 00000000 USR 0EH R TO3 − TO1 EA PE OVR FER TBE/RBF 0X000000 00000000 HSR 0FH R − − PRTL SUPL − PRL − PTL XX01X0X0 XX01X0X0 NAME Philips Semiconductors REGISTERS SUMMARY USB smart card reader (OTP or ROM) 2003 Jul 04 8.1.6 Product specification TDA8030; TDA8031 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) 8.2 For programming the EPROM of the TDA8030; TDA8031, by applying a logic 1 to pin CPROG it will disable the regulator, so that the microcontroller will be powered-up at 5 V. SUPPLY The supply to the chip is delivered by the USB-bus (pins VDDU and UGND). 8.2.1 POWER SWITCH CONTROL 8.2.3 A power switch control is used in order to limit the inrush current when plugging the reader into the bus. The main decoupling capacitor is connected to the output of this power switch control (pin VDD). 8.2.2 TDA8030; TDA8031 DC-TO-DC CONVERTER In case of a 5 V card, the card buffers are supplied by an inductive DC-to-DC converter. In case of a 3 or 1.8 V card, the DC-to-DC converter is transparent and the card buffers are then supplied directly by VDD. 3.3 V REGULATOR The output voltage of the 3.3 V linear regulator is used for: The external components for the DC-to-DC converter should be an inductance of 6.8 µH, a low ESR capacitor of 1 µF and a Schottky diode (type BAT54). • Powering-up the microcontroller and the ISO7816 UART • It is the reference voltage for the signalling pull-up resistor connected to pin D+. The power efficiency is approximately 85% up to ICC = 55 mA. The current is limited at 100 mA during the start-up phase to avoid spurious supply drop-outs. If this voltage is used within the application, the current should not exceed 10 mA. The DC-to-DC converter is transparent for a 3 V card. For stability reasons, a 1 µF low ESR decoupling capacitor is needed between the output of the regulator (VDDD) and the specific regulator ground (DGND). VDD handbook, full pagewidth VUP LX clock N drive reset P drive low up Vref Fig.7 DC-to-DC converter. 2003 Jul 04 29 MGU887 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) 8.2.4 SUPPLY SUPERVISOR TDA8030; TDA8031 This pulse is used as a Power-on reset pulse and also to either block any spurious spikes on card contacts during microcontrollers reset, or to force an automatic deactivation of the contacts in the event of supply drop-out; see Sections 8.3.3 and 8.3.4. The switched supply voltage (VDD) is surveyed by a voltage supervisor, to ensure proper Power-on reset when the reader is plugged into the USB-bus, to maintain all cards contacts inactive during power-on and also to enforce an emergency deactivation sequence in case of VDD drop-out or when the reader is unplugged from the USB-bus. After power-on, or after a voltage drop, bit SUPL is set within the Hardware Status Register (HSR) and remains set until HSR is readout outside the alarm pulse. As long as the Power-on reset is active, INT0 is LOW. The voltage supervisor generates an alarm pulse, whose length is defined by an external capacitor tied to the CDELAY pin, when VDD is too low to ensure proper operation (1 ms per 2 nF typical). The same events occurs when the RESET pin has been set active; the RESET pin should be set HIGH for a minimum of 100 µs for a proper reset. supply dropout handbook, full pagewidth reset by pin RESET Vth1 VDD Vth2 CDELAY RESET tw tw tw SUPL INT0 MGU888 status read power-on Fig.8 Voltage supervisor. 2003 Jul 04 30 power- off Philips Semiconductors Product specification USB smart card reader (OTP or ROM) 8.3 8.3.1 8.3.3 ISO7816 SECURITY ACTIVATION SEQUENCE When the card is inactive, VCC, CLK, RST, I/O, C4 and C8 are LOW, with low-impedance with referenced to CGND. The DC-to-DC converter is stopped. INTRODUCTION The correct sequence during activation and deactivation of the cards is ensured through a specific sequencer, clocked by a division ratio of the internal oscillator. When everything is in normal conditions (no error flag set), the microcontroller will initiate an activation sequence of the card. Activation (START bit HIGH in the Power Control Register) is only possible if the card is present (PRES active HIGH) and if the supply voltage is correct (supervisor not active). After leaving the UART reset mode and then configuring the necessary parameters for the UART, the START bit in the PCR (t0) will be activated. The following sequence then occurs: The presence of the card is signalled to the microcontroller by the Hardware Status Register (HSR). Bit PRL in the HSR is set if the card is present. Bit PRL in the HSR is set if bit PRL has toggled. 1. The DC-to-DC converter is started (t1) 2. VCC starts rising from 0 to 5 V or 3 or 1.8 V with a controlled rise time of 0.17 V/µs typically (t2) During a session, the sequencer performs an automatic emergency deactivation on the card in the event of card take off, a short-circuit, a supply drop-out or overheating. When the HSR register is updated and the INT0 line goes LOW, the microcontroller will also be updated. 8.3.2 TDA8030; TDA8031 3. I/O, C4 and C8 rise to VCC (t3); integrated 10 kΩ pull-up resistors connected to VCC 4. Clock pulses are sent to the card and RST is enabled (t4). PROTECTIONS AND LIMITATIONS The TDA8030; TDA8031 features the following protections and limitations: After a number of clock pulses that can be counted with the Time-Out Counter, the bit RSTIN may be set by software and RST will rise to VCC. 1. ICC limited to 100 mA, deactivated when this limit is reached The sequencer is clocked by 1⁄64fint which leads to a time interval of t = 25 µs typical. 2. Current to and from RST is limited to 20 mA, deactivated when this limit is reached Thus t1 = 0 to 3⁄64t, t2 = t1 + 5⁄2t, t3 = t1 + 9⁄2t and t4 = t1 + 5t. 3. Deactivation when the temperature of the die exceeds 150 °C 4. Current to and from the I/O is limited to 10 mA 5. Current to and from pin CLK is limited to 70 mA (not in current reduction modes, when clock is stopped) 6. ESD protection on all cards contacts + PRES at 6 kV (min.), thus no need of extra components for protection against ESD flash caused by a charged card being introduced in the slot 7. Short-circuit between any cards contacts can last any duration without any damage. 2003 Jul 04 31 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) TDA8030; TDA8031 handbook, full pagewidth START VUP VCC I/O CLK RST t0 t1 t2 t3 t 4 = t act ATR MGU889 Fig.9 Activation sequence. 8.3.4 DEACTIVATION SEQUENCE Automatic emergency deactivation is performed in the following cases: When the session is completed, the microcontroller resets START (t10). The circuit then executes an automatic deactivation sequence as follows: 1. Withdrawal of the card (PRES LOW) 2. Overcurrent detection on VCC (bit PRTL set) 1. Card reset (RST falls LOW; t11) 3. Overcurrent detection on RST (bit PRTL set) 2. Clock (CLK) is stopped LOW (t12) 4. Overheating (bit PTL set) 3. I/O, C4 and C8 fall to 0 V (t13) 5. Supply too low (bit SUPL set) 4. VCC falls to 0 V with typical 0.17 V/µs slew rate (t14) 6. RESET pin active HIGH. 5. The DC-to-DC converter is stopped and CLK, RST, VCC, I/O, C4 and C8 become low-impedance to CGND (t15). In all of these cases, the deactivation sequence as described above occurs. If the reason for the deactivation is a card take-off, an overcurrent or overheating, then INT0 will be LOW and the corresponding bit in the Hardware Status Register will be set. The START bit is automatically reset. Thus: t11 = t10 + 1⁄64t t12 = t11 + 1⁄2t If the reason is a supply drop-out, then the deactivation sequence occurs and a complete reset of the chip is performed. When the supply recovers, then the SUPL bit will be set in the HSR. t13 = t11 + t t14 = t11 + 3⁄2t t15 = t11 + 7⁄2t tde = time that VCC needs to decrease to less than 0.3 V. 2003 Jul 04 32 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) handbook, full pagewidth TDA8030; TDA8031 START RST CLK I/O VCC VUP t de t 10 t 11 t 12 t 13 t 14 t 15 Fig.10 Deactivation sequence. 2003 Jul 04 33 MGU890 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) 8.4 TDA8030; TDA8031 The 80C51 microcontroller has four 8-bit I/O ports, three 16-bit timer/event counters, a multi-source, 4-level priority nested interrupt structure, an enhanced UART and on-chip oscillator and timing circuits. For systems that require extra memory capability up to 64 kbytes, it can be expanded by using standard TTL compatible memories and logic. MICROCONTROLLER The embedded microcontroller is an 80C51RB+ with an internal 16 kbyte EPROM (80C51FB with 16 kbyte ROM for the TDA8031), 256 RAM and 512 AUXRAM. It has the same instruction set as the 80C51. The embedded microcontroller is clocked by the frequency present on pin XTAL1. 1. 80C51 Central Processing Unit (CPU) The embedded microcontroller may be reset by an active HIGH signal on pin RESET, but it is also reset by the Power-on reset signal generated by the voltage supervisor. 2. Full static operation 3. Security bits: ROM 2 bits 4. Encryption array of 64 bits 5. 4-level priority structure The external interrupt INT0 is used by the ISO UART, by the analog drivers and by the ETU counters. It must be left open-circuit in the application. 6. 6 interrupt sources 7. Full duplex enhanced UART with framing error detection and automatic address recognition The external interrupt INT1 is used by the USB interface. It must be left open-circuit in the application. 8. Power control modes (the clock can be stopped and resumed in IDLE mode and power-down mode) A general description, together with the added features, is described below. 9. Wake-up from power-down by a falling edge on pins INT0 and INT1; with an embedded delay counter The added features to the 80C51 microcontroller are similar to the 8XC51FB/RB+ microcontrollers, except for the wake-up from power-down mode, which is enabled by a falling edge on pin INT0 (card reader event) or on pin INT1 due to the addition of an extra delay counter and enable configuration bits within the UCR2 register; see Section 8.4.1. For further information please refer to the published specification of the 8xC51RB + /FB in “Data Handbook IC20; 80C51-Based 8-bit Microcontrollers”. 10. Programmable clock output 11. Second DPTR register 12. Asynchronous port reset 13. Low EMI (inhibit ALE). Table 28 gives a list of main features to get a better understanding of the differences between a standard 80C51, an 8XC51RB+ and the embedded microcontroller in the TDA8030; TDA8031. Table 28 Principal blocks in the 80C51, 8XC51RB+ and the TDA8030; TDA8031 FEATURE ROM/EPROM RAM 80C51 8XC51RB+ TDA8030; TDA8031 4 kbytes 16 kbytes 16 kbytes 128 bytes 256 bytes 256 bytes ERAM (MOVX) no 256 bytes 512 bytes PCA no yes no WDT no yes no T0 yes yes yes T1 yes yes yes T2 no yes yes lowest interrupt priority vector at 002BH 4 level priority interrupt no yes yes enhanced UART no yes yes delay counter no no yes 2003 Jul 04 34 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) 8.4.1 TDA8030; TDA8031 The bits in the Interface Engine (IE) must be enabled with INT0 and INT1. Within the INT0 interrupt service routine, the microcontroller has to read out the Hardware Status Register (HSR at 0FH) and/or the UART Status register (USR at 0EH) by means of MOVX instructions in order to establish the exact interrupt reason and to reset the interrupt source. LOW POWER MODES Stop Clock Mode: The static design enables the clock speed to be reduced down to 0 MHz (stopped). When the oscillator is stopped, the RAM and Special Function Registers (SFRs) retain their values. This mode allows step-by-step utilization and permits reduced system power consumption by lowering the clock frequency down to any value. The power-down mode is suggested for the lowest power consumption. For enabling a wake-up by INT1, the bit ENINT1 within UCR2 must be set. IDLE Mode: In the Idle mode, the CPU puts itself to sleep while all of the on-chip peripherals stay active. The instruction to invoke the Idle mode is the last instruction executed in the normal operating mode before the Idle mode is activated. The CPU contents, the on-chip RAM and all of the special function registers remain intact during this mode. The Idle mode can be terminated either by any enabled interrupt (at which time the process is picked up at the interrupt service routine and continued), or by a hardware reset which starts the processor in the same manner as a Power-on reset. An integrated delay counter maintains INT0 and INT1 LOW long enough to allow the oscillator to restart properly. A falling edge on pins INT0 and INT1 is enough to awaken the whole circuit. Power-down Mode: To save even more power, a power-down mode can be invoked by software. In this mode, the oscillator is stopped and the instruction that invoked the power-down is the last instruction executed. The TDA8030; TDA8031 has 4 logic end-points which are listed in Table 29. Once the interrupt is serviced, the next instruction to be executed after RETI will be the one following the instruction that put the device into power-down. 8.5 8.5.1 USB INTERFACE END-POINTS Each physical end-point, except for the control ones, can be enabled or disabled. All enabled end-points generate interrupts to the microcontroller via INT1 when the end-point needs to be serviced. Either a hardware reset or external interrupt can be used to exit from the power-down mode. Applying a reset redefines all of the SFRs but does not change the on-chip RAM. An external interrupt allows both the SFRs and the on-chip RAM to retain their values. The implementation of the function makes use of an SRAM for buffering the data. Logic end-points can be accessed by the microcontroller interface. Table 29 Mapping of logic to physical end-point numbers for used end-points PHYSICAL END-POINT LOGIC END-POINT BUFFER SIZE Control end-point 0 Generic end-point (may be used as bulk 1 Generic end-point (may be used as interrupt) Generic end-point END-POINT NAME 2003 Jul 04 OUT IN 16 0 1 32 2 3 2 8 − 4 3 8 − 5 35 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) 8.5.2 TDA8030; TDA8031 PHASE-LOCKED LOOP A 12 to 48 MHz clock multiplier PLL is integrated on-chip. No external components are needed for the operation of the PLL. 8.5.3 BIT CLOCK RECOVERY The bit clock recovery circuit recovers the clock from the incoming USB data stream using 4× oversampling principle. It is able to track jitter and frequency drift as specified by the USB specification. 8.5.4 INTERFACE SIGNALS WITH THE MICROCONTROLLER Table 30 The following I/O ports of the 83C51 are used for controlling the USB bus: PORT FUNCTION DESCRIPTION P10 USB_INT_MASK should be set to logic 1 before entering power-down mode during suspend and reset to logic 0 when leaving power-down mode P11 USB_SOFTCONNECT_INT when set to logic 1, the internal 1.5 kΩ resistor is connected to pin D+ P12 USB_MC_READY the device is ready to accept a new transaction P13 USB_CLK_EN_N when LOW, this signal indicates that the bus is no longer suspended P14 USB_RESET_N a LOW-level will reset the USB interface P15 USB_SOFTCONNECT_EXT when set to logic 1, VDDD is applied on the optional external 1.5 kΩ resistor which has been placed between pins D+ and DELATT P33 USB_INT_N interrupt to the microcontroller P34 USB_SUSPEND the device is in suspended state (TDA8030 only) P35 USB_WAKEUP_N remote wake-up (TDA8030 only) P25 USB_MP_C if set to logic 1, the data to the bus is a command; if set to logic 0 it is data P26 USB_MP_SEL if set to logic 1, the USB interface is selected 8.5.5 BLOCK DIAGRAM The digital interface consists of 3 major blocks: • The Philips Serial Interface Engine (SIE) handles the USB protocol (i.e. synchronization pattern, recognition, parallel/serial conversion, bit stuffing/de-stuffing, CRC checking/generating, PID verification/generation, address recognition and handshake evaluation/generation) • A Memory Management Unit (MMU), controlling the buffering of data to and from the bus • An interface to the embedded 83C51 microcontroller. handbook, full pagewidth D+ USB bus D− ANALOG TRANSCEIVER OSCILLATOR RAM SERIAL INTERFACE ENGINE MEMORY MANAGEMENT UNIT MICROCONTROLLER INTERFACE MICROCONTROLLER MGU891 Fig.11 USB block diagram. 2003 Jul 04 36 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) 8.5.6 TDA8030; TDA8031 8.5.7 USB REGISTERS 8.5.7.1 A first MOVX@DPTR instruction enables the module to be selected (via DPH) and send the command. A second one communicates the data (read or write). INSTRUCTION SET Overview Table 31 summarizes all commands that can be used by the embedded microcontroller. Table 31 Instruction set COMMAND NAME RECIPIENT CODING FUNCTION DATA PHASE Device commands; see Table 32 Set address device 0XD0H set address write 1 byte Set end-points enable Set mode Read interrupt register Read current frame number Read chip ID Get device status Set device status Debug command: get error code device device device 0XD8H 0XF3H 0XF4H set EP enable set mode write 1 byte write 1 byte read 1 byte device 0XF5H read 1 or 2 bytes device device device device 0XFDH 0XFEH 0XFEH 0XFFH read 2 bytes read 1 byte write 1 byte read 1 byte End-point commands; see Table 41 Select end-point control output control input end-point 1 output end-point 1 input end-point 2 input 0X00H 0X01H 0X02H 0X03H 0X04H end-point 3 input Select end-point/clear control output interrupt control input end-point 1 output end-point 1 input 0X05H 0X40H read 1 byte (optional) read 1 byte 0X41H 0X42H 0X43H read 1 byte read 1 byte read 1 byte end-point 2 input end-point 3 input control output 0X44H 0X45H 0X40H read 1 byte read 1 byte write 1 byte control input end-point 1 output end-point 1 input 0X41H 0X42H 0X43H write 1 byte write 1 byte write 1 byte end-point 2 input end-point 3 input 0X44H 0X45H write 1 byte write 1 byte Read buffer Write buffer Clear buffer selected end-point selected end-point selected end-point 0XF0H 0XF0H 0XF2H read n + 2 bytes write n + 2 bytes read 1 byte (optional) Validate buffer selected end-point 0XFAH none Set end-point status 2003 Jul 04 select EP0 output select EP0 input 37 read 1 byte (optional) read 1 byte (optional) read 1 byte (optional) read 1 byte (optional) read 1 byte (optional) Philips Semiconductors Product specification USB smart card reader (OTP or ROM) TDA8030; TDA8031 Table 32 Device commands COMMAND DESCRIPTION Set address The set address command is used to set the USB assigned address and to enable the function. In the event that the status phase of the set address transaction is not successful, the device address will not be updated. The power-on value is given in Table 33. Set end-points enable A value of 1 written to the register indicates that the non-control end-points are enabled. The power-on value is given in Table 34. Set Mode The default value is logic 0; if logic 1 is written in this register, then NAKing is reported and will generate an interrupt. When set to logic 0, only successful transactions are reported. Read interrupt register This command indicates the origin of an interrupt. The end-point interrupt bits are cleared by the Select end-point/Clear Interrupt command. The power-on value is given in Table 35. Read Current Frame Number The Read Current Frame Number returns the frame number of the last received Start Of Frame (SOF). The frame number is eleven bits wide. The frame number is returned LSB first, so, if the user is only interested in the lower 8 bits of the frame number, only the first byte needs to be read; see Table 36. The frame number returned by this commend can be invalid in the event of one of the following conditions: • If no SOF was received by the device at the beginning of a frame, the frame number returned is that of the last successfully received SOF • If the SOF frame number contained a CRC error, the frame number received will be the corrupted frame number as received by the device. Read chip ID The chip Identification is 16 bits wide. The command divides the ID into bytes and returns the least significant byte first: For the TDA8030; TDA8031, the ID is fixed at 2B00H. Get Device Status The Get Device Status command returns the Device Status Register; refer to the Set Device Status command Set Device Status The Set Device Status command sets bits in the Device Status Register. Debug command: Get Error Code The Get Error Code command returns the error code of the last generated error; this command is for debugging purpose. The 4 least significant bits form the error code. Bit 4 (Error Occurred) can be cleared by each new transfer. The power-on value is given in Table 39. In Table 37, the Type column indicates if the bit can be written and if the bit is cleared after reading the register. The Interrupt column indicates if the bit generates an interrupt when it is set. This command is only useful during debugging. Table 40 gives an overview of the Error Codes. Table 33 Power-on value for Set address FUNCTION 7 6 5 4 3 2 1 0 Device address(1) − 0 0 0 0 0 0 0 Enable(2) 0 − − − − − − − Notes 1. The value written becomes the address. 2. A logic 1 enables the function. After a bus reset, the address is reset to 000 0000. The enable bit is set. The device will respond on packets for function address 000 0000, end-point 0 (default end-point). 2003 Jul 04 38 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) TDA8030; TDA8031 Table 34 Power-on value for Set end-points enable FUNCTION 7 6 5 4 3 2 1 0 Enable all end-points − − − − − − − 0 Reserved − − − − − − − − Table 35 Power-on value for Read interrupt register FUNCTION Physical EP0 (control output end-point) 7 6 5 4 3 2 1 0 − − − − − − − 0 Physical EP1 (control input end-point) − − − − − − 0 − Physical EP2 (generic output end-point) − − − − − 0 − − Physical EP3 (generic input end-point) − − − − 0 − − − Physical EP4 (generic input end-point) − − − 0 − − − − Physical EP5 (generic input end-point) − − 0 − − − − − Reserved − 0 − − − − − − 0 − − − − − − − Device event(1) Note 1. The Device event bit is cleared by issuing the Get Device Status command. Table 36 Read current frame number BYTE 7 6 5 4 3 2 1 0 Byte 0 F F F F F F F F Byte 1 0 0 0 0 0 F F F Table 37 Set device status command functions FUNCTION TYPE Reserved − Suspend read/write INTERRUPT 7 6 5 4 3 2 1 0 − − − − − − − 0 0 no − − − − − 0 − − Suspend change read only; cleared on read yes − − − − 0 − − − Bus reset read only; cleared on read yes − − − 0 − − − − Reserved − − − − − − − − − − 2003 Jul 04 39 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) TDA8030; TDA8031 Table 38 Set device status command function bits FUNCTION DESCRIPTION Suspend The Suspend bit represents the current Suspend state. It is logic 1 when the device has not seen any activity on its upstream port for more than 3 ms. It is reset to logic 0 on any activity. When the device is suspended, (Suspend bit = 1) and the microcontroller writes logic 0 into it, the device will generate a remote wake-up. When the device is not suspended, writing a logic 0 has no effect. Writing a logic 1 in this register has no an effect. Suspend Change The Suspend Change bit is set to logic 1 when the Suspend bit toggles. The Suspend bit can toggle because: • The device goes into the suspended state • The device receives resume signalling on its upstream port • The Suspend Change bit is reset after the register has been read. Bus reset The Bus reset bit is set when the device receives a bus reset. It is cleared when read. On a bus reset, the device will automatically go to the default state (unconfigured and responding to address 0). Table 39 Power-on value for Get Error Code FUNCTION 7 6 5 4 3 2 1 0 Error code − − − − 0 0 0 0 Error occurred − − − 0 − − − − Reserved − − − − − − − − Table 40 Error codes ERROR CODE[3:0] 2003 Jul 04 DESCRIPTION 0000 no error 0001 PID encoding error 0010 unknown PID 0011 unexpected packet 0100 error in token CRC 0101 error in data CRC 0110 time-out error 0111 babble 1000 error in end of packet 1001 sent NAK 1010 sent Stall 1011 buffer overrun error 1100 reserved 1101 bitstuff error 1110 error in sync 1111 wrong toggle bit in data PID; ignored data 40 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) TDA8030; TDA8031 Table 41 End-point commands COMMAND DESCRIPTION Select end-point The select end-point command initializes an internal pointer to the start of the selected buffer. Optionally, this command can be followed by a data read, which returns some additional information on the packet in the buffer. The command code of the select end-point is equal to the physical end-point number. The power-on value is given in Tables 42 and 43. Select End-point/ Clear Interrupt These commands are identical to Select End-point commands, but with the following differences: • They clear the associated interrupt • In the event of a control output end-point; they clear the set-up and overwritten bits • The read one byte is mandatory. Set end-point status The Set end-point status command sets status bits 7 to 5 and 0 of the end-point. The command code is equal to the sum of 40H and the physical end-point number. Not all bits can be set for all types of end-points. The power-on value is given in Tables 44 and 45. Read buffer The Read buffer command is followed by a number of data reads, which return the contents of the selected end-point data buffer. After each read, the internal buffer pointer is incremented. The buffer pointer is not reset to the beginning of the buffer by the Read buffer command. This means that reading a buffer can be interrupted by any other command (except for the Select end-point). The data buffer organization is given in Table 46. Write buffer The Write buffer command is followed by a number of data writes, which load the data buffer of the selected end-point. After each write, the internal buffer pointer is incremented The buffer pointer is not reset to the beginning of the buffer by the Write buffer command. This means that writing to a buffer can be interrupted by any other command (except for the Select end-point and Select end-point/Clear Interrupt). The data buffer organization is given in Table 47. Clear buffer When a packet sent by the host has been received successfully, an internal end-point buffer full flag is set. All subsequent packets will be refused by returning a NAK. When the microcontroller has read the data, it should free the buffer by the Clear buffer command. When the buffer is cleared, new packets will be accepted. When bit 0 of the optional data byte is set to logic 1, the previously received packet was overwritten by a set-up packet. A buffer cannot be cleared when its Packet overwritten bit is set. The power-on value is given in Table 48. Validate buffer When the microcontroller has written data into an input buffer, it should set the buffer full flag by the Validate buffer command. This indicates that the data in the buffer is valid and can be sent to the host when the next input token is received. A control input buffer cannot be validated when the Packet overwritten bit of its corresponding output buffer is set. 2003 Jul 04 41 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) TDA8030; TDA8031 Table 42 Power-on value for Select end-point FUNCTION 7 6 5 4 3 2 1 0 Full or empty − − − − − − − 0 Stall − − − − − − 0 − Set-up − − − − − 0 − − Packet overwritten − − − − 0 − − − Sent NAK − − − 0 − − − − Reserved − − − − − − − − Table 43 Description of the Power-on value for Select end-point bits FUNCTION Full or empty DESCRIPTION If set to logic 1, the buffer of the selected end-point is full. In the event of an output end-point, this bit is cleared by executing the Clear Buffer command, if the buffer was not overwritten. In the event of an input end-point, this bit is set by the Validate Buffer command. Stall If set to logic 1, the selected end-point is stalled. Set-up If set to logic 1, the last received packet for the selected end-point was a set-up packet. The value of this bit is updated after each successfully received packet (i.e. an ACKED package on that particular end-point). Packet overwritten If set to logic 1, the previously received packet was overwritten by a set-up packet. The value of this bit is cleared by the Select End-point command. Sent NAK If set to logic 1, the device has sent a NAK. If the host sends an output packet to a filled output buffer, the device returns a NAK. If the host sends an input token to an empty input buffer, the device returns a NAK. This bit is set when a NAK is sent and the Interrupt On Nak feature is enabled. This bit is reset after the device has sent an ACK after an output packet or when the device has seen an ACK after sending an input packet. It is only defined for the 2 physical control end-points. Table 44 Power-on value for Set end-point status; notes 1 and 2 FUNCTION 7 6 5 4 3 Stall − − − − − Disable − − 0 − − Rate feedback mode − 0 − − − Interrupt unmasked 0 − − − Conditional stall 0 − − − 2 1 0 CTRL EP − − 0 def def def − − − X def def − − − X def def − − − − X X X − − − − def X X Notes 1. X = dont care. 2. def means that the bit can be set if the end-point is of the specified type. 2003 Jul 04 42 GEN IN/OUT GEN IN Philips Semiconductors Product specification USB smart card reader (OTP or ROM) TDA8030; TDA8031 Table 45 Description of the Power-on value for Set end-point status bits FUNCTION DESCRIPTION Stall If set to logic 1, the end-point is stalled. Disable If set to logic 1, the end-point is disabled. After a bus reset; each end-point is enabled, i.e. this bit is set to logic 0. Rate feedback mode If set to logic 0, the interrupt end-point is in toggle mode. If set to logic 1, the interrupt end-point is in rate feedback mode. Interrupt unmasked If set to logic 1, an event on the end-point causes an interrupt to the microcontroller. Conditional stall If set to logic 1, both end-points zero are stalled; unless the set-up packet bit is set. A stalled control end-point is automatically unstalled when it receives a SET-UP token, regardless of the content of the packet. If the end-point stays in the stalled state, the microcontroller should re-install it. When a stalled end-point is unstalled (either by the Set end-point status command or by receiving a Set-up token) it is also re-initialized. This flushes the buffer: in case of an output buffer, it waits for a DATA 0 PID; in case of an input buffer, it writes a DATA 0 PID. Even when unstalled, setting the stalled bit to logic 0 initializes the end-point. When an end-point is stalled by the Set end-point status command, it is also re-initialized. Table 46 Data buffer organization (read) 7(1) 6(2) 5 Byte 0 0/1 0/1 − Byte 1 − BYTE 4 3 2 1 0 − − − − 0 number of data bytes in buffer Byte 2 data byte 0 .... data byte n − 1 Byte n + 1 Notes 1. Bit 7 of Byte 0 indicates whether the packet in the buffer was received successfully over the USB-bus. When this bit is set to logic 1, the packet was received successfully. 2. Bit 6 of Byte 0 indicates whether the packet in the buffer is a set-up packet. Table 47 Data buffer organization (write) BYTE 7 6 5 Byte 0 − − − Byte 1 − 4 3 2 1 0 − − − − 0 number of data bytes in buffer Byte 2 data byte 0 .... data byte n − 1 Byte n + 1 Table 48 Power-on value for Clear buffer FUNCTION 7 6 5 4 3 2 1 0 Packet overwritten − − − − − − − 0 Reserved − − − − − − − − 2003 Jul 04 43 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) 8.5.8 ANALOG INTERFACE TDA8030; TDA8031 8.5.9 The transceiver interfaces directly to the USB cables through termination resistors. They are able to transmit and receive serial data at full speed (12 Mbits/s). SUSPEND MODE When the USB interface enters Suspend mode, the software should set the microcontroller in power-down mode in order to respect the suspend current condition. The following sequence should be executed: A 1.5 kΩ pull-up resistor is integrated between pins D+ and VDDD and is connected by software by the microcontroller; in case a ±5% resistor is preferred, it can be externally connected between pins DELATT and D+ (DELATT is also controlled by software and is floating when OFF, or connected to VDDD when ON). 1. When the device enters the Suspend mode, it generates an interrupt on pin INT1 2. The software should set USB_INT_MASK to logic 1 3. Then it should wait until CLK_EN_N is HIGH before entering power-down mode. When the device detects an activity on the bus, it resets CLK_EN_N to logic 0 and generates an interrupt on pin INT1. When leaving the Suspend mode, the following sequence should be executed: 1. The software should read the DEVICE_STATUS to enable the interrupt to be cleared 2. Reset USB_INT_MASK to logic 0. 2003 Jul 04 44 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) TDA8030; TDA8031 9 LIMITING VALUES In accordance with the Absolute Maximum Rating System (IEC 60134). SYMBOL PARAMETER CONDITIONS MIN. MAX. UNIT VDDU bus supply voltage −0.5 +6.5 V Vn input voltage on all pins −0.5 +6.5 V Ptot total power dissipation − tbf mW Tstg IC storage temperature −55 +150 °C Tj junction temperature − 125 °C Vesd electrostatic discharge voltage pins I/O, VCC, RST, C4, C8, CLK and PRES −5 +5 kV all other pins −1 +1 kV MM JEDEC −50 +50 V MM JEDEC −100 +100 V TDA8031; HBM JEDEC −6 +6 kV −1.5 +1.5 kV JEDEC; maximum −100 voltage is 1.5/−0.5 supply voltage of the block +100 mA Vesd TDA8030; HBM JEDEC electrostatic discharge voltage pins I/O, VCC, RST, C4, C8, CLK and PRES all other pins Ilu latch-up free current on all pins 10 THERMAL CHARACTERISTICS SYMBOL Rth(j-a) 2003 Jul 04 PARAMETER CONDITIONS thermal resistance from junction to ambient in free air 45 VALUE UNIT 63 K/W Philips Semiconductors Product specification USB smart card reader (OTP or ROM) TDA8030; TDA8031 11 CHARACTERISTICS VDDU = 5 V; Tamb = 25 °C; unless otherwise specified. SYMBOL PARAMETER CONDITIONS MIN. TYP. MAX. UNIT Supplies VDDU supply voltage for the bus 4.2 − 5.5 V VDD supply voltage after inrush current suppression switch 4.2 − 5.5 V IDDU supply current for the bus 5 V card; ICC = 40 mA; fclk = 6 MHz − − 100 mA Isus suspend current card inactive; microcontroller in power-down mode − − 500 µA falling Vth(VDD) threshold voltage on VDD 3.6 − 3.8 V Vhys hysteresis voltage on Vth(VDD) 150 − 350 mV Vth(CDELAY) threshold voltage on pin CDELAY − 1.25 − V VCDELAY voltage on pin CDELAY Io(CDELAY) output current on pin CDELAY CCDELAY − − VDD + 0.3 V pin ground; charge current − −2 − µA VCDELAY = VDD; discharge current − 9 − mA − 22 − nF capacitor on pin CDELAY Crystal oscillator (XTAL1 and XTAL2) fXTAL crystal frequency − 12 − MHz VIL LOW-level input voltage on pin XTAL1 −0.3 − +0.3VDDD V VIH HIGH-level input voltage on pin XTAL1 0.7VDDD − VDDD + 0.3 V − 12 − MHz − 5.5 − V DC-to-DC converter fclk clock frequency VUP output voltage VCC = 5 V VCC = 3 or 1.8 V − 5 − V PE power efficiency L = 6.8 µH; C = 1 µF − 85 − % PROG = 0 3 − 3.6 V PROG = 1 (TDA8030 only) 4.5 − 5.5 V VDDD voltage regulator VDDD output voltage IDDD output current 0 − 25 mA Cdec decoupling capacitor 1000 − − nF 2003 Jul 04 46 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) SYMBOL PARAMETER TDA8030; TDA8031 CONDITIONS MIN. TYP. MAX. UNIT Reset output to the card (RST) Vinact output voltage in inactive mode Iinact current from RST when inactive and pin grounded VOL LOW-level output voltage no load 0 − 0.1 V Iinact = 1 mA 0 − 0.3 V 0 − −1 mA IOL = 200 µA 0 − 0.3 V IOL = 20 mA VCC − 0.4 − VCC V 0.9VCC − VCC V VOH HIGH-level output voltage IOH = −200 µA IOH = −20 mA 0 − 0.4 V tr rise time CL = 100 pF; VCC = 5 or 3 V − − 0.1 µs tf fall time CL = 100 pF; VCC = 5 or 3 V − − 0.1 µs no load 0 − 0.1 V Clock output to the card (CLK) Vinact output voltage in inactive mode Iinact current from CLK when inactive and pin grounded VOL LOW-level output voltage VOH HIGH-level output voltage 0 − 0.3 V 0 − −1 mA IOL = 200 µA 0 − 0.3 V IOL = 70 mA VCC − 0.4 − VCC V IOH = −200 µA 0.9VCC − VCC V IOH = −70 mA 0 − 0.4 V Iinact = 1 mA tr rise time CL = 35 pF − − 16 ns tf fall time CL = 35 pF − − 16 ns fclk clock frequency 1 MHz Idle configuration 1 − 1.5 MHz operational 0 − 12 MHz δ duty factor (except for XTAL) CL = 35 pF 45 − 55 % SR slew rate (rise and fall) CL = 30 pF 0.2 − − V/ns Card supply voltage (VCC) (2 ceramic multilayer capacitors with low ESR of minimum 100 nF should be used in order to meet these specifications) Vinact Iinact 2003 Jul 04 output voltage inactive no load 0 − 0.1 V Iinact = 1 mA 0 − 0.3 V − − −1 mA current from VCC when inactive and pin grounded 47 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) SYMBOL VCC ICC PARAMETER output voltage output current TDA8030; TDA8031 CONDITIONS MIN. TYP. MAX. UNIT active mode; ICC < 55 mA; 5 V card 4.75 5 5.25 V active mode; ICC < 55 mA; 3 V card 2.78 3 3.22 V active mode; current pulses of 40 nAs with I < 200 mA; t < 400 ns; f < 20 MHz; 5 V card 4.6 − 5.4 V active mode; current pulses of 24 nAs with I < 200 mA; t < 400 ns; f < 20 MHz; 3 V card 2.75 − 3.25 V active mode; 1.64 ICC < 35 mA; 1.8 V card 1.8 1.96 V active mode; current pulses of 12 nAs with I < 200 mA; t < 400 ns; f < 20 MHz; 1.8 V card 1.62 − 1.98 V 5 V card; from 0 to 5 V − − −55 mA 3 V card; from 0 to 3 V − − −55 mA 1.8 V card; from 0 to 1.8 V − − −35 mA when clock is stopped; at all VCC values − − −10 mA VCC shorted to ground − − −120 mA 0.05 0.16 0.22 V/µs 5 V card − − 350 mV 3 V card − − 200 mV 1.8 V card − − 100 mV 0 − 0.1 V SR slew rate up or down (maximum capacitance = 300 nF) Vripple(p-p) ripple voltage on VCC (peak-to-peak value) 20 kHz < f < 200 MHz Data line (I/O); I/O has an integrated 14 kΩ pull-up resistor at VCC Vinact output voltage inactive Iinact current from I/O when inactive and pin grounded VOL LOW-level output voltage no load − − 0.3 V − − −1 mA IOL = 1 mA 0 − 0.3 V IOL = 10 mA VCC − 0.4 − VCC V Iinact = 1 mA 2003 Jul 04 the I/O is configured as an output 48 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) SYMBOL VOH PARAMETER HIGH-level output voltage TDA8030; TDA8031 CONDITIONS MIN. TYP. MAX. UNIT the I/O is configured as an output IOH < −20 µA 0.8VCC IOH < −40 µA; 5 and 3 V card 0.75VCC IOH = −10 mA 0 − VCC + 0.25 V VCC + 0.25 V − 0.4 V VIL LOW-level input voltage the I/O is configured as an input −0.3 − +0.8 V VIH HIGH-level input voltage the I/O is configured as an input 1.5 − VCC V IIL LOW-level input current on I/O VIL = 0 − − 500 µA ILIH HIGH-level input leakage current on I/O VIH = VCC − − 10 µA ti(tr) input transition times CL ≤ 60 pF; 5 or 3 V card − − 1.2 µs to(tr) output transition times CL ≤ 60 pF 5 or 3 V card − − 0.1 µs Rpu internal pull-up resistance between I/O and VCC 11 14 17 kΩ tW(pu) width of active pull-up pulse the I/O is configured as an 2/fXTAL1 output; LOW-to-HIGH transition 2/fXTAL1 − 3/fXTAL1 ns Ipu current from I/O when active pull-up pulse VOH = 0.9VCC; CL = 60 pF −1 − − mA − 0.1 V Auxiliary contacts C4/C8; integrated 10 kΩ pull-up resistor to VCC Vinact output voltage inactive Iinact current from I/O when inactive and pin grounded VOL LOW-level output voltage VOH no load 0 − − 0.3 V − − −1 mA C4 and C8 configured as an output; IOL = 1 mA 0 − 0.3 V HIGH-level output voltage C4 and C8 configured as an output; IOH < −40 µA; 5 and 3 V card 0.8VCC − VCC + 0.25 V VIL LOW-level input voltage C4 and C8 configured as an input −0.3 − +0.8 V VIH HIGH-level input voltage C4 and C8 configured as an input 1.5 − VCC V IIL LOW-level input current VIL = 0 − − 500 µA ILIH HIGH-level input leakage current VIH = VCC − − 10 µA Iinact = 1 mA 2003 Jul 04 49 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) SYMBOL PARAMETER TDA8030; TDA8031 CONDITIONS MIN. TYP. MAX. UNIT ti(tr) input transition times CL ≤ 60 pF − − 1.2 µs to(tr) output transition times CL ≤ 60 pF − − 0.1 µs Rpu internal pull-up resistance between C4/C8 and VCC 8 10 12 kΩ tW(pu) width of active pull-up pulse the I/O is configured as an output; LOW-to-HIGH transition − 200 − ns Ipu current from C4 and C8 when active pull-up VOH = 0.9VCC; CL = 60 pF −1 − − mA Timing tact activation sequence duration − − 160 µs tde deactivation sequence duration − − 100 µs Protections and limitations ICC(sd) shutdown and limitation current at VCC − −100 − mA II/O(lim) limitation current on I/O −10 − +10 mA ICLK(lim) limitation current on pin CLK −70 − +70 mA IRST(lim) limitation current on pin RST −20 − +20 mA IRST(sd) shutdown current on pin RST − −20 − mA Tsd shutdown temperature − 150 − °C − − 0.3VDDD V Card presence input; pin PRES VIL LOW-level input voltage VIH HIGH-level input voltage 0.7VDDD − − V IIL input leakage current low VIN = 0 − − ±20 µA IIH input leakage current high VIN = VDD − − ±20 µA General purpose I/Os; pins P0X, P1X, P2X and P3X VIL LOW-level input voltage − − 0.2VDDD V VIH HIGH-level input voltage 0.2VDDD + 0.9 − − V VOL LOW-level output voltage IOL = 1.6 mA − − 0.4 V VOH HIGH-level output voltage IOH = −30 µA VDDD − 0.7 − − V IIL LOW-level input current VI = 0.4 V −1 − −50 µA ITL HIGH-to-LOW transition current VI = 2 V − − −650 µA Pins ALE and PSEN VOL LOW-level output voltage IOL = 3.2 mA − − 0.4 V VOH HIGH-level output voltage IOH = −3.2 mA VDDD − 0.7 − − V 2003 Jul 04 50 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) SYMBOL PARAMETER TDA8030; TDA8031 CONDITIONS MIN. TYP. MAX. UNIT Pin EA/VPP VIL LOW-level input voltage − − 0.2VDDD V VIH HIGH-level input voltage 0.2VDDD + 0.9 − − V Vprog programming voltage 12.5 12.75 13 V TDA8030 Reset input; pin RESET (active HIGH) VIL LOW-level input voltage − − 0.2VDDD V VIH HIGH-level input voltage 0.7VDDD − − V DELATT output pin; optional connection for an external 1.5 kΩ resistor on pin D+ VOH HIGH-level output voltage when switched on; IOH = 2 mA 3.0 − 3.6 V IL leakage current when switched off − − 10 µA Programming input; pin PROG (active HIGH) and Test input; pin TEST (active HIGH) VIL LOW-level input voltage − − 0.2VDD V VIH HIGH-level input voltage 0.7VDD − − V − − 0.3 V 2.8 − 3.6 V ATX Transceiver DRIVER CHARACTERISTICS IN FULL-SPEED MODE; PINS D+ AND D− VOL(stat) LOW-level static output voltage VOH(stat) HIGH-level static output voltage Ro(drive) driver output resistance excluding outside resistors 10 − 30 Ω ttr transition times CL = 50 pF 4 − 20 ns tRFM rise and fall time matching CL = 50 pF 90 − 110 % Vcross output signal crossover voltage 1.3 − 2 V Rint(DP) integrated resistor on DP 1.1 − 1.9 kΩ RL = 1.5 kΩ when connected USB_SOFTCONNECT active RECEIVER CHARACTERISTICS IN FULL-SPEED MODE; PINS ATXDP AND ATXDM Vi(dif) differential input sensitivity 0.2 − − V Vdif(CM) differential common mode range in which Vi(dif) applies 0.8 − 2.5 V Vth(SE) single-ended receiver threshold 0.8 − 2.0 V 2003 Jul 04 51 This text is here in white to force landscape pages to be rotated correctly when browsing through the pdf in the Acrobat reader.This text is here in _white to force landscape pages to be rotated correctly when browsing through the pdf in the Acrobat reader.This text is here inThis text is here in white to force landscape pages to be rotated correctly when browsing through the pdf in the Acrobat reader. white to force landscape pages to be ... MICROCOSMOS BP1 0Ω R3 3 PDATA P12 P13 P14 P15 P16 RESET RFU RFU DELATT RFU CPROG 52 51 50 49 P10 P00/AD0 P01/AD1 P02/AD2 P03/AD3 P04/AD4 P05/AD5 P06/AD6 P07/AD7 EA/VPP ALE/PROG VDDD PSEN P27/A15 P26/A14 P25/A13 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 1 0Ω C12 2 22 pF 2 Y1 12 MHz 22 pF Fig.12 Application diagram. (More details in application note AN01013). C8 1 µF VDDD MGU892 Product specification 1 C13 P24/A12 5 6 GND 4 53 P23/A11 R4 54 P22/A10 NDATA 2 55 P11 TDA8030; TDA8031 VCC 56 P21/A9 J1 1 TDA8030 P20/A8 C7 22 nF 57 GNDD VDDU 1 IC1 XTAL1 VDDD R2 1.5 kΩ 2 58 XTAL2 C6 100 nF 3 59 P37/RD C5 10 µF (10 V) 4 60 P36/WR 6.8 µH 5 61 P35 L1 6 62 P34 52 VDD 7 63 P33/INT1 TP18 GND 8 4 64 P31/TXD VDDD C4 17 CGND 18 CLK 19 VCC 20 RST 21 TEST 22 VUP 23 LX 24 STGND 25 VDD 26 VDDU 27 UGND 28 D+ 29 D− 30 CDELAY 31 P30/RxD 32 P32/INT0 K1 K2 C3 1 µF I/O 16 15 14 13 12 11 10 9 CARD_READ_CCM0_2251 D1 BAT54 RFU C1I C2I C3I C4I PRES J2 C2 100 nF C8 2 C1 100 nF P17 0Ω Philips Semiconductors 3 USB smart card reader (OTP or ROM) 1 R1 C5I C6I C7I C8I 12 APPLICATION INFORMATION andbook, full pagewidth 2003 Jul 04 VDDD Philips Semiconductors Product specification USB smart card reader (OTP or ROM) TDA8030; TDA8031 13 PACKAGE OUTLINE LQFP64: plastic low profile quad flat package; 64 leads; body 10 x 10 x 1.4 mm SOT314-2 c y X A 48 33 49 32 ZE e E HE A A2 (A 3) A1 wM θ bp pin 1 index 64 Lp L 17 1 detail X 16 ZD e v M A wM bp D B HD v M B 0 2.5 5 mm scale DIMENSIONS (mm are the original dimensions) UNIT A max. A1 A2 A3 bp c D (1) E (1) e mm 1.6 0.20 0.05 1.45 1.35 0.25 0.27 0.17 0.18 0.12 10.1 9.9 10.1 9.9 0.5 HD HE 12.15 12.15 11.85 11.85 L Lp v w y 1 0.75 0.45 0.2 0.12 0.1 Z D (1) Z E (1) θ 1.45 1.05 7 0o 1.45 1.05 o Note 1. Plastic or metal protrusions of 0.25 mm maximum per side are not included. REFERENCES OUTLINE VERSION IEC JEDEC SOT314-2 136E10 MS-026 2003 Jul 04 JEITA EUROPEAN PROJECTION ISSUE DATE 00-01-19 03-02-25 53 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) To overcome these problems the double-wave soldering method was specifically developed. 14 SOLDERING 14.1 Introduction to soldering surface mount packages If wave soldering is used the following conditions must be observed for optimal results: This text gives a very brief insight to a complex technology. A more in-depth account of soldering ICs can be found in our “Data Handbook IC26; Integrated Circuit Packages” (document order number 9398 652 90011). • Use a double-wave soldering method comprising a turbulent wave with high upward pressure followed by a smooth laminar wave. • For packages with leads on two sides and a pitch (e): There is no soldering method that is ideal for all surface mount IC packages. Wave soldering can still be used for certain surface mount ICs, but it is not suitable for fine pitch SMDs. In these situations reflow soldering is recommended. 14.2 TDA8030; TDA8031 – larger than or equal to 1.27 mm, the footprint longitudinal axis is preferred to be parallel to the transport direction of the printed-circuit board; – smaller than 1.27 mm, the footprint longitudinal axis must be parallel to the transport direction of the printed-circuit board. Reflow soldering The footprint must incorporate solder thieves at the downstream end. Reflow soldering requires solder paste (a suspension of fine solder particles, flux and binding agent) to be applied to the printed-circuit board by screen printing, stencilling or pressure-syringe dispensing before package placement. Driven by legislation and environmental forces the worldwide use of lead-free solder pastes is increasing. • For packages with leads on four sides, the footprint must be placed at a 45° angle to the transport direction of the printed-circuit board. The footprint must incorporate solder thieves downstream and at the side corners. Several methods exist for reflowing; for example, convection or convection/infrared heating in a conveyor type oven. Throughput times (preheating, soldering and cooling) vary between 100 and 200 seconds depending on heating method. During placement and before soldering, the package must be fixed with a droplet of adhesive. The adhesive can be applied by screen printing, pin transfer or syringe dispensing. The package can be soldered after the adhesive is cured. Typical reflow peak temperatures range from 215 to 270 °C depending on solder paste material. The top-surface temperature of the packages should preferably be kept: Typical dwell time of the leads in the wave ranges from 3 to 4 seconds at 250 °C or 265 °C, depending on solder material applied, SnPb or Pb-free respectively. • below 220 °C (SnPb process) or below 245 °C (Pb-free process) A mildly-activated flux will eliminate the need for removal of corrosive residues in most applications. – for all BGA and SSOP-T packages 14.4 – for packages with a thickness ≥ 2.5 mm Fix the component by first soldering two diagonally-opposite end leads. Use a low voltage (24 V or less) soldering iron applied to the flat part of the lead. Contact time must be limited to 10 seconds at up to 300 °C. – for packages with a thickness < 2.5 mm and a volume ≥ 350 mm3 so called thick/large packages. • below 235 °C (SnPb process) or below 260 °C (Pb-free process) for packages with a thickness < 2.5 mm and a volume < 350 mm3 so called small/thin packages. When using a dedicated tool, all other leads can be soldered in one operation within 2 to 5 seconds between 270 and 320 °C. Moisture sensitivity precautions, as indicated on packing, must be respected at all times. 14.3 Wave soldering Conventional single wave soldering is not recommended for surface mount devices (SMDs) or printed-circuit boards with a high component density, as solder bridging and non-wetting can present major problems. 2003 Jul 04 Manual soldering 54 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) 14.5 TDA8030; TDA8031 Suitability of surface mount IC packages for wave and reflow soldering methods SOLDERING METHOD PACKAGE(1) WAVE BGA, LBGA, LFBGA, SQFP, SSOP-T(3), TFBGA, VFBGA not suitable suitable(4) DHVQFN, HBCC, HBGA, HLQFP, HSQFP, HSOP, HTQFP, HTSSOP, HVQFN, HVSON, SMS not PLCC(5), SO, SOJ suitable LQFP, QFP, TQFP SSOP, TSSOP, VSO, VSSOP REFLOW(2) suitable suitable suitable not recommended(5)(6) suitable not recommended(7) suitable Notes 1. For more detailed information on the BGA packages refer to the “(LF)BGA Application Note” (AN01026); order a copy from your Philips Semiconductors sales office. 2. All surface mount (SMD) packages are moisture sensitive. Depending upon the moisture content, the maximum temperature (with respect to time) and body size of the package, there is a risk that internal or external package cracks may occur due to vaporization of the moisture in them (the so called popcorn effect). For details, refer to the Drypack information in the “Data Handbook IC26; Integrated Circuit Packages; Section: Packing Methods”. 3. These transparent plastic packages are extremely sensitive to reflow soldering conditions and must on no account be processed through more than one soldering cycle or subjected to infrared reflow soldering with peak temperature exceeding 217 °C ± 10 °C measured in the atmosphere of the reflow oven. The package body peak temperature must be kept as low as possible. 4. These packages are not suitable for wave soldering. On versions with the heatsink on the bottom side, the solder cannot penetrate between the printed-circuit board and the heatsink. On versions with the heatsink on the top side, the solder might be deposited on the heatsink surface. 5. If wave soldering is considered, then the package must be placed at a 45° angle to the solder wave direction. The package footprint must incorporate solder thieves downstream and at the side corners. 6. Wave soldering is suitable for LQFP, TQFP and QFP packages with a pitch (e) larger than 0.8 mm; it is definitely not suitable for packages with a pitch (e) equal to or smaller than 0.65 mm. 7. Wave soldering is suitable for SSOP, TSSOP, VSO and VSSOP packages with a pitch (e) equal to or larger than 0.65 mm; it is definitely not suitable for packages with a pitch (e) equal to or smaller than 0.5 mm. 2003 Jul 04 55 Philips Semiconductors Product specification USB smart card reader (OTP or ROM) TDA8030; TDA8031 15 DATA SHEET STATUS LEVEL DATA SHEET STATUS(1) PRODUCT STATUS(2)(3) Development DEFINITION I Objective data II Preliminary data Qualification This data sheet contains data from the preliminary specification. Supplementary data will be published at a later date. Philips Semiconductors reserves the right to change the specification without notice, in order to improve the design and supply the best possible product. III Product data This data sheet contains data from the product specification. Philips Semiconductors reserves the right to make changes at any time in order to improve the design, manufacturing and supply. Relevant changes will be communicated via a Customer Product/Process Change Notification (CPCN). Production This data sheet contains data from the objective specification for product development. Philips Semiconductors reserves the right to change the specification in any manner without notice. Notes 1. Please consult the most recently issued data sheet before initiating or completing a design. 2. The product status of the device(s) described in this data sheet may have changed since this data sheet was published. The latest information is available on the Internet at URL http://www.semiconductors.philips.com. 3. For data sheets describing multiple type numbers, the highest-level product status determines the data sheet status. 16 DEFINITIONS 17 DISCLAIMERS Short-form specification The data in a short-form specification is extracted from a full data sheet with the same type number and title. For detailed information see the relevant data sheet or data handbook. Life support applications These products are not designed for use in life support appliances, devices, or systems where malfunction of these products can reasonably be expected to result in personal injury. Philips Semiconductors customers using or selling these products for use in such applications do so at their own risk and agree to fully indemnify Philips Semiconductors for any damages resulting from such application. Limiting values definition Limiting values given are in accordance with the Absolute Maximum Rating System (IEC 60134). Stress above one or more of the limiting values may cause permanent damage to the device. These are stress ratings only and operation of the device at these or at any other conditions above those given in the Characteristics sections of the specification is not implied. Exposure to limiting values for extended periods may affect device reliability. Right to make changes Philips Semiconductors reserves the right to make changes in the products including circuits, standard cells, and/or software described or contained herein in order to improve design and/or performance. When the product is in full production (status ‘Production’), relevant changes will be communicated via a Customer Product/Process Change Notification (CPCN). Philips Semiconductors assumes no responsibility or liability for the use of any of these products, conveys no licence or title under any patent, copyright, or mask work right to these products, and makes no representations or warranties that these products are free from patent, copyright, or mask work right infringement, unless otherwise specified. Application information Applications that are described herein for any of these products are for illustrative purposes only. Philips Semiconductors make no representation or warranty that such applications will be suitable for the specified use without further testing or modification. 2003 Jul 04 56 Philips Semiconductors – a worldwide company Contact information For additional information please visit http://www.semiconductors.philips.com. Fax: +31 40 27 24825 For sales offices addresses send e-mail to: [email protected]. SCA75 © Koninklijke Philips Electronics N.V. 2003 All rights are reserved. Reproduction in 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 The Netherlands 613502/01/pp57 Date of release: 2003 Jul 04 Document order number: 9397 750 10125