SlideShare a Scribd company logo
What is HDL?
● hardware description language describes the
hardware of digital systems in textual form.
● One can design any hardware at any level
● Simulation of designs before fabrication
● With the advent of VLSI, it is not possible to verify a
complex design with millions of gates on a
breadboard, HDLs came into existence to verify the
functionality of these circuits.
Most Commonly used HDLs
● Verilog
● Verilog HDL is commonly used in the US industry.
Major digital design companies in Pakistan use
Verilog HDL as their primary choice.
● most commonly used in the design, verification, and
implementation of digital logic chips
● VHDL (VHSIC (Very High Speed Integrated Circuits) hardware
description language)
● VHDL is more popular in Europe.
● commonly used as a design-entry language for field-
programmable gate arrays. Field-Programmable Gate
Array is a type of logic chip that can be programmed.
Verilog Simulator
There are many logic simulators used for Verilog
HDL. Most common are:
● Xilinx
● Veriwell
● Model Sim
For Beginners Veriwell is good choice and is very user
friendly.
Xilinx and ModelSim are widely used.
Levels of Abstraction
There are four different levels of abstraction in verilog:
● Behavioral /Algorithmic
● Data flow
● Gate level
● Switch level.
We will cover Gate level, Data flow and Behavioral
Level modeling
Getting started…
A verilog program for a particular application consists
of two blocks
● Design Block (Module)
● Testing Block (Stimulus)
Design Block
Design Methodologies:
Two types of design methodologies
●
●
Top Down Design
Bottom Up Design
Design
Block
inputs outputs
In Top Down design methodology, we define the top level
block and identify the sub-blocks necessary to build the top
level block. We further divide the sub-block until we come
to the leaf cells, which are the cells which cannot be
divided.
In a Bottom Up design methodology, we first identify the
building blocks , we build bigger blocks using these building
blocks. These cells are then used for high level block until
we build the top level block in the design
EXAMPLE
FOUR BIT ADDER (Ripple carry adder)
Module Representation
Verilog provides the concept of module
A module is a
● Basic Building block in Verilog
● Basic Building block in Verilog
● It can be a single element or collection of lower design blocks
A verilog code starts with module
Syntax:
module <module-name>(inputs, outputs);
//Define inputs and outputs
…………
…………
…………
endmodule
Every verilog program starts with the
keyword module and ends with the keyword
endmodule
Input Output Definition
● Once the module is defined at the start the inputs and
outputs are to be defined explicitly. e.g.
//means there are 2 inputs of one bit
● input a , b
each
● If input or output is more than 1 bit i.e. two or more bits,
then the definition will be:
input [3:0] A, B; //4 bit inputs A3-A0 and B3-B0
output [3:0] C;
Levels of Abstraction
Gate Level Modeling
In gate level modeling a circuit can be defined by use of
logic gates.
These gates predefined in verilog library.
The basic gates and their syntax is as follows:
and gate_name(output, inputs);
or gate_name(output, inputs);
not gate_name (output, inputs);
xor gate_name(output, inputs);
nor gate_name(output, inputs);
nand gate_name(output, inputs);
xnor gate_name(output, inputs);
Data Flow Modeling
Continuous assignment statement is used.
Keyword assign is used followed by =
Most common operator types are
Operator Types Operator Symbol Operation
performed
Number of
Operands
Arithmetic *
/
+
-
Multiply
Divide
Add
Subract
Two
Two
Two
two
Bitwise Logical ~
&
|
^
^~ or ~^
Bitwise negation
Bitwise and
Bitwise or
Bitwise xor
Bitwise xnor
One
Two
Two
Two
two
Shift >>
<<
Shift right
Shift left
Two
Two
Concatenation { } Concatenation Any number
Conditional ?: Conditional three
Examples
// y=x’
// y= ab
//y= a b
1. assign x = a + b;
2. assign y = ~ x ;
3. assign y = a & b;
4. assign w = a ^ b;
5. assign y = x >> 1; //shift right x by 1
//concatenate b with c
6. assign y = {b, c};
e.g. b = 3’b101, c =3’b 111
y = 101111
assign {cout , sum} = a + b + cin;
7. assign y = s ? b : a
when s = 1 , y = b when
//concatenate sum and cout
// 2×1 multiplexer
s = 0 , y = a
assign y = s1 ? ( s0 ? d : c ) : ( s0 ? b : a ); // 4×1 MUX
Module Instantiation
● Module instantiation is a process of connecting one
module to another.
● For example in a test bench or stimulus the top level
design has to be instantiated
Testing Block (Stimulus)
● In order to test your circuit a test bench code is
to be written which is commonly called Stimulus.
● The design block has to be instantiated/called
● It displays the output of the design based on the
inputs.
Example
2- Input AND Gate
The Design and Stimulus blocks will be as
follows:
Design Block
1)Gate Level Modeling
//module definition
// inputs(by default it takes 1
// one bit output
module practice (y, a, b);
input a, b;
bit input
output y;
and gate_1(y, a, b) ;
endmodule
2) Data Flow Modeling
//module definition
// by default it takes 1 bit input
// one bit output
module practice (y, a, b);
input a, b;
outputy;
assign y = a & b;
endmodule
Stimulus Block
module stimulus;
reg a, b;
wire y;
//Instantiate the practice module
practice p0(y, a, b);
initial
begin
a=0; b=0;
#5 a=1; b=1;
#5 a=0; b=1;
#5 a=1; b=0;
#5 a=1; b=1;
// stop the simulation
// terminate the simulation
#5 $stop;
#5 $finish;
end
initial
begin
$display("|%b| and |%b| = ", a, b);
($time, "|%b |" , y);
$monitor
end
//initial
//$vw_dumpvars; // display the
simulation in the form of timing diagram
endmodule
Example #2:
4 bit ripple carry adder
Full Adder
Bottom Level module
//Define a full adder
module fulladder (sum, c_out, a, b,
c_in);
//I/O Port declaration
output sum, c_out;
input a, b, c_in;
//Internal nets
wire s1, c1, c2;
//full adder logic configuration
xor ( s1,a,b);
and (c1,a,b);
xor (sum,s1,c_in);
and (c2,s1,c_in);
or (c_out,c2,c1);
endmodule
TOP LEVEL MODULE
//Define a 4 bit 4 adder
module toplevel_fa(sum,c_out,a,b,c_in);
//I/O port declaration
output [3:0] sum;
output c_out;
input [3:0] a, b;
input c_in;
//internal nets
wire c1,c2,c3;
//Instantiate four 1-bit full adder
fulladder fa0(sum[0],c1,a[0],b[0],c_in);
fulladder fa1(sum[1],c2,a[1],b[1],c1);
fulladder fa2(sum[2],c3,a[2],b[2],c2);
fulladder fa3(sum[3],c_out,a[3],b[3],c3);
endmodule
Test Bench (stimulus)
//define stimulus toplevel module
module stimulus;
//set up variables
reg [3:0]a,b;
reg c_in;
wire [3:0] sum;
wire c_out;
//Instantiate the toplevelmodule(ripple carry adder) call it tl
toplevel_fa tl(sum,c_out,a,b,c_in);
//stimulate inputs
initial
begin
a = 4'b0000; b = 4'b0010; c_in = 1'b0;
#1 $display (“ a = %b, b = %b, c_in = %b, sum = %b", a, b, c_in, sum);
a = 4'd1; b = 4'd2; c_in = 1'b1;
#2$display (“ a = %b, b = %b, c_in = %b, sum = %b", a, b, c_in, sum);
a = 4'hf; b = 4'ha; c_in = 1'b0;
#2$display (“ a = %b, b = %b, c_in = %b, sum = %b", a, b, c_in,
sum);
end
endmodule
Verilog Keywords
● Verilog uses about 100 predefined keywords. All the
keywords are represented in colored font (either green,
blue or red). if it is not shown in a colored font it means
there must be some typing error.
● All the verilog statements are terminated with a
semicolon(;) except for the statements (keywords) like
initial, begin, always, if, for, while etc…
● Verilog is case sensitive i.e. the keywords are written in
lower case.
Continued……
● Most common keywords are
module, endmodule input,
output
wire, reg
$display, $print, $monitor
always, for, while, if
initial, begin
and, or, not, xor, xnor, nard, nor
posedge , negedge, clock, reset, case
$vw_dumpvars, $stop, $finish
● Single line comment is given by // ( two consecutive slash)
and multi-line comment is given by /*……… */
fore.g // This is the first session of verilog
/* this is the first
session of verilog*/

