同步清零和异步清零(置数)verilog描述上的区别
展开全部
他们的区别在代码写法上主要是敏感列表的区别,如下示例所示
异步清零:
always@(posedge clk or negedge rst )
begin
if(!rst) out <= 0;
else
begin
···································
····································
························
end
end
同步清零:
always@(posedge clk)
begin
if(!rst) out <= 0;
else
begin
···································
····································
························
end
end
他们在电路网表中的区别就很大了,主要区别表现在材料上。现在所用的同步或异步IP核,随着材料的进步,同步IP核还可以用,但异步往往就会出现问题,这是因为材料的不同所造成的延时不同。所以如果你所设计的东西涉及到知识产权问题时,建议使用同步设计。
如果有什么问题,欢迎追问哦亲。也希望我能帮到你。
异步清零:
always@(posedge clk or negedge rst )
begin
if(!rst) out <= 0;
else
begin
···································
····································
························
end
end
同步清零:
always@(posedge clk)
begin
if(!rst) out <= 0;
else
begin
···································
····································
························
end
end
他们在电路网表中的区别就很大了,主要区别表现在材料上。现在所用的同步或异步IP核,随着材料的进步,同步IP核还可以用,但异步往往就会出现问题,这是因为材料的不同所造成的延时不同。所以如果你所设计的东西涉及到知识产权问题时,建议使用同步设计。
如果有什么问题,欢迎追问哦亲。也希望我能帮到你。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼上说的蛮全面的。但是我觉得如果作为一般的行为级仿真不牵扯制造还是推荐异步。
起码就我在各种场合科研实习里面,异步的还是见的多...
起码就我在各种场合科研实习里面,异步的还是见的多...
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询