是否存在运算符| Vhdl

是否存在运算符| Vhdl,vhdl,fpga,Vhdl,Fpga,我正在做一个练习,我必须找到VHDL代码的错误,我不会直接将代码粘贴到这里,因为它是打印的 目前,代码中有这一部分: 用E选择 S它存在。它不是运算符,而是分隔符。(IEEE标准1076-1993,13.2词汇元素、分隔符和分隔符) 从你的问题看来,你很难在LRM中找到支持。在包含语法摘要的附录之外的标准文本中,有许多地方BNF是规范性的 根据IEEE标准1076-1993: 8.8个案陈述 在case语句中作为选项给出的简单表达式和离散范围 必须是本地静态的。由离散范围定义的选项代表所有选

我正在做一个练习,我必须找到VHDL代码的错误,我不会直接将代码粘贴到这里,因为它是打印的

目前,代码中有这一部分:

用E选择
S它存在。它不是运算符,而是分隔符。(IEEE标准1076-1993,13.2词汇元素、分隔符和分隔符)

从你的问题看来,你很难在LRM中找到支持。在包含语法摘要的附录之外的标准文本中,有许多地方BNF是规范性的

根据IEEE标准1076-1993:

8.8个案陈述

在case语句中作为选项给出的简单表达式和离散范围 必须是本地静态的。由离散范围定义的选项代表所有选项 相应范围内的值。其他人的选择只允许用于 最后的选择,也是唯一的选择;它代表所有的值(可能是 无)在先前备选方案的选择中未给出。简单元素 名称(见7.3.2)不允许作为案例陈述备选方案的选择

7.3.2骨料


分隔符垂直条(“|”)用于分隔选项。case语句替换项中的选项不能是元素简单名称。您的示例显示了简单表达式的选项。

我还没有看到该运算符。很可能,正如你所说,应该是“或”
case_statement_alternative ::=  
    when choices =>
         sequence_of_statements  
 choices ::=  choice { | choice }

 choice ::=
       simple_expression
     | discrete_range
     | element_simple_name
     | others