电子工程世界电子工程世界电子工程世界

产品描述

搜索
 

AS3955A-ATWT-S4

器件型号:AS3955A-ATWT-S4
器件类别:热门应用    无线/射频/通信   
厂商名称:AMS
厂商官网: http://www.ams-semitech.com
标准:
下载文档

器件描述

IC NFC INTERFACE WLP

参数
产品属性属性值
类型:RFID 应答器
频率:13.58MHz
标准:ISO 14443,NFC
接口:SPI
电压 - 电源:1.65 V ~ 5.5 V
工作温度:-40°C ~ 125°C
封装/外壳:12-UFBGA,WLCSP
供应商器件封装:12-WLCSP(2.2x1.4)

AS3955A-ATWT-S4器件文档内容

General Description  AS3955

                     NFC Forum Compliant Dynamic Tag

                     AS3955 NFC Dynamic Tag IC is the ultimate solution to easily
                     add NFC functionality to electronic devices. Thanks to a high
                     sensitivity ISO14443A frontend and high integrated resonance
                     capacitor, AS3955 offers standalone NFC passive tag
                     functionality in a small footprint. Fast system integration and
                     high speed data transfer are guaranteed by the available SPI
                     and IC interfaces and by the optimized protocols (Tunneling
                     Mode and Extended Mode), allowing bidirectional
                     communication between the device microcontroller and an
                     external NFC compliant device or ISO14443A reader device
                     (PCD).

                     AS3955 is able to operate fully powered by the RF field, without
                     any external supply. This, combined with an advanced energy
                     harvesting feature, greatly increases battery life time or even
                     allows battery-less designs.

                     AS3955 is used with an appropriate antenna coil connected to
                     the terminals LC1 and LC2, and behaves as a standard passive
                     ISO 14443A tag (PICC). After the anti-collision protocol stage,
                     based on configuration, AS3955 can operate as a standalone
                     NFC Forum Type 2 Tag or, when tunneling mode is activated, as
                     a bridge between the PCD and the microcontroller, e.g. to
                     emulate a custom or standard ISO14443A Level 3 or Level 4 PICC
                     or a NFC Forum tag. A configurable wake-up signal notifies the
                     microcontroller on ongoing RF activities, in order to minimize
                     overall power consumption.

                     AS3955 includes an embedded EEPROM memory that can be
                     accessed from the PCD through the RF link or from the
                     microcontroller through the SPI or IC interfaces. Part or all
                     memory can be protected by a 32-bit password, or permanently
                     locked.

                     AS3955 supports ISO 14443A up to Level 4 and is designed
                     according to EMVCo requirements, to enable the emulation of
                     contactless smart cards or NFC Forum compliant Type 2 or Type
                     4 Tags.

                     AS3955 is designed for high reliability, and can operate in a wide
                     power supply range from 1.65V to 5.5V, in a wide temperature
                     range from -40 C to 125 C. EEPROM memory reaches
                     automotive grade quality with endurance of 100,000 cycles and
                     data retention of 10 years at 125 C.

                     Ordering Information and Content Guide appear at end of
                     datasheet.

ams Datasheet                          Page 1
[v1-01] 2015-Apr-29  Document Feedback
                                                      AS3955 - General Description

                             Key Benefits & Features

                             The benefits and features of AS3955, NFC Forum compliant
                             Dynamic Tag are listed below:

Figure 1:
Added Value of Using AS3955

                   Benefits                           Features

NFC Forum compliance for full interoperability       Type 2 Tag standalone functionality
                                                       Type 4 Tag emulation with external MCU
NFC Forum compliance
ISO 14443A compliance up to Level 4                  Operating frequency at 13.56 MHz
                                                       Bit rate at 106 kbps
                                                       7-byte UID

Choice of memory size based on application          2 kbit EEPROM (216 bytes of user data) or
                                                       4 kbit EEPROM (472 bytes of user data)

Allows zero-power standby                            Configurable passive wake-up interrupt
                                                       Energy harvesting to supply up to 5mA @ 4.5V
Enables long battery life time, or battery-less
  designs                                               (regulated)

Allows fast antenna prototyping (ISO antenna         45 pF integrated resonant capacitor
  classes 1 to 6)

Design flexibility, easy integration. Fits          3/4-wire SPI slave interface up to 5 Mbps
  requirements for various embedded applications       IC slave interface up to 1 Mbps

Design flexibility, easy integration                Programmable IC address
                                                       Wide interface supply range (1.65V to 5.5V)
Fits supply requirements for various applications,   32-bit password memory protection
  including industrial

Support for multiple applications, and storage of
  sensitive data

High performance and robust data                     Tunneling and Extended modes for MCU
  communication, allows custom protocols to be          communication
  implemented

Consistent NFC behavior of battery supplied          Silent mode (MCU power status detection),
  devices in e.g. pairing applications                  configurable between 1.42V and 3.65V

Possibility to disable RF communication             Configurable Chip Kill mode

Small outline, compatibility to common inlay and    Sawn wafer
  card manufacturing lines, surface-mount             WL-CSP package
  assembly                                             10-pin MLPD 3x3mm package

Page 2                                                                                   ams Datasheet
Document Feedback                                                                  [v1-01] 2015-Apr-29
AS3955 - General Description

                              Applications

                              AS3955 is suited to a wide range of applications, including

                                  NFC connection handover (BluetoothTM,
                                     Bluetooth Low Energy, Wi-Fi pairing)

                                  Equipment setup, service and configuration
                                  Firmware upgrades
                                  Activity and status logging
                                  Wireless authentication (e.g. access control to buildings

                                     and equipment)

                              Typical Markets:

                                  EMV payment cards
                                  Consumer electronics, wearables and smart clothing
                                  Home appliances
                                  Automotive
                                  Industrial equipment and building automation
                                  Remote sensing
                                  Gaming

                              A typical system diagram is depicted in Figure 2.
                              At the presence of a 13.56 MHz field generated by a NFC device,
                              AS3955 powers up, notifies the microcontroller through a
                              wake-up signal and handles the tag activation sequence.
                              Depending on configuration, several operations are then
                              possible:

                                  AS3955 exchanges with the NFC device NDEF data stored
                                     in the internal EEPROM

                                  The microcontroller exchanges with the NFC device NDEF
                                     data stored in external memory

                                  The microcontroller exchanges data with AS3955. This
                                     operation can be performed concurrently with
                                     communication over the RF link, or also in absence of RF
                                     power, in presence of an external supply.

                              Figure 2:
                              Typical System Diagram

                              AS3955  IC or SPI  microcontroller
                                      wake-up

ams Datasheet                                                       Page 3
[v1-01] 2015-Apr-29                               Document Feedback
                                                                                                 AS3955 - General Description

                                   This built-in flexibility makes it ideal for a number of
                                   applications requiring non-volatile memory to be accessed
                                   when the system is not powered, e.g.:

                                        personalization data is programmed by the NFC device
                                          (even in case SPI / IC is not powered) and it is later read
                                          by microcontroller through SPI / IC interface

                                        Log data is stored periodically by the microcontroller and
                                          can then be read by the NFC device even when the
                                          microcontroller is not powered

                                        A NDEF message is regularly modified by the
                                          microcontroller (e.g. Bluetooth pin code, or Wi-Fi key, or
                                          dynamic URL) and it is later read by a NFC device.

                                   Block Diagram

                                   The functional blocks of this device for reference are
                                   shown below:

Figure 3:
AS3955 Block Diagram

                   VP_REG

                           VP_INT   POWER                 AS3955        VP_IO
                                   MANAGER
                                               VDD

LC1                                NFC FORUM   EEPROM          IC/SPI     IRQ
                    AFE            TYPE 2 TAG  2k or 4kbit  INTERFACE   IC/SPI

LC2                                   LOGIC                                VSS

Page 4                                                                  ams Datasheet
Document Feedback                                                 [v1-01] 2015-Apr-29
AS3955 - General Description

                              AS3955 is composed of NFC-A Analog Front End (AFE), NFC Type
                              2 Tag Logic, EEPROM, SPI / IC Interface and Power Supply
                              Manager Block (Power Manager).

                              The AFE is connected to an external tag coil which forms,
                              together with integrated resonant capacitor, a LC tank
                              resonating with the external electromagnetic field frequency
                              of 13.56 MHz. The AFE has built-in rectifier and regulators. The
                              output of the internal regulator (VP_INT) is used to supply the
                              AFE and also the Logic and EEPROM (through Power Supply
                              Manager). A regulator output VP_REG is available on a pin to
                              supply external circuitry by harvesting energy from the RF field.

                              The Power Manager is controlling the power supply of Logic
                              and EEPROM. The two blocks can be supplied either from
                              VP_INT or from VP_IO (SPI / IC power supply) depending on
                              the power mode of the chip. AS3955 offers a power mode where
                              VP_IO supply is switched to VP_INT whenever the RF field is
                              present. VP_IO is typically used when some activity is started
                              over the SPI / IC and the VP_INT is too low to be used as a power
                              supply.

                              The Logic is responsible for handling the anti-collision
                              sequence, when acting as NFC Type 2 Tag, and other data
                              transfer. The interface logic contains also a 32-byte buffer for
                              block transmission between NFC device and AS3955.

                              The EEPROM is used to store the UID, configuration and control
                              bits, and user data which can be accessed also via the SPI / IC.

ams Datasheet                                   Page 5
[v1-01] 2015-Apr-29           Document Feedback
                                                           AS3955- PinAssignments

Pin Assignments

                   Figure 4:
                   AS3955 Pin Assignment

                     VP_IO 1                 GND              10 IRQ
                   VP_REG 2                                   9 MISO / SDA
                                           AS3955             8 MOSI
                        LC1 3               MLPD              7 SCLK / SCL
                        LC2 4             (Top view)          6 /SS
                        VSS 5

                               /SS  MOSI SCLK / SCL MISO / SDA

                               A1         A2          A3      A4

                   VP_REG                                     IRQ

                               B1                             B4

                               VSS        LC2         LC1     VP_IO

                               C1         C2          C3      C4

                                    AS3955 WL-CSP (Top view)

Page 6                                                              ams Datasheet
Document Feedback                                             [v1-01] 2015-Apr-29
AS3955 - Pin Assignments

                               Pin Description

Figure 5:
Pin Description

10-pin   10-pin           Die  Pin Name Pin Type                                    Description
MLPD    WL-CSP

NA                   NA   1    meas    Analog I/O Analog test pin (1)

1                    C4   2    VP_IO   Supply Pad Positive supply of the interface / IC

2                    B1   3    VP_REG  Analog                                       Regulator output
                                       Output

3                    C3   4    LC1                                                  Connection to tag coil

                                       Analog I/O

4                    C2   5    LC2                                                  Connection to tag coil

5                    C1   6    VSS     Supply Pad Ground, die substrate potential

6                    A1   9    /SS                                                  SPI enable (active low) /
                                                                                    IC interface enable

                                       Digital

7                    A3   10   SCLK / SCL Input                                     SPI / IC clock

8                    A2   11   MOSI                                                 SPI data input

                                       Digital

9                    A4   12   MISO / SDA Output /                                  SPI data output / IC data line

                                       Tristate

10                   B4   13   IRQ     Digital                                      Interrupt request output
                                       Output                                       (active high)

Note(s) and/or Footnote(s):
1. Pin meas is not bonded in MLPD package. It is only used during wafer sort test.

ams Datasheet                                                                                                          Page 7
[v1-01] 2015-Apr-29                                                                                  Document Feedback
                                                                   AS3955- AbsoluteMaximumRatings

Absolute Maximum Ratings                Stresses beyond those listed under Absolute Maximum Ratings
                                        may cause permanent damage to the device. These are stress
Figure 6:                               ratings only. Functional operation of the device at these or any
Absolute Maximum Ratings                other conditions beyond those indicated under Operating
                                        Conditions is not implied. Exposure to absolute maximum
                                        rating conditions for extended periods may affect device
                                        reliability.

Symbol             Parameter            Min Max Unit                  Comments

                                        Electrical Parameters

VDD DC supply voltage                   -0.5        6.5        V

Vin     Input pin voltage except LC1    -0.5        6.5        V
        and LC2

        Input pin voltage pins LC1 and  -0.5        6.5        V
        LC2

        Peak current induced on pins                100        mA
        LC1 and LC2

Iscr    Input current (latch-up         -100        100 mA Norm: Jedec 78
        immunity)

                                      Electrostatic Discharge

ESDHBM Electrostatic Discharge HBM            2               kV  Norm: MIL 883 E method 3015
                                                                   (Human Body Model)

ESDCDM  ESD Machine and Charged             500             V
        Device Models

                           Temperature Ranges and Storage Conditions

Tstrg   Storage temperature             -55         150        C

                                                                   Norm: IPC/JEDEC J-STD-020. The

                                                                   reflow peak soldering

                                                                   temperature (body temperature)

                                                                   is specified according IPC/JEDEC

Tbody Package body temperature                      260        C  J-STD-020 "Moisture/Reflow
                                                                   Sensitivity Classification for

                                                                   Non-hermetic Solid State Surface

                                                                   Mount Devices." The lead finish

                                                                   for Pb-free leaded packages is

                                                                   matte tin (100% Sn).

RHNC    Relative Humidity               5           85         %
        non-condensing

MSL Moisture Sensitivity Level                3                    Represents a max. floor life time
                                                                   of 168h

Page 8                                                                      ams Datasheet
Document Feedback                                                     [v1-01] 2015-Apr-29
AS3955 - Electrical Characteristics

Electrical Characteristics                  All limits are guaranteed. The parameters with min and max
                                            values are guaranteed with production tests or SQC (Statistical
                                            Quality Control) methods.

                                            Operating Conditions

                                            All in this specification defined tolerances for external
                                            components need to be assured over the whole operation
                                            conditions range and also over lifetime.

Figure 7:
Electrical Characteristics

Symbol               Parameter              Min           Max  Unit            Notes

Ilim                 Limiter current                      30   mA

VVP_IO               SPI power supply       1.65          5.5  V     When logic powered from
                                                                     RF interface

VVP_IO               SPI power supply       1.65          5.5  V     When logic powered from
                                                                     VP_IO

Tjunc                Junction temperature   -40           125  C

                                            DC/AC Characteristics for Digital Inputs and
                                            Outputs

Figure 8:
CMOS Inputs

Symbol               Parameter              Min           Typ  Max   Unit       Note

VIH         High level input voltage       0.7 * VDD_IO             V         @125C
VIL         Low level input voltage
ILEAK        Input leakage current                             0.3 * VDD_IO V

                                                               10    A

Note(s) and/or Footnote(s):
1. Valid for input pins /SS, MOSI and SCLK

ams Datasheet                                                                                    Page 9
[v1-01] 2015-Apr-29                                                            Document Feedback
                                                              AS3955- ElectricalCharacteristics

Figure 9:
CMOS Outputs

Symbol             Parameter        Min     Typ          Max          Unit                                       Note

VOH High level output voltage       0.85 *                            V
                                   VDD_IO                                       Isource=1mA
                                                                                 VP_IO = 5V
VOL Low level output voltage                              0.15 *
                                                         VDD_IO       V

RO       Output Resistance                  200          400         

RPD      Pull-down resistance pad           10                        k                                          see note (1)
         MISO

Note(s) and/or Footnote(s):Valid for output pins MISO and IRQ
1. Pull down can be enabled while MISO output is in tristate. The activation is controlled by register setting.

                                   Electrical Specifications

Figure 10:
Electrical Specifications

Symbol             Parameter       Min      Typ          Max Unit                                                Note

ISB_SPI  Stand by consumption on            100                   nA
         VP_IO

VLIM     Limiter Voltage                    5.2          5.5      V                                              ILC=30mA (DC) (1)

IS       Supply current                     350                   A                                              see note (2)

VHF_PON  HF_PON threshold                   1.6                   V                                              see note (3)
         (rising VREG)                      2.3

VPOR_HY HF_PON hysteresis                   0.8                 V
                                                                V
VMOD Modulator ON voltage drop              1.2                 pF                                               ILC=1mA (1)
                                            2.6               cycles                                             ILC=30mA (1)
                                                              years
CRES     Resonance Capacitor                         45                                                           @ 125C (4)
EEEN     EEPROM endurance          100 000                                                                        @ 125C (5)
EERET    EEPROM retention
                                      10

Note(s) and/or Footnote(s):VP_IO=1.8V, Temperature 25C unless noted otherwise
1. ILC is the current flowing through LC1 and LC2 pins
2. Internal supply current measured over VP_IO pin, by forcing internal digital supply to 2.0V, and applying 13.56 MHz alternative

  pulses with amplitude 3.0Vpp to LC1 and LC2.
3. 1.6V is set in Power Mode 2 only.
4. See Figure 11.
5. See Figure 12.

Page 10                                                                                                                ams Datasheet
Document Feedback                                                                                                [v1-01] 2015-Apr-29
AS3955 - Electrical Characteristics

Figure 11:
EEPROM Endurance Over Temperature

                                                      Endurance EEPROM

                                       2,500,000

                                       2,000,000

                     Number of Cycles  1,500,000

                                       1,000,000

                                       500,000

                                       0
                                         -40 -30 -20 -10 0 10 20 30 40 50 60 70 80 90 100 110 120 130

                                                                         Temperature [C]

Figure 12:
EEPROM Data Retention Over Temperature

                                                      Data retention EEPROM

data retention [years]10,000
                       1,000
                         100                      50  75  100                125  150
                           10
                            1
                            0
                               25

                                                      Temperature [C]

ams Datasheet                                                                                     Page 11
[v1-01] 2015-Apr-29                                                               Document Feedback
Detailed Description                                                                          AS3955 - Detailed Description

Figure 13:                       Analog Frontend (AFE)
PICC AFE Block Diagram
                                 The AFE is connected to external tag coil, which together with
                                 the integrated resonant capacitor forms an LC tank resonating
                                 at the external electromagnetic field frequency (13.56 MHz).
                                 Figure 13 depicts the main AFE building blocks.

                                                                      VP_REG  VP_INT

                        RECTIFIER              VREC EXTERNAL
                                                           REGULATOR

                        LIMITER                 INTERNAL
                                               REGULATOR

LC1

                        MODULATOR              BIAS   HF                      NFC Type 2
                           SWITCH                    PON                       Tag Logic

LC2
                                  DEMODULATOR

                            CLOCK
                        EXTRACTOR

Page 12                          Rectifier extracts DC power supply from the AC voltage
Document Feedback                induced on coil terminals.
                                 Limiter limits the maximum voltage on coil terminals to protect
                                 AFE from destruction. At voltages that exceed limiter voltage it
                                 starts to absorb current (acts as some sort of shunt regulator).
                                 Modulator Switch is used for communication the NFC tag to a
                                 NFC device. When switched on it will draw current from coil
                                 terminals. This mechanism is called load modulation. Variation
                                 of current in the modulator switch (ON and OFF state) is seen
                                 as modulation by the NFC device.

                                                                                                         ams Datasheet
                                                                                                  [v1-01] 2015-Apr-29
AS3955 - Detailed Description

                               Demodulator is used for communication NFC device to NFC
                               tag. It detects AM modulation of the NFC device magnetic field.
                               The demodulator is designed to accept modulation according
                               to NFC-A specifications ([NFC Analog] [NFC Digital]).

                               Clock Extractor extracts a digital clock signal from the PCD
                               carrier field frequency which is used as clock signal by logic
                               blocks.

                               HF_PON enables operation of the AFE and the logic when the
                               supply voltage is sufficiently high. A buffer capacitor and
                               HF_PON hysteresis guarantee that there is no reset during NFC
                               device modulation.

                               Internal Regulator provides regulated voltage VP_INT to the
                               AFE and in most cases also to EEPROM and logic blocks. Typical
                               regulated voltage VP_INT is 2.0V. A buffer capacitor is also
                               integrated.

                               External Regulator provides regulated voltage on external pin
                               VP_REG where it can be used to supply some external circuitry.
                               The regulated voltage and output resistance can be adjusted
                               using EEPROM settings. Appropriate external buffer capacitor
                               is needed in case VP_REG is used in the application. Current
                               which may be provided depends on reader field strength,
                               antenna size and Q factor, but it is limited to maximum 5mA.

                               Bias provides bias currents and reference voltages to AFE
                               analog blocks.

                               Power Management

                               AS3955 power management comprises of four different modes
                               to fit requirements of different applications. AS3955 supports
                               two power sources, whose activation depends on the selected
                               power mode.

                               Power Mode 0

                               In this power mode, the Power Manager is controlling the
                               supply of the PICC Logic, EEPROM and SPI / IC Interface (VDD).
                               Its inputs are VP_INT (rectified and regulated supply extracted
                               from RF field) and the VP_IO (supplied by external battery).

                               In standby mode, when AS3955 is not in the RF field (the
                               condition is that rectified supply voltage is below HF_PON
                               threshold) and the SPI / IC is not active (/SS is high), the VDD
                               supply is disconnected. The only current consumption in this
                               state is leakage on VP_IO, mainly due to level shifters and SPI /
                               IC pins.

                               When AS3955 is placed in a RF field, VDD is connected to VP_INT.
                               This happens once the VP_INT level is above the HF_PON
                               threshold.

ams Datasheet                                  Page 13
[v1-01] 2015-Apr-29            Document Feedback
                                                                                    AS3955 - Detailed Description

                       VP_IO is connected to VDD only when AS3955 is not in the RF
                       field (rectified supply voltage is below HF_PON threshold) and
                       the SPI / IC interface is activated by pulling /SS signal low. The
                       switch to VP_IO is controlled by /SS signal. The deactivation is
                       delayed by 0.7ms minimum, so that the switch shall stay closed
                       in case of shorter times between successive SPI / IC activations.
                       The switch is also closed during EEPROM writes activated over
                       SPI / IC.

                       At activation of the switch, the time between the falling edge
                       of the /SS signal and rising edge of SCLK shall be at least 300s
                       to allow charging of internal VDD buffer capacitor, expiration
                       of POR signal and to perform a complete IC initialization. Please
                       note that the only SPI / IC operations, which are allowed in this
                       mode, are read and write of EEPROM and registers.

                       If the RF filed is lost during operation and the external system
                       (MCU) is supplied over battery and /SS is low then power
                       manager will automatically connect the VDD to VP_IO.

                       To enable low power mode where tag consumes less than 1uA
                       at room temperature following conditions must be met:

                            SPI interface configured

                            All SPI interface input lines (including /SS) must be set to
                              high

                            All SPI output lines must be open

Figure 14:
Power Manager Concept

Page 14                      ams Datasheet
Document Feedback      [v1-01] 2015-Apr-29
AS3955 - Detailed Description  Power Mode 1

