Iot tool training part 1

Page 1

Overview of Intel® System Studio and Intel® Edison SSG DPD ECDL TCE

Intel® Confidential — Do Not Forward


안녕하세요. 앞으로, 인텔 시스템 스튜디오와 인텔 에디슨에 대해서 알아보겠습니다.

첫 번째, 인텔의 대표적인 임베디드 개발용 툴인 인텔 시스템 스튜디오 그리고, 인텔의 IoT용 개발 플랫폼인 인텔 에디슨 에 대해 알아보겠습니다. 두 번째, 에디슨에서 소프트웨어를 개발할 때 사용하는 인텔 IoT dev kit 소개와 사용법, 초기 환경 설정 방법 등에 대해 알아보고, 간단한 프로그램을 만드는 방법에 대해서 알아보겠습니다. 세 번째, 인텔 에디슨 FW를 업그레이드 하는 방법과 에디슨 MCU SDK 소개 및 설치에 대해 알아보겠습니다. 마지막으로 에디슨 MCU 에서 소프트웨어를 개발 하는 방법을 실습을 통해 알아보겠습니다. 이번 편에서는 인텔 시스템 스튜디오와 인텔 에디슨에 대해 알아보도록 하겠습니다.

Intel® Confidential

2


1. Overview of Intel® System Studio 인텔 시스템 스튜디오는 인텔 CPU와 플랫폼을 사용하여, 임베디드나 모바일 시스템을 개발 할 때 사용하는 툴입니다. 개발에 사용되는 툴들의 종류가 많지만, 크게 3가지로 나눌 수 있습니다. 첫 번째,애플리케이션 디버거와 시스템 디버거 및 트레이싱을 위한 툴을 가지고 있습니다. 두 번째, 시스템이나 시스템, 애플리케이션 성능 측정과 향상, 에너지 효율 측정과 향상을 위한 툴을 가지고 있습니다. 세 번째, 개발용툴의 기본이 되는 컴파일러와 각종 라이브러리들을 포함하고 있으며, 이 컴파일러와 라이브러리들은 인텔 플랫폼에 최적화된 코드를 만들어 줍니다. 따라서 좋은 성능의 최적화된 software를 상대적으로 쉽게 개발할 수 있게 도와 줍니다.

Intel® Confidential

3


오른쪽에 보이는 표는 인텔 시스템 스튜디오 안에 포함되어 있는 포넌트들에 대한 내용입니다. 표 윗쪽에는 각각 지원하는 타겟 플랫폼인 Linux, Android, Windows, VxWorks 가 있습니다. 그 아래에 표시된 ‘C’, ‘P’, ‘U’가 있으며, ‘C’로 표시된 컴포져 에디션, ‘P’ 로 표시된 프로페셔널 에디션, ‘U’로 표시된 얼티밋 에디션이 각각 있습니다. 그 아래쪽에 있는 것은 설치 가능한 Host OS 이며, 체크된 부분이 각 OS별로 지원하는 tool입니다.

Intel® Confidential

4


이번에는 인텔 시스템 스튜디오가 소프트웨어를 개발 할 때 어떻게 도와줄 수 있는지에 대해서 알아보겠습니다. 소프트웨어를 개발하면, 처음에 C나 C++같은 고급언어로 작성된 소스 코드를 빌드해야 합니다. 빌드를 하면 실행가능 한 오브젝트 코드가 생성되며, 이때 최대한 최적화를 해야 합니다. 일반적으로는 그냥 최적화 옵션만 주고 GCC나 비주얼C, C++ 컴파일러로 빌드를 합니다. 그런데, 인텔 컴파일러로 빌드하면 경우에 따라서 훨씬 더 최적화된 오브젝트 코드를 생성할 수도 있습니다. 그리고, IPP나 인텔 매쓰커널 라이브러리 등을 쓰면 특정 알고리즘이나, 특히 계산량이 많은 수학 함수 등에서 큰 성능 향상을 기대할 수 있습니다. 이것은 특정 알고리즘이나, 함수를 인텔 CPU만의 고성능 명령어로 미리 최적화하여 만들어 놓았기 때문입니다.

