![]() |
MCUSW
|
SoC's such as Sitara MPU(AM62x/AM62A), integrates 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)
Consists of two main components, Microcontroller abstraction layer (MCAL) & Demonstration applications (example application). 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
For Eng-releases, mcusw will be released as a .zip package for specific customers.
| Device Family | Also known by other names |
|---|---|
| AM62AX | Sitara MPU |
| AM62x | Sitara MPU |
| SoC Family | Cores Names | Referred as | Comments |
|---|---|---|---|
| AM62AX | MCU R5F Core 0 | 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 |
| AM62X | DM R5F Core 0 | 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 |
MCU Demos are not support for Sitara MPU devices as this time.
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.
"MCAL" is component within Processor SDK and part of MCUSW as shown in below figure
| Driver | Comments | Refer | Supported SoC | Supported Cores ----— |
|---|---|---|---|---|
| Can | Driver for built-in CAN peripheral | (Can User Guide) | AM62AX/AM62X | MCU 0 0 |
| Dio | Driver for control of GPIO | (Dio User Guide) | AM62AX/AM62X | MCU 0 0 |
| CDD_IPC | Driver for control of CDD_IPC | (Cdd Ipc User Guide) | AM62AX/AM62X | MCU 0 0 |
| Gpt | Driver for General purpose timer | (Gpt User Guide) | AM62AX/AM62X | MCU 0 0 |
| Eth | Driver for built in CPSW 2G port | (Eth & EthTrcv User Guide) | AM62AX/AM62X | MCU 0 0 |
| EthTrcv | Driver for Ethernet Transceiver and tested with DP83867 | (Eth & EthTrcv User Guide) | AM62AX/AM62X | MCU 0 0 |
| Spi | Handler and driver for Serial Peripheral Interface | (Spi User Guide) | AM62AX/AM62X | MCU 0 0 |
| Wdg | Driver for built in WWDT(Windowed Watchdog Timer) | (Wdg User Guide) | AM62AX/AM62X | MCU 0 0 |
| Mcu | Driver for built in Mcu | (Mcu User Guide) | AM62AX/AM62X | MCU 0 0 |
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)
MCU SW is supported on the boards/EVM listed below
Please contact your FAE for documents describing the EVM. AM62X EVM includes an on-board XDS110 USB emulator.
Please contact your FAE for documents describing the EVM. AM62AX EVM includes an on-board XDS110 USB emulator.
Get required MCU Plus SDK release version from TI Website for AM62X and TI Website for AM62AX and place it in same location as mcusw. This is required for building and validating MCAL Applications.
Packages all required compiler and code generation tools required by MCUSW.
TI Arm Clang compiler : ti-cgt-armllvm_2.1.3.LTS should be installed. TI Website
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.
Code Composer Studio is an integrated development environment (IDE) that supports TI's Microcontroller and Embedded Processors portfolio.
Code Composer Studio 12.2.0 CCS verion should be used.
No additional steps required. However, the MCAL configurator would require an additional step. Please refer (Getting access to MCUSW) to receive installer for configurator and steps to obtain licese is detailed in (License for Configurator)
Please note that this is an indicative image, actual versions would change
Post installation of MCUSW, the following directory would be created. Please note that this is an indicative snap-shot. Modules/Drivers could be added/modified.
MCAL Directory structure, contains MCAL modules, build files. Please note that this is an indicative snap-shot. Modules/Drivers could be added/modified.
Contains demo applications that demonstrate use of MCAL modules. An integrator could refer these to determine the dependencies of the module.
Contains configurations (standalone i.e. configuration for given module and its dependencies, such as Gpt (not dependent on other modules)
MCAL employs make based build mechanism. When building on Windows based machine, tool such as gmake could be used.
Following changes are required to be performed in Rules.make to build
With steps listed at (Setup Build Environment) all MCAL modules can be built
The example applications use different memory and this could be changed/re-configured.
Please refer (IDE (CCS)) for CCS and GEL setup
Using Linux boot
Using SBL Bootflow
Steps to Load Example Binaries
| Flag | Description |
|---|---|
| -g | Default behavior. Enables symbolic debugging. The generation of debug information do not impact optimizations. Therefore, generating debug information is enabled by default. |
| -c | Disables linking |
| Super Quite Mode | |
| -pdsw225 | Categorizes the diagnostic identified by num as a warning |
| -march | direct the compiler to target a particular architecture |
| –endian=little | Little Endian |
| -Wall | Enable most warning categories |
| -Wno | Disable the specified warning category. |
| -mv7R5 | Processor Architecture Cortex-R5 |
| -mcpu | Select the target processor version. |
| -mfpu | option to specify which floating-point hardware is available for use by the compiler |
| -mfloat-abi | option in combination with the appropriate -mfpu option depending on what Arm processor variant is in use. |
| –abi=eabi | Application binary interface - ELF |
| -eo.oem4 | Output Object file extension |
| -ea.sem4 | Output assembly file extension |
| –symdebug:dwarf | Generate symbolic debug in DWARF format |
| –embed_inline_assembly | Embed inline assembly in code for optimization |
| –float_support=vfplib | VFP coprocessor is enabled |
| –emit_warnings_as_errors | Treat warning as errors |
| -os | Interlists optimizer comments with assembly statements |
| –optimize_with_debug | Optimize fully in the presence of debug |
| -DBUILD_MCU0_0 | Identifies Core in the domain |
| -DBUILD_MCU | Identifies Domain |
| -Xlinker | Required by TI Arm Clang |
| –diag_suppress | Suppresses the diagnostic identified by num. |
| –ram_model | option tells the linker to initialize variables at load time |
| –reread_libs | option, you can force the linker to reread all libraries |
| -DSOC_AM62AX | Device Identifier |
*Note – is actually 2 "-" dashes they simply appear as one long dash in the user Guide.
Same flags that were used for driver (MCAL Drivers - Profile : Release), additional flags listed below
| Revision | Date | Author | Description |
|---|---|---|---|
| 0.1 | 22 Nov 2022 | Dinesh Kumar C E | Approved |
| 0.2 | 15 Mar 2023 | Lavanya C | Updated mcu_plus_sdk version |
| 0.3 | 21 Jul 2023 | Lavanya C | MCAL-10822 Compiler flags used list is updated, mcu_plus_sdk, CLANG compiler and CCS version is updated. MCAL-11010 Software dependency on Mcu+Sdk section is added |