Download presentation

Presentation is loading. Please wait.

Published byEdward Roling Modified over 2 years ago

1
Verilog Section 3.10 Section 4.5

2
Keywords Keywords are predefined lowercase identifiers that define the language constructs – Key example of keywords: module, endmodule, input, output, and wire.

3
assign The assignment is said to be sensitive to the variables in the RHS expression because anytime a variable in the RHS changes during the simulation, the RHS expression is reevaluated and the result is used to update the LHS.

4
Semicolon Each statement must end with a semicolon (;)

5
Bitwise Logic Operation Bitwise means 1 bit at a time Bitwise logic operatorVerilog ANDa&b ORa|b XORa^b INVERT~a NAND~(a&b) NOR~(a|b) XNOR!(a^b)

6
wire You can think of a wire as a wire in a circuit where actual voltages Could be measured.

7
Wire example Use & for AND operation Use tilda (~) for the INVERT operation Use | for the OR operation

8
Waveform

9
Using Verilog Primitives Verilog also has keywords such as and or and not. The output of a primitive must be listed first.

10
Gate Delays In Verilog, the propagation delay of a gate is specified in terms of time units and is specified by the symbol #. `timescale 1ns/100ps – The first number specifies the unit of measurement for time delays. – The second number specifies the precisions for which the delays are rounded off.

11
Gate Delay E is not defined until after 1 ns.

12
Gate Delay E is not defined until 1 ns. W is not defined until 2 ns. This means that D is not defined until 3 ns.

13
Binary Addition Example

14
Derivation of ∑ (ES112 Slides) BA∑ 000 101 011 110

15
Derivation of Carry Out (ES112 Slides) Question: What primitive best implements C o ? Inputs: A, B Outputs: C o =A∙B BACoCo 000 100 010 111

16
Implementation of a Half-Adder

17
Limitation of a Half Adder A half-adder does not account for carry-in.

18
Truth Table for a Full Adder carry-in

19
Karnaugh Map For the Sum Bit (ES112 Review)

20
Karnaugh Map For the Carry-Out Bit (ES112 Review)

21
Implementation of a Full Adder (carry-in)

22
Schematic of a Full Adder Half-adder(not including the bubble) Half-adder

23
Build a Verilog Representation of a Full Adder Circuit Build a half adder circuit Build a test bench for the adder circuit Assemble a full adder circuit Build a test bench circuit to test the full –adder Write the code to implement the adder circuit on FPGA

24
Build a Half-Adder Circuit (Figure 4.5)

25
Build a Test Bench in Verilog Ideas: (page 112 of the textbook) 1.reg 2.Initial statement 3.Assign value to a single bit 4.$finish 1’b0=one binary digit with a value of 0 1’b1=one binary digit with a value of 1

26
Initial, $finish inital: keyword used with a set of statements that begin executing when simulation is initialized. $finish: specifies the termination of simulation.

27
Block statement A block statement consists of several statements that are executed in sequence from top to bottom.

28
Build a Full-Adder Circuit w1 w2w3 M1M2

29
Full-Adder Top Level Circuit

30
Build a FPGA Top Level Circuit (x) (y) (z)(s) (c) See gates2.pdf (available from the course website) for reference

Similar presentations

OK

LECTURE V TEST BENCHES. As your projects become more complex and multiple modules are employed, it will no longer be possible to simulate them as we did.

LECTURE V TEST BENCHES. As your projects become more complex and multiple modules are employed, it will no longer be possible to simulate them as we did.

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google

Ppt on flags of the world Ppt on do's and don'ts of group discussion skills Ppt on earth and space issues Ppt on french culture in french language Ppt on air pollution in hindi Ppt on brand management by keller Ppt on census and sample methods of collection of data Ppt on brand marketing specialist Led based message display ppt on tv Ppt on brand management process