[ARM] tst 명령어를 실행하면 ARM CPSR 레지스터가 어떻게 변경될까?
By Guillermo Austin Kim | 2019년 2월 12일 |
tst 명령어를 실행하면 ARM CPSR 레지스터가 어떻게 변경될까? tst 명령어는 연산자와 비연산자 사이 AND 비트 연산을 수행합니다. AND 비트 연산 결과에 따라 CPSR 레지스터 Z 비트는 다음과 같이 변경됩니다.Z: 0 ( AND 비트 연산 결과가 1인 경우)Z: 1 ( AND 비트 연산 결과가 0인 경우) tst 명령어가 위와 같이 동작하는지 증명하기 위해 T32 디버거를 실행해 보겠습니다.다음 화면은 tst 명령어를 실행하기 직전입니다. NSR:80107E6C|ret_to_user_from_irq: ldr r2,[r9,#0x8]NSR:80107E70| cmp r2,#0x7F000000 ; r2,#213070
애플, 아이폰12 시리즈 발표
By eggry.lab | 2020년 10월 14일 |
루머로 유출될 대로 다 유출됐지만 어쨌든 한국 시간으로 오늘 새벽에 발표됐습니다. 발표 몇시간 전에 아예 프레스 이미지가 유출될 정도였던지라 사양도 99% 다 맞췄고 해서 안 보고 자길 잘 했습니다. 뭐 그래도 첫 5G 아이폰이라 통신사 푸시 받고 아이폰5나 6 급으로 많이 팔릴 거 같기는 한데요. 먼저 라인업 중 더 낮은 가격대를 형성하는 아이폰12와 아이폰12 미니입니다. 이 둘은 아이폰11의 후계라고 할 수 있는데, 아이폰12 프로가 크기가 커지면서 사라진 작은 크기대를 아이폰12 미니가 커버하는 식입니다. 하지만 작으면서 프리미엄인 폰을 원한 사람에게는 선택지가 사라지는 게 되겠네요. 아이폰12는 6.1인치 OLED, 아이폰12 미니는 5.4인치 OLED로, 이제 미드레인지 아이폰도 다
[Arm프로세서] Armv8: SPSR_ELx - SPSR(Saved Program Status Register) 레지스터란
By Guillermo Austin Kim | 2022년 5월 2일 |
SPSR_ELx SPSR 레지스터는 Saved Program Status Register의 약자로 PSTATE 정보를 백업하는 용도로 사용됩니다. 따라서 SPSR 레지스터의 비트 맵은 PSTATE와 같습니다. 그렇다면 PSTATE는 SPSR 레지스터로 언제 백업될까요? "바로 익셉션이 유발될 때입니다." SPSR은 익셉션이 발생했을 때의 PSTATE의 정보를 저장하는 용도로 사용되며, 익셉션을 처리한 후 익셉션이 발생한 시점의 익셉션 레벨로 복귀하기 위해 사용됩니다. 즉, 익셉션과 관련된 처리를 하기 위해 사용됩니다. Arm 아키텍처 문서나 어셈블리 명령어를 분석하면 SPSR 보다는 SPSR_EL1 혹은 SPSR_EL0과 같은 규칙으로 SPSR 레지스터를 명시합니다. SPSR은 익셉션 레벨
[ARM] ARM 프로세서의 패밀리
By Guillermo Austin Kim | 2020년 9월 20일 |
ARM 사는 용도에 따라 제품군을 나눴는데, 현재 ARM의 최신 라인업인 Cortex 시리즈로 세분화돼 있습니다. 먼저 Cortex-A 제품군부터 알아봅시다. Cortex-A 시리즈 컴퓨터 제품을 위한 제품군입니다. 모바일에서 서버용 컴퓨터까지 다양한 플랫폼에서 개발되는 제품을 위한 ARM의 주력 상품군입니다. 스마트폰, TV 등과 같이 어느 정도 성능을 만족해야 하는 멀티미디어 기기나 많은 양의 데이터나 리소스를 처리해야 하는 임베디드 기기에서 주로 사용됩니다. 대부분 범용 운영체제인 리눅스와 윈도우 운영체제를 지원합니다. Cortex-R 시리즈 RTOS 기반 제품을 위한 라인업인데, R은 말 그대로 Real-time의 약자입니다. RTOS에서 MPU(메모리보호유닛)이나 TCM(Tight-Coup