본문 바로가기

TI 칩셋은 거의 한글 정보가 없네 ㅠㅠ

암튼 TI RTOS 의 예제를 볼려고 하니 일단 TI SDK를 깔아야 하네. 엄청 방대하니

아래 페이지를 잘 읽어 보고 순서대로 해야 함

TI RTOS SDK 설치

https://software-dl.ti.com/processor-sdk-rtos/esd/docs/latest/rtos/index_overview.html

 

1.1. Processor SDK RTOS Getting Started Guide — Processor SDK RTOS Documentation

1.1.12.3.2. Select the SD Card Device The first step of the script will ask you to select the drive representing the SD card that you want to format. In most cases your host root file system drive has been masked off to prevent damage to the host system. W

software-dl.ti.com

사실 겁 먹지 말고 살살 따라하면 대충 예제가 돌긴 한다.

워낙 칩셋 종류가 많고 보드 종류도 많어서 각각 타겟 보드에 맞는 예제를 추출해 내는 것이 일단 벽이다.

일단 이클립스 기반의 CCS 를 깔아야 한다. 버전은 최신 버전으로 까는 것이 좋고 왠만하면 기본 디렉토리로 설치한다.

  • Code Composer Studio (if using JTAG, IDE)
  • Latest CCS Emulation package (for connecting to target using JTAG)
  • Processor-SDK RTOS software

CCS 설치시에 최소한 깔아야 하는 패키지는 

The minimum required for the SDK are the following items

  • Sitara AMx Processors for AM335x, AM437x, AM57x
  • 66AK2x multicore DSP + ARM Processors & C66x KeyStone multicore DSP for K2E, K2G, K2H, K2K, K2L, C665x, C667x
  • OMAP-L1x DSP + ARM9 Processor for OMAP-L1x
  • C6000 Power-Optimized DSP for C674x

CCS 설치 이후에는 SDK 설치를 해야 한다. CCS 설치도 아래 CCS9.3.0을 다운 받아서 설치해도 된다.

 

SOFTWARE DEVELOPMENT KIT (SDK)PROCESSOR-SDK-RTOS-AM57X
RTOS Processor SDK for AM57x

Version: 06.03.02.08

Release date: 03 Aug 2021

AM57XX RTOS SDK ESSENTIALS download

processor_sdk_rtos_am57xx_06_03_02_08-windows-x64-installer.exe (970757 K)

processor_sdk_rtos_am57xx_06_03_02_08-linux-x64-installer.run (992813 K)

CCS9.3.0.00012_win64.zip

CCS9.3.0.00012_linux-x64.tar.gz

 

더 자세한 다운로드 페이지는 여기로 방문하시면 됩니다.

https://www.ti.com/tool/PROCESSOR-SDK-AM57X#downloads

 

SDK 설치하기

RTOS 구조 그림을 하나 가져오자. 이런 구조에서 돌아가는 예제를 하나 해보는 것이 이렇게 어렵다.

TI RTOS 구조

SDK Path 환경 변수 정보 잡기

C:\ti\processor_sdk_rtos_[soc]_[version]>setupenv.bat

IPC_PLATFORM: DRA7XX
IPC_ALT_PLATFORM: AM572X AM571X
PROC_SDK_INSTALL_PATH     : C:/ti/processor_sdk_rtos_[soc]_[version]
**************************************************************************
Changing to short name to support directory names containing spaces
current directory: C:/ti/processor_sdk_rtos_[soc]_[version]
PROCESSOR SDK BUILD ENVIRONMENT CONFIGURED
**************************************************************************

이게 잘 수행되면, SDK 빌드를 할 수 있다.

C:\ti\processor_sdk_rtos_[soc]_[version]> gmake -j4

한 3~4시간 돌고 나면 에러든 머든 컴파일 된 SDK가 되어 있을 것이고...(에러가 몇개 나도 다음 예제 프로젝트만 만들어지면 테스트는 되더라~~~~~~)

이제 예제 프로젝트를 만들면 된다. 이때 칩셋의 종류, 보드의 종류를 잘 넣어 줘야 자신의 보드에 맞는 예제가 생성된다.

