CPLD CoolRunner-II / XPLA3  – 硬件锁存器的功能与预期不符-Altera-Intel社区-FPGA CPLD-ChipDebug

CPLD CoolRunner-II / XPLA3 – 硬件锁存器的功能与预期不符

问题描述

CoolRunner-II / XPLA3中的锁存器在硬件中无法正常工作。但是,仿真似乎是正确的。

解决/修复方法

LCDP无法正常运行的原因是因为PRESET输入没有“库指南”中记录的优先级。根据Libraries Guide,PRE输入在ACLR输入后应具有第二优先级;但是,它不是硬件。 GATE输入的优先级高于PRE输入。这意味着如果PRE和GATE都被置位,那么GATE将影响锁存器的输出;如果D低,那么Q也会很低。

这是器件的预期行为。将更新库指南和仿真模型,以在更高版本的软件中反映这一点。

要在CLR之后使用PRESET使Latch运行,可以使用以下代码创建组合锁存器:

库IEEE;

使用IEEE.STD_LOGIC_1164.ALL;

使用IEEE.STD_LOGIC_ARITH.ALL;

使用IEEE.STD_LOGIC_UNSIGNED.ALL;

实体LDCP_TEST是

端口(PRESET:在std_logic中;

CLR:在std_logic中;

GATE:在std_logic中;

D_in:在std_logic中;

Q_out:输出std_logic

);

结束LDCP_TEST;

体系结构LDCP_TEST的行为是

signal int_Q:std_logic;

开始

Q_out <= int_Q;

int_Q <=不是CLR和(PRESET或(int_Q而不是GATE)或(int_Q和D_in)或(GATE和D_in));

结束行为;

请登录后发表评论

    没有回复内容