15-rtl

Upload: damien-banda

Post on 06-Apr-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/3/2019 15-RTL

    1/4

    Lecture 15:Lecture 15:Register Transfer LanguageRegister Transfer Language

    ! " #$ %% &''

    () * ! "

    AdministriviaAdministrivia

    + , " - -

    + . &+ " " / 0+ * 1 # 2

    RTL (Register Transfer Language)RTL (Register Transfer Language)

    + * " "" " % ! % " (( %+ " -% ! % %

    ,3 4 % ( " ! ( "" ( " -/ " " "

    RTL ToolsRTL Tools

    ,3 . " % 0 5 " 6 % "4+ " "+ "

    + 0 %%# ("

    + 3# 0+ 0 ,3 % " " "

    + 3 %" ""+ ,3 " %+ ,3 ""

    + ,3

  • 8/3/2019 15-RTL

    2/4

    VerilogVerilog

    + 7 % 78* ,3 ")+ 9 / %% % 0 7 % - " # "

    + * " " " " ( % " "

    FOO BAR

    BAZa b

    c

    ExampleExample

    : % " ! % " %/ #" % 0"

    Modified ExampleModified Example

    + " "" " ( %+ ; -/ " " 5 % " / /

  • 8/3/2019 15-RTL

    3/4

    WiresWires

    + 9 " % % "" " % % / "

    module example(b, c, d);input [3:0]b, [3:0]c;output d;wire [3:0]a; // necessary

    a = b & c;

    d = a[2] | a[1] | a[0];endmodule

    Register Transfer Language?Register Transfer Language?

    + 7 % " " / " "+ = %/ #"> % 0"

    Module D_FlipFLop(Q, D, CLK);output Q;reg Q;input D, CLK;always @(negedge CLK) // Sensitivity List

    begin // Not needed for 1 statement

    Q

  • 8/3/2019 15-RTL

    4/4

    Misc.Misc.

    + , " ( % ( :A 4

    reg [31:0] register_file[0:31];

    + 9 . " " " (

    + 0" % 0+ "+ "/ - ( - / % -" "