More Related Content

Similar to vlsi design using verilog presentaion 1

Day2 Verilog HDL Basic
Day2 Verilog HDL BasicDay2 Verilog HDL Basic
Day2 Verilog HDL Basic
Ron Liu
 
Verilog Final Probe'22.pptx
Verilog Final Probe'22.pptxVerilog Final Probe'22.pptx
Verilog Final Probe'22.pptx
SyedAzim6
 
EMBEDDED SYSTEMS 4&5
EMBEDDED SYSTEMS 4&5EMBEDDED SYSTEMS 4&5
EMBEDDED SYSTEMS 4&5
PRADEEP
 

Similar to vlsi design using verilog presentaion 1 (20)

Day2 Verilog HDL Basic
Day2 Verilog HDL BasicDay2 Verilog HDL Basic
Day2 Verilog HDL Basic
 
Verilog
VerilogVerilog
Verilog
 
An Overview of SystemVerilog for Design and Verification
An Overview of SystemVerilog  for Design and VerificationAn Overview of SystemVerilog  for Design and Verification
An Overview of SystemVerilog for Design and Verification
 
Verilog Lecture2 thhts
Verilog Lecture2 thhtsVerilog Lecture2 thhts
Verilog Lecture2 thhts
 
Verilogspk1
Verilogspk1Verilogspk1
Verilogspk1
 
