Verilog

Verilog HDLbeginner

Verilog Module Structure

Module, ports, endmodule, instance hierarchy.

4 min read
Verilog HDLbeginner

Port Connection Rules

Input, Output, Inout, reg/wire connection rules.

6 min read
Verilog HDLbeginner

FSM Behavioral Modeling

Mealy vs Moore coding styles.

11 min read
Verilog HDLbeginner

Verilog Operators

Arithmetic, logical, bitwise, reduction, shift, concatenation.

10 min read
Verilog HDLbeginner

Vectors and Arrays

Declaring buses, memories, reg [7:0] mem [0:255].

4 min read
Verilog HDLbeginner

Data Types and Logic Values

Net (wire), Register (reg), 4-value logic (0,1,x,z).

9 min read
Verilog HDLbeginner

Modeling Flip-Flops

D-FF, T-FF, JK-FF with async/sync resets.

7 min read
Verilog HDLbeginner

Synchronous Memories

Modeling RAM/ROM with clock.

11 min read
Verilog HDLbeginner

PLI Basics

Programming Language Interface C/C++ connection.

11 min read
Verilog HDLbeginner

Simulation Time

Timescale directive, $time, $finish, $stop.

10 min read
Verilog HDLbeginner

Verification Plan

Directed vs Random testing strategies.

5 min read
Verilog HDLbeginner

Assertions

Introduction to SystemVerilog Assertions (SVA).

7 min read
Verilog HDLbeginner

Randomization

Using $random for test vectors.

8 min read
Verilog HDLbeginner

Modeling Comparators

Comparing vectors.

10 min read
Verilog HDLbeginner

Switch Level Modeling

NMOS, PMOS, CMOS switches, transmission gates.

10 min read
Verilog HDLbeginner

User Defined Primitives

Creating custom combinational/sequential primitives.

6 min read
Verilog HDLbeginner

Delays in Dataflow

Inertial delay, transport delay.

4 min read
Verilog HDLbeginner

Procedural Blocks

Always block, initial block, sensitivity lists.

4 min read
Verilog HDLbeginner

Blocking vs Non-Blocking

Operators = vs <=, scheduling semantics.

7 min read
Verilog HDLbeginner

Control Statements

If-else, case, casez, casex statements.

4 min read
Verilog HDLbeginner

Timing Controls

Delay control #, event control @, wait statement.

4 min read
Verilog HDLbeginner

Introduction to HDLs

Verilog vs VHDL, simulation vs synthesis.

12 min read
Verilog HDLbeginner

Loops in Verilog

For, while, repeat, forever loops.

8 min read
Verilog HDLbeginner

Block Statements

Begin-end, fork-join parallel blocks.

9 min read
Verilog HDLbeginner

Task and Function

Subroutines, differences, automatic re-entrancy.

5 min read
Verilog HDLbeginner

Continuous Assignment

Assign statement, implicit continuous assignment.

12 min read
Verilog HDLbeginner

Conditional Operator

Modeling MUX using ternary operator.

7 min read
Verilog HDLbeginner

Modeling Combinational Logic

Boolean equations using dataflow.

7 min read
Verilog HDLbeginner

Gate Level Modeling

Built-in primitives (and, or, not), gate delays.

7 min read
Verilog HDLbeginner

gate delays

Rise, fall, turn-off delays, min/typ/max.

5 min read
Verilog HDLbeginner

Module Instantiation

Port mapping by order, by name.

6 min read
Verilog HDLbeginner

Generate Blocks

Conditional and loop generate for scalable structures.

12 min read
Verilog HDLbeginner

Modeling Latches

Level sensitive behavior, inferring latches accident.

6 min read
Verilog HDLbeginner

Modeling Counters

Up/down counter, mod-N counter.

12 min read
Verilog HDLbeginner

Modeling Shift Registers

SISO, SIPO, PISO, PIPO.

8 min read
Verilog HDLbeginner

Modeling Multiplexers

Using if-else, case, assign statements.

12 min read
Verilog HDLbeginner

Modeling Decoders/Encoders

Behavioral modeling of 3:8 decoder, priority encoder.

7 min read
Verilog HDLbeginner

Modeling ALUs

Arithmetic Logic Unit implementation.

10 min read
Verilog HDLbeginner

Modeling Adders

Half, Full, Ripple Carry Adder.

10 min read
Verilog HDLbeginner

Testbench Basics

Stimulus, monitoring, checking results.

12 min read
Verilog HDLbeginner

System Tasks

File I/O ($fopen), printing ($display, $monitor).

11 min read
Verilog HDLbeginner

FPGA vs ASIC

Programmable logic vs fixed custom silicon.

10 min read
Verilog HDLbeginner

Synthesis Concepts

RTL to Netlist translation.

12 min read
Verilog HDLbeginner

Verilog 2001 Features

Signed arithmetic, generate, wildcards.

10 min read
Verilog HDLbeginner

Lexical Conventions

Keywords, identifiers, numbers, whiteboard.

10 min read