개발자 공부방/임베디드교육(4)
-
임베디드 교육
다중의 메모리 이동을 위해 LDM 및 STM 이 사용됨. (op) {cond} Rn, {cond} : 조건부 실행을 위한 조건 : 주고 계산 방식을 지정함 = IA, IB, DA, DB, FA, FD, EA, ED Rn : 메모리를 가리키고 있는 베이스 주소 레지스터 (R0~R3 또는 R12) ex) LDMDB R1,{R1-R4, R12, LR} R1 에 든 포인터에 있는 값을 읽어 들인다. STMNEIA R0 {R0,R1,R2,SP} R0 에 든 포인터 주소에 값을 쓴다. STM, LDM 이 수행 되어도 base register 값은 고정이다 STM, LDM 수행 후 base register 를 변경하도록 하려면 ! 을 붙인다. (op) {cond} Rn!, ex) LDMDB R1!, {R1,R2,LR..
2010.04.20 -
임베디드 용어정리 03
ARM명령어 Branch 명령어 B there : 무조건 there로 분기하라 BEQ fred : R1이 0이면 fred로 분기 BL sub+ROM : 어드레스를 계산 후서브루틴콜 분기할 주소 계산 : PC값을 기준으로 비트[23:0]에 해당하는 Offset이 사용된다. 분기 가능한 어드레스 영역 : PC +/- 32MB BL명령 : 다음에 수행할 명령의 위치를 LR에 저장한다.(LR = PC -4) 산술연산 ADD : 더하기 ex) ADD r0, r1, r2 => r0 = r1 + r2 ADC : 캐리와 함께 더하기 SUB : 빼기 SBC : 캐리와 함께 빼기 RSB : 역으로 빼기 ex) RSB R0, R1, R2 => R0 = R2 – R1 RSC : 캐리와 함께 역으로 빼기 논리 연산 AND : ..
2010.04.15 -
임베디드 용어정리 02
Operating Mode? User Mode FIQ(Fast Interrupt Request) Mode IRQ Mode: 인터럽트 처리할 때 SVC Mode : 운영체제가 동작할때의 동작모드, Reset할 때 Abort Mode : 실제 메모리상에서 명령어 읽거나 데이터 쓸 때 오류발생할 때 (ex. 잘못된 메모리 주소를 줄 때) Data – 읽거나 쓸 때 문제 발생 Prefetch Undefined Mode : 정의되지 않은 명령을 수행하려고 할 때 System Mode : User모드와 동일하나 privilege모드이다. Exception ? 오류에 의해 중단되었을 때 정상적인 프로그램이 중단되었을 경우 System Call ? 하나의 인터페이스 커널 영역에 접근할 수 없도록 User모드에서 수행되..
2010.04.15 -
임베디드 용어정리 01
Task? 실행되어진 하나하나의 프로그램들 running - 현재실행중인 것 ready - 실행중이진 않지만 실행 가능한 상태 waiting - 특정한 어떤 조건을 기다리는 상태 Critical Section(임계영역)? Mutual Exclusion : 하나의 task가 공유자원을 사용하고 있는 동안 다른 task가 이 자원을 사용하지 못하도록 보장 Semaphore : 공유 데이터를 엑세스 하는 프로세스 수를 하나로 제한한다 SoC (System on Chip)? 여러 개의 반도체 부품이 하나로 집적되는 기술 및 제품 MCU, MPU ? 프로세서를 내장하고 있는 SoC를 말한다. 프로그램이란? 프로세서를 통하여 어떤 결과를 얻기 위하여 프로세서가 받아 들일수 있는 형태로 구성된 명령을 나열하여 구성된..
2010.04.15