TI-RTOS-PROC
TI-RTOS: 실시간 운영 체제 - Sitara 프로세서 및 DSP용 프로세서 SDK를 통해 TI-RTOS 받기
TI-RTOS-PROC
개요
싱글 및 멀티코어 장치를 위한 확장 가능한 RTOS 솔루션
TI-RTOS는 기본 시스템 소프트웨어 기능을 처음부터 만들 필요를 없앴기 때문에 개발 일정을 크게 단축할 수 있습니다. TI-RTOS는 사전 테스트를 거친 사전 통합된 필수 시스템 소프트웨어 구성 요소를 제공하여 개발자가 애플리케이션 차별화에 집중할 수 있도록 합니다. TI 마이크로프로세서 및 DSP의 경우 TI-RTOS는 실시간 멀티태스킹 커널 TI-RTOS 커널(이전 명칭은 SYS/BIOS), 장치 드라이버, 멀티코어 통신 및 TCP/IP 네트워킹을 제공합니다. TI-RTOS 구성 요소는 산업용 통신 및 제어, 무선 통신, 차량용 등의 애플리케이션 영역에서 안정성을 입증했습니다.
SitaraTM 프로세서 및 DSP용 TI-RTOS 받기
- 해당하는 TI 프로세서 SDK(소프트웨어 개발 키트)에 대해 위의 "소프트웨어 다운로드" 버튼을 클릭하세요. 이러한 프로세서 SDK에는 지원되는 평가 모듈(EVM)에서 TI-RTOS로 사전 테스트를 거친 컴파일러 툴과 추가 예제, 미들웨어, 보드 지원 패키지가 포함되어 있습니다.
라이선스 - TI-RTOS는 전체 소스 코드와 함께 제공되며 선행 또는 런타임 라이선스 비용이 필요 없습니다. 멀티태스킹 커널, 장치 드라이버, 멀티코어 통신, TCP/IP 네트워킹 스택 및 예제는 모두 오픈 소스 BSD 같은 라이선스를 사용합니다. 따라서 개발자들은 번거로운 라이선스 제약 없이 소프트웨어를 파트너 또는 하청업체에 손쉽게 전달할 수 있습니다. GPL 라이선스와 달리 BSD 라이선스는 개발자가 전체 애플리케이션 소스 코드를 발송해야 할 요구 사항을 부과하지 않습니다.
특징
TI-RTOS는 TI Sitara 마이크로프로세서 및 TI DSP에 다음 구성 요소를 제공합니다.
TI-RTOS 모듈 | 설명 |
TI-RTOS 커널 | TI-RTOS 커널(이전 명칭은 SYS/BIOS)은 결정적인 선점형 멀티스레딩 및 동기화 서비스, 메모리 관리 및 인터럽트 처리를 제공합니다. |
TI-RTOS 장치 드라이버 | TI-RTOS 장치 드라이버는 여러 프로세서에 걸쳐 차이를 추상화하는 공통 API 인터페이스 계층을 제공합니다. |
TI-RTOS 네트워킹 | TI-RTOS 네트워킹(이전 명칭은 NDK)은 DNS, HTTP 및 DHCP와 같은 관련 네트워크 애플리케이션과 함께 IPv4 및 IPv6 호환 TCP/IP 스택을 제공합니다. |
TI-RTOS IPC | TI-RTOS IPC는 멀티코어 장치에서 효율적인 프로세서 간 통신을 제공합니다. |
TI-RTOS 계측 | TI-RTOS 계측을 사용하면 개발자는 컨텍스트 전환을 포함한 런타임 동작을 지원하는 애플리케이션에 디버그 계측을 포함시켜 시스템 수준 분석 툴로 표시할 수 있습니다. |
TI-RTOS 커널 개요
TI-RTOS 커널은 개발자가 실시간 마감을 타협하지 않고 정교한 애플리케이션을 만들 수 있도록 하는 결정적이고 선점적인 멀티태스킹 커널입니다. 커널 서비스는 아래 표에 요약되어 있습니다.
커널 서비스 | 설명 |
캐시 | 캐시 구성 및 관리 |
클럭 | 시간 트리거 기능 |
진단 | 매개 변수 및 상태 검사에 대한 어설션 포함 사용자 구성 가능 추적 |
오류 | 오류 처리기 정의, 발생 및 검사 |
이벤트 | 여러 RTOS 또는 사용자 지정 이벤트의 조합이 발생할 때까지 대기 |
GateMutex | 우선 상속을 사용하는 이진 뮤텍스 |
HeapBuf | 결정론적 고정 크기 고속 버퍼 풀 |
HeapMem | 가변 크기 동적 힙 |
HeapMultiBuf | 여러 버퍼 풀을 기반으로 하는 가변 크기, 결정적 동적 힙 |
HWI(하드웨어 인터럽트) | 하드웨어 인터럽트에서 RTOS에 대한 인터페이스 |
로그 | 오버헤드가 낮은 로깅 및 인쇄 명령문 |
사서함 | 작업 간에 동기화된 데이터 교환 |
메모리 | 메모리 할당 인터페이스 |
세마포어 | 카운팅 세마포어 |
SWI(소프트웨어 인터럽트) | 프로그램 스택을 사용하지만 양보할 수 없는 가벼운 선점식 스레드 |
시스템 | 중단, 종료 및 시스템 인쇄와 같은 일반적인 시스템 기능 |
작업 | 프로세서를 양보할 수 있는 독립적인 실행 스레드 |
타이머 | 하드웨어 타이머의 인터페이스 |
타임스탬프 | 32비트 및 64비트 타임스탬프 서비스 |
TI-RTOS 커널 멀티코어 지원
TI-RTOS는 TI의 멀티코어 ARM 및 DSP 솔루션을 완전히 지원합니다. TI-RTOS 커널은 ARM Cortex A, ARM Cortex M 및 DSP 코어에서 실행되어 모든 코어에 걸쳐 균일한 OS API 세트를 제공합니다. TI-RTOS 커널은 또한 적절한 장치에 대한 공유 이미지 및 SMP 지원을 제공합니다. 관련 IPC 패키지는 분산된 애플리케이션의 개발을 단순화하고 성능을 최대화하기 위해 하드웨어 상호 배제 기능을 활용하는 광범위한 멀티코어 통신 메커니즘 세트를 제공합니다. IPC 서비스는 TI-RTOS와 Linux 모두에 제공되므로 개발자는 원하는 경우 ARM Cortex A 코어에서 Linux를 사용하고 DSP 및 ARM Cortex M 코어에서 TI-RTOS를 사용할 수 있습니다.
IPC 개체 | IPC 서비스 설명 |
HeapBuf | HeapBuf의 멀티코어/프로세서 안전 공유 메모리 구현 |
HeapMultiBuf | HeapMultiBuf의 멀티코어/프로세서 안전 공유 메모리 구현 |
List | 아토믹 연결 목록 |
ListMP | 멀티프로세서 아토믹 연결 목록 |
MessageQ | 투명한 가변 길이 메시지 |
Multiproc | 프로세서 식별 |
NameServer | 멀티코어/프로세서 토폴로지에서 IPC 개체의 위치 활성화 |
알림 | 다른 프로세서에 대한 저지연 비동기 인터럽트 |
SharedRegion | 서로 다른 프로세서/코어 간에 공유 포인터 정의 활성화 |
Stream | 주변 기기 드라이버에 대한 읽기/쓰기 또는 버퍼 스트리밍 인터페이스 |
OS 인식 디버그 및 분석 툴
CCS(Code Composer Studio)와 함께 TI-RTOS 커널은 다중 스레드 애플리케이션의 디버깅 및 최적화를 도와주는 몇 가지 툴을 제공합니다. 개발자는 ROV(런타임 개체 뷰어)를 사용하여 작업, 사서함, 세마포어와 같은 OS 개체의 상태를 확인할 수 있습니다. 여기에는 작업이 준비되었는지, 실행 중인지 또는 차단되었는지 여부, IPC에서 차단된 작업, 작업이 스택 제한을 초과했는지 여부 등이 포함됩니다. 실시간으로 동작을 캡처하여 스레드 실행 및 스위칭 시퀀스, 스레드 및 시스템 CPU 부하, OS 이벤트 및 사용자 정의 로그 정보를 표시할 수 있는 RTOS Analyzer라는 툴도 있습니다.
TI-RTOS 네트워킹 개요
TI-RTOS 네트워킹 - 이전 명칭은 NDK(네트워크 개발자 키트) - 듀얼 모드 IPv4/IPv6 스택을 일부 네트워크 애플리케이션과 결합합니다. TI-RTOS 네트워킹 지원은 이더넷 지원 MCU, MPU 및 DSP 모두에서 제공됩니다. TI-RTOS 네트워킹에는 다음이 포함됩니다.
- 코어 TCP/IP 프로토콜 스택: VLAN 패킷 우선 순위 표시, TCP, UDP, ICMP, IGMP, IP 및 ARP를 포함한 소스 및 바이너리의 듀얼 모드 IPv6/IPv4 스택
- 네트워크 애플리케이션: HTTP, 텔넷, TFTP, SNTP, DNS, DHCP(IPv4만 해당) 클라이언트 및 서버
- 직렬/셀룰러 모뎀 지원: PPP 및 PPPoE
- 애플리케이션 프로그래밍 인터페이스: BSD 소켓, 제로 카피 소켓, 원시 이더넷 지원