VHDL - PhysDesignRules:367

2024-01-04

当我尝试从 VHDL 代码合成、实现和生成程序文件时,我收到警告。

当我尝试合成时出现此错误

WARNING:Xst:647 - Input <BTN_3> is never used. 
    This port will be preserved and left unconnected if it 
    belongs to a top-level block or it belongs to a sub-block and 
    the hierarchy of this sub-block is preserved.

当我实现它时我得到这个

WARNING:PhysDesignRules:367 - The signal <BTN_3_IBUF> is incomplete. The signal
    does not drive any load pins in the design.
WARNING:Par:288 - The signal BTN_3_IBUF has no load.  
    PAR will not attempt to route this signal.
WARNING:Par:283 - There are 1 loadless signals in this design. 
    This design will cause Bitgen to issue DRC warnings.

当我生成程序文件时,我收到此错误

WARNING:PhysDesignRules:367 - The signal <BTN_3_IBUF> is incomplete. 
    The signal does not drive any load pins in the design.

什么可能导致这个错误.. 代码可以在这里找到 [http://pastebin.com/eK05tyEb][1]

[1]: http://pastebin.com/eK05tyEb http://pastebin.com/eK05tyEb- 链接到代码

用户约束文件/.ucf

NET "Switch_0" LOC = "G18";
    NET "Switch_1" LOC = "H18";
    NET "Switch_2" LOC = "K18";
    NET "Switch_3" LOC = "K17";
    NET "Switch_4" LOC = "L14";
    NET "Switch_5" LOC = "L13";
    NET "Switch_6" LOC = "N17";
    NET "Switch_7" LOC = "R17";
    NET "LED_0" LOC = "J14";
    NET "LED_1" LOC = "J15";
    NET "LED_2" LOC = "K15";
    NET "LED_3" LOC = "K14";
    NET "LED_4" LOC = "E17";
    NET "LED_5" LOC = "P15";
    NET "LED_6" LOC = "F4";
    NET "LED_7" LOC = "R4";
    NET "BTN_3" LOC = "H13";

您发布的代码可能无法讲述整个​​故事。通常有一个接口(用户限制,感谢 Bob)文件定义引脚边缘输入和输出到您定义的 FPGA 内部电路的端口。我没有看到这一点。

其次,我还在您的代码中看到,您有 2 个不同的电路驱动每个输出 LED。

您有一个 if 语句检查 BTN_3 是否为 1,这会将所有 LED 驱动为 0,然后是一组 If 语句检查每个“Switch_X”的输入状态,该语句分别将每个 LED 驱动为 0 或 1。这实际上是非法的。您只能用一个电路来驱动任何输出端口。

你应该做的就是按如下方式编写该电路:

architecture Behavioral of Switch_led is
begin
  Process(Switch_0, Switch_1, Switch_2, Switch_3, Switch_4, Switch_5, Switch_6 , Switch_7, BTN_3)
  begin

    if BTN_3 = '1' then 
      Led_0 <= '0';
      Led_1 <= '0';
      Led_2 <= '0';
      Led_3 <= '0';
      Led_4 <= '0';
      Led_5 <= '0';
      Led_6 <= '0';
      Led_7 <= '0';
    else

      if Switch_0 = '1' then
        Led_0 <= '1';
      else
        Led_0 <= '0';
      end if;

      if Switch_1 = '1' then
        Led_1 <= '1';
      else
        Led_1 <= '0';
      end if;

      if Switch_2 = '1' then
        Led_2 <= '1';
      else
        Led_2 <= '0';
      end if;

      if Switch_3 = '1' then
        Led_3 <= '1';
      else
        Led_3 <= '0';
      end if;

      if Switch_4 = '1' then
        Led_4 <= '1';
      else
        Led_4 <= '0';
      end if;

      if Switch_4 = '1' then
        Led_4 <= '1';
      else
        Led_4 <= '0';
      end if;

      if Switch_5 = '1' then
        Led_5 <= '1';
      else
        Led_5 <= '0';
      end if;

      if Switch_6 = '1' then
        Led_6 <= '1';
      else
        Led_6 <= '0';
      end if;

      if Switch_7 = '1' then
        Led_7 <= '1';
      else
        Led_7 <= '0';
      end if;

    end if;

  end process;
end Behavioral;

我本质上所做的是将所有单独的 Switch_X 检查纳入 btn_3 检查的 else 子句中。这迫使我之前说过,在任何时间点只有一个逻辑电路可以驱动任何 LED。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

VHDL - PhysDesignRules:367 的相关文章

  • 条件语句中逗号有什么好处?

    我们可以写一个if声明为 if a 5 b 6 thisMustBeTrue 并且只有满足最后一个条件才能进入if body 为什么允许 稍微改变一下你的例子 假设是这样的 if a f 5 b f 6 thisMustBeTrue a b
  • 仅使用 std_logic_vector 包将 std_logic_vector 与常量进行比较

    我仅在 VHDL 文件中使用以下包 library IEEE use IEEE STD LOGIC 1164 ALL 在代码中 我将 std logic vector 信号 A 与常量值进行比较 例如 if A lt 00001011 th
  • 在闪亮的应用程序中使用 if else 的条件值,使用 tidyverse 和 dplyr 来分组和过滤数据集

    我有一个简单的闪亮的 它使用反应性来呈现描述性统计数据 不过 我想用ifelse在 tidyverse 管道内 并且不编写大量代码 但是 我无法做到这一点 我查了之前的post https stackoverflow com a 44695
  • 使用 if 语句时,当前上下文中不存在该名称[重复]

    这个问题在这里已经有答案了 我想用用户给出的小数位数来计算 Pi 当输入为 0 时 变量 piNumber 应设置为 3 而不是 3 以便输出没有无用的逗号 这有效 static string PiNumberFinder int amou
  • Jquery 匹配值

    您好 我正在尝试执行 if 语句来查看数组中的值是否完全匹配 然后我希望它的同级元素能够显示精确匹配的 html 有人可以帮忙吗 我使用 TWIG 作为高级自定义字段 Wordpress 插件的 HTML 我只想说一次的所有地点的图片以及它
  • 比较两列并更改第三列时如何使用 ifelse?

    我仍然发现 R 中的 ifelse 结构有点令人困惑 我有以下数据框 df lt structure list snp structure 1 11 Label c AL0009 AL00014 AL0021 AL00046 AL0047
  • VHDL 中的 #define 等价物是什么

    VHDL 中的 define ifdef 和 ifndef 相当于什么 我想使用泛型作为 define 并根据它们更改设计 举一个简单的例子 定义一个字符串泛型并用它来确定时钟是单时钟还是差分时钟 generic something boo
  • 删除“if”语句的大括号是否有任何例外?

    我是一名计算机科学专业的学生 前段时间我们的教授向我们解释说 在 C 语言中 当只有一个语句时 我们可以删除大括号 例如 if a do b 但我们不能这样做 if a do b do c 因为那会做不止一个声明 但它也告诉我们 删除大括号
  • SQL 存储过程 IF EXISTS UPDATE ELSE INSERT

    好的 我得到了很多帮助here https stackoverflow com questions 11906506 sql server 2008 if not exists insert else update之前使用 SQL 后端来实
  • 带有条件 isset 的 If 语句和比较不能一起工作

    我在制作时遇到问题if声明 code if detail variable exists and is equal to 1 code if detail variable doesn t exist or is not equal 1 由
  • r 中的循环问题: if (length[i] == 1) { 中的错误:缺少 TRUE/FALSE 需要的值

    ann lt 1 2500 len lt sample 1 3 1000 replace TRUE df lt data frame col1 c 1 2500 col2 c 1 2500 for i in 1 length ann if
  • Java Scanner 输入与 if else 语句

    你好 我是java新手 正在尝试做一个测验来练习 我想提出一个问题 用户必须将类别中的单词组合成对 如A1 B4 C3 D2 我现在所做的是使用 if else 语句来检查输入是否是正确答案 但它仅适用于 1A 对于其他人 我可以做 6 个
  • 如何在批处理文件的“If”中使用多个条件?

    我可以在批处理文件中使用 或 和 指定多个条件吗if block 如果不是那么复杂 我至少可以使用类似的东西 if value1 lt value lt value2 基本上我的目的是检查当前系统时间是否落在某个时间间隔内 准确地说是上午
  • Java如何处理IF语句和效率

    我只是好奇 Java 实际是如何工作的if声明 注意 当我在下面说 组件 时 我指的是语句检查的各个部分 例如a b c 哪个在计算方面更有效 if a b c do stuff or if a if b if c do stuff 我之所
  • 为什么如果条件无法比较负整数和正整数[重复]

    这个问题在这里已经有答案了 include
  • 如何避免使用全局变量?

    我使用全局变量 但我读到它们不是一个好的实践或Pythonic 我经常使用的函数会给出许多是 否变量 我需要在主函数中使用这些变量 例如 在不使用全局变量的情况下 如何编写以下代码 def secondary function global
  • try..catch VS long if() [重复]

    这个问题在这里已经有答案了 我的项目中有一个复杂的模型结构 有时我必须得到一个deep从中放置价值 它看起来像下面这样 something getSomethongElse getSecondSomething getThirdSometh
  • 定时器启动/停止参数

    自从加入这个社区以来 我在技能和进步方面取得了突飞猛进的进步 你们都是一个巨大的帮助 我无法提供一个计时器 该计时器已在启动和停止时实现了某些参数 我要么收到错误消息 局部变量计时器可能尚未初始化 要么没有收到错误消息 但什么也没有发生 也
  • 基于 True/False 值的 Python 优雅赋值

    我想根据三个布尔值中的值设置一个变量 最直接的方法是 if 语句后跟一系列 elif if a and b and c name first elif a and b and not c name second elif a and not
  • 是否可以在不使用 if 语句的情况下找出哪个数字更大?

    我正在为初学者编程课程编写一些小程序 在我的程序中我有 2 个保存数字的变量 无论如何 我需要找出哪个数字更大并根据它打印适当的消息 例如我有 int x 5 int y 10 我需要打印 y 确实比 x 大 现在的问题是 我知道我可以使用

随机推荐

  • Butterknife zelezny 无法在 AndroidStudio1.3.1 的生成菜单中显示

    我的Android studio版本是1 3 1 当我按步骤添加butterknife zelezny 1 3 2的插件时 下载并通过首选项 插件 从磁盘安装插件进行安装 但是 未能在生成菜单中显示 生成 ButterKnife Injec
  • 如何使用注释在休眠中映射“地图”?

    使用注释如何将作为字符串 映射 哈希表 的实体中的字段映射到给定对象 该对象已被注释 并且它的实例已存储在 hibernate 数据库中 我找到了使用简单的键和值定义映射的语法 如下所示
  • 用于记录方法参数的 Idea Live 模板

    我希望能够在 Jetbrain 的 Idea 中创建一个实时模板来记录方法的参数 我们称之为 大 它的工作原理如下 public void get String one String two larg
  • 如何在JMeter中读取XML文件?

    我努力了 FileToString C QC qa Testlink Jmeter Expected test xml ASCII xmlFile 发现错误信息 org apache jorphan util JMeterException
  • 使用配置服务器加载多个属性

    我已经成功测试了从 SVN 存储库加载属性 目前在我的配置服务器中 我提供了 URI 和默认标签 trunk 并且我在下面有应用程序特定属性trunk 以下是我使用的应用程序的内容application yml并能够成功拉取属性 sprin
  • 列出可用 avdname 的命令是什么

    我知道我可以通过输入启动模拟器 avd emulator exe avdname 但是有没有一个命令可以列出可用的 avdnames 这个 avd 配置存储在哪里 使用sdk 工具 模拟器 这将列出所有可用的 avd emulator li
  • 马克·西曼关于私生子注射的相互矛盾的陈述。需要一些澄清

    我正在读他的书网络中的依赖注入 https rads stackoverflow com amzn click com 1935182501 1 Here https stackoverflow com questions 8393357
  • ORACLE:查找具有两列(名称如 ID、NUM)的表的 SQL 语法

    我的问题基于 查找具有两个列名的表 https stackoverflow com questions 6658696 oracle sql how to find out which table has the following two
  • Appveyor nuget分析器

    我正在尝试发明一种将 Roslyn 分析器项目打包到 NuGet 中的好方法 它需要特定的 NuGet 包结构 dll投入 analyzer not lib 为了这个工作 我必须打电话nuget pack
  • Excel 的 VBA - 设置范围

    我有一个关于设定范围的问题 我正在尝试一些东西 但它不起作用 假设我有范围 r 例如我写道 set r range a1 但此范围对于活动工作表有效 例如 如果我在工作表 1 上并且编写 r value 1 那么它将更改活动工作表上该单元格
  • 如何将用户控件添加到面板

    我在项目中创建了多个用户控件 我需要做的是能够在面板控件上在它们之间进行切换 例如 如果用户单击button1 则在删除其上的所有控件后 userControl1将被添加到面板中 依此类推 我有这个代码 panel1 Controls Ad
  • IFERROR、INDEX、MATCH 返回零而不是空格

    我正在使用以下公式 IFERROR INDEX Cleaned Post W W MATCH Combined C2 Cleaned Post C C 0 这个公式运行得很好 除了对于空白单元格 它返回 0 我希望空白单元格返回为空白 具体
  • 可可绑定问题;绑定表列不显示任何数据,控制台中没有错误

    我在将 Cocoa 项目从手动同步接口模型转换为绑定模型时遇到问题 这样我就不必担心接口粘合代码 我关注了 CocoaDevCentralCocoa 绑定教程 http cocoadevcentral com articles 000080
  • C++ 模板元编程的最佳介绍? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 静态元编程 又名 模板元编程 是一项出色的 C 技术 允许在编译时执行程序 当我读到这个规范的元编程示例
  • 当容器视图缩放centerInside时,找到android imageview中位图的位置

    我有一个RelativeLayout 其中包含一个自定义ImageView scaleType centerInside 我加载位图 通常小于imageView 如何获取绘制位图的顶部 左侧位置 我需要能够在相对于位图的位置上添加视图 Re
  • Knockoutjs - 对大型可观察数组进行排序

    我在带有可观察数组的页面上定义了一个淘汰模型 我想要有按钮来按不同属性对数组进行排序 我有一个 工作 解决方案 但对于大型数组来说它非常慢 jsFiddle http jsfiddle net 7JNrc http jsfiddle net
  • 从生成的 Protocol Buffer 类继承

    Protocol Buffer 文档警告 您永远不应该通过继承向生成的类添加行为 从他们 这会破坏内部机制并且不好 无论如何 面向对象的实践 source 协议缓冲区基础知识 https developers google com prot
  • Google Play 服务以编程方式设置应用 ID

    我知道你可以通过AndroidManifest设置com google android gms games APP ID 但是有没有办法通过某些生成器或类似的东西以编程方式设置它 None
  • 更改南迁目录

    如何更改 South 查找应用程序迁移的位置 默认情况下 South 假定应用程序的迁移位于 migrations 中 但是 我已经迁移了安装在 usr local lib python 2 6 dist packages 的第三方包的模型
  • VHDL - PhysDesignRules:367

    当我尝试从 VHDL 代码合成 实现和生成程序文件时 我收到警告 当我尝试合成时出现此错误 WARNING Xst 647 Input