主要内容

限制输出管道

什么是受约束的输出管道?

使用受约束的输出管道,您可以在块的输出处指定非负的寄存器数。

受约束的输出管道不会添加寄存器,而是在设计中重新分配现有的延迟,以尝试满足约束。如果HDL Coder™不能满足现有延迟的约束,它会在计时报告中报告所需的和实际输出寄存器的数量之间的差异。

分布式管道不会移动使用受约束的输出管道指定的寄存器。

何时使用受约束的输出管道

当您希望将寄存器放置在设计中的特定位置时,请使用约束输出管道。这可以使您优化设计的速度。

例如,如果您知道设计中关键路径的位置,并希望减少它,则可以使用受约束的输出管道将寄存器放置在关键路径的特定位置。

约束输出管道的要求

您的设计必须包含现有的延迟或寄存器。当寄存器数量少于满足您的约束所需的HDL编码器时,编码器会报告所需输出寄存器数量与实际输出寄存器数量之间的差异。

可以使用输入或输出管道将寄存器添加到设计中。

指定约束的输出管道

要使用UI为块指定受约束的输出管道:

  • 应用程序选项卡上,选择高密度脂蛋白编码器.的HDL代码选项卡出现了。选择子系统然后点击高密度脂蛋白块属性.为ConstrainedOutputPipeline,输入在输出端口需要的寄存器数量。

  • 右键单击该块并选择HDL代码>高密度脂蛋白块属性.为ConstrainedOutputPipeline,输入在输出端口需要的寄存器数量。

要指定受约束的输出管道,在命令行中输入:

hdlset_param (path_to_block...“ConstrainedOutputPipeline”number_of_output_registers)
例如,要约束子系统输出端口的六个寄存器,中高,在你的模型中,mymodel,输入:
hdlset_param (“mymodel /中高辊”“ConstrainedOutputPipeline”6)

受限的输出管道的限制

HDL编码器不限制输出管道寄存器的位置:

  • 在DUT子系统中,如果DUT包含子系统、模型引用或带有黑盒实现的模型引用。

  • 在任何类型的延迟块或顶级DUT子系统的输出。