이 영역을 누르면 첫 페이지로 이동
컴퓨터와 수학, 몽상 조금 블로그의 첫 페이지로 이동

컴퓨터와 수학, 몽상 조금

페이지 맨 위로 올라가기

컴퓨터와 수학, 몽상 조금

컴퓨터공학, 딥러닝, 수학 등을 다룹니다.

학부 수업/디지털시스템

  • 컴퓨터와 수학, 몽상 조금
12. 인코더 (Encoder)

12. 인코더 (Encoder)

2020.05.15
인코더는 디코더의 반대로, $2^n$개의 입력을 받아 그에 대응하는 이진 출력을 만드는 회로이다. 대표적인 인코더로 8진수 -> 2진수 변환기가 있다. 인코더는 주로 하나의 1을 갖는 이진 신호를 대응하는 2진수로 변환하는데, 아래는 4진수 -> 2진수 변환기의 예시이다. In 0 In 1 In 2 In 3 Out 1 Out 2 1 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 1 0 0 0 0 1 1 1 $2^n$ to $n$ 인코더의 문제 입력에 1이 여러개이거나, 하나도 없는 모호성 문제가 발생할 수 있다. 이를 해결하기 위해 출력에 우선순위를 주는 방법이 가장 자주 사용된다. 혹은, 오류가 발생한 상황에 invalid input 에러를 위한 출력을 따로 만들어도 된다. 이 경우 인코더의 출..
11. 디코더 (Decoder)

11. 디코더 (Decoder)

2020.05.15
CPU는 산술 논리 장치ALU와 컨트롤 유닛CU, 메모리인 레지스터Register로 구성된다. ALU는 입력에 대한 산술 연산과 논리 연산을 처리하는 장치로, CU로부터 전달된 Select 신호에 따라, 적절한 연산을 수행한다. (예를들어, 00이 들어오면 AND 연산, 01이 들어오면 OR 연산 등 CU가 원하는 연산을 처리해준다.) CPU의 레지스터는 CPU 아키텍처마다 다른 크기를 갖는데, 8bit ~ 64bit의 값을 갖는다. 컴퓨터의 주기억장치(RAM)에서 전달된 정보는 연산을 위해 Register로 옮겨지는데, 데이터는 Register에 저장되었디가 MUX를 거쳐 ALU로 전달되고, deMUX를 거쳐 출력된다. CPU에서 데이터가 Register로 전달될 때, Register의 적절한 위치에 ..
10. 자리올림수 예측 가산기 (Carry look Ahead Full Adder)

10. 자리올림수 예측 가산기 (Carry look Ahead Full Adder)

2020.05.12
전가산기를 이용한 이진수의 덧셈 연산의 경우, 앞 비트의 전가산기 연산이 끝나 Carry가 얻어지기 전에는 다음 비트의 계산을 수행할 수 없어, 숫자가 커질수록 연산에 시간이 많이 소요되는 단점이 있다. 이를 해결하기 위해 모든 자리의 덧셈을 한번에 할 수 있도록 한 것이 자리올림수 예측 계산기이다. 입력 A/B에 대하여 자리올림수 예측 가산기는 다음의 연산을 수행해 G와 P를 구한다. $$ G(A,B) = A\cdot B \\ P(A,B) = A\oplus B $$ G는 자리올림수 생성generation이라 불리며, 기존의 연산과 관계 없이 반드시 carry가 생기는 경우, A와 B가 모두 1인 경우를 확인한다. P는 자리올림수 전파propagation라 불리며, 추가로 carry가 생길 경우를 검사한..
9. 가산기와 오버플로 (Adder and Overflow)

9. 가산기와 오버플로 (Adder and Overflow)

2020.04.24
가산기와 감산기는 컴퓨터 시스템에서 중요한 역할을 하는데, 이진수를 서로 더하거나 빼는 역할을 한다. 하나의 가산기는 한 비트에 대응하며, 16비트 연산을 위해서는 1비트 가산기 16개가 필요하다. 가산기는 반가산기와 전가산기로 나뉜다. 반 가산기Half Adder 두 2진수의 덧셈을 수행하고, 합sum과 자리올림수carry를 출력한다. $$ S = x \oplus y \\ C = xy $$ $x$ $y$ $C$ $S$ 0 0 0 0 0 1 0 1 1 0 0 1 1 1 1 0 반 가산기는 한 자리 2진수를 계산하는 데 쓸 수 있지만, 여러 자리를 계산하기 위해서는 두 정수 뿐만 아니라 지난 자리의 정수, 즉 carry 까지 고려를 해야하기 때문에 사용할 수 없다. 여러 자리의 2진수 덧셈을 위한 것이 바..
8. 조합 회로의 분석 (Combinational Circuit)

8. 조합 회로의 분석 (Combinational Circuit)

