打印

不解:仿真波形中莫明其妙的尖峰怎么回事?

[复制链接]
2388|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
shiqianwei|  楼主 | 2007-11-5 22:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
一个用CASE语句描述的4选1选择器,用一些型号的芯片仿真会有莫明其妙的尖峰出现,而有一些芯片又不会出这种现象。如下:

LIBRARY IEEE;       
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY  mux41b IS
    PORT(a,b,c,d: IN STD_LOGIC;
         s0,s1: IN STD_LOGIC;
         y: OUT STD_LOGIC );
END ENTITY    mux41b;    
ARCHITECTURE bhv OF mux41b IS --4选一选择器的CASE语句表达方式描述
    SIGNAL s1s0 : STD_LOGIC_VECTOR(1 DOWNTO 0);
BEGIN
    s1s0 <= s1 & s0;
    PROCESS (a,b,c,d,s1s0)
    BEGIN 
        CASE s1s0 IS
        WHEN "00" => y<=a ;
        WHEN "01" => y<=b ;
        WHEN "10" => y<=c ;
        WHEN "11" => y<=d ;
        WHEN OTHERS => NULL ;
        END CASE;
    END PROCESS;
END ARCHITECTURE bhv;

我的4路输入a,b,c,d都为0.用epm3064alc44时仿真波形如下:---见2楼


用ep20k30etc144时仿真波形:

可以看到用ep20k30etc144时出现了尖峰,搞不明白了,怎么回事呢?
用其他一些型号的也会有这样现象,难道我的代码有问题吗?!

相关帖子

沙发
shiqianwei|  楼主 | 2007-11-5 22:20 | 只看该作者

epm3064alc44的波形:

---

使用特权

评论回复
板凳
shiqianwei|  楼主 | 2007-11-8 21:55 | 只看该作者

没有人理解我提的问题么

使用特权

评论回复
地板
amtek| | 2007-11-9 00:01 | 只看该作者

我理解你的问题,但我无法让你理解


 尖峰是永远存在的,如果有时仿真没出来,只能说明仿真不准,而硬件都是有的,要在硬件中减少尖峰,需要功底。

使用特权

评论回复
5
shiqianwei|  楼主 | 2007-11-10 12:28 | 只看该作者

确实无法理解

看来CPLD/FPGA也不是那么完美滴咯

使用特权

评论回复
6
xjg1111| | 2007-11-14 23:09 | 只看该作者

尖峰是软件考虑实际情况算出来的

你这肯定是后仿真,前仿真不会出这种情况。因为每个器件的延迟不一样,所以出现尖峰的情况也不一样。前仿真是理想值,不会出现尖峰。
因为每个门都有延迟,软件会根据这一延迟算出可能出现的最差情况。一般仿真中出的尖峰按你的时序不会影响你的结果就没有问题。而且按经验来看,仿真要比真实的情况要差一些,仿真没有问题,真实的跑起来也不会有问题(但不绝对~~)

使用特权

评论回复
7
young_Zyj| | 2007-11-20 13:59 | 只看该作者

电路设计中存在竞争冒险

使用特权

评论回复
8
11月的雨| | 2007-12-8 00:07 | 只看该作者

回复

养成一个好习惯 输出带锁寸器输出 对驱除毛刺有好处

使用特权

评论回复
9
jzt369| | 2007-12-8 17:10 | 只看该作者

做同步逻辑,尽量少用组合逻辑

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

59

主题

401

帖子

0

粉丝