52
디디디 디디 디디디 디디 디디디 디디디 디디 디디디 디디 디디디 디디 디디 [email protected] http://blog.naver.com/dolicom

디지털 회로

Embed Size (px)

DESCRIPTION

디지털 회로. 디지털 논리의 표현 디지털 회로 디지털 회로 구현. [email protected] http://blog.naver.com/dolicom. 논리. 논리 게이트. 논리 게이트. 논리게이트 (Logic gate) 0 또는 1 로 구성된 2 진 정보를 취급하는 논리회 (logic circuit) 일반적으로 2 개 이상의 입력 단자와 하나의 출력 단자 기본 게이트 : AND OR NOT 기본 게이트로 부터 EOR NAND NOR 등으로 조합. 논리게이트의 종류 - 기본게이트. - PowerPoint PPT Presentation

Citation preview

Page 1: 디지털 회로

디지털 회로디지털 회로

디지털 논리의 표현 디지털 회로 디지털 회로 구현

[email protected]://blog.naver.com/dolicom

Page 2: 디지털 회로

논리

논리 게이트논리 게이트

Page 3: 디지털 회로

논리 게이트

논리게이트 (Logic gate)0 또는 1 로 구성된 2 진 정보를 취급하는

논리회 (logic circuit)일반적으로 2 개 이상의 입력 단자와 하나의

출력 단자 기본 게이트 : AND OR NOT기본 게이트로 부터 EOR NAND NOR 등으로

조합

Page 4: 디지털 회로

논리게이트의 종류 - 기본게이트

X Y S

0011

0101

0001

AND OR NOT

X S

01

10

 

X Y S

0011

0101

0111

Page 5: 디지털 회로

논리게이트의 종류 - 기본게이트

X Y S

0011

0101

0110

XOR NAND NOR

X Y S

0011

0101

1000

X Y S

0011

0101

1110

Page 6: 디지털 회로

버퍼 (buffer)

X

buffer

X S

01

01

S

OE

X S

OE

OE X S

0011

0101

ZZ01

OE X S

0011

0101

ZZ10

X S

Page 7: 디지털 회로

조합 논리회로

입력 출력

X Y S C

0011

0101

0110

0001

반가산기 (half adder) 2 비트의 산술 덧셈을 하는 로직

Page 8: 디지털 회로

전가산기 (full adder)

전가산기 (full adder) 두 개의 2 진수 X, Y 와 자리올림수 C1 을

포함하여 3 비트를 더하는 조합 논리 회로

입력 출력

X Y C1 S C

00001111

00110011

01010101

01101001

00010111

Page 9: 디지털 회로

바이트 ADDER

두 바이트 더하는 회로는 반가산기 전가산기를 연결하여 만든다 .

. . .

x0y0

c0

x1y1

x7y7

x6y6

c1c6 c5c7

s0s1s6s7

반가산기전가산기전가산기전가산기

Page 10: 디지털 회로

논리회로의 구현논리회로의 구현

Page 11: 디지털 회로

논리 회로의 구현과 칩의 종류

Page 12: 디지털 회로

TTL 과 CMOS 신호 전압

Page 13: 디지털 회로
Page 14: 디지털 회로
Page 15: 디지털 회로
Page 16: 디지털 회로
Page 17: 디지털 회로

74LS541 핀 구조

Page 18: 디지털 회로

순차 논리 회로

클럭 클럭 (Clock)(Clock)

Page 19: 디지털 회로

Clock

디지털 회로의 순차논리회로의 동기 ( 변화시점 ) 을 결정 한다 .

Clock 사이에서는 조합 논리회로의 안정화 되고 에지 시점에서 상태 변화 한다 .

CPU 및 대부분의 디지털 회로에서는 필요하다 .

Timer 모듈은 디지털회로의 카운터를 기반으로 하드웨어적으로 동작하는 시간 모듈이다 .

시계는 모두 이 클럭을 사용 한다 .

Page 20: 디지털 회로

클럭의 모양

클럭은 0 과 1 이 같은 시간동안 반복된다 . CPU 는 듀티 (Duty) 50% 클럭 사용

0 과 1 을 변화할 때 약간의 시간이 걸린다 .

순차회로는 주로 클럭의 0 과 1 의 변화시점 ( 엣지 ) 에서 상태가 변화는 동기가 일어난다 .

01

Page 21: 디지털 회로

주파수 발진 회로 예

Page 22: 디지털 회로

클럭의 사용

수정발진자 ( Quartz Crystal Oscillator)CPU 내의 모든 동작은 이 클럭에 맞추어 동작

