8051/PIC > 1. 8051 내부구조

TODAY907 TOTAL611,492
사이트 이용안내
Login▼/회원가입
최신글보기 질문게시판 기술자료 동영상강좌

아두이노 센서 ATMEGA128 PWM LED 초음파 AVR 블루투스 LCD UART 모터 적외선


BASIC4MCU | 8051/PIC | 8051 | 1. 8051 내부구조

페이지 정보

작성자 키트 작성일2017-09-12 10:43 조회614회 댓글0건

본문

1. 8051 내부 구조

 

1.중앙 연산 처리 장치 (CPU)

CPU는 9051의 머리로서 사용자의 프로그램을 읽어서 그 명령을 해독하고 실행하는 장소이다. CPU의 구성요소로는 8비트의 논리 연산장치(ALU) 및 그것에 붙어있는 각종 레지스터, A, B 레지스터, PSW, SP, 10비트 프로그램 카운터(PC), 데이터 포인터 등이 있다.

(1) 명령 디코더 (CU : Control Unit) 혹은 명령 해독기

CPU의 명령 디코더는 각 명령을 해독하여, 실제로 그 명령을 실행해서 완료할 때까지 필요한 CPU 내부 신호를 만들어서, 주어진 기능을 완료시키는 부분이다. 이와같이 CPU 내부 신호에는 소스 및 목적지 오퍼런드를 제어하는 신호와 산술논리 연산장치의 동작을 제어하는 신호 등이 있다.

(2) 프로그램 카운터(PC : Program Counter)

프로그램 카운터는 프로그램 메모리에 저장되어 있는 명령의 실행순서를 정하는 10비트 레지스터이며, 실행시킬 명령이 기억되어 있는 어드레스를 가리키고 있다. 프로그램 카운터는 점프/콜 등의 명령을 사용해서 변경시킬 수 있다.

(3) ALU (Arithmetic Logic Unit)

ALU는 그 이름이 의미하듯이 8비트의 변수에 대해서 산술 및 논리 연산을 하는 곳이다. ALU는 다음과 같은 기능을 갖고 있다.

(a) 캐리없는 덧셈, 캐리있는 덧셈/뺄셈

(b) 8비트/10비트 인크리먼ㅌ, 8비트 디그리먼트

(c) BCD(Binary Coded Decimal) 10진 조정

(d) 곱셈/나눗셈

(e) AND, OR EX-NOR, 로테이트

(f) 바이트 컴플리먼트(1의 보수), 비트 컴플리먼트

(g) 니블(nibble)단위 데이터 교환 및 바이트 단위의 데이터 교환

(h) 조건 브랜치 등의 판단 등이 있다.

8051의 중요한 특징의 하나로서, ALU에서 비트 처리 능력이 있다는 것이다. 즉, ALU는 8비트 데이터뿐만이 아니라, 1비트도 똑같이 취급할 수 있다. 8비트 레지스터내의 각 비트를 각각 셋, 리셋 또는 보수, 전송, 테스트 등의 논리연산까지도 똑같이 할 수 있다.

(4) 어큐물레이터 (Accumulator)

8051에서 가장 많이 사용하는 레지스터 중의 하나인 어큐물레이터는 다음과 같이 사용한다.

(a) 덧셈/뺄셈, 곱셈/나눗셈 등의 산술연산 명령 등에서, 명령실행에 필요한 1개의 오퍼런드를 입력

하기도 하고, 또 명령실행이 끝나면, 그 결과를 기억하고 있게되는 데에도 사용한다.

(b) 논리, 연산, 명령 등의 오퍼런드로도 사용한다.

(c) 데이터 참조 등에서 테이블 번지의 옵셋(offset)으로 사용한다.

(d) 외부 확장 데이터 RAM과 데이터 전송에도 사용한다.

(e) 프로그램 메모리에서 데이터를 읽을 때도 사용한다.

(f) 로테이트, 패리티 계산, 제로 테스트 등의 명령 등에서도 사용한다.

(5) PSW (Program State Word)

많은 명령 등은 스테터 플래그에 직접 또는 간접적으로 영향을 주기도 하고, 또 경우에 따라서는 영향을 받기도 한다. 이런 플래그를 갖고 있는 레지스터를 프로그램 스테터스 워드 (PSW)라 부른다.

3660040644_JtvAkHTw_8051_1_1.jpg

(a) 캐리 플래그(C-플래그) : 덧셈/뺄셈 및 로테이트 명령을 1 바이트 이상 확장해서 실행할 경우에

사용한다. 또 불 대수 처리에 불 연산용의 어큐물레이터로 사용할 때는 1비트 논리 연산 및 비트

처리에도 사용된다.

(b) 오버플로 플래그(OV-플래그) : 부호 있는 정수연산에서, 오버플로가 검출하면 셋되어, 2의 보수연

산을 할 수 있다.

(c) 패리티 플래그 (P-플래그) : 한 명령을 실행한 후, 어큐물레이터의 데이터에서 1의 개수가 짝수면

리셋되고 홀수면 셋된다.

(d) RS0, RS1 : 레지스터 뱅크 비트라 부르며, 8051에 있는 4개의 뱅크 중에서 현재 사용중인 뱅크를

가리키게 된다. 이 RS0, RS1 비트는 CPU가 하드웨어로 제어하는 것이 아니고, 레지스터 뱅크를

선택할 경우 소프트웨어로 결정하는 것이다.

 

http://jungtaemin.cafe24.com/bbs/view.php?id=8051_board&page=1&sn1=&divpage=1&sn=off&ss=on&sc=on&select_arrange=headnum&desc=asc&no=11

댓글 0

조회수 614

등록된 댓글이 없습니다.

8051/PICHOME > 8051/PIC > 전체 목록

8051/PIC 목록
제목 작성자 작성일 조회
현재글 8051 1. 8051 내부구조 이미지 키트 17-09-12 615
108 8051 8051 개요 이미지 키트 17-09-12 527
107 8051 3. 8051의 인터페이스 이미지 키트 17-09-12 537
106 8051 AT89S 시리즈 타겟 ISP 기본 회로도 키트 17-09-12 440
105 8051 keil 8051을 이용한 FND 6자리 시계구현 키트 17-09-12 499
104 8051 8051 6자리 세그먼트 keil 시계 키트 17-09-12 372
103 8051 PWM 0~200kHz 영역의 주파수를 측정 이미지 키트 17-09-12 793
102 8051 8051 4x3 매트릭스 키 스캔 키트 17-09-12 339
101 8051 SE-BATCAR 라인트레이서 조립 KIT - 대만 MEGAWIN 사의 RISC 형 8051 이미지 키트 17-09-12 595
100 8051 코드변경 8051 ==>AVR (출력 포트) 키트 17-09-12 322
99 8051 89S51 실습보드 dip스위치로 led제어 키트 17-09-12 361
98 8051 8051 Architecture - Datasheets - Atmel 키트 17-09-12 299
97 8051 LED 순차점등 키트 17-09-12 486
96 8051 win51 신호등 키트 17-09-12 305
95 8051 초보자를 위한 8051 시계키트 강좌 (3) - C소스분석 키트 17-09-12 352
게시물 검색

2019년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2018년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
Privacy Policy
MCU BASIC ⓒ 2017
모바일버전으로보기