集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 2382|回复: 6

烦请各位前辈帮我看看这个小程序有什么问题

[复制链接]
oliviagx 发表于 2011-3-21 22:45:59 | 显示全部楼层 |阅读模式
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;


ENTITY contrg IS
   PORT (
      trg    : IN std_logic;   
      rst    : IN std_logic;   
      qo      : OUT std_logic);   
END contrg;

ARCHITECTURE arch OF contrg IS

   SIGNAL count  :  std_logic_vector(2 DOWNTO 0);  
   SIGNAL q:std_logic:='0';

BEGIN
     
   PROCESS(trg,rst)
   BEGIN
      IF rst='1' THEN count<="000";q<='0';
      ELSIF trg 'event and trg='1' THEN
         IF count<="101"  THEN count<="000";q<='1';
         ELSE count<=count+1;
         END IF;
      END IF;
    qo<=q;
   END PROCESS;

   
END arch;
是想在计数满5之后,输出给出高电平,可是波形仿真却达不到,请各位帮忙看问题出在哪里
zzzdaizi 发表于 2011-3-22 09:58:01 | 显示全部楼层
IF count<="101"
好像是count="101"
 楼主| oliviagx 发表于 2011-3-22 22:33:28 | 显示全部楼层
回复 2# zzzdaizi


    这个地方改过了,发现还是不行,触发process的敏感变量,好像没起作用,就执行了,输出一直为高,进程有这么难掌握么,应该是很简单的事情
hebinmyland 发表于 2011-3-23 09:04:36 | 显示全部楼层
判断不是“101”的时候  q的值还是1
mutou1991 发表于 2011-3-23 10:51:52 | 显示全部楼层
恩  楼上正解
 楼主| oliviagx 发表于 2011-3-23 21:31:58 | 显示全部楼层
已经解决,是把“101”改成“100”
polozpt 发表于 2011-3-27 13:09:12 | 显示全部楼层
回复 1# oliviagx


    应该是 if count==101
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|集成电路技术分享 ( 京ICP备20003123号-1 )

GMT+8, 2024-5-18 18:18 , Processed in 0.145693 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表