Verilog
VerilogVerilog
Verilog
 
verilog
verilogverilog
verilog
 
Verilog Final Probe'22.pptx
Verilog Final Probe'22.pptxVerilog Final Probe'22.pptx
Verilog Final Probe'22.pptx
 
An Introductory course on Verilog HDL-Verilog hdl ppr
An Introductory course on Verilog HDL-Verilog hdl pprAn Introductory course on Verilog HDL-Verilog hdl ppr
An Introductory course on Verilog HDL-Verilog hdl ppr
 
VIT_Workshop.ppt
VIT_Workshop.pptVIT_Workshop.ppt
VIT_Workshop.ppt
 
Seminar on Digital Multiplier(Booth Multiplier) Using VHDL
Seminar on Digital Multiplier(Booth Multiplier) Using VHDLSeminar on Digital Multiplier(Booth Multiplier) Using VHDL
Seminar on Digital Multiplier(Booth Multiplier) Using VHDL
 
Advanced Digital Design With The Verilog HDL
Advanced Digital Design With The Verilog HDLAdvanced Digital Design With The Verilog HDL
Advanced Digital Design With The Verilog HDL
 
Hardware Description Language
Hardware Description Language Hardware Description Language
Hardware Description Language
 
Fpga 04-verilog-programming
Fpga 04-verilog-programmingFpga 04-verilog-programming
Fpga 04-verilog-programming
 
Session1
Session1Session1
Session1
 
slide8.ppt
slide8.pptslide8.ppt
slide8.ppt
 
Vhdl new
Vhdl newVhdl new
Vhdl new
 
EMBEDDED SYSTEMS 4&5
EMBEDDED SYSTEMS 4&5EMBEDDED SYSTEMS 4&5
EMBEDDED SYSTEMS 4&5
 
Verilog presentation final
Verilog presentation finalVerilog presentation final
Verilog presentation final
 
Verilog Tutorial - Verilog HDL Tutorial with Examples
Verilog Tutorial - Verilog HDL Tutorial with ExamplesVerilog Tutorial - Verilog HDL Tutorial with Examples
Verilog Tutorial - Verilog HDL Tutorial with Examples
 

Recently uploaded

Hall booking system project report .pdf
Hall booking system project report  .pdfHall booking system project report  .pdf
Hall booking system project report .pdf
Kamal Acharya
 
Automobile Management System Project Report.pdf
Automobile Management System Project Report.pdfAutomobile Management System Project Report.pdf
Automobile Management System Project Report.pdf
Kamal Acharya
 
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptxCFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
R&R Consult
 

