vhdl - 为什么 vhdl 不能识别这个端口?
问题描述
我是 VHDL 新手,我试图让这个计数器与 D 触发器组件一起工作,但我不断收到错误“错误(10482):lab8.vhd(16)处的 VHDL 错误:使用了对象“qn”但是未声明”,无论我尝试做什么。
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
ENTITY counter IS
PORT(clk:IN STD_LOGIC;c0,c1:OUT STD_LOGIC);
END counter;
ARCHITECTURE func of counter IS
COMPONENT dFlipFlop IS
port(D,dflipclock:IN STD_LOGIC;q,qn:OUT STD_LOGIC);
END COMPONENT dFlipFlop;
BEGIN
G1:dFlipFlop
PORT MAP(D=>qn,dflipclock=>clk,q=>c0);
G2:dFlipFlop
PORT MAP(D=>qn,c0=>dflipclock,q=>c1);
END func;
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
ENTITY dFlipFlop IS
port(D,dflipclock:IN STD_LOGIC;q,qn:OUT STD_LOGIC);
END dFlipFlop;
ARCHITECTURE flipper OF dFlipFlop IS
SIGNAL currentState:STD_LOGIC:='0';--not sure what STD_LOGIC initial value is so im setting it to zero here
BEGIN
PROCESS(dflipclock)
BEGIN
IF(dflipclock'EVENT AND dflipclock ='1') THEN --positive edge triggered
currentState<=D;
END IF;
END PROCESS;
q<=currentState;
qn<=not currentState;
END flipper;
我觉得我犯了某种愚蠢的新手错误,但我已经盯着这个东西看了好几个小时了,我一辈子都想不出哪里错了。
解决方案
推荐阅读
- javascript - Google 表格到 PDF 仅获取活动表格/选项卡
- sql-server - 如何解析存储在 SQL Server 列中的 XML
- azure - API 访问 Azure 中的新磁盘 IO 和带宽指标
- java - java - 在 Java 中将 JSON 字符串拆分为 JSON 字符串
- mysql - 显示 SQL 查询的错误数据
- tuf - 如何在 AGL 平台上使用 aktualizr 进行 OTA 更新
- mongodb - Reg:聚合函数使用分组格式输出
- angular - PrimeNG p-calendar 不适用于 Spring Boot Rest API
- ios - iOS 14 在 NSFetchedResultsController 的 indexPathForObject 函数中崩溃
- php - 复选框数据处理