Xilinx可编程逻辑器件设计与开发(基础篇)连载14:Spartan.docx
-
资源ID:834571
资源大小:141.62KB
全文页数:6页
- 资源格式: DOCX
下载积分:3金币
快捷下载

账号登录下载
微信登录下载
三方登录下载:
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
Xilinx可编程逻辑器件设计与开发(基础篇)连载14:Spartan.docx
XiIinX可编程逻辑器件设计与开发(基础篇)连载14:Spartan2. 1.5DSP模块XtremeDSP为了适应越来越复杂的DSP运算,SPartan-6在SPartan3DSP模块DSP48A基础上,不断进行功能扩展,推出了功能更强大的DSP48A1S1ICE0图2-31所示为DSP48A1功能框图,算术部分包含18位预加器、2个48位数据输入的多路复用器(输出X和Z)、18X18位二进制补码乘法器,跟随一个48位宽的符号可扩展的后加法器/减法器/累加器。图2-31DSP48A1功能框图DSP48A1的数据和控制输入连接到算术和逻辑部分。A和B输入通道上有两级流水线寄存器。其他数据和控制输入通道也有一级流水线寄存器。在使用流水线寄存器情况下最高运行速率为250MHZ(在最低速度等级器件中)。该结构适应DSP应用中的众多功能,其可编程流水结构、48位内部总线、易于实现两级DSP48A1的级联的特性,增强了它的功能。图2-32所示为DSP48A1的详细框图,DSP48A1主要由以下几部分组成。一、端口(1) A、B、C、D、M和P端口逻辑。DSP48A1有4个输入数据通道(A、B、C和D)和一个数据输出通道(P),A、B和D口为18位宽,C口为48位宽,P口为48位宽。DSP48A1还有一个级联数据输入通道(Bcascade)和一个级联数据输出通道(Pcascade),提供相邻DSP48A1之间的输入和输出级联功能。Bcascade是一个专用资源,可以设置其属性BJNPUT,作为相邻DSP48A1的B口输入。DSP48A1还具有C1N输入和CARRYoUT输出,它主要用于实现相邻DSP48A1的并行乘累加运算。级联数据输入PCIN也是一个同相邻DSP48A1相连的专用资源,通过ZMUX(OPMODE3:2)动态选择。运算。18位的D和B口可作为18位预加器的输入,可以旁路预加器,也可以设置OPMODE4,将预加器的输出连接到乘法器的输入。18位的A和B口提供18X18乘法器输入,D、A和B可以旁路乘法器,作为X多路复用器的输入。48位C口用于Z多路复用器的通用输入,完成加或减运算。A口的25位和B口18位数据是25X18乘法器输入。每个DSP48A1都能完成乘加、乘减等操作。A口和B口可以合并跳过乘法器作为X多路复用器的输入。多路复用器由配置位控制,设置信号的直通、蚤住蛰输入或者级联输入。数据端口寄存器允许用于在增加时钟频率与数据延时之间平衡。乘法器和加法器之间的流水线寄存器为M寄存器。INMODE3:0是DSP48A1里新增的控制位,这些位控制A和D输入寄存器与预加器的函数。(2) OPMODE端口。OPMODE端口(见图2-33)支持两种输入方式,直通或者通过寄存器nipe1ineo使用寄存功能,可以提高DSP48A1的性能。TotheXandZMu1tip1exerscontro1forpre-andpost-adder.,subtractersandCarryInputSe1ect1ogic图2-33OPMODE端口(3) X和Z多路选择器。OPMODE提供了动态改变DSP48A1功能的方法,OPMODE的控制位对应X和Z多路选择器的选择位。多路选择器的输出作为后加法器/减法器的操作数。(4)进位输入逻辑。进位输入逻辑是OPMoDE5和C1N的函数。可能的进位输入在X和Z多路复用器的输出之前“会合”,在某种意义上,X和Z多路复用器函数复制了进位输入信号到进位逻辑。OPMODE和CARRYINSE1必须正确设置,确保正确选择进位输入(CIN)O图2-34中有两个输入,通CARRYINSE1位选择C1N或OPMODE5。CIN为上级DSP48A1的进位输出,OPMODE5由FPGA逻辑控制。CarryInputtoPost-AdderZSubtractGr图2-34CARRYINSE1信号逻辑二、算术功能(1)预加器。预加器/预减器的输出是OPMODE6和B、D数据的函数。OPMoDE6为1定义为减法操作。(2)乘法器。如图2-35所示,二进制补码乘法器输入为18位的二进制补码,产生36位补码输出。输出可以通过逻辑右移17位,级联成更宽位数的乘法器。将输入操作数的最高位设置成0,则乘法器就能实现无符号算术运算。寄存器MREG是乘法器的输出寄存器,可以在增加一个时钟周期延时的情况下,增加乘法器性能。乘法器的36位输出可以作为X多路复用器的输入,或者通过M口(MFOUT35:0)与FPGA内部逻辑相连。乘法器的36位输出可以进行符号扩展,达到48位,作为加法器/减法器的输入。图2-35DSP48A1内的乘法器(3)加法器/减法器/累加器。加法器/减法器/累加器的输出是OPMODE和输入数据的函数,由()PMODE3:0选择哪个输入到X/Z多路复用器,再到加法器/减法器/累加器功能块。加法或者减法操作由OPMODE7控制,OPMODE7为1代表减法。X多路选择器的输出与C1N相加,产生的结果与Z的输出相加/减。分析DSP48A1结构后,我们知道,用它可以完成非常复杂的DSP功能,如F1R滤波器等,极大地提高了数字处理的能力。Xi1inX工具提供了DSP48的原语,可以在HD1中例化,如图2-36所示。还可以通过COreGenerator工具调用。18yC4»0ACOUT2QrOB17:0BCoU巾7:0C(470PCoUT47:0D(24DOPMOOE6:0A1UMoDEi3.0CAARYINCAnRY1NSEU2:。INMODE4QP470CEAICARRYOUTPrOCEA2CarrycascoutCEe1MU1TSIGNoUTC田2CGCPatterndetectCEDCWCEPCEADPAnEHNBDErECTCEA1UMODECECTR1CECARHYINCBNMOOEOVERF1OWUNDERF1OWRSTARSTDRSTCRSTOPSTMRSTPRSTCTR1Rsta11cahryinrsta1mooeRstinmodeC1K/CN29:。Dow7:0PaN“:5CarrycascinIMuijsigmnQJ!/7反初X图2-36DSP48的原语