컴퓨터구조 (10) 썸네일형 리스트형 1. Basic Concepts and Computer Evolution 컴퓨터 구조 컴퓨터의 기본 기능 데이터 처리 데이터 저장 데이터 이동 제어 컴퓨터의 주요 구성 요소 CPU Main memory I/O CPU의 주요 구성 요소 Control Unit : 동작을 제어하는 장치 ALU : 데이터 연산 장치 Register : CPU 내부 저장 공간 무어의 법칙(Moore's Law) 하나의 프로세서 칩 내부의 트랜지스터의 개수는 매년 두배씩 증가한다. 2. Performance Issue Microprocessor Speed 성능 향상을 위해 사용되는 현대 프로세서의 기술 Pipelining : 명령어를 병렬 처리하는 방식 Branch Prediction(분기 예측) : 다음 진행될 분기를 미리 예측한다. Superscalar Execution : 처리 장치를 여러개 두어 한 사이클 당 수행 가능한 명령어가 많아짐 Data flow analysis : 프로세서가 흐름을 파악해 명령어 순서를 최적화함. Speculative Execution : 필요한 정보를 미리 예측함. 암달의 법칙(Amdahl' Law) 컴퓨터 시스템 일부를 개선했을 때 전체적으로 어느정도의 성능 향상이 있는지 확인하는데 쓰인다. Execution time 기계 명령어로 된 프로그램의 수행 시간 MIPS 초당 백만개의 .. 5. Internal Memory DRAM (Dynamic RAM) 전기를 통해 충전하는 방식을 이용하여 데이터를 저장한다. 시간이 지남에 따라 전하량이 줄어드는 것을 방지하기 위해 refresh 작업이 필요하다. 특징 용량 대비 가격이 저렴하다. Refresh 작업이 필요하다. Main mermoy로 주로 사용된다. Interleaved Memory 주기억장치를 접근하는 속도를 빠르게 하는데 사용된다. 메모리 인터리빙 기법은 인접한 메모리 위치를 서로 다른 뱅크(bank)에 둠으로써 동시에 여러 곳을 접근할 수 있게 하는 것이다. 메모리 인터리빙은 블록 단위 전송이 가능하게 하므로 캐시나 기억장치와 주변장치 사이의 빠른 데이터 전송을 위한 DMA(Direct Memory Access)에서 많이 사용한다. SRAM (Static RAM).. 7. I/O (Input/Output) I/O Module 실제 I/O Device들은 I/O Module에 연결되어 있는 구조이다. I/O Module이 I/O device와 다른 컴퓨터 내부 장치들과의 상호작용에 기여한다. I/O Module을 사용하는 이유 I/O 장치들의 속도가 다양함 데이터의 형태가 모두 다름. I/O Device의 발전 Programmed I/O Interrupt-driven I/O DMA (I/O Processor) Check status CPU I/O I/O Transfer data CPU CPU I/O ▶ Programmed I/O 와 Interrupt-driven I/O는 전송 속도가 제한되고 CPU가 I/O장치를 지속적으로 관리해야 되기 때문에 좋지 않다. * Direct Cache Access : I/O가.. 10. Computer Arithmetic 정수 표현 방식 1. Sign-Magnitude Representation 사람과 같이 수를 표현하는 방법. 양수, 음수 표현이 쉬우나 0을 표현이 두가지이고 덧셈과 뺄셈을 부호와 숫자 따로 계산해야 한다. 2. Twos Complement Representation 양수나 음수 값이 있을 때 0, 1의 값을 바꾸고 1을 더하는 방식. 0의 표현이 1가지 이고 비트 수를 늘리고 싶을 때 sign(부호) 앞에 같은 sign 값을 개수만큼 늘리면 된다. Overflow가 발생할 가능성이 있다. Subtraction rule : 컴퓨터가 뺄셈을 하지 않게됨. Overflow rule 같은 부호의 합의 결과로 carry가 나온 경우. 부호를 제외한 숫자들의 합에 carry가 나온경우(=부호가 바뀐 경우). 앞의.. 11. Instruction Set : Characteristrics and Function Instruction(명령어) 구성요소 Opcode Operand1 Reference Operand2 Reference Operand3 Reference Next Instruction Opcode : 수행해야 할 Code Operand1,2 reference : 수행해야 할 Data의 위치 정보 Operand3 reference : 저장할 위치정보 Next Instruction : 다음 수행할 명령어 * Operand가 저장된 위치 Main memory, I/O device Register Immediate value Endian Support -Little endian 낮은 자릿수를 높은 주소에 저장. -Big endian 높은 자릿수를 높은 주소에 저장 Shift and Rotate Operation.. 12. Instruction Sets : Addressing Modes and Formats Addressing mode 명령어를 수행하는 과정에서 피연산자를 fetch하기 위해 캐시 혹은 메모리에 접근하는 방식 종류 Mode 접근 방식 장점 단점 Immediate Operand에 값이 들어감 실행속도가 빠름 표현 가능한 데이터 크기가 제한적이다. Direct Operand에 실제 값의 주소 메모리 참조 1회 주소 공간에 제약이 있다. Indirect Operand에 실제 값의 주소의 주소 주소 공간에 제약이 없다. 메모리에 참조 2회. 느리다. Register Operand에 레지스터에 존재하는 값의 주소 실행속도가 빠르다. 주소 공간이 짧다 주소 공간이 제한적임. Indirect Register Operand에 레지스터 주소가 있고 레지스터에는 메모리에 있는 값의 주소가 있음. 주소 공간이 .. 13. RISC vs CISC RISC(Reduced Instruction Set Computer) 명령어 개수가 적고, 간단하다. 파이프라인 구조를 사용하기에 더욱 적합하다. 특징 고정적 크기를 가진다. 파이프라인에 적합하다. 주소 접근 방식이 간단하고 적다. 레지스터의 수가 많다. Hardwired Control Unit을 사용한다. CISC(Complex Instruction Set Computer) 명령어가 복잡하고 많다. 하나의 명령어로 많은 연산을 수행한다. 특징 가변적 크기를 가진다. 주소 접근 방식이 많다. 레지스터 수가 적다 μ-programmed Control Unit을 사용한다. 이전 1 2 다음