ams Datasheet                  AS3955 is fully supplied by RF field. AS3955 checks if Extended
[v1-01] 2015-Apr-29            or Tunneling mode are enabled. In this case, VP_REG supplies
                               the system (SPI / IC pads, pull-ups, MCU), otherwise energy
                               harvesting is turned off and VP_REG is set in tristate.
                               Such power mode can be used in battery-less systems where
                               the system is fully powered by the RF field. In such
                               configuration, the VP_REG output pin for energy harvesting and
                               VP_IO input supply shall be externally connected. Battery, even
                               when present, will not be involved.
                               If this power mode is enabled and neither tunneling nor
                               extended mode are enabled, rreg value from
                               IC Configuration Register 1 will be forced to zero. This will
                               disable energy harvesting.

                               Power Mode 2

                               In this case, the external supply is used to provide power to
                               digital blocks, EEPROM, SPI / IC pads and MCU. External supply
                               VP_REG is not used. Since this mode can be enabled only after
                               initialization of the chip, the /SS line must be either
                               permanently set to low or pulled low for short time (400s) to
                               complete the initialization.
                               This mode is specifically designed to operate with AS392x
                               products (ams' Active Boost). In this mode, the HF_PON
                               threshold of the chip will be decreased so that it will operate
                               with external voltage on LC pin in the range of 2.7-3.6Vpp.
                               If this mode is enabled, AS3955 will not be turned off as long
                               as there is an external supply present.

                               Power Mode 3

                               In this case the external supply shall be used to provide power
                               to digital blocks, EEPROM, SPI / IC pads and MCU. External
                               supply VP_REG is not used. Since this mode can be enabled only
                               after initialization of the chip, the /SS line must be either
                               permanently set to low or pulled low for short time to complete
                               the initialization.
                               In this mode, the HF_PON threshold of the chip is set so that it
                               will operate with external voltage on LC pin in the range of
                               4.1-5Vpp.
                               If this mode is enabled, AS3955 will not be turned off as long
                               as there is an external power present.

                               Interface Arbitration

                               Concurrent access to AS3955 internal EEPROM from RF or SPI /
                               IC requires arbitration, to resolve conflicts or undesired
                               behaviour.
                               AS3955 implements two arbitration modes, which can be set in
                               Configuration Byte IC_CFG0.

                                                                                                                Page 15
                                                                                               Document Feedback
                             AS3955 - Detailed Description

                   Arbitration Mode 0

                   AS3955 arbitrates EEPROM write accesses according to
                   first-come-first-serve principle.

                        In case no write access is currently ongoing, both RF and
                          SPI / IC interfaces are allowed to write into EEPROM.

                        In case a write request comes over RF, while SPI / IC is
                          writing, AS3955 will return a NAK.

                        In case a write request comes over SPI / IC while RF is
                          writing, AS3955 will trigger a I_err_acc interrupt (see
                          Figure 92).

                   Arbitration Mode 1

                   AS3955 gives always priority to RF accesses. In this mode,
                   AS3955 behaves over RF as a pure contactless tag.

                        In case SPI / IC is performing a EEPROM write while the
                          RF field is turned on, the write operation is interrupted to
                          allow the initialization of the RF communication

                        In case the RF field is already on and SPI / IC performs a
                          write to EEPROM and a READ or WRITE command is
                          received via RF, the write operation of SPI / IC is
                          interrupted so that the RF operation can be performed

                   In both cases, a I_err_acc interrupt (see Figure 92) will be
                   triggered.

                   Please note that the interruption of an EEPROM write may result
                   in an undefined or "weak" state for the cell being programmed,
                   and a second successful write attempt is suggested.

                   Energy Harvesting

                   AS3955 has energy harvesting capability. The regulated voltage
                   output pin for energy harvesting is VP_REG. The energy
                   harvesting is enabled only in Power Mode 1 and 2. The output
                   voltage and resistance can be set by Configuration Byte
                   IC_CFG1.The energy harvesting can be disabled by setting the
                   output resistance register to 0 as shown in Figure 15.

                   Figure 15:
                   Output Resistance Settings

                   rreg<1:0> Output Resistance  Comment

                   00b  X                       Disabled output pin
                                                is in tristate

                   01b  100

                   10b  50

                   11b  25

                   Figure 15 shows settings of the regulated voltage output. The
                   output can be set between 1.8V and 4.5V in 100mV step.

Page 16                                               ams Datasheet
Document Feedback                               [v1-01] 2015-Apr-29
AS3955 - Detailed Description

                               Figure 16:
                               Regulated Voltage Output Settings

                               vreg<4:0>  Output Voltage            Abs. Accuracy

                                  00000b           1.8V           115mV

                                  00001b      Step 100mV            Linearly increasing
                                      :          20mV                   over range
                                      :
                                                   4.5V                    225mV
                                  11011b

                               Silent Mode

                               The Silent mode enables detection of the power status of a
                               circuit whose supply (Vdd) is connected to VP_IO pin. If this
                               mode is enabled and the voltage measured on pin VP_IO is
                               below the configured threshold value, the RF part of AS3955
                               will be disabled, and the IC will not be responsive to incoming
                               commands. Silent mode settings can be performed by using
                               Configuration Byte IC_CFG0.

                               This feature overcomes a potentially inconsistent behavior in a
                               battery powered system, where a passive NFC tag can always
                               communicate with a NFC device, also in case the battery is not
                               sufficiently charged to supply the rest of the system. A typical
                               example is when the NFC tag is used for Bluetooth pairing:
                               AS3955 would trigger a pairing procedure only in case the
                               system is fully operational by monitoring the supply voltage.

                               Memory Protection

                               AS3955 internal memory can be protected from unauthorized
                               access by enabling password authentication. A 32-bit password
                               can be set to protect the full user memory, or part of it, to allow
                               the creation of a public data and a private data area. Password
                               protection can be applied for read and write accesses.

                               Password authentication is performed through a standard
                               WRITE command to the Authentication Password block. A
                               maximum of 7 negative attempts are permitted before the chip
                               is locked. Once authenticated, the user can modify the
                               password.

                               Password protection applies to RF communication only.

                               Further information on how to handle password authentication
                               can be found in Authentication Password, Configuration Byte
                               AUTH_CFG, Configuration Byte AUTH_CNT and Configuration
                               Byte AUTH_LIM.

ams Datasheet                                                                     Page 17
[v1-01] 2015-Apr-29                                               Document Feedback
                                                                                AS3955 - Detailed Description

                   Passive Wake-Up

                   AS3955 is able to operate NFC tag operations standalone and
                   fully powered by the RF field. The connected MCU can remain
                   is standby/sleep mode as long as its intervention is not required
                   by the application, in order to save power. AS3955 can be
                   configured to notify the MCU through a wake-up interrupt.
                   A number of triggering events can be selected, e.g.:

                        Power up
                        SELECTED state entered
                        Reception of SLP_REQ command
                        NFC device has updated memory content

                   For a complete interrupt source list, please refer to the section
                   Interrupt Registers.

                   Chip Kill

                   Some applications require that the RF link is active only under
                   certain conditions, e.g. during device configuration only in a
                   controlled environment like a production facility.
                   AS3955 can be configured by the MCU in order to restrict the
                   NFC device access to the system. By setting the Configuration
                   Byte CHIP_KILL in EEPROM, the MCU can disable access to
                   SPI / IC from the RF link (i.e. Tunneling and Extended mode are
                   permanently disabled), or even disable RF communication
                   completely. In the latter case, AS3955 will not respond to
                   incoming RF commands.
                   This configuration can be modified only by the MCU through
                   SPI / IC interfaces.

Page 18                  ams Datasheet
Document Feedback  [v1-01] 2015-Apr-29
AS3955 - Detailed Description           NFC Tag Functionality

Figure 17:                              Communication Principle
AS3955 State Diagram
                                        AS3955 autonomously executes complete NFC-A anti-collision
                                        communication sequence, during which the 7-byte UID is used
                                        ([NFC Analog] [NFC Digital]). After anti-collision, the NFC tag is
                                        brought into SELECTED state where read and write commands
                                        can be processed. The NFC tag will accept only read and write
                                        command issued to the address space actually available in
                                        AS3955 EEPROM. Any attempt to access an address outside the
                                        internal memory address space will be rejected. This default
                                        behavior of the NFC tag can be modified by enabling Tunneling
                                        or Extended mode.

                                        A simplified AS3955 state diagram is shown in Figure 17.

                                                                 POWER OFF
                                                                 (RF field off)

                                                                        Reset

                               SLEEP                             SENSE

                                        ALL_REQ  SENS_REQ
                                                 ALL_REQ

                               SLP_REQ    RESOLUTION             ANTI-COLLISION
                     SLP_REQ
                                                  SEL_REQ        READ (16 bytes)
                                                                 WRITE (4 bytes)
                                            SELECTED
                                                                  GET VERSION
                                                   WRITE
                                        Authentication Password  READ (16 bytes)
                                                                 WRITE (4 bytes)
                                        AUTHENTICATED             GET VERSION

ams Datasheet                                                                                     Page 19
[v1-01] 2015-Apr-29                                                               Document Feedback
Page 20                                                                         AS3955 - Detailed Description
Document Feedback
                   SENSE State
                   After a power-on reset (POR), AS3955 switches to the SENSE
                   state. This state is exited when a SENS_REQ or an ALL_REQ
                   command is received from the NFC device. Any other data
                   received while in this state is interpreted as an error and AS3955
                   remains in SENSE state.
                   When in SELECTED or AUTHENTICATED state, a correctly
                   executed SLP_REQ command will modify the default waiting
                   state from SENSE to SLEEP state. SLEEP state can be exited when
                   an ALL_REQ command is received.

                   SLEEP State
                   Together with SENSE state, SLEEP state is the other waiting state
                   for AS3955. SLEEP state can be entered upon reception of a
                   SLP_REQ command. The distinction between SENSE and SLEEP
                   state is made necessary to discriminate selected and not yet
                   selected tags.
                   AS3955 can only exit this state upon reception of an ALL_REQ
                   command. Any other command received in this state is
                   interpreted as an error and AS3955 state remains unchanged.

                   RESOLUTION State
                   In RESOLUTION state, the NFC device is resolving the tag UID.
                   Since AS3955 has a double size UID, the RESOLUTION state
                   actually comprises of two sub-states, where the anti-collision
                   procedure is carried out in Cascade Level 1 and 2. Please refer
                   to [ISO18092] for further information.

                   SELECTED State
                   All memory operations are operated in SELECTED state.
                   Upon reception of a SLP_REQ command, SELECTED state is
                   exited and AS3955 transits to SLEEP state. Any other command
                   received when the device is in this state is interpreted as an
                   error. Depending on its previous state, AS3955 returns to either
                   SENSE or SLEEP state.
                   Upon reception of a SECTOR SELECT command, AS3955 returns
                   a NAK and transits to SENSE or SLEEP state, depending on its
                   previous state.
                   AS3955 transits to the AUTHENTICATED state after successful
                   password verification, using a standard WRITE command to a
                   dedicated memory address (see Authentication Password). The
                   number of permitted failed authentications is set to 7, after
                   which AS3955 transits to LOCKED sub-state (not shown in the
                   picture). When LOCKED state is entered, only the MCU can bring
                   AS3955 back to SENSE state by resetting the authentication
                   counter (Configuration Byte AUTH_CNT) back to 0 and issue a
                   Set Default, or Go To Sense, or Go To Sleep command.
                   When in LOCKED sub-state, all memory operations are only
                   allowed in the memory area not password protected, as defined
                   by the configuration byte Configuration Byte AUTH_LIM.

                                                                                           ams Datasheet
                                                                                    [v1-01] 2015-Apr-29
AS3955 - Detailed Description  Upon reception of a SLP_REQ command, SELECTED state is
                               exited and AS3955 transits to SLEEP state.
ams Datasheet                  Any other command received when the device is in this state is
[v1-01] 2015-Apr-29            interpreted as an error and, depending on its previous state,
                               AS3955 returns to either SENSE or SLEEP state.

                               AUTHENTICATED State
                               In this state, all operations on memory blocks, which are
                               configured as password verification protected, can be
                               performed.
                               Upon reception of a SECTOR SELECT command, AS3955 returns
                               a NAK and transits to SENSE or SLEEP state, depending on its
                               previous state.
                               IUpon reception of a SLP_REQ command, AUTHENTICATED
                               state is exited and AS3955 transits to SLEEP state.
                               Any other command received when the device is in this state is
                               interpreted as an error and, depending on its previous state,
                               AS3955 returns to either SENSE state or SLEEP state.

                               NFC Forum Type 2 Tag Support

                               NFC Forum NFC-A commands ALL_REQ, SENS_REQ, SDD_REQ,
                               SEL_REQ, SLP_REQ are required for anti-collision. Commands
                               READ and WRITE are used for internal memory access. If NFC
                               device issues a SECTOR SELECT command, AS3955 shall always
                               reply with NAK.

                               Figure 18:
                               NFC-A vs ISO14443 Terminology

                               NFC-A Term          ISO14443 Term

                                           States

                               SENSE                        IDLE

                               SLEEP                        HALT

                               RESOLUTION                   READY

                               SELECTED                     ACTIVE

                                      Commands / Responses

                               SENS_REQ                     REQA

                               ALL_REQ                      WUPA

                               SENS_RES                     ATQA

                               SSD_REQ                        AC
                               SEL_REQ                      SELECT
                               SLP_REQ                       HLTA

                                                                            Page 21
                                                            Document Feedback
                             AS3955 - Detailed Description

                   UID Coding

                   Anti-collision procedure is based on the Unique Identification
                   Number (UID). AS3955 supports double size UID (7 bytes). First
                   three bytes of the UID are hardwired inputs to the PICC Logic
                   (uid<23:0>). The last 4 bytes of the UID are stored in EEPROM
                   UID block.

                   First UID Byte (uid0)
                   The first byte of UID is Manufacturer ID according to
                   [ISO7816-6]. It is coded on bits uid<7:0>. ams IC Manufacturer
                   ID is 3Fh.

                   Second UID Byte (uid1)
                   The second byte of UID (uid<15:8>) is reserved for ams' chip
                   type (IC Type). Every ams' RFID tag IC has its own chip type
                   assigned. AS3955 IC type is 14h.

                   Third UID Byte (uid2)
                   The third byte of UID (uid<23:16>) is set to 00h.

                   Figure 19:
                   Coding of First Three UID Bytes

                   UID Byte  Value (Hex)

                       uid0         3F
                       uid1         14
                       uid2         00

                   Last Four UID Bytes (uid3-uid6)
                   The last 4 bytes of UID are read from EEPROM (UID block) and
                   pre-programmed during IC production. Those 4 bytes are
                   unique, and cannot be modified.

                   Figure 20:
                   Last Four UID Bytes

                   UID Byte  UID Block Bits

                       uid3         b7-b0
                       uid4        b15-b8
                       uid5        b23-b16
                       uid6        b31-b24

Page 22                            ams Datasheet
Document Feedback            [v1-01] 2015-Apr-29
AS3955 - Detailed Description

                                         Coding of SENS_RES, SEL_REQ, ACK and NACK

                                         Several bits in certain responses are defined as don't-care in the
                                         NFC-A standard [NFC Digital], some others are defined by
                                         optional choices in standard protocol. This chapter defines how
                                         these bits are actually set in AS3955.

                                         SENS_RES Response

                                         SENS_RES is a response on ALL_REQ and SENS_REQ commands.
                                         The SENS_RES is defined by Configuration Bytes SENSR1 and
                                         SENSR2 stored in EEPROM.

Figure 21:
Coding of SENS_RES Response

b15 b14 b13 b12 b11 b10 b9 b8 b7 b6 b5 b4 b3 b2 b1 b0

                     SENSR2                                       SENSR1

                                         SEL_RES Response, Cascade Level 1 and 2

                                         SEL_RES is the response to SEL_REQ command. Since AS3955
                                         UID is double sized, SEL_RES responses for Cascade Level 1 and
                                         Cascade Level 2 are defined. SEL_RES on Cascade Level 1 and 2
                                         is defined with Configuration Byte SELR except for cascade bit
                                         3. The response on Cascade Level 2 is also configured by
                                         selr_b6_inv bit which, when set, inverts cascade bit 6 in SEL_RES
                                         response on Cascade Level 2 (see IC_CFG2).

Figure 22:
SEL_RES CL1 Coding

b8  b7 b6 b5                        b4  b3  b2   b1              Description
MSB                                              LSB
          sel_res<7:3>
                                         1   sel_res<1:0> Cascade bit set: UID not complete

Figure 23:
SEL_RES CL2 Coding

b8  b7                     b6       b5  b4  b3  b2    b1           Description
MSB                                                   LSB
                        sel_res<5>                                selr_b6_inv set to 0
sel_res<7:6>         NOT sel_res<5>  sel_res<4:3> 0 sel_res<1:0>  selr_b6_inv set to 1

Note(s) and/or Footnote(s):

1. According to [ISO14443-3], all bits except b3 are "don't care" for Cascade Level 1, and all bits except b6 and b3 are "don't care" for
  Cascade Level 2. Bit b6 in CL2 indicates whether the tag is compliant to [ISO14443] or not (resp. b6=1 and b6=0). In case of applications
  requiring EMVCo compliance, bit b6 in Cascade Level 1 shall be set as bit b6 in Cascade Level 2 ([EMVCO-1]).

ams Datasheet                                                                             Page 23
[v1-01] 2015-Apr-29                                                       Document Feedback
                                  AS3955 - Detailed Description

                   ACK Response

                   The ACK response of AS3955 is a 4-bit value Ah.

                   NACK Response

                   The AS3955 uses all four combinations of NAK values. The usage
                   of various NAK values is explained in section Error Handling.

                   Access to UID, SENS_RES and SEL_REQ During
                   Anti-Collision

                   UID block, SENSR1, SENSR2 and SELR bytes are stored in a buffer.
                   The purpose of storing these data into the buffer is faster access
                   to the data and UID verification during the anti-collision
                   procedure. Buffer access over SPI / IC is locked until NFC tag
                   enters SELECTED state.

                   Get Version Command

                   In addition to standard NFC tag commands, AS3955 supports a
                   custom Get Version command. This command consists of 8 bits
                   and shall be transmitted only in standalone and Extended mode
                   when the tag is SELECTED state. The command code and the
                   tag response are shown resp. in Figure 24 and Figure 25.

                   Figure 24:
                   Coding of Get Version Command

                   b8 b7 b6 b5 b4 b3 b2 b1

                   0  1  1  0  0  0  0  0

Page 24                                    ams Datasheet
Document Feedback                    [v1-01] 2015-Apr-29
AS3955 - Detailed Description

Figure 25:
Response to Get Version Command

Byte No.                                 Description                           Comment

     0               Fixed Header                       00h                      ams AG
     1                                                                           AS395x
     2               Vendor Id                          3Fh                      AS3955
     3
     4               Product Type                       14h                          1
     5                                                                               V0
     6               Product Subtype                    01h                    see note (1)
     7                                                                         see note (2)
                     Major Product Version              01h

                     Minor Product Version              00h

                     Storage Size           15h                   17h

                     Supported Features               01h or 02h

Note(s) and/or Footnote(s):Notes:
1. The most significant 7 bits of the storage size byte are interpreted as an unsigned integer value n. As a result, it codes the total

  available user memory size as 2n. If the least significant bit is 0b, the user memory size is exactly 2n. If the least significant bit is 1b,
  the user memory size is between 2n and 2n+1.
  The user memory is the memory available for user data (Capability Container and lock bits are excluded)
2. The figure below is maintained consistently across the whole AS395x family, where Get Version command is supported.

                                                          Figure 26:
                                                          Get Version Response, Byte 7

                                                                  Get Version

                                            Byte No. 7                 Description

                                            b7

                                            b6          00000b: ISO14443A Level 3 supported, max

                                                                  baudrate 106 kbps, Tunneling and

                                            b5                    Extended mode present, Password
                                                                  protection available, energy

                                            b4                    harvesting available

                                                        Others: RFU

                                            b3

                                            b2

                                                        000b: No wired interface available

                                            b1          001b: SPI slave, passive wake-up available

                                                         010b: IC slave, passive wake-up available
                                            b0

ams Datasheet                                                                                           Page 25
[v1-01] 2015-Apr-29                                                                     Document Feedback
                                                                                AS3955 - Detailed Description

                   Memory Organization

                   AS3955 contains an embedded EEPROM module which can be
                   accessed via RF or SPI / IC interface. EEPROM contains 4096 bits
                   (512 bytes) organized in 128 blocks of 4 bytes each. Blocks in
                   EEPROM are numbered from 00h to 7Fh. Bits in a block are
                   numbered from 0 to 31.

                   Most of the EEPROM is NFC Type 2 Tag user data area (472 bytes).
                   The position of the dynamic lock bits is fixed at the end of NFC
                   Type 2 Tag user data area (blocks 7Ah and 7Bh). The
                   configuration bits which define AS3955 operating options are
                   stored in blocks 01h, 7Ch, 7Dh, 7Eh, 7Fh. Housekeeping
                   information is stored in block 00h. 4kbit EEPROM organization
                   is shown in Figure 27.
                   AS3955 is also available in 2kbit version. In this case the data
                   area is reduced to 216 byte. AS3955 internal user memory
                   implements static and dynamic lock bits according to NFC
                   Forum Type 2 Tag standard. Configuration and lock bits, as well
                   as the full 2kbit EEPROM organization, are shown in Figure 28.

                   4kbit EEPROM Organization

                   Numbers of dynamic lock bits:

                        Data area size in bytes:
                          4*(127 3) 7 17 = 472 bytes

                        Number of dynamic lock bits:
                          (472 48) / 8 = 53 bits (53 bits)

Page 26                  ams Datasheet
Document Feedback  [v1-01] 2015-Apr-29
AS3955 - Detailed Description

Figure 27:
4kbit EEPROM Organization

                                           Byte Number in Block

Block       0                  1           2           3                                 Description       Access

  00h     UID0                 UID1        UID2        UID3                               UID / Internal      RO
  01h  FAB_CFG0                                                                          Fabrication data     RO
  02h  Internal 8              FAB_CFG1 FAB_CFG2 FAB_CFG3                                 Internal / Lock     OTP
  03h                                                                                                         OTP
  04h      CC 0                Internal 9  Lock 0      Lock 1                                    CC           RW
  05h    Data 0                   CC 1      CC 2        CC 3                                    Data          RW
  06h    Data 4                 Data 1     Data 2      Data 3                                   Data          RW
  07h    Data 8                                                                                 Data
                               Data 5      Data 6      Data 7                                                 RW
    :    Lock 2                                                                                 Data
    :    Lock 6                Data 9      Data 10     Data 11                                                OTP
  79h                                                                                           Lock          OTP
  7Ah                          Lock 3       Lock 4       Lock 5                          Lock / Reserved      RW
                               Lock 7      Lock 8 (1)  Reserved 0                        Authentication
  7Bh                          RFP1                                                                           RW
                                             RFP2         RFP3                               password         RW
7Ch    RFP0                                                                              Authentication       RW

7Dh    CHIP_KILL               AUTH_CNT AUTH_LIM AUTH_CFG                                     settings
                                                                                         Config. block 0
7Eh    SENSR1                  SENSR2        SELR      IC_CFG0                           Config. block 1
                               IC_CFG2     MIRQ_0      MIRQ_1
7Fh    IC_CFG1

Note(s) and/or Footnote(s):

1. Bits that are not used should be set to 0.
  Access properties:
  RO: Read only, writing to this word is not possible
  RW: Reading and writing to this word is possible
  OTP: One time programmable. A bit of this word once set to 1 cannot be set back to 0.

ams Datasheet                                                                                            Page 27
[v1-01] 2015-Apr-29                                                                      Document Feedback
                                                                                         AS3955 - Detailed Description

                                       2kbit EEPROM Organization

                                       Numbers of dynamic lock bits:

                                           Data area size in bytes:
                                             4*(63 3) 3 21 = 216 bytes

                                           Number of dynamic lock bits:
                                             (200 48) / 8 = 21 bits (21 bits)

Figure 28:
2kbit EEPROM Organization

                                       Byte Number in Block

Block        0             1           2           3                                     Description Access

Block        0            Byte number in block
  00h      UID0
  01h   FAB_CFG0           1           2                 3                                 Description     Access
  02h   Internal 8                                    UID3                                UID / Internal     RO
  03h       CC 0           UID1        UID2        FAB_CFG3                              Fabrication data    RO
  04h     Data 0                                     Lock 1                               Internal / Lock   OTP
  05h     Data 4           FAB_CFG1 FAB_CFG2           CC 3                                                 OTP
  06h     Data 8                                     Data 3                                      CC          RW
  07h                      Internal 9  Lock 0        Data 7                                     Data         RW
          Lock 2                                     Data 11                                    Data         RW
    :     Lock 6           CC 1        CC 2                                                     Data
    :      RFP0
  39h   CHIP_KILL          Data 1      Data 2
3Ah     SENSR1
  3Bh    IC_CFG1           Data 5      Data 6

  3Ch                      Data 9      Data 10

3Dh                                                                                     Data              RW

  3Eh                      Lock 3      Lock 4      Lock 5                                Lock              OTP
  3Fh
                           Lock 7      Lock 8 (1)  Reserved 0 Lock / Reserved                              OTP

                           RFP1        RFP2        RFP3                                  Authentication    RW
                                                                                            password

                           AUTH_CNT    AUTH_LIM    AUTH_CFG                              Authentication    RW
                                                                                             settings

                           SENSR2      SELR        IC_CFG0                               Config. block 0   RW

                           IC_CFG2     MIRQ_0      MIRQ_1                                Config. block 1   RW

Note(s) and/or Footnote(s):

1. Bits that are not used should be set to 0.
  Access properties:
  RO: Read only, writing to this word is not possible
  RW: Reading and writing to this word is possible
  OTP: One time programmable. A bit of this word once set to 1 cannot be set back to 0.

Page 28                                                                                              ams Datasheet
Document Feedback                                                                              [v1-01] 2015-Apr-29
AS3955 - Detailed Description

                                                 UID Bytes

                                                 The UID block contains four LSB bytes of the 7-byte UID which
                                                 is used during anti-collision and selection process. Every IC is
                                                 programmed by a unique number during fabrication process at
                                                 ams. See UID Coding about details on UID.
                                                 This block stores some IC manufacturer data which is
                                                 programmed and locked during fabrication process at ams.
                                                 UID is treated as IC internal configuration, and is permanently
                                                 locked during IC production.

                                                 Fabrication Data

                                                 Fabrication data are used to set internal configuration and
                                                 trimming values. They are treated as IC internal configuration.

                                                 Fabrication Data FAB_CFG0

Figure 29:
Fabrication Data FAB_CFG0

Conf. Bit            Name      Default                 Function          Note

     b7                            0             Internal configuration
     b6                            0
     b5                            0
     b4                            0
     b3                            0
     b2                            0
     b1                            0
     b0                            0

Note(s) and/or Footnote(s):
1. This byte can be set only during production.

ams Datasheet                                                                            Page 29
[v1-01] 2015-Apr-29                                                      Document Feedback
                                                                            AS3955 - Detailed Description

                                                 Fabrication Data FAB_CFG1

Figure 30:
Fabrication Data FAB_CFG1

Conf. Bit          Name       Default                                Function                Note

     b7            fdel<3>        0              PCD to PICC frame delay time compensation;
     b6            fdel<2>        0              frame compensation defined as fdel*1/fc
     b5            fdel<1>        0
     b4            fdel<0>        0              Oscillator trimming bits
     b3            osct<1>        0              Decoder compensation register
     b2            osct<0>        0
     b1            decc<1>        0
     b0            decc<0>        0

Note(s) and/or Footnote(s):                      The fdel bits define frame delay time (FDT) adjustment and
1. This byte can be set only during production.  represent a time compensation in number of clocks of carrier
                                                 frequency. The osct bits are trimming bits for the internal
Figure 31:                                       oscillator.
Fabrication Data FAB_CFG2
                                                 Fabrication Data FAB_CFG2

Conf. Bit            Name     Default                               Function                 Note

     b7            test_mode      0              1: decreased modulator switch resistance
     b6              mod_r        0              1: pull down on MISO, when \SS is low and
                                                 MISO is not driven by the AS3955
     b5            miso_pd2       0              1: pull down on MISO when \SS is high

     b4            miso_pd1       0
     b3                 rfu       0
     b2                 rfu       0
     b1                 rfu       0
     b0                 rfu       0

Note(s) and/or Footnote(s):
1. This byte can be set only during production.

Page 30                                                                           ams Datasheet
Document Feedback                                                           [v1-01] 2015-Apr-29
AS3955 - Detailed Description

                                                 Fabrication Data FAB_CFG3

Figure 32:
Fabrication Data FAB_CFG3

Conf. Bit              Name      Default                  Function            Note

     b7              uid_crc<7>                  CRC value calculated on UID
     b6              uid_crc<6>
     b5              uid_crc<5>
     b4              uid_crc<4>
     b3              uid_crc<3>
     b2              uid_crc<2>
     b1              uid_crc<1>
     b0              uid_crc<0>

Note(s) and/or Footnote(s):
1. This byte can be set only during production.

                                                 Reserved Bytes

                                                 The reserved bytes belong to reserved memory areas.

                                                 OTP Blocks

                                                 Write and Read Lock blocks are OTP (One Time Programmable).
                                                 This means that once they are set to 1, they cannot be set back
                                                 to 0. Since setting OTP bits is an irreversible operation, it is
                                                 strongly recommended to perform this operation in controlled
                                                 environment.

                                                 Lock Bits

                                                 The bits of byte 2 and 3 of block 02h represent the
                                                 field-programmable read-only locking mechanism called
                                                 "static lock bytes". They are called static because their position
                                                 in memory is fixed.

                                                 When data memory is larger than 16 blocks (64 bytes), also
                                                 "dynamic lock bytes" are required. They are located starting at
                                                 address 7Ah (4kbit version) and address 3Ah (2kbit version).
                                                 Block lock granularity is 1 block per bit for the first 16 blocks, 2
                                                 blocks per bit for the remaining blocks.

                                                 Lock bits are OTP, i.e. setting bits to 1b is an irreversible
                                                 operation. Bits at 0b can be set to 1b through a WRITE operation,
                                                 the result being a bit-wise OR with the current value.

ams Datasheet                                                                                 Page 31
[v1-01] 2015-Apr-29                                                           Document Feedback
                                                             AS3955 - Detailed Description

                                       Lock bits apply only to RF interface, as SPI / IC interface has
                                       unlimited access to user data area.

                                           Lock 0 byte locks 8 blocks starting from address 00h where
                                              lock bit 0 locks block on address 00h

                                           Lock 1 byte locks 8 blocks starting from address 08h where
                                              lock bit 0 locks block on address 08h

                                           Lock 2 byte locks 16 blocks starting from address 10h
                                              where lock bit 0 locks block on address 10h and 11h

                                           Lock 3 byte locks 16 blocks starting from address 20h
                                              where lock bit 0 locks block on address 20h and 21h

                                           Lock 4 byte locks 16 blocks starting from address 30h
                                              where lock bit 0 locks block on address 30h and 31h

                                           Lock 5 byte locks 16 blocks starting from address 40h
                                              where lock bit 0 locks block on address 40h and 41h

                                           Lock 6 byte locks 16 blocks starting from address 50h
                                              where lock bit 0 locks block on address 50h and 51h

                                           Lock 7 byte locks 16 blocks starting from address 60h
                                              where lock bit 0 locks block on address 60h and 61h

                                           Lock 8 byte locks 16 blocks starting from address 70h
                                              where lock bit 0 locks block on address 70h and 71h

Figure 33:
Example of Lock Bits

                   Lock 0 byte              Lock 1 byte

b7 b6 b5 b4 b3 b2 b1 b0 b7 b6 b5 b4 b3 b2 b1 b0

                   locks block              locks block

07h 06h 05h 04h 03h 02h 01h 00h 0Fh 0Eh 0Dh 0Ch 0Bh 0Ah 09h 08h

                                       Capability Container

                                       Block 03h in AS3955 EEPROM contains the Capability Container
                                       (CC), pre-programmed during IC production according to NFC
                                       Forum Type 2 Tag specifications [T2T]. CC bits are OTP, i.e.
                                       setting bits to 1b is an irreversible operation. Bits at 0b can be
                                       set to 1b through a WRITE operation, the result being a bit-wise
                                       OR with the current value.

                                       Figure 34 and Figure 35 show the Capability Container content
                                       at delivery.

Figure 34:
CC Content at Delivery (4kbit Option)

                                       Byte number in block

Block address                   0      1    2                3

03h                             E1h    10h  3Bh              00h

Page 32                                                            ams Datasheet
Document Feedback                                            [v1-01] 2015-Apr-29
AS3955 - Detailed Description

Figure 35:
CC Content at Delivery (2kbit Option)

                                       Byte number in block

Block address                  0       1    2                3

03h                            E1h     10h  1Bh              00h

                                       Configuration Bytes

                                       The Configuration bytes are used to define AS3955 operating
                                       options. AS3955 is delivered by ams with default settings.

                                       Authentication Password

                                       The Authentication password block (bytes RFP0, RFP1, RFP2,
                                       and RFP3) contains the 32-bit password. This password is used
                                       for authentication over RF side. The NFC tag is set into
                                       AUTHENTICATED state when a write command is issued via the
                                       RF to write password address with the data that has same
                                       content as the data stored in Authentication password block. If
                                       the NFC tries to authenticate with a wrong password, AS3955
                                       shall not respond and returns into SENSE / SLEEP state and the
                                       value of the AUTH_CNT is decreased.

                                       The password can be overwritten via RF only in
                                       AUTHENTICATED state and can always be set via SPI / IC.
                                       Configuration register AUTH_CFG defines access rights
                                       controlled by the password. The RF password can't be read via
                                       RF.

                                       The authentication for read or write is required only to the
                                       memory portion defined by AUTH_LIM. The chip is no longer in
                                       AUTHENTICATED state when the tag leaves SELECTED state.

                                       An attempt to read the password block will return zeroes. The
                                       authentication does not override permissions set by the lock
                                       bits. Authentication also does not restrict access over SPI / IC
                                       in any way.

                                       Authentication can be configured using configuration bits in
                                       AUTH_CFG and AUTH_LIM bytes.

ams Datasheet                                                                Page 33
[v1-01] 2015-Apr-29                                          Document Feedback
                                                                       AS3955 - Detailed Description

                                 Configuration Byte CHIP_KILL

Figure 36:
Configuration Byte CHIP_KILL

Conf. Bit          Name Default  Function                                     Note

     b7    chip_kill_2        0  1: Tunneling and Extended mode are disabled
     b6    chip_kill_1
     b5                       0  1: RF communication part is disabled
     b4         rfu
     b3         rfu           0
     b2         rfu
     b1         rfu           0
     b0         rfu
                rfu           0

                              0

                              0

                              0

Note(s) and/or Footnote(s):
1. This byte can always be accessed for read and write via the SPI / IC and can't be accessed for read and write from the RF side.

                                                          By setting CHIP_KILL byte the RF communication part of the
                                                          chip or Tunneling and Extended mode will be disabled
                                                          permanently. At its initial state, the CHIP_KILL byte is set to
                                                          value 00h. The value of this byte can be changed via SPI / IC. If
                                                          bit b6 is set to value 1, the RF part of the chip shall be disabled
                                                          and AS3955 will not respond to any command received from a
                                                          NFC device. By setting bit b7 to 1, Tunneling and Extended
                                                          mode will be disabled.

Page 34                                                                             ams Datasheet
Document Feedback                                                             [v1-01] 2015-Apr-29
AS3955 - Detailed Description

                                      Configuration Byte AUTH_CNT

Figure 37:
Configuration Byte AUTH_CNT

Conf. Bit                Name      Default  Function                  Note

     b7                     rfu    0
     b6              auth_cnt2<2>
     b5              auth_cnt2<1>  1
     b4              auth_cnt2<0>
     b3                            1        Authentication counter 2
     b2                     rfu
     b1              auth_cnt1<2>  1
     b0              auth_cnt1<1>
                     auth_cnt1<0>  0

                                   1

                                   1        Authentication counter 1

                                   1

Note(s) and/or Footnote(s):
1. This byte can always be accessed for read and write via the SPI / IC and can't be accessed for read and write from the RF side.

                                                          This byte indicates the number of allowed unsuccessful
                                                          authentication attempts over RF available before disabling the
                                                          chip. The byte consists of two separate counters where the
                                                          second counter is a copy of the first counter.

                                                          These counters are updated at each failed authentication. At
                                                          each successful authentication, counters are reset to 7 and, at
                                                          each unsuccessful authentication attempt, counters are
                                                          decreased by one. If the value of the counters reaches 0, the
                                                          chip will be permanently locked and cannot be authenticated
                                                          any longer over the RF field. The chip will also be locked in case
                                                          the two counter values don't match. The lock can always be
                                                          cleared via SPI / IC interface.

ams Datasheet                                                                         Page 35
[v1-01] 2015-Apr-29                                                   Document Feedback
                                                                   AS3955 - Detailed Description

                                      Configuration Byte AUTH_LIM

Figure 38:
Configuration Byte AUTH_LIM

Conf. Bit          Name      Default                    Function                                                    Note

b7         auth_lim<7>       1        AUTH_LIM defines the block address above
                                        which password verification is required.
b6         auth_lim<6>       1

b5         auth_lim<5>       1

b4         auth_lim<4>       1

b3         auth_lim<3>       1

b2         auth_lim<2>       1

b1         auth_lim<1>       1

b0         auth_lim<0>       1

Note(s) and/or Footnote(s):
1. This byte can always be accessed for read and write via SPI / IC and can be accessed for read and write from the RF side if chip is in

  AUTHENTICATED state and configuration bit auth_set is 1.

                                                          AUTH_LIM defines the block address above which password
                                                          verification is required. Valid address range for the AUTH_LIM
                                                          byte is from 00h to FFh. If AUTH_LIM is set to a block address
                                                          higher than the last block of the EEPROM address space, the
                                                          password protection is effectively disabled. Addresses above
                                                          the limit are protected for read / write depending on auth_r and
                                                          auth_w values. If no bits are set, password protection is
                                                          disabled.

                                                          If the NFC device tries to access protected blocks without
                                                          authenticating first, then:

                                                                If only protected blocks are accessed, AS3955 will not
                                                                 respond

                                                                If protected and unprotected blocks are accessed1,
                                                                 AS3955 will return actual stored values only for the
                                                                 unprotected portion, and zeroes for the protected
                                                                 portion.

1. This can occur, for instance, with a READ command crossing the border between protected and unprotected memory.

Page 36                                                                                 ams Datasheet
Document Feedback                                                                 [v1-01] 2015-Apr-29
AS3955 - Detailed Description

                                            Configuration Byte AUTH_CFG

Figure 39:
Configuration Byte AUTH_CFG

Conf. Bit            Name          Default                 Function                 Note

b7                   rfu           0        Authentication is required for writing
                                            Authentication is required for reading
b6                   rfu           0

b5                   rfu           0

b4                   rfu           0

b3                   rfu           0

b2                   rfu           0

b1         auth_w<1>               0

b0                   auth_r<0>     0

Note(s) and/or Footnote(s):
1. This byte can always be accessed for read and write via SPI / IC and can be accessed for read and write from the RF side if chip is in

  AUTHENTICATED state and configuration bit auth_set is 1.

                                                          Bits auth_w and auth_r define for which operations the
                                                          authentication is needed. If a lock bit is set for a certain block,
                                                          then write cannot be performed even if IC is in AUTHENTICATED
                                                          state. This means that lock bits overrule authentication.

                                                          Configuration Byte SENSR1

Figure 40:
Configuration Byte SENSR1

Conf. Bit               Name       Default                  Function                Note

     b7              sens_res<15>      0    SENS_RES response byte 2 on SENS_REQ
     b6              sens_res<14>      0
     b5              sens_res<13>      0
     b4              sens_res<12>      0
     b3              sens_res<11>      0
     b2              sens_res<10>      0
     b1              sens_res<9>       0
     b0              sens_res<8>       0

Note(s) and/or Footnote(s):

1. This byte can always be accessed for read and write via SPI / IC and can be accessed for read and write from the RF side if rfcfg_en
  is set to 1.

ams Datasheet                                                                                       Page 37
[v1-01] 2015-Apr-29                                                                 Document Feedback
                                                               AS3955 - Detailed Description

                                    Configuration Byte SENSR2

Figure 41:
Configuration Byte SENSR2

Conf. Bit          Name    Default                  Function              Note

     b7    sens_res<7>        0     SENS_RES response byte 1 on SENS_REQ
     b6
     b5    sens_res<6>        1
     b4
     b3    sens_res<5>        0
     b2
     b1    sens_res<4>        0
     b0
           sens_res<3>        0

           sens_res<2>        1

           sens_res<1>        0

           sens_res<0>        0

Note(s) and/or Footnote(s):
1. This byte can always be accessed for read and write via SPI / IC and can be accessed for read and write from the RF side if rfcfg_en

  is set to 1.

                                                          Configuration Byte SELR

Figure 42:
Configuration Byte SELR

Conf. Bit Name Default              Function                               Note

b7         sel_res<7>      0                             This bit is not used, as cascade bit 3 in
                                                         SEL_RES CL1 is fixed to 1, and to 0 in
b6         sel_res<6>      0                             SEL_RES CL2

b5         sel_res<5>      0

b4         sel_res<4>      0

b3         sel_res<3>      0        SEL_RES response on

                                    Cascade Level 1/2

b2         sel_res<2>      0

b1         sel_res<1>      0

b0         sel_res<0>      0

Note(s) and/or Footnote(s):

1. This byte can always be accessed for read and write via SPI / IC and can be accessed for read and write from the RF side if rfcfg_en
  is set to 1.

Page 38                                                                         ams Datasheet
Document Feedback                                                         [v1-01] 2015-Apr-29
AS3955 - Detailed Description

                                          Configuration Byte IC_CFG0

Figure 43:
Configuration Byte IC_CFG0

Conf. Bit            Name        Default                     Function                  Note

b7                   slnt_mod    0        1: Enable silent mode

b6                   slnt_vl<2>  0

b5                   slnt_vl<1>  0        Silent mode voltage level (see Silent Mode)

b4                   slnt_vl<0>  0

b3                   arbit_mod   0        1: RF has priority access to EEPROM over
                                          SPI / IC

b2         i2c_addr3<2>          0

b1         i2c_addr2<1>          0        IC slave address

b0         i2c_addr1<0>          0

Note(s) and/or Footnote(s):

1. This byte can always be accessed for read and write via SPI / IC and can be accessed for read and write from the RF side if rfcfg_en
  is set to 1. Bit arbit_mod can be modified after initialization over SPI / IC.

                                          Bit slnt_mod enables Silent mode. In this mode, the supply pin
                                          VP_IO is being observed. If voltage is below the level defined
                                          in slnt_vl<2:0>, then Silent mode is activated. This means that
                                          RF part of the IC is turned off and stops being responsive to
                                          incoming RF commands.

                                          Voltage threshold settings on VP_IO are shown in Figure 44.

                                          Figure 44:
                                          Silent Mode Threshold Voltage Levels

                                          slnt_vl<2:0> Voltage Threshold Abs. Accuracy

                                          000b                   1.42V                 15mV
                                          001b                   1.62V

                                          010b                   1.82V                     Linearly
                                          011b                   2.23V                 increasing over
                                          100b                   2.53V
                                          101b                   2.74V                      range
                                          110b                   3.04V
                                          111b                   3.65V                      25mV

ams Datasheet                                                                                          Page 39
[v1-01] 2015-Apr-29                                                                    Document Feedback
                                                          AS3955 - Detailed Description

                               The voltage level of the supply on VP_IO is measured when tag
                               enters RF field. The selected voltage level threshold can be
                               properly measured only if the RF field is strong enough to
                               provide sufficient supply voltage level. When small antennas
                               are used, it is advisable to set lower threshold.

                               Bit arbit_mod defines arbitration mode during mutual EEPROM
                               access via SPI / IC and RF side. If arbit_mod is set to 0, then the
                               EEPROM access follows the first-come-first-serve principle. If
                               arbit_mod is set to 1, then the RF part will always have higher
                               priority over SPI / IC. For further details, please refer to section
                               Interface Arbitration.

                               The i2c_addr bits represent lower three bits of the IC address.
                               The upper four bits of the IC address that represent a group
                               shall be set to 1010b.

                               Configuration Byte IC_CFG1

Figure 45:
Configuration Byte IC_CFG1

Conf. Bit Name Default                          Function                             Note

b7  en_rx_crc               0  1: CRC stored in the buffer in the tunneling mode

b6  vreg<4>                 0

b5  vreg<3>                 0

b4  vreg<2>                 0  Voltage level for voltage regulator VP_REG
                               (see Figure 16)

b3  vreg<1>                 0

b2  vreg<0>                 0

b1  rreg<1>                 0  Output resistance value for voltage regulator VP_REG

b0  rreg<0>                 0  (see Figure 15)

Note(s) and/or Footnote(s):
1. This byte can always be accessed for read and write via SPI / IC and can be accessed for read and write from the RF side if rfcfg_en

  is set to 1.

                                                          If bit en_rx_crc is set to 1 then the CRC shall be part of the
                                                          message in the buffer. This implies that maximum message
                                                          effective length is reduced to 30 bytes. CRC check is performed
                                                          regardless of the value of the en_rx_crc bit.

Page 40                                                                                 ams Datasheet
Document Feedback                                                                 [v1-01] 2015-Apr-29
AS3955 - Detailed Description

                                     Configuration Byte IC_CFG2

Figure 46:
Configuration Byte IC_CFG2

Conf. Bit            Name         Default  Function                                    Note

b7                   rfcfg_en     1        1: Enables personalization / configuration
                                           over RF

b6                   tun_mod      0        1: Enables Tunneling Mode

b5                   ext_mod      0        1: Enables Extended Mode

b4         nak_on_crc_parity      0        1: Defines error handling and response

b3                   auth_set     0        1: Configuration of the authentication
                                           settings is enabled from RF side

b2                   selr_b6_inv  0        1: Inverts bit 6 in SEL_RES response on
                                           Cascade Level 2

b1                   powm<1>      0        00: Power Mode 0 10: Power Mode 2

b0                   powm<0>      0        01: Power Mode 1 11: Power Mode 3

Note(s) and/or Footnote(s):
1. This byte can always be accessed for read and write via SPI / IC and can be accessed for read and write from the RF side if rfcfg_en

  is set to 1. Bits tun_mod and ext_mod represents a default value stored in a volatile memory which can be modified after initialization
  over SPI / IC.

                                                          Bit rfcfg_en enables the personalization process during
                                                          production at customer facilities. When this bit is set to 0, the
                                                          modification of the last two blocks is not possible anymore over
                                                          the RF field.

                                                          If auth_set is set then changing of authenticated setting
                                                          (authentication limits, read/write permission) is enabled over
                                                          the RF after successful authentication. Password can always be
                                                          changed via the RF side if tag is in authenticated state
                                                          regardless of the value of read/write bits.

                                                          Bit nak_on_crc_parity configures error handling mechanism as
                                                          described in Error Handling.

                                                          Bit selr_b6_inv configures SEL_RES response on Cascade Level
                                                          2. If selr_b6_inv is set to 1, bit b6 in SEL_RES response on Cascade
                                                          Level 2 will be inverted, otherwise it will be set as configured
                                                          in SELR byte.

                                                          Bits powm<1:0> are setting power modes as defined in Power
                                                          Management.

ams Datasheet                                                                                          Page 41
[v1-01] 2015-Apr-29                                                                    Document Feedback
Page 42                                                                         AS3955 - Detailed Description
Document Feedback
                   Configuration Bytes MIRQ_0 and MIRQ_1
                   These two bytes define the default value of the volatile memory
                   for Mask Interrupt Register 0 and Mask Interrupt Register 1
                   registers. These bytes can always be accessed for read and write
                   via the SPI / IC and can be accessed for read and write from the
                   RF side if rfcfg_en is set to 1.

                   AS3955 Communication Modes

                   AS3955 supports three different modes. The basic
                   communication mode is a standalone mode where AS3955 can
                   behave as a standalone NFC tag without MCU intervention. The
                   other two modes (Tunneling and Extended mode) represent
                   modification of the communication in SELECTED state. The
                   anti-collision process is the same for all three modes.
                   It is possible to change the mode of operation at any time.
                   In case Tunneling and Extended mode are both enabled,
                   Tunneling mode has priority over Extended mode.

                   Standalone NFC Type 2 Tag Mode

                   If neither of the two modes are enabled (Tunneling and
                   Extended mode) in IC Configuration Register 2, the tag is in
                   standalone mode. In this mode, all RF incoming commands
                   address the internal EEPROM. In this mode, it is always possible
                   to connect the MCU since all other functionalities of AS3955 are
                   not limited by the communication modes. The main purpose of
                   this mode is to use the AS3955 as a standalone chip or a chip
                   in combination with MCU where the MCU is used for managing
                   AS3955 configuration and memory content.

                   Tunneling Mode

                   Tunneling mode enables transparent data transfer between
                   NFC device and MCU. In this mode, the internal EEPROM cannot
                   be accessed via RF and any type of data received will be
                   forwarded to MCU when the tag is in SELECTED state. An error
                   during the reception will trigger a corresponding interrupt. In
                   this mode the MCU shall take care for the correct response. For
                   this purpose, the MCU may issue an ACK or a different type NAK
                   response using implemented commands.
                   By enabling this mode, the MCU can emulate NFC type 2 tags,
                   NFC type 4 tags, ISO14443A Level 3 cards, ISO14443A Level 4
                   cards, and also implement higher level protocols such as
                   [PHDC].
                   Tunneling mode can be configured by setting Configuration
                   Byte IC_CFG2 in EEPROM or the corresponding register
                   ( IC Configuration Register 2).
                   This mode also allows access to the internal EEPROM via the SPI
                   / IC during RF communication.

                                                                                           ams Datasheet
                                                                                    [v1-01] 2015-Apr-29
AS3955 - Detailed Description  The basic assumption of Tunneling mode is that MCU is
                               responsible for generating the response and that AS3955 takes
Figure 47:                     care of the response synchronization over RF. For this reason,
Read First, then Acknowledge   AS3955 has a possibility to transmit ACK and NACK by issuing
                               a direct command (see section Direct Commands). The MCU can
                               also transmit data by writing the data into the buffer and issuing
                               a Transmit command. The implementation of Tunneling mode
                               also requires the handling of the SLP_REQ command since all
                               the received data in SELECTED state are stored in the buffer and
                               will not be processed by AS3955. This also implies that MCU has
                               to take care of correct transition of the tag into SLEEP or SENSE
                               state by using one of the three available commands Go To Sleep,
                               Go To Sense and Go To Sense / Sleep.

                               Data Transaction in Tunneling Mode

                               Figure 47 shows an example of how communication in
                               Tunneling mode should be implemented.

                        PCD      AS3955          MCU       Rx start
                     DATA TX   DATA RX                     Rx end, crc or parity error,
                                           DATA RD OUT     buffer error
                               ACK / NACK  CMD ACK / NACK
                                                           Tx end

                               ACK and NACK responses can be replaced by data, in case of an
                               incoming READ command.

                               Relevant Registers, Interrupts and Commands
                               Registers:

                                    Buffer Status Register 1 and Buffer Status Register 2 (data
                                      length and error type)

ams Datasheet                                                              Page 43
[v1-01] 2015-Apr-29                                        Document Feedback
Page 44                                                                         AS3955 - Detailed Description
Document Feedback
                   Interrupts:
                        Rx start (I_rxs bit in Interrupt Register 1)
                        Rx end, Tx end (resp. I_rxe and I_txe bits in Interrupt
                          Register 0)
                        CRC, parity and framing interrupt (resp. I_crc_err, I_par_err
                          and I_frm_err bits in Interrupt Register 1)
                        Buffer error (I_bf_err in Interrupt Register 1)
                        SPI / IC buffer access error (I_acc_err in
                          Interrupt Register 1)

                   Commands:
                        Transmit ACK
                        Transmit NACK 0-5
                        Transmit Buffer
                        Go To Sense
                        Go To Sleep
                        Go To Sense / Sleep

                   Extended Mode

                   Extended mode enables communication between the NFC
                   device and MCU by employing standard NFC Tag 2 Type READ
                   and WRITE commands. The purpose of this communication
                   mode is to provide a simple data transfer mechanism between
                   a NFC device and a MCU while guaranteeing correct timing and
                   synchronization. This is achieved by implementing a robust
                   handshake mechanism.
                   This mode uses a part of the memory address space that is out
                   of range of the internal physical memory. The communication
                   between a NFC device and a MCU can be performed by using
                   WRITE/READ commands on address FCh FFh, independently
                   of the EEPROM configuration size. Data with CRC or any other
                   error will not be forwarded to the MCU. In case of successful
                   reception of data, AS3955 will automatically reply with ACK.
                   Error handling in Extended mode is defined in Error Handling.
                   Data received from RF side are kept available until the MCU
                   reads the data. The implemented asynchronous transmission
                   protocol arbitrates on overlapping memory accesses
                   (producer-consumer principle) and complies with timing
                   constraints of both RF and SPI / IC protocols regardless of the
                   MCU performance.
                   Extended mode can be configured by setting Configuration
                   Byte IC_CFG2 in EEPROM or the corresponding register ( IC
                   Configuration Register 2).

                                                                                           ams Datasheet
                                                                                    [v1-01] 2015-Apr-29
AS3955 - Detailed Description

                                                          Extended mode uses an address space above the address space
                                                          of the internal EEPROM. It is then possible for a NFC device to
                                                          perform accesses to AS3955 internal memory and data transfer
                                                          to/from the MCU, without switching modes. This feature allows
                                                          the NFC device e.g. to request to the MCU a switch to Tunneling
                                                          mode with a simple WRITE command.

                                                          The extended mode communication employs a built-in buffer
                                                          for communication. Access to buffer from RF and SPI / IC is
                                                          mutually exclusive. AS3955 ensures that buffer content shall be
                                                          kept as long as the AS3955 is powered (even in case RF field is
                                                          not present) and as long the tag is in SELECTED state. In case
                                                          the RF field is switched off and then on again, the buffer content
                                                          will be reset.

                                                          NFC Device to MCU Data Flow Protocol
                                                          For the data transmission from NFC device to the MCU
                                                          employing the Extended mode, a NFC WRITE shall be used. Each
                                                          data transfer from NFC device is comprised of four WRITE
                                                          commands starting from address FCh and ending at address
                                                          FFh. The protocol implemented on a NFC device is expected to
                                                          always start the data transmission at address FCh, which signals
                                                          the beginning of the communication, and end at address FFh.

                                                          Figure 48 depicts regular implementation of the Extended
                                                          mode using the WRITE commands.

Figure 48:
Address Space Employed for Communication

TIME                 WRITE FCh,00112233h    ACK, rf_busy = 1,    Address space used for communication in
                     WRITE FDh,44556677h     IRQ RX start = 1                   extended mode
                     WRITE FEh,8899AABBh
                     WRITE hFF,CCDDEEFFh            ACK            ...
                                                                  FCh 00h 11h 22h 33h
                                                    ACK           FDh 44h 55h 66h 77h
                                          ACK, rf_data_rdy = 1,   FEh 88h 99h AAh BBh
                                                                  FFh CCh DDh EEh FFh
                                             IRQ RX end = 1        ...

ams Datasheet                                                                    Page 45
[v1-01] 2015-Apr-29                                              Document Feedback
                                         AS3955 - Detailed Description

                                      Assuming that the internal buffer is empty, the NFC device may
                                      start with data transmission by sending a WRITE command on
                                      address FCh. When the first block is written, the rf_busy flag is
                                      set and Rx start interrupt is triggered. At this point, the buffer
                                      cannot be accessed over SPI / IC until the entire write message
                                      is received which is assumed to be complete when NFC device
                                      sends a write command to block FFh. At this point, an Rx end
                                      interrupt is triggered. This implies that a minimum two
                                      messages must be received from a NFC device in order to
                                      successfully complete a message. If a WRITE command is
                                      received on address FFh before a WRITE command to address
                                      FCh, AS3955 will assume that an error has occurred and will
                                      respond as described in Error Handling.

                                      When the reader writes into the last block FFh, rf_data_rdy flag
                                      is set and the reader cannot change the buffer content until the
                                      MCU reads the content of the block and clears the rf_data_rdy
                                      flag. Any additional reception of WRITE commands from NFC
                                      device, prior to MCU reading out the buffer content, shall result
                                      in a response as defined in Error Handling. The blocks from
                                      internal memory address space are directly mapped into buffer
                                      space as shown on Figure 49.

Figure 49:
Mapping of Data Received into Buffer

Address space used for communication in             Buffer address space
               extended mode
                                         00h 00h 11h 22h 33h
   ...                                   04h 44h 55h 66h 77h
FCh 00h 11h 22h 33h                     08h 88h 99h AAh BBh
FDh 44h 55h 66h 77h                     0Ch CCh DDh EEh FFh
FEh 88h 99h AAh BBh
FFh CCh DDh EEh FFh
   ...

                                      When MCU reads out the data from the buffer, data will be sent
                                      to MCU in the same order as they were stored in the buffer
                                      starting from address 00h. When MCU has read all buffer
                                      content, it shall issue a Clear Buffer command to clear the flag
                                      rf_data_rdy. At this point, a new data message can be received.

Page 46                                        ams Datasheet
Document Feedback                        [v1-01] 2015-Apr-29
AS3955 - Detailed Description                            AS3955  MCU
                                                           ACK
Figure 50:                                                 ACK
Data Reception in Extended Mode                            ACK
                                                           ACK
                                                  PCD
                                            WRITE @ FCh

                                            WRITE @ FDh
                                            WRITE @ FEh

                                            WRITE @ FFh

                                                                              Rx end

                                                                 DATA RD OUT

                                                         MCU to NFC Device Data Flow Protocol

                                                         NFC devices can receive data from a MCU through AS3955 by
                                                         using standard READ commands.

                                                         Prior to writing data into the buffer, the MCU shall issue a Clear
                                                         Buffer command to AS3955 to ensure data are correctly
                                                         mapped into the buffer. To start data transmission, the MCU
                                                         shall issue then a Transmit Buffer command. In this way, the flag
                                                         io_data_rdy is set and data can be transmitted to the reader.
                                                         The transmission of the data from the tag to the NFC device is
                                                         done by issuing a READ command on block FCh. The fourth
                                                         block being read during the read command contains the status
                                                         flags of the ongoing communication.

                                                         NFC devices can receive data from a MCU through AS3955 by
                                                         using standard READ commands.

                                                         Prior to writing data into the buffer, it is advisable that to issue
                                                         a Clear Buffer command to AS3955 to ensure data are correctly
                                                         mapped into the buffer. MCU can trigger data transmission by
                                                         writing three words of data into the buffer at addresses
                                                         FCh-FEh, and issuing a Transmit Buffer command. This will also
                                                         set io_data_rdy flag. The transmission of the data from the tag
                                                         to the read is done by issuing a read command on word 0xFC.
                                                         The NFC device can then retrieve the data from the buffer by
                                                         sending a READ command to address FCh. The fourth word
                                                         contains the status flags as shown in Figure 51.

ams Datasheet                                                                                 Page 47
[v1-01] 2015-Apr-29                                                           Document Feedback
                                                                                      AS3955 - Detailed Description

Figure 51:
Data Transmission from MCU to NFC Device

TIME  READ FCh                    io_busy = 1, io_data_rdy = 0  Address space used for communication in
      READ FCh                      Response : 00000000h,                      extended mode
                                                    00000000h,
                                                    00000000h,     ...
                                                    00000002h    FCh 00h 11h 22h 33h
                                                                 FDh 44h 55h 66h 77h
                                  io_busy= 0, io_data_rdy = 1    FEh 88h 99h AAh BBh
                                   Response : 00112233h,         FFh 00h 00h 00h FLAGS
                                                   44556677h,      ...
                                                   8899AABBh,
                                                    00000001h

      WRITE FFh,                  io_busy = 0, io_data_rdy = 0
      00000000h                         Response : ACK

                     b7 b6 b5 b4     b3         b2                 b1         b0
                                  rf_busy  rf_data_rdy          io_busy  io_data_rdy
      FLAGS: 0 0 0 0

                                           When the NFC device has successfully read all data from the
                                           buffer, it shall clear the buffer and prepare for further data
                                           transfer by issuing a WRITE command to address FFh. This will
                                           trigger a Tx end interrupt.

                                           If a READ command is received on address FCh prior to the
                                           Transmit Buffer command, AS3955 will return zero data, io_busy
                                           set to 1 and io_data_rdy set to 0. A NFC device can then poll
                                           AS3955 by continuously sending READ commands at address
                                           FCh and waiting until the last word equals 01h.

                                           A READ command can be issued only to address FCh. Issuing a
                                           READ command to any other address than FCh while in
                                           Extended mode shall be treated as an error.

                                           In Extended mode, it is assumed that AS3955 will always receive
                                           16 bytes and transmit 12 bytes of data, 3 empty bytes and 1
                                           byte for FLAGS. If the message size differs in any direction, then
                                           the MCU or NFC device are responsible for proper error
                                           management.

Page 48                                                                                     ams Datasheet
Document Feedback                                                                     [v1-01] 2015-Apr-29
AS3955 - Detailed Description

Figure 52:
Data Transmission in Extended Mode

                           PCD      AS3955   MCU      Transmit
                     READ @ FCh      DATA   WRITE IN
                     WRITE @ FFh
                                                      Tx end

                                    If MCU decides to update the buffer before the NFC device
                                    issues a WRITE command to address FFh, a I_acc_err interrupt
                                    will be triggered, signaling that buffer cannot be accessed (see
                                    Interrupt Register 1).

                                    Relevant Registers, Interrupts and Commands
                                    Relevant Registers:

                                        Buffer Status Register 1 (status flags : rf_busy, rf_data_rdy,
                                           io_data_rdy)

                                    Relevant Interrupts:
                                        Rx start (I_rxs bit in Interrupt Register 1)
                                        Rx end, Tx end (resp. I_rxe and I_txe bits in Interrupt
                                           Register 0)

                                    Commands:
                                        Transmit Buffer
                                        Clear Buffer

ams Datasheet                                                         Page 49
[v1-01] 2015-Apr-29                                   Document Feedback
                                                                                                                                                                                        AS3955 - DetailedDescription

                                                          Extended Mode Timing Diagram

Figure 53:
RF to MCU Data Transfer in Extended Mode

RFLINK       RFfield              RFfieldON   Anticollision     WRITE          WRITE           WRITE             WRITE                 READ
                                  Poweroff      sequence         0xFC,          0xFD,           0xFE,             0xFF,                0xFC
             NFCreader                                         0x001122       0x445566       0x8899AA           0xCCDDE

             Tagstate                                              33             77             BB                EFF
             AS3955RF
             response                         SENSE  RESOLUTI  SELECTED

                                                     ON

                                              Anticollision              ACK            ACK            ACK               ACK                   0x000000 0x000000 0x000000 0x000000

                                              sequence                                                                                         00    00      00  02

BUFFER       Buffercontent  0xFC  0x00000000                             0x00112233     0x00112233     0x00112233        0x00112233                                                                      0x00000000
                            0xFD  0x00000000                             0x00000000     0x44556677     0x44556677        0x44556677                                                                      0x00000000
                            0xFE  0x00000000                             0x00000000     0x00000000     0x8899AABB        0x8899AABB                                                                      0x00000000
                            0xFF  0x00000000                             0x00000000     0x00000000     0x00000000        0xCCDDEEFF                                                                      0x00000000

             AS3955                                                                                                                            0x10          0x001122 0x445566 0x8899AA 0xCCDDE
             SPI/IC
SPI/ICLINK                                                                                                                                                  33  77                 BB  EFF
             MCU
             SPI/IC                                                                                                          ReadIRQ   Read         Buffer                                      Clear
                                                                                                                                       Buffer        Read                                        Buffer
                                                                                                                                       Length

INTERRUPTS   RXstart
             Rxend
             Txend

FLAGS        rf_busy
             rf_data_rdy
             io_busy
             io_data_rdy

                                  TAGINITIALIZATION                                     RFTOBUFFERDATATRANSFER                                               BUFFERTOMCUDATATRANSFER

Page 50                                                                                                                                                                                                 ams Datasheet
Document Feedback                                                                                                                                                                                [v1-01] 2015-Apr-29
AS3955 - Detailed Description

Figure 54:
MCU to RF Data Transfer in Extended Mode

RFLINK       RFfield                                      READ0xFC                                                          READ                                        WRITE
                                                                                                                            0xFC                                         0xFF,
             NFCreader                                                                                                                                                 0x000000

             Tagstate                                                                                                                                                      00
             AS3955RF
             response                                                 0x00000000  0x00000000                      0x000000        0xFFEECC 0x998877 0x554433 0x000000            ACK
                                                                                               0x00000000
                                                                                                                                  AA  66  22  09
                                                                                                                       02

BUFFER       Buffercontent  0xFC  0x00000000              0x00000000  0xFFEECCAA  0xFFEECCAA   0xFFEECCAA                                                                        0x00000000
                            0xFD  0x00000000              0x00000000  0x00000000  0x99887766   0x99887766                                                                        0x00000000
                            0xFE  0x00000000              0x00000000  0x00000000  0x00000000   0x55443322                                                                        0x00000000
                            0xFF  0x00000000              0x00000000  0x00000000  0x00000000   0x00000000                                                                        0x00000000

SPI/ICLINK  AS3955                           BufferLoad  0xFFEECCAA  0x99887766  0x55443322 TransmitBuffer                                                                                  ReadIRQ
             SPI/IC

             MCU
             SPI/IC

INTERRUPTS   RXstart
             Rxend
             Txend

FLAGS        rf_busy
             rf_data_rdy
             io_busy
             io_data_rdy

                                                                      MCUTOBUFFERDATATRANSFER                                             BUFFERTORFDATATRANSFER

ams Datasheet                                                                                                                                                                                                Page 51
[v1-01] 2015-Apr-29                                                                                                                                                                          Document Feedback
                                                              AS3955 - Detailed Description

                                         Implementation Recommendations
                                         While in Extended mode, the NFC device shall not issue a WRITE
                                         command to the address space of the internal EEPROM until the
                                         buffer is empty. The NFC device can issue a READ command to
                                         check internal status flag (io_busy = 0), before writing to
                                         EEPROM.

                                         It is also not allowed to interleave data communication in
                                         Extended mode (e.g. writing to addresses FCh-FFh) and issue a
                                         WRITE command to internal EEPROM. If case this happens,
                                         writing to internal EEPROM would be successful, but the buffer
                                         content would be lost.

                                         Reading status flags is always allowed.

                                         Error Handling

                                         Figure 55 shows how different type of errors in Standalone and
                                         Extended communication modes are handled and what is the
                                         resulting state of the tag.

Figure 55:
Error Handling

Command            Condition                      AS3955                  AS3955
                                         nak_on_crc_parity=0    nak_on_crc_parity=1
                                                              (empty fields have same

                                                                         reply as
                                                               nak_on_crc_parity=0)

   Any          Bit Coding Error         No Response, SLEEP   NAK_1, SLEEP
   Any          Incomplete Frame         No Response, SLEEP
T2T Read        Parity Error             No Response, SLEEP
T2T Read        CRC Error
T2T Read        1 Byte Frame (no CRC)    No Response, SLEEP   NAK_1, SLEEP
T2T Read        Empty frame (only CRC
T2T Read        bytes)                   No Response, SLEEP
T2T Read        Missing address
T2T Read        Too long frame           No Response, SLEEP
T2T Read        Memory fully locked
T2T Read        Memory partially locked  No Response, SLEEP
T2T Read        Memory fully protected   No Response, SLEEP
                Memory partially         Send Block Content
T2T Read        protected                Send Block Content
                Memory address range     NAK_4, SLEEP
                fully not existent       Send unprotected memory as is, replace protected memory
                                         with zero bytes

                                         NAK_0, SLEEP

Page 52                                                                           ams Datasheet
Document Feedback                                                           [v1-01] 2015-Apr-29
AS3955 - Detailed Description

Command              Condition                           AS3955                       AS3955
                                                nak_on_crc_parity=0         nak_on_crc_parity=1
                                                                          (empty fields have same

                                                                                     reply as
                                                                           nak_on_crc_parity=0)

T2T Read             Memory address range       Send existing memory
                     partially not existent     appended with zero bytes
T2T Read             EEPROM access collision
T2T Read             No Error                   NAK_5, SLEEP
T2T Write            Parity Error
T2T Write            CRC Error                  Send Block Content
T2T Write            1 Byte Frame (no CRC)
                     2 Byte Frame with correct  No Response, SLEEP        NAK_1, SLEEP
T2T Write            CRC
                     Missing address and data   No Response, SLEEP        NAK_1, SLEEP
T2T Write            Missing data
T2T Write            Incomplete data            No Response, SLEEP
T2T Write            Too long frame
T2T Write            Memory fully locked        No Response, SLEEP
T2T Write            Memory partially locked
T2T Write            Memory fully protected     No Response, SLEEP
T2T Write            Memory partially           No Response, SLEEP
                     protected                  No Response, SLEEP
T2T Write            Memory address range       No Response, SLEEP
                     fully not existent         NAK_0, SLEEP
T2T Write            Memory address range       cannot occur
                     partially not existent     NAK_4, SLEEP
T2T Write            EEPROM access collision
                     No Error                   cannot occur
T2T Write
T2T Write            Parity Error               NAK_0, SLEEP
T2T Sector
Select 1            CRC Error                  cannot occur              NAK_1, SLEEP
T2T Sector                                      NAK_5, SLEEP
Select 1            1 Byte Frame (no CRC)      ACK, SELECTED
T2T Sector                                      No Response, SLEEP
Select 1            Empty frame (only CRC
T2T Sector           bytes)                     No Response, SLEEP        NAK_1, SLEEP
Select 1
                                                No Response, SLEEP

                                                No Response, SLEEP

ams Datasheet                                                                             Page 53
[v1-01] 2015-Apr-29                                                       Document Feedback
                                                             AS3955 - Detailed Description

Command            Condition                     AS3955                  AS3955
                                        nak_on_crc_parity=0    nak_on_crc_parity=1
                                                             (empty fields have same

                                                                        reply as
                                                              nak_on_crc_parity=0)

T2T Sector  Missing second byte         No Response, SLEEP
Select 1
            Incorrect second byte (not  No Response, SLEEP
T2T Sector  FFh)
Select 1
            Too long frame              No Response, SLEEP
T2T Sector
Select 1   Only 1 sector available     NAK_0, SLEEP

T2T Sector  Parity Error                No Response, SLEEP   NAK_1, SLEEP
Select 1                                                    NAK_1, SLEEP
            CRC Error                   No Response, SLEEP
T2T Sector                                                   NAK_1, SLEEP
Select 2   1 Byte Frame                No Response, SLEEP   NAK_1, SLEEP
                                        No Response, SLEEP
T2T Sector  Empty frame (only CRC       No Response, SLEEP
Select 2   bytes)

T2T Sector  Missing sector number
Select 2
            Missing RFU bytes           No Response, SLEEP
T2T Sector
Select 2   Too few RFU bytes           No Response, SLEEP

T2T Sector  Too long frame              No Response, SLEEP
Select 2
            Selected sector not         No Response, SLEEP
T2T Sector  existent                    No Response, SLEEP
Select 2   (cannot happen for
            AS3955)
T2T Sector
Select 2   No Error
            (cannot occur for AS3955)
T2T Sector
Select 2   Parity Error                No Response, SLEEP

T2T Sector  CRC Error                   No Response, SLEEP
Select 2
            No Error                    No Response, SLEEP
T2T Sector
Select 2

Unknown
Command

   Code

Unknown
Command

   Code

Unknown
Command

   Code

Page 54                                                                          ams Datasheet
Document Feedback                                                          [v1-01] 2015-Apr-29
AS3955 - Detailed Description

                                        Wired Interfaces

                                        AS3955 host interface can be configured to be either SPI or IC
                                        at production (Fabrication Data FAB_CFG0). In both cases, the
                                        /SS signal is also used to control the IC power state. By pulling
                                        the /SS low, the chip interface or the chip itself is enabled /
                                        powered (see Power Management). Note that interrupting SPI
                                        / IC operations or issuing incomplete command sequence from
                                        the MCU may result in corrupted data content. For more
                                        information on EEPROM and buffer data reading and writing
                                        see EEPROM Read and Write and Data Buffer sections.

                                        SPI / IC Access Modes

Figure 56:
Access Modes

                                  MODE Byte (com. bits)

Mode                           MODE        Trailer             MODE Related Data

                     M2 M1 M0 C4 C3 C2 C1 C0

Register Write       0 0 0 A4 A3 A2 A1 A0                      Data byte(s)

Register Read        0 0 1 A4 A3 A2 A1 A0                      Data byte(s)

EEPROM Write         0         1  0  0  0  0             0  0  Block Address  4 bytes of block
                                                                    byte             data

EEPROM Read          0         1  1  1  1  1             1  1  Block Address  N*4 bytes
Buffer Load                                                        byte
Buffer Read
                     1 0 0 xxxxx                               Data byte(s)

                     1 0 1 xxxxx                               Data byte(s)

COMMAND Mode 1 1 C5 C4 C3 C2 C1 C0

ams Datasheet                                                                                 Page 55
[v1-01] 2015-Apr-29                                                           Document Feedback
                                                   AS3955 - Detailed Description

                                     SPI Interface

                                     Communication between AS3955 and microcontroller can be
                                     done via a four-wire Serial Peripheral Interface (SPI) and an
                                     additional interrupt signal. AS3955 acts an SPI slave device, and
                                     it can request MCU attention by sending an interrupt (pin IRQ).
                                     The SCLK frequency can be between 100 kHz and 5 MHz.

Figure 57:
SPI and Interrupt Signals

Name                Signal           Signal Level              Description

  /SS  Digital Input with pull up         CMOS     SPI Enable (active low)
MOSI  Digital Input                      CMOS     Serial Data input
MISO  Digital Output with tristate       CMOS     Serial Data output
SCLK  Digital Input                      CMOS     Clock for serial communication
  IRQ  Digital Output                     CMOS     Interrupt Output pin (active high)

                                     SPI interface is in reset mode when signal /SS is high, and it is
                                     enabled when /SS is low. It is recommended to keep signal /SS
                                     high whenever the SPI interface is not used. MOSI is sampled
                                     at the falling edge of SCLK. All communication is done in 8-bit
                                     blocks (bytes). First three bits of first byte transmitted after /SS
                                     high to low transition define SPI operation mode. MSB bit is
                                     always transmitted first (valid for address and data). Read and
                                     Write modes support address auto incrementing, which means
                                     that in case some additional data bytes may be sent (read), they
                                     are written to (read from) addresses incremented by 1 after the
                                     address and first data byte.

                                     SPI interface supports the following modes:

                                          internal registers read and write

                                          EEPROM read and write

                                          buffer read and write

                                          direct commands

                                     Note that in case when logic and EEPROM are supplied from the
                                     VP_IO, the only SPI operations permitted are reading and
                                     writing of EEPROM and registers (see also Power Management).

                                     MISO output is usually in tristate and it is only driven when
                                     output data is available. MOSI and MISO can then be externally
                                     shorted to create a bidirectional signal. When MISO output is
                                     in tristate, it is possible to switch on a 10 k pull down by
                                     activating option bits miso_pd1 and miso_pd2 in IO
                                     Configuration Register.

Page 56                                                  ams Datasheet
Document Feedback                                  [v1-01] 2015-Apr-29
AS3955 - Detailed Description

Figure 58:
IO Signals to Controller

                    MOSI                   MOSI                                               MOSI              I/O C

AS3955                                         C                          AS3955

                    MISO                   MISO                                               MISO

Separate SPI Input and Output Signals to Controller                       Bidirectional Data IO Signal to Controller

                                                          Writing Data to Addressable Registers
                                                          (Register Write Mode)

                                                          Following figures show waveforms of writing a single byte and
                                                          writing multiple bytes with auto-incrementing address. After
                                                          the SPI operation mode bits, the address of starting register to
                                                          be written is provided. Then one or more data bytes are
                                                          transferred from the SPI, always MSB first. The data byte is
                                                          written in register on falling edge of its last clock. In case the
                                                          communication is terminated by putting /SS high before a
                                                          packet of 8 bits composing one byte is sent, writing of this
                                                          register is not performed. In case the register on the defined
                                                          address does not exist or it is a read-only register, no write is
                                                          performed.

Figure 59:
SPI Communication: Writing a Single Register

/SS

SCLK

MOSI  X0                  0         0  A4  A3        A2  A1 A0     D7 D6  D5 D4  D3                 D2  D1  D0     X

                     Three             SCLK raising  SCLK falling                    Data is moved to                 /SS rising
                     leading bits      edge Data is  edge Data is                               Address           edge signals
                     indicate Mode     transfered    sampled                                       A4-A0        end of WRITE
                                       from C
                                                                                                                           Mode

ams Datasheet                                                                                                               Page 57
[v1-01] 2015-Apr-29                                                                                         Document Feedback
                                                                                                                                      AS3955 - Detailed Description

Figure 60:
SPI Communication: Writing Register Data with Auto-Incrementing Address

      /SS

SCLK       X   0  0  0   A  A  A  A  A  D  D  D  D  D  D   D  D  D  D  D  D  D  D  D   D  D  D  D D DD DDD DDD                       X
MOSI                     4  3  2  1  0  7  6  5  4  3  2   1  0  7  6  5  4  3  2  1   0  7  6  1 0 76 543 210
                                                                                                                                       /SS rising edge
               Three                                 Data is           Data is moved         Data is moved to    Data is moved to      signals end of
               leading bits                       moved to                 to Address                   Address             Address    WRITE Mode
               indicate Mode                       Address
                                                                  + 1          + (n-1)          + n

                                                          Reading Data from Addressable Registers
                                                          (Register Read Mode)

                                                          After the SPI operation mode bits, the register address to be
                                                          read shall be provided, MSB first. Then one or more data bytes
                                                          are transferred to MISO output, always MSB first. As in case of
                                                          the write mode, also the read mode supports
                                                          auto-incrementing addressing.

                                                          MOSI is sampled at the falling SCLK edge (as shown in the
                                                          following diagrams); data to be read from AS3955 internal
                                                          register is driven to MISO pin on rising edge of SCLK and is
                                                          sampled by the master at the falling SCLK edge.

                                                          In case the register on defined address does not exist, all 0 data
                                                          is sent to MISO. In the following figure an example of reading
                                                          of a single byte is given.

Figure 61:
SPI Communication: Reading a Single Register

/SS

SCLK

MOSI       X0        0         1     A4       A3       A2        A1 A0                                               X

MISO                              X                                             D7        D6    D5 D4            D3     D2  D1       D0       X

           Three                   SCLK rising            SCLK falling          SCLK rising     SCLK falling                             /SS rising
           leading bits            edge Data is           edge Data is          edge Data is    edge Data is                             edge signals
           indicate The            transferred            sampled               moved from      transferred to                           end of READ
           Mode                    from C                                      Address         C                                       Mode
                                                                                

Page 58                                                                                                                                    ams Datasheet
Document Feedback                                                                                                                    [v1-01] 2015-Apr-29
AS3955 - Detailed Description

                               Writing and Reading of EEPROM Through SPI

                               EEPROM data can be read and written also through SPI
                               interface. Due to possible conflict with the RFID interface
                               additional arbitration bit can be set (IC_CFG0) in order to set
                               the priority access to the EEPROM access. If EEPROM write
                               operation is terminated due to higher priority of the RF an
                               I_acc_err (Interrupt Register 1) IRQ is sent. The description is
                               referring to following case when an EEPROM write operation is
                               triggered via SPI / IC and bit arbit_mod (EEPROM, IC_CFG0,
                               bit3) is set to 1 which means that RF has priority over SPI when
                               accessing EEPROM. In this case EEPROM via SPI / IC write will
                               be terminated and IRQ I_acc_err is triggered if tags enters RF
                               field and EEPROM is needed for RF initialization, EPROM read or
                               write is issued via RF.

ams Datasheet                                  Page 59
[v1-01] 2015-Apr-29            Document Feedback
                                                                 AS3955 - Detailed Description

                                      Word Address Byte

                                      Both EEPROM modes (Read and Write) use Word Address byte
                                      to define the address of the EEPROM word which is accessed.
                                      Seven MSB bits of the Address Byte are used to define the
                                      address; while the last bit is don't care (it is used to synchronize
                                      EEPROM access).

