디지털 시스템 20 10 년 1학기 교수: 송상훈 연구실: 율곡관 603- b office hour: ...
DESCRIPTION
디지털 시스템 20 10 년 1학기 교수: 송상훈 연구실: 율곡관 603- B Office Hour: 화 , 목 14:00 ~ 15:00. 성적 평가: 중간 시험 : 3 0 % 기말 시험 : 30% 프로젝트 및 숙제 : 30% 출석 10% 교재 : “ 디지털 논리설계 ” 최종필 외 6 인 역( Alan B. Marcovitz) [ 한국맥그로힐 ]. 강의내용. 수 체계 2진수, 8진수, 16진수 Signed number, 2’s complement BCD - PowerPoint PPT PresentationTRANSCRIPT
1
디지털 시스템2010 년 1 학기
• 교수 : 송상훈
• 연구실 : 율곡관 603-B
• Office Hour: 화 , 목 14:00 ~ 15:00
2
• 성적 평가 :
•중간 시험 : 30%
•기말 시험 : 30%
• 프로젝트 및 숙제 : 30%
•출석 10%
•교재 :
“ 디지털 논리설계” 최종필 외 6 인 역 (Alan B. Marcovitz)
[ 한국맥그로힐 ]
3
강의내용• 수 체계
– 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
1) 수 체계
2) 2 진수 , 8 진수 , 16 진수
3) Signed number, 2’s complement
4) BCD 및 다른 코드
5
Digital Vs. Analog
Digital: discrete values Analog: continuous values
1
0
0 1 0 1 0 1
t
V
t
V
6
논리회로 설계
• 두가지 신호 값 : 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
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
0
0
0
1
0
1
1
1
진리표
10
조합회로와 순서회로
• 조합회로 (combinational 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 0 ai < r
bits =binary+digits
16
Positional Number System
764210= 7103+6 102+4 10+2
1011112 = 125 + 0 24 + 123 + 122 + 12 + 1
=32 + 8 + 4 + 2 + 1 = 4710
2 의 지수승 값이 자주 사용된다 .
17
Binary number system
Note: N bit 양의 정수의 범위 : 0 .. 2n-1 2n – 1 = 111….1
18
10 진수에서 2 진수로 변환
예제 1.6: 2 의 지수 승 값을 이용
29 = 512, 28 = 256, 27 = 128, 26 = 64, ..
74610 = 512 + 128 + 64 + 32 + 8 + 2
74610 = 129 + 0 28 + 127 + 126 + 125 + 024 +123 + 022
+12+0
= 10111010102
예제 1.7: 2 로 계속 나누면서 나머지를 취함
105/2=52 rem 1 1
52/2=26 rem 0 01
26/2=13 rem 0 001
13=1101 이기 때문에 1101 001
19
16 진수 (Hexadecimal)
16 진수 : 9 보다 큰 숫자는 첫 영문자 6 개를 사용
10 A
11 B
12 C
13 D
14 E
15 F
예제 1.9: 2 진수에서 16 진수로 변환
10111010102 = 0010 1110 10102
= 2EA16
20
16 진수 변환 (Hexadecimal)
예제 1.10: 16 진수에서 10 진수로 변환
2EA16 = 2162 + 1416 + 10
= 512 + 224 + 10 = 74610
예제 1.11: 10 진수에서 16 진수로 변환
746/16=46 나머지 10 A
46/16=2 나머지 14 EA
2/16=0 나머지 2 2EA16
21
2 진 덧셈 (Binary Addition)
예제 1.121 1 0 1 1 0 60 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 0101 -5 1101 -3 1011
26
2 의 보수 (2’s complement)
• 부호화 수의 대부분은 2 의 보수 형태를 사용한다 .
• 음수에 대한 2 의 보수 형태를 구하는 3 단계
1. 크기에 해당하는 2 진수 값을 찾는다 .2. 각 비트에 대한 보수를 취한다 .3. 1 을 더한다 .
예제 1.151. 5: 0101 1: 0001 0: 00002. 1010 1110 11113. +1 +1 +1 -5: 1011 -1: 1111 0000
27
4 비트의 부호화 수와 무부호화 수
28
오버플로우
예제 1.16: overflow
+5 0101
+4 0100
(0) 1001 (looks like –7)
예제 1.17: overflow
-5 1011
-4 1100
(1) 0111 (looks like +7)
29
2 진수 뺄셈
• 뺄셈 : 2 의 보수를 취하여 더한다 .
a-b = a+(-b)
예제 1.18 : 7 - 5
5: 0101 7: 0111
1010 -5: +1011
+ 1 2 (1) 0010
-5: 1011
30
오버플로우
예제 1.21:
(a) 무부호화 수의 오버플로우
(b) 부호화 수의 오버플로우
5-7 7-(-5)
1 1
0101 0111
1000 0100
(0) 1110 1100
(a) (b)
31
BCD: Binary Coded Decimal
* 가중치 (weighted) 코드 : 8421, 5421, 2421 코드
32
ASCII 코드
33
Gray 코드