VHDL别名语法"<< ... >>"

Gre*_*reg 7 syntax alias vhdl

我想了解下面代码行中使用的语法,其中使用ALIAS声明创建备用名称.具体来说,我想知道什么是暗示<<>>暗示.一个示例别名声明是,

alias x2_dac_data is
   << signal server.x2_dac_data : std_logic_vector(23 downto 0) >>;
Run Code Online (Sandbox Code Playgroud)

其中server是实例化组件,x2_dac_data是组件的信号,但未在端口声明中列出.

我已经回顾了Pedroni的文本和课程指南,它们都没有引用与<< ... >>别名相关的语法.

谢谢

use*_*120 9

双Less-Thans和双大字符(<<,>>)包含一个外部名称,它是通过设计模型的层次结构对象的路径名(例如信号,常量,变量).预期用途是用于设计验证,允许测试平台到达设计顶层不可见的对象.

参见Peter Ashenden和Jim Lewis VHDL设计指南(第3版),第18.1节外部名称和Doulos VHDL-2008:更易于使用,分层名称或IEEE Std 1076-2008,8.7外部名称.

VHDL设计师指南的第561页有一个例子:

alias duv_data_bus is
 <<signal .tb.duv_rtl.data_bus : std_ulogic_vector(0 to 15)>>;
Run Code Online (Sandbox Code Playgroud)

语法在第560页中介绍.在Google图书预览中可以看到第559-562页." VHDL设计师指南"中的外部名称处理示例也可以在第2章第2.1节VHDL 2008的外部名称中找到.同样是作者的新资料,而没有EBNF语法描述则进一步深入了解外部名称背后的哲学.不幸的是,该书的Google图书预览未达到第2.1节.Jim Lewis正在组织IEEE VHDL分析和标准化组(VASG)的P1076研究组,负责开发IEEE Std 1076-201X的下一版本.Peter Ashenden也是VHDL标准化工作的长期贡献者.