配置DSP48E或DSP48E1逻辑片的功能
- 更新时间2025-03-06
- 阅读时长7分钟
添加DSP48E或DSP48E1函数至程序框图后,双击函数打开其配置对话框。第一个页面为函数页面,用于配置函数的总体信息。
opmode、alumode和carryinsel输入端的值决定了DSP48E和DSP48E1逻辑片的功能。inmode输入端的值将影响DSP48E1逻辑片。在函数页面的下拉菜单中选择算术配置或逻辑配置,通过LabVIEW配置接线端。此时用户按照下列章节配置算术或逻辑表达式后,LabVIEW将设置相应的值。
配置用于算术表达式的DSP48E或DSP48E1函数
如选择算术配置,函数计算下列算术表达式:
p = (+/NOT z) +/– (x+y + carryin)
其中,
- 非z等于–z – 1。
- z、x+y和carryin为变量。用户为其选定为0或数据源(例如,函数接线端或运算的值)的常量值。用户为参数指定的值和/或源将决定逻辑片的功能。通过将z或x+y的值指定为0,可从等式中移除z或x+y。注:
- carryin可用源取决于用户为z和x+y指定的值。因此建议在指定carryin前,指定z和x+y的值。
- (DSP48E)关于carryin的不同的源的相关信息,见Virtex-5 FPGA XtremeDSP Design Considerations User Guide中的表1-10。通过www.xilinx.com可获取该文档。手册中将此接线端标记为CARRYINSEL。(DSP48E1)关于该函数的信息,见Virtex-6 FPGA DSP48E1 Slice User Guide中的表1-11。
- p为等式的数值结果。
配置DSP48E1逻辑片的预加器
如要使用DSP48E1逻辑片的预加器,设置x+y的值为m,其中m = (d + a) × b。d、a和b可为零或d、a和b输入接线端路径中的不同阶。下列对话框为使用预加器的配置范例:
关于预加器的详细信息,见Virtex-6 FPGA DSP48E1 Slice User Guide的下列章节。
- "预加器"
- "预加器块应用"
DSP48E的常用算术配置
下列对话框为DSP48E函数的常用算术配置:
乘
乘累加器
乘加器
乘减法器
一阶计数器
- 函数页面:
- 接线端页面:
- 在程序框图上,连线TRUE常量至carryin接线端,0至a和b输入接线端:
n阶计数器/累加器
- 函数页面:
- 在程序框图上,连线控件至c输入端:
c代表计数器的阶数。函数累加c的值。注: 在此配置中未显示carryin接线端,表示LabVIEW将其常量值设置为FALSE。
DSP48E1的常用算术配置
下列对话框为DSP48E1函数的常用算术配置:
乘
带预加器的乘
乘累加器
乘加器
乘减法器
配置用于逻辑表达式的DSP48E或DSP48E1函数
选择逻辑配置时,函数比较逻辑x和逻辑z,并返回结果p。必须指定逻辑x、逻辑z以及比较运算,如下图所示:
VI运行时,配置DSP48E或DSP48E1函数的动作
如要在VI运行时更改DSP48E或DSP48E1逻辑片的动作,首先必须在配置对话框中选择自定义配置。选择此选项后,LabVIEW在程序框图上显示opmode、alumode和carryinsel接线端。LabVIEW也会显示用于DSP48E1函数的inmode接线端。必须连线值到这些接线端以实现所需的配置。由于该配置是通过编程实现的,可在FPGA VI运行时改变DSP48E或DSP48E1逻辑片的动作。
- “ALUMODE输入”
- "进位输入逻辑"
- “两输入逻辑单元”
- “X、Y和Z多路复用器”
等效于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中每个选项的属性。
- "Single Instruction, Multiple Data (SIMD) Mode"
- "Single Instruction Multiple Data (SIMD) Arithmetic"