MAX+plusⅡ를 이용한 설계

Similar documents
ºÎ·ÏB

PowerPoint 프레젠테이션

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

PowerPoint 프레젠테이션

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

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

<BFACBDC0B9AEC1A6C7AEC0CC5F F E687770>

Microsoft Word - logic2005.doc

hwp

Microsoft PowerPoint - DSD03_verilog3b.pptx

디지털공학 5판 7-8장

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

Microsoft PowerPoint - DSD03_verilog3a.pptx

<4D F736F F F696E74202D20332EB5F0C1F6C5D0C8B8B7CEBFCD20B1B8C7F62E >

한국기술교육대학교장영조 한국기술교육대학교전기전자통신공학부 1

歯Chap1-Chap2.PDF

슬라이드 1

8장 조합논리 회로의 응용

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

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

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

[2010 년디지털시스템설계및실험중간고사 2 답안지 ] 출제 : 채수익 1. (a) (10 pts) Robertson diagram Quotient 와 remainder 의 correction 을뒤로미루는것이 non-restoring division 이다. 즉, q =

v6.hwp

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

중간고사

9장 순차논리 회로

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

歯15-ROMPLD.PDF

슬라이드 1

Microsoft Word - PLC제어응용-2차시.doc

<BFACBDC0B9AEC1A6C7AEC0CC5F F E687770>

Microsoft Word - logic2005.doc

Microsoft PowerPoint - Java7.pptx

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

untitled

MR-3000A-MAN.hwp

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F >

Microsoft PowerPoint - Verilog_Summary.ppt

RVC Robot Vaccum Cleaner

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

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

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

OCW_C언어 기초

API 매뉴얼

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

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

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

BMP 파일 처리

CANTUS Evaluation Board Ap. Note

PowerPoint 프레젠테이션

Microsoft PowerPoint - verilog문법new.ppt

목차 제 1 장개요 제 2 장소프트웨어구조 제 3 장공통요소 I

전자실습교육 프로그램

<4D F736F F F696E74202D C61645FB3EDB8AEC7D5BCBA20B9D720C5F8BBE7BFEBB9FD2E BC8A3C8AF20B8F0B5E55D>

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

Microsoft Word doc

VHDL 기초 VHDL 두원공과대학정보통신미디어계열이무영

2002년 2학기 자료구조

À̵¿·Îº¿ÀÇ ÀÎÅͳݱâ¹Ý ¿ø°ÝÁ¦¾î½Ã ½Ã°£Áö¿¬¿¡_.hwp

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A634C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

T100MD+

untitled

MicrocontrollerAcademy_Lab_ST_040709

歯DCS.PDF

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

Microsoft PowerPoint - chap04-연산자.pptx

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

7장 조합 논리 회로

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A638C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

실험 5

9

PowerPoint 프레젠테이션

<3130C0E5>

untitled

S A S D 발표 : 구태환

untitled

2주차: 입출력 제어 복습

Microsoft PowerPoint - ch11_reg.pptx

'00 지역별분석.PDF

PowerPoint Presentation

<BFACBDC0B9AEC1A6C7AEC0CC5F F E687770>

1. 제품소개 1.1 제품소개 < 그림 1.1> 도트매트릭스모듈 하드웨어제작에소요되는시간을단축시켜프로그래밍연구개발및학습효과를극대화시켜주는 16x16 도트매트릭스모듈입니다. 또한당사 AVR, PIC, ARM(STM32F) 개발보드와 1P 점퍼클립케이블을이용하여연동이가능하

삼성기초VHDL실습.PDF

3 장디지털코드 1. BCD 코드와 3초과코드 2. 다양한 2진코드들 3. 그레이코드 4. 에러검출코드 5. 영숫자코드 한국기술교육대학교전기전자통신공학부전자전공 1

Microsoft PowerPoint - o8.pptx

< E20C6DFBFFEBEEE20C0DBBCBAC0BB20C0A7C7D12043BEF0BEEE20492E707074>

(1) 주소지정방식 Address Mode 메모리접근 분기주소 명령어 직접번지 Reg. 지정 Reg. 간접 Base Index 간접 Immediate 상대번지 절대번지 Long 주소 Reg. 간접 Byte Access Bit Access 내부 Data M

BY-FDP-4-70.hwp

SRC PLUS 제어기 MANUAL

Remote UI Guide

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A636C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

Video Stabilization

(......).hwp

프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음

Microsoft PowerPoint - DSD06b_Cont.pptx

1

