Transcript 마이크로프로세서 개요
마이크로프로세서설계 – 1
마이크로프로세서 개요
시스템및센서네트워크연구실
1
마이크로프로세서(microprocessor)
마이크로프로세서
프로그램의 명령어를 처리하기 위한 장
치
컴퓨터의 중앙처리장치(Central
Processing Unit)를 단일 IC 칩에 집적시켜
만든 반도체 소자
단순히 프로세서 또는
MPU(MicroProcessing Unit)라고도 부름
1971년 미국 Intel사에서 세계 최초로 마
이크로프로세서 개발
시스템및센서네트워크연구실
2
마이크로컨트롤러(microcontroller)
마이크로컨트롤러
1개의 칩 내에 마이크로프로세서의 CPU 기능
과 함께 일정한 용량의 메모리(ROM, RAM)와
입출력 인터페이스 회로를 내장한 것
1970년대 중반부터 나타난 형태로서, 범용의
목적보다는 기기 제어용에 주로 사용
1개의 소자만으로 완전한 컴퓨터 시스템 기능
을 갖추고 있으므로, 단일 칩 마이크로컴퓨터
(single-chip microcomputer)라고 함
시스템및센서네트워크연구실
3
SoC (System on Chip)
SoC (System on Chip)
1개의 칩 안에 특정 기능의 시스템 내장
전자 기기의 소형화, 고기능화를 가능하게 하는 비메모리 반도체
CPU 코아(core), 모뎀 코아, 아날로그 회로, 내장형 메모리, 실시간 운영체
제, 내장형 S/W 등으로 구성
시스템및센서네트워크연구실
4
마이크로프로세서 분화 및 발전
범용 마이크로프로세서
(연산 및 데이터처리용)
고속처리 성능 강화
소프트웨어 호환성 희생
I/O 제어 기능 강화
시스템 저가격화
마이크로컨트롤러
(기기제어용용)
시스템및센서네트워크연구실
RISC 프로세서
(고성능 워크스테이션용)
연산 처리 성능 강화
일부 기능 축소
I/O 제어 기능 강화
시스템 저가격화
DSP
(실시간 디지털
신호처리용)
5
마이크로컨트롤러의 특성
소형화와 경량화
다양한 기능을 단일 칩에 집적시켜 구현하였기 때문에 제품 제작시 소형
화와 경량화를 실현할 수 있음
쉽고 편리한 개발
입출력, 인터럽트 처리, 비트 조작 명령어가 많아 프로그램 작성이 수월
하여 개발이 빠름
저가격
개발비, 부품비와 제작비를 감소시켜 제품의 가격을 저렴하게 할 수 있음
융통성
프로그램 변경 만으로 기능을 변경하거나 확장시키는 것을 짧은 시간 내
에 수월하게 할 수 있음
신뢰성
제품의 부품수를 줄일 수 있어 제품의 구성을 간단하게 하고 고장발생률
을 줄일 수 있으며, 고장시 유지보수가 쉬움
시스템및센서네트워크연구실
6
마이크로프로세서의 역사
1971년 : 4비트 마이크로프로세서 개발
인텔에서 4비트 마이크프로세서인 4004 발표
1970년 초반: 8비트 마이크로프로세서 개발
1972년 인텔에서 8비트 마이크로프로세서인 8080 발표
자일로그에서 Z80 발표
모토롤라(현재 프리스케일)에서 6800, 6809 발표
1970년 후반 : 16비트 마이크로프로세서 등장
인텔에서 8086 발표 : IBM PC에 채택
모토롤라에서 68000 발표 : 매킨토시 마이크로컴퓨터에 채택
1980년대 : 32비트 마이크로프로세서 등장
인텔에서 80386, 80486, 모토롤라에서 68020, 68040 등장
시스템및센서네트워크연구실
7
마이크로컨트롤러의 역사
1970년대
1975년 TI에서 TMS1000 시리즈 발표
1976년 인텔에서 산업용으로 CISC 구조인 MSC-48 발표
Z80이 타이머, 병렬 입출력, 직렬 입출력, ROM, RAM 등이 필요하였던
반면에, CPU를 보조하는 LSI들이 칩에 내장되어 있으므로, 매우 편리하
게 산업용으로 사용 가능
1980년대
인텔에서 1981년에 MSC-51 발표
• 대다수 8051 시리즈의 시초
마이크로칩에서 1988년 PIC 시리즈 발표
1990년대
Atmel에서 1997년 RISC 구조인 AVR 시리즈 발표
시스템및센서네트워크연구실
8
마이크로컨트롤러 관련 용어
메모리
RAM (Random Access Memory)
• 휘발성 메모리로 전원이 차단될 경우 데이터가 소멸
• 읽고 쓰는 속도가 매우 빠름
• SRAM (Static RAM)
메모리의 사용이 비교적 단순하고, 속도가 매우 빠름
ROM (Read Only Memory)
• 비휘발성 메모리로 전원이 차단되어도 기존에 기억하고 있는 데이터
가 그대로 보존되는 특징을 가짐
• EEPROM (Electrically Erasable Programmable ROM)
정상전압보다 높은 고전압을 이용하여 데이터를 지울 수 있는 특징을 가진
EPROM (메모리 속에 저장된 내용을 지우고 재사용할 수 있는 ROM)
시스템및센서네트워크연구실
9
Cash Memory
• SRAM으로 구성된 메모리로 가격이 상당히 비쌈
• 빠른 속도로 처리가 가능
• MCU에서 처리 속도가 빠른 마이크로프로세서와 상대적으로 처리가
속도가 느린 외부의 주메모리 또는 보조기억장치에서 발생되는 데이
터 처리속도의 손실을 줄이고자 할 때 사용
Flash Memory
• 전원이 끊겨도 저장된 정보가 지워지지 않는 기억장치
• ROM의 특징과 동일
• MCU에서 프로그램을 저장하는 역할
시스템및센서네트워크연구실
10
CISC와 RISC 구조
CISC 구조 : 8051 계열
• 소프트웨어 특히 컴파일러 작성을 쉽게 하기 위해 하드웨어화할 수
있는 것은 모두 하드웨어에 맡기는 방법을 택한 구조
• 아주 복잡한 처리도 한 개의 명령으로 수행 가능
• 명령어에 따라 수행되는 사이클 수가 다름
RISC 구조 : AVR, PIC, DSP 계열
• 범용 마이크로프로세서의 명령 세트를 축소하여 설계한 구조
• 복잡한 처리는 소프트웨어에게 맡기는 방법을 택한 구조
• 명령어로 처리할 수 있는 작업은 제한적이지만, 대단히 빠른 속도로
작업을 수행할 수 있음
• 코드의 크기를 줄일 수 있음
시스템및센서네트워크연구실
11
폰 노이만 구조와 하바드 구조
폰 노이만 구조 (CISC 구조에서 주로 사용)
• 일반 메모리를 프로그램과 데이터가 혼재할 수 있는 구조
• 주소 버스와 데이터 버스를 모든 메모리 소자들이 공유
하바드 구조 (RISC 구조에서 주로 사용)
• 프로그램 메모리와 데이터 메모리가 분리되어 있음
• 프로그램 메모리와 데이터 메모리에서 주소 버스 및 데이터 버스가
완전히 분리되어 있음
• 고속 동작이 가능
폰 노이만 구조
시스템및센서네트워크연구실
하바드 구조
12
파이프라인 구조
하바드 구조에서 주로 채택
파이프라인을 이용하여 동시에 여러 개의 명령을 처리
패치(명령 인출)와 실행이 동시에 실시됨
이론상 속도가 2배 가까이 빨라짐
시스템및센서네트워크연구실
13
MIPS (Million Instructions Per Second)
1초당 100만개 단위의 명령어 연산이란 뜻으로, 컴퓨터의 연산 속도를 나
타내는 단위
16MIPS라는 것은 1초에 1600만개의 명령어를 처리한다는 것임
시스템및센서네트워크연구실
14