250 likes | 1.04k Views
컴퓨터시스템구조 – 5 장 기본 컴퓨터의 구조와 설계. Prof. 강 의 성 순천대학교 컴퓨터교육과 http://nova.sunchon.ac.kr magasa@sunchon.ac.kr Tel. 061-750-3344. 5.1 명령어 코드. 컴퓨터 구조 내부 레지스터 타이밍과 제어 구조 명령어 집합 특수 목적 (special purpose) 디지털 시스템 마이크로 연산 시퀀스 (sequence) 가 하드웨어에 의해서 고정 탁상용 전자 계산기
E N D
컴퓨터시스템구조 – 5장 기본 컴퓨터의 구조와 설계 Prof. 강 의 성 순천대학교 컴퓨터교육과 http://nova.sunchon.ac.kr magasa@sunchon.ac.kr Tel. 061-750-3344
5.1 명령어 코드 • 컴퓨터 구조 • 내부 레지스터 • 타이밍과 제어 구조 • 명령어 집합 • 특수 목적 (special purpose) 디지털 시스템 • 마이크로 연산 시퀀스 (sequence)가 하드웨어에 의해서 고정 • 탁상용 전자 계산기 • 범용 (general purpose) 디지털 시스템 • 컴퓨터 명령어: 일련의 마이크로 연산을 기술한 이진 코드 • 컴퓨터 명령어는 데이타와 함께 메모리에 저장 • 제어신호는 메모리로부터 명령어를 읽어서 제어 레지스터에 갖다 놓는다 • 제어 신호는 명령어의 이진 코드를 해석하여 제어 함수를 발생시켜서 명령어 실행 • 내장 프로그램에 의해서 처리 과정 제어 프로그램: 사용자가 원하는 연산과 피연산자, 처리되는 순서를 기술한 명령어 집합
저장 프로그램 구조 • 누산기 (accumulator) • 지정 주소의 피연산자와 레지스터 사이의 마이크로 연산을 실행하는 프로세서 레지스터 • 4096 워드의 기억장치: 12비트 주소 필요
5.3 컴퓨터 명령어 • 기본적인 세 가지 명령어 코드 형식 • Opcode: 3 비트 • 메모리 주소: 12 비트 • 주소 모드: 1 비트 • 데이터 처리에 필요한 명령어의 종류 • 산술, 논리, 시트프 명령어 • 메모리와 프로세서 레지스터 간의 정보 이동 명령어 • 상태조건 검사 명령어, 프로그램 제어 명령어 • 입출력 명령어
5.4 타이밍과 제어 (1) • 제어 장치 • 하드와이어 (hardwired) 제어방식 • 게이트, 플립플롭, 디코더 등의 디지털 회로를 이용하여 구현 • 속도가 아주 빠름 • 설계가 변경되면 제어 장치를 새롭게 디자인 해야함 • 마이크로 프로그램 (micro-programmed) 제어 방식 • 메모리에 저장된 제어 정보를 이용하여 마이크로 프로그램 연산을 순차적으로 수행 • 컴퓨터 구조가 바뀌면 메모리 내의 마이크로 프로그램만 갱신
5.4 타이밍과 제어 (2) 0 0 0 0 D3T4:SC 0
5.5 명령어 사이클 (1) • 명령어 사이클 단계 • 명령어를 메모리에서 가져오기 (fetch) • 명령어 디코딩 (decoding) • 간접 주소 방식의 명령어일 경우, 메모리에서 유효 주소 읽어 오기 • 명령어의 실행 • Fetch와 디코드 • T0 : AR PC • 버스 선택 입력 (S2 S1 S0)을 010으로 하여 PC 내용이 버스에 놓이도록 한다 • AR의 LD 입력을 인에이블시켜서 버스의 내용을 AR로 전송 • T1 : IR M[AR], PC PC + 1 • 메모리 읽기 인에이블 • (S2 S1 S0) = 111 • IR의 LD 인에이블시켜 버스 내용을 IR로 전송 • PC의 값 증가 • T2 : D0, …, D7 Decode IR(12-14), AR IR (0-11), I IR (15)
Cont’d (2) • 명령어 종류의 결정
Cont’d (3) • 레지스터 참조 명령어
5.6 메모리 참조 명령어 • LDA • 그림 5-4, 5-6, 5-7 참조 • BSA
5.7 입출력과 인터럽트 (1) • 입력 • 키보드에서 문자가 입력되면 8비트 코드가 INPR에 시프트 • FGI 가 1로 세트 • FGI = 1인 동안은 입력 불가 • CPU는 FGI를 체크하여 1이면 INPR 내용을 AC로 전송 후 FGI를 클리어 • FGI = 0이면 키보드에서 새로운 문자 입력 가능 • 출력 • FGO가 1로 세트 • FGO = 1이면 AC로부터 OUTR로 정보 전송 후, FGO를 클리어 함 • FGO = 0인 동안 OUTR에 새로운 정보 넣지 못함 • FGO = 0이면 출력 장치는 OUTR의 정보를 출력 장치로 전송 • 정보 전송 후 FGO = 1로 세트
Cont’d (2) • 프로그램 제어 전송 (program controlled transfor) • 앞에서 설명한 주변 장치와의 통신 방법 • CPU는 10μs 동안 fetch와 실행 사이클을 수행, 입출력 장치는 0.1 초당 1개의 문자 처리 • 프로세서와 입출력 장치의 속도 차이로 인해서 비능률적 • 인터럽트 (interrupt) • 플래크를 계속 체크하는 대신 플래그가 세트되면 컴퓨터는 실행하고 있는 프로그램을 중지 • 입출력 처리 루틴 실행 • 입출력 처리 후 이전 실행 프로그램 계속 실행 • 인터럽트 인에이블 플립플롭 (interrupt enable flip-flop) • 플립플롭이 세트될 때만 인터럽트를 걸 수 있다.
5.9 기본 컴퓨터의 설계 • 레지스터와 메모리에 대한 설계