수없기때문에간단한부분으로나눠서구현하고, 이를다시합침으로써전체를구현하게 된다. 실험에서는이미구현된 4-Bit ALU인 74LS181 Chip을사용한다. 이 Chip은 4-bit의 Data input A, B와 Selection input 4 bit, Carry In 1

Similar documents
ºÎ·ÏB

<BFACBDC0B9AEC1A6C7AEC0CC5F F E687770>

PowerPoint 프레젠테이션

9장 순차논리 회로

<4D F736F F F696E74202D20332EB5F0C1F6C5D0C8B8B7CEBFCD20B1B8C7F62E >

디지털공학 5판 7-8장

Microsoft Word - Experiment 5.docx

논리회로설계 6 장 성공회대학교 IT 융합학부 1

PowerPoint 프레젠테이션

Microsoft Word - logic2005.doc

歯02-BooleanFunction.PDF

Microsoft Word - logic2005.doc

8장 조합논리 회로의 응용

MAX+plus II Getting Started - 무작정따라하기

슬라이드 1

<BFACBDC0B9AEC1A6C7AEC0CC5F F E687770>

Microsoft PowerPoint - CHAP-01 [호환 모드]

歯Chap1-Chap2.PDF

<BFACBDC0B9AEC1A6C7AEC0CC5F F E687770>

동기순차회로 p 조합논리회로 combinational logic circuit) v 출력이현재의입력에의해서만결정되는논리회로 p 순차논리회로 sequential logic circuit) v 현재의입력과이전의출력상태에의해서출력이결정 v 동기순차논리회로와비동기순차논리회로로

歯15-ROMPLD.PDF

59

untitled

歯03-ICFamily.PDF

PowerPoint Presentation

3. 다음은카르노맵의표이다. 논리식을간략화한것은? < 나 > 4. 다음카르노맵을간략화시킨결과는? < >

4장 논리 게이트

PowerPoint Presentation

MAX+plusⅡ를 이용한 설계

비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2

untitled

<30352D30312D3120BFB5B9AEB0E8BEE0C0C720C0CCC7D82E687770>

歯mp3사용설명서

Microsoft PowerPoint - ICCAD_Analog_lec01.ppt [호환 모드]


airDACManualOnline_Kor.key


Microsoft Word - 제6장 Beyond Simple Logic Gate.doc

전자실습교육 프로그램

1 01 [ ] [ ] plus 002

1. 일련의순차적인수를세는회로는? < 가 > 가카운터 다디코더 나레지스터 라인코더 2. 입력펄스에따라미리정해진순서대로상태가변화하는레지스터로써발생회수를세거나동작순서를제어하기위한타이밍 (timing) 신호를만드는데가장적합한회로는? < 다 > 가범용레지스터 다

Microsoft PowerPoint - DSD03_verilog3a.pptx

1. 조합 (combinational) 논리회로에대해설명한것은? < 가 > 가출력신호가입력신호에의해서만결정되는논리회로이다. 나플립플롭과같은기억소자를갖고있는논리회로이다. 다출력신호가입력신호와현재의논리회로의상태에의해결정되는논리회로이다. 라기억능력을가진논리회로이다.

PowerPoint Presentation

Microsoft PowerPoint - hw8.ppt [호환 모드]

Mentor_PCB설계입문

Microsoft PowerPoint - Verilog_Summary.ppt

Microsoft PowerPoint - hw4.ppt [호환 모드]

<4D F736F F F696E74202D C61645FB3EDB8AEC7D5BCBA20B9D720C5F8BBE7BFEBB9FD2E BC8A3C8AF20B8F0B5E55D>

YPS1-KOREAN indd

Microsoft PowerPoint - DSD03_verilog3b.pptx

논리회로설계 3 장 성공회대학교 IT 융합학부 1

2009년2학기 임베디드시스템 응용

Slide 1

PowerPoint Presentation

도 1 명세서 도면의 간단한 설명 도 1은 본 발명의 바람직한 실시예에 따른 데이터 송수신 장치의 회로도이다. 도 2는 도 1에 도시된 등화기의 일 실시예를 보여주는 회로도이다. 도 3은 도 1에 도시된 프리엠퍼시스 회로의 일 실시예를 보여주는 회로도이다. 도 4는 본

1_12-53(김동희)_.hwp

5_03.hwp

제목을 입력하십시오

CPX-E-SYS_BES_C_ _ k1

마이크로시스템제작 lecture1. 강의소개및 MultiSIM 선덕한 마이크로시스템 1

DIB-100_K(90x120)

untitled

Microsoft Word - SRA-Series Manual.doc

Microsoft PowerPoint - VHDL08.ppt [호환 모드]

Microsoft PowerPoint - 1-2장 디지털_데이터 .ppt

슬라이드 1

Microsoft PowerPoint - CHAP-03 [호환 모드]

