微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 前仿真与后仿真(VHDL)

前仿真与后仿真(VHDL)

时间:10-02 整理:3721RD 点击:
前仿真的结果与后仿真的结果差别很大,有点无所适从。例如
entity test is
port
(
clk:in std_logic;
x:in std_logic;
yut std_logic
)
end;
architectur rtl of test is
begin
process(clk)
begin
if clk'event and clk = '1' then
y <= x;
end if;
end process;
end;
前仿真时,y在时钟上沿随 x改变,但在后仿真时却要等一个时钟才有变化。我应该如何看待或处理这个问题?

前仿真与后仿真(VHDL)
只可能是你代码写的不对。时钟沿触发的话就是下一个时钟来时才表现出来。

前仿真与后仿真(VHDL)
前仿真是功能仿真吧,所以在clk的上升沿输出就立刻变化
后仿真是时序仿真吧,所以虽然输出在clk的上升沿变化,
但是有一定的延迟,差不多一个时钟周期吧(10ns)

前仿真与后仿真(VHDL)
前仿真是功能仿真,没有考虑信号的延时;后仿真是时序仿真,已将各种延时加了进去.不一样是正常的.

前仿真与后仿真(VHDL)
但应该不影响你的时序要求,否则就是你代码
写的有问题。

前仿真与后仿真(VHDL)
前仿真是功能仿真,没有考虑信号的延时;后仿真是时序仿真,已将各种延时加了进去.不一样是正常的.

前仿真与后仿真(VHDL)
后仿真是有延时,但不应该超过一个时钟周期

前仿真与后仿真(VHDL)
时钟太快了^_^

前仿真与后仿真(VHDL)
做一下时序分析阿,是不是什么地方时序不满足要求

前仿真代码要加dly

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top