GND

30pF

30pF

C1

C2

발진회로

CPU

Page 23: 디지털 회로

외부 클럭을 사용

외부에서 완전한 클럭을 만들어 사용

GND

발진회로사용 하지 않음

CPU

Vcc

사용하지 않음사용하지 않음

CPU 클럭

XTAL1

XTAL2

Page 24: 디지털 회로

수정 발진자 부품

수정

기호

구조모양

Quartz

전극 1 전극 2

Page 25: 디지털 회로

순차 논리 회로

순차논리회로순차논리회로

Page 26: 디지털 회로

래치 (latch)

기억장치 : 입력에 의해 상태가 전환되기 전까지 2 진 상태 유지 SR 래치 - NOR 게이트 이용

Page 27: 디지털 회로

래치 (latch)

기억장치 : 입력에 의해 상태가 전환되기 전까지 2 진 상태 유지 SR 래치 - NAND 게이트 이용

Page 28: 디지털 회로

순차회로 (Sequence Circuit)

S

G

R

Q

Q

G

Page 29: 디지털 회로

D 래치 (latch)

두개의 입력 : D(data), C(control)데이터 저장기능

D

C

Q

Q

Page 30: 디지털 회로

D Flip-flop

X1

Q : 상태유지

↑, 0 ,1

X0

Qnext CLKQD

1X1

0X0

↑, 0 ,1

D

CLK

Q

Q> Q : 상태유지

Page 31: 디지털 회로

74LS74A

Page 32: 디지털 회로
Page 33: 디지털 회로

8 비트 D 래치 (latch)

11 번 핀 G 가 1 일 때 모든 입력 D 가 래치에 저장된다 . 1 번 핀 OutputControl 이 0 일 때 저장 상태가 Q 에 나타난다 .

Page 34: 디지털 회로

8 비트 D 플립플롭 (Flip-flop)

11 번 핀 CLOCK 이 ↑이면 모든 입력 D 가 저장 된다 . 1 번 핀이 0 이면 모든 Q 의 출력이 반영 된다 .

Page 35: 디지털 회로
Page 36: 디지털 회로
Page 37: 디지털 회로
Page 38: 디지털 회로

Binary Binary CounterCounter

Page 39: 디지털 회로
Page 40: 디지털 회로

논리 회로의 프로그램

PLDPLDPAL/GALPAL/GAL프로그램 툴프로그램 툴

Page 41: 디지털 회로

PLD

모든 조합 회로는 AND, OR, NOT 의 기본 로직으로 표시할 수 있다 .

사용자가 필요한 논리기능을 프로그램 할 수 있다 .

PAL : AND 배열을 프로그램하고 OR 배열은 고정 . 한 번 회로를 결정하면 회로를 바꿀 수 없다 .

GAL : PAL 과 같은 기능을 하나 재 프로그램이 가능 .

Page 42: 디지털 회로

PAL 구조

Y = A B + BC + ABC = AB(C+!C) + (A+!A)BC +ABC = ABC + AB!C + ABC + !ABC + ABC = !ABC + AB!C + ABC PT0 + PT1 + PT2

PT0 = !A B C => F1 F2 F4PT1 = A B !C => F6 F8 F11PT2 = A B C => F12 F14 F16

PT0 : XOOXOX => 011010PT1 : OXOXXO => 101001PT2 : OXOXOX => 101010

O : fuse 연결X : 연결 안됨 – 논리 1 로 입력

Page 43: 디지털 회로

PLD 2

SPLD (Simple Programmable Logic)PAL 과 유사한 구조 . 게이트 수는 약 200 개 정

도 .CPLD (Complex Programmable Logic

Device)특별한 논리함수를 구현을 위한 Embedded

Array Block 을 가지고 있다 .FPGA (Field Programmable Gate Array)

PLD 의 블록간의 연결에 Array 구조와 Row 구조 사용

게이트의 용량이 많다 .

Page 44: 디지털 회로

PAL/GAL

PAL 16L8PAL 16L8GAL 22V10GAL 22V10

Page 45: 디지털 회로

PAL/GAL 칩

Page 46: 디지털 회로

PAL/GAL 의 프로그램 예

논리를 표현하는 파일을 만든다 .PLD 컴파일러로 논리 표현을 PAL/GAL 에 쓸

수 있도록 JED 파일을 만든다 .이것을 롬라이터로 PAL/GAL 에 쓴다 . ( 보통 롬라이터에 쓰는것을 ‘굽는다’라함 )PCB 장착하고 동작 시킨다 .유틸리티