CAN-fly Quick Manual

Microsoft PowerPoint - ch03ysk2012.ppt [호환 모드]

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Apr.; 28(4),

*세지6문제(306~316)OK

BJFHOMINQJPS.hwp

. 고성능마이크로프로세서 LU 와레지스터 파일의구조 (2.). 직접디지털주파수합성기 (FS) 의구조 3. 고성능마이크로프로세서부동소수점연산기 (Floating-Point Unit) 구조 (2) (2.) (2.) 2. 암호화를위한 VLSI 구조와설계의개요 (2.) 다음참

목 차 1. 공통공시 총괄 1 2. 살림규모 세입결산 세출결산 중기지방재정계획 7 3. 재정여건 재정자립도 재정자주도 재정력지수 통합재정수지 채무 및 부채 지방채무 현황

실험 5

예제 1.1 ( 관계연산자 ) >> A=1:9, B=9-A A = B = >> tf = A>4 % 4 보다큰 A 의원소들을찾을경우 tf = >> tf = (A==B) % A

,,,,,, (41) ( e f f e c t ), ( c u r r e n t ) ( p o t e n t i a l difference),, ( r e s i s t a n c e ) 2,,,,,,,, (41), (42) (42) ( 41) (Ohm s law),

Oracle Apps Day_SEM

Microsoft PowerPoint - 제10장.ppt [호환 모드]

(b) 미분기 (c) 적분기 그림 6.1. 연산증폭기연산응용회로

歯기구학

Microsoft PowerPoint - es-arduino-lecture-03

Microsoft Word - Lab.4

01. Start JAVA!

디지털 ASIC 설계 (1주차) MAXPLUS II 소개 및 사용법

½½¶óÀ̵å Á¦¸ñ ¾øÀ½

Microsoft Word doc

API 매뉴얼

4 CD Construct Special Model VI 2 nd Order Model VI 2 Note: Hands-on 1, 2 RC 1 RLC mass-spring-damper 2 2 ζ ω n (rad/sec) 2 ( ζ < 1), 1 (ζ = 1), ( ) 1

