MCUSW
Getting Started

MCUSW

SoC's such as J721E/J7200/J721S2/J784S4/AM62X/AM62A/AM62P/J722S integrate an MicroController Unit Subsystem (MCU SS) as an chip-in-chip. It operates using a separate voltage supply, clock sources and resets and includes the components needed for device management. This allows the MCUSS to function continuously regardless of the state of the rest of the device. MCU SS has one or more DUAL core Cortex R5F (number of instances varies on the variant of the device, please refer the device reference manual)

MCUSW consists of two main components, Microcontroller abstraction layer (MCAL) & Demonstration applications (MCUSS Demos). Its is expected to be hosted on Cortex R5F 0 in MCU Domain or other Cortex R5F in main domain. The table below lists SoC/Cores on which MCUSW can be hosted.


Supported Devices

Device Family Devices Also known by other names
Jacinto J721E AM752X, DRA829, TDA4VM, J7ES
Jacinto J7200 DRA821, J7VCL
Jacinto J721S2 DRA820, TDA4VL, J7AEP
Jacinto J784S4 TDA4VH, TDA4AH, J7AHP
Sitara MPU AM62AX -
Sitara MPU AM62X -
Sitara MPU AM62P -
Sitara MPU J722S J7AEN

Core Naming Conventions

SoC Family Cores Names Referred as Comments
J721E MCU R5F Core 0 mcu 1 0 Please refer the "mcusw_release_notes.html" to determine if this release supports this platform. Note that all computing cores might not be supported in MCUSW
MCU R5F Core 1 mcu 1 1
1ST MCU Core 0 mcu 2 0
1ST MCU Core 1 mcu 2 1
2ND MCU Core 0 mcu 3 0
2ND MCU Core 1 mcu 3 1
A72 Core 0 mpu 1 0
A72 Core 1 mpu 1 1
1ST C66X DSP c66x_1
2ND C66X DSP c66x_2
C7X DSP c7x_1
J7200 MCU R5F Core 0 mcu 1 0 Please refer the "mcusw_release_notes.html" to determine if this release supports this platform. Note that all computing cores might not be supported in MCUSW
MCU R5F Core 1 mcu 1 1
1ST MCU Core 0 mcu 2 0
1ST MCU Core 1 mcu 2 1
A72 Core 0 mpu 1 0
A72 Core 1 mpu 1 1
J721S2 MCU R5F Core 0 mcu 1 0 Please refer the "mcusw_release_notes.html" to determine if this release supports this platform. Note that all computing cores might not be supported in MCUSW
MCU R5F Core 1 mcu 1 1
1ST MCU Core 0 mcu 2 0
1ST MCU Core 1 mcu 2 1
A72 Core 0 mpu 1 0
A72 Core 1 mpu 1 1
J784S4 MCU R5F Core 0 mcu 1 0 Please refer the "mcusw_release_notes.html" to determine if this release supports this platform. Note that all computing cores might not be supported in MCUSW
MCU R5F Core 1 mcu 1 1
1ST MCU Core 0 mcu 2 0
1ST MCU Core 1 mcu 2 1
A72 Core 0 mpu 1 0
A72 Core 1 mpu 1 1
AM62AX/AM62P MCU R5F Core 0 mcu 0 0 Please refer the "MCAL_SitaraMPU_release_notes.html" to determine if this release supports this platform. Note that all computing cores might not be supported in MCUSW
AM62X DM R5F Core 0 mcu 0 0 Please refer the "MCAL_SitaraMPU_release_notes.html" to determine if this release supports this platform. Note that all computing cores might not be supported in MCUSW
J722S MCU R5F Core 1 mcu 0 0 Please refer the "mcusw_release_notes.html" to determine if this release supports this platform. Note that all computing cores might not be supported in MCUSW

Getting access to MCAL

In case of Jacinto, MCUSW is a part of Jacinto Processor SDK RTOS(PSDKRA) package.