-. Data Field 의, 개수, data 등으로구성되며, 각 에따라구성이달라집니다. -. Data 모든 의 data는 2byte로구성됩니다. Data Type는 Integer, Float형에따라다르게처리됩니다. ( 부호가없는 data 0~65535 까지부호가있는

Microsoft PowerPoint - es-arduino-lecture-03

Microsoft PowerPoint - T1 ERS (Elevator Reservation System)SASD2.pptx

FARA PLC N70plus 시스템 사용자 메뉴얼

Transcription:

Digital System Design with Verilog HDL - Combinational Logic

Lab. Gate Circuit AND, OR, NOT 게이트들로이루어진멀티플렉서기능의논리회로구현멀티플렉서 : 여러개의입력중하나를선택하여출력하는기능모듈입력 s=: 단자 a 의값이단자 z 로출력입력 s=: 단자 b 의값이단자 z 로출력 File name : gatelogic.v Module name: gatelogic Input : a, b, s [ 각 -bit] Output : z [-bit] Symbol a s n2 z b n n3 2

Lab 2. Priority Encoder 모듈의동작이 don t care 를포함한기능표로표시된사양을설계입력단자 a, b, c 중 의값을갖는단자를찾는데여러단자가 일경우엔 c, b, a 의차례로우선순위를가짐 File name : priority.v Module name: priority Input : a, b, c [ 각 -bit] Output : z [2-bit] Truth Table a b c z - - - 3

Lab 3. Multiplexer 여러개의입력중하나를선택하여출력하는회로 2 비트폭의제어신호 sel 에의해하나의입력단자신호가선택되어단자 z 로출력 Enable 제어신호 en= 일때만멀티플렉서로서동작 en= 이면고정값 을출력 File name : mux.v Module name: mux Input : a, b, c, d [ 각 4-bit] en [-bit], sel [2-bit] Output : z [4-bit] Truth Table en sel z a b c d - 4

Lab 4. -bit Half/Full Adder 반가산기 (Half Adder) 는 2 개의입력에대해덧셈을수행하는모듈두입력신호 (a, b) 를받아합산결과는 sum, 캐리는 cout 으로출력 File name : halfadd.v Module name: halfadd Input : a, b [ 각 -bit] Output : sum, cout [ 각 -bit] Truth Table a b sum cout 5

Lab 4. -bit Half/Full Adder (Cont.) 전가산기 (Full Adder) 는 3 개의입력에대해덧셈을수행하는모듈세입력신호 (x, y, z) 를받아합산결과는 sum, 캐리는 cout 으로출력앞에서설계한반가산기를이용 File name : fulladd.v Module name: fulladd Input : x, y, z [ 각 -bit] Output : sum, cout [ 각 -bit] Symbol x A COUT n cout y B HALFADD [s] SUM n2 A COUT n3 HALFADD z B [s2] SUM sum 6

Lab 5. 4-bit Full Adder 앞에서설계한 -bit Full Adder 를이용하여 4-bit Full Adder 를설계 File name : four_fulladd.v Module name: four_fulladd Input : a, b [ 각 4-bit], cin [ -bit] Output : cout, s, s, s2, s3 [ 각 -bit] Symbol a[] b[] a[] b[] a[2] b[2] a[3] b[3] cin FA c FA c2 FA c3 FA cout s s s2 s3 7

Lab 6. Comparator 두개의입력을비교하여등가여부를판별두수가같을때 : Logic 출력두수가다를때 : Logic 출력 y 은 a, a2 의비교결과 y2 는 b, b2 의비교결과 a, a2 비교는각 bit 를하나씩비교 b, b2 비교는전체 bit 를한번에비교 File name : comparator.v Module name: comparator Input : a, a2, b, b2 [ 각 3-bit] Output : y, y2 [ 각 -bit] Truth Table a a2 b b2 y y2 6 7 5 6 7 6 8

Lab 7. Even Parity Generator 데이터에존재하는 의개수가항상짝수가되도록추가비트를생성하는회로 패리티비트는직렬통신회로에서외부요인으로인한오류감지위해사용 File name : evenparity.v Module name: evenparity Input : a [8-bit] Output : z [9-bit] Truth Table 데이터 패리티 의개수 4 개 ( 짝수 ) 4 개 ( 짝수 ) 9

Lab 8. ALU 데이터간의수학적, 논리적연산을수행하는회로 단자 a, b 로입력되는데이터를선택된연산으로변환하여단자 z 로출력 제어신호 s 에의해연산종류결정 File name : alu.v Module name: alu Input : a, b [ 각 8-bit], s [3-bit] Output : z [8-bit] Symbol & Truth Table a b s s z 연산 B - A A - B A + B A xor B A or B A and B 연산설명 Clear Subtract Subtract Add Exclusive OR Logical OR Logical AND Preset

Digital System Design with Verilog HDL - Sequential Logic

Lab. D Latch with set and reset D Latch 는게이트입력이어떤상태를유지하는동안외부데이터를읽어데이터를저장하는메모리모듈 set_n 이 들어오면출력을 reset_n 이 이되면출력은 g= 일때입력 d 의신호를읽음 set_n 과 reset_n 이입력보다우선 set_n 과 reset_n 이동시에들어오면 set_n 으로동작 File name : D_latchsr.v Module name: D_latchsr Input: set_n, reset_n, d, g [ 각 -bit] Output: q, q_n Symbol & Truth Table set_n reset_n g - - - set_n q(t+) q(t) d [ 각 -bit] q_n(t+) q_n(t) not d d g D Type Latch q q_n reset_n 2

Lab 2. D Flip - Flop D Flip-Flop 은 clock 의 rising 또는 falling edge 에서외부데이터를읽어저장하는메모리모듈비동기방식의 Reset 사용 clk 의 rising edge 에서데이터입력 d 가 Flip-Flop 에저장됨 File name : D_FF.v Module name: D_FF Input: clk, reset_n, d [ 각 -bit] Output: q [-bit] Symbol & Truth Table reset_n clk q(t+) - falling edge q(t) rising edge d d clk D Type Flip-Flop q reset_n 3

Lab 3. 8-bit Register Latch 나 Flip-Flop 을이용하여여러비트의데이터를저장하는회로 D Flip-Flop 8 개로구성 비동기식 Reset 사용 입력 d 와출력 q 의각비트는 Flip-Flop 에각각따로연결 en 신호 이되면이전출력유지 clk 의 rising edge 에서입력 d 가저장됨 File name : Reg8.v Module name: Reg8 Input: clk, reset_n, en [ 각 -bit] d [8-bit] Output: q [8-bit] Symbol & Truth Table reset_n en clk q(t+) - - - falling edge q(t) q(t) rising edge d d q en Register clk 4 reset_n

Lab 4. 8-bit Shift Register 데이터를저장하면서필요에따라오른쪽이나왼쪽으로데이터를이동시킬수있는회로비동기식 Reset 사용 clk 의 rising edge 에서 ld 가 이면입력 d 를저장 en 이 이면이전출력유지 dir 이 이면 shift right, 이면 shift left Shift8 회로로입력되는데이터는 sd 로부터받음 File name : Shift8.v Module name: Shift8 Input: clk, reset_n, en [ 각 -bit] dir, ld, sd [ 각 -bit] d [8-bit] Output: q [8-bit] Symbol d q sd en ld Register dir clk reset_n 5

Lab 4. 8-bit Shift Register (Cont.) 6

Lab 5. BCD Counter Binary counter 는이진수를출력하는 counter 모듈 ~9 사이의이진수를증가하는 counter reset_n 이 이되면출력 clk 의 rising edge 에서 counting 출력이 이되면다음출력은 이되어반복 File name : BCD_count.v Module name: BCD_count Input: clk, reset_n [ 각 -bit] Output: q [4-bit] 7

Lab 6. Johnson Counter Johnson counter 는인접한패턴간에하나의비트만달라지도록패턴을생성하는 counter 모듈 reset_n 이 이되면출력 clk 의 rising edge 에서 counting Ring counter 와같이 MSB 를 LSB 로회전시키는데그대로옮기지않고반전시켜넣음 Symbol File name : Johnson_count.v Module name: Johnson_count Input: clk, reset_n [ 각 -bit] Output: q [5-bit] clk Johnson Counter q reset_n 8

Digital System Design with Verilog HDL - Advanced Circuits

Lab. Sequence Detector 입력되는 bit stream 에서일정한패턴을찾아내는회로클럭의 rising edge 에서데이터를읽음연속적으로감지되는값이 패턴을갖는지판단 패턴이나오면 flag= 을출력다른패턴이나오면바로첫상태로이동하여패턴검색시작 Moore 형태의 FSM 으로설계 File name : seqdet.v Module name: seqdet Input : clk, rst_n, seqin [ 각 -bit] Output : flag [-bit] 2

Lab. Sequence Detector (Cont.) State Machine (Moore) 5 가지상태 START, S, S2, S3, S4 Reset 시상태는 START 임 S 은 개비트가맞았을때의상태 S2 은 2 개비트가맞았을때의상태 S3 은 3 개비트가맞았을때의상태 S4 은 4 개비트가모두맞았을때상태 seqin= Example Input bit = Output flag = seqin= Init seqin= seqin= seqin= seqin= START flag= S flag= S2 flag= S3 flag= S4 flag= seqin= seqin= seqin= seqin= 2

Lab 2. Traffic Light Controller 농로와국도가교차하는사거리에서교통신호를제어하는회로국도는차량소통이많고농로는차량소통이적음평상시에는국도방향의신호등이파란색이고농로에차량이다가오면이를감지하여농로의신호등을파란색으로바꾸어교통흐름을원활하게함농로에차가다가오면 car_on= 임신호등은빨강 (2 b), 노랑 (2 b), 파랑 (2 b) 의색을가짐 Moore 형태의 FSM 으로설계 File name : tlc.v Module name: tlc Input : clk, rst_n, car_on [ 각 -bit] Output : highwaylight [2-bit] farmlight [2-bit] 22

Lab 2. Traffic Light Controller (Cont. ) Implementation of TLC tlc 가최상위블록이고 tlc_ctl 과 tlc_timer 의하위블록으로구성 tlc_timer 블록은시간을측정하는타이머로서신호등이켜져있는시간을측정 tlc_ctl 은신호등의동작을제어하는 Moore 형태의 FSM Hierarchy of Circuits Spec. of tlc_timer tlc 의하위블럭 신호등이유지되는시간측정 start= 이되면타이머측정시작 빨간색과파란색은 2 클럭동안유지 gl_time= 노란색은 5 클럭동안유지 yl_time= tlc_timer tlc tlc_ctl File name : tlc_timer.v Module name: tlc_timer Input : clk, rst_n, start [ 각 -bit] Output : gl_time, yl_time [ 각 -bit] 23

Lab 2. Traffic Light Controller (Cont. 2) Spec. of tlc_ctl tlc 의하위블럭신호등의동작을제어하는 Moore 형태의 FSM 4 가지상태 (HG, FY, FG, HY) State Diagram Init File name : tlc_ctl.v Module name: tlc_ctl Input : clk, rst_n, car_on [ 각 -bit] gl_time, yl_time [ 각 -bit] Output : f_l, h_l [ 각 2-bit] start [-bit] else HG high=green farm=red yl_time= FY high=red farm=yellow else gl_time= car_on= gl_time= car_on= else HY high=yellow farm=red yl_time= FG high=red farm=green else 24

Lab 3. GCD (Greatest Common Divisor) GCD Flow Chart 두수중하나가 이거나같게될때까지큰수에서작은수를뺀다. 여기서는 A >= B 를만족할때까지 A 에서 B 를뺀다. 만약 A < B 가되면 A 와 B 의값을서로바꾼다. 그리고위의계산을 B 가 이될때까지계속한다. GCD 값은 B 가 이되었을때 A 에남는값이다. (GCD flow chart 참고 ) A = End Yes Yes Start GCD A= or B= No B= No A>=B Yes A=A-B No Swap A and B 25

Lab 3. GCD (Greatest Common Divisor)(Cont.) 회로도 Load A[7:] Reset D Q A B Y[7:] B[7:] D Q B = Done Clock 26

Lab 3. GCD (Greatest Common Divisor)(Cont.2) 앞장의회로처럼 Load 가 이되었을때, A 와 B 의값이입력 A_hold, B_hold 신호들이 register 에저장 Done 신호는 GCD 가계산되었는지를나타냄 ( 계산되면 ) 이회로는세개의 always 문으로구성 2 개의 input register 값을 A_hold 와 B_hold 에 load 하고 B_hold < A_hold 인지를확인한다. A_hold >= B_hold 이면, A_hold 에서 B_hold 의값을뺀다. B_hold = 이면, GCD 값을찾는다. File name : gcd.v Module name: gcd Input : Clock, Reset, Load [ 각 -bit] A, B [ 각 8-bit] Output : Y [8-bit], Done [-bit] 27

Lab 4. Digital Alarm Clock 입력 clock 은 초단위로동작 AM / PM ( 오전 / 오후 ) 로구분시간 setting 위해 LoadTime = Alarm setting 위해 LoadAlm = Alarm 이동작하기위해 AlarmEnable = Flashing 은 Reset 이인가된후시간을맞출필요가있음을나타냄시간을설정하면 Flashing = File name : alarm_clk.v Module name: alarm_clk Input : Clock_sec, Reset, LoadTime, LoadAlm, Set_AM_PM, Alarm_AM_PM_In, AlarmEnable [ 각 -bit] SetSecs, SetMins, AlarmMinsIn [ 각 6-bit] SetHours [4-bit] AlarmHoursIn [4-bit] Output : AM_PM, Flashing, Alarm [ 각 -bit] Secs, Mins [ 각 6-bit] Hours [4-bit] 28