그리고 나면, 생성된 실행파일이나 오브젝트를 디버깅 해야 하는데, 애플리케이션의 경우 GDB를 시스템 소프트웨어의 경우에는 JTAG 디버깅이 가능한 인텔 시스템 디버거를 이용하면 됩니다. 그외에도 소프트웨어의 성능과 소모전력을 프로파일링하여, 병목이 되는 코드나, 문제가 되는 인터럽트 등을 찾아주는 분석툴들도 있있으며, 그래픽성능 튜닝을 도와주는 여러가지 분석 툴들을 포함하고 있습니다. Intel® Confidential

5


2. Overview Of Intel® Edison 다음은 인텔 에디슨에 대해 알아보겠습니다.

인텔 에디슨은 보시는 바와 같이 아주 작은 크기 인데, 실제 우표 크기와 비슷합니다. 전체 IoT 플랫폼에서 끝단의 센서나 액츄에이터 등을 콘트롤 하는 디바이스를 개발하기 위한 플랫폼입니다. 2-1. Intel® Edison Mechanical Layout

작은 폼팩트 이지만, 안에 USB, 메모리, 블루투스, 와이파이 등등 많은 칩들과 기능이 집약되어 들어가 있습니다.

Intel® Confidential

6


오른쪽편에 있는 표는 인텔 에디슨의 전체 스펙에 대한 내용입니다. 크기는 대략 3~4cm 이며, 70핀 커넥터가 나와있습니다. 인터페이스로는 UART, I2C, GPIO, USB 등을 제공합니다. SoC안에는 듀얼코어 500MHz의 아톰 CPU와 100MHz의 쿼크 마이크로 콘트롤러가 들어있습니다. 램 1기가, 4기가 플래시 메모리, 그리고 와이파이, 블루투스 4.0 을 지원하고 있습니다. CPU쪽 OS로는 yocto 임베디드 리눅스가 들어가 있고, MCU쪽에는 RTOS가 들어 있습니다.

Intel® Confidential

7


2-2. Intel® Edison - Development Board 에디슨 보드가 작기 때문에, 몇가지 개발용 보드를 따로 제공하고 있습니다.  Arduino Development Board 이것은 아두이노와 호환되는 보드인데요, 에디슨을 이 보드에 꽂고 아두이노용 쉴드를 위에 꽂아서 사용 할 수 있습니다. 아두이노 환경에서 아두이노 쉴드로 발해왔던 개발자는 이 환경이 훨씬 익숙하고 쉬울 것 입니다. Board I/O: Compatible with Arduino Uno (except only 4 PWM instead of 6 PWM)

Intel® Confidential

20 digital input/output pins including 4 pins as PWM outputs

6 analog inputs

1 UART (RX/TX)

1 I2C

1 ICSP 6-pin header (SPI)

Micro USB device connector OR (via mechanical switch) dedicated standard size USB host Type-A connector

Micro USB device (connected to UART)

SD Card connector

DC power jack (7V – 15V DC input)


2-2. Intel® Edison - Development Board

 Edison Breakout Board 에디슨 브렉아웃 보드는 아두이노 개발 보드 보다 좀더 작은 크기로, 에디슨을 꽂아서 쉽게 USB나 배터리나 파워 등을 연결하여 할 수 있습니다. 아두이노 개발자가 아닌 일반 개발자의 경우 이 보드를 이용하면 작은 크기의 디바이스를 좀더 쉽게 개발 할 수 있습니다.

Board I/O: ▪ Exposes native 1.8V I/O of the Edison module ▪ USB OTG with USB Micro Type-AB connector ▪ USB OTG power switch ▪ Battery Charger ▪ USB to device UART bridge with USB Micro Type-B connector ▪ DC power supply jack (7V – 15V DC input)

Intel® Confidential


Intel® Confidential — Do Not Forward


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.