In case of Sitara MPU, MCUSW is released seperatly and is not part of SDK.

  1. Configurator is not included as a part of the package, it would require steps below to receive the configurator
  2. Configurator and Compliance Support Package
    1. Configurator package is required to update/modify MCAL configurations
    2. Separate Installer for EB Configurator. This package includes plugins for J721E, J7200, J721S2, J784S4, AM62X, AM62AX, and AM62PX.
    3. Users can request access to the Configurator package and Compliance Support Package (CSP) from here My Secure SW Access Request on TI.COM
    4. Once access is granted, users can download the package from here My Secure SW on TI.COM
  3. Refer (Installation Steps) for detailed installation steps

License for Configurator

  1. EB Tresos requires license to use it refer (Installing Elektrobit Tresos) for details
  2. EB provides limited-pool of license that could be shared by TI with its customers
    1. Classified as limited-period license & permanent license
    2. Limited-period license are expected to be used during development (typically 3 months, 6 months) and permanent license for production
    3. In cases where development is greater than license validity period, TI can provide additional licenses
  3. Login to MySecureSW, and Request Access to the EB Tresos Tool and License from here License Request
  4. Once license are received
    1. Follows steps listed in (Client License Administrator)
    2. IMPORTANT
      1. TI shares user details with EB on quarterly basis (name of organization and email id to whom license is released, fulfillment-id and user name). EB uses this data for license administration
      2. Share Fulfillment ID : Once license is activated, the "fulfillment-id" is to be shared with FAE/TI Engineer who provided license
  5. Third party (AUTOSAR Vendor / Other co-development organizations)
    1. TI can provide the EB licenses to other third party which is engaged by customers
    2. Steps and procedure will remain same as listed above
  6. Number of licenses
    1. Since TI receives finite-set of licenses from EB, TI will have to ration these among it's customers
    2. Based on customer needs / business needs number of license released to customer will be restricted
    3. Please request licenses on need basis

Back To Top


Package Contents

MCU Demos

Demonstrates usage of various drivers / software provided for MCU SS. These applications could employ FREERTOS as OS and use MCAL and/or PDK drivers.

Please note, these demos are currently not supported on Sitara MPU Family of Devices.

Listed below are application supported, demo specific pages list the supported SoC/Cores

Demo Comments Refer J721E J7200 J721S2 J784S4
Can Profiling Application to determine the CPU load for transmission & reception of CAN messages (CAN Profiling Application) Yes Yes Yes Yes
CDD IPC Profiling Application to determine the time required for transmission & reception of messages of various sizes (CDD IPC Profiling Application) Yes Yes No No
Execute In Place (XIP) - Can Response Demo Application demonstrates operating MCU Domain R5F (MCU 1 0) in XIP mode (Execute In Place (XIP) Application) Yes Yes No No
Multi-Core Boot Application Application demonstrates Booting of all cores from MCU R5F (MCU 1 0) while simultaneously sending out CAN messages (CAN Response Application) Yes Yes No No
Mode Switch Application This application demonstrates steps to switch mode from ACTIVE (full SoC powered ON) to MCU Only mode and then from MCU Only to ACTIVE mode on J721E EVM. (Mode Switch Application) Yes No No No
XIP FOTA This application demonstrates execute-in-place, where in CAN Profiling Application is executed from OSPI memory. (Execute In Place (XIP) + Firmware Over The Air (FOTA) Application) Yes Yes Yes Yes

MCAL

MCAL is the lowest layer of the AUTOSAR Basic Software architecture. MCAL contains drivers with direct access to the μC internal peripherals. MCAL is a hardware specific layer that ensures a standard interface to the Basic Software.

This user guide details procedure that are common to all MCAL drivers, please refer driver specific user guide for finer details of driver.

For Jacinto Family of Devices:

user_guide_common_01.png
MCAL position within Processor SDK RTOS Automotive

Supported Drivers