,.. 2, , 3.. 본론 2-1 가상잡음신호원생성원리, [8].,. 1.,,. 4 km (13.3 μs).,. 2 (PN code: Pseudo Noise co- 그림 2. Fig. 2. Pseudo noise code. de). (LFSR: Line

(b) 연산증폭기슬루율측정회로 (c) 연산증폭기공통모드제거비측정회로 그림 1.1. 연산증폭기성능파라미터측정회로

wire [n-1:0] a, b, c, d, e, f, g, h; wire [n-1:0] x; // internal wires wire [n-1:0] tmp0, tmp1, tmp2, tmp3, tmp4, tmp5; mux_2to1 mux001 (.x(tmp0),.a(a

OCW_C언어 기초

140307(00)(1~5).indd

WebPACK 및 ModelSim 사용법.hwp

hwp

서보교육자료배포용.ppt

VZ94-한글매뉴얼

歯RCM

Transcription:

Experiment 6. Use of Arithmetic Logic Unit and Flip-Flops Abstract 본실험에서는현대 CPU의가장근간이되는 Unit인산술및논리연산기 (Arithmetic Logic Unit, ALU) 와순차회로 (Sequential Circuit) 을이루는대표적인기억소자인플립플롭 (Flip-flop) 의기능을익히며, 간단한연산회로와순차회로를구현해본다. 또, ALU와같은복잡한기능을구현하는회로의설계를위한하향식설계 (Top-Down design) 방법에대하여학습한다. 1. Theoretic Backgrounds 1.1. Arithmetic Logic Unit ALU (Arithmetic Logic Unit) 는두개의변수에대하여여러가지의논리연산및산술연산을수행해주는조합회로이다. ALU는 Adder의기능을추가적인외부 Gate들을이용하여확장한 Arithmetic Unit과, 여러가지의가능한논리연산들을구현한 Logic Unit으로이루어져있으며, 현대 CPU의가장핵심적인기능을수행하는조합회로라할수있다. ALU는연산할 Data Input과, 어떤연산을수행할지결정하는 Selection Input을입력받고, Selection Input에따라정해진연산을수행하게된다. 아래그림 1은 ALU의 Box Diagram 이다. 그림 1. ALU 의 Box Diagram ALU 는이후설명할 Top-Down Design 의전형적인예로써, 예를들면 4-bit ALU 의경우 Input 이 12 개가되며, Truth table 이 4096 Line 에이르게되므로일반적인설계를도저히할

수없기때문에간단한부분으로나눠서구현하고, 이를다시합침으로써전체를구현하게 된다. 실험에서는이미구현된 4-Bit ALU인 74LS181 Chip을사용한다. 이 Chip은 4-bit의 Data input A, B와 Selection input 4 bit, Carry In 1 bit, 그리고 Mode input 1bit의총 14bit의 Input 을받아서 Output으로 4-bit의연산결과와 A=B가같은지여부 (1bit), 그리고세종류의 Carry(Carry out, Carry Generate, Carry Propagate) 를발생시킨다. 그림 2. 74LS181 ALU 의 Pin Out 예를들어, 산술연산중 (A plus B) 를계산하기위해서는 M=low에연결하고, 표에있는바와같이 S=1001로연결하면된다. 뺄셈 (A minus B) 를계산하기위해서는산술연산이므로 Mode input에 0 (low voltage) 을인가하고, S =0110, carry-in (/Cn) = 0을인가해야한다. ALU 에서는 1의보수시스템을사용하므로뺄셈은 (A minus B = A + /B +1) 과같이이루어지며, Cn을 low로하지않으면결과는 A minus B minus 1이된다. A=B 출력은 A와 B를비교하기위한것이다. 뺄셈모드 (S=0110, /Cn=1) 에서 A와 B 가같으면출력 F=1111이되고, 동시에 A=B도 high로된다. A=B Output은 Open Collector이므로단독출력으로사용해서는안된다. ( 출력이 1 또는 Open이되므로, Open인경우 0으로간주하지않는 Chip이많다.) 따라서반드시 Buffer나 Inverter를두번연결하여사용하는등의추가적인회로구성이필요하다. 2개이상의 181을연결하여 4 bit이상의연산을수행할수있다. /Cn은 Carry-In Input이고, /Cn+4는 ALU 내에서 4bit 연산을통해발생하는 Ripple carry의 Output이다. /Cn+4은 carry가발생하면 0으로출력된다. 이때, Ripple carry를이용하지않고, 속도를빠르게하기위해 carry propagate(p) 와 carry generate(g) 를이용할수도있다. 그림 3에주어진표는입력과출력을 active-high로했을때의동작을나타낸것이다. M을 low로바꾸면 active-low 모드로바뀐다. 자세한설명은 74LS181 Chip의데이터시트를참고하기바란다.

그림 3. ALU Function Table 1.2. Top-Down Design 조합회로 (Combinatorial Circuit) 를설계하는데있어서크게상향식설계 (Bottom-up Design) 와하향식설계 (Top-down Design) 의두가지의방법을사용할수있다. 우선, 상향식설계란, 주어진기본기능들을이용, 결합하여회로에서요구하는기능들을구현하는것이다. 지금까지실험에서수행한대부분의회로는상향식설계라할수있으며, 구현하고자하는기능이복잡하지않고직관적일때유리하다. 하향식설계란, 계층적설계 (Hierarchical design) 이라고도하며, 상향식설계와는반대로전체회로의역할을특정기능을수행하는부분으로나누는것을반복함으로써이미구현되어있는기본기능까지도달하도록하는것이다. 이는복잡한기능을구현하고자할때분할하여생각함으로써문제를간단하게만들수있다는장점이있다. 예를들어, 4-Input XOR을 AND, OR, NOT gate로만구현한다고가정하면아래와같이생각할수있다. ( 예시로는한단계의세분화과정으로전부구현이가능하나, 복잡한회로의경우에는세분화과정이여러번이루어질수있다.) 1) Bottom-up Design Approach: AND, OR, NOT 이주어져있네? K-Map 을이용하여 Simplification 할수있 다 진리표를그리고 Sum-of-Product Form 으로구현하면되겠네?

a. 진리표 : A B C D A B C D Y 0 0 0 0 0 0 0 0 0 0 1 0 1 1 0 0 1 0 0 1 1 0 0 1 1 0 0 0 0 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 0 1 1 0 0 1 1 1 1 0 1 1 0 0 0 1 0 1 1 0 0 1 1 1 0 1 0 1 0 1 1 0 1 0 1 1 1 0 1 1 1 0 0 0 0 0 1 1 0 1 0 1 1 1 1 1 0 0 1 1 1 1 1 1 0 0 0 b. Simplification: K- Map: AB/CD 00 01 11 10 00 0 1 0 1 01 1 0 1 0 11 0 1 0 1 10 1 0 1 0 ( 식유도는생략 ) 2) Top-down Design Approach: 4-Input XOR 를작은기능으로분할할수없을까? 2-Input XOR 를이용하 여 4-Input XOR 를구현할수있다 2-Input XOR 를구현하고이걸이용해서 4-Input XOR 를구현하면되겠네 2-Input XOR 는 AND, OR, NOT 으로구현할수있네? a. 문제세분화 A B C D = (A B) (C D) 2-Input XOR 로기능세분화

