1.2 Functional Description

The block diagram below illustrates the major connections of the CryptoAuth Trust Manager. For additional details, refer to the board schematics referenced in 1.3 Hardware Documentation.

Figure 1-2. Block Diagram

Main Board Components

  • ATSAMD21E18A: The Microchip SAM D21 is an ARM® Cortex M0+ based microcontroller. The MCU connects to the secure element via I2C. The mikroBUS header has I2C, SPI, UART, GPIO and analog connections to the microcontroller. This enables the possibility of using the CryptoAuth Trust Manager with many types of MikroElektronika Click boards.
  • Secure Elements:

    The CryptoAuth Trust Manager has one security IC, as listed in the table below. Refer to the data sheet associated with each of these devices for more details.

    DeviceDefault 7-bit I2C Address8-bit Programmed I2C Address Value(1)
    ECC608-TMNGTLS0x380x70
    Note:
    1. This is the I2C_Address byte value programmed into the secure element device.
  • mikroBUS Header: The mikroBUS header is a pre-defined header connection for all the MikroElektronika boards. This lets the user connect many types of Click sensors and add-on boards to the Trust Platform. The Trust Platform supports the following interfaces:
    1. Serial Peripheral Interface (SPI) – Needed to support the TA100 and TA101 cryptography devices but can also support any mikroBUS board with a SPI interface.
    2. I2C – Supports any mikroBUS or click board with an I2C Interface. Boards that are often combined with the Trust Manager are other Microchip mikroBUS cryptography boards, socket boards from mikroElektronica and Microchip and sensor boards used for IoT devices.
    3. SWI-UART – Supports the proprietary Single Wire Interface (SWI) for devices such as the ATECC608 family of devices and the ATSHA204A.
    4. SWI-PWM – Supports the SWI Interface with the Pulse Width Modulated signaling for the Microchip Authentication ICs for the SHA104, SHA105, SHA106, ECC204, ECC206, TA010
  • GPIO Signals: GPIO signals not used for any other purpose can be used as appropriate.
  • DIP Switch: The switch is used to select between the on-board Trust Platform devices and the mikroBUS header. The switches disconnect the SDA lines of the I2C interface to prevent conflict in case two I2C addresses are the same. Both switches can be enabled if all I2C addresses are unique on all devices connected to the board.
    Switch SettingsWhat is Enabled
    SW2_1SW2_2mikroBUS HeaderOn-Board Devices
    ONONYesYes
    OFFONNoYes
    ONOFFYesNo
    OFFOFFNoNo
  • nEDBG Debugger: The debugger is used to program and flash the host MCU. Debug information can also be read back from the host MCU through the debugger interface. When plugged into the system and opened with MPLAB® X IDE, the nEDBG debugger will display with a serial number of MCHP348402xxxxxxxx.
  • USB Hub: The Microchip USB2422 is a dual-port USB hub. The hub passes data between the upstream port and the downstream devices. The downstream devices are the debugger and the host MCU.
  • User-Defined Switch: One user-defined switch is provided on the board. The switch is connected to PA27 of the SAMD21 microcontroller and has an external pull-up resistor on the signal. When this switch is pressed, it will short the signal to GND. The PA27 pin must be be configured as an input to detect a transition from a logic HIGH to a logic LOW.
  • User-Defined LEDs: Three user-defined LEDs are available on the board. The red, green and blue LEDs are connected to PA11, PA14 and PA15, respectively. Any combination of LEDs can be driven at any one time. The signal pin connected to the LED must be configured as an output to use that LED. The signal must be driven HIGH for the LED to light and can either be driven LOW or floated for the LED to turn off.