文章 ID: 000096722 内容类型: 故障排除 上次审核日期: 2024 年 04 月 14 日

为什么我的 VHDL-2008 条件信号分配的功能不正确?

环境

  • 英特尔® Quartus® Prime Pro Edition
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT
    说明

    由于 Quartus® Prime Pro Edition 软件中存在一个问题,您可能会发现以下代码未正确执行。

    example_process : 进程 (clk)
    开始
    如果rising_edge(clk),则
    signal_1 <= input_a;
    signal_1 <= select_signal时input_b;
    结束如果;
    结束过程example_process;

    这应该创建一个寄存的多路复用器,但改为创建一个寄存器, 其中input_b 连接到 D 输入并用作使能 select_signal

    此代码仅在 VHDL-2008 中有效。

    解决方法

    若要变通解决此问题,请改用此代码。

    example_process : 进程 (clk)
    开始
    如果rising_edge(clk),则
    signal_1 <= input_b当select_signal其他input_a时;
    结束如果;
    结束过程example_process;

    相关产品

    本文适用于 1 产品

    英特尔® 可编程设备

    本页面上的内容是原始英文内容的人工翻译与计算机翻译的组合。我们提供此内容是为了您的便利并且仅供参考,未必完整或准确。如果本页面的英文版与翻译版之间存在任何冲突,应以英文版为准。 查看此页面的英语版本。