2020.04.24
조합 회로란 결과값이 입력값에 의해서만 결정되는 논리 회로이다. n개의 이진 입력은 $2^n$ 개의 가능한 조합을 가진다. m개의 이진 출력은 각 입력마다 존재하여 $2^n \times m$개의 조합을 가진다. m개의 출력을 갖는 조합회로는 m개의 부울 함수를 갖는다. 조합 회로의 분석 각 게이트의 출력을 심볼로 나타낸다. 각 게이트의 부울 함수를 찾는다. $$ T_1 = (xy)' \\ T_2 = (xT_1)' $$ 출력을 부울 함수의 조합으로 나타내고 단순화 한다. $$ F_1 = (T_2T_3)' = ((xT_1)'(yT_1)')' = (xT_1)+(yT_1) = x(xy)' + y(xy)' = \cdots = x \oplus y $$ 조합 회로의 설계 조합 회로의 디자인은 아래 과정을 거친다. 명..
7. 범용 게이트 (Universal Gates)

7. 범용 게이트 (Universal Gates)

2020.04.24
NAND와 NOR 게이트를 범용 게이트Universal Gates라고 부른다. 이는 NAND 또는 NOR 게이트 만을 이용해서 AND, OR, NOT 게이트를 모두 구현할 수 있기 때문이다. AND-OR (SOP) 서킷은 NAND-NAND 서킷으로 나타낼 수 있다. OR-AND (POS) 서킷은 NOR-NOR 서킷으로 나타낼 수 있다. NOT, OR, AND 게이트를 NAND로 나타내기 NAND 게이트는 AND 게이트에 NOT을 붙이거나, 입력들에 NOT을 붙인 OR 연산과 같다. $$ (xyz)' = x'+y'+z' $$ SOP (Minterm)를 NAND로 나타내는 법. 각 minterm에 AND-NOT을 붙이고 합을 invert-OR로 사용하면 NAND를 이용한 SOP 표현이 가능하다. NOT, O..
6.SOP, POS 단순화와 카르노 맵 (Karnaugh Map)

6.SOP, POS 단순화와 카르노 맵 (Karnaugh Map)

2020.04.15
Canonical Form 지난 강의에서 배웠듯, 불 연산을 SOP나 POS로 나타내는 것을 Canonical Form이라 한다. Sum of product form(SOP) 변수들을 곱하고(AND) 이 것들을 모두 더한다(OR). $ \text{eg:} f = AB + CDE $ Product of sum(POS) 변수들을 더하고(OR) 이들을 곱한다(AND). $ \text{eg:} f = (A+B)(C+D+E) $ 드 모르간 법칙을 이용하면 두 표현을 서로 바꿀 수 있다. Canonical Form은 효율적이지 않지만 때때로 분석과 디자인에 용이할 때가 있다. Canonical Form의 장점은 모든 변수들이 어떻게 변화하는지 알 수 있다는 것이다. 각 변수는 생략될 때가 많지만 아래와 같이 복원할..
5. 불 대수 (Boolean Algebra)

5. 불 대수 (Boolean Algebra)

2020.04.11
불 대수란, 어떤 명제의 참과 거짓을 이진수 1과 0에 대응시켜 명제와 명제간의 관계를 수학적으로 표현하는 학문이다. 대수학이란? 대수학Algebra은 아래의 요소를 포함한다. 다루는 요소 (Boolean, Linear, etc..) 연산자 공리와 가정 (Axioms and Postulates) 이는 우리가 다루는 요소를 어떻게 다뤄야 할지를 정의하는 학문이기 때문에 중요하다. Switching Expression vs Schematic Diagram 불 대수를 표현하는 방법으로는 Switching Expression이 사용된다. 잠시 전에 배운 논리 회로와 이를 비교해보자. 각 게이트는 3개의 핀(입출력)을 갖는다. 게이트를 이용한 위 논리 회로에는 총 9개의 signal net과 12개의 핀, 4개의..
4. 디지털 논리 회로 (Logic Gates)

4. 디지털 논리 회로 (Logic Gates)

2020.04.11
디지털 신호는 0과 1, 켜짐과 꺼짐, 높음과 낮음 등으로 표현된다. 이러한 신호를 다루는 회로들을 디지털 논리 회로라 한다. 이 회로들은 간단한 심볼로 회로도에 표기되며(IEEE Std 91), 이론상 AND, OR, NOT 게이트만으로 모든 논리 회로를 구현할 수 있다. NOT 혹은 Inverter ($\overline{x}$) NOT 게이트, 혹은 inverter는 입력을 반전시킨다. 0이 들어오면 1을, 1이 들어오면 0을 반환한다. AND / 논리곱 ($\cdot$) AND 게이트는 입력이 모두 1일때만 1을 반환한다. OR / 논리합 ($+$) OR 게이트는 입력 중 1개 이상이 1이면 1을 반환한다. NAND NAND 게이트는 AND에 NOT을 붙인 게이트이다. 입력이 모두 1일때만 0을 반..
3. 부동소수점을 활용한 실수 표현 (IEEE 754 Standard Float)

