Gemplus GPR400 Reference Manual

Smartcard reader / writer

Advertisement

Quick Links

Version 1.3
GPR400
Reference Manual

Advertisement

Table of Contents
loading

Summary of Contents for Gemplus GPR400

  • Page 1 Version 1.3 GPR400 Reference Manual...
  • Page 2 GEMPLUS reserves the right to change the functions and specifications of its products at any time without prior notice. This document was prepared by GEMPLUS for both its clients and for its own internal use. The information contained herein is the sole property of GEMPLUS and shall not under any circumstances be reproduced without prior consent of the company.
  • Page 3: About This Guide

    The following paragraphs tell you where to find information when you need it. Read this section in order to use this guide to its full potential. Preface Read the Preface for a general description of the GPR400 and of its environment. GPR400 Hardware Read the “GPR400 Hardware”...
  • Page 4: Table Of Contents

    GPR400 Architecture Overview............3 The 2K byte Memory..............4 PCCard Configuration..............5 SENDING COMMANDS TO THE READER Sending Commands to the GPR400 ..........6 Command and Response Format ........... 8 Description of the TLV Field ............ 8 Chaining TLV fields ..............9 GPR400 Commands ..............
  • Page 5 Maximum Operating Values............19 Standard Operating Conditions............. 20 AC Test Conditions ..............21 AC Characteristics............... 21 APPENDIX B - PIN-OUT DESCRIPTION APPENDIX C - SAMPLE GPR400 SCENARIOS Scenario 1................25 Scenario 2................25 Scenario 3................27 APPENDIX D - STATUS CODES...
  • Page 6: Preface

    Smartcard, and that fits into a standard PCMCIA slot. When fitted into the PCMCIA slot, the GPR400 leaves enough space for a Smartcard also to be inserted into the PCMCIA slot beneath it, with its edges touching the Smartcard’s module as shown in Figure 1 below.
  • Page 7 • 32 bytes are used for I/O data exchange, • 2016 bytes are used as the Attribute Memory (defined by the PCMCIA Standard 2.1 or by the PC Card Standard) and can also be used as extended executable memory for the microcontroller. © GEMPLUS...
  • Page 8: The Gpr400 Hardware

    Smartcards. The GPR400 is connected to a portable PC using a PCMCIA slot (socket). The PCMCIA Connector The GPR400 is compatible with all PCMCIA sockets that accept type II PC Cards (5.0 mm in thickness). The GPR400 includes a standard 68 pin connector.
  • Page 9: The 2K Byte Memory

    THE GPR400 HARDWARE The 2K byte Memory The GPR400 has 2K bytes of RAM included in the specific component. These 2K bytes are mapped as follows: 2016 Bytes Attribute MEMORY External RAM Space Smartcard registers I/O Start Address 32 Bytes I/O BUFFER Figure 3.
  • Page 10: Pccard Configuration

    : 0300h, 0320h, 0340h, 0200h, 220h, 0240h or any space 32-byte long memory space. Configuration Option Register structure (see also PCCard Standard): bit 7: set to 1, this bit initializes the GPR400 (minimum pulse of 5 µs) bit 6-5 : reserved (reset to 0)
  • Page 11: Sending Commands To The Reader

    SENDING COMMANDS TO THE READER You can send the same commands to a Smartcard from the GPR400 as those from any other reader. The command parameters will vary according to the Smartcard, and they are listed in this section. For details regarding available commands for each Smartcard, read the appropriate documentation.
  • Page 12 2 : BUSY/IREQ : this bit is an image of the PCMCIA pin IREQ (Interrupt Request). The GPR400 sets this bit to 1 after command execution, forcing the IREQ pin to 0. The host can receive the command response and then reset this bit to 0.
  • Page 13: Command And Response Format

    The PRG Data register (refer to the “Using the PRG” section) is located at address 01h in the I/O buffer. Command and Response Format The GPR400 command and response are structured in the TLV format. This is as follows: Type, Length, Variable...
  • Page 14: Chaining Tlv Fields

    Note that by default the Smartcard interface is configured for ISO T = 0 protocol, with the clock equal to 3.68 MHz. The T=1 protocol is automatically set if the GPR400 recognizes the T=1 Smartcard during an “OPEN SESSION” command.
  • Page 15 = 0: Smartcard clock = 3.68 MHz 1: Smartcard clock = 7.36 MHz b7, b5, b3, b2 : :RFU Answer Format Type Ta = Tc + 02h (52h) Length L = 01 Variable V = Reader Status Code © GEMPLUS...
  • Page 16: Open Session

    This command powers off a Smartcard in compliance with ISO 7816 standards. Command Format T = 10h L = 00 Answer Format Type Ta = Tc + 02h (12h) Length L = 01 Variable V = Reader Status Code © GEMPLUS...
  • Page 17: Apdu Exchange

    This command sends a request to a Smartcard (T=0 or T=1 or use o f downloaded drivers). In this mode, the GPR400 relays the Transport Protocol Data Unit (TPDU) command to the Smartcard, and then returns the TPDU response from the Smartcard to the application.
  • Page 18: Activate Driver

    Activate Driver This command validates a downloaded IC driver or a specific command (subroutine) for the GPR400. The data corresponding to this driver or this specific command must first be downloaded using the “LOAD MEMORY” command. The downloaded IC Driver is used to exchange data with Smartcards that do not support T=0 or T=1 (e.g.
  • Page 19: Reset Gpr

    SENDING COMMANDS TO THE READER Reset GPR This command is not controlled by the GPR400. It is directly accessed from the Handshake Register (refer to the “Handshake Register” section). Power Down GPR This command puts the GPR400 in low-consumption mode (Standby or Power Down modes).
  • Page 20: Load Memory

    Vex : (exclusive) : Smartcard command for data coming from a Smartcard Data : (exclusive) : Data to load (for data coming from the host ) Answer Format Type Ta = Tc + 02h Length L = 01 Variable V = Reader Status Code © GEMPLUS...
  • Page 21: Read Memory

    Lng : number of bytes to be read (00 = 256 bytes ) Answer Format Type Ta = Tc + 02h Length L = Length of V field Variable V = Reader Status Code, Vinf Vinf corresponds to the data read. © GEMPLUS...
  • Page 22: Exec Memory

    L = Length of V field Variable V = Reader Status Code , Answer User Data (user defined). Status GPR This command provides 3 types of information on the GPR400’s status: firmware, Smartcard and driver information. Command Format T = A0h L = 01 V = b7...b0...
  • Page 23 Length L = Length of V field Variable V = Reader Status Code , information Data for GPR400 firmware information (7 bytes), Data=OS version: Binary Coded Decimal byte Mem: 00h if Flash Memory absent 11h if Flash Memory present General Setup Register byte DIR and ADR bytes of the “Validate Driver”...
  • Page 24: Appendix A - Operating Specifications

    APPENDIX A - OPERATING SPECIFICATIONS This appendix specifies the GPR400's operating conditions, including : • maximum operating values • operating conditions • AC test conditions • AC characteristics Maximum Operating Values Table 3 lists the GPR400's maximum operating conditions. Table 3. GPR400 Maximum Operating Conditions...
  • Page 25: Standard Operating Conditions

    APPENDIX A - OPERATING SPECIFICATIONS Standard Operating Conditions Table 4 lists the GPR400's standard operating conditions. Table 4. GPR400 Standard Operating Conditions Symbol Parameter Limits Unit Test Conditions Operating º C temperature Vcc supply voltage 5.25 Vpph Active Vpp supply...
  • Page 26: Ac Test Conditions

    APPENDIX A - OPERATING SPECIFICATIONS AC Test Conditions The GPR400 AC Test conditions are listed below: Input rise and fall times 10 ns Input pulse levels Vol and Voh Input timing reference level Vil and Vih Output timing reference level...
  • Page 27: Appendix B - Pin-Out Description

    APPENDIX B - PIN-OUT DESCRIPTION Table 5 describes the GPR400 PIN-OUT. Table 5. GPR400 PIN-OUT. Signal Function Signal Function Ground Ground Data bit 3 Card Detect 1 Data bit 4 N.C. Data bit 5 N.C. Data bit 6 N.C. Data bit 7 N.C.
  • Page 28 Valid access Add bit 2 Reg. Valid Add bit 1 BVD2 Bat Volt Detect Add bit 0 BVD1 Bat Volt Detect Data bit 0 N.C. Data bit 1 N.C. Data bit 2 N.C. Ground Card Detect 2 Ground Ground © GEMPLUS...
  • Page 29 BVD1, BVD2 (outputs): battery voltage detection. These signals are internally driven high to maintain SRAM Smartcard compatibility. RST (= RESET) : must be set to 1 by the host to reset the GPR400, then reset to 0 during at least 20 ms.
  • Page 30: Appendix C - Sample Gpr400 Scenarios

    This appendix provides sample scenarios. Scenario 1 GPR400 configuration at address 0240h in the host PC system resources. This scenario is automatically done by the Socket and Card Services (PCMCIA Standard) if it is found in the host (in compliance with PCMCIA standard rel 2.1).
  • Page 31 APPENDIX C - SAMPLE GPR400 SCENARIOS Open Session: T.L.V. = 20.00. write I/O @0242h 20h, @0243h 00h. write I/O @0240h : bit 1 set to 1 wait for Interrupt Request ( IREQ ) then write I/O @0240h bit 2 reset to 0...
  • Page 32: Scenario 3

    APPENDIX C - SAMPLE GPR400 SCENARIOS Scenario 3 Send an ISO command to a new Smartcard. (protocol T = X, clock = 3.68 MHz ) Reset GPR : write I/O at @ 0240h (Handshake Register) : bit 0 set to 1 reset to 0,5 us later.
  • Page 33 APPENDIX C - SAMPLE GPR400 SCENARIOS T.L.V. = 50.01.00 selection of Smartcard driver, clock = 3.68 MHz write I/O @0242h: 50 01 00 write I/O @0240h : bit 1 set to 1 wait for Interrupt Request (IREQ) then write I/O @0240h bit 2 reset to 0 read I/O @0242h : 52.01.00.
  • Page 34 APPENDIX C - SAMPLE GPR400 SCENARIOS Close Session: T.L.V. = 10.00. write I/O @0242h: 10.00 write I/O @0240h : bit 1 set to 1 wait for Interrupt Request (IREQ) then write I/O @0240h bit 2 reset to 0 read I/O @0242h : 12.01.00.
  • Page 35: Appendix D - Status Codes

    APPENDIX D - STATUS CODES Status codes provided by the GPR400 are listed in the table below: Code Meaning Command successfully executed. Unknown reader command. The first byte of the request is not a valid command type. Unknown Smartcard driver. The driver was not loaded.
  • Page 36 Make sure that the card instruction is complete. Card in short circuit. Card absent. There is no card in the connector. The card may have been removed when powered on, but no instruction has been interrupted. © GEMPLUS...

Table of Contents