Figure 62:
EEPROM Block Address Byte

                           B7     B6  B5     B4              B3  B2  B1                 B0

EEPROM Block Address WA6 WA5 WA4 WA3 WA2 WA1 WA0                                           x

                                      EEPROM Write

                                      In order to program an EEPROM block, six bytes shall be sent
                                      (mode byte, block address byte and 4 bytes of data, all of them
                                      MSB first). Actual EEPROM programming is started with rising
                                      /SS edge signal which terminates the EEPROM Write command.

                                      EEPROM Read

                                      In order to read data from EEPROM, first a mode byte is sent,
                                      followed by the block address byte (MSB first). Then one or more
                                      blocks of data with address auto-incrementing (packets of 4
                                      bytes) are transferred to MISO output, also MSB first. MOSI is
                                      sampled at the SCLK falling edge; data to be read from AS3955
                                      EEPROM is driven to MISO pin on SCLK rising edge and is
                                      sampled by the master at the SCLK falling edge. In case the
                                      block on the defined address does not exist, all 0 data is sent to
                                      MISO.

                                      Please note that SCLK frequency should not exceed 1MHz
                                      during EEPROM Read (limited by EEPROM read access time).

Figure 63:
Reading an EEPROM Block over SPI

/SS

SCLK                       WWWWW WW       X                          X
MOSI
MISO  X 011111 11AAAAAAAx

                           65432 10

                   X                  BBBBBBBBBB                 BB BB BBB BBB          X
                                                                 98 76 543 210
                                      3322222222

                                      1098765432

                      1s min         MSB Byte from Address      LSB Byte from Address
                                                              

