kombinacios halozat verilogban

hoyuka hoyuka at c2.hu
Wed Jan 18 22:17:09 CET 2006


Sziasztok!

Erdekelne, hogy hogyan lehet verilog-ban tiszta kombinacios halozatokat
leirni (amik nem hasznalnak regisztereket).

Pl. ez elvileg egy kombinacios halo:

modul mul8x8(a,b,res);

    input  wire [7:0] a, b;
    output wire [15:0] res;

    assign res=a*b;

endmodule;

De mi van ha vmifele encoder-t/decodert szeretnek csinalni?

Erre ilyen megoldasokat talaltam:

module ENCODER8_3(A,Y);
    input [7:0] A;
    output [2:0] Y;
    reg [2:0] Y;

    always @(A)
    begin
        casex(A)
            8’b 00000001: Y=0;
            8’b 00000010: Y=1;
            8’b 00000100: Y=2;
            8’b 00001000: Y=3;
            8’b 00010000: Y=4;
            8’b 00100000: Y=5;
            8’b 01000000: Y=6;
            8’b 10000000: Y=7;
            default: Y=3’bX;
        endcase
    end
endmodule

Na de ugye ennek regiszterek a kimenetei, amik csak a kovetkezo
iteracioban lesznek elerhetok.
Hogy lehetne ezt tiszta kombinacios haloval megvalositani? Ha a szorzast,
osszeadast, kivonast, stb. meg lehet, akkor nem latom ertelmet, hogy egy
ilyen encoder-t nem lehet....

udv.
hoyuka

-- 
http://hoyuka.myip.hu
-------------------------------------
Tele van a postaládája?  C2MAIL 100 MB e-mail tárhely ingyen! 
http://mail.c2.hu




More information about the Elektro mailing list