请教懂VHDL的高手,帮帮忙!!!

gdaddma   2008-11-18 09:47 楼主
这是一个正负脉宽数控调制信号发生器,就是没有运行成功,有的地方看不懂,请教高手帮忙解释一下,谢谢啦!


LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY PULSE IS
  PORT(CLK:IN STD_LOGIC;                       --记数时钟
       A,B:IN STD_LOGIC_VECTOR(7 DOWNTO 0);    --8位记数预置数
       PSOUT:OUT STD_LOGIC);                   --记数溢出并分频输出
END ENTITY PULSE;
ARCHITECTURE ART OF PULSE IS
  COMPONENT LCNT8 IS
  PORT(CLK,LD:IN STD_LOGIC;
       D:IN STD_LOGIC_VECTOR(7 DOWNTO 0);
       CAO:OUT STD_LOGIC));
  END COMPONENT LCNT8;
  SIGNAL CAO1,CAO2:STD_LOGIC;
  SIGNAL LD1,LD2:STD_LOGIC;
  SIGNAL PSINT:STD_LOGIC;
  BEGIN
  U1:LCNT8 PORT MAP(CLK=>CLK,LD=>LD1,D=>A,CAO=>CAO1);
  U2:LCNT8 PORT MAP(CLK=>CLK,LD=>LD2,D=>B,CAO=>CAO2);
  PROCESS(CAO1,CAO2)IS
  BEGIN
  IF CAO1='1'THEN PSINT<='0';
  ELSIF CAO2'EVENT AND CAO2='1' THEN PSINT<='1';
  END IF;

回复评论 (3)

你这是完整的程序吗?问题太多了。LD1 LD2 无输入驱动,PSINT是要输出到PSOUT吗?
本来是个简单的同步逻辑,在这里变成异步的了。
点赞  2008-11-18 22:49
问题是有那么点……找本VHDL书看下,很容易就可以搞定的哈
点赞  2008-11-19 08:46
你的程序只有半截
点赞  2008-11-21 14:44
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复