Download presentation
Presentation is loading. Please wait.
1
디지털 시스템 2010년 1학기 교수: 송상훈 연구실: 율곡관 603-B
Office Hour: 화, 목 14:00 ~ 15:00
2
성적 평가: 교재: 중간 시험 : 30% 기말 시험 : 30% 프로젝트 및 숙제 : 30% 출석 10%
중간 시험 : 30% 기말 시험 : 30% 프로젝트 및 숙제 : 30% 출석 10% 교재: “디지털 논리설계” 최종필 외 6인 역(Alan B. Marcovitz) [한국맥그로힐]
3
강의내용 수 체계 스위칭대수와 논리회로 간소화 기법(karnaugh map) 대형 조합회로 순차회로 해석 및 설계
2진수, 8진수, 16진수 Signed number, 2’s complement BCD 스위칭대수와 논리회로 Boolean expression, gate, truth table 간소화 기법(karnaugh map) Minimizing logic circuits SOP, POS 대형 조합회로 Adder, decoder, encoder, multiplexer ROM, PLA, PAL 순차회로 해석 및 설계 Latch, Flop Flop Design and analysis of synchronous sequential system Shift register, counter
4
Chapter 1 Introduction 수 체계 2진수, 8진수, 16진수
Signed number, 2’s complement BCD 및 다른 코드
5
Digital: discrete values Analog: continuous values
Digital Vs. Analog 1 t V Digital: discrete values Analog: continuous values
6
논리회로 설계 두가지 신호 값: 0, 1 입력: (A, B, …) 클럭(clock) - 규칙적으로 0과 1값을 반복적으로 발생
두가지 신호 값: 0, 1 입력: (A, B, …) 클럭(clock) - 규칙적으로 0과 1값을 반복적으로 발생 출력 : (W, X, …)
7
2 진 값의 물리적 표현 두 가지의 전압( 0V, 5V) 스위치의 위와 아래 방향 전등의 on과 off 자계의 두 방향
8
디지털 시스템 동작 표현 방법 진리표 형태 대수식 형태 회로도
9
진리표에 의한 시스템 동작 표현 예제 1.1 세 개의 입력 A, B, C와 한 개의 출력 Z를 갖는 시스템은 두개의 입력이 1일 때만 Z=1이다. 진리표 A B C Z 1
10
조합회로와 순서회로 조합회로(combinational circuit) 순서회로(sequential circuit)
출력이 입력의 현재 값에만 의존한다 예제 1.1에서 A, B, C의 현재 값을 안다면, Z가 지금 어떤 값을 갖는 지를 결정할 수 있다. 순서회로(sequential circuit) 출력이 현재 입력만이 아니고 과거의 입력에도 영향을 받는다. 즉, 과거의 입력 상태들을 알아야 하기 때문에 메모리(memory)가 필요하게 된다.
11
순서회로의 예 예제 1.3 하나의 입력 A와 클럭, 그리고 하나의 출력 Z로 구성된 시스템에서 마지막 3개의 연속된 클럭에서 입력이 1일 때만 출력이 1이 된다.
12
실습 Bread Board 를 이용한 하드웨어 방법 Bread Board 시뮬레이터: WinBreadBoard
MaxPlus II 시뮬레이터
13
WinBreadBoard
14
MaxPlusII
15
수 체계(number system) 정수 표현(Integers using positional number systems)
N=an-1rn-1 + an-2rn-2 +…+ a2r2 + a1r + a0 n: number of digits, r: radix(base) ai: coefficients ai < r bits =binary+digits
16
Positional Number System
764210= 7103+6 10+2 = 1 24 + 123 + 122 + 12 + 1 = = 4710 2의 지수승 값이 자주 사용된다.
17
Binary number system Note: N bit 양의 정수의 범위: n-1 2n – 1 = 111….1
18
10진수에서 2진수로 변환 예제 1.6: 2의 지수 승 값을 이용
예제 1.6: 2의 지수 승 값을 이용 29 = 512, 28 = 256, 27 = 128, 26 = 64, .. 74610 = 74610 = 1 28 + 127 + 126 + 125 + 024 +123 + 022 +12+0 = 예제 1.7: 2 로 계속 나누면서 나머지를 취함 105/2=52 rem 52/2=26 rem 26/2=13 rem 13=1101 이기 때문에
19
16진수 (Hexadecimal) 16진수: 9보다 큰 숫자는 첫 영문자 6개를 사용 10 A 11 B 12 C 13 D
15 F 예제 1.9: 2 진수에서 16진수로 변환 = = 2EA16
20
16진수 변환 (Hexadecimal) 예제 1.10: 16진수에서 10진수로 변환
2EA16 = 2 = = 74610 예제 1.11: 10진수에서 16진수로 변환 746/16= 나머지 A 46/16= 나머지 EA 2/16= 나머지 2EA16
21
2 진 덧셈 (Binary Addition) 예제 1.12 1 1 0 1 1 0 6 0 1 1 1 7 1 1 0 1 13
한 비트씩 덧셈: 합 비트(sum bit) 와 캐리 비트 발생 오버플로우(Overflow): 연산결과가 숫자범위를 벗어날때 예) 두개의 n 비트 정수를 더할때, (n+1) 비트 결과 값이 될 때.
22
1bit 가산기 진리표 cin a b cout s
23
4비트 가산기 C0 는 0 이다.
24
부호화 수 (signed number) 무부호화 수(unsigned numbers) : 양의 정수 ( positive integers) 부호화 수 (signed numbers) : 양수 와 음수 (positive and negative numbers) 부호화 수를 나타내는 방법 Signed magnitude Two’s complement One’s complement
25
Signed Magnitude(부호화 크기)
첫번째 비트는 부호를 나타낸다. ( 양수=0, 음수=1) +5 1011
26
2의 보수 (2’s complement) 부호화 수의 대부분은 2의 보수 형태를 사용한다.
음수에 대한 2의 보수 형태를 구하는 3단계 크기에 해당하는 2 진수 값을 찾는다. 각 비트에 대한 보수를 취한다. 1을 더한다. 예제 1.15 5: : : -5: :
27
4 비트의 부호화 수와 무부호화 수
28
오버플로우 예제 1.16: overflow +5 0101 +4 0100 (0) 1001 (looks like –7)
(0) (looks like –7) 예제 1.17: overflow (1) (looks like +7)
29
2진수 뺄셈 뺄셈: 2의 보수를 취하여 더한다. a-b = a+(-b) 예제 1.18 : 7 - 5
5: : : (1) 0010 -5:
30
오버플로우 예제 1.21: 무부호화 수의 오버플로우 부호화 수의 오버플로우 5-7 7-(-5) 1 1 0101 0111
(-5) (0) (a) (b)
31
BCD: Binary Coded Decimal
*가중치 (weighted) 코드: 8421, 5421, 2421 코드
32
ASCII 코드
33
Gray 코드
Similar presentations