본문 바로가기
반응형

프로그래밍/Embeded6

Embedded] Exception Vector table ARM에서 exception or interrupt가 발생하면 모든 행동을 중단하고 해당 exception의 형태에 따라 exception vector table의 양식에 맞는 실행을 하게 된다. 종류는 다음과 같다. Data Abort 메모리의 데이터를 읽거나 쓰는데 실패하는 경우 FIQ IRQ Prefectch Abort 명령어를 해석하다가 실패하는 경우 발생 SWI 주로 시스템 콜을 구현할 때 많이 사용 Reset ARM코어가 리셋될 때 사용 Undefined Instruction 읽어온 명령어가 정의되지 않은 명령어일 때 사용 2019. 9. 8.
도전 임베디드 OS 만들기 - hello world 출력!!(Ubuntu 18.04 64bit ver) u-boot 에뮬레이터로 hello world를 출력해 보는 글이 되겠습니다. 우선 이지부트 소스를 다운받아야 합니다. $ wget http://forum.falinux.com/_zdownload/data/ezboot.x5.v18.tar.gz $ tar -zxf ezboot.x5.v18.tar.gz 다운로드 후 압축을 풀면 'v18.org' 디렉토리가 생성될 것입니다. 디렉토리에 들어간 후 ls를 해보면 아래와 같은 디렉토리가 있을 것입니다. 여기서 사용할 폴더는 include, main 디렉토리 입니다. 따라서 이 두개를 따로 빼줍니다. $ mkdir ~/navilnux $ cp main/ ~/navilnux -r $ cp include/ ~/navilnux -r 그 후 main 디렉토리에 있는 ser.. 2019. 8. 30.
도전 임베디드 OS 만들기 - qemu, u-boot 설치(Ubuntu 18.04 64bit ver) PC status OS : Ubuntu 18.04 (64bit)ram : 8GBgcc : 7.4.0 ver QEMU 설치 window에서 가상머신인 virtualbox를 이용하는 것 처럼 embedded 개발도 에뮬레이터 라는걸 이용하면 됩니다. EZ보드를 사서 해도 되지만..... 돈도 나가고 또 비쌉니다. 국내에선 구하기 힘들구요. 하여, 책에서 소개하고 있는 qemu라는 녀석을 설치해 보겠습니다. qemu는 최신버전을 사용해도 무방함으로 위와 같은 형식으로 설치해 줍니다. u-boot 설치 ※ 2019년 8월 27일 현재 '도전 임베디드 os 만들기'의 arm-linux-gcc, u-boot, qemu등 소스 파일이 있는 홈페이지가 안들어 가집니다.때문에 제 github에 일단 올려놨습니다. '$ .. 2019. 8. 27.
크로스 컴파일러란? 크로스 컴파일러 설치 방법!! (도전 임베디드 OS 만들기) 크로스 컴파일러란? 다른 플렛폼에서(windows, Mac) 다른 플렛폼의(Android, IOS, Embedded) 실행 파일을 만들어 주는 컴파일러를 가르켜크로스 컴파일러 라고 합니다. 이 무슨 말이냐?? 예를 들어 Android의 .apk파일(어플리캐이션)을 만들고자 할 때 흔히 사용하는 소프트웨어가 있습니다.바로 Android studio 입니다. 이 소프트웨어를 실행시킨 후 컴파일하면 실행파일이 만들어 집니다. 이 실행 파일은 windows에서 실행이 불가능 하죠. windows는 .exe파일만 실행 가능하기 때문입니다.하지만 windows에서 스마트폰을 가상으로 띄우거나 직접 스마트폰에 apk파일을 넣은 후 직접 스마트폰으로 실행하면어플리케이션은 실행이 잘 됩니다. 즉, 다른 플렛폼인 wind.. 2019. 8. 22.
Embedded] MCU와 SoC의 개념과 차이점은? Embedded System을 공부하다보면 자주 등장하는 용어 입니다. 쉽게 설명하자면 MCU는 작은 단위, SoC는 큰 단위로 생각하시면 됩니다. MCU는 Micro Controller Unit의 약자로 CPU, 메모리, 입출력 제어(I/O), 주변장치 컨트로러를 하나의 칩에 넣은 반도체 입니다. 즉 Chip하나에 거의 모든 기능이 포함되어 있다고 볼 수 있죠. 대표적인 사용예로는 아두이노가 있습니다. 위 사진에서 빨간색으로 네모친 부분이 아두이노의 MCU입니다. 아시는 분들은 아시겠지만 저 칩셋에는 입출력 포트, 전원, GND포트, 송수신 포트 등이 있습니다. 칩셋 하나에 말이죠. 그럼 SoC를 살펴보겠습니다. SoC는 System on Chip의 약자로 하나의 칩으로 시스템 운영이 가능하다는 뜻입니.. 2019. 8. 8.
Embeded] ARM이란? ARM은 (Advanced RISC Machine)의 약자로 CPU 디자인중 하나를 뜻하는 말입니다. 대표적으로 스마트폰에 들어가는 CPU는 요녀석이 들어가게 되는것이죠. CPU종류마다 명령어 세트(instruction set)라는 녀석이 같이 존재하게 됩니다. 이 명령어 세트로 인해서 CPU가 여러가지 명령어를 처리할 수 있는 것이죠. 인텔의 CPU 경우엔 x86, x64(AMD64)와 같은 명령어 세트가 들어가게 되고, ARM같은 경우는 RISC가 들어가게 됩니다. RISC는 CISC와 비교가 되는데, 이는 CISC의 단점부분을 보완하여 나온 명령어 세트가 RISC라서 그렇습니다. ARM은 가장큰 특징이 저전력에 고성능이라는 점입니다. CPU는 전력이 높을수록 코어당 쿨럭이 높아집니다. 때문에 고성능.. 2019. 8. 8.
반응형

스킨편집 -> html 편집에서