为什么在vhdl中避免隐式子类型声明更好?

为什么在vhdl中避免隐式子类型声明更好?,vhdl,Vhdl,我从各地得到建议,我们应该首先创建子类型,然后将其用于变量声明。有人能告诉我为什么要避免隐式子类型声明吗?我不熟悉这个建议。也许你可以链接到几个例子?你的意思是说你是字符串来声明一个类型,比如type memory是std\u logic\u vector(31到0)的数组(0到1023),你会得到一个警告吗?我这样做的时候通常一个也得不到。我教VHDL。我不理解这样的建议。定义“来自各地的建议”,并给出两个例子。隐式子类型声明不是VHDL标准(IEEE Std 1076-2008)中的艺术术语

我从各地得到建议,我们应该首先创建子类型,然后将其用于变量声明。有人能告诉我为什么要避免隐式子类型声明吗?

我不熟悉这个建议。也许你可以链接到几个例子?你的意思是说你是字符串来声明一个类型,比如
type memory是std\u logic\u vector(31到0)的数组(0到1023)
,你会得到一个警告吗?我这样做的时候通常一个也得不到。我教VHDL。我不理解这样的建议。定义“来自各地的建议”,并给出两个例子。隐式子类型声明不是VHDL标准(IEEE Std 1076-2008)中的艺术术语。子类型指示定义子类型。(6.3子类型声明)。考虑到命名子类型的唯一优点是使用类型标记而不是类型标记和约束。它们可以出现在限定表达式、类型转换、函数返回类型标记和签名中。这些用法都不占VHDL设计描述的主导地位。你的意思大概是“避免隐式声明”,而不使用单词subtype?唯一的优点是,如果您需要更改子类型(例如增加宽度),那么所有声明都将反映更改,从而避免您更改所有隐式声明。