2015년 5월 1일 금요일

임베디드 시스템 관련 용어 1


Cross Development Environment
실제 소프트웨어가 수행될 시스템과 개발하는 시스템이 다른 개발환경이다. 임베디드 시스템이란 특수한 기능을 수행하는 제한된 자원을 가진 HWSW가 결합된 시스템이다. 자원이 제한되어 있기 때문에 임베디드 시스템 독자적으로 필요한 프로그램을 개발하는 것은 거의 불가능하다.
 
Cross Compiler
원시 프로그램의 번역이 이루어지는 컴퓨터와 번역된 기계어에 이용되는 컴퓨터가 서로 다른 기종의 컴퓨터일 때 사용하는 컴파일러의 한 가지이다. 어떤 컴퓨터에서 동작하는 프로그램을 만들기 위해 다른 컴퓨터의 개발 환경을 사용해서 프로그램을 작성하는 경우에 사용된다. 동작 속도가 느린 컴퓨터, 완성되어 있지 않은 컴퓨터, 개발 환경 구축이 불가능한 컴퓨터용의 실행 프로그램을 만드는 경우 등에 사용한다. 예를 들면, 마이크로프로세서의 프로그램 개발 또는 게임기의 프로그램 개발은 이와 같은 방법을 채택하는 경우가 많다.
 
arm-linux-gcc
ARM 명령어세트 기반의 Linux 실행 파일 생성하는 Cross Compiler이다.
 
Makefile
개발하는 프로젝트에는 C/C++ 파일을 compile 하여 object 파일을 만들고 object 파일은 Link 과정을 거쳐서 최종적으로 .out (목적파일)을 생성하게 된다. 이 때 사용되는 명령은 상당히 길다. 이러한 불편함을 해소 시켜주기 위해서 생겨난 유틸리티가 make 이다.
 
JTAG
JTAG(Joint Test Action Group)는 임베디드 시스템 개발 시에 사용하는 디버깅 장비이다. , JTAG은 임베디드 시스템을 개발하기 위해 통합한 회로로 사용되는 IEEE 1149.1의 일반적인 이름이지만, 보통 디버거를 가리킨다.
프로세서(CPU)의 상태와는 상관없이 디바이스의 모든 외부 핀을 구동시키거나 값을 읽어 들일 수 있는 기능을 제공한다. JTAG은 디바이스 내에서 모든 외부와의 연결점, 즉 각각의 핀들을 Boundary Cell과 일대일로 연결하고, 각각의 Cellboundary scan register를 형성하기 위해 서로 연결한다. 전체적인 인터페이스는 5개의 핀(TDI, TMS, TCK, nTRST, TDO)을 통해 제어한다. 이렇게 준비한 상태에서 디바이스 간의 연결 상태를 테스트하거나, 플래시 메모리에 퓨징(fusing)하는 기능을 한다.














minicom
리눅스에 기본적으로 설치가 되는 프로그램으로 리눅스에서 시리얼 모니터링을 할 때 사용된다. 타겟에서 출력되는 메시지가 시리얼 케이블을 통해 PC의 시리얼 포트로 전달되면 minicom은 이 메시지를 받아서 PC 모니터 화면에 출력하거나 반대로 PCminicom 화면에서 명령을 입력하면 시리얼 케이블을 통해 타겟으로 명령이 전달된다. (윈도우의 하이퍼터미널과 같다.)
 
TFTP
TFTP (Trivial File Transfer Protocol)FTP와 마찬가지로 파일을 전송하기 위한 프로토콜이지만, FTP보다 더 단순한 방식으로 파일을 전송한다. 따라서 데이터 전송 과정에서 데이터가 손실될 수 있는 등 불안정하다는 단점을 가지고 있다. 하지만 FTP처럼 복잡한 프로토콜을 사용하지 않기 때문에 구현이 간단하다. 임베디드 시스템에서 운영 체제 업로드로 주로 사용된다.

댓글 없음:

댓글 쓰기