Page 60                                                                    ams Datasheet
Document Feedback                                                    [v1-01] 2015-Apr-29
AS3955 - Detailed Description               Loading Transmission Data into Buffer

Figure 64:                                  Loading the transmitting data into the buffer is similar to
Loading Data into Buffer over SPI           writing data into an addressable registers. Difference is that in
                                            case of loading more bytes all bytes go to the buffer. The
                                            command mode code 100b indicates buffer write operation. A
                                            bit stream of 32 bytes of data can be transferred. The following
                                            figure shows how to load the transmission data into the buffer.

/SS

SCLK

MOSI  X1             0  0  x       x     x  x             x                1 to 32         X
                                                                            bytes
                                                                                    /SS rising edge
      10 pattern           SCLK rising      SCLK falling     Start of               signals end of
      indicates            edge Data is     edge Data is     payload Data           COMMAND Mode
      FIFO mode            transfered       sampled
                           from C

ams Datasheet                                                                                       Page 61
[v1-01] 2015-Apr-29                                                                 Document Feedback
                                                                              AS3955 - Detailed Description

                                            Reading Received Data from Buffer

                                            Reading received data from the buffer is similar to reading data
                                            from an addressable registers. Difference is that, in case of
                                            reading more bytes, they all come from the buffer. The
                                            command mode code 101b indicates buffer operations. In case
                                            the command is terminated by putting /SS high before a packet
                                            of 8 bits composing one byte is read that particular byte is
                                            considered read.

                                            Direct Command Mode

                                            Direct Command Mode is comprised of one command byte
                                            followed by argument byte. SPI operation mode bits 11b
                                            indicate Direct Command Mode. The following six bits define
                                            command code, sent MSB first. Last two bits in argument byte
                                            indicate success of the direct command. Value 01h of the
                                            argument byte indicates that command was accepted, while
                                            value 02h indicates rejected due to internal access priorities.
                                            The argument byte does not provide information on timing of
                                            the command execution.