컴파일러 : PALASM, WinCUPL(Atmel), ABEL롬라이터 : 장치 및 라이터 프로그램 ( 구입 )

Page 47: 디지털 회로

PAL/GAL 프로그램 예;PALASM Design Description

;--------- 선언부 (Declaration Segment) -------------------TITLE TUTOR1.PDSPATTERN AREVISION 1.0AUTHOR J.ENGINEERCOMPANY ADVANCED MICRO DEVICESDATE 01/01/90

CHIP DECODER PAL16L8

;-------- 핀 정의 (PIN Declarations) -----------------------PIN 2 X COMBINATORIAL ; INPUTPIN 3 Y COMBINATORIAL ; INPUTPIN 4 Z COMBINATORIAL ; INPUT PIN 10 GND ; INPUTPIN 12 A COMBINATORIAL ; OUTPUTPIN 13 B COMBINATORIAL ; OUTPUTPIN 14 C COMBINATORIAL ; OUTPUTPIN 15 D COMBINATORIAL ; OUTPUTPIN 16 E COMBINATORIAL ; OUTPUTPIN 17 F COMBINATORIAL ; OUTPUTPIN 18 G COMBINATORIAL ; OUTPUTPIN 19 H COMBINATORIAL ; OUTPUTPIN 20 VCC ; INPUT

;------- 기능 정의 (Boolean Equation Segment) ---------------EQUATIONS/A = /X * /Y * /Z/B = /X * /Y * Z/C = /X * Y * /Z/D = /X * Y * Z/E = X * /Y * /Z/F = X * /Y * Z/G = X * Y * /Z/H = X * Y * Z

PALASM 예

Page 48: 디지털 회로

PAL/GAL 예;----------- Simulation Segment ------------SIMULATIONTRACE_ON X Y Z A B C D E F G HSETF /X /Y /ZCHECK /A B C D E F G HSETF /X /Y ZCHECK A /B C D E F G HSETF /X Y /ZCHECK A B /C D E F G HSETF /X Y ZCHECK A B C /D E F G HSETF X /Y /ZCHECK A B C D /E F G HSETF X /Y ZCHECK A B C D E /F G HSETF X Y /ZCHECK A B C D E F /G HSETF X Y ZCHECK A B C D E F G /HTRACE_OFF;--------------------------------------

Page 49: 디지털 회로

WinCUPL

Name SimSch;Partno atf22v10c;Date 2004/06/21;Rev 01;Designer SongSukChun;Company icom;Assembly None;Location None;Device g22v10;

/****************************************************************//* Test simple circuit *//****************************************************************/

/** Inputs **/

Pin 2 = IN1; /* Input pin 1 */Pin [5..7] = [A1..3]; /* Input vector */

/** Outputs **/

Pin 14 = OUT1; /* Output 1 */Pin [17..19] = [O1..3]; /* Output vector */

/* Perform 4, 1-bit, additions and keep the final carry */

OUT1 = IN1 & A1 & A2 & A3 # !IN1 & !A1 & !A2 & !A3; O1 = A1 & !A2 & !A3;O2 = !A1 & A2 & !A3;O3 = !A1 & !A2 & A3;

회로 예

Page 50: 디지털 회로

WinCUPL 툴

Page 51: 디지털 회로

JED 파일CUPL(WM) 5.0a Serial# 60008009Device g22v10 Library DLIB-h-40-1Created Tue Jun 22 15:39:59 2004Name SimSchPartno atf22v10cRevision 01Date 2004/06/21Designer SongSukChunCompany icomAssembly NoneLocation None*QP24 *QF5892 *G0 *F0 *L02144 00000000000011111111111111111111*L02176 11111111111111111111111111111111*L02208 11111111101110110111111111111111*L02240 11110000000000000000000000000000*L02880 00000000000000000000000011111111*L02912 11111111111111111111111111111111*L02944 11111111111111111111101101111011*L02976 11111111111111110000000000000000 . . .*L05792 00000000000000000000000011111100*L05824 00110110000101110100011001100011*L05856 00100011001001110110001100010011*C35E2*E775

JEDEC 파일– 컴파일 결과

Page 52: 디지털 회로

PLD 파일에서의 논리 표현

PALASM

/A = /X * /Y * /Z/B = /X * /Y * Z

논리 표현

ANDOR

NOT

*+/

OUT1 = IN1 & A1 & A2 & A3 # !IN1 & !A1 & !A2 & !A3;

WinCUPL논리 표현

ANDOR

NOT

&#!