打印

一个小程序 VHDL 始终错误?

[复制链接]
1193|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
nono2000|  楼主 | 2012-9-19 13:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
PROCESS(reset,sys_clk)
   BEGIN
         IF reset = '0' THEN
            cnt_s <= '0';
         ELSE
            IF cnt = 12345  THEN
               cnt_s <= '1';   -- 1t
            ELSE
                cnt_s <= '0';
           END IF;
        END IF;
END PROCESS;
Error d.vhd(237): couldn't implement registers for assignments on this clock edge

相关帖子

沙发
nono2000|  楼主 | 2012-9-19 13:04 | 只看该作者
PROCESS(sys_clk,newdata)                        
  BEGIN                                         
       IF rising_edge(newdata) THEN            
          case do is                           
             when x"10" => new_s(0) <= '1';     
             when x"11" => new_s(1) <= '1';     
             when x"12" => new_s(2) <= '1';     
             when x"13" => new_s(3) <= '1';     
             when others => null;               
          end case;                             
       ELSE                                    
             new_s <= (others => '0');         
       END IF;                                 
END PROCESS;                                    
因為  newdata =1 時間不卻定,所以必須抓上緣 1個sys_clk,但是又錯誤......

使用特权

评论回复
板凳
GoldSunMonkey| | 2012-9-19 21:59 | 只看该作者
PROCESS(reset,sys_clk)
   BEGIN
         IF reset = '0' THEN
            cnt_s
nono2000 发表于 2012-9-19 13:01
告诉你时钟在这里没有使用。

使用特权

评论回复
地板
GoldSunMonkey| | 2012-9-19 22:00 | 只看该作者
PROCESS(sys_clk,newdata)                        
  BEGIN                                         
       IF rising_edge(newdata) THEN            
          case do is                           
     ...
nono2000 发表于 2012-9-19 13:04
为什么不用时钟呢?

使用特权

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

本版积分规则

10

主题

44

帖子

1

粉丝