Recently uploaded (20)

KIT-601 Lecture Notes-UNIT-3.pdf Mining Data Stream
KIT-601 Lecture Notes-UNIT-3.pdf Mining Data StreamKIT-601 Lecture Notes-UNIT-3.pdf Mining Data Stream
KIT-601 Lecture Notes-UNIT-3.pdf Mining Data Stream
 
Cloud-Computing_CSE311_Computer-Networking CSE GUB BD - Shahidul.pptx
Cloud-Computing_CSE311_Computer-Networking CSE GUB BD - Shahidul.pptxCloud-Computing_CSE311_Computer-Networking CSE GUB BD - Shahidul.pptx
Cloud-Computing_CSE311_Computer-Networking CSE GUB BD - Shahidul.pptx
 
Electrostatic field in a coaxial transmission line
Electrostatic field in a coaxial transmission lineElectrostatic field in a coaxial transmission line
Electrostatic field in a coaxial transmission line
 
Event Management System Vb Net Project Report.pdf
Event Management System Vb Net  Project Report.pdfEvent Management System Vb Net  Project Report.pdf
Event Management System Vb Net Project Report.pdf
 
A case study of cinema management system project report..pdf
A case study of cinema management system project report..pdfA case study of cinema management system project report..pdf
A case study of cinema management system project report..pdf
 
Pharmacy management system project report..pdf
Pharmacy management system project report..pdfPharmacy management system project report..pdf
Pharmacy management system project report..pdf
 
shape functions of 1D and 2 D rectangular elements.pptx
shape functions of 1D and 2 D rectangular elements.pptxshape functions of 1D and 2 D rectangular elements.pptx
shape functions of 1D and 2 D rectangular elements.pptx
 
Hall booking system project report .pdf
Hall booking system project report  .pdfHall booking system project report  .pdf
Hall booking system project report .pdf
 
retail automation billing system ppt.pptx
retail automation billing system ppt.pptxretail automation billing system ppt.pptx
retail automation billing system ppt.pptx
 
AI for workflow automation Use cases applications benefits and development.pdf
AI for workflow automation Use cases applications benefits and development.pdfAI for workflow automation Use cases applications benefits and development.pdf
AI for workflow automation Use cases applications benefits and development.pdf
 
Explosives Industry manufacturing process.pdf
Explosives Industry manufacturing process.pdfExplosives Industry manufacturing process.pdf
Explosives Industry manufacturing process.pdf
 
Introduction to Casting Processes in Manufacturing
Introduction to Casting Processes in ManufacturingIntroduction to Casting Processes in Manufacturing
Introduction to Casting Processes in Manufacturing
 
Halogenation process of chemical process industries
Halogenation process of chemical process industriesHalogenation process of chemical process industries
Halogenation process of chemical process industries
 
Furniture showroom management system project.pdf
Furniture showroom management system project.pdfFurniture showroom management system project.pdf
Furniture showroom management system project.pdf
 
Automobile Management System Project Report.pdf
Automobile Management System Project Report.pdfAutomobile Management System Project Report.pdf
Automobile Management System Project Report.pdf
 
2024 DevOps Pro Europe - Growing at the edge
2024 DevOps Pro Europe - Growing at the edge2024 DevOps Pro Europe - Growing at the edge
2024 DevOps Pro Europe - Growing at the edge
 
KIT-601 Lecture Notes-UNIT-5.pdf Frame Works and Visualization
KIT-601 Lecture Notes-UNIT-5.pdf Frame Works and VisualizationKIT-601 Lecture Notes-UNIT-5.pdf Frame Works and Visualization
KIT-601 Lecture Notes-UNIT-5.pdf Frame Works and Visualization
 
HYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generationHYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generation
 
NO1 Pandit Black Magic Removal in Uk kala jadu Specialist kala jadu for Love ...
NO1 Pandit Black Magic Removal in Uk kala jadu Specialist kala jadu for Love ...NO1 Pandit Black Magic Removal in Uk kala jadu Specialist kala jadu for Love ...
NO1 Pandit Black Magic Removal in Uk kala jadu Specialist kala jadu for Love ...
 
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptxCFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
 

