DSP48E1片的数学部分由一个25位的预加器、2个25位、18位的补法器和3个48位的数据路径多路复用器(具有输出X、Y和Z)组成,然后是一个3输入加法器/减法器或2输入逻辑单元(参见图2-5)。使用2输入逻辑单元时,不能使用乘法器。
DSP48E1片的数据和控制输入提供算术和逻辑阶段。A和B数据输入可以选择性地寄存一两个时钟周期,以帮助构建不同的、高度流水线化的DSP应用解决方案。D路径和AD路径可以分别寄存一次。其他数据输入和控件输入可以选择性寄存一次。数据表中规定的最大频率操作是通过使用pipelineregisters实现的。更详细的时间信息可在第3章,DSP48E1设计注意事项中获得。
在其最基本的形式中,加/减/逻辑单元的输出是其输入的函数。输入由上游多路复用器、进位选择逻辑和乘法器阵列驱动。
式2-1总结了X、Y、Z、CIN的加/减组合。CIN、X多路复用器输出和Y多路复用器输出相加。可以有选择地向Z多路复用器输出中添加或减去此组合结果。第二个选项是通过将ALUMODE设置为0001获得的。
Adder/SubOut=(Z±(X+Y+CIN))or(-Z+(X+Y+CIN)–1)公式2-1
DSP48E1片的一个典型用法是将A和B的输入相乘,然后将结果添加到C寄存器中或从C寄存器中减去。后面几节将描述基于控制和数据输入的更详细的操作。选择乘法器函数将消耗X和Y多路复用器的输出来供给加法器。乘法器的两个43位部分乘积在发送到加法器/减法器之前被符号扩展到48位。
当不使用第一阶段乘法器时,48位双输入按位逻辑函数实现AND、OR、not、NAND、NOR、XOR和XNOR。这些函数的输入是A:B、C、P或PCIN,通过X和Z多路复用器选择,Y多路复用器根据逻辑操作选择所有的1或所有的0。
加法器/减法器或逻辑单元的输出提供模式检测器逻辑。模式检测器允许DSP48E1切片支持收敛舍入、计数值达到时计数器自动复位以及累加器中的溢出/下溢/饱和。结合逻辑单元,模式检测器可以扩展为对两个48位字段执行48位动态比较。这使得诸如A:BNANDC==0或A:B(按位逻辑)C==模式等函数得以实现。
图2-5以非常简化的形式显示了DSP48E1片。7个OPMODE位控制X、Y和Z多路复用器的选择,将输入输入加/减或逻辑单元。在所有情况下,从乘法器到X和Y多路复用器的43位部分乘积数据都进行了符号扩展,形成加/减法器的48位输入数据路径。基于43位操作数和48位累加器输出,保护位的数目(即(可用来防止溢出的位)是5。为了扩展MACC操作的数量,应该使用ACC_EXTEND特性,它允许MACC通过两个DSP48E1片扩展到96位。如果A端口被限制为18位(有符号扩展为25位),那么MACC就有12个保护位。在乘法运算中,CARRYOUT位无效。OPMODE、ALUMODE、CARRYINSEL和CARRYIN的组合控制加/减或逻辑单元的功能。
审核编辑:何安
全部0条评论
快来发表一下你的评论吧 !