Windows Usage:
  pdkProjectCreate.bat [soc] [board] [endian] [module] [project type] [processor] [pdkDir]

 Description:     (first option is default)
  soc         -   AM335x / AM437x / AM571x / AM572x / K2E / K2G / K2K / K2H / K2L /
                  C6678 / C6657 / DRA72x / DRA75x / DRA78x / OMAPL137 / OMAPL138
  board       -   all (use "all" for K2X and C66X SOCs)
                  -or-
                  Refer to pdk_<soc>_<version>\packages\ti\board\lib
                  for valid board inputs for the soc
  endian      -   little / big
  module      -   all
                  -or-
                  aif2 / bcp / cppi / csl / dfe / emac / fatfs / fm / fftc /
                  gpio / hyplnk / i2c / icss_emac / iqn2 / mcasp / mcbsp / mmap / mmcsd /
                  nimu / nimu_icss / nwal / osal / pa / pcie / pktlib / pruss / qm / rm /
                  sa /serdes-diag / spi / srio / tcp3d / tfw / transportqmss /
                  transportsrio / tsip / uart / usb / wdtimer / vps / dcan / dss / lcdc
  project type -  all / example / test
  processor   -   arm / dsp / m4
  pdkDir      -   THIS FILE LOCATION / "C:\ti\pdk_<soc>_<version>\packages"

 Example:
  a) pdkProjectCreate.bat
              - Creates all module projects for the AM335x soc for arm little endian
  b) pdkProjectCreate.bat AM437x
              - Creates all module projects for the AM437x soc for arm little endian
  c) pdkProjectCreate.bat AM437x idkAM437x
              - Creates all module projects for idkAM437x device for arm little endian
  d) pdkProjectCreate.bat AM571x evmAM571x little
              - Creates all module projects for evmAM571x device for arm little endian
  e) pdkProjectCreate.bat AM571x evmAM571x little i2c all dsp
              - Creates all i2c module projects for evmAM571x device for dsp little endian
  f) pdkProjectCreate.bat K2H all little i2c example arm
              - Creates i2c module example projects for K2H device for arm little endian
  g) pdkProjectCreate.bat C6678 all little hyplnk test dsp
              - Creates hyplnk module test projects for C6678 device for dsp little endian
  h) pdkProjectCreate.bat OMAPL138 all little uart all dsp
              - Creates all uart module projects for C6748 and OMAPL138 device for dsp little endian

나는 아래와 같이 넣어 봤고 잘 생성이 되더라~

pdkProjectCreate.bat AM574x idkAM574x all little all all arm

TI RTOS 예제 프로젝트 생성 결과

환경 변수 세팅

CCS를 다시 실행하기 전에 PDK 설치와 관련된 환경 변수를 아예 등록해 두자. 

설치때 보면 bat 파일에 기본적인 환경변수를 세팅하고 시작하게 되어 있는데, 매번 배치파일을 실행할 수 없으니 그냥 자기 시스템에 입력해 둔다. 그림으로 남겨둔다.

PDK_INSTALL_PATH
PDK_SOC
PDK_VERSION
RULES_MAKE
SDK_INSTALL_PATH

 

용어 몇개

Acronyms

 

NIMU stand for Network Interface Management Unit

PRU ICSS - Programmable real-time unit and industrial communications subsystem

API Application Programming Interface
BD Buffer Descriptor
CSL Chip Support Library
DSP Digital Signal Processor
EMAC Ethernet Medium Access Protocol
LL Low Level Packet Driver
MDIO Management Data Input/Output Interface
NDK Network Developer's Kit
NIMU Network Interface Management Unit
NSP NDK Support Package
OSAL Operating Systems Abstraction Layer
Rx Receive Operation
SGMII Serial Gigabit Media Independent Interface
Tx Transmit Operation

 

Processor SDK 6.3 Released

아래 테이블의 링크를 누르면 다운로드가 가능해요.

from https://e2e.ti.com/support/processors-group/processors/f/processors-forum/899812/processor-sdk-6-3-released-am65x-am57x-am437x-am335x-amic1x-k2x-c66x-c674x-omap-l13x?tisearch=e2e-sitesearch&keymatch=am5749%252525252520rtos# 

To simplify the end user experience, the software installers are customized for the hardware platform and the operating system – Linux, RT-Linux, RTOS, or Android. In the table below, you can find a direct link to a download page for your platform and operating system:
Platform
Family
General Purpose (GP) Device High Secure (HS) Device
Linux RT-Linux RTOS Android Linux HS RT-Linux HS RTOS HS
AM335x download download download   mySecure download    
AM437x download download download   mySecure download   mySecure download
AM57x download download download download mySecure download mySecure download  
AM65x download download download download mySecure download   mySecure download
AMIC110     download        
AMIC120     download        
K2E download download download   mySecure download    
K2G download download download   mySecure download   mySecure download
K2H/K download download download   mySecure download    
K2L download download download   mySecure download    
C665x n/a n/a download   n/a n/a  
C667x n/a n/a download   n/a n/a  
C6747/45/43 n/a n/a download   n/a n/a  
C6748/46/42 n/a n/a download   n/a n/a  
OMAP-L137     download        
OMAP-L138 download   download        

TI RTOS 개발자 자료 링크

Processor SDK RTOS Software Developer’s Guide

 

Processor SDK RTOS Software Developer’s Guide — Processor SDK RTOS Documentation

Processor SDK RTOS Software Developer’s Guide Note Processor SDK documentation is now created from reStructuredText sources using Sphinx, and hosted on ti.com instead of processors wiki - starting 4.3 release. We intend to retain the look and feel of the

software-dl.ti.com

 

B로그0간

개발 관련 글과 유용한 정보를 공유하는 공간입니다.