relotus 发表于 2010-11-16 14:51:10

请教一下这段 Verilog 代码是什么意思..

primitive dffp ( q, ck, d, s, r );
        output q; // dff output
        input ck; // clock
        input d; // dff data input
        input s; // async set
        input r; // async reset

        reg q;

        table
        //ckdsr:q:q+
                r   000:?:0;
                r   100:?:1;
                f   ?00:?:-;
                ?   ?00:?:-;
                *   ??1:?:0;
                ?   ??1:?:0;
                *   ?10:?:1;
                ?   ?10:?:1;       
        endtable
endprimitive

relotus 发表于 2010-11-16 14:55:00

调用它的函数如下:

// Creates the width of registers

module dff_bus (q, d, clk);
        parameter width = 1;
       
        input d;
        input clk;
        output q;

        generate
        if(width==1) begin
           dffp reg_prim_inst (q,clk,d,1'b0,1'b0);
        end
        else begin
           dffp reg_prim_inst (q,clk,d,1'b0,1'b0);
        end
        endgenerate
endmodule

sagetom 发表于 2010-11-16 16:21:14

貌似是一个SR寄存器
d为数据输入端
S为数据置位端
R为数据清零端
q+为输出端

relotus 发表于 2010-11-16 17:01:31

谢谢............
找到一个表,贴上.........
http://cache.amobbs.com/bbs_upload782111/files_34/ourdev_598383PQXOMJ.JPG
(原文件名:未命名.JPG)

relotus 发表于 2010-11-16 17:29:45

终于看懂了这段代码..........
找到UDP的定义,贴上...........
http://cache.amobbs.com/bbs_upload782111/files_34/ourdev_598389YZ5HGR.JPG
(原文件名:未命名.JPG)
页: [1]
查看完整版本: 请教一下这段 Verilog 代码是什么意思..