ARCHITECTURE 7

[아키텍처] 반도체 기억장치와 설계

1. 반도체 기억장치 개요초기 컴퓨터의 주기억장치는 자기 코어(Magnetic Core) 방식이었지만, 미세전자공학(microelectronics) 기술의 발전으로 오늘날에는 반도체 기억장치(semiconductor memory) 칩이 주로 사용됨.주기억장치, 캐시, 비휘발성 저장 등에 다양한 형태의 반도체 메모리가 적용됨.2. RAM (Random Access Memory)1) RAM의 특징읽기/쓰기 모두 가능전기 신호로 동작하여 빠른 속도 제공휘발성: 전원이 꺼지면 데이터 소실RAM은 엄밀히 말하면 RWM(Read/Write Memory) 라는 용어가 더 적합함. 2) RAM의 동작 원리RAM은 주소와 제어 신호에 따라 동작 CS (Chip Select) RD (Read) WR (Write) 동..

ARCHITECTURE 2025.04.23

[아키텍처] 제어 유니트(Control Unit) 란?

1. 제어 유니트의 기능명령어 코드의 해독명령어 실행을 위한 제어 신호 생성  CPU 내에서 **명령어 사이클(인출 → 간접 → 실행 → 인터럽트)**이 순차적으로 수행되도록 제어 신호를 발생시킴. 마이크로연산(Micro-operation): 하나의 명령어 실행 과정에서 수행되는 가장 작은 동작 단위 (ex. MAR ← PC)마이크로명령어(Microinstruction): 마이크로연산을 2진 비트로 표현한 것 (제어 단어)마이크로프로그램(Microprogram): 마이크로명령어들의 집합루틴(Routine): CPU 기능별로 정의된 마이크로프로그램 단위즉, CPU 클록 주기마다 서로 다른 마이크로-연산이 수행됨.2. 제어 유니트의 구조 구성 요소기능 설명명령어 해독기IR의 연산 코드 해독 → 루틴 시작 주..

ARCHITECTURE 2025.04.09

[아키텍처] 명령어 세트(Instruction Set)과 인터럽트 사이클(Interrupt Cycle)

1. 인터럽트 사이클 (Interrupt Cycle)1) 인터럽트란?**인터럽트(interrupt)**는 프로그램 실행 중에 CPU가 현재 명령어의 흐름을 중단하고, 외부 장치나 내부 요청에 의해 다른 작업을 처리하도록 하는 메커니즘이러한 인터럽트가 들어오면 CPU는 현재 작업을 멈추고, 해당 요청을 처리하는 **인터럽트 서비스 루틴(ISR, Interrupt Service Routine)**을 실행ISR 실행이 끝난 후에는 원래 프로그램의 흐름으로 복귀하여 작업을 이어감.- 원래 상태로 돌아가기 위해서, 인터럽트 발생 시에 현재의 CPU 상태를 저장함.2) 인터럽트 사이클의 수행 조건CPU는 명령어 실행 사이클과 사이클 사이에 인터럽트 요청 신호가 있는지 검사함.- 인터럽트 사이클에는 현재의 PC 값을..

ARCHITECTURE 2025.04.09

[아키텍처] 명령어 형식과 주소지정 방식

1.  명령어 형식 (Instruction Format) 1) 명령어란?CPU가 수행할 명령의 집합으로, 다음과 같은 정보를 포함하고 있어야 함.연산 코드(Opcode): 수행할 연산 (예: ADD, LOAD)오퍼랜드(Operand): 연산에 필요한 데이터 또는 데이터의 위치(주소)다음 명령어 주소: (분기/호출 시에만 사용)2) 명령어는 어떻게 구성될까?명령어는 비트들로 이루어져 있으며, 연산 코드 필드, 오퍼랜드 필드 등으로 나뉨명령어 형식이란, 이 필드들의 개수, 배치, 비트 수를 정의한 것!보통 명령어의 길이는 CPU의 Word 크기와 같거나, 그 배수임.연산 코드의 비트 수는 CPU가 수행할 수 있는 연산들의 수를 결정해줌.위 예시에서는 연산 코드 필드의 길이가 4비트이므로, 16가지의 연산을 ..

ARCHITECTURE 2025.04.02

[아키텍처] 정수의 산술 연산과 부동소수점 수

1. 덧셈 (2의 보수 기반) signed number이기 때문에 올림수 Carray flag를 사용하지 않음.4비트의 덧셈은 병렬 가산기를 통해 수행됨.상태 레지스터에는 V(오버플러우 유무), Z(연산 결과가 0인지), S(부호), C(carry 올림수) 의 값들이 저장되는데.C4와 C3의 올림수의 값이 서로 다른 경우에 오버플러우가 발생함. 때문에 C3과 C4의 값을 XOR 연산(같으면 0, 다르면 1 반환 )을 통해 오버플러우 유무인 V가 결정!! (a)의 경우 C4 = 0, C3 = 1로 다르기 때문에 오버플로우가 발생!! -> V = 1(b)의 경우 C4 = 1, C3 = 0로 다르기 때문에 오버플로우가 발생!! -> V = 1 2. 뺄셈 (덧셈 + 2의 보수)뺄셈의 경우 더해지는 수를 2의 보..

ARCHITECTURE 2025.03.26

[아키텍처] 컴퓨터 산술과 논리 연산

1. 고정소수점 vs 부동소수점컴퓨터에서 숫자를 표현하는 방식은 크게 **고정소수점(Fixed-point)과 부동소수점(Floating-point)**으로 나뉨.1) 고정소수점(Fixed-point)소수점의 위치가 고정되어 있음.표현 방식: 1101., 0010.✅ 장점: 연산이 빠르고 단순함.❌ 단점: 표현 가능한 숫자의 범위가 작음.2) 부동소수점(Floating-point)소수점의 위치가 변할 수 있음.표현 방식: 1101., 001.0 (소수점이 다른 위치 가능)✅ 장점: 훨씬 더 큰 숫자와 작은 숫자를 표현 가능.❌ 단점: 연산이 복잡하고 속도가 느릴 수 있음.부동소수점 연산은 IEEE 754 표준을 따름.2. ALU(Arithmetic Logic Unit, 산술 논리 연산 장치) 구성 요소AL..

ARCHITECTURE 2025.03.19

[아키텍처] CPU의 구조와 동작 원리

1. CPU의 역할과 명령어 실행 과정CPU(중앙처리장치)는 기억장치에 저장된 명령어를 실행하여 프로그램을 수행하는 핵심 장치명령어 인출 (Instruction Fetch)기억장치에서 명령어를 가져옴.명령어 해독 (Instruction Decode)명령어를 분석하여 수행할 동작 결정.데이터 인출 (Data Fetch)명령어 실행을 위해 필요한 데이터를 기억장치 또는 I/O 장치에서 읽어옴.데이터 처리 (Data Process)연산 수행 (산술·논리 연산 등).데이터 저장 (Data Store)연산 결과를 저장.위 과정 중 1~2번 과정은 모든 명령어에서 수행되지만, 3~5번 과정은 명령어에 따라 선택적으로 수행2. CPU의 기본 구조CPU는 다음과 같은 주요 구성 요소로 이루어져 있음산술논리연산장치(AL..

ARCHITECTURE 2025.03.13