Figure 65:
Sending a Direct Command over SPI

/SS

SCLK

MOSI  X1           1  C5  C4  C3        C2  C1        C0  D7  D6  D5  D4  D3  D2  D1  D0  X

      Two leading         SCLK rising   SCLK falling
      ONE indicate        edge Data is  edge Data is
      COMMAND             transferred   sampled
      Mode                from C

Page 62                                                                                     ams Datasheet
Document Feedback                                                                     [v1-01] 2015-Apr-29
AS3955 - Detailed Description

                                                  SPI Timing

Figure 66:
SPI Timing

Symbol               Parameter                    Min         Typ    Max Unit              Note

                     General timing (VDD=VDD_IO=VDD_D= 3.3V, Temperature 25C)

TSCLK       SCLK period                           200                     ns (1)
TSCLKL
TSCLKH      SCLK low                              80                      ns
TSSH
TNCSL       SCLK high                             80                      ns
TNCSH
TDIS       SPI reset (/SS high)                  50                      ns
TDIH
            /SS falling to SCLK rising            25                      ns first SCLK pulse
TDOD
TDOHZ       SCLK falling to /SS rising            80                      ns last SCLK pulse

            Data in setup time                    10                      ns

            Data in hold time                     10                      ns

            Read timing (VDD=VDD_IO=VDD_D= 3.3V, Temperature 25C, Cload50pF)

            Data out delay                                    20          ns

            Data out to high                                  20          ns
            impedance delay

Note(s) and/or Footnote(s):
1. TSCLK=TSCLKL+TSCLKH, during EEPROM read the SCLK period has to be increased to 1s (this limitation is imposed by EEPROM read

  access time)

Figure 67:
SPI General Timing

             /SS       t NCSL     t SCLKH         tSCLKL             ...
            SCLK                                                                   t NCSH

            MOSI                                                     ...

                                  tDIS     tDIH

                                           DATAI              DATAI  ...  DATAI

            MISO                                                     ...

ams Datasheet                                                                                              Page 63
[v1-01] 2015-Apr-29                                                                        Document Feedback
                                                      AS3955 - Detailed Description

Figure 68:                                       ...
SPI Read Timing                                  ...

                       /SS  DATAI                ...
                      SCLK
                                          DATAO  ... DATAO
                      MOSI                                               t DOHZ

                      MISO

                                   t DOD

                                   SPI Electrical Connection
                                   A pull-down resistor can be connected by setting miso_pd1 and

                                   miso_pd2 bits in IO Configuration Register.

                                   Figure 69:
                                   SPI Electrical Connection

                                                      AS3955

                                                                                 VP_IO

                                                                                MISO

                                                 RP=10k

                                                           Pull down
                                                            settings

                                                                                VSS

Page 64                                                     ams Datasheet
Document Feedback                                     [v1-01] 2015-Apr-29
AS3955 - Detailed Description

                                   IC Interface

                                   Communication between AS3955 and microcontroller can be
                                   done via a IC interface and an additional interrupt signal.
                                   AS3955 acts an IC slave device, and supports single master,
                                   multiple slave configurations. AS3955 IC supports following
                                   modes: Standard-mode, Fast-mode, Fast-mode Plus.

Figure 70:
IC and Interrupt Signals

Name                 Signal        Signal Level  Description

  /SS  Digital Input with pull up  CMOS          Should be set to high during IC communication
SDA
  SCL  Digital Output              CMOS          Serial Data output
  IRQ
       Digital Input               CMOS          Clock for serial communication

       Digital Output              CMOS          Interrupt Output pin (active high)

                                   During IC communication, the signal /SS should be set to low.
                                   By setting the /SS to low, IC interface is enabled. It is
                                   recommended to keep signal /SS high whenever the IC
                                   interface is not used.
                                   IC interface supports the following modes:

                                        internal registers read and write
                                        EEPROM read and write
                                        buffer read and write
                                        direct commands

                                   Please note that the only IC operations allowed, when logic
                                   and EEPROM are supplied from VP_IO, are EEPROM and registers
                                   reading and writing (see also Power Management).

ams Datasheet                                                                        Page 65
[v1-01] 2015-Apr-29                                                  Document Feedback
                                                                                                                       AS3955 - Detailed Description

                                                          Writing Data to Addressable Registers (Register Write
                                                          Mode)
                                                          Following figures show cases of writing a single byte and
                                                          writing multiple bytes with auto-incrementing address. After
                                                          the IC slave address, the initial register address follows. Then
                                                          one or more data bytes are transferred from the IC, MSB first.
                                                          The data byte is written in register on falling edge of its last
                                                          clock.

Figure 71:
Writing a Single Register over IC

SCL

SDA     S             A  A     A  A  A     A  A  0     A  0  0     0  R  R     R  R  R     A  D  D  D  D     D  D  D     D  A     P
                      6  5     4  3  2     1  0        C              4  3     2  1  1     C  7  6  5  4     3  2  1     0  C
                                                       K                                   K                                K

                            Slave address                             Mode Byte                        Data

Figure 72:
Writing Register Data with Auto-incrementing Address over IC

SCL

SDA  S  A          A  A  A  A  A  A  0  A  0  0  0  R  R  R  R  R  A  D  D  D  D  D  D  D  D  A        D  D  D  D  D  D  D  D  A  P
        6          5  4  3  2  1  0     C           4  3  2  1  1  C  7  6  5  4  3  2  1  0  C        7  6  5  4  3  2  1  0  C
                                        K                          K                          K                                K

                   Slave address                    Mode Byte               Data is moved                 Data is moved to
                                                                              to Address                       Address
                                                                            + 0
                                                                                                             + n

Page 66                                                                                                                     ams Datasheet
Document Feedback                                                                                                     [v1-01] 2015-Apr-29
AS3955 - Detailed Description                         Reading Data from Addressable Registers (Register Read
                                                      Mode)
Figure 73:
Reading a Single Register over IC                    After the IC slave address, the address of register to be read
                                                      shall be provided, MSB first. Then one or more data bytes are
                                                      transferred to SDA output, also MSB first. As in case of the write
                                                      mode, also read mode supports auto-incrementing address. In
                                                      case the register at the defined address does not exist, all 0 data
                                                      is sent to SDA. In the following figure, an example for reading
                                                      of single byte is given.

SCL

SDA  S  AAAAA        AA                 A  0  01  R  RR  R   R  A   S  AAA  A  A  A  A  1  A  D  D  D  D  D  D  D  D  N  P
        65432        10             0C            4  32  1   0  C      654  3  2  1  1     C                          A
                                                                K                          K76 5 4 3 2 1 0            K
                                        K

                     Slave address                Mode Byte            Slave address                      Data

                                                      Writing and Reading EEPROM through IC

                                                      EEPROM data can be read and written through IC interface. Due
                                                      to possible conflict with RFID interface, additional arbitration
                                                      bit can be set (IC_CFG0) in order to set the priority access to the
                                                      EEPROM access. If EEPROM write operation is terminated due
                                                      to higher priority of the RF an I_spi (Interrupt Register 1), an IRQ
                                                      is sent.

                                                      Block Address Byte

                                                      Both EEPROM Read and Write use Block Address byte to define
                                                      the EEPROM block address to be accessed. Seven MSB bits of
                                                      the Address Byte are used to define the address; while the last
                                                      bit is don't-care (it is used to synchronize EEPROM access).

Figure 74:
EEPROM Block Address Byte over IC

                                    B7            B6            B5     B4             B3            B2          B1          B0

EEPROM Block Address WA6 WA5 WA4 WA3 WA2 WA1 WA0                                                                            x

ams Datasheet                                                                                                                Page 67
[v1-01] 2015-Apr-29                                                                                          Document Feedback
                                                                                                                                      AS3955 - Detailed Description

                                                          EEPROM Write
                                                          In order to program an EEPROM block, seven bytes shall be sent
                                                          (slave address, mode byte, block address byte and 4 bytes of
                                                          data, all of them MSB first). Actual EEPROM programming is
                                                          started with rising edge of ACK of the last byte.

Figure 75:
Writing Register Data with Auto-incrementing Address over IC

SCL

SDA  S  A  A       A  A  A  A  A  0     A  0   1     0  0     0     0     0     0     A     WWWWWWW                    A        D  D  D  D  D  D  D  D  A  P
        6  5       4  3  2  1  0        C                                             C     AAAAAAAx                   C        7  6  5  4  3  2  1  0  C
                                        K                                             K     6543210                    K                                K

             Slave address                                 Mode Byte                            EEPROM page                              Data
                                                                                                    address

                                                                    EEPROM Read

                                                                    In order to read data from EEPROM, first a slave address and
                                                                    mode byte is sent, followed by the block address byte (MSB
                                                                    first). Then one or more blocks of data with address
                                                                    auto-incrementing (packets of 4 bytes) are transferred via SDA
                                                                    line, also MSB first. SDA is sampled at the SCL falling edge. In
                                                                    case the block on defined address does not exist, all 0 data is
                                                                    sent via SDA line.

Figure 76:
Reading a EEPROM Block over IC

        SCL

        SDA              S     A  A     A  A   A     A     A     0     A     0     1     1  1  1  1  1     1  A  WW W WW W W                A
                               6  5     4  3   2     1     0           C                                      C  AA A AA A Ax               C
                                                                       K                                      K  65 4 32 1 0                K

                                  Slave address                                             Mode Byte                     EEPROM page
                                                                                                                              address

                                     S     AA     A     A     A     A     A     1     A     DD    D  D  DD       D  D     N  P
                                           65     4     3     2     1     0           C     76    5  4  32       1  0     A
                                                                                      K                                   K

                                              Slave address                                          Data

Page 68                                                                                                                                              ams Datasheet
Document Feedback                                                                                                                              [v1-01] 2015-Apr-29
AS3955 - Detailed Description                                        Loading Transmission Data into Buffer

Figure 77:                                                           Loading the transmitting data into the buffer is similar to
Loading Data into Buffer over IC                                    writing data into an addressable register. Difference is that, in
                                                                     case of loading more bytes, all bytes go to the buffer. The
                                                                     command mode code 10b indicates buffer operations.

                                                                     The following figure shows how to load the transmitting data
                                                                     into the buffer.

SCL

SDA  S               A  A  A  A  A  A  A  0     A  1     0     0  0  0  0  0  0  A  DD     D     D  D  D  D  D  A             D  D  D  D  D  D  D  D  A  P
                     6  5  4  3  2  1  0        C                                C  76     5     4  3  2  1  0  C             7  6  5  4  3  2  1  0  C
                                                K                                K                              K                                     K

                        Slave address                             Mode Byte                      Data                                  Data

                                                                     Reading Received Data from Buffer

                                                                     Reading received data from the buffer is similar to reading data
                                                                     from an addressable register. Difference is that, in case of
                                                                     reading more bytes, they all come from the buffer. The
                                                                     command mode code 10b indicates buffer operations. In case
                                                                     of reading the received data from the buffer, all bits
                                                                     are set to 1.

Figure 78:
Reading Data from Buffer over IC

                              SCL

                              SDA            S        A     A     A  A  A  A  A  0  A   1     0     1  1  1  1  1    1  A
                                                      6     5     4  3  2  1  0     C                                   C
                                                                                    K                                   K

                                                            Slave address                              Mode Byte

                                          S        AA       A     A  A  A  A  1  A  DD        D     D  DD    D    D  N     P
                                                   65       4     3  2  1  0     C  76        5     4  32    1    0  A
                                                                                 K                                   K

                                                      Slave address                              Data

ams Datasheet                                                                                                                                                Page 69
[v1-01] 2015-Apr-29                                                                                                                          Document Feedback
                                                                                                            AS3955 - Detailed Description

                                               Direct Command Mode
                                               Direct Command Mode is comprised of one command byte and
                                               argument byte. The two msb's of command code 11b indicate
                                               Direct Command Mode. The following six bits define command
                                               code, sent MSB first. Last two bits in argument byte indicate
                                               success of the direct command. Value 01h of the argument byte
                                               indicates that command was accepted, while 02h indicates it
                                               was rejected due to internal access priorities. The argument
                                               byte does not provide information on timing of the command
                                               execution.

