阅读:1371回复:5
maxplus求救
verilog 异步操作:
always @(posedge LCLK or negedge RESET_) .... 为什么使用MAXPLUS2仿真时我的RESET_被LCLK给同步了 |
|
|
沙发#
发布于:2002-08-16 16:51
对不起,好像是以下的结构中
always @(posedge LCLK or negedge RESET or negedge ADS) if(!RESET) ... else if(!ADS) ... else .... RESET可以按异步方式正常工作,但ADS被同步化了 请问有什么补救措施 |
|
|
板凳#
发布于:2002-08-16 18:05
使用真值表吧!可能可以!
|
|
|
地板#
发布于:2002-08-18 13:26
muxplus不支持您的这种语法,因为一个寄存器只允许一个钟,实现异步可以是如下结构
input lclk, reset, ads, d; reg q; always @(LCLK or RESET or ADS) q = !RESET?0: (!lclk&&!ads)?d:q; 上为lclk的上升沿锁存,如果想下降沿锁存将!clk的!去掉即可 |
|
地下室#
发布于:2002-08-19 09:01
可以先做一个外部逻辑.
wire AUX = RESET & ADS; always @ (posedge LCLK or negedge AUX) begin if(!AUX) else end |
|
|
5楼#
发布于:2002-08-21 13:01
也可以这样做:
module day1(clk, reset, ads, d, q); input clk, reset, ads, d; output q; reg q; dffe mydffe(.d(d),.clk(clk),.clrn(reset), .ena(!ads),.q(q)); endmodule 位宽自定 |
|