Driver Comments Refer Supported SoC Supported Cores
Adc Driver for built-in Adc peripheral (Adc User Guide) J721E MCU 1 0, MCU 2 1, MCU 2 0*, MCU 3 0*
J7200 MCU 1 0, MCU 2 1
J721S2 MCU 1 0, MCU 2 1
J784S4 MCU 1 0, MCU 2 1
Can Driver for built-in CAN peripheral (Can User Guide) J721E MCU 1 0, MCU 2 1, MCU 2 0*, MCU 3 0*
J7200 MCU 1 0, MCU 2 1
J721S2 MCU 1 0, MCU 2 1
J784S4 MCU 1 0, MCU 2 1
AM62X/AM62AX/AM62P/J722S MCU 0 0
Cdd Ipc Driver for inter-processor communication (Cdd Ipc User Guide) J721E MCU 2 1, MCU 2 0*, MCU 3 0*
J7200 MCU 2 1
J721S2 MCU 1 0, MCU 2 1
J784S4 MCU 1 0, MCU 2 1
AM62X/AM62AX/AM62P/J722S MCU 0 0
Eth Driver for built in CPSW 2G port (Eth & EthTrcv User Guide) J721E MCU 1 0
J7200 MCU 1 0
J721S2 MCU 1 0
AM62X/AM62AX/AM62P/J722S MCU 0 0
Eth Virt Mac Driver for external Flash Device (Eth & EthTrcv User Guide) J721E MCU 2 1
J7200 MCU 2 1
J721S2 MCU 2 1
EthTrcv Driver for Ethernet Transceiver and tested with DP83867 (Eth & EthTrcv User Guide) J721E MCU 1 0
J7200 MCU 1 0
J721S2 MCU 1 0
AM62X/AM62AX/AM62P/J722S MCU 0 0
Fls Driver for external Flash Device (Fls User Guide) J721E MCU 1 0, MCU 2 1
J7200 MCU 1 0, MCU 2 1
J721S2 MCU 1 0, MCU 2 1
J784S4 MCU 1 0, MCU 2 1
AM62X/AM62AX/AM62P/J722S MCU 0 0
Gpt Driver for General purpose timer (Gpt User Guide) J721E MCU 1 0, MCU 2 1, MCU 2 0*, MCU 3 0*
J7200 MCU 1 0, MCU 2 1
J721S2 MCU 1 0, MCU 2 1
J784S4 MCU 1 0, MCU 2 1
AM62X/AM62AX/AM62P/J722S MCU 0 0
Pwm Driver for Pulse-width-Modulation, uses built-in General purpose timer (Pwm User Guide) J721E MCU 1 0, MCU 2 1, MCU 2 0*, MCU 3 0*
J7200 MCU 1 0, MCU 2 1
J721S2 MCU 1 0, MCU 2 1
J784S4 MCU 1 0, MCU 2 1
Pwm Driver for Pulse-width-Modulation, uses built-in enhanced PWM(ehrPwm) (Pwm User Guide) J721E MCU 1 0, MCU 2 1, MCU 2 0*, MCU 3 0*
J7200 MCU 1 0, MCU 2 1
J721S2 MCU 1 0, MCU 2 1
J784S4 MCU 1 0, MCU 2 1
Spi Driver for Serial Peripheral Interface (Spi User Guide) J721E MCU 1 0, MCU 2 1, MCU 2 0*, MCU 3 0*
J7200 MCU 1 0, MCU 2 1
J721S2 MCU 1 0, MCU 2 1
J784S4 MCU 1 0, MCU 2 1
AM62X/AM62AX/AM62P/J722S MCU 0 0
Dio Driver for control of GPIO (Dio User Guide) J721E MCU 1 0, MCU 2 1, MCU 2 0*, MCU 3 0*
J7200 MCU 1 0, MCU 2 1
J721S2 MCU 1 0, MCU 2 1
J784S4 MCU 1 0, MCU 2 1
AM62X/AM62AX/AM62P/J722S MCU 0 0
Wdg Driver for built in WWDT(Windowed Watchdog Timer) (Wdg User Guide) J721E MCU 1 0, MCU 2 1, MCU 2 0*, MCU 3 0*
J7200 MCU 1 0, MCU 2 1
J721S2 MCU 1 0, MCU 2 1
J784S4 MCU 1 0, MCU 2 1
AM62X/AM62AX/AM62P/J722S MCU 0 0
Icu Driver for built in ICU (ECAP hardware) (Icu User Guide) J721E MCU 1 0, MCU 2 1
J7200 MCU 1 0, MCU 2 1
J721S2 MCU 1 0, MCU 2 1
J784S4 MCU 1 0, MCU 2 1
Mcu Driver for built in MCU (CLOCK hardware) (Mcu User Guide) J721E MCU 1 0, MCU 2 1
J7200 MCU 1 0, MCU 2 1
J721S2 MCU 1 0, MCU 2 1
J784S4 MCU 1 0, MCU 2 1
AM62X/AM62AX/AM62P/J722S MCU 0 0