vlsi design using verilog presentaion 1

  • 1.
  • 2.
  • 3. What is HDL? ● hardware description language describes the hardware of digital systems in textual form. ● One can design any hardware at any level ● Simulation of designs before fabrication ● With the advent of VLSI, it is not possible to verify a complex design with millions of gates on a breadboard, HDLs came into existence to verify the functionality of these circuits.
  • 4. Most Commonly used HDLs ● Verilog ● Verilog HDL is commonly used in the US industry. Major digital design companies in Pakistan use Verilog HDL as their primary choice. ● most commonly used in the design, verification, and implementation of digital logic chips ● VHDL (VHSIC (Very High Speed Integrated Circuits) hardware description language) ● VHDL is more popular in Europe. ● commonly used as a design-entry language for field- programmable gate arrays. Field-Programmable Gate Array is a type of logic chip that can be programmed.
  • 5. Verilog Simulator There are many logic simulators used for Verilog HDL. Most common are: ● Xilinx ● Veriwell ● Model Sim For Beginners Veriwell is good choice and is very user friendly. Xilinx and ModelSim are widely used.
  • 6. Levels of Abstraction There are four different levels of abstraction in verilog: ● Behavioral /Algorithmic ● Data flow ● Gate level ● Switch level. We will cover Gate level, Data flow and Behavioral Level modeling
  • 7. Getting started… A verilog program for a particular application consists of two blocks ● Design Block (Module) ● Testing Block (Stimulus)
  • 8. Design Block Design Methodologies: Two types of design methodologies ● ● Top Down Design Bottom Up Design Design Block inputs outputs
  • 9. In Top Down design methodology, we define the top level block and identify the sub-blocks necessary to build the top level block. We further divide the sub-block until we come to the leaf cells, which are the cells which cannot be divided.
  • 10. In a Bottom Up design methodology, we first identify the building blocks , we build bigger blocks using these building blocks. These cells are then used for high level block until we build the top level block in the design
  • 11. EXAMPLE FOUR BIT ADDER (Ripple carry adder)
  • 12. Module Representation Verilog provides the concept of module A module is a ● Basic Building block in Verilog ● Basic Building block in Verilog ● It can be a single element or collection of lower design blocks A verilog code starts with module Syntax: module <module-name>(inputs, outputs); //Define inputs and outputs ………… ………… ………… endmodule Every verilog program starts with the keyword module and ends with the keyword endmodule
  • 13. Input Output Definition ● Once the module is defined at the start the inputs and outputs are to be defined explicitly. e.g. //means there are 2 inputs of one bit ● input a , b each ● If input or output is more than 1 bit i.e. two or more bits, then the definition will be: input [3:0] A, B; //4 bit inputs A3-A0 and B3-B0 output [3:0] C;
  • 15. Gate Level Modeling In gate level modeling a circuit can be defined by use of logic gates. These gates predefined in verilog library. The basic gates and their syntax is as follows: and gate_name(output, inputs); or gate_name(output, inputs); not gate_name (output, inputs); xor gate_name(output, inputs); nor gate_name(output, inputs); nand gate_name(output, inputs); xnor gate_name(output, inputs);
  • 16. Data Flow Modeling Continuous assignment statement is used. Keyword assign is used followed by = Most common operator types are Operator Types Operator Symbol Operation performed Number of Operands Arithmetic * / + - Multiply Divide Add Subract Two Two Two two Bitwise Logical ~ & | ^ ^~ or ~^ Bitwise negation Bitwise and Bitwise or Bitwise xor Bitwise xnor One Two Two Two two Shift >> << Shift right Shift left Two Two Concatenation { } Concatenation Any number Conditional ?: Conditional three
  • 17. Examples // y=x’ // y= ab //y= a b 1. assign x = a + b; 2. assign y = ~ x ; 3. assign y = a & b; 4. assign w = a ^ b; 5. assign y = x >> 1; //shift right x by 1 //concatenate b with c 6. assign y = {b, c}; e.g. b = 3’b101, c =3’b 111 y = 101111 assign {cout , sum} = a + b + cin; 7. assign y = s ? b : a when s = 1 , y = b when //concatenate sum and cout // 2×1 multiplexer s = 0 , y = a assign y = s1 ? ( s0 ? d : c ) : ( s0 ? b : a ); // 4×1 MUX
  • 18. Module Instantiation ● Module instantiation is a process of connecting one module to another. ● For example in a test bench or stimulus the top level design has to be instantiated
  • 19. Testing Block (Stimulus) ● In order to test your circuit a test bench code is to be written which is commonly called Stimulus. ● The design block has to be instantiated/called ● It displays the output of the design based on the inputs.
  • 20. Example 2- Input AND Gate The Design and Stimulus blocks will be as follows:
  • 21. Design Block 1)Gate Level Modeling //module definition // inputs(by default it takes 1 // one bit output module practice (y, a, b); input a, b; bit input output y; and gate_1(y, a, b) ; endmodule
  • 22. 2) Data Flow Modeling //module definition // by default it takes 1 bit input // one bit output module practice (y, a, b); input a, b; outputy; assign y = a & b; endmodule
  • 23. Stimulus Block module stimulus; reg a, b; wire y; //Instantiate the practice module practice p0(y, a, b); initial begin a=0; b=0; #5 a=1; b=1; #5 a=0; b=1; #5 a=1; b=0; #5 a=1; b=1; // stop the simulation // terminate the simulation #5 $stop; #5 $finish; end initial begin $display("|%b| and |%b| = ", a, b); ($time, "|%b |" , y); $monitor end //initial //$vw_dumpvars; // display the simulation in the form of timing diagram endmodule
  • 24. Example #2: 4 bit ripple carry adder
  • 26. Bottom Level module //Define a full adder module fulladder (sum, c_out, a, b, c_in); //I/O Port declaration output sum, c_out; input a, b, c_in; //Internal nets wire s1, c1, c2; //full adder logic configuration xor ( s1,a,b); and (c1,a,b); xor (sum,s1,c_in); and (c2,s1,c_in); or (c_out,c2,c1); endmodule
  • 27. TOP LEVEL MODULE //Define a 4 bit 4 adder module toplevel_fa(sum,c_out,a,b,c_in); //I/O port declaration output [3:0] sum; output c_out; input [3:0] a, b; input c_in; //internal nets wire c1,c2,c3; //Instantiate four 1-bit full adder fulladder fa0(sum[0],c1,a[0],b[0],c_in); fulladder fa1(sum[1],c2,a[1],b[1],c1); fulladder fa2(sum[2],c3,a[2],b[2],c2); fulladder fa3(sum[3],c_out,a[3],b[3],c3); endmodule
  • 28. Test Bench (stimulus) //define stimulus toplevel module module stimulus; //set up variables reg [3:0]a,b; reg c_in; wire [3:0] sum; wire c_out; //Instantiate the toplevelmodule(ripple carry adder) call it tl toplevel_fa tl(sum,c_out,a,b,c_in);
  • 29. //stimulate inputs initial begin a = 4'b0000; b = 4'b0010; c_in = 1'b0; #1 $display (“ a = %b, b = %b, c_in = %b, sum = %b", a, b, c_in, sum); a = 4'd1; b = 4'd2; c_in = 1'b1; #2$display (“ a = %b, b = %b, c_in = %b, sum = %b", a, b, c_in, sum); a = 4'hf; b = 4'ha; c_in = 1'b0; #2$display (“ a = %b, b = %b, c_in = %b, sum = %b", a, b, c_in, sum); end endmodule
  • 30. Verilog Keywords ● Verilog uses about 100 predefined keywords. All the keywords are represented in colored font (either green, blue or red). if it is not shown in a colored font it means there must be some typing error. ● All the verilog statements are terminated with a semicolon(;) except for the statements (keywords) like initial, begin, always, if, for, while etc… ● Verilog is case sensitive i.e. the keywords are written in lower case.
  • 31. Continued…… ● Most common keywords are module, endmodule input, output wire, reg $display, $print, $monitor always, for, while, if initial, begin and, or, not, xor, xnor, nard, nor posedge , negedge, clock, reset, case $vw_dumpvars, $stop, $finish ● Single line comment is given by // ( two consecutive slash) and multi-line comment is given by /*……… */ fore.g // This is the first session of verilog /* this is the first session of verilog*/