[컴퓨터구조] #1 컴퓨터구조

2023. 4. 15. 15:02·전공/컴퓨터구조
728x90
반응형

컴퓨터구조

노이만구조

- 프로그램과 데이터가 같은 메모리 공간에 저장

- 명령어와 데이터가 위치에 따라 의미가 달라짐

 

하버드구조

- 프로그램 메모리와 데이터 메모리가 분리

- 메모리주소에 따라 같은 데이터가 의미 달라지지 않음

 

현재의 컴퓨터구조 -> 메모리: 노이만, 캐시:하버드

 

컴퓨터 언어

저수준언어 - 2진수 기계어, 어셈블리

중수준언어 - C (하드웨어 접근 허용)

고수준언어 - Java, Python (하드웨어 직접 접근X)

 

H/W

- ALU/FPU/barrel shifter

- DSP/Accelerator

 

클럭스피드/워드사이클

  • 클럭 - 특정 신호(메인보드)
  • 클럭 스피드 - cpu의 동작 속도를 나타내는 척도
  • 워드 - cpu가 한 번에 처리할 수 있는 데이터 처리량(8bit/16bit …)
  • 사이클(=펄스) - 신호 주기 ex) 4.9 GHz
  • 실제 성능(=실제 처리량) = 워드 * 사이클 수

 

CISC vs RISC

CISC - 명령어마다 실행시간 다름

RISC - 명령어마다 실행시간 동일, 복잡한 연산은 명령어를 조합

 

마이크로 프로그래밍

어셈블리 코드를 실행하도록 컴퓨터 구조의 각 세부 노드를 조정

(cpu 안의 모듈을 어떻게 제어할 것인지)

 

ISA(Instruction set architecture)

마이크로프로세서가 인식하여 기능을 이해하고 실행할 수 있는 기계어 명령어(명령어 집합 구조)

- ex) x86(cisc), ARM(risc)

 

어셈블리 프로그램을 작성하기 위해 알아야 하는 정보

- 명령어, 레지스터, 메모리 접근 방식, I/O 등을 포함한 컴퓨터 아키텍처

 

ABI(Application Binary Interface)

명령어 집합 + 운영체제 인터페이스

최종 바이너리 프로그램 그대로 쓸 수 없음

 

메모리의 종류

Ram Rom
여러번 쓸 수 있음 읽기만 가능
속도 빠름 속도 느림
  EPROM(삭제 가능), EEPROM(전기적→삭제 가능)

Flash memory

- EEPROM 변형 + 속도 개선

- 소자 하나에 여러 비트 기록 가능

  • SLC(0, 1)
  • MLC(00, 01, 10, 11)
  • TLC(000, 001, … , 111)
  • QLC(0000, 0001, … , 11111)

위쪽일수록 속도, 수명 높음

 

메모리 계층 구조

SRAM(속도 빠름)

  • Flip-Flop을 기본 소자로 한 combinational logic
  • ex) cache

DRAM(속도 느림)

  • RLC 중 Capacitor를 기반으로 리프레시 필요
  • ex) 일반 주기억 장치

 

레지스터 → SRAM → RAM → Flash memory → 하드디스크

←← 속도 빠름 ←←

 

반도체

어떤 때는 전기가 통하고 어떤 때는 전기가 안 통하는 물질

  • 기능
    • Switch
    • Amplifier (적은 양 → 많은 양 컨트롤

 

  • 무어의 법칙
    • <<1년마다 칩에 집적되는 소자 수가 2배가 된다>>
    • 반도체의 트랜지스터 집적도의 증가도에 관한 법칙)
    • 초기 1년에 2배 →18개월 2배 → 2년에 2배 → … →4년에 2배

 

  • 생산
    • 실리콘 결정괴 → 실리콘 웨이퍼 → 패터링 → dicer → dics테스트 → 패키징 → 테스트 → 쉬핑
    • 양품률(=수율) - 전체 다이 중 양호한 다이의 비율
    • 다이원가 = 웨이퍼당 가격/(웨이버당 다이수*수율)

 

2023.04.25 - [컴퓨터구조] - [컴퓨터구조] #1 컴퓨터구조 - 추가 사설 문제

 

[컴퓨터구조] #1 컴퓨터구조 추가 사설 문제

문제 폰 노이만 구조와 하버드 구조의 차이점은 무엇인가요? 컴퓨터 언어의 다양한 수준과 하드웨어 접근 방식의 차이점은 무엇인가요? CISC와 RISC의 차이점은 무엇인가요? 마이크로프로그래밍

campus-coder.tistory.com

 

728x90
반응형

'전공 > 컴퓨터구조' 카테고리의 다른 글

[컴퓨터구조] #6 단일 사이클 구현 1  (0) 2023.04.23
[컴퓨터구조] #5 프로세서  (0) 2023.04.15
[컴퓨터구조] #4 컴퓨터 연산  (0) 2023.04.15
[컴퓨터구조] #3 명령어 종류, 기능과 형식  (0) 2023.04.15
[컴퓨터구조] #2 성능평가  (0) 2023.04.15
'전공/컴퓨터구조' 카테고리의 다른 글
  • [컴퓨터구조] #5 프로세서
  • [컴퓨터구조] #4 컴퓨터 연산
  • [컴퓨터구조] #3 명령어 종류, 기능과 형식
  • [컴퓨터구조] #2 성능평가
dev_ares
dev_ares
대학에서 컴퓨터공학을 전공하고 있는 학생입니다.
    반응형
    250x250
  • dev_ares
    노트
    dev_ares
  • 전체
    오늘
    어제
    • 분류 전체보기 (188)
      • IT 트랜드 (2)
      • 백엔드 (18)
        • Java + Spring (8)
        • Kotlin + Spring (5)
        • 백엔드 (5)
      • 프론트엔드 (1)
        • React (1)
      • 대외활동 (17)
        • 42서울 (17)
      • 백준 (6)
        • Java (2)
        • C++ (3)
      • 전공 (121)
        • 객체지향프로그래밍 (17)
        • 자료구조 (23)
        • 리눅스시스템관리 (16)
        • 컴퓨터구조 (25)
        • 네트워크 (25)
        • 데이터베이스 (15)
        • 기타 전공 (0)
      • 프로그래밍 언어 (18)
        • Java (5)
        • Swift (4)
        • C++ (1)
        • Kotlin (8)
      • 기타 (4)
      • 공군 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    컴공 포트폴리오
    자바
    추가 문제
    사설 문제
    단일 사이클
    메모리 계층 구조
    상속
    C++
    명령어
    42서울
    코틀린
    오블완
    티스토리챌린지
    백준
    리눅스
    컴퓨터 구조 및 설계
    데이터패스
    컴퓨터구조
    반복자
    자료구조
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
dev_ares
[컴퓨터구조] #1 컴퓨터구조
상단으로

티스토리툴바