端口是否可以共享它的信号名称';在VHDL中映射到什么?

端口是否可以共享它的信号名称';在VHDL中映射到什么?,vhdl,Vhdl,正如标题所描述的那样。 我所指的端口和信号周围有星号。将端口命名为与其映射到的信号相同是否存在任何冲突?或者,使用不同的名称只是一种良好的编码实践 fml_fulladd_vhdl PORT MAP( C_in => C_in, -- this line x => x(3), y => y(3), s => s(3), C_out => C_out); -- and this l

正如标题所描述的那样。 我所指的端口和信号周围有星号。将端口命名为与其映射到的信号相同是否存在任何冲突?或者,使用不同的名称只是一种良好的编码实践

fml_fulladd_vhdl
    PORT MAP(
        C_in => C_in, -- this line
        x => x(3),
        y => y(3),
        s => s(3),
        C_out => C_out); -- and this line

感谢所有能提供帮助的人。

是的,这是正常的做法

您不能在体系结构中拥有与关联实体的某个端口同名的信号。与同一层次结构中的组件上的某个端口具有相同名称的信号就可以了。事实上,您可以将实体上的端口直接挂接到实例化组件上的端口(相同或不同名称的端口),不需要中间信号(假设端口方向相同,并且遵循类型规则)


请注意,如果您级联多个全加器以添加多位数(在您的情况下,看起来您可能要添加4位数),则只有一个输出(最终实例的输出)应驱动一位C_输出信号,否则您将有多个驱动程序。您需要一个中间信号来将每个
fulladd
实例的C_out连接到C_in。

是。谢谢你提供的所有有用信息这是一个非常彻底的回答,但你也正是我所需要的!至于第二部分,您是对的,我将fulladd组件级联以创建一个4位加法器。我确实用了一个中间的标准逻辑向量信号。再次感谢。