verilog'ta tetikleme sorunu

Başlatan speak48, 18 Haziran 2009, 18:39:25

speak48

herkese slm,aslında 2 sorum var;
1-verilogta if in inçinde kenar tetiklenmesini nasıl yazarız?
      if(posedge input_a) gibisinden
2-bir sayıcı yapmak istedim ama derleyemedim;sayıcının 2 girişi var bu girişler basılınca '0' olan push buttonlar olsun,bu sayıcı 1.tuşa basılınca düşen kenarda yani artsın 2. tuşa basılınca azalsın.bunu verilogta nasıl yazarız?

leblebitozu

Aşağıdaki link'te istediğin şekilde 8 bit'lik aşağı-yukarı sayıcı örneği var

http://www.asic-world.com/examples/verilog/up_down_counter.html

speak48

ya aslında vhdl'den bıktıkta ondan veriloga geçtik,vhdl in sentaxı akılda pek kalmıyo ve çok esnek değil .
istediğim counterde aşağıdaki şekildeki gibi olacak ,clk olmadan clk'u girişlerin düşen kenarında algılıcak.ben şöle bişi yazdım ama  senkron sorunu war

module kareisaret(
	input [9:0] cx,
	input [9:0] cy,
	input xa,
	input xe,
	input ya,
	input ye,
	output von,
	output [9:0] out,
	input reset
);

wire clk
reg [9:0] xcnt;
assign clk=(~xa)|(~xe);

always @(posedge clk)
	if (reset) 
	begin // active high reset
		xcnt <= 10'b0 ;
	end 
	else if (xe)
	begin
		xcnt <= xcnt + 1;
	end 
	else 
	begin
		xcnt <= xcnt - 1;
	end

assign von=(out==10'd100) ? 1'b1:1'b0;
assign out=xcnt;
endmodule





leblebitozu

Aşağıda clock'suz düşen kenarda çift girişli up-down counter kodunu veriyorum

module updowncount    (
xcnt ,  // Output of the counter
up,
down,  // up_down control for counter
);
//----------Output Ports--------------
output [9:0] xcnt;
//------------Input Ports-------------- 
input up,down;
//------------Internal Variables--------
reg [9:0] xcnt;
//-------------Code Starts Here-------
always @(negedge up or negedge down)
if (up == 0) begin
  xcnt <= xcnt + 1;
end else if (down == 0) begin
  xcnt <= xcnt - 1;
end

endmodule

speak48

kardeş sağol kod güzelde şemasını da baktım çalışcak gibi duruyodu ama attım fpga'ya çalışmadı.basıyom saçmalıyo.

KaraBekir

Uzun süredir kod yazmıyorum, tam emin olmadığım için soruyorum, son kod sentezlenebiliyor mu? sentezlenemiyorsa FPGA ile gerçeklenemez.

kralsam

Çok geç olacak ama, belki başka sıkıntı yaşayanda olur diye ekliyorum. :) Kolay gelsin..
http://www.4shared.com/file/ozaigCG6/picproje_verilog_say.html