일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 코멘토실무PT
- 코멘토
- 실무PT후기
- ARM 아키텍처: 메모리모델과 배리어
- 인프런
- yocto
- Arm 아키텍처: 캐시
- ARM 아키텍쳐: 메모리 모델과 배리어
- Arm 아키텍처: 메모리 모델과 배리어
- Kernel
- 시스템 소프트웨어 개발을 위한 ARM 아키텍처의 구조와 원리
- udemy
- 빌드 시스템
- arm
- BSP
- Today
- Total
목록전체 글 (29)
반도체 소프트웨어

메모리 리오더링의 사이트 이펙트(노멀 메모리에서 ARM 코어 최적화)에 의한 소프트웨어 버그를 예방하기 위한 기법 ARM 아키텍처는 명령어 실행 순서를 보장하는 배리어 제공 DMB(data memory barrier): 메모리 엑세스 순서 보장 메모리 머지(연속 메모리 접근), 리오더링들에 의해 명령어 순서가 바뀌는 것을 방지하기 위해 사용 예를 들면 CPSR셋팅 등으로 실행 흐름이 변경될수있는 명령어라면 실행 순서가 바뀌면 안되며 이럴때는 배리어 사용해줘야함 STR, LDR에만 적용 가능. 즉 메모리 엑세스 명령어에만 적용됨 DMB (qual: 배리어 명령어 실행 범위 제한) DSB(data synchronizatinon barrier): 메모리 리오더링과 명령어 리오더링을 함께 방지하는 기능(DMB ..

ARM아키텍처에서는 노멀 메모리 타입을 캐싱이 되는 영역으로 정의 명령어를 실행하거나 이 과정에서 처리되는 데이터나 코드 영역(코드 섹션 등) 일반적인 프로그램이 동작하는 메모리 영역 노멀 메모리 타입 영역의 동작 방식 머지 엑세스 연속된 메모리 공간에 접근하는 2개 이상의 명령어를 한번에 처리 성능 향상을 위한 프로세서 기법 소프트웨어 버그의 원인이기도 함 스페큘레이션 엑세스 소프트웨어에서 자주 접근하는 데이터를 예측해 미리 로딩하는 동작 패턴 인식과 같은 알고리즘을 활용 리오더링 엑세스 ARM프로세서는 명령어 간 의존성이 없는 경우 명령어 순서를 바꿔 처리하기도함 프로세서의 성능 향상 소프트웨어 버그의 원인이기도 함 메모리 리오더링 성능을 더 키우기 위한 프로세서의 설계 방식 ARM프로세서 내부에서 ..

MMIO 기본 동작 각 I/O 디바이스의 포트가 물리 주소에 연결 각 I/O 디바이스의 레지스터를 물리 주소를 통해 접근 DRAM R/W을 통해서 I/O PORT 제어 가능(load, store 등 간단한 인터페이스로 엑세스) cat /proc/iomem 으로 MMIO 물리 주소 확인 가능 main peripherals의 주소를 r/w하면 soc내의 ip, 페리페럴을 제어할 수 있는것 각 offset 0x1마다 32, 64bit 데이터를 기록할 수 있는것 디바이스 메모리 MMIO로 접근하는 주소 메모리 모델 중 하나 페리페럴 제어하기 위해 사용하는 메모리 영역 특징 캐시에서 처리 안됨 스페큘레이션 엑세스 안함(예측처리) 디바이스 메모리 속성(임베디드 시스템 설계에 따라, 필요에 따라 디바이스 메모리에 다..