调整DSP48E或DSP48E1函数的内部组合路径的长度
- 更新时间2025-05-20
- 阅读时长5分钟
DSP48E或DSP48E1配置对话框底部的示意图显示了函数的内部组合路径。如该组合路径过长,函数不能在用户指定的时钟周期编译。尝试编译FPGA VI时,LabVIEW将返回错误。
为函数添加内部寄存器可避免发生上述错误。添加寄存器可增加函数在指定时钟周期内完成编译的机率。但也增加了DSP48E函数的延迟,可能导致内部数据路径延迟的相对不平衡。根据使用函数的方式,该不平衡是可以接受的。但必须考虑内部数据路径的延迟,以确保函数能够按照预期执行。
通过配置对话框的寄存器页面添加和配置DSP48E逻辑片的内部寄存器。注,添加和配置寄存器时,对话框底部示意图中的绿色框亮起。数据路径也可能发生改变。
启用和重置寄存器
每个寄存器都具有相应的启用和重置接线端。默认情况下,LabVIEW设置重置接线端为FALSE,且从程序框图隐藏所有接线端时启用接线端为TRUE。如默认设置可用,则无需更改设置。
如要详尽的控制启用和充值操作,可使用启用和重置页面指定LabVIEW在程序框图上显示的启用和重置接线端。在每个页面的顶端为可选选项的下拉菜单,如下图所示:
这些选项对添加的寄存器的影响如下:
- 隐藏全部信号-指定LabVIEW在程序框图上不显示启用或重置接线端。此时LabVIEW执行上述的默认操作。
- 所有寄存器使用一个接线端-根据用户的配置页面,指定LabVIEW显示启用或清除输入接线端。如要在逻辑片中启用/重置所有寄存器,连线一个TRUE值到该接线端。
- 选择要显示的接线端-启用该下拉菜单下的复选框。如要显示单个寄存器的接线端,请勾选相应的对话框。括号中的名称为启用或重置信号的VHDL名称。 注: 如选择了该选项,但LabVIEW仍禁用了某些复选框。这是因为尚未在寄存器页面添加相应的寄存器。单击寄存器选项卡,勾选相应的复选框。然后返回启用或重置页面。
单击确定按钮并返回程序框图时,LabVIEW显示您选中的任意布尔输入接线端。然后可连线代码,以将这些接线端在适当的时间设置为TRUE或FALSE。
等效于LabVIEW选项的VHDL代码
如要查看配置的相应VHDL代码,单击VHDL实例选项卡。关于指定属性的详细信息,见Virtex-5 FPGA XtremeDSP Design Considerations User Guide或Virtex-6 FPGA DSP48E1 Slice User Guide中的表1-3。通过Xilinx网站www.xilinx.com可获取该文档。下表为对应于LabVIEW中每个选项的属性。
| LabVIEW选项 | 表1-3的参考属性 |
|---|---|
| | AREG |
| | BREG |
| | ACASCREG |
| | BCASCREG |
| alumode寄存器 | ALUMODEREG |
| c寄存器 | CREG |
| carryin寄存器 | CARRYINREG |
| carryinsel寄存器 | CARRYINSELREG |
| (DSP48E) m寄存器 | MREG |
| (DSP48E) multcarryin寄存器 | MULTCARRYINREG |
| (DSP48E1) m寄存器和multcarryin寄存器 | MREG |
| opmode寄存器 | OPMODEREG |
| p寄存器 | PREG |
| (DSP48E1) d寄存器 | DREG |
| (DSP48E1) ad寄存器 | ADREG |
| (DSP48E1) inmode寄存器 | INMODEREG |