Blog16

고정 헤더 영역

글 제목

메뉴 레이어

Blog16

메뉴 리스트

  • 홈
  • 태그
  • 방명록
  • 분류 전체보기 (33)
    • 개발 (0)
      • 프로젝트 (0)
    • 자기계발 (0)
      • 독서 (0)
      • 유튜브 (0)
    • 전공 (33)
      • 확률과 통계 (14)
      • 컴퓨터 구조 (19)

검색 레이어

Blog16

검색 영역

컨텐츠 검색

전공/컴퓨터 구조

  • [컴퓨터 구조] 4.4 A Simple Implementation Scheme

    2020.10.26 by blacksmith16

  • [컴퓨터 구조] 4.3 Building a Datapath

    2020.10.25 by blacksmith16

  • [컴퓨터 구조] 4.2 Logic Design Conventions

    2020.10.25 by blacksmith16

  • [컴퓨터 구조] 4.1 Introduction

    2020.10.25 by blacksmith16

  • [컴퓨터 구조] 2.3 Operands of the Computer Hardware

    2020.10.25 by blacksmith16

  • [컴퓨터 구조] 2.2 Operations of the Computer Hardware

    2020.10.25 by blacksmith16

  • [컴퓨터 구조] 2.1 Introduction

    2020.10.25 by blacksmith16

  • [컴퓨터 구조] 1.10 Fallacies and Pitfalls

    2020.10.25 by blacksmith16

[컴퓨터 구조] 4.4 A Simple Implementation Scheme

ALU Control MIPS의 ALU는 4 bit Control 입력에 따라 어떤 연산을 할 지 결정한다. ALU Control Function Instruction 예시 0000 AND and 0001 OR or 0010 add lw, sw, add 0110 subtract sub, beq 0111 set-on-less-than slt 1100 NOR 위 표는 4 bit Control 신호에 따른 ALU 연산과 어떤 Instruction에서 그 연산이 사용되는 지를 정리한 것이다. 이 4 bit 신호는 ALU Control이라는 유닛에서 결정한다. opcode(Instruction) ALUOp Instruction 연산 Funct field ALU 연산 ALU Control LW 00 load wor..

전공/컴퓨터 구조 2020. 10. 26. 13:18

[컴퓨터 구조] 4.3 Building a Datapath

Datapath란 CPU에서 데이터와 주소를 처리하는 요소들을 말한다. 레지스터, ALU, MUX, 메모리 등이 Datapath라 할 수 있다. 지금부터는 lw, sw, add, sub, and, or, slt, beq, j 총 9가지 명령어를 수행할 수 있는 프로세서의 Datapath를 점점 완성해 나갈 것이다. Instruction Fetch 우선 모든 Instruction을 처리하기 위한 첫 단계인 Instruction Fetch를 먼저 살펴보자. 위 이미지 (강의 교재 figure 4.6) 의 요소들에 대해 간단하게 알아보자. PC : Program Counter. 실행할 명령어의 주소를 저장하고 있는 레지스터이다. State Element이기 때문에 이미지엔 없지만 Clock Input도 있다고..

전공/컴퓨터 구조 2020. 10. 25. 18:52

[컴퓨터 구조] 4.2 Logic Design Conventions

논리 설계에 대한 기본적인 내용과 Clocking에 대해 설명한다. Logic Design Basics MIPS의 datapath를 구현하는 데 필요한 Logic Element는 크게 두 가지로 나뉜다. Combinational Element 현재 주어진 입력 값에 따라 동작함 즉, 같은 입력이면 같은 출력이 나와야 함. AND 게이트, MUX, ALU 등 State(sequential) Element 상태를 저장하고 있음 주로 clock을 사용함 최소한 2 입력, 1 출력을 가짐 입력 : 저장할 데이터, clock(저장 여부 결정) 출력 : 이전 clock-cycle에서 저장되어 있던 값(상태) 단순한 형태로는 D flip-flop(이게 뭔지는 논리회로 때 들었을 걸로..)이 있음 Clocking Me..

전공/컴퓨터 구조 2020. 10. 25. 17:29

[컴퓨터 구조] 4.1 Introduction