3. 부동소수점을 활용한 실수 표현 (IEEE 754 Standard Float)

2020.04.11
실수 정수는 이산적이지만, 실수는 연속적이다. 컴퓨터 공학에서, 실수는 Floating Point Numbers라고도 불린다. 아주 크거나 아주 작은 값을 가질 수 있다. $4,123,122,321.2$ $0.0000000000002$ Scientific Notation (과학적 기수법) 실수를 아래와 같이 나타낼 수 있다. $ \begin{align*} 11000.1 &= 11000.1 \times 2^0\\ &= 1100.01 \times 2^1\\ &= 110.001 \times 2^2\\ &= 11.0001 \times 2^3\\ &= 1.10001 \times 2^4\\ \end{align*} $ 정수 부분을 1만 남도록 옮긴 상태를 Scientific Notation이라 한다. Scientif..
2. 수 체계: 진수 변환과 이진수의 실수/음수 표현(Number System)

2. 수 체계: 진수 변환과 이진수의 실수/음수 표현(Number System)

2020.04.11
컴퓨터에서의 수 체계 컴퓨터에서는 크게 4가지 수 체계를 사용한다. 10진수 2진수 8진수 16진수 $a$진수는 $a$의 $n$승을 하나의 자리로 가지는데, 예를 들어 10진수 213은 아래와 같다. $213_{(10)} = 2 \times 10^2 + 1 \times 10^1 + 3 \times 10^0$ 이진수에서의 실수 이진수에서의 실수 표현도 다른 수 체계와 다르지 않다. 소수점 아래로 내려간 자리들은 $2$의 $-n$승의 값을 갖는다. 예를들어, $101.101_{(2)}$는 아래와 같다. $\begin{align*} 101.101_{(2)} &= (1 \times 2^2) + (0 \times 2^1) + (1 \times 2^0) + (1 \times 2^{-1}) + (0 \times 2^..
1. 디지털 시스템 개요

1. 디지털 시스템 개요

2020.04.10
디지털 시스템의 학습 목표 디지털 디자인의 기본 원리를 학습한다. 매우 복잡한 디자인을 체계적으로 디버깅하는 방법을 배운다. 디지털 시스템을 디자인하고 만들어본다. 전자 회로 내부의 상세한 동작 원리를 살펴본다. 미래의 기술 혁명을 대비한다. 조합 회로Combinational Logic vs 순차 회로Sequential Networks 조합 논리 회로에서는 항상 입력에 따라 출력이 결정되는 반면, 순차 논리 회로에서는 출력에 메모리의 상태, 즉, 주기적인 클럭(CLK)이 추가로 영향을 끼친다. 클럭은 메모리 내부에서 주기적으로 변화하는 값으로, 이를 출력에 고려한다는 것은 연산에 시간의 개념을 더하는 것이다. 학습 과정 주제 구성 요소 관련 학문 Combinational Logic AND,OR,NOT,X..
  • 최신
    • 1
    • 2
    • 3
  • 다음

정보

컴퓨터와 수학, 몽상 조금 블로그의 첫 페이지로 이동

컴퓨터와 수학, 몽상 조금

  • 컴퓨터와 수학, 몽상 조금의 첫 페이지로 이동

검색

메뉴

  • 홈
  • 태그
  • 방명록

카테고리

  • 분류 전체보기 (276)
    • Tech Trend (3)
    • Deep Learning (77)
      • 공부 노트 (21)
      • 논문 리뷰 (44)
      • 논문 스키밍 (1)
      • 영상처리 (11)
    • Engineering (3)
      • Tips (2)
      • Experiences (1)
    • Blog (42)
      • 회고 & 계획 (16)
      • 내 이야기 (8)
      • 리뷰 (3)
      • 군대에 간 공돌이 (9)
      • ML엔지니어 취업 도전기 (1)
      • 여행 (4)
    • 학부 수업 (141)
      • 머신러닝 (16)
      • C프로그래밍 (8)
      • 자료구조 (11)
      • 알고리즘 (17)
      • 디지털시스템 (25)
      • 컴퓨터구조 (11)
      • 확률과 통계 (21)
      • 선형대수학 (14)
      • 이산수학 (18)
      • 데이터시각화 (0)
    • 강의 (9)
      • 딥러닝 기초 (7)
      • Python (2)

공지사항

인기 글

정보

백지오의 컴퓨터와 수학, 몽상 조금

컴퓨터와 수학, 몽상 조금

백지오

블로그 구독하기

  • 구독하기
  • RSS 피드

티스토리

  • 티스토리 홈
  • 이 블로그 관리하기
  • 글쓰기
반응형

나의 외부 링크

  • profile
  • github
  • linkedin

방문자

  • 전체 방문자
  • 오늘
  • 어제
Powered by Tistory / Kakao. © 백지오. Designed by Fraccino.

티스토리툴바