dongdorodongdong
제어 데이터 정의 - 제어장치가 제어 신호를 발생하기 위한 자료 - CPU가 특정한 Major State와 Timing State에 있을 때 제어 자료에 따른 제어 규칙에 의해 제어 신호가 발생 종류 - Major State사이의 변천을 제어하는 데이터 - CPU의 제어점을 제어하는 데이터 - Instruction 수행 순서를 결정하는 데 필요한 데이터 구분 Fetch Indirect Execute Interrupt State간 변천 명령어 종류 주소지정방식 주소지정방식 인터럽트 요청 신청 X 제어점 제어 명령어 유효주소 명령어의 연산자 인터럽트 체제에 따라 다름 수행 순서 제어 PC X PC 인터럽트 체제에 따라 다름 제어 장치 정의 - 필요한 마이크로 연산들이 연속적으로 수행될 수 있도록 제어 신호를..
Major State정의 - CPU의 상태를 나타내며 Fetch, Indirect, Execute, Interrupt의 상태가 있음 - 4가지 단계를 반복적으로 거치며 동작을 수행 - Major Cycle 또는 Machine Cycle이라고도 함 특징 - Major State Register를 통해 알 수 있음 Fetch (인출 단계) 정의 - 명령어를 주기억장치에서 IR(명령 레지스터)로 가져와 해독하는 단계 특징 - 해석된 명령어가 1Cycle 명령이면 이를 수행한 후 다시 Fetch Cycle로 변천 - 1Cycle 명령이 아니면 해석된 명령어의 Mode bit에 따라 직접주소와 간접주소를 판단 "Mode bit 0 : 직접주소, Execute 단계로 변천" "Mode bit 1 : 간접주소, In..
Micro Operation정의 - Instruction을 수행하기 위해 CPU 내의 레지스터와 플래그가 의미 있는 상태 변환을 하도록 하는 동작 - 하나의 Clock Pulse 단위로 실행되는 기본 동작 - Instruction 실행과정에서 한 단계씩 이루어지는 동작으로, 한 개의 Instruction은 여러 개의 마이크로 오퍼레이션이 동작되어 실행 특징 - 모든 마이크로 오퍼레이션은 CPU의 Clock 펄스에 맞춰 실행 제어 신호 - 다양한 종류가 있는 마이크로 오퍼레이션들의 순서를 결정하기 위하여 제어장치가 발생하는 신호 제어워드 - 레지스터의 선택과 산술 논리 연산장치의 역할을 결정 - 어떤 마이크로 연산을 할 것인가를 결정하는 비트의 모임 - 마이크로 명령어라고도 함 마이크로 프로그램 - 어떤 ..
3주소 명령어 정의 - Operand부가 세 개로 구성되는 명령어 형식 OP Code Operand 1 Operand 2 Operand 3 특징 - 여러 개의 범용레지스터를 가진 컴퓨터에서 사용 - 연산의 결과는 주로 Operand 1에 기록 장점 - 연산 시 원래의 자료를 파괴하지 않음 - 다른 형식의 명령어 보다 프로그램 전체의 길이를 짧게 가능 - 명령 인출을 위하여 주기억장치를 접근하는 횟수가 줄어듬 단점 - 명령어 한 개의 길이가 너무 김 - 하나의 명령을 수행하기 위해 최소 4번의 기억장치 접근이 필요함 2주소 명령어 정의 - Operand부가 두 개로 구성되는 명령어 형식 - 가장 일반적으로 사용되는 형식 OP Code Operand 1 Operand 2 특징 - 여러 개의 범용레지스터를 가..
OP Code (연산자부)함수 연산 기능 - 산술 연산 (ADD, SUB, MUL, DIV, 산술SHIFT 등) - 논리 연산 (NOT, AND, OR, XOR, 논리SHIFT, ROTATE, COMPLEMENT, CLEAR 등) 자료 전달 기능 - LOAD "기억장치에 있는 정보를 CPU로 꺼내오는 명령" - STORE "CPU에 있는 정보를 기억장치에 기억시키는 명령" - MOVE "레지스터 간에 자료를 전달하는 명령" - PUSH "자료를 스택에 저장하는 명령" - POP "자료를 스택에서 꺼내오는 명령" 제어 기능 - 무조건 분기 명령 (GOTO, JMP 등) - 조건 분기 명령 (IF, SPA, SNA, SZA 등) - CALL "부 프로그램 호출" - RETURN "부 프로그램에서 메인 프로그..
제어 장치정의 - 컴퓨터에 있는 모든 장치들의 동작을 지시하고 제어하는 장치 - 주기억장치에서 읽어 들인 명령어를 해독하여 해당하는 장치에게 제어 신호를 보내 정확하게 수행하도록 지시 구성 요소 - 명령 레지스터 "현재 실행중인 명령어의 내용을 기억" - 명령 해독기 "명령 레지스터에 있는 명령어를 해독" - 제어신호 발생기, 부호기 "해독된 명령에 따라 각 장치로 보낼 제어 신호를 생성" - 제어주소 레지스터 "다음에 실행할 마이크로 명령어의 주소를 저장하는 레지스터" - 제어 버퍼 레지스터 "제어 기억장치로부터 읽혀진 마이크로 명령어 비트들을 일시적으로 저장하는 레지스터" - 제어 기억장치 "마이크로 명령어들로 이루어진 마이크로 프로그램을 저장하는 내부 기억장치" - 순서 제어 모듈 "마이크로 명령어..
BCD 코드정의 - 10진수 1자리의 수를 2진수 4Bit로 표현 - 8421 코드라고도 함 - 대표 가중치 코드 Excess-3 코드정의 - BCD + 3 코드 - 대표 비가중치 코드 - 10000~0010 (10진수 0~2) 는 표현할 수 없고 3부터 표현 가능 예시 - 0 -> 0011 - 1 -> 0100 Gray 코드정의 - BCD 인접 비트 XOR 연산 - 1Bit만 변화시켜 다음 수치로 증가시키기 때문에 H/W 오류가 적음 패리티 검사 코드정의 - 코드의 오류를 검사하기 위해서 데이터 비트 외에 1Bit 패리티 체크 비트를 추가하는 것으로 1Bit의 오류만 검출 가능 홀수 패리티 - 1인 Bit의 수가 홀수가 되도록 0이나 1을 추가 짝수 패리티 - 1인 Bit의 수가 짝수가 되도록 0이나 ..
보수정의 - 컴퓨터가 기본적으로 수행하는 덧셈 회로를 이용하여 뺄셈을 수행하기 위해 사용 r의 보수 "보수를 구할 숫자의 자릿수만큼 0을 채우고 가장 왼쪽에 1을 추가하여 기준을 만듬" - 33의 10의 보수 > 33 + X = 100 X = 67 - 10101의 2의 보수 > 10101 + X = 100000 X = 01011 r-1의 보수 "주어진 숫자의 자릿수만큼 9, 1을 채워 기준을 만듬" - 33의 9의 보수 > 33 + X = 99 X = 66 - 10101의 1의 보수 > 10101 + X = 11111 X = 01010 특징 - 2의 보수 표현법이 1의 보수 표현법에 비해 음수 표현 시 숫자 1개를 더 표현할 수 있어서 널리 사용 - 추가로, 0이 하나만 존재하기 때문에 0의 판단이 쉽다..
자료 구성 단위비트 - 자료 표현의 최소 단위 - 2진수 1자리 니블 - 4개의 Bit 바이트 - 8개의 Bit - 문자 표현의 최소 단위 워드 - CPU가 한 번에 처리할 수 있는 명령 단위 - 반워드 : 2Byte(16bit) - 풀워드 : 4Byte(32bit) - 더블워드 : 8Byte(64bit) 필드 - 파일 구성의 최소 단위 - 의미 있는 정보를 표현하는 최소 단위 레코드 - 하나 이상의 관련된 필드가 모여서 구성 - 컴퓨터 내부의 자료 처리 단위 블록 = 물리 레코드 - 하나 이상의 논리레코드가 모여서 구성 - 각종 저장 매체와의 I/O 단위 파일 - 프로그램 구성의 기본 단위 - 여러 레코드가 모여서 구성 데이터베이스 - 여러개의 관련된 파일이 모여서 구성
불대수 기본 공식교환 법칙 A+B = B+A 결합 법칙 A+(B+C) = (A+B)+C 분배 법칙 A · (B+C) = A · B + A · C 멱등 법칙 A+A = A A · A = A 보수 법칙 A + A^ = 1 A · A^ = 0 항등 법칙 A + 0 = A A + 1 = 1 A · 0 = 0 A · 1 = A 드모르강 법칙 A^+B^ = (A · B)^ A^ · B^ = (A+B)^ 논리식 간소화합의 곱 표현을 곱의 합 표현으로 변환 - (A+B)(C+D)를 AC+AD+BC+BD로 표현 공통 인수를 뽑아 묶음 불대수 기본 공식을 활용해 줄여 나감 카르노 맵 이용 - 설계 된 논리식을 도표로 표현하여 최소화 하는 방법 - 1이 입력되어 이웃하는 칸을 최대 2^n개로 묶음 - 1묶음의 칸이 많을수록..
I/O 장치정의 - 키보드, 마우스처럼 프로그램에 자료를 전송하는 장치 - 프린터, 모니터는 출력 장치 I/O 인터페이스 - 서로 다른 컴퓨터 내부의 주기억장치, CPU의 레지스터와 외부 I/O 장치간의 정보를 원활하게 전송하기 위한 방법을 제공 - 컴퓨터와 주변 장치와의 차이점을 해결하는 것이 목적 I/O 제어장치 - I/O 장치와 컴퓨터 사이의 자료 전송을 제어 - 데이터 버퍼 레지스터를 이용하여 두 장치간의 속도차를 조절 - 제어 신호의 논리적, 물리적 변환과 오류를 제어 - DMA, 채널, I/O프로세서, I/O 컴퓨터 등 I/O 버스 - 주기억장치, I/O 장치 사이의 데이터 전송을 위한 연결 버스 * Strobe Pulse - 데이터 버스, 1 개의 제어선- 두 개의 독립적인 장치 사이의 비동..
Programmed I/O 제어특징 - CPU가 상태 플래그를 조사하여 I/O 작업을 완료하였는지 조사 - I/O가 완료 되었으면 MDR, AC사이의 자료 전송을 처리하는 방식 - I/O 작업 시 CPU는 계속 I/O 작업에 관여해야 하기 때문에 다른 작업을 할 수 없음 구성 - MDR - 장치 번호 디코더 - 플래그 Interrupt I/O제어특징 - CPU가 상태 플래그를 조사하지 않고 데이터를 전송할 준비가 되면 I/O 인터페이스가 컴퓨터에게 인터럽트 신호를 보내서 I/O - CPU가 계속 플래그를 조사하지 않기 때문에 Programmed I/O보다 효율적 DMA (Direct Memory Access) I/O 제어 특징 - I/O 장치가 직접 주기억장치로 접근하여 I/O - CPU 레지스터를 경유..
Interrupt정의 - 컴퓨터 프로그램을 실행하는 중에 예기치 못한 상황이 발생할 경우 진행중인 작업을 중단하고, 발생된 긴급 상황을 우선 처리한 후 원래 실행하던 작업으로 복귀하여 계속해서 진행 특징 - 인터럽트 서비스 루틴을 실행할 때, 인터럽트 Flag를 0으로 하면 인터럽트 발생을 방지 - 인터럽트 발생 시 CPU는 다음 사항을 확인 > PC의 내용 > 사용한 모든 레지스터의 내용 > 상태 조건의 내용(PSW) 종류 - 외부 인터럽트 (CPU의 H/W 신호에 의해 발생 > 전원 이상 인터럽트 "정전, 전원 이상" > 기계 착오 인터럽트 "CPU의 기능적인 오류가 발생" > 외부 신호 인터럽트 "외부 장치로부터 인터럽트 요청" "키보드로 인터럽트 키를 누른 경우" "타이머에 의해 규정된 시간을 알..
구성형식 - 연산 종류, 주소 결정 방식, 주소 필드로 구성OP Code (연산자부) - 수행 할 연산자를 표시 - OP code가 6bit일 때 명령어 종류의 갯수는 64개(=2^6) Mode (모드부) - 주소 필드의 주소 결정하는 방식 - 직접 모드(모든 비트 0)와 간접 모드(모든 비트 1) Operand (자료부) - 메모리 주소, 레지스터 번호 등 실제 데이터에 대한 정보를 표시 - Operand가 16bit일 때 최대 메모리 용량은 64K word(=2^16) 설계 시 고려사항연산자의 수와 종류 - 해당 컴퓨터가 시스템에서 처리할 기능에 맞게 연산자의 수와 종류를 결정 주소 지정 방식 - 명령어가 사용할 자료의 위치를 표현하기 위한 방법을 결정 데이터 구조(워드의 크기) - 해당 컴퓨터 시스..
기본 회로AND - 입력 신호가 모두1일 때 1 OR - 입력 신호 중 1개만 1이어도 1 NOT - 입력된 정보를 반대로 출력 BUFFER - 입력된 정보를 그대로 출력 XOR - 입력되는 것이 모두 같으면 0 조합논리회로반가산기 - 2진수 두 개를 덧셈한 합(S)과 올림수(C)를 구하는 회로 전가산기 - 2진수 세 개를 덧셈한 합(S)과 올림수(C)를 구하는 회로 - 반가산기 + 반가산기 + OR 디코더 - n Bit의 정보를 2^n개의 출력으로 번역하는 회로 - 번역하니 다양한 결과가 나옴 - 주로 AND 게이트로 구성 인코더 - 2^n개의 입력으로 n개의 출력을 하는 회로 멀티플렉서 - 2^n개의 입력선 중 선택 신호에 맞게 1개를 선택하여 출력으로 내보내는 회로 디멀티플렉서 - 2^n개의 출력선..
병렬 처리정의 - 다수의 프로세서에서 동시에 여러 작업을 처리하는 것 특징 - 일부 H/W의 오류가 발생해도 전체 시스템은 동작 - 빠름 - 기억장치 공유 - 프로그램 작성이 어려움 - 일기예보, 인공지능, 군장비 등에 적용 분류 1. SISD - 단일 명령어 / 단일 데이터 흐름 2. SIMD - array(배열) - 단일 명령어 / 다중 데이터 흐름 3. MISD - 실제 구현X - 다중 명령어 / 단일 데이터 흐름 4. MIMD - 다중 처리기 - 다중 컴퓨터 - 다중 명령어 / 다중 데이터 흐름 파이프라인 (Pipeline)정의 - CPU의 처리속도를 높이기 위해 여러개의 명령을 동시에 병렬 처리하는 장치 특징 - 연속적으로 결과를 얻을 수 있어 연산 속도가 빠름 벡터 프로세서 (Vector Pr..
특성 결정 요소기억 용량 - 사용 목적에 다라 성능당 경비 비율이 적은 것을 사용하는 것이 바람직 Access Time - 읽기 요청이 발생한 시간 ~ 요구한 정보를 꺼내 사용 가능할 때까지의 시간 - 한 Word 단위의 정보를 읽거나 기록하는 데 걸리는 시간 - Seek Time + Latency Time + Transmission Time Cycle Time - 기억장치에 읽기 신호를 보낸 후 다시 읽기 신호를 보낼 수 있을 때까지의 시간 간격 - Cycle Time >= Access Time Bandwidth - 메모리로부터 또는 메모리까지 1초 동안 전송되는 최대한의 정보량 - 기억장치의 자료 처리 속도를 나타내는 단위 - Word의 길이가 작을수록 대역폭이 좋음 - H/W 특성상 주기억장치가 제..