vhdl时钟上升沿与下降沿都促发利用怎么编写??

[复制链接]
20264|9
 楼主| 忧郁王子 发表于 2008-6-10 20:12 | 显示全部楼层 |阅读模式
python_k 发表于 2008-6-11 05:28 | 显示全部楼层

用EVENT

  
 楼主| 忧郁王子 发表于 2008-6-11 08:52 | 显示全部楼层

上面的

但是在同一个进程里不能同时使用上升下降沿啊???
drentsi 发表于 2008-6-11 09:19 | 显示全部楼层

使用FDDRRSE模块就可以在两个边沿锁存了

  
 楼主| 忧郁王子 发表于 2008-6-12 12:39 | 显示全部楼层

我是菜鸟,可否具体给个简单的例子!!

谢谢
tonylzez 发表于 2008-6-12 21:27 | 显示全部楼层

这个问题主要就看能不能综合了

写段描述上升沿和下降沿都触发的VHDL代码很简单,但大部分的FPGA不会支持综合出双沿触发器的,因为它们内部根本就没有这种资源。
 楼主| 忧郁王子 发表于 2008-6-12 21:57 | 显示全部楼层

恩,是的,所以我在想有没有这个办法的

恩,是的,我一般写写不能被综合的<br />所以我在想有没有这个办法的<br />谢谢赐教^o^
drentsi 发表于 2008-6-13 13:29 | 显示全部楼层

VHDL中所谓的在event中赋值就是给D触发器赋值

目前的编译软件都不综合在两种边沿触发,如果你非要在两个边沿锁存<br />就用FDDRRSE并使用两相时钟驱动,目前DDR,DDR2等等都是这样处理的.<br />具体信息在google上搜索FDDRRSE<br />
wwq100 发表于 2008-6-18 20:56 | 显示全部楼层

支持8楼

  
paopaoduo 发表于 2014-8-20 16:09 | 显示全部楼层
我也是新手写了一个程序仿真成功了,不知道实际能不能实现。
    process(clock1,reset)
    begin
        if (reset='1') then
            output <= x"00" ;
        elsif rising_edge(clock1) then
                output <= input ;
        else
            if falling_edge(clock1) then
                output <= not input ;
            end if;
        end if;
    end process;
您需要登录后才可以回帖 登录 | 注册

本版积分规则

8

主题

14

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部