Figure 79:
Sending a Direct Command over IC

SCL

SDA  S  AAAAAAA                   A  C  CC  C  C  C  C  C  A  S  AAA  A  A  A  A  1  A  0  0  0  0  0  0  x  x  N   P
        6543210                   C  7  65  4  3  2  1  0  C     654  3  2  1  1     C                          A
                                  K                        K                         K                          K

                   Slave address        Mode Byte                Slave address                Argument byte

                                               IC Electrical Connection
                                               The AS3955 has two built-in 3k pull-up resistors on SDA and
                                               SCL lines as shown on Figure 80 and used only in IC mode. The
                                               SPI pull-down bits in IO Configuration Register must be set 00h.

                                               Figure 80:
                                               IC Interface with Built-In Pull-Up Resistors

                                                                                              AS3955

                                                                                                             VP_IO

                                                                      RP=3k                RP=3k
                                                                                                             SDA

                                                                                                             SCL

                                                                                                             VSS

Page 70                                                                                                      ams Datasheet
Document Feedback                                                                                      [v1-01] 2015-Apr-29
AS3955 - Detailed Description  Interrupt Interface Description

ams Datasheet                  There are two interrupt registers implemented in AS3955
[v1-01] 2015-Apr-29            (Interrupt Register 0 and Interrupt Register 1).

                               When an interrupt condition is met, the source of interrupt bit
                               is set in the interrupt register and the IRQ pin goes to high.

                               The microcontroller shall read the interrupt registers to
                               distinguish between different interrupt sources. After an
                               interrupt register is read, its content is reset to 0. IRQ pin goes
                               to low after the interrupt bit(s), which caused its transition to
                               high, has been read. Please note that there may be multiple
                               interrupt register bits set in case the controller does not
                               immediately read the Interrupt Registers after the IRQ signal
                               was set and another event causing interrupt occurred.

                               The process of reading interrupt registers is composed of two
                               phases. In the first phase, interrupts are pushed into internal
                               buffer just before reading the first bit of the register. In the
                               second phase the bits stored in the buffer are read out. The
                               interrupts stored in each internal register are cleared and
                               considered being read out at the rising edge of SCLK of the first
                               interrupt bit for each interrupt register.

                               Buffer Interrupts and Buffer Status Register

                               The AS3955 contains a 32 byte buffer. In case of transmission
                               the Control logic shifts data which was previously loaded by the
                               external controller to the Framing Block and further to the
                               Transmitter. During reception, the demodulated data is stored
                               in the buffer and the external controller can download received
                               data.

                               Transmit and receive capability of the AS3955 is limited by the
                               buffer size. The maximum message size that can be received or
                               transmitted is 32 bytes. The mutual access to the buffer from
                               NFC block and SPI / IC block is not allowed. At the beginning
                               of each reception the buffer is cleared automatically. Before the
                               data is loaded into the buffer via SPI / IC for transmission the
                               MCU must take care of clearing the buffer.

                               Five interrupts that can be triggered during read or write of the
                               buffer:

                                    When buffer overflow or underflow is detected an I_bf_err
                                      is triggered. The reason for the interrupt can be
                                      distinguished by reading the Buffer Status Register 1.

                                    Buffer overflow IRQ is not blocked, in case if more than 32
                                      bytes are received from reader or written via SPI / IC into
                                      buffer the buffer underflow IRQ is produced.

                                    When data is loaded via data RF an I_rxs and I_rxe are
                                      triggered

                                    When all data is transmitted an I_txe is triggered

                                    When buffer is already busy due to another operation in
                                      progress and MCU tries to access the internal buffer an
                                      interrupt I_acc_err shall be triggered.

                                                                                                                Page 71
                                                                                               Document Feedback
Page 72                                                                         AS3955 - Detailed Description
Document Feedback
                   After data is received, the microcontroller shall check the
                   amount of bytes actually received. This information is available
                   in the Buffer Status Register 2, which displays number of bytes
                   in the buffer not yet read out. Buffer Status Register 1
                   additionally contains a flag indicating buffer overflow.

                   EEPROM Read and Write

                   The EEPROM can be accessed from SPI / IC interface or over RF
                   field issuing NFC read and write commands. The EEPROM access
                   is controlled by the internal EEPROM controller. Since the
                   mutual access to the EEPROM is not possible AS3955 needs to
                   arbitrate between MCU and NFC device in cases of mutual
                   access. How this is handled it is defined according to arbit_mod
                   bit. Typical EEPROM programing time is 8.3 ms and should not
                   exceed 9.5 ms. Please note that word data is sent MSB first which
                   is opposite to the RFID EEPROM programming where LSB is sent
                   first.
                   Three interrupts can be triggered during EEPROM read or write:

                        When EEPROM programing is executed successfully an
                          I_io_eewr interrupt is triggered.

                        When EEPROM programming is terminated due to higher
                          priority of the RF part, writing to a non-existent address
                          or writing is not allowed an I_eeac_err interrupt is
                          triggered.

                        When EEPROM is busy and can't be accessed an I_acc_err
                          interrupt is triggered

                   Note that EEPROM does not contain any kind on ant tearing
                   mechanism that would allow detection of corrupted data
                   The valid range for the Block Address byte depends on the
                   EEPROM size. For 4kbit EEPROM, the valid range for the Block
                   Address byte is from 000_0000b to 111_1111b (EEPROM blocks
                   from 00h to 7Fh).

                   Data Buffer

                   Data in buffer is organized in bytes; each byte is terminated by
                   a parity bit. Data bits in a byte are numbered from b1 to b8
                   where b1 is LSB bit, LSB is sent first.
                   Data sent over SPI / IC is also organized in bytes, bits in a byte
                   are marked D0 to D7, where D0 is LSB bit, MSB is sent first.
                   During reception, the framing engine checks the parity bit and
                   removes it from data frame, and only data bytes are put into
                   buffer. During transmission, the process is reversed, only data
                   bytes are put into buffer, while the framing engine adds the
                   parity bits.
                   The data bits b1 to b8 are mapped to buffer data bits D0 to D7,
                   which means that the order of receiving/transmitting bits in a
                   byte is reversed (the bytes are sent LSB first while the SPI / IC
                   bytes are sent MSB first).

                                                                                           ams Datasheet
                                                                                    [v1-01] 2015-Apr-29
AS3955 - Detailed Description

                               Direct Commands

Figure 81:
List of Direct Commands

Command Byte                      Command                               Comments
  Value
                                   Set Default       Set AS3955 to default state
          C2                       Clear Buffer      Clears buffer and its error flags
          C4                  Restart Transceiver    Restarts transceiver communication logics
          C6             Disable/Enable Transceiver  Toggles disable transceiver bit
          C7                    Transmit Buffer      Starts a transmit sequence of the buffer content
          C8                      Transmit ACK       Transmits NFC ACK reply
          C9                    Transmit NACK 0      Transmits NFC NAK reply with code 0h
          CA                    Transmit NACK 1      Transmits NFC NAK reply with code 1h
          CB                    Transmit NACK 4      Transmits NFC NAK reply with code 4h
          CD                    Transmit NACK 5      Transmits NFC NAK reply with code 5h
          CC                       Go To Sleep       Puts a tag in SLEEP state
          D0                      Go To Sense        Puts a tag in SENSE state
          D1                                         Puts a tag in SENSE or SLEEP state depending
                             Go To Sense / Sleep     on the internal AS3955 state
          D2

                               Set Default
                               This direct command puts the AS3955 in the same state as
                               power-up initialization except for IC bit in register IC Status
                               Display Register that defines the interface and IO Configuration
                               Register, which are not cleared.

                               Clear Buffer
                               Clears buffer, buffer overflow and underflow bits.

                               Restart Transceiver
                               Resets protocol logic to its initial state except for the tag state.
                               This interrupts all receptions and transmissions that are being
                               processed at the time.

ams Datasheet                                                        Page 73
[v1-01] 2015-Apr-29                                  Document Feedback
                                                                                AS3955 - Detailed Description

                   Disable/Enable Transceiver
                   This direct command toggles internal states which enables or
                   disables the reception or transmission of the data. This
                   command should be used when MCU wants to disable the
                   interruption of EEPROM write/read over SPI / IC by the received
                   RF wire/read command. The RF part can also be enabled by
                   issuing the Restart RX/TX. This command shall not change the
                   tag state.

                   Transmit Buffer
                   This direct command trigger the transmission of data stored in
                   the buffer over the RF link. Before issuing a Transmit command,
                   the MCU shall send a Clear Buffer command, and write into the
                   buffer the data to be transmitted by sending a Buffer Load
                   command.
                   Execution of this direct command is only enabled when the
                   AS3955 antenna coil is in a PCD field (VP_INT is above HF_PON
                   threshold) and AS3955 Extended or Tunneling modes are
                   enabled.

                   Transmit ACK
                   Transmit 4-bit ACK response.

                   Transmit NACK 0-5
                   Transmit 4-bit NACK response with different NACK codes.

                   Go To Sleep
                   Puts tag in SLEEP state. Execution of this direct command is only
                   enabled when AS3955 antenna coil is in a NFC device field
                   (VP_INT is above HF_PON threshold).

                   Go To Sense
                   Puts tag in SENSE state. Execution of this direct command is
                   only enabled when the AS3955 antenna coil is in a NFC device
                   field (VP_INT is above HF_PON threshold).

                   Go To Sense / Sleep
                   Puts tag in SLEEP state depending on the internal state of the
                   tag. Execution of this direct command is only enabled when
                   AS3955 antenna coil is in a NFC device field (VP_INT is above
                   HF_PON threshold).

Page 74                  ams Datasheet
Document Feedback  [v1-01] 2015-Apr-29
AS3955 - Register Description

Register Description                       The 6-bit register addresses below are defined in hexadecimal
                                           notation. The possible address range is from 00h to 3Fh.

                                           There are two types of registers implemented in AS3955:
                                           configuration registers and display registers. The configuration
                                           registers are used to configure AS3955. They can be written and
                                           read through SPI / IC (RW). The display registers are read-only
                                           (RO); they contain information about AS3955 internal state,
                                           which can be accessed through SPI / IC.

                                           Registers Overview

Figure 82:
List of the SPI / IC Internal Registers

Address [hex]                     Content                       Comment              Type

         00          IO Configuration Register     Default: IC_CFG0                    RW
         01          IC Configuration Register 0   Default: IC_CFG1                  RO/RW
         02          IC Configuration Register 1   Default: IC_CFG2+ battery supply
                                                   enable                              RO
03                   IC Configuration Register 2                                     RO/RW
                                                   Default: MIRQ_0
04                   RFID Status Display Register  Default: MIRQ_1                     RO
                                                                                       RO
05                   IC Status Display Register                                        RW
                                                                                       RW
08                   Mask Interrupt Register 0                                         RO
                                                                                       RO
09                   Mask Interrupt Register 1                                         RO
                                                                                       RO
0A                   Interrupt Register 0                                              RO

0B                   Interrupt Register 1                                              RO

0C                   Buffer Status Register 2                                          RO

0D                   Buffer Status Register 1

0E                   Last NFC Address Access
                     Register

1E                   Version Control Major
                     Revision

1F                   Version Control Minor
                     Revision

ams Datasheet                                                                  Page 75
[v1-01] 2015-Apr-29                                            Document Feedback
                                                                                               AS3955 - Register Description

                                        IO Configuration Register

Figure 83:
IO Configuration Register

                   Address 00h: IO Configuration                                               Type: RW
                                                                                               Comments
Bit   Name         Default              Function

7 miso_pd2                 0  1: pull down on MISO, when \SS is low and MISO is

                              not driven by the AS3955

6 miso_pd1                 0  1: pull down on MISO when \SS is high

5     rfu                  0

4     rfu                  0

3     rfu                  0

2     rfu                  0

1     rfu                  0

0     rfu                  0

Note(s) and/or Footnote(s):
1. Default value is loaded from EEPROM configuration block bits (IC_CFG2).

                                        IC Configuration Registers

Figure 84:
IC Configuration Register 0

                              Address 01h: IC Configuration 0

Bit        Name               Default                                       Function           Type

   7  slnt_mod                                          1: Enable silent mode                  RO

   6  slnt_vl<2>

   5  slnt_vl<1>                        Silent mode voltage level (see Silent Mode)            RO

   4  slnt_vl<0>

                              See note

   3  arbit_mod                         1: RF has priority access to EEPROM over SPI / IC     RW

   2  i2c_addr3<2>

   1  i2c_addr2<1>                                                          IC slave address  RO

   0  i2c_addr1<0>

Note(s) and/or Footnote(s):
1. Default value is loaded from EEPROM configuration block bits (IC_CFG0).

Page 76                                                                                              ams Datasheet
Document Feedback                                                                              [v1-01] 2015-Apr-29
AS3955 - Register Description

Figure 85:
IC Configuration Register 1

                               Address 02h: IC Configuration 1

Bit  Name                      Default                                      Function              Type

7    en_rx_crc                              1: CRC stored in the buffer in the Tunneling mode      RO
                                                                                                   RO
6    vreg<4>
                                                                                                   RO
5    vreg<3>

4    vreg<2>                                Voltage level for voltage regulator VP_REG
                                            (see Energy Harvesting)
                               See note

3    vreg<1>

2    vreg<0>

1    rreg<1>                                Output resistance value for voltage regulator VP_REG
                                            (see Energy Harvesting)
0    rreg<0>

Note(s) and/or Footnote(s):
1. Default value is loaded from EEPROM configuration block bits (IC_CFG1).

Figure 86:
IC Configuration Register 2

                               Address 03h: IC Configuration 2

Bit  Name                      Default                                      Function              Type

7    rfcfg_en                                                                                      RO
                                                                                                   RW
6    tun_mod                   See note                                                            RW
                                                                                                   RO
5    ext_mod                                                                                       RO
                                                                                                   RO
4 nak_on_crc_parity                      0  See Configuration Byte IC_CFG2 for full                RW
                                                                                                   RW
3    auth_set                  See note description

2    selr_b6_inv                         0

1    powm<1>

                               See note

0    powm<0>

Note(s) and/or Footnote(s):
1. Default value is loaded from EEPROM configuration block bits (IC_CFG2)

ams Datasheet                                                                                                  Page 77
[v1-01] 2015-Apr-29                                                                            Document Feedback
                                                                                    AS3955 - Register Description

                                              Status Display Registers

Figure 87:
RFID Status Display Register

                                     Address 04h: RFID Status Display

Bit  Name                                     Function                                  Type

7    hf_pon        1: PICC AFE is active                                                 RO

6    state<3> 0000: POWER OFF                                                            RO

5    state<2>      0001: SENSE                1111: SECTORX_2                            RO
                                              1110: SELECTEDX                            RO
                   0011: RESOLUTION           1010: SENSEX_L2                            RO
                                              1011: SENSEX
4    state<1>      0010: RESOLUTION_L2        1001: SLEEP

                   0110: SELECTED

3    state<0> 0111: SECTOR_2

2 state_notvalid 1: State update indicates that the state is not valid

1    rfu

0    rfu

Figure 88:
IC Status Display Register

                                        Address 05h: IC Status Display

Bit  Name                            Default  Function                                  Type

7    ee2k                                                                                RO
                                                                                         RO
                            see note (1)                                                 RO

6    i2c                                                                                 RO
                                                                                         RO
5    chipkill_2                      0        Signal depends on the CHIP_KILL value at   RO
                                              initialization                             RO
                                                                                         RO
4    chipkill_1                      0        Signal depends on the CHIP_KILL value at
                                              initialization

3    auth_locked                     0        Signal depends on the AUTH_CNT value

2    rfu                             0

1    rfu                             0

0    rfu                             0

Note(s) and/or Footnote(s):
1. Default is set during production

Page 78                                                                                       ams Datasheet
Document Feedback                                                                       [v1-01] 2015-Apr-29
AS3955 - Register Description

                                             Interrupt Registers

Figure 89:
Mask Interrupt Register 0

                               Address 08h: Mask Interrupt 0 (1)

Bit  Name                      Default       Function             Type

7    M_pu                                      Mask I_pu IRQ       RW
                                             Mask I_wu_a IRQ       RW
6    M_wu_a                                                        RW
                                               Mask I_slp IRQ      RW
5    M_slp                                   Mask I_eew_rf IRQ     RW
                                             Mask I_eer_rf IRQ     RW
4    M_eew_rf                                                      RW
                                               Mask I_rxe IRQ      RW
                               see note (2)    Mask I_txe IRQ
                                               Mask I_xrf IRQ
3    M_eer_rf

2    M_rxe

1    M_txe

0    M_xrf

Note(s) and/or Footnote(s):
1. The mask bits only mask the triggering of the physical interrupt line. The interrupt bits in the Interrupt register still get set when

  the interrupt is masked.
2. Default values are loaded from EEPROM configuration block bits (MIRQ_0).

Figure 90:
Mask Interrupt Register 1

                               Address 09h: Mask Interrupt 1 (1)

Bit  Name                      Default       Function             Type

7                    M_rxs                      Mask I_rxs IRQ     RW
                                             Mask I_frm_err IRQ    RW
6    M_frm_err                               Mask I_par_err IRQ    RW
                                              Mask I_crc_err IRQ   RW
5    M_par_err                                Mask I_bf_err IRQ    RW
                                             Mask I_io_eewr IRQ    RW
4    M_crc_err                               Mask I_eeac_err IRQ   RW
                                             Mask I_acc_err IRQ    RW
                               see note (2)

3    M_bf_err

2    M_io_eewr

1    M_eeac_err

0    M_acc_err

Note(s) and/or Footnote(s):

1. The mask bits only mask the triggering of the physical interrupt line. The interrupt bits in the Interrupt register still get set when
  the interrupt is masked.

2. Default values are loaded from EEPROM configuration block bits (MIRQ_1).

ams Datasheet                                                                     Page 79
[v1-01] 2015-Apr-29                                               Document Feedback
                                                               AS3955 - Register Description

Figure 91:
Interrupt Register 0

                      Address 0Ah: Interrupt Register 0

Bit  Name                                Function                                               Type

                      Power-up IRQ. Interrupt is triggered at each power up (RF or battery),

7    I_pu             when chip is already powered and RF field appears and after Go To         RO

                      Sleep, Go To Sense, Go To Sense / Sleep and Set Defaultcommand

6    I_wu_a Wake-up IRQ at entry in SELECTED state                                              RO

5    I_slp            IRQ due to reception of SLP_REQ command                                   RO

4    I_eew_rf PCD has updated the content of the data area                                      RO

3    I_eer_rf PCD has read the content of the data area                                         RO

2    I_rxe            IRQ due to End of Receive. Applicable when receive frame is put in        RO
                      buffer

1    I_txe            IRQ due to End of Transmission. Applicable when data from buffer is       RO
                      sent

0    I_xrf            Exit RF field IRQ                                                         RO

Note(s) and/or Footnote(s):
1. Power-up and Set Default command set the content of this register to 0. After Interrupt Register has been read, its content is set

  again to 0.

Figure 92:
Interrupt Register 1

                      Address 0Bh: Interrupt Register 1

Bit  Name                                Function                                               Type

7    I_rxs            IRQ due to Start of Receive. Applicable when receive frame is             RO
                      put in buffer

                      Lower layer error (broken byte, wrong bit coding sequence) / In

6    I_frm_err case of error the receive data is still put in buffer, error IRQ is              RO

                      additionally sent

5    I_par_err        Parity error / In case of error the receive data is still put in buffer,  RO
                      error IRQ is additionally sent

4    I_crc_err        CRC error / In case of CRC error the receive data is still put in         RO
                      buffer, error IRQ is additionally sent

3    I_bf_err         Buffer error (overflow/underflow). See Buffer Status Register 2           RO

Page 80                                                                                               ams Datasheet
Document Feedback                                                                               [v1-01] 2015-Apr-29
AS3955 - Register Description

                               Address 0Bh: Interrupt Register 1

Bit  Name                      Function                                                          Type

2    I_io_eewr                 IRQ due to successful termination of EEPROM programming. In        RO
                               case EEPROM write command was sent through SPI / IC               RO
                                                                                                  RO
1    I_eeac_err                IRQ due to EEPROM write on write protected block or write to
                               non-existing address

0    I_acc_err                 IRQ due to interruption of SPI / IC operation on buffer, EEPROM
                               or registers due to access control

Note(s) and/or Footnote(s):

1. Power-up and Set Default command reset the content of this register to 0. After Interrupt Register has been read, its content is set
  again to 0.

                               Buffer Registers

Figure 93:
Buffer Status Register 2

                               Address 0Ch: Buffer Status Register 2

Bit  Name                      Function                                                          Type

7    buf_len_invalid Buffer content is being changed data length not valid                      RO
                                                                                                  RO
6                    rfu
                                                                                                  RO
5    buf_len<5>

4    buf_len<4>

3    buf_len<3>                Number of data bytes (binary coded) in the buffer not yet read

                               out. Valid range is from 000000b to 100000b 000000b means

2    buf_len<2>                that there are no data bytes to be read out

1    buf_len<1>

0    buf_len<0>

Note(s) and/or Footnote(s):
1. Power-up and commands Set Default and Clear Buffer reset the content of this register to 0.

ams Datasheet                                                                                                   Page 81
[v1-01] 2015-Apr-29                                                                             Document Feedback
                                                                                                AS3955 - Register Description

Figure 94:
Buffer Status Register 1

                          Address 0Dh: Buffer Status Register 1

Bit  Name                                   Function                                            Type

7    rfu                                                                                         RO
                                                                                                 RO
6    rfu                                                                                         RO
                                                                                                 RO
5    rf_busy                                                                                     RO
                                                                                                 RO
                          Extended mode buffer status flags (see Extended Mode);                 RO

4    rf_data_rdy io_busy flag is omitted since in this it is always zero when this               RO

                          byte is read out

3    io_data_rdy

2    rfu

1    buf_unf              Buffer underflow. Set when read more bytes then actual content
                          of buffer

0    buf_ovr              Buffer overflow. Set when written more bytes then actual
                          content of buffer

Note(s) and/or Footnote(s):
1. Power-up and commands Set Default and Clear Buffer reset the content of this register to 0.

                                            NFC Last Address Register

Figure 95:
Last NFC Address Access Register

                          Address 0Eh: Last NFC Address Access

Bit  Name                                   Function                                            Type

7    last_addr<7>                                                                                RO

6    last_addr<6>

5    last_addr<5>

                          Contains last address accessed by reader. Updated on internal

4    last_addr<4> EEPROM access over RF. The address is 8 bit long and contains

                          also access attempts that are higher than the EEPROM address

3    last_addr<3> space. Value FFh indicates that the value is being updated and

                          is not valid.

2    last_addr<2>

1    last_addr<1>

0    last_addr<0>

Note(s) and/or Footnote(s):
1. Power-up and commands Set Default and Clear Buffer reset the content of this register to 0.

Page 82                                                                                               ams Datasheet
Document Feedback                                                                               [v1-01] 2015-Apr-29
AS3955 - Register Description

                                        Version Control Register

Figure 96:
Version Control Major Revision

                     Address 1Eh: Version Control Major Revision

Bit  Name                      Default  Function                                                           Type

7    maj7                      0                                                                             RO

6    maj6                      0                                                                           Type

5    maj5                      0                                                                            RO

4    maj4                      0

                                        Major version revision

3    maj3                      0

2    maj2                      0

1    maj1                      0

0    maj0                      1

Figure 97:
Version Control Minor Revision

                     Address 1Fh: Version Control Minor Revision

Bit  Name                      Default  Function

7    min7                      0

6    min6                      0

5    min5                      0

4    min4                      0

                                        Minor version revision

