degital logic circuit
DESCRIPTION
DEGITAL LOGIC CIRCUIT. Term Project – 4 bit ALU. Contents. 디지털 시스템 설계 대상 선정 디지털 시스템 설계 과정 설계된 논리도 Pspice 시뮬레이션 하드웨어 제작 결과 고찰. 시스템 설계 대상 선정. 설계 대상 선정. 조합논리회로와 동기식 순차논리회로를 종합적으로 포함하고 있음. ALU 는 기초적인 디지털 계산기에서부터 컴퓨터의 CPU 에 이르기까지 마이크로 프로세서라 불릴 수 있는 곳에는 빠질 수 없는 소자. - PowerPoint PPT PresentationTRANSCRIPT
Term Project – 4 bit ALUDEGITAL LOGIC CIRCUIT
1
Contents
I. 디지털 시스템 설계 대상 선정
II. 디지털 시스템 설계 과정
III. 설계된 논리도
IV. Pspice 시뮬레이션
V. 하드웨어 제작
VI. 결과 고찰
2
시스템 설계 대상 선정
3
설계 대상 선정
• 조합논리회로와 동기식 순차논리회로를 종합적으로 포함하고 있음 .
• ALU 는 기초적인 디지털 계산기에서부터 컴퓨터의 CPU 에 이르기까지 마이크로 프로세서라 불릴 수 있는 곳에는 빠질 수 없는 소자 .
• CPU 에 가장 기본적인 부분인 ALU 부분을 제작하기로 함 .
① clock 에 의해 하나씩 증가되는 4bit 의 이진수 A, B 에 대해서 산술연산과 논리연산을 수행할 수 있는 회로를 설계
② 연산선택단자와 출력선택단자에 5 비트 카운터를 연결하여 입력한 두수에 대해서 14 가지의 연산결과를 보여줄 수 있도록 제작
디지털 시스템 설계 과정
1. 조합 논리 회로 설계
4
Arithmetic unit
• ALU 는 세 개의 영역으로 구분질 수 있다 . 그 중 하나가 연산을 담당 .
• 4× 1Multiplexer 와 Full Adder 로 구성 .
• A+B, A+B+1, A-B-1, A-B, Transfer A, Increment A, Decrement A, Transfer A 로 총 8 가지의 연산을 수행
디지털 시스템 설계 과정
1. 조합 논리 회로 설계
5
Arithmetic unit
D[0..3]
Co
B2
0
S0
0
0
D2A2
U1B
74HC04
3 4
Multiplexer_1
<Value>
S0S1
0123
Y
U1C
74HC04
5 6
B0
Ci
D3
A[0..3]
B[0..3]
0
0
FA_4
Full Adder
A
B
Ci
Co
D
1
D0
0
0
Multiplexer_3
<Value>
S0S1
0123
Y
0
0
0
1
D[0..3]
1
FA_1
Full Adder
A
B
Ci
Co
D
U1D
74HC04
9 8
B3
1
1 FA_3
Full Adder
A
B
Ci
Co
D
A3
Multiplexer_4
<Value>
S0S1
0123
Y
S1
1
0
FA_2
Full Adder
A
B
Ci
Co
D
S1DSTM3
A0
0
D1A1
A[0..3]
0
Multiplexer_2
<Value>
S0S1
0123
Y
B1
1
U1E
74HC04
11 10
U1A
74HC04
1 2
B[0..3]
0
0
디지털 시스템 설계 과정
1. 조합 논리 회로 설계
6
Arithmetic unit
Ci
A
U3B
74HC08
4
56
U3A
74HC08
1
23
U2A
74HC386
1
23
D
Co
U2B
74HC386
5
64B
U4A
74HC32
1
23
U13
AND3
142
3
3
U10
AND3
142
3U11
OR4
12
5342
U6D
74HC04
98
S0
U12
AND3
142
3
1
Y
U6E
74HC04
1110
0
S1
U9
AND3
142
3
Multiplexer
FullAdder
디지털 시스템 설계 과정
1. 조합 논리 회로 설계
7
Logic Unit 설계
• 논리 연산을 담당하는 Logic unit
•. 두 수의 AND, OR, EX-OR, NOT 연산을 수행
•연산하고자 하는 비트만큼의 해당 GATE 들과 4× 1 Multiplexer 로 이루어진다 .
디지털 시스템 설계 과정
1. 조합 논리 회로 설계
8
Logic Unit 설계
E[0..3]
S1S0
B[0..3]
A[0..3] A3
B3
A0
A1
A2
1
B[0..3]
0
B0
1
E3
B1
B2
E[0..3]
E2
0
E1
0
E0
0
U5A
74HC08
1
23
U4B
74HC32
45 6
U1F
74HC04
13 12
U2C
74HC386
89 10
A[0..3]
0
1
U2D
74HC386
12
13 11
U6A
74HC04
1 2
1
0
0
U4C
74HC32
91
0 8
U5B
74HC08
4
56
0
U7A
74HC386
12 3
U6B
74HC04
3 4
0
1
1
U4D
74HC32
12
13 11
U5C
74HC08
9
108
0
Multiplexer_2
<Value>
S0S1
0123
Y
Multiplexer_1
<Value>
S0S1
0123
Y
Multiplexer_3
<Value>
S0S1
0123
Y
Multiplexer_4
<Value>
S0S1
0123
Y
U7B
74HC386
56 4
U8A
74HC32
12 3
U6C
74HC04
5 6
0
0
0
U5D
74HC08
12
1311
1
디지털 시스템 설계 과정
1. 조합 논리 회로 설계
9
Shifter 설계
• 비트 Shift 연산은 low 레벨 language 프로그래밍에서 필수적으로 빈번히 사용되는 연산중의 하나
• 연산속도에 영향을 미치므로 ALU 에 포함되는 것이 일반적
디지털 시스템 설계 과정
1. 조합 논리 회로 설계
10
Shifter 설계
S2
SH[0..3]
A[0..3] MUX
MUX
S201
Y
0
MUX_3
MUX
S201
Y
MUX_2
MUX
S201
Y
MUX_1
MUX
S201
Y
S1DSTM2
S1DSTM1
0
A1
A0
A3
A2
SH3
SH2
SH1
SH0
0
A2
0
A1
디지털 시스템 설계 과정
1. 조합 논리 회로 설계
11
QUAD-MUX 설계
• Arithmetic, Logic, Shift 이 3 가지 연산을 수행하고 이들 값 중에 한가지를 출력
디지털 시스템 설계 과정
2. 순차 논리 회로 설계
12
selection input 설계
• 상태 천이도
Present State Next State Flip Flop inputs
S3 S2 S1 S0 Cin S3 S2 S1 S0 Cin D4 D3 D2 D1 D0
0 0 0 0 0 0 0 0 0 1 0 0 0 0 1
0 0 0 0 1 0 0 0 1 0 0 0 0 1 0
0 0 0 1 0 0 0 0 1 1 0 0 0 1 1
0 0 0 1 1 0 0 1 0 0 0 0 1 0 0
0 0 1 0 0 0 0 1 0 1 0 0 1 0 1
0 0 1 0 1 0 0 1 1 0 0 0 1 1 0
0 0 1 1 0 0 0 1 1 1 0 0 1 1 1
0 0 1 1 1 0 1 0 0 0 0 1 0 0 0
0 1 0 0 0 0 1 0 1 0 0 1 0 1 0
0 1 0 1 0 0 1 1 0 0 0 1 1 0 0
0 1 1 0 0 0 1 1 1 0 0 1 1 1 0
0 1 1 1 0 1 0 0 0 0 1 0 0 0 0
1 0 0 0 0 1 1 0 0 0 1 1 0 0 0
1 1 0 0 0 0 0 0 0 0 0 0 0 0 0
• 상태표
00 01 11 10
00
01
11 X X 1
10 X X
디지털 시스템 설계 과정
2. 순차 논리 회로 설계
13
selection input 설계
• 14 진 카운터의 입력조건
• 각 플립플롭에 대한 입력조건을 카르노맵으로써 간소화
S3 = 0
00 01 11 10
00 1 X X X
01 X X X X
11 X X X X
10 X X X
S3 = 1
D4 = S0S1S2S3' + S0'S1'S2'S3
디지털 시스템 설계 과정
2. 순차 논리 회로 설계
14
설계된 디지털 시스템의 출력 F 에 대한 진리표 Next State
Outputs
F[0..3]S3 S2 S1 S0 Cin
0 0 0 0 0 A + B
0 0 0 0 1 A + B + 1
0 0 0 1 0 A - B - 1
0 0 0 1 1 A - B
0 0 1 0 0 Transfer A
0 0 1 0 1 Increment A
0 0 1 1 0 Decrement A
0 0 1 1 1 Transfer A
0 1 0 0 0 A AND B
0 1 0 1 0 A OR B
0 1 1 0 0 A XOR B
0 1 1 1 0 A'
1 0 0 0 0 shift right
1 1 0 0 0 shift left
디지털 시스템 설계 과정
2. 순차 논리 회로 설계
15
설계된 디지털 시스템의 출력 F 에 대한 진리표
•Selection 에 의해서 S1, S0 가 각각 HIGH, LOW 로 변하면서 연산 수행 .•S2 는 입력 A 를 shift 시키는데 사용된다 . S3, S2 는 Arithmetic 연산과 Logic 연산의 출력을 결정하여 최종 출력 .
•Cin 은 Arithmetic 연산을 수행하는 동안 여러 가지 연산 수행 .
디지털 시스템 설계 과정
2. 순차 논리 회로 설계
16
설계된 Selection 회로도
디지털 시스템 설계 과정
3. 설계된 회로도
17
설계한 각 부분의 회로를 하나의 회로도로 설계
•4bit 버스선를 이용하여 X[0..3] 까지 입력을 결정 .
•Selection 에 의해 수행해야 할 연산을 선택
•Arithmetic, Logic, Shift 회로에서 연산 .
•결과 값을 QUAD_MUX 에 의해서 출력 .
디지털 시스템 설계 과정
3. 설계된 회로도
18
설계한 각 부분의 회로를 하나의 회로도로 설계
S4DSTM2
Implementation = B
S4DSTM1
Implementation = A
V
V
V
V
V
V
V
V
Arithmetic
Arithmetic
A[0..3]
B[0..3]
CiCo
S0
S1
D[0..3]
A[0..3]
B[0..3]
Ci
X
Selection
Sel
Ci
S0
S1
S2
S3
S0
X
S1
X
D[0..3]
Logic
Logic
A[0..3]
B[0..3]
S0
S1
E[0..3]E[0..3]
Shift
Shift
A[0..3]
SH[0..3]
S2SH[0..3]
S2
QUAD_MUX
QUAD
S2
S3
D[0..3]
E[0..3]
SH[0..3]
SH[0..3]
F[0..3]
S3X
F[0..3]
X
CoX
PSPICE Simulation
1. PSPICE simulation
19
완성된 회로의 simulation
•입력 A, B 를 각각 4, 1 로 하고 Selection 에서 14 가지 연산에 대한 값을 14 진 카운터로 만들어내고 Selection 이 변화함에 따라 각각의 연산을 수행한다 .
PSPICE Simulation
2. PSPICE simulation result
20
완성된 회로의 simulation 결과
하드웨어제작
1. 하드웨어 제작
21
Arithmetic unit 제작
•4× 1Multiplexer 와 Full Adder 로 구성
소요재료
종류 재료명 수량
Logic IC chip
74LS04 1EA
74LS08 2EA
74LS32 1EA
74LS86 2EA
74LS153 2EA
기 타
16PIN 소켓 8EA
지지대 4SET
동판 1EA
하드웨어제작
1. 하드웨어 제작
22
Logic unit 제작
•4× 1Multiplexer 와 AND, OR, XOR, NOT 게이트로 구성
소요재료
종류 재료명 수량
Logic IC chip
74LS04 2EA
74LS08 2EA
74LS32 2EA
74LS86 2EA
74LS153 4EA
기 타
16PIN 소켓 12EA
지지대 4SET
동판 1EA
하드웨어제작
1. 하드웨어 제작
23
Shift unit 제작
• 2× 1Multiplexer 로 구성 (2× 1Multiplexer 게이트로써 구성 )
소요재료
종류 재료명 수량
Logic IC chip
74LS04 1EA
74LS08 2EA
74LS32 1EA
기 타
16PIN 소켓 4EA
지지대 4SET
동판 1EA
하드웨어제작
1. 하드웨어 제작
24
QUAD_MUX unit 제작
• 4× 1Multiplexer 로 구성
소요재료
종류 재료명 수량
Logic IC chip 74LS153 4EA
기 타
16PIN 소켓 4EA
지지대 4SET
동판 1EA
하드웨어제작
1. 하드웨어 제작
25
Selection unit 제작
• D 플립플롭 , AND, OR 게이트로 구성
소요재료
종류 재료명 수량
Logic IC chip
74LS74 4EA
74LS32 1EA
74HC21 5EA
74LS11 3EA
74HC08 2EA
74HC4075 1EA
HEF4072BP 1EA
기 타
16PIN 소켓 17EA
지지대 4SET
동판 1EA
하드웨어제작
2. 전체 하드웨어 제작
26
4Bit ALU unit 제작
• 위에서 제작한 각 부분을 조합하여 ALU unit 제작
• 4 단 QAUD_MUX unit, 3 단 Arithmetic unit, 2 단 Shift unit, 1 단 Logic unit, 스위치회로
• 전체 하드웨어 제작 모습
결과고찰
27
Arithmetic, Logic, Shift, Selection, QUAD_MUX 5 가지 부분으로 나누어서 생각 하면서 각각의 세부회로를 구성 .
회로 설계 중 산술 , 논리 연산 부분은 Mutiplexer, Full Adder, 게이트로써 설계하였는데 강의시간에 언급되었던 사항을 기초로 하여 설계하는데 도움이 되었다 .
앞으로는 곱셈 , 나눗셈 연산을 추가하고 메모리에 저장하는 기능도 추가해서 제작을 해보면 더 좋은 경험이 되리라 생각된다 .
Thank you
28