본문 바로가기

🏫학부 공부/컴퓨터구조6

[컴구] 메모리 계층구조 계층구조는 누가 관리하나? - Registers Memory : 컴파일러 - Cache Memory : 하드웨어 - Memory Disks : 하드웨어 & OS(VM), 프로그래머 메모리 계층 구조 Random Access - 접근 시간이 모두 같을 때 좋은 선택 - DRAM: Dynamic Random Access Memory - 고밀도, 저전력, 저렴, 느림 - SRAM: Static Random Access Memory - 저밀도, 고전력, 비쌈, 빠름 - Static: 전력끊기 전까지 내용 유지 Main Memory(DRAM) + Caches (SRAM) 지역성 원리 1. Temporal Locality(시간적 지역성) - 최근 access한 item은 조만간 다시 access 할 경향 2. Sp.. 2023. 12. 13.
[컴구] 프로세서 - 2 Pipelining - Non-stop: 2n/0.5n + 1.5 = 4 MIPS Pipeline Step 1. IF: Instruction Fetch from Memoty 2. ID : Instruction Decode & Register Read 3. EX : Execute Opration or Calculate Address 4. MEM : Access Memoty Operand 5. WB : Write Result Back to Register Pipeline 성능 [ 가정 ] - register Read, Write : 100ps - other : 200ps 위 표를 토대로 Single-Cycle과 Pipelined를 비교해보자. - Pipelined가 더 빠른 것을 쉽게 알 수 있음. [ 시간.. 2023. 11. 21.
[컴구] 프로세서 - 1 MIPS의 Type 명령어 실행 Program Counter: instruction Memory에서 Instruction Fetch Register Numbers: Register File, Read Registers에서 사용 Instruction Class에 따라 다음을 이용 ALU 사용 Load/Store을 통해 Data Memoty에 접근 PC상대주소법 사용 CPU의 전반적인 구조 여기서 충돌이 발생하는 지점에 MUX를 이용해 처리하면 된다. 이곳에 컨트롤까지 추가하면 설계가 완성된다. # 기본적인 이론 [ 정보를 이진으로 Encode 하는법 ] - Low Voltage = 0 / Higj Voltage = 1 - 1비트 당 하나의 wire [ Combinational element ] - 현재 주.. 2023. 11. 16.
[컴구] Multiplication and Division Arithmetic for Computers 정수의 연산자 덧셈, 뺄셈, 곱셈, 나눗셈 Overflow 처리 정수 덧셈 같은 부호를 더할때, Overflow 발생 가능 정수 뺄셈 다른 부호끼리 뺄때, Overflow 발생 가능 오버플로우 처리 C와 같은 언어들을 오버플로우를 무시한다. Ada같은 언어들은 예외 처리가 필요하다. Exception Handler을 통해 ㅇ/외처리 Arithmetic for Multimedia 그래픽과 미디어 처리를 위해 8비트, 16비트 벡터로 계산 (Carry 전달을 위해 64bit adder을 사용함 - 8*8, 4*16, ...) SIMD(Single Instcurtion, Multiple Data) : 여러 데이터를 하나의 명령어로 다루는 것을 의미 포화 연산: Ov.. 2023. 10. 21.
[컴구] 컴퓨터 추상화와 기술 컴퓨터와 추상화 프로그램의 종류 응용 소프트웨어 : 상위 수준의 언어 시스템 소프트웨어 컴파일러(상위 수준 언어를 하드웨어 언얼 변환) 운영체제(Service Code): 입출력 처리, 보조 기억장치 및 메모리 관리, Scheduling tasks & Sharing Resourses 하드웨어: 프로세서, 메모리, 입출력 컨트롤러 컴퓨터 5대 구성요소 입력장치 출력장치 메모리 제어유닛 데이터패스 컴퓨터 별 동일 요소 데스크탑 서버 임베디드 입출력 구성 UI 장치 - 모니터, 키보드, 마우스 저장장치 네트워크 추상화 : 복잡한 설계를 쉽게 하기 위해 하위 계층의 세부 사항을 숨기는 것 메모리의 종류 휘발성 메모리 : 전원이 공급된 상태에서만 데이터를 기억 비휘발성 메모리 : 자기 디스크, 광 디스크 성능 측.. 2023. 10. 21.
[컴구] 연산자와 피연산자 연산자 Arithmetic Operations - 덧셈, 뺄샘과 3개의 피연산자로 이루어진 연산자. add a, b, c # a= b+c C Language f = (g+h) - (i+j) MIPS add t0, g, h; add t1, i, j; sub f, t0, t1; 피연산자 1. Register Operands - MIPS는 피연산자의 제약이 많음. - Operand를 레지스터 사용. - MIPS 레지스터 파일은 32 x 32 (bit) add $t0, $s1, $s2 add $t1, $s3, $s4 sub $s0, $t0, $t1 2. Memory Operands - 구조체나 배열 같은 자료 구조는 레지스터로 감당 불가 (용량 작음) - 따라서, 메모리에 저장하여 사용. - 연산은 레지스터만 .. 2023. 10. 11.