[这个贴子最后由HTANK在 2003/10/08 04:36pm 第 1 次编辑]
对应枚举类型用户可以自己定义属性,在大多数的情况下,用户定义的属性不影响仿真。用户定义属性通常用来提供设计文档或为其它设计工具提供信息。用户定义属性的格式如下:
attribute ATTRIBUTE_NAME : ATTRIBUTE_SUBTYPE;
关键字attribute后面为用户选择的属性名,ATTRIBUTE_NAME是任何先前声明国的不是存取类型或文件类型的子类型。
给你个例子:
tpye state_tpye is (s1,s2,s3,s4,s5,s6,s7);
attribute ATTRIBUTE_ASSIGNMENT : STRING;
attribute ATTRIBUTE_ASSIGNMENT OF STATE_TYPE : type is
"0000001 0000010 0000100 0001000 0010000 010000 100000";
综合工具可以从用户定义的ATTRIBUTE_ASSIGNMENT属性得到状态赋值信息。
属性可以用下面的形式和一个实体相连接:
attribute ATTRIBUTE_NAME of entity_NAME : ENTITY_CLASS IS EXPRESSION ;
ATTRIBUTE_NAME是先前定义的属性名,OF分割开属性名和带有该属性的实体名。冒号分隔开实体名和实体的类。上面例子中属性ATTRIBUTE_ASSIGNMENT和数据类型state_type相连。实体类指示类型,属性可以是下面实体类: entity,procedure,type,signal,label,architecture,function,subtype,variable,configuration,package,constant和componet。 最后的is关键字将实体类型和计算ATTRIBUTE_SUBTYPE的表达式分开。
本例中 state_assignment是属性名
state_type是实体名,实体类是type。
打字打的我手都酸了。呵呵你明白点了没有阿?呵呵 |