(A B) (C D) = (AB + A B) (CD + C D) 세분화한 2-Input XOR 를주어진 AND, OR, NOT 으로구현 b. 세분화한문제구현 (AB + A B) (CD + C D) = (AB + A B)(CD + C D) + (AB + A B) (CD + C D) = (AB + A B)((C + D)(C + D )) + ((A + B)(A + B ))(CD + C D) =.( 이후식유도는생략 ) 1.3. JK Flip-Flop 플립플롭 (Flip-Flop) 이란디지털순차회로를구성하기위한기억소자중하나로, R-S 래치 에추가로 J, K Input 을 AND gate 를통하여인가한회로이다. 아래는 J-K Flip-flop 의회로도 와특성표이다. 그림 4. JK Flip Flop 의회로및특성표 이 Flip-Flop 은자기자신의출력과두개의 Control input J, K 를이용하여다음상태 Q+ 를정의하게된다. 표에서알수있듯이 JK = 00 일때는현재값을유지하며, JK = 01 일일 때 Q+ = 0 으로, JK = 10 일때는 Q+ = 1 로설정이되며, JK = 11 일때는 Q+ = /Q 가된다. JK Flip flop은순차회로로써처음값을예측하기어려운데, 이를해결하기위하여 Preset ( 미리 Q = 1로만드는 Input) 과 Clear(Q = 0으로만드는 Input) 을가짐으로써다양한동작 ( 예 : 시스템리셋, 초기화등 ) 에대응할수있도록만들기도하며, 이는 74LS73, 74LS76등의 Chip에구현되어있다. 이들 Chip의자세한동작특성은 Datasheet를확인하도록한

다. 1.4. Race Condition in Sequential Circuit JK Flip-Flop을포함한모든순차회로에서는특정한 Input이인가될경우 Race condition 상태에빠질수있다. Race condition이란, 마치경마장에서말이경주하듯이엎치락뒤치락하는상태, 즉 0과 1이경쟁적으로매우빠르게반복됨으로써 Output이무엇인지알수없게되는경우를의미한다. 아래그림 5는 Race condition이일어났을때의 Timing diagram이다. 이를해결하기위해서는한입력에우선순위를부여하고다른입력이이에종속되도록하거나, 특정조건에서만순차회로의연산이일어나도록주기적입력신호인 Clock을삽입하여회로를동기화하는방법이있다. 그림 5. Race condition(q 와 Q ) 2. Experimental Setup OrCAD 를사용하여, 74LS181 ALU chip 2 개를 ripple carry mode 로확장하여 2 개의 5-bit input 을더할수있는회로를작성하고시뮬레이션해본다. ALU 2 개이외의기본게이트 (AND, OR, NOT, NAND, XOR, XNOR, NOR) 를이용할수있다. OrCAD 에주어진플립플롭 (74LS73, 74LS74) 과 Clock Generator 를사용하여플립플롭의기 능을이해한다. 이때, 시뮬레이션을이용하여 Clock 이어떻게될때 Q 값이변하는지를 확인하도록한다. (positive edge, negative edge trigger 등등 ) OrCAD 에서 NOR gate 를사용하여 S-R Latch 를작성하고, 여기에 2-Input AND gate 를연 결하여 JK Flip-Flop 을작성한다. Toggle (JK = 11) 이정상작동하는지확인하고, 정상작동 하지않는다면그이유를고찰하고, 해결방안을찾아보도록한다.

3. Experiments ALU 2개와추가기본게이트들을이용하여 5-bit input 2개 A, B의덧셈과뺄셈을계산하는회로를작성한다. 이때, A, B, 그리고 output Z는모두 2의보수로표현된수이며, A, B 는 5bit, Z는 6bit임에유의한다. 즉 A,B와 Z의 MSB 위치가다르므로유의하도록한다. 추가게이트는 GAL16V8D 칩을준비하여대체해도된다. NOR gate 를이용하여 S-R Latch 를구현하고, 여기에 2-input AND gate 를이용하여 J-K Flip Flop 을구현한다. Toggle 이정상작동하는지확인한다. 시뮬레이션결과와같은지여 부를확인하고, 결과가같은, 또는다른이유를고찰해본다. Simulation에서발생한문제점을해결할수있는방안을수업자료나검색등으로찾아보고, 이를해결한회로를작성해본다. (Hint: Race condition!) Simulation에서문제가발생하지않더라도잠재적으로발생할수있는문제를찾고이를해결한회로를작성하도록한다. 4. Grading Criteria 1) ALU 의기능을올바르게이해하고, 2 개의 5-bit 입력을정확히연산할수있는회로를작성하 였는가? 2) Flip-flop 의기능을이해하고, J-K Flip-flop 을올바르게구현하였는가? 3) OrCAD 를사용하여 Simulation 가능한회로를정확하게구현하고, 실험결과와올바르게비교 하였는가? 4) Race condition 이어떤상황에서발생하는지이해하고, 이를해결하기위한방법을정확하게 알고있는가?