Back To Top


Dependencies

Dependencies can be categorized as listed below. Please note that depending on the intended use, the dependencies vary (e.g. for integration vs running demo applications only)

  1. Hardware Dependencies (Hardware Dependencies)
  2. Software Dependencies (Software Dependencies)

Hardware Dependencies

Please refer to the Jacinto and Sitara MPU Device SDK User Guides for Hardware Boot Mode details.

Built in emulator

Jacinto and Sitara MPU Device EVMs includes an on-board XDS110 USB emulator, which could be used with CCS. Please refer to ti.com or contact your FAE for documents describing the EVM.

Emulator

An external emulator such as Spectrum Digital XDS560V2 could be used, all steps remain identical to steps listed in (Built in emulator) with creation of Target Configuration being the exception.

While creating the target, please select the emulator that is being used.


Software Dependencies

For Jacinto Family of Devices:

MCUSW is delivered as part of SDK. All SW dependencies will be part of the SDK packaging. Please refer to release notes per release for updated information on supported Compilers.

PDK

"PDK" is a component within PSDKRA. Following section list the sub-components of PDK that are used / required by MCAL modules.

Please check release note that came with this release for the compatible version of PDK/SDK

UDMA

UDMA is used to move data between peripherals and memory.

  • The Eth MCAL module relies on UDMA driver.
  • The SPI MCAL module relies on PDK UDMA driver.

MCAL Example Application

  • Applications rely on SCI Client to request interrupt number as resource
  • Applications rely on OSAL to register MCAL modules interrupts
  • Applications rely on UART driver to print on console

MCU SW Demo Application

  • Applications rely on FREERTOS for OS features such as
    • Task's
    • Sempahores
    • Interrupt handling
  • Applications rely on PDK UART driver to print on console
  • For MCU21 applications, please note that sciserver_testapp needs to be run on mcu1_0 core.

MCAL module dependencies on PDK

The table below lists each module dependencies on PDK components

MCAL CSL UDMA PDK Library SCIClient (Only MCAL Examples) IPC Baremetal
Adc NO NO YES NO
Can NO NO YES NO
CddIpc NO NO YES NO
Dio NO NO YES NO
Eth NO NO YES YES
Fls NO NO YES NO
Gpt NO NO YES NO
Pwm NO NO YES NO
Spi NO YES YES NO
Wdg NO NO YES NO
Icu NO NO YES NO
Mcu NO NO YES NO

Back To Top


For Sitara MPU Family of Devices:

Please refer to release notes for updated information on supported Compilers.

MCU+SDK

Get required MCU Plus SDK release version from below locations, and place it in same location as mcusw folder.

This is required for building and validating MCAL Applications.

  1. TI Website for AM62X
  2. TI Website for AM62AX
  3. TI Website for AM62PX

MCAL Example Application

  • Applications rely on SCI Client to request interrupt number as resource
  • Applications rely on Hwip to register MCAL modules interrupts
  • Applications rely on UART driver to print on console

Back To Top


MCAL Configurator : Elektrobit Tresos

Elektrobit Tresos (EB) is used to configure the MCAL modules, please refer (MCAL Configurator User Guide) for details.

This tool would be required to re configure the MCAL modules provided by TI.

Back To Top


IDE (CCS)

Code Composer Studio is an integrated development environment (IDE) that supports TI's Microcontroller and Embedded Processors portfolio.

Please refer to Release Notes to find the supported CCS Version. Please refer to SDK User Guides for CCS Setup instructions.

Back To Top