Professional Documents
Culture Documents
Agenda
What is TI-RTOS
TI RTOS components, product history, licensing, business model
Toolchain support
TI-RTOS component overview and update
Kernel/drivers, power management, networking, USB, file system
Roadmap
Positioning TI-RTOS to potential customers
Resources
Demo
Full RTOS
Drivers
Board
initialization
Examples
CCS
TM4C129x
SNTP
IAR
GCC
CC3000
driver
StellarisWare (USB)
TI-RTOS
1.00
TI-RTOS
1.20
TI-RTOS
2.00
TI-RTOS
2.10
2007
Jul 2012
Nov 2013
May 2014
Q4 2014
CC3200
MSP430
Watchdog
NDK (TCP/IP)
1998
DSP/BIOS
2010
SYS/BIOS
TI-RTOS Components
Standard, cross-platform APIs
TCP/IP
wired,
wireless
(CC3xxx)
USB
Host,
Device
FAT File
System
IPC
Multicore
communication
Real-time Kernel
Debug and instrumentation
EMAC, USB, SD, SPI, UART, I2C, GPIO, Watchdog Drivers
Board Initialization
C28x
C28x+M3
TM4Cx
MSP430
CC3200
CC2600
EA
Wired Networking
Wi-Fi (CC3xxx)
Y
Y
BLE
EA
USB
EA
Drivers/Board
Initialization
EA
TBA
EA
EA
Power Management
Instrumentation
IPC
All components (except USB stack) are open source (BSD style
license) so no proprietary lock-in
Tiva C
EK-TM4C123GXL
DK-TM4C123G
DK-TM4C129X
EK-TM4C1294XL
MSP430
MSP-EXP430F5529LP
MSP-EXP430F5529
MSP-EXP430FR5969
CC3200
CC3200-LAUNCHXL
CC2600/CC1300
Early access now via BU
TI-RTOS Kernel is in ROM
IDE/Toolchain Support
Code Composer Studio v6.0 or later (All devices)
Earlier CCS releases are supported by older versions of TI-RTOS
Includes example projects and plug-in for TI-RTOS-aware debug
Includes support for System Analyzer and GUI Composer
Web server
Debug
Server
JTAG
TI-RTOS
UART
Driver
UART
Mon
USB
Host,
Device
FAT File
System
IPC
Multicore
communication
Real-time Kernel
Debug and Instrumentation
EMAC, USB, SD, SPI, UART, I2C, GPIO, Watchdog Drivers
Board Initialization
TI-RTOS Kernel
Designed for real-time applications
Scheduler is deterministic so kernel system calls complete operation
in a predictable time
Interrupt latency is low
Zero-latency Interrupts enable kernel to be used in hard real-time
applications
14
Kernel Services
Intertask
Communication:
Events, Mailboxes,
Semaphores, Gates
Debug &
Analysis:
Logging,
diagnostics,
Hooks, stack
checking
Device-specific
services: Interrupt and
power management,
timers, exception
handling
Memory
Managers:
Heap, fixedsized buffers
Multi-threading:
Tasks, Software Interrupts,
Clocks, Idle
15
The OS knows when the application is doing nothing and is aware of some
future actions (time-outs, periodic functions)
CC3200 (planned)
Tick suppression, TI-RTOS power management framework
Not available with initial CC3200 TI-RTOS release
MSP432 (planned)
Tick suppression, TI-RTOS power management framework
TI Confidential NDA Restrictions
Tick Suppression
Tick suppression eliminates most OS tick timer interrupts
in power saving modes while keeping time base accurate
Implemented in TI-RTOS clock module
Configurable option, no programming required
GPIO asserted every 1 msec, GPIO asserted in heartbeat clock tick
No Suppression
With Suppression
control
UI
TI-RTOS KERNEL
driver
Clock
driver
MCU
power
policy
Power
Manager
(Power)
CLKG
Power_releaseDependency
Purpose
Declare a dependency upon a power-manageable
resource
Release a previously declared dependency
Power_setConstraint
Power_releaseConstraint
Power_setDependency
Power_sleep
Power_registerNotify
Power_unregisterNotify
TI-RTOS Drivers
Standard cross-platform
APIs (UART_write,
UART_read, )
Interrupt-driven, threadsafe
TI-RTOS board.c
Initializes peripheral
drivers (which interrupt
vectors, how many
UARTs, )
Sets pin-muxing
22
23
24
25
UART_init();
USB
Host,
Device
FAT File
System
IPC
Multicore
communication
Real-time Kernel
Debug and instrumentation
EMAC, USB, SD, SPI, UART, I2C, GPIO, Watchdog Drivers
Board Initialization
USB Stack
M
S
C
H
I
D
C
D
C
H
I
D
Class Driver
Application
Host
Device
DMA USB
Driver Driver
C
O
N
F
I
G
U
R
A
T
I
O
N
Hardware
28
File System
We use open source software called FatFs
The FAT file system is shipped within SYS/BIOS
Key features:
Both native and C RTS file APIs may be used
C RTS APIs (fopen (), fread (), fwrite (), ) are plugged into file system
Long file names (VFAT) are not supported in our default build
Customer can rebuild FatFS sources to add this feature
TI does NOT indemnify against VFAT patents
Drivers options:
SD Card (via SPI driver)
USB flash drive (via USB MSC host)
29
USB
Host,
Device
FAT File
System
IPC
Multicore
communication
Real-time Kernel
Debug and instrumentation
EMAC, USB, SD, SPI, UART, I2C, GPIO, Watchdog Drivers
Board Initialization
H
T
T
P
T
E
L
N
E
T
T
F
T
P
D
H
C
P
D
N
S
UDP
Route
Manager
TCP
IGMP
IP
IF
Manager
NAT
ICMP
ARP
Ethernet IF
Timer
Driver
Hardware
User
LED
Driver
31
SSL 2.0
SSL 3.0
1999
2006
2008
TLS 1.0
TLS 1.1
TLS 1.2
2012
DTLS 1.2
DTLS 1.0
SSL/TLS Support
We have licensed and ported CyaSSL from WolfSSL
Business model
Not free of charge to the customer
US$2,900 for a license to deploy in a single customer product
Support model
TI will provide front-end support and can work customer issues with
help from WolfSSL support
Customers can also ask post questions to WolfSSL support forums
http://www.wolfssl.com/forums/
Note that in-depth support direct from WolfSSL will require customers to
purchase support contract with WolfSSL
33
Hash Functions
Block Ciphers
Stream Ciphers
AES-GCM, AES-CCM
Authenticated Ciphers
HMAC, PBKDF2
Roadmap
Release
Version
Device &
Platform
Supported
1.21
2.00
2.00.02
2.10
Device
Dev Platform
Device
Dev Platform
Device
Dev Platform
Concerto
TMDXDOCK28M36
TMDXDOCKH52C1
Concerto
TMDXDOCK28M36
TMDXDOCKH52C1
Concerto
TMDXDOCK28M36
TMDXDOCKH52C1
Aumento SDK
TM4C123
EK-TM4C123GXL
DK-TM4C123G
TM4C123
EK-TM4C123GXL
DK-TM4C123G
TM4C123
EK-TM4C123GXL
DK-TM4C123G
TM4C129
DK-TM4C129X
TM4C129
DK-TM4C129X
EK-TM4C1294XL
TM4C129
DK-TM4C129X
EK-TM4C1294XL
MSP430
MSP-EXP430F5529LP
MSP-EXP430F5529
MSP-EXP430FR5969
F5529
C2800*
All
C2800*
CC3200
New Devices
MSP-EXP430F5529LP
MSP-EXP430F5529
MSP-EXP430FR5969
All
CC3200LAUNCHXL
CC2600
MSP432
New Features
HTTP Client/REST,
HTTP server over WIFI & wired
SNTP
Schedule
Dec 20 2013
Apr 25 2014
June 25 2014
Q4 2014
36
37
38
39
40
41
More Information
Product Manager: Nick Lethaby, nlethaby@ti.com
www.ti.com Web Page:
www.ti.com/tool/ti-rtos
Includes link for product downloads for customers
Includes link for product bulletin
Wiki: http://processors.wiki.ti.com/index.php/Main_Page
Select TI-RTOS category
Download page:
http://softwaredl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/tirtos/index.html
42
Demonstration
TI-RTOS for the CC3200
Uses IAR Embedded Workbench for ARM (EWARM) and CC3200
Launchpad
We demonstrate an embedded web server that can be accessed from
wireless devices. We will also demonstrate TI-RTOS-aware tools in
EWARM.
We will demonstrate building a TI-RTOS project with IAR as well as TIRTOS-aware debugging
43
Summary
TI-RTOS enables MCU software developers to focus on their specific
areas of applications expertise
TI-RTOS provides connectivity software such as TCP/IP
TI-RTOS provides power management
TI-RTOS provides an integrated set of proven embedded software
components that are known to work together
44