lecture9 - ECE 4514 Digital Design II Spring 2008 Lecture...

Info iconThis preview shows pages 1–7. Sign up to view the full content.

View Full Document Right Arrow Icon
ECE 4514 Digital Design II Spring 2008 Lecture 9: eview of Key Ideas, System Patrick Schaumont Spring 2008 ECE 4514 Digital Design II Lecture 9: System Commands and Testbenches Review of Key Ideas, Commands and Testbenches A Language Lecture Patrick Schaumont
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Iterating the Key Ideas b Verilog is a modeling language. It cannot express hardware directly. It describes the activities of a hardware implementation. module a_module(q, rst, clk, d); output q; input rst; input clk; nput ; This fragment describes the behavior of a flip-flop but does not describe e flip op itself! Patrick Schaumont Spring 2008 ECE 4514 Digital Design II Lecture 9: System Commands and Testbenches input d; wire next_r1; reg r1; always @( posedge clk or negedge rst) if (rst) r1 = next_r1; else r1 = 0; assign next_r1 = d; assign q = r1; endmodule the flip-flop itself! It describes the flip-flop using variables (reg), nets (wire), and processes (always, assign). VERILOG = 'VERIfy LOGic'
Background image of page 2
Verilog Simulation Cycle Nets Variables are in the sensitivity list of Gates execute and make changes to Processes Patrick Schaumont Spring 2008 ECE 4514 Digital Design II Lecture 9: System Commands and Testbenches Behavioral code
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Iterating the Key Ideas Simulation Time and Variables/Nets in Verilog variable (reg) once assigned, will remember what is stored into it startup value = X value at time T defined by the Patrick Schaumont Spring 2008 ECE 4514 Digital Design II Lecture 9: System Commands and Testbenches wire (net) can hold a value only at the current time (time = T) startup value = X value at time T defined by the variable that drives the wire previous assignment on the variable
Background image of page 4
Always and Assign always blocks - within block statement (begin . . end), executes sequentially - will only stop when waiting for an event (wait, @, #) - assignment (=) only on variables (reg) Patrick Schaumont Spring 2008 ECE 4514 Digital Design II Lecture 9: System Commands and Testbenches ( 'procedural assignment ') - intra-assignment delay possible assign statement - assignment (=) only on nets (wire) ( 'continuous assignment' ) - no intra-assignment delay possible
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
gate-level - model hardware with structure, by interconnecting primitives multiplexed data-path Patrick Schaumont Spring 2008 ECE 4514 Digital Design II Lecture 9: System Commands and Testbenches - model combinational logic with assign expressions, and flip-flops with wire/reg combination. - update registers with always block
Background image of page 6
Image of page 7
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 12/24/2011 for the course ECE 4514 taught by Professor Staff during the Fall '08 term at Virginia Tech.

Page1 / 29

lecture9 - ECE 4514 Digital Design II Spring 2008 Lecture...

This preview shows document pages 1 - 7. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online