액세스 (마이크로프로세서)
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
액세스 (마이크로프로세서)는 마이크로프로세서가 메모리에 접근하는 방식과 입출력 장치, 직접 메모리 접근(DMA)에 대한 내용을 다룬다. 메모리 접근 방식에는 Immediate, 직접 주소, 레지스터, 인덱스 레지스터 방식이 있으며, RISC는 주소 접근 방식을 단순화했다. 입출력의 메모리 맵 방식에는 메모리 맵 입출력(MMIO)과 입출력 맵 입출력(I/O mapped I/O) 방식이 있으며, 인텔은 I/O 맵 입출력을, 프리스케일은 MMIO를 주로 사용했다. 또한, DMA는 마이크로프로세서의 개입 없이 보조 하드웨어가 데이터를 직접 전송하는 방식으로, 버스 공유 및 임베디드 시스템에서의 활용에 대해 설명한다.
더 읽어볼만한 페이지
- 마이크로컴퓨터 - 마이크로프로세서
마이크로프로세서는 CPU 기능을 단일 IC에 통합한 것으로, 무어의 법칙에 따라 성능이 향상되어 왔으며 다양한 아키텍처와 기술 발전을 거쳐 현재 광범위한 분야에서 사용된다. - 마이크로컴퓨터 - RAD750
RAD750은 BAE Systems의 등록 상표로, PowerPC 750 기반의 내방사선 CPU이며 극한의 우주 환경에서 작동하도록 설계되어 다양한 우주선에 사용된다. - 마이크로프로세서 - 중앙 처리 장치
중앙 처리 장치(CPU)는 컴퓨터 시스템의 핵심 부품으로, 프로그램 명령어를 해석하고 실행하여 데이터를 처리하는 장치이다. - 마이크로프로세서 - ARM 아키텍처
ARM 아키텍처는 저전력 설계로 모바일 기기에서 널리 쓰이는 RISC 기반 프로세서 아키텍처로서, IP 코어 라이선스 모델과 ARM Flexible Access를 통해 다양한 분야로 확장되고 있다. - 전자공학 - 전자전
전자전은 적의 전투 능력을 저하시키기 위해 전자기 에너지를 사용하는 군사 작전이며, 전자 공격, 전자 보호, 전자 지원의 세 가지 영역으로 나뉘어 통신 방해, 레이더 교란, 스텔스 기술 등을 포함한다. - 전자공학 - 옴의 법칙
옴의 법칙은 1827년 게오르크 옴이 발표한, 전압(V)은 전류(I)와 저항(R)의 곱(V=IR)으로 표현되는, 전압, 전류, 저항 간의 관계를 나타내는 기본 법칙이다.
| 액세스 (마이크로프로세서) | |
|---|---|
| 개요 | |
![]() | |
| 접근 방식 | DMA |
| 종류 | 임의 접근 |
| 속성 | 휘발성 |
| 상세 정보 | |
| 버스 인터페이스 | 마이크로프로세서는 버스 인터페이스를 통해 메모리에 접근한다. |
| 메모리 접근 단계 | 마이크로프로세서가 메모리 위치를 지정한다. 메모리가 위치 데이터를 마이크로프로세서로 보낸다. |
| 접근 방법 예시 | Z80 마이크로프로세서는 16비트 주소 버스를 사용하여 64KB의 RAM에 접근할 수 있다. Intel 8085 마이크로프로세서는 메모리 칩을 선택하기 위해 메모리 맵 입출력을 사용한다. |
| 특징 | 마이크로프로세서의 접근 시간은 마이크로프로세서가 RAM에서 데이터를 읽거나 쓰는 데 걸리는 시간으로 정의된다. |
2. 메모리 접근 방식
기계어 코드에서 메모리를 접근하는 방식(Addressing mode)은 여러 가지가 있다. 각각의 방식에 따라 기계어로 나누어 설계되어 있다.
몇 가지 주요 주소 지정 방식은 다음과 같다:
- Immediate: 목적 데이터가 기계어 코드에 존재한다.
- 직접 주소(direct access mode): 목적 데이터의 주소가 기계어 코드에 존재한다.
- 레지스터: 일반 레지스터의 값이 액세스 해야 할 주소값으로 하여, 그 주소를 액세스한다.
- 인덱스 레지스터: 인덱스 레지스터의 값이 액세스 해야 할 주소값으로 하여, 그 주소를 액세스한다.
RISC는 주소 접근 방식도 단순화되어 있다.
2. 1. 주소 지정 방식 (Addressing mode)
기계어 코드에서 메모리를 접근하는 방식(Addressing mode)은 여러 가지가 있다. 각각의 방식에 따라 기계어로 나누어 설계되어 있다.몇 가지 주요 주소 지정 방식은 다음과 같다:
- Immediate: 목적 데이터가 기계어 코드에 존재한다.
- 직접 주소(direct access mode): 목적 데이터의 주소가 기계어 코드에 존재한다.
- 레지스터: 일반 레지스터의 값이 액세스 해야 할 주소값으로 하여, 그 주소를 액세스한다.
- 인덱스 레지스터: 인덱스 레지스터의 값이 액세스 해야 할 주소값으로 하여, 그 주소를 액세스한다.
RISC는 주소 접근 방식도 단순화되어 있다.
3. 입출력(I/O)의 메모리 맵 방식
메모리 맵 입출력(Memory-mapped I/O, MMIO)은 메모리와 입출력 장치를 구분하여 메모리 체계를 만든다. 입출력 맵 입출력(I/O mapped I/O)은 메모리 주소공간과 I/O 주소공간을 분리하는 메모리 체계이다.[3][5]
보통 입출력 장치가 메모리(RAM, ROM, FLASH) 보다 액세스 속도가 떨어진다. 따라서 입출력과 메모리의 주소 공간을 분리하여 효율성을 기한다. 그러나 분리를 하면 기계어 명령어를 분리해야 한다.
주로 인텔의 마이크로프로세서는 입출력 맵 입출력 방식을 사용하고, 프리스케일(과거 모토로라) 마이크로프로세서는 메모리 맵 입출력을 사용하였다.
8085, Z80 마이크로프로세서에서의 메모리 맵:
| 주소 공간 | 공간지정크기 | 명령어 예 |
|---|---|---|
| 메모리 | 16비트 (64K) | MOV(8085), LD(Z80) |
| 입출력 | 8비트 (256) | IN, OUT (8085, Z80) |
RISC는 단순화 개념에 따라, 주로 메모리 맵 입출력을 사용한다.
3. 1. 메모리 맵 입출력 (MMIO)
메모리 맵 입출력(MMIO)은 메모리와 입출력 장치를 구분하여 메모리 체계를 만든다.[3][5] 보통 입출력 장치가 메모리(RAM, ROM, FLASH)보다 액세스 속도가 느리기 때문에 입출력과 메모리의 주소 공간을 분리하여 효율성을 높인다. 그러나 이렇게 분리하면 기계어 명령어를 분리해야 하는 단점이 있다.프리스케일(과거 모토롤라) 마이크로프로세서는 주로 메모리 맵 입출력을 사용하였고, RISC도 단순화 개념에 따라 주로 메모리 맵 입출력을 사용한다.
3. 2. 입출력 맵 입출력 (I/O mapped I/O)
입출력 맵 입출력(I/O mapped I/O)은 메모리 주소 공간과 입출력 주소 공간을 분리하는 메모리 체계이다.[3][5] 보통 입출력 장치가 메모리(RAM, ROM, FLASH)보다 액세스 속도가 느리기 때문에 입출력과 메모리의 주소 공간을 분리하여 효율성을 높인다. 그러나 분리를 하면 기계어 명령어를 분리해야 한다.주로 인텔의 마이크로프로세서는 입출력 맵 입출력 방식을 사용하고, 프리스케일(과거 모토로라) 마이크로프로세서는 메모리 맵 입출력을 사용하였다.
8085, Z80 마이크로프로세서에서의 메모리 맵은 다음과 같다.
| 주소 공간 | 공간지정크기 | 명령어 예 |
|---|---|---|
| 메모리 | 16비트 (64K) | MOV(8085), LD(Z80) |
| 입출력 | 8비트 (256) | IN, OUT (8085, Z80) |
RISC는 단순화 개념에 따라, 주로 메모리 맵 입출력을 사용한다.
3. 3. MMIO vs. I/O mapped I/O
메모리 맵 입출력(Memory-mapped I/O, MMIO)은 메모리와 입출력 장치를 구분하여 메모리 체계를 만든다. 입출력 맵 입출력(I/O mapped I/O)은 메모리 주소공간과 I/O 주소공간을 분리하는 메모리 체계이다.[3][5]일반적으로 입출력 장치는 메모리(RAM, ROM, FLASH)보다 액세스 속도가 느리다. 따라서 입출력과 메모리의 주소 공간을 분리하여 효율성을 높인다. 그러나 이러한 분리는 기계어 명령어의 분리를 필요로 한다.
주로 인텔의 마이크로프로세서는 입출력 맵 입출력 방식을 사용하고, 프리스케일(과거 모토로라) 마이크로프로세서는 메모리 맵 입출력을 사용하였다.
8085, Z80 마이크로프로세서에서의 메모리 맵은 다음과 같다.
| 주소 공간 | 공간지정크기 | 명령어 예 |
|---|---|---|
| 메모리 | 16비트 (64K) | MOV(8085), LD(Z80) |
| 입출력 | 8비트 (256) | IN, OUT (8085, Z80) |
RISC는 단순화 개념에 따라, 주로 메모리 맵 입출력을 사용한다.
4. 직접 메모리 접근 (DMA)
데이터를 처리할 때, 마이크로프로세서가 개입해서 읽거나 쓰는 현상이 일반적이다. 그러나 많은 량의 데이터를 옮기거나 아니면 고속으로 옮기려면 직접 메모리 접근(DMA) 방식이 이것은 마이크로프로세서의 기계어 코드 실행없이 보조 하드웨어에 의해 직접 옮긴다.
메모리의 경우 마이크로프로세서와 버스를 공유하는 경우가 일반적이므로 경우에 따라 직접 메모리 접근 하드웨어가 작동할 때, 마이크로프로세서는 잠시 멈춘 상태로 유지 한다. 따라서 마이크로프로세서와 DMA간에 버스 소유권을 처리하는 방식이 필요하다. 임베디드에서는 CPU 코어와 입출력의 버스를 분리하는 경우가 일반적이다. 따라서 버스를 CPU와 분리하면 직접 전송 중에도 CPU가 멈추는 상황은 없을 수 있다.
메모리와 메모리, 입출력 장치와 메모리, 입출력과 입출력 간의 전송이 가능하다. 임베디드의 시스템에서 LCD 표시장치는 보통 그림용 저장메모리로부터 LCD표시 메모리로 직접 메모리 접근 방식으로 전송 한다.
4. 1. DMA의 동작 방식
데이터를 처리할 때, 마이크로프로세서가 개입해서 읽거나 쓰는 현상이 일반적이다. 그러나 많은 양의 데이터를 옮기거나 아니면 고속으로 옮기려면 직접 메모리 접근(DMA) 방식이 이것은 마이크로프로세서의 기계어 코드 실행없이 보조 하드웨어에 의해 직접 옮긴다.메모리의 경우 마이크로프로세서와 버스를 공유하는 경우가 일반적이므로 경우에 따라 직접 메모리 접근 하드웨어가 작동할 때, 마이크로프로세서는 잠시 멈춘 상태로 유지 한다. 따라서 마이크로프로세서와 DMA간에 버스 소유권을 처리하는 방식이 필요하다. 임베디드에서는 CPU 코어와 입출력의 버스를 분리하는 경우가 일반적이다. 따라서 버스를 CPU와 분리하면 직접 전송 중에도 CPU가 멈추는 상황은 없을 수 있다.
메모리와 메모리, 입출력 장치와 메모리, 입출력과 입출력 간의 전송이 가능하다. 임베디드의 시스템에서 LCD 표시장치는 보통 그림용 저장메모리로부터 LCD표시 메모리로 직접 메모리 접근 방식으로 전송 한다.
4. 2. DMA의 활용
데이터를 처리할 때, 마이크로프로세서가 개입해서 읽거나 쓰는 현상이 일반적이다. 그러나 많은 양의 데이터를 옮기거나 고속으로 옮길 때는 직접 메모리 접근(DMA) 방식을 활용한다. 이것은 마이크로프로세서의 기계어 코드 실행 없이 보조 하드웨어에 의해 직접 데이터를 옮기는 방식이다.메모리의 경우 마이크로프로세서와 버스를 공유하는 경우가 일반적이므로, DMA 하드웨어가 작동할 때 마이크로프로세서는 잠시 멈춘 상태로 유지된다. 따라서 마이크로프로세서와 DMA 간에 버스 소유권을 처리하는 방식이 필요하다. 임베디드 시스템에서는 CPU 코어와 입출력의 버스를 분리하는 경우가 일반적이다. 버스를 CPU와 분리하면 직접 전송 중에도 CPU가 멈추는 상황은 없을 수 있다.
메모리와 메모리, 입출력 장치와 메모리, 입출력과 입출력 간의 전송이 가능하다. 임베디드 시스템에서 LCD 표시 장치는 보통 그림용 저장 메모리로부터 LCD 표시 메모리로 직접 메모리 접근 방식으로 전송한다.
4. 3. 버스 공유와 성능
데이터를 처리할 때, 마이크로프로세서가 개입해서 읽거나 쓰는 현상이 일반적이다. 그러나 많은 양의 데이터를 옮기거나 고속으로 옮길 때는 직접 메모리 접근(DMA) 방식을 사용한다. 직접 메모리 접근 방식은 마이크로프로세서의 기계어 코드 실행 없이 보조 하드웨어에 의해 직접 데이터를 옮긴다.메모리의 경우 마이크로프로세서와 버스를 공유하는 경우가 일반적이므로, 직접 메모리 접근 하드웨어가 작동할 때 마이크로프로세서는 잠시 멈춘 상태로 유지된다. 따라서 마이크로프로세서와 DMA 간에 버스 소유권을 처리하는 방식이 필요하다. 임베디드에서는 CPU 코어와 입출력의 버스를 분리하는 경우가 일반적이다. 버스를 CPU와 분리하면 직접 전송 중에도 CPU가 멈추는 상황은 없을 수 있다.
메모리와 메모리, 입출력 장치와 메모리, 입출력과 입출력 간의 전송이 가능하다. 임베디드 시스템에서 LCD 표시장치는 보통 그림용 저장메모리로부터 LCD표시 메모리로 직접 메모리 접근 방식으로 전송한다.
참조
[1]
웹사이트
액세스
http://krdic.naver.c[...]
[2]
웹인용
Microprocessor and Random Access Memory
http://keeleong.trip[...]
[3]
웹인용
Z80 사용 설명서
http://www.zilog.com[...]
2020-07-09
[4]
서적
Microprocessor and Interfaces
https://books.google[...]
Technical Publications Pune
2020-07-09
[5]
웹인용
Intel 64 & IA-32 명령어 집합
http://www.intel.com[...]
2015-06-25
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com