3    min3                      0

2    min2                      0

1    min1                      0

0    min0                      0

Note(s) and/or Footnote(s):
1. Default values are loaded from EEPROM configuration block bits (Configuration Bytes MIRQ_0 and MIRQ_1)

ams Datasheet                                                                       Page 83
[v1-01] 2015-Apr-29                                                 Document Feedback
Application Information                                                          AS3955- ApplicationInformation

                         This section describes some general use cases of AS3955 in
                         combination with a microcontroller. The examples are shown
                         for explanatory purposes of specific AS3955 features. Detailed
                         descriptions of specific implementations are subject of
                         dedicated Application Notes.

                         Writing a NDEF Message into AS3955 Memory

                         AS3955 is an NFC Forum Type 2 Tag Platform and as such its
                         memory has to have the layout defined in NFC Forum Type 2
                         Tag Operation Specification. In a Type 2 Tag platform data is
                         stored in memory in the form of TLV blocks. A TLV block has
                         three fields: T field tag field, L field length field and
                         V field value field.

                              T field indicates the type of the TLV block and is one byte
                                long.

                              L field gives the size in bytes of the value field. It's 1 or
                                3 bytes long depending on the size of the value filed. When
                                the size of the value field is between 0 and 254 bytes, the
                                L field is one byte long and has a value between 00h and
                                FEh. For sizes of the value field between 255 and 65535
                                bytes, the L field is 3 bytes long. First byte is FFh indicating
                                that the size will be provided by the following two bytes
                                that can have values between 00FFh and FFFEh.

                              V field holds the bytes of the data carried by the TLV
                                block. When the L field is zero or not present, the V field
                                is omitted.

                         For NDEF messages the TLV block has a T field value of 03h and
                         the message is stored inside the V field. The NDEF Message TLV
                         should always be present in a T2T platform and at a minimum
                         it is an empty NDEF Message TLV, which is defined as an NDEF
                         Message TLV with L field equal 00h and no V field. For the NDEF
                         message format refer to NFC Data Exchange Format Technical
                         Specification.

                         Two more TLV types can exist in the memory, these are Lock
                         Control TLV and Memory Control TLV. When they are present
                         inside the memory, the NDEF Message TLV should be placed
                         after them.

                         Another structure that has to be present in the memory of T2T
                         platform is the Capability Container (CC). CC contains NFC
                         Forum management data. It is comprised of 4 bytes and always
                         resides at block number 03h of the memory.

                         The AS3955 comes with programmed CC (refer to Capability
                         Container in the section Memory Organization of this
                         datasheet), no Lock Control TLV and no Memory Control TLV.
                         The NDEF Message TLV then can be placed already at the
                         beginning of the data area of the memory - block 04h.

Page 84                        ams Datasheet
Document Feedback        [v1-01] 2015-Apr-29
AS3955 - Application Information

                                  Following is an example of an NDEF message with one Well
                                  Known URL record, which carries the http://www.ams.com URL:

                                       In the NDEF message format, the URL above will be
                                         represented by the bytes:
                                         [D1 01 08 55 01 61 6D 73 2E 63 6F 6D]h

                                       The NDEF Message TLV will have the content: [03 0C D1 01
                                         08 55 01 61 6D 73 2E 63 6F 6D]h; first byte is 03h T field
                                         value, indicating this is an NDEF Message TLV, second byte
                                         is 0Ch saying the V field is 12 bytes long, the following 12
                                         bytes are the V field holding the NDEF message.

                                  The NDEF message TLV given above will fully occupy the first 3
                                  blocks of the data area and the first two bytes of the 4th block
                                  of the data area (each memory block is 4 bytes long).

                                  Reading/Writing Through NFC Device

                                  NFC devices use the T2T WRITE command to write data into a
                                  T2T platform. The T2T WRITE command consists of 6 bytes, 1st
                                  byte is the command code A2h, 2nd byte is the block number
                                  where data is to be written and the remaining 4 bytes are the
                                  data content. When the execution of the command is
                                  successful, the tag will return an ACK response A0h. In case of
                                  failure, a NACK code will be returned (see Error Handling section
                                  of this datasheet for NACK codes).

                                  The T2T READ command consists of 2 bytes, first byte is the
                                  command code and is equal to 30h, second byte is the first block
                                  number from which data will be returned. The response, when
                                  successful, will return 4 blocks of data, each block is 4 bytes
                                  long, so 16 bytes of data. In case of error, one byte NACK
                                  response will be returned (see error handling section of AS3955
                                  datasheet for NACK codes).

                                  AS3955 has to be configured in Extended or Normal mode in
                                  order for an NFC device to write/read NDEF data from the
                                  EEPROM of the tag.

                                  An NFC device has to send 4 write commands to the tag to write
                                  the NDEF Message TLV bytes [03 0C D1 01 08 55 01 61 6D 73 2E
                                  63 6F 6D]hex defined in the section above into blocks 04h-07h:

                                      1. [A2 04 03 0C D1 01]hex

                                      2. [A2 05 08 55 01 61]hex

                                      3. [A2 06 6D 73 2E 63]hex

                                      4. [A2 07 6F 6D 00 00]hex

                                  The same NDEF Message TLV bytes can be obtained with a
                                  single READ command, as the TLV occupies only 4 blocks and
                                  the READ command returns 16 bytes. In case of longer NDEF
                                  messages of course several READs are necessary until the
                                  complete message has been read out.

ams Datasheet                                     Page 85
[v1-01] 2015-Apr-29               Document Feedback
Page 86                                                                    AS3955- ApplicationInformation
Document Feedback
                   Reading/Writing Through SPI / IC

                   An MCU can write the NDEF Message TLV bytes [03 0C D1 01 08
                   55 01 61 6D 73 2E 63 6F 6D]hex into blocks 04h-07h by sending
                   the following 4 bytes sequences through SPI or IC (as described
                   in the Wired Interfaces section of this datasheet):
                   Writing:

                       1. [40 08 03 0C D1 01]hex

                       2. [40 0A 08 55 01 61]hex

                       3. [40 0C 6D 73 2E 63]hex

                       4. [40 0E 6F 6D 00 00]hex

                   To read the same data bytes written in blocks 04h 07h, the
                   MCU should send the bytes sequences below (2 clock cycles for
                   MODE and address and 4 additional clock cycles to read the
                   data sent from AS3955, refer to the Wired Interfaces section of
                   this datasheet):

                       1. [7F 08 00 00 00 00]hex

                       2. [7F 0A 00 00 00 00]hex

                       3. [7F 0C 00 00 00 00]hex

                       4. [7F 0E 00 00 00 00]hex

                   Using Extended Mode to Switch AS3955 into
                   Tunneling Mode

                   An NFC device can force the AS3955 in Tunneling mode by
                   sending a command via Extended to the MCU to switch the
                   AS3955 operating mode from Extended to Tunneling (refer to
                   Extended mode section of this datasheet for implementation
                   details). If the MCU should emulate a T4T after the switch,
                   AS3955 should be sent to SENSE state by the MCU with the
                   direct command "Go To Sense" (command code D1h) and the
                   NFC device should do a new anti-collision round for proper T4T
                   activation.

                   Using Tunneling Mode to Emulate a NFC Type 4
                   Tag

                   For T4T emulation the Tunneling mode has to be enabled by
                   setting the tun_mod bit of IC_CFG2 to 1 and the SELR to 0x20.
                   With this configuration, once AS3955 has passed anti-collision
                   and entered SELCTED state, all frames coming from the NFC
                   interface will be pushed to the BUFFER. That means also the
                   SENS_REQ, ALL_REQ, SSD_REQ, SEL_REQ and SLP_REQ will not
                   be executed by the AS3955, so MCU must send the tag to SLEEP
                   state on SLP_REQ (with direct command "Go To Sleep") and to
                   SENSE state (with direct command "Go To Sense") on any of the
                   other commands listed above. The ISO14443A-4 command
                   RATS should also be handled by the MCU. RATS is sent by an
                   NFC device to activate ISO14443A-4, on top of which is T4T
                   platform is implemented.

                                                                                           ams Datasheet
                                                                                    [v1-01] 2015-Apr-29
AS3955 - Application Information                                                                 Page 87
                                                                                 Document Feedback
if (rxBuffer.size > 0)
      {
            switch (rxBuffer.data[0])
            {
                  case 0x26:
                        //SENS_REQ
                        err = as3955DirectCommand(0xD2);
                        break;
                  case 0x50:
                        //SLP_REQ
                        if ((rxBuffer.size == 2) && (rxBuffer.data[1] == 0x00))
                        {
                              err = as3955DirectCommand(0xD0);
                        }
                        else
                        {
                              err = as3955DirectCommand(0xD2);
                        }
                        break;
                  case 0x52:
                        //ALL_REQ
                        err = as3955DirectCommand(0xD2);
                        break;
                  case 0x93:
                        //SSD_REQ cascade level 1
                        err = as3955DirectCommand(0xD2);
                        break;
                  case 0x95:
                        // SEL_REQ cascade level 2
                        err = as3955DirectCommand(0xD2);
                        break;
                  case 0x97:
                        // SSD_REQ Select cascade level 1
                        err = as3955DirectCommand(0xD2);
                        break;
                  case 0xE0:
                        //RATS
                        if (rxBuffer.size == 2)
                        {
                              //initialize ISO14443A-4 (T4T)
                              err = l4TagAppInitialize(rxBuffer.data[1]);
                              /*point dispatcher to a function that handles
                              * ISO14443A-4 blocks */
                              hfDispatcher = &handleL4Cmd;
                        }
                        else
                        {
                              //send the tag to SLEEP/SENSE state
                              err = as3955DirectCommand(0xD2);
                        }

ams Datasheet
[v1-01] 2015-Apr-29
                                                                      AS3955- ApplicationInformation

                        break;
                  case 0x30: // T2T read
                  case 0xA2: // T2T write
                  case 0xC2: // T2T sector select
                  case 0x60: // AS3955 GET_VERSION

                        break;
                  default:

                        //unexpected frame, send the tag to SLEEP/SENSE state
                        err = as3955DirectCommand(0xD2);
                        break;
            }
}

                                                          Further, the MCU should implement the ISO14443A-4 block
                                                          transmission protocol; Select, ReadBinary and UpdateBinary
                                                          commands from ISO/IEC 7816-4.

                                                          ISO14443A-4 block transmission protocol

#define ISO14443_4_PCB_I          0x02          /*!< ISO14443_4 Data Link Layer Head-er I-block. */
#define ISO14443_4_PCB_I_MASK     0xC6          /*!< ISO14443_4 I-block Header Mask, NAD not supported. */
                                                // added the RFU for the EMVco tests
#define ISO14443_4_PCB_I_CHAINING 0x10          /*!< ISO14443_4 I-block chaining bit. */

#define ISO14443_4_PCB_R          0xa2          /*!< ISO14443_4 Data Link Layer Head-er R-block. */
#define ISO14443_4_PCB_RACK
#define ISO14443_4_PCB_R_MASK     ISO14443_4_PCB_R /*!< ISO14443_4 Data Link Layer R(ACK) */
#define ISO14443_4_PCB_R_NAK_BIT
                                  0xe6          /*!< ISO14443_4 R-block Header Mask */

                                  0x10          /*!< ISO14443_4 R-block NAK bit */

#define ISO14443_4_PCB_S          0xc0          /*!< ISO14443_4 Data Link Layer Head-er S-block. */
                                                /*!< ISO14443_4 S-block Header Mask */
#define ISO14443_4_PCB_S_WTX_MASK 0xf2          /*!< ISO14443_4 S-block Header Mask */

#define ISO14443_4_PCB_S_MASK     0xc2

s8 handleL4Cmd()
{

  s8 err = ERR_NONE;
  u8 pcb;

                                                                     /* read the current frame from the HF-interface */
err = as3955RxNBytes(rxBuffer.data, AS3955_RX_TX_BUFFER_SIZE, &rxBuffer.size);

if (rxBuffer.data[0] & ISO14443_4_PCB_CID_BIT)  //Wrong CID;
{                                               /* Reply with CID */

  if (l4Config.cid != rxBuffer.data[1])
  {

     return ERR_NONE;
  }
  else
  {

Page 88                                                                                       ams Datasheet
Document Feedback                                                                       [v1-01] 2015-Apr-29
AS3955 - Application Information

        dllHeaderSize = 2;                            /* Reply without CID */
        txBuffer.data[1] = l4Config.cid;
     }
  }
  else
  {
     if (l4Config.cid)
     {
        return ERR_NONE;
     }
     else
     {

        dllHeaderSize = 1;
     }
  }
  pcb = rxBuffer.data[0];
  err = handleL4Block(pcb);
  return err;
}

s8 handleL4Block(u8 pcb)

{

   s8 err = ERR_NONE;

                                                /* Look at the different commands and decide on further action */

   if (ISO14443_4_PCB_I == (pcb & ISO14443_4_PCB_I_MASK))

   {

      if ((pcb & 1) != isoDepCnt)

      {

         l4FwtStartUs = stopWatchMeasure();

         l4FwtTemp = l4Config.fwt_us;

         txBuffer.size = 0;

         isoDepCnt = !isoDepCnt; /* 7.5.3.2 Rule D, standard has a "may" on check-ing

                     the current block number.... */

         if (ISO14443_4_PCB_I_CHAINING & pcb)

         {                                            /* I(1) received */

            memcpy(chainInBuffer + chainInSize, rxBuffer.data + dllHeader-Size,

               rxBuffer.size - dllHeaderSize);

            chainInSize += (rxBuffer.size - dllHeaderSize);

            txBuffer.data[0] = ISO14443_4_PCB_RACK | isoDepCnt | CURR_CID_BIT;

            txBuffer.size = dllHeaderSize;

            err = as3955TxNBytes(txBuffer.data, txBuffer.size, 0,

                       AS3955_TX_FLAG_NONE);

         }

         else

         {                                            /* I(0) received */

            txBuffer.data[0] = ISO14443_4_PCB_I | isoDepCnt | CURR_CID_BIT;

            if (chainInSize > 0)

            {

               memcpy(chainInBuffer + chainInSize, rxBuffer.data +

ams Datasheet                                                                                          Page 89
[v1-01] 2015-Apr-29                                                                    Document Feedback
                                                                                                 AS3955- ApplicationInformation

                   dllHeaderSize, rxBuffer.size - dllHeaderSize);
              chainInSize += (rxBuffer.size - dllHeaderSize);
              memcpy(rxBuffer.data + dllHeaderSize, chainInBuffer,

                   chainInSize);
              rxBuffer.size = dllHeaderSize + chainInSize;
              chainInSize = 0;
           }

           err = nfcTagAppProcessAPDU(dllHeaderSize);

           if (txBuffer.size > l4Config.fsd)
           {

                                                                     //start chaining to reader
              memcpy(chainOutBuffer, txBuffer.data + dllHeaderSize,

                   txBuffer.size - dllHeaderSize);
              chainOutBufferSize = txBuffer.size - dllHeaderSize;
              chainOutSize = 0;
              txBuffer.data[0] |= ISO14443_4_PCB_I_CHAINING;

              err = as3955TxNBytes(txBuffer.data, l4Config.fsd, 0,
                              AS3955_TX_FLAG_NONE);

              state = L4_WAIT_FOR_ACK;

              if (err == ERR_NONE)
              {

                 chainOutSize += l4Config.fsd - dllHeaderSize;
              }
           }
           else
           {
              err = as3955TxNBytes(txBuffer.data, txBuffer.size, 0,

                              AS3955_TX_FLAG_NONE);
              as3955SetTxFrameState(as3955FrameTXed);
              state = L4_IDLE;
           }
           rxBuffer.size = 0;
           rxBuffer.state = as3955FrameIdle;
        }
  }
  else
  {

                                                                     /* Repeat last buffer */
     err = as3955TxNBytes(txBuffer.data, txBuffer.size, 0, AS3955_TX_FLAG_NONE);
  }
}
else if (ISO14443_4_PCB_R == (pcb & ISO14443_4_PCB_R_MASK))
{
   if ((pcb & 1) != isoDepCnt)
   {
      if (ISO14443_4_PCB_R_NAK_BIT & pcb)

Page 90                                                                                                ams Datasheet
Document Feedback                                                                                [v1-01] 2015-Apr-29
AS3955 - Application Information

{                                                    /* R(NAK) received */

                                                     /* 7.5.3.2 Rule E, Note 2 no toggling for NAK*/

   txBuffer.data[0] = ISO14443_4_PCB_RACK | isoDepCnt | CURR_CID_BIT;

   txBuffer.size = dllHeaderSize;

   err = as3955TxNBytes(txBuffer.data, txBuffer.size, 0,

                     AS3955_TX_FLAG_NONE);

   rxBuffer.size = 0;

   rxBuffer.state = as3955FrameIdle;

}

else

{                                                    /* R(ACK) received */

                                                     /* 7.5.3.2 Rule E, normal toggling*/

   isoDepCnt = !isoDepCnt;

   if (L4_WAIT_FOR_ACK == state)

   {

      txBuffer.data[0] = ISO14443_4_PCB_I | isoDepCnt | CURR_CID_BIT;

                                                     if ((chainOutBufferSize - chainOutSize +

                     dllHeaderSize) > l4Config.fsd)

                                                     {

                                                     //continue with chaining

                                                     memcpy(txBuffer.data + dllHeaderSize,

                       chainOutBuffer + chainOutSize,

                       l4Config.fsd - dllHeaderSize);

                                                     txBuffer.size = l4Config.fsd;

                                                     chainOutSize += l4Config.fsd - dllHeader-Size;

                                                     txBuffer.data[0] |= ISO14443_4_PCB_I_CHAINING;

                                                     }

                                                     else

                                                     {

                                                     //last block of chaining

                                                     memcpy(txBuffer.data + dllHeaderSize,

                       chainOutBuffer + chainOutSize,

                       chainOutBufferSize - chainOutSize);

                                                     txBuffer.size = dllHeaderSize +

                       (chainOutBufferSize

                       chainOutSize);

                                                     chainOutSize = 0;

                                                     chainOutBufferSize = 0;

                                                     state = L4_INITIALIZED;

                                                     }

                                                     err = as3955TxNBytes(txBuffer.data, txBuffer.size, 0,

                       AS3955_TX_FLAG_NONE);

   }

   else

   {

                                                     //R(ACK)!

      txBuffer.data[0] = ISO14443_4_PCB_RACK | isoDepCnt | CURR_CID_BIT;

      txBuffer.size = dllHeaderSize;

      err = as3955TxNBytes(txBuffer.data, txBuffer.size, 0,

                     AS3955_TX_FLAG_NONE);

ams Datasheet                                                                                                  Page 91
[v1-01] 2015-Apr-29                                                                            Document Feedback
                                                                                      AS3955- ApplicationInformation

            }

         }

      }

      else

      {

                                                  //R-block same cnt -> repeat last block

         if (txBuffer.size > 0)

         {

            err = as3955TxNBytes(txBuffer.data, txBuffer.size, 0,

                   AS3955_TX_FLAG_NONE);

         }

      }

   }

   else if (ISO14443_4_PCB_S == (pcb & ISO14443_4_PCB_S))

   {

                                                  //S-Block

      if (ISO14443_4_PCB_S_WTX_MASK == (pcb & ISO14443_4_PCB_S_WTX_MASK))

      {

                                                  /* S(WTX) received */

                                                  l4FwtStartUs = stopWatchMeasure();

                                                  txBuffer.data[0] = ISO14443_4_PCB_S_WTX_MASK |

CURR_CID_BIT;

                                                  txBuffer.size = dllHeaderSize;

                                                  err = as3955TxNBytes(txBuffer.data, txBuffer.size, 0,

                           AS3955_TX_FLAG_NONE);

      }

      if (ISO14443_4_PCB_S_MASK == (pcb & ISO14443_4_PCB_S_MASK))

      {

                                                  /* S(DESELECT) received */

         txBuffer.data[0] = ISO14443_4_PCB_S_MASK | CURR_CID_BIT;

         txBuffer.size = dllHeaderSize;

         err = as3955TxNBytes(txBuffer.data, txBuffer.size, 0, AS3955_TX_FLAG_NONE);

         err = as3955DirectCommand(0xD0); //go to SLEEP

         state = L4_IDLE;

         hfDispatchInitialize();

      }

   }

   return err;

}

Page 92                                                                                          ams Datasheet
Document Feedback                                                                          [v1-01] 2015-Apr-29
AS3955 - Application Information

                                                  Select, ReadBinary and UpdateBInary APDUs (ISO/IEC 7816-4),
                                                  NDEF management

//NDEF application AID

static const u8 ndefAppAID[] ={0xd2, 0x76, 0x00, 0x00, 0x85, 0x01, 0x01};

#define NDEF_MSG_MAX_LENGTH                 0x0204 /*!< NDEF message maximum length */

#define NDEF_CCF_MAX_LENGTH                 0x0F         /*!< NDEF message maximum length */

u8 ndefMessageFile[NDEF_MSG_MAX_LENGTH] =

{

    0x00, 0x31,                                          //NLEN

    0xd1,                                                //mb=1 me=1 cf=0 sr=1 il=0 tnf=001

    0x01,                                                //type length = 1 byte

    0x2d,                                                //payload length 45 bytes

    0x55,                                                //type 'U'

    //payload: ams.com/eng/Products/RF-Products/RFID/AS3953, below the bytes

    0x01, //uri identifier code 0x01 means prepending http://www. - 5 bytes so far

    0x61, 0x6d, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x65, 0x6e, 0x67, 0x2f, //12

    0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x73, 0x2f, 0x52, 0x46, 0x2d, //12

    0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x73, 0x2f, 0x52, 0x46, 0x49, //12

    0x44, 0x2f, 0x41, 0x53, 0x33, 0x39, 0x35, 0x33, //8

    0xFE,//1

};

#define RXTX_BUFFER_SIZE                    256

u8 ndefFileReadCount = 0;
u8 * filePtr = NULL;
BOOL ndefInitDone = FALSE;

u8 ndefCcFile[NDEF_CCF_MAX_LENGTH] =
{

  0x00, 0x0F, 0x20, 0x00, 0x1C, 0x00, 0x1A, 0x04,
  0x06, 0xE1, 0x04, (u8)(0x0204 >> 8), (u8)(0x0204), 0x00, 0x00,
};

