-
컴퓨터 구조 for 임베디드공부/Embedded 2025. 2. 17. 02:28
컴퓨터 구조를 읽으면서 적당히 끄적거리는 페이지
1. 명령어 실행
기본적인 내용들
CPU의 내부 구성 요소: 산술논리연산장치(ALU), 레지스터 세트, 제어 유닛...
버스들: 주소 / 데이터/ 제어
CPU, 주기억장치, I/O장치들은 시스템 버스로 서로 연결됨
ARM 버스 구조(https://wikidocs.net/159026)
버스 마스터(bus master)
버스 중재(bus arbitration) - 병렬 중재, 직렬 중재, 폴링 방식 등
동기식 버스 / 비동기식 버스
I/O 장치의 연결
I/O장치는 속도가 CPU보다 느리고, 제어 방법도 다르고, 데이터 형식의 길이도 다를 수 있음
흔히 I/O장치를 시스템 버스에 접속하기 위해 ~~ 컨트롤러, ~~ 인터페이스를 사용함
-> 상태/제어 레지스터
주소 지정 I/O
Memory mapped I/O: 기억장치 주소 공간의 일부를 I/O레지스터들에게 할당
Isolated I/O: I/O장치들의 주소 공간이 기억장치 주소 공간과는 별도, 해당 I/O 레지스터에 접근하기 위해 별도의 명령어들을 사용
인터럽트를 이용한 I/O
프로그램을 이용한 I/O: 주기적으로 I/O장치를 체크, CPU 시간 낭비 -> 인터럽트 구동 I/O
다중 인터럽트 방식: INTR/INTA 신호 사용
데이지 체인 방식
소프트웨어 폴링 방식
DMA를 이용한 I/O
가장 효율적, 많이 씀
...
'공부 > Embedded' 카테고리의 다른 글
부트로더와 잡다한 것 (0) 2025.03.04 02.23 흠 암튼 정리 (0) 2025.02.23 [Gaisler IP] GRETH (0) 2025.02.16 [Zephyr OS] LLEXT (0) 2025.02.02 [Linux] Dynamic Loading (0) 2025.01.27