hardware descriptive languages 3

Upload: puspala-manojkumar

Post on 30-May-2018

220 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/9/2019 Hardware Descriptive Languages 3

    1/10

    Module4

    Design of Embedded

    ProcessorsVersion 2 EE IIT, Kharagpur 1

    Lesson23

    Introduction to HardwareDescription Languages-III

    Version 2 EE IIT, Kharagpur 2

  • 8/9/2019 Hardware Descriptive Languages 3

    2/10

  • 8/9/2019 Hardware Descriptive Languages 3

    3/10

  • 8/9/2019 Hardware Descriptive Languages 3

    4/10

  • 8/9/2019 Hardware Descriptive Languages 3

    5/10

  • 8/9/2019 Hardware Descriptive Languages 3

    6/10

    proceduralalways, if, then, else, case, casex,casez

    initial is not supported

    procedural blocks begin, end, named blocks, disable

    Disabling of named blocks

    allowed

    data flow assignDelay information isignored

    named Blocks disableDisabling of named blocksupported.

    loops for, while, foreverWhile and forever loopsmust contain @(posedgeclk) or @(negedge clk)

    3.2.4 Operators and Their Description

    Operator Type Operator SymbolDESCRIPTION

    Arithmetic * Multiply

    / Division

    + Add

    - Subtract

    % Modulus

    + Unary plus

    - Unary minus

    Logical ! Logical negation

    && Logical and

    || Logical or

    Relational > Greater than

    < Less than

    >= Greater than or equal

    > Right shift

    Version 2 EE IIT, Kharagpur 11

    B) ; // A greater than B

    assign A_lt_B= (A

  • 8/9/2019 Hardware Descriptive Languages 3

    7/10

  • 8/9/2019 Hardware Descriptive Languages 3

    8/10

  • 8/9/2019 Hardware Descriptive Languages 3

    9/10

    3.3.3 Semi- formal verification

    Semi formal verification combines the traditional verification flow using test vectors with thepower and thoroughness of formal verification.

    Semi-formal methods supplement simulation with test vectors

    Embedded assertion checks define the properties targeted by formal methods

    Embedded assertion checks defines the input constraints

    Semi-formal methods explore limited space exhaustibility from the states reached bysimulation, thus, maximizing the effect of simulation.The exploration is limited to acertain point around the state reached by simulation.

    Version 2 EE IIT, Kharagpur 17

    3.3.4 Equivalence checking

    After logic synthesis and place and route tools create a gate level netlist and physicalimplementations of the RTL design, respectively, it is necessary to check whether thesefunctionalities match the original RTL design. Here comes equivalence checking. It is anapplication of formal verification. It ensures that the gate level or physical netlist has the samefunctionality as the Verilog RTL that was simulated. A logical model of both the RTL and gatelevel representations is constructed. It is mathematically proved that their functionality are same.

    Version 2 EE IIT, Kharagpur 18

  • 8/9/2019 Hardware Descriptive Languages 3

    10/10

    Version 2 EE IIT, Kharagpur 19

    3.4 Some Exercises

    3.4.1 PLI

    i) Write a user defined system task, $count_and_gates, which counts the number of and gateprimitive in a module instance. Hierarchical module instance name is the input to the task. Usethis task to count the number of and gates in a 4-to-1 multiplexer.

    3.4.2 Verilog and Synthesis

    i) A 1-bit full subtractor has three inputs x, y, z(previous borrow) and two outputs D(difference)and B(borrow). The logic equations for D & B are as followsD=xyz+ xyz+ xyz + xyzB= xy + xz+ yzWrite the verilog RTL description for the full subtractor. Synthesize the full using anytechnology library available. Apply identical stimulus to the RTL and gate level netlist andcompare the outputs.

    ii) Design a 3-8 decoder, using a Verilog RTL description. A 3-bit input a[2:0] is provided to thedecoder. The output of the decoder is out[7:0]. The output bit indexed by a[2:0] gets the value 1,the other bits are 0. Synthesize the decoder, using any technology library available to you.Optimize for smallest area. Apply identical stimulus to the RTL and gate level netlist andcompare the outputs.

    iii) Write the verilog RTL description for a 4-bit binary counter with synchronous reset that is

    active high.(hint: use always loop with the @ (posedge clock)statement.) synthesize the counterusing any technology library available to you. Optimize for smallest area. Apply identicalstimulus to the RTL and gate level netlist and compare the outputs.

    Version 2 EE IIT, Kharagpur 20