챕터 4에서는 앞에서 배운 내용을 바탕으로 프로세서를 논리회로로 구현하는 법을 다룰 예정이다. 물론, MIPS Instruction set에 있는 모든 명령어를 실행할 수 있는 프로세서가 아닌 조금 더 단순화 된 몇 가지 기본 명령을 수행할 수 있는 것으로 진행한다. 그러고나서 4.5부터는 조금 더 현실적으로 "Pipeline"이라는 개념을 적용한 버전의 프로세서로 업그레이드 할 것이다. 일단 우리가 만들 프로세서가 수행할 수 있는 Instruction은 아래의 총 9개이다. Memory Reference : lw, sw Arithmetic / Logical : add, sub, and, or, slt Control Transfer : beq, j 아래 이미지 (강의 교재의 figure 4.17) 는 파..

전공/컴퓨터 구조 2020. 10. 25. 17:26

[컴퓨터 구조] 2.3 Operands of the Computer Hardware

Instruction의 피연산자로 올 수 있는 것들에 대해 알아본다. Register Operands Arithmetic Instruction은 레지스터 피연산자를 사용한다. 앞으로의 설명은 MIPS 아키텍쳐 기준으로 한다. 레지스터 : 프로세서에 존재하는 저장소 레지스터는 32 bit의 공간을 가진다. 32 bit 단위로 데이터를 자주 전달하기 때문에 1 word(= 32 bit) 라는 단위를 사용 32개 레지스터가 존재한다. 각 레지스터는 0 ~ 31의 번호가 붙어있다. 더 많은 레지스터를 만들 수는 있지만 비용, 성능 면에서 32개로 유지 어셈블러에선 레지스터에 용도에 맞는 이름을 붙이기도 한다. $t0, $t1, ..., $t9 : 임시(temporary) 값을 저장할 레지스터 $s0, $s1, ..

전공/컴퓨터 구조 2020. 10. 25. 17:12

[컴퓨터 구조] 2.2 Operations of the Computer Hardware

MIPS Arithmetic Operation add a, b, c 위 코드는 MIPS 산술 연산을 수행하는 어셈블리 코드이다. 이 코드는두 변수 b, c를 더한 값을 a에 저장하겠다는 의미이다. add와 같은 MIPS Arithmetic Operation은 세 변수를 피연산자로 가진다. 즉, C언어의 a = b + c + d + e;를 구현하고 싶다면 아래와 같이 Instruction을 사용해야 한다. add a, b, c # a = b + c add a, a, d # a = a + d add a, a, e # a = a + e 여기서 #은 어셈블리에서 주석의 시작을 나타내는 기호이며, 그 줄의 # 뒤부터는 주석으로 처리한다. 더 많은 피연산자를 구현하는 것은 물론 가능하지만, 하드웨어가 복잡해지기 때..

전공/컴퓨터 구조 2020. 10. 25. 16:57

[컴퓨터 구조] 2.1 Introduction

2장에서 다룰 내용에 대해 소개한다. Instruction Set 우리가 컴퓨터에게 명령을 할 때, Instruction을 사용한다. Instruction은 마치 컴퓨터 언어의 단어와 같은 역할을 한다. 이 Instruction을 정의하고 모아놓은 집합이 Instruction Set이다. 우리는 MIPS Instruction Set을 다룬다. 컴퓨터 설계의 목표 find a language that makes it easy to build the hardware and the compiler while maximizing performance and minimizing cost and energy => 최소 비용과 에너지로 최대 성능을 내는 것(단순한 instruction으로 효율적인 동작) MIPS I..

전공/컴퓨터 구조 2020. 10. 25. 16:54

[컴퓨터 구조] 1.10 Fallacies and Pitfalls

Fallacies(오류) and Pitfalls(함정) 부분은 매 단원마다 있으며, 여기서는 흔히 발생하는 착각이나 실수가 무엇인지 이야기한다. Pitfall: Amdahl's Law 일부의 성능을 향상시켰을 때, 전체 성능이 같은 비율로 향상될 것이라는 생각 $$ T_{improved} = \frac{T_{affected}}{(improvement\ factor)} + T_{unaffected} $$ => 영향 받은 요소에 대한 시간과 영향 받지 않은 요소의 시간을 분리해서 생각해야 한다. Example 곱하기 연산이 총 100s 실행시간 중 80s를 차지하고 있는 경우, 곱하기 성능을 5배 향상시키면 전체 성능이 5배가 될 수 있을까? No, 곱하기 성능이 5배가 되면 16s 실행시간을 가지게..

전공/컴퓨터 구조 2020. 10. 25. 16:37

추가 정보

인기글

최신글

페이징

이전
1 2 3
다음
TISTORY
Blog16 © Magazine Lab
페이스북 트위터 인스타그램 유투브 메일

티스토리툴바