新闻  |   论坛  |   博客  |   在线研讨会
双时钟计数器
zhchxgh | 2009-07-15 00:11:05    阅读:1283   发布文章

双时钟计数器

如何设计一个双时钟的计数器,其中一个时钟是clk_up另一个是clk_down?

library ieee;
  use ieee.std_logic_1164.all;
  use ieee.std_logic_unsigned.all;
  use ieee.std_logic_arith.all;
entity dou is
  port ( clk1 : in std_logic;
         clk2 : in std_logic;
          q   : out std_logic_vector(0 to 3)
        );
end dou;
architecture rtl of dou is 
  signal q1,q2 :  integer:=0;
begin
process(clk1)
  begin
          if clk1'event and clk1='1' then
              q1<=q1+1;
          end if;
end process;
process(clk2) 
begin
         if clk2'event and clk2='1' then
              q2<=q2+1;
         end if;
end process;
process(q1,q2)
begin
     q<=conv_std_logic_vector(q1+q2,4);
end process;
end rtl;
==============================
Neither MaxPlus nor any other RTL synthesis tool that the Doctor is
familar with can cope with processes that are sensitive to more than one
clock, or more than one clock edge.

You must recast your model into multiple processes if you wish to
synthesize it.


-- demolbl

  vvv            
/   \            demolbl@263.net
@  =|=
/\  \            "Pay no attention to that man behind the curtain!"

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客