【发布时间】:2017-11-17 10:11:06
【问题描述】:
我正在学习 Nexys 4 DDR 的教程,我正在实现一个简单的 MUX
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
library UNISIM;
use UNISIM.VComponents.all;
-- Uncomment the following library declaration if using
-- arithmetic functions with Signed or Unsigned values
--use IEEE.NUMERIC_STD.ALL;
-- Uncomment the following library declaration if instantiating
-- any Xilinx leaf cells in this code.
--library UNISIM;
--use UNISIM.VComponents.all;
entity lab1_2_1 is
Port ( SW0 : in STD_LOGIC;
SW1 : in STD_LOGIC;
SW2 : in STD_LOGIC;
LED0 : out STD_LOGIC);
end lab1_2_1;
architecture Behavioral of lab1_2_1 is
Signal SW2_bar : STD_LOGIC;
Signal SW0_int : STD_LOGIC;
Signal SW1_int : STD_LOGIC;
begin
SW2_bar <= not SW2;
SW0_int <= SW0 and SW2_bar;
SW1_int <= SW1 and SW2;
LED0 <= SW0_int or SW1_int;
end Behavioral;
当我开始生成比特流时,我收到了这个严重警告
NSTD #1 严重警告 1 个逻辑端口中有 1 个使用 I/O 标准 (IOSTANDARD) 值“DEFAULT”,而不是用户分配的特定值。这可能会导致 I/O 争用或与电路板电源或连接不兼容,从而影响性能、信号完整性,或者在极端情况下会损坏设备或其连接的组件。要更正此违规,请指定所有 I/O 标准。除非所有逻辑端口都定义了用户指定的 I/O 标准值,否则此设计将无法生成比特流。要允许使用未指定的 I/O 标准值(不推荐)创建比特流,请使用以下命令:set_property SEVERITY {Warning} [get_drc_checks NSTD-1]。注意:使用 Vivado Runs 基础架构(例如,launch_runs Tcl 命令)时,将此命令添加到 .tcl 文件中,并将该文件添加为实现运行的 write_bitstream 步骤的预挂钩。问题端口:LED0。
和
UCIO #1 严重警告 1 个逻辑端口中的 1 个没有用户分配的特定位置约束 (LOC)。这可能会导致 I/O 争用或与电路板电源或连接不兼容,从而影响性能、信号完整性,或者在极端情况下会损坏设备或其连接的组件。要纠正此违规行为,请指定所有引脚位置。除非所有逻辑端口都定义了用户指定的站点 LOC 约束,否则此设计将无法生成比特流。要允许使用未指定的管脚位置(不推荐)创建比特流,请使用以下命令:set_property SEVERITY {Warning} [get_drc_checks UCIO-1]。注意:使用 Vivado Runs 基础架构(例如,launch_runs Tcl 命令)时,将此命令添加到 .tcl 文件中,并将该文件添加为实现运行的 write_bitstream 步骤的预挂钩。问题端口:LED0。
有什么想法吗?
【问题讨论】:
-
您正在设计硬件。您似乎没有为您的设计指定 IO 单元;您尚未指定将 FPGA 连接到 PCB 其余部分的电路的电子设备。 (例如涉及什么电压、什么驱动电流、什么转换速率) 这不是您可以在 VHDL 中指定的内容,而是您正在使用的 FPGA 环境的适当内容。您需要阅读手册。
-
@MatthewTaylor 谢谢。我能够解决它。