viena vienkārša Verilog Design Question

J

javatea

Guest
Hi folks,
Es gribu dizains skaitītājs (no 0 ~ 4)
un tikai nepāra stāvoklī (counter = 1,3), output = 1.citādi = 0
Šis modulis saņem divas ieejas clk un RST

I wrote divas dažādas koda.
Kuriem viens ir labāks?Thank you so muchcounter 01234 01234
izejas 01010 01010

////////////////////////////////////////////////// / /
/ / Code Style 1
////////////////////////////////////////////////// / /

modulis counter (ievade RST, clk, izlaides raj out);

reg [2:0] tmp; / / fiksēts

vienmēr @ (posedge clk) sāk
if (! RST) sāk
out <= 0;
tmp <= 0;
beigas
else if (tmp == 2'd4) sākas
tmp <= 0;
out <= 0;
beigas
else if (tmp == 2'd1 | | tmp == 2'd3) sākas
tmp <= tmp 1;
out <= 1;
beigas
else sākt
tmp <= tmp 1 b1;
out <= 0;
beigas
endmodule////////////////////////////
/ / Code Style divi
////////////////////////////

modulis counter (ievade RST, clk, izlaides raj out);

reg [2:0] tmp; / / fiksēts

vienmēr @ (posedge clk) sāk
if (! RST) sāk
tmp <= 0;
beigas
else if (tmp == 4)
tmp <= 0;
citādi
tmp <= tmp 1;
beigas

vienmēr @ (TPP)
if (tmp == 1 | | tmp == 3)
out = 1;
citādi
out = 0;
beigas

endmodule
Last edited by javatea gada 06 Dec 2009 22:18 labots 1 reizes

 
Gan cieš no faktu, ka TPP nav nekad nesasniegs vērtība ir četri.

bits.

tmp vajadzīgi trīs
biti.Neatkarīgi no šīs problēmas,
ar kodu stils 2, rezultātu var būt glitches.Tas var būt problēmas atkarībā no lietošanas signāls "out".

 
Oh yeah ~ lai tmp mainīgajam, ir nepieciešama 3 bitiem, => [2:0] tmp
Blakus tam, Vai ir kāds bug?
Atceros, ka mums būtu labāk atsevišķs daudzkombināciju un kārtas piedalās mūsu dizainu.Tā varētu ietaupīt vairāk vārtu skaitu par mums?
Tāpēc, praksē, stils 2 ir labāka viņiem stils 1?pareizi?
Paldies

 

Welcome to EDABoard.com

Sponsor

Back
Top