s8 nfcTagAppProcessAPDU(int dllInHeaderSize)
{

  s8 err = ERR_NONE;
  u8 * rxPtr = &rxBuffer.data[dllInHeaderSize];

    if (*(rxPtr) == 0x00)                                //select command detected -> check what should be selected
    {

      txBuffer.size = dllInHeaderSize + 2;
      rxPtr += 1;
      switch (*rxPtr)
      {

         case C_APDU_SELECT_CMD:

            switch (*(rxPtr + 1))

ams Datasheet                                                                                                 Page 93
[v1-01] 2015-Apr-29                                                                           Document Feedback
                   AS3955- ApplicationInformation

  {
     case C_APDU_SELECT_P1_BYNAME:
                                                               // check if this is _THE_ NDEF APP SELECT CMD
        if (*(rxPtr + 3) == 0x07 && !memcmp((rxPtr + 4), &ndefAppAID[0], 7))
        {
           selectedApp = t4AppNDEF;
           txBuffer.data[dllInHeaderSize] = 0x90;
           txBuffer.data[dllInHeaderSize + 1] = 0x00;
        }
                                                                else
                                                                {
                                                                //ERROR
                                                                selectedApp = t4AppNone;
                                                                err = ERR_PARAM;
                                                                txBuffer.data[dllInHeaderSize] = 0x6a;
                                                                txBuffer.data[dllInHeaderSize + 1] = 0x82;
                                                                }
        break;
     case C_APDU_SELECT_P1_BYID:
        if (selectedApp == t4AppNDEF)
        {
                                                               //read NDEF message saved in MCU's internal flash memory
                                                                flashReadNdef();
           err = ndefSelectFile(rxPtr);
           if (ERR_NONE == err)
           {
              txBuffer.data[dllInHeaderSize + 0] = 0x90;
              txBuffer.data[dllInHeaderSize + 1] = 0x00;
           }
           else
           {
              txBuffer.data[dllInHeaderSize + 0] = 0x6a;
              txBuffer.data[dllInHeaderSize + 1] = 0x82;
           }
        }
        else
        {
           err = ERR_PARAM;
                                                                txBuffer.data[dllInHeaderSize] = 0x6a;
                                                                txBuffer.data[dllInHeaderSize + 1] = 0x82;
        }
        break;
     default:
        err = ERR_PARAM;
        txBuffer.data[dllInHeaderSize] = 0x6a;
        txBuffer.data[dllInHeaderSize + 1] = 0x82;
        break;

  }
  break;
case C_APDU_READBIN_CMD:

Page 94                  ams Datasheet
Document Feedback  [v1-01] 2015-Apr-29
AS3955 - Application Information

           if (selectedApp == t4AppNDEF)
           {

              err = ndefReadFile(rxPtr, dllInHeaderSize);
           }
           else
           {

              err = ERR_PARAM;
                                                                         txBuffer.data[dllInHeaderSize] = 0x6a;
                                                                         txBuffer.data[dllInHeaderSize + 1] = 0x82;

           }
           break;
        case C_APDU_UPDATEBIN_CMD:
           if (selectedApp == t4AppNDEF)
           {

              err = ndefWriteFile(rxPtr);
              if (ERR_NONE == err)
              {

                 txBuffer.data[dllInHeaderSize + 0] = 0x90;
                 txBuffer.data[dllInHeaderSize + 1] = 0x00;
              }
              else
              {
                 txBuffer.data[dllInHeaderSize + 0] = 0x6a;
                 txBuffer.data[dllInHeaderSize + 1] = 0x82;
              }
           }
           else
           {
              err = ERR_PARAM;

                                                                         txBuffer.data[dllInHeaderSize] = 0x6a;
                                                                         txBuffer.data[dllInHeaderSize + 1] = 0x82;
           }
           break;
        default:
           err = ERR_PARAM;
           txBuffer.data[dllInHeaderSize + 0] = 0x6d;
           txBuffer.data[dllInHeaderSize + 1] = 0x00;
           break;
     }
  }
  else
  {
                                                                        //Unknown Class Byte
     err = ERR_PARAM;
     txBuffer.data[dllInHeaderSize + 0] = 0x6d;
     txBuffer.data[dllInHeaderSize + 1] = 0x00;
  }
  return err;
}

ams Datasheet                                                                                                                        Page 95
[v1-01] 2015-Apr-29                                                                                                  Document Feedback
s8 ndefReadFile (u8 * rxPtr, u8 hdrLen)                                                    AS3955- ApplicationInformation
{
                                                                                                                 ams Datasheet
  s8 err = ERR_NONE;                                                                                      [v1-01] 2015-Apr-29
  if (filePtr != NULL)
  {

                                                                        // read from file
     u16 offset = (*(rxPtr + 1) << 8) | *(rxPtr + 2);
     u8 length = *(rxPtr + 3);
     memcpy(&txBuffer.data[hdrLen], filePtr + offset, length);
     txBuffer.data[hdrLen + length] = 0x90;
     txBuffer.data[hdrLen + length + 1] = 0x00;
     txBuffer.size = hdrLen + length + 2;
  }
  else
  {
     txBuffer.data[hdrLen + 0] = 0x6a;
     txBuffer.data[hdrLen + 1] = 0x82;
     err = ERR_PARAM;
  }
  return err;
}

s8 ndefWriteFile (u8 * rxPtr)                          //write to file
{

  s8 err = ERR_NONE;
  if (filePtr != NULL)
  {

     u16 offset = (*(rxPtr + 1) << 8) | *(rxPtr + 2);
     u8 length = *(rxPtr + 3);
     memcpy(filePtr + offset, rxPtr + 4, length);
  }
  else
  {
     err = ERR_PARAM;
  }
  return err;
}

s8 ndefSelectFile (u8 * rxPtr)                         // ID size == 2 -> files
{

  s8 err = ERR_NONE;
  filePtr = NULL;
  if (*(rxPtr + 3) == 0x02)
  {

     if (*(rxPtr + 4) == 0xE1)
     {

        switch (*(rxPtr + 5))
        {

Page 96
Document Feedback
AS3955 - Application Information                // CCF selected
                                                //NDEF message selected
           case 0x03:

              filePtr = (u8*) ndefCcFile;
              break;
           case 0x04:

              filePtr = (u8*) ndefMessageFile;
              break;
           default:
              err = ERR_PARAM;
              break;
        }
     }
     else
     {
        err = ERR_PARAM;
     }
  }
  else
  {
     err = ERR_PARAM;
  }
  return err;
}

ams Datasheet                                                                            Page 97
[v1-01] 2015-Apr-29                                                      Document Feedback
                                                                           AS3955- ApplicationInformation

                   References

                        [EMVCO-1] EMVCo Type Approval Contactless Terminal
                         Level 1 PCD Digital Test Bench & Test Cases, version
                         2.3.1a, January 2013

                        [ISO14443-3] ISO/IEC 14443-3:2011(E), Identification
                         cards -- Contactless integrated circuit cards -- Proximity
                         cards -- Part 3: Initialization and anticollision

                        [ISO14443-4] ISO/IEC 14443-4:2008(E), Identification
                         cards -- Contactless integrated circuit(s) cards --
                         Proximity cards -- Part 4: Transmission protocol

                        [ISO18092] ISO/IEC 18092:2013 -- Information
                         technology -- Telecommunications and information
                         exchange between systems -- Near Field Communication
                         -- Interface and Protocol (NFCIP-1)

                        [ISO7816-3] ISO/IEC 7816-3:2006, Identification cards --
                         Integrated circuit cards -- Part 3: Cards with contacts --
                         Electrical interface and transmission protocols

                        [ISO7816-4] ISO/IEC 7816-4:2005, Identification cards --
                         Integrated circuit cards -- Part 4: Organization, security
                         and commands for interchange

                        [ISO7816-6] ISO/IEC 7816-6:2004, Identification cards --
                         Integrated circuit cards -- Part 6: Interindustry data
                         elements for interchange

                        [NFC Analog] NFC Analog Specification -- NFC Forum,
                         11.07.2011, Version 1.0

                        [NFC Digital] NFC Digital Protocol -- NFC Forum,
                         17.11.2010, Version 1.0

                        [NDEF] NFC Data Exchange Format (NDEF), Technical
                         Specification -- NFC Forum, 24.07.2006, Version 1.0

                        [PHDC] Personal Health Device Communication),
                         Technical Specification -- NFC Forum, 27.02.2013, Version
                         1.0

                        [T2T] Tag 2 Type Operation, Technical Specification --
                         NFC Forum, 31.05.2011, Version 1.1

                        [T4T] Tag 4 Type Operation, Technical Specification --
                         NFC Forum, 28.06.2011, Version 2.0

Page 98                  ams Datasheet
Document Feedback  [v1-01] 2015-Apr-29
AS3955 - Package Drawings & Markings

Package Drawings & Markings

Figure 98:
Package Outline Drawings MLPD

                                                                          Symbol Min Nom Max

                                                                          A    0.80 0.90 1.00

                                                                          A1   0  0.02 0.05

                                                                          A3      0.20 REF

                                                                          L    0.30 0.40 0.50

                                                                          b    0.18 0.25 0.30

                                                                          D       3.00 BSC

                                                                          E       3.00 BSC

                                                                          e       0.50 BSC

                                                                          D2   2.23 2.38 2.48

                                                                          E2   1.49 1.64 1.74

                                                                          aaa  -  0.15      -

                                                                          bbb  -  0.10      -

                                                                          ccc  -  0.10      -

                                                                          ddd  -  0.05      -

RoHS                                  Green                               eee  -  0.08      -

                                                                          N       10

Note(s) and/or Footnote(s):
1. Dimensioning and tolerancing conform to ASME Y14.5M-1994.
2. All dimensions are in millimeters. Angles are in degrees.
3. Coplanarity applies to the exposed heat slug as well as the terminal.
4. Radius on terminal is optional.
5. N is the total number of terminals.

ams Datasheet                                                                                     Page 99
[v1-01] 2015-Apr-29                                                               Document Feedback
                                                                   AS3955 - Package Drawings & Markings

                   Figure 99:
                   Package Marking MLPD (IC)

                   AS39
                   55I4
                   XXXX

                   Figure 100:
                   Package Marking MLPD (SPI)

                   AS39
                   55S4
                   XXXX

                   Figure 101:
                   Package Code MLPD

                                                    XXXX

                                                      Tracecode

Page 100                                                               ams Datasheet
Document Feedback                                                [v1-01] 2015-Apr-29
AS3955 - Package Drawings & Markings

Figure 102:
Package Outline Drawings WL-CSP

Note(s) and/or Footnote(s):            RoHS
1. Pin 1=A1
2. ccc Coplanarity                      Green
3. All dimensions are in m.
                                                     Page 101
ams Datasheet                         Document Feedback
[v1-01] 2015-Apr-29
                                                                   AS3955 - Package Drawings & Markings

                   Figure 103:
                   Package Marking WL-CSP

                              3955_S4
                                XXXX

                   Figure 104:
                   Package Code WL-CSP

                                                    XXXX

                                                      Tracecode

Page 102                 ams Datasheet
Document Feedback  [v1-01] 2015-Apr-29
AS3955 - Ordering & Contact Information

Ordering & Contact Information

Figure 105:
Ordering Information

Ordering Code                     Package      Marking   Delivery Form   Configuration

AS3955-ATDM-S4                      MLPD      AS3955S4      Mini Reels  SPI - EEPROM 4kbit
  AS3955-ATDT-S4                     MLPD      AS3955S4     Tape & Reel  SPI - EEPROM 4kbit
AS3955-ATDM-I4 (1)                   MLPD      AS3955I4      Mini Reels  IC - EEPROM 4kbit
AS3955-ATDT-I4 (1)                   MLPD      AS3955I4     Tape & Reel  IC - EEPROM 4kbit
AS3955-AWLT-S4 (1)                  WL-CSP     3955_S4      Tape & Reel  SPI - EEPROM 4kbit
AS3955-AWLT-I4 (1)                  WL-CSP      3955_I4     Tape & Reel  IC - EEPROM 4kbit
AS3955-ASWF-S4 (1)               Sorted wafer                Wafer Box   SPI - EEPROM 4kbit
AS3955-ASWF-I4 (1)               Sorted wafer      NA        Wafer Box   IC - EEPROM 4kbit
AS3955-ATDM-S2 (2)                   MLPD          NA        Mini Reels  SPI - EEPROM 2kbit
AS3955-ATDT-S2 (2)                   MLPD      AS3955S2     Tape & Reel  SPI - EEPROM 2kbit
AS3955-ATDM-I2 (2)                   MLPD      AS3955S2      Mini Reels  IC - EEPROM 2kbit
AS3955-ATDT-I2 (2)                   MLPD      AS3955I2     Tape & Reel  IC - EEPROM 2kbit
AS3955-AWLT-S2 (2)                  WL-CSP     AS3955I2     Tape & Reel  SPI - EEPROM 2kbit
AS3955-AWLT-I2 (2)                  WL-CSP     3955_S2      Tape & Reel  IC - EEPROM 2kbit
AS3955-ASWF-S2 (2)               Sorted wafer   3955_I2      Wafer Box   SPI - EEPROM 2kbit
AS3955-ASWF-I2 (2)               Sorted wafer      NA        Wafer Box   IC - EEPROM 2kbit
                                                   NA

Note(s) and/or Footnote(s):
1. Not available yet
2. Will be available on request

ams Datasheet                                                                           Page 103
[v1-01] 2015-Apr-29                                                      Document Feedback
                                                                AS3955 - Ordering&ContactInformation

                   Buy our products or get free samples online at:
                   www.ams.com/ICdirect
                   Technical Support is available at:
                   www.ams.com/Technical-Support
                   Provide feedback about this document at:
                   www.ams.com/Document-Feedback
                   For further information and requests, e-mail us at:
                   ams_sales@ams.com
                   For sales offices, distributors and representatives, please visit:
                   www.ams.com/contact

                   Headquarters
                   ams AG
                   Tobelbaderstrasse 30
                   8141 Unterpremstaetten
                   Austria, Europe

                   Tel: +43 (0) 3136 500 0
                   Website: www.ams.com

Page 104                 ams Datasheet
Document Feedback  [v1-01] 2015-Apr-29
AS3955 - RoHS Compliant & ams Green Statement

RoHS Compliant & ams Green                     RoHS: The term RoHS compliant means that ams AG products
Statement                                      fully comply with current RoHS directives. Our semiconductor
                                               products do not contain any chemicals for all 6 substance
                                               categories, including the requirement that lead not exceed
                                               0.1% by weight in homogeneous materials. Where designed to
                                               be soldered at high temperatures, RoHS compliant products are
                                               suitable for use in specified lead-free processes.

                                               ams Green (RoHS compliant and no Sb/Br): ams Green
                                               defines that in addition to RoHS compliance, our products are
                                               free of Bromine (Br) and Antimony (Sb) based flame retardants
                                               (Br or Sb do not exceed 0.1% by weight in homogeneous
                                               material).

                                               Important Information: The information provided in this
                                               statement represents ams AG knowledge and belief as of the
                                               date that it is provided. ams AG bases its knowledge and belief
                                               on information provided by third parties, and makes no
                                               representation or warranty as to the accuracy of such
                                               information. Efforts are underway to better integrate
                                               information from third parties. ams AG has taken and continues
                                               to take reasonable steps to provide representative and accurate
                                               information but may not have conducted destructive testing or
                                               chemical analysis on incoming materials and chemicals. ams AG
                                               and ams AG suppliers consider certain information to be
                                               proprietary, and thus CAS numbers and other limited
                                               information may not be available for release.

ams Datasheet                                                 Page 105
[v1-01] 2015-Apr-29                            Document Feedback
Copyrights & Disclaimer                                                          AS3955 - Copyrights&Disclaimer

                         Copyright ams AG, Tobelbader Strasse 30, 8141
                         Unterpremstaetten, Austria-Europe. Trademarks Registered. All
                         rights reserved. The material herein may not be reproduced,
                         adapted, merged, translated, stored, or used without the prior
                         written consent of the copyright owner.

                         Devices sold by ams AG are covered by the warranty and patent
                         indemnification provisions appearing in its General Terms of
                         Trade. ams AG makes no warranty, express, statutory, implied,
                         or by description regarding the information set forth herein.
                         ams AG reserves the right to change specifications and prices
                         at any time and without notice. Therefore, prior to designing
                         this product into a system, it is necessary to check with ams AG
                         for current information. This product is intended for use in
                         commercial applications. Applications requiring extended
                         temperature range, unusual environmental requirements, or
                         high reliability applications, such as military, medical
                         life-support or life-sustaining equipment are specifically not
                         recommended without additional processing by ams AG for
                         each application. This product is provided by ams AG "AS IS"
                         and any express or implied warranties, including, but not
                         limited to the implied warranties of merchantability and fitness
                         for a particular purpose are disclaimed.

                         ams AG shall not be liable to recipient or any third party for any
                         damages, including but not limited to personal injury, property
                         damage, loss of profits, loss of use, interruption of business or
                         indirect, special, incidental or consequential damages, of any
                         kind, in connection with or arising out of the furnishing,
                         performance or use of the technical data herein. No obligation
                         or liability to recipient or any third party shall arise or flow out
                         of ams AG rendering of technical or other services.

Page 106                       ams Datasheet
Document Feedback        [v1-01] 2015-Apr-29
AS3955 - Document Status

Document Status

Document Status Product Status             Definition

Product Preview           Pre-Development  Information in this datasheet is based on product ideas in
                                           the planning phase of development. All specifications are
                                           design goals without any warranty and are subject to
                                           change without notice

Preliminary Datasheet     Pre-Production   Information in this datasheet is based on products in the
                                           design, validation or qualification phase of development.
                                           The performance and parameters shown in this document
                                           are preliminary without any warranty and are subject to
                                           change without notice

Datasheet                 Production       Information in this datasheet is based on products in
                                           ramp-up to full production or full production which
                                           conform to specifications in accordance with the terms of
                                           ams AG standard warranty as given in the General Terms of
                                           Trade

Datasheet (discontinued)  Discontinued     Information in this datasheet is based on products which
                                           conform to specifications in accordance with the terms of
                                           ams AG standard warranty as given in the General Terms of
                                           Trade, but these products have been superseded and
                                           should not be used for new designs

ams Datasheet                                                         Page 107
[v1-01] 2015-Apr-29                                    Document Feedback
                      AS3955 - RevisionInformation

Revision Information

  Changes from 1-00 (2015-Apr-27) to current revision 1-01 (2015-Apr-29)                                              Page

Added section SPI / I2C Access Modes                                                                                    55
Updated Figure 71                                                                                                       66
Updated Figure 72                                                                                                       66
Updated Figure 73                                                                                                       67
Updated Figure 75                                                                                                       68
Updated Figure 76                                                                                                       68
Updated Figure 77                                                                                                       69
Updated Figure 78                                                                                                       69
Updated Figure 79                                                                                                       70

Note(s) and/or Footnote(s):
1. Page and figure numbers for the previous version may differ from page and figure numbers in the current revision.
2. Correction of typographical errors is not explicitly mentioned.

Page 108                                                                        ams Datasheet
Document Feedback                                                         [v1-01] 2015-Apr-29
AS3955 - Content Guide  1 General Description
                        2 Key Benefits & Features
Content Guide           3 Applications
                        4 Block Diagram
ams Datasheet
[v1-01] 2015-Apr-29     6 Pin Assignments
                        7 Pin Description

                        8 Absolute Maximum Ratings

                        9 Electrical Characteristics
                        9 Operating Conditions
                        9 DC/AC Characteristics for Digital Inputs and Outputs
                        10 Electrical Specifications

                        12 Detailed Description
                        12 Analog Frontend (AFE)
                        13 Power Management
                        13 Power Mode 0
                        15 Power Mode 1
                        15 Power Mode 2
                        15 Power Mode 3
                        15 Interface Arbitration
                        16 Arbitration Mode 0
                        16 Arbitration Mode 1
                        16 Energy Harvesting
                        17 Silent Mode
                        17 Memory Protection
                        18 Passive Wake-Up
                        18 Chip Kill
                        19 NFC Tag Functionality
                        19 Communication Principle
                        20 SENSE State
                        20 SLEEP State
                        20 RESOLUTION State
                        20 SELECTED State
                        21 AUTHENTICATED State
                        21 NFC Forum Type 2 Tag Support
                        22 UID Coding
                        22 First UID Byte (uid0)
                        22 Second UID Byte (uid1)
                        22 Third UID Byte (uid2)
                        22 Last Four UID Bytes (uid3-uid6)
                        23 Coding of SENS_RES, SEL_REQ, ACK and NACK
                        23 SENS_RES Response
                        23 SEL_RES Response, Cascade Level 1 and 2
                        24 ACK Response
                        24 NACK Response
                        24 Access to UID, SENS_RES and SEL_REQ During Anti-Col-

                              lision
                        24 Get Version Command
                        26 Memory Organization
                        26 4kbit EEPROM Organization
                        28 2kbit EEPROM Organization

                                                                                                       Page 109
                                                                                        Document Feedback
Page 110                                                                                AS3955 - Content Guide
Document Feedback
                   29 UID Bytes
                   29 Fabrication Data
                   29 Fabrication Data FAB_CFG0
                   30 Fabrication Data FAB_CFG1
                   30 Fabrication Data FAB_CFG2
                   31 Fabrication Data FAB_CFG3
                   32 Capability Container
                   33 Configuration Bytes
                   33 Authentication Password
                   34 Configuration Byte CHIP_KILL
                   35 Configuration Byte AUTH_CNT
                   36 Configuration Byte AUTH_LIM
                   37 Configuration Byte AUTH_CFG
                   37 Configuration Byte SENSR1
                   38 Configuration Byte SENSR2
                   38 Configuration Byte SELR
                   39 Configuration Byte IC_CFG0
                   40 Configuration Byte IC_CFG1
                   41 Configuration Byte IC_CFG2
                   42 Configuration Bytes MIRQ_0 and MIRQ_1
                   42 AS3955 Communication Modes
                   42 Standalone NFC Type 2 Tag Mode
                   42 Tunneling Mode
                   43 Data Transaction in Tunneling Mode
                   43 Relevant Registers, Interrupts and Commands
                   44 Extended Mode
                   45 NFC Device to MCU Data Flow Protocol
                   47 MCU to NFC Device Data Flow Protocol
                   49 Relevant Registers, Interrupts and Commands
                   50 Extended Mode Timing Diagram
                   52 Implementation Recommendations
                   52 Error Handling
                   55 Wired Interfaces
                   55 SPI / IC Access Modes
                   56 SPI Interface
                   57 Writing Data to Addressable Registers

                         (Register Write Mode)
                   58 Reading Data from Addressable Registers

                         (Register Read Mode)
                   59 Writing and Reading of EEPROM Through SPI
                   61 Loading Transmission Data into Buffer
                   62 Reading Received Data from Buffer
                   62 Direct Command Mode
                   63 SPI Timing
                   64 SPI Electrical Connection
                   65 IC Interface
                   66 Writing Data to Addressable Registers (Register Write

                         Mode)
                   67 Reading Data from Addressable Registers (Register Read

                         Mode)
                   67 Writing and Reading EEPROM through IC
                   69 Loading Transmission Data into Buffer
                   69 Reading Received Data from Buffer
                   70 Direct Command Mode

                                                                                           ams Datasheet
                                                                                    [v1-01] 2015-Apr-29
AS3955 - Content Guide

                        70 IC Electrical Connection
                        71 Interrupt Interface Description
                        71 Buffer Interrupts and Buffer Status Register
                        72 EEPROM Read and Write
                        72 Data Buffer
                        73 Direct Commands
                        73 Set Default
                        73 Clear Buffer
                        73 Restart Transceiver
                        74 Disable/Enable Transceiver
                        74 Transmit Buffer
                        74 Transmit ACK
                        74 Transmit NACK 0-5
                        74 Go To Sleep
                        74 Go To Sense
                        74 Go To Sense / Sleep

                        75 Register Description
                        75 Registers Overview
                        76 IO Configuration Register
                        76 IC Configuration Registers
                        78 Status Display Registers
                        79 Interrupt Registers
                        81 Buffer Registers
                        82 NFC Last Address Register
                        83 Version Control Register

                        84 Application Information
                        84 Writing a NDEF Message into AS3955 Memory
                        85 Reading/Writing Through NFC Device
                        86 Reading/Writing Through SPI / IC
                        86 Using Extended Mode to Switch AS3955 into Tunneling

                              Mode
                        86 Using Tunneling Mode to Emulate a NFC Type 4 Tag
                        98 References

                        99 Package Drawings & Markings
                        103 Ordering & Contact Information
                        105 RoHS Compliant & ams Green Statement
                        106 Copyrights & Disclaimer
                        107 Document Status
                        108 Revision Information

ams Datasheet                          Page 111
[v1-01] 2015-Apr-29     Document Feedback
This datasheet has been downloaded from:
            datasheet.eeworld.com.cn

                 Free Download
           Daily Updated Database
      100% Free Datasheet Search Site
  100% Free IC Replacement Search Site
     Convenient Electronic Dictionary

               Fast Search System
             www.EEworld.com.cn

                                                 All Datasheets Cannot Be Modified Without Permission
                                                                Copyright Each Manufacturing Company
小广播

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 大学堂 TI培训 Datasheet 电子工程

器件索引   0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved