我见过使用VHDL关键字的大写字母,可能是出于编码风格的原因,例如If - then - eleif - else - end if;图书馆IEEE;使用numeric_std。都;但是,它说VHDL"在大多数情况下,语言不区分大小写"。因此,我假设上面列出的所有关键词也可以用小写字母来写。
有没有人对关键词需要(或必须)大写的少数例外情况有很好的了解?
据我所知,VHDL 中唯一区分大小写的是character
和string
类型的文字(代码中的固定值)。因此,例如,std_logic
类型是character
s 的枚举类型。对于任何character
,大写字母都不同于小写字母。因此,例如,'X'
和'x'
是不同的字符。因此,如果要将'X'
分配给std_logic
类型的东西 ,例如,您必须使用大写'X'
而不是小写'x'
,因为这就是定义std_logic
类型的方式。例如:
my_signal <= 'X';
还可以,但是
my_signal <= 'x';
不是,因为'x'
不是有效的std_logic
值。
因此,基本上,VHDL 不区分大小写。似乎当您处理character
s(和string
s,它们只是character
s 的数组)时。任何无法区分小写和大写字母的语言确实是一种奇怪的语言。