| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
This is a tutorial repository to learn verilog easily with all the basics that are required to get started for this language.
Verilog is a hardware language. Examples of such languages are VHDL( VHSIC(Very High Speed Integrated Circuit) HDL). It is vendor independent for example, Xilinx, Verywell etc.Full form verilog is Verify Logic. It is used for Digital ICs not for Analog ICs. It uses gate level design abstraction. It was made at Gateway Design Automation and now is IEEE 1364-2001 standard. HDL came to help with the verification of design of complex circuits that are in place. Also, logic systhesis tools can convert design to any fabrication technology. Verilog is concurrent, case-sensitive and synthesizable language.
Now, verilog's basic building block is module that provides information about input and output ports but hides internal implementation.
Two primary data-types are as follow :
Other data-types are :
Integers, Arrays, Memories, Parameters, Strings are few other datatypes.
ex 1 : module pos_map(q,clk,rst)
output[1:0] q;
input clk, rst;
tflipflop lab0(q[0], clk, rst);
tflipflop lab1(q[1], clk, rst);
end
ex 2 : module nom_map(q,clk,rst)
output[1:0] q;
input clk, rst;
tflipflop lab0(.q(q[0]), .clk(clk), .rst(rst));
tflipflop lab1(.q(q[0]), .clk(clk), .rst(rst));
end
Comments : // for single line comment and /* ... */ multple comment lines.
$display vs $monitor : $dispay is used to display immediate value of variables. It gets executed in active region. $monitor gets executed whenever the value of the given variable changes in it. It gets executed in the postponed region. Monitor is required only once to be written.
More relevant points to be added.
| Back | FazBrowse Home | New Git URL |