首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
FPGA/CPLD可编程逻辑
» 《Xilinx可编程逻辑器件设计与开发(基础篇)》连载24:DSP模块XtremeDSP
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
《Xilinx可编程逻辑器件设计与开发(基础篇)》连载24:DSP模块XtremeDSP
发短消息
加为好友
pengpengpang
(pengpengpang)
当前离线
UID
1023229
帖子
6106
精华
0
积分
3055
阅读权限
90
来自
中国
在线时间
156 小时
注册时间
2013-12-20
最后登录
2016-7-3
论坛元老
UID
1023229
来自
中国
1
#
打印
字体大小:
t
T
pengpengpang
发表于 2014-10-28 11:33
|
显示全部帖子
《Xilinx可编程逻辑器件设计与开发(基础篇)》连载24:DSP模块XtremeDSP
寄存器
,
流水线
,
开发
,
连载
,
能力
5.1.5 DSP 模块XtremeDSP
为了适应越来越复杂的DSP运算,Virtex-6中嵌入了功能更强大的DSP48E1 SLICE,简化的DSP48E1模块如图5-16所示。
图5-16 简化的DSP48E1模块
DSP48E1兼容Virtex-5的DSP48E,而且在两方面有所增强。
带D寄存器的25位预加器,增加A通道的能力。在切换乘法(A*B)和加法(A:B)操作时,INMODE控制支持平衡流水线。图5-16为简化的DSP48E1模块框图,从图中可以看出,算术部分包含一个25位预加器、一个25×18二进制补码乘法器、3个48位的多路复用器,跟随一个48位符号可扩展的加法器/减法器/累加器或者2输入逻辑单元。如果使用了2输入逻辑单元,则此乘法器不能再被使用。
DSP48E1的数据和控制输入连接到算术和逻辑部分。A和B输入通道上有两级流水线寄存器;D和AD(AD为预加器内的中间寄存器)输入通道上有一级流水线寄存器。其他数据和控制输入通道也有一级流水线寄存器。最高操作频率可达600MHz。
大部分情况下,加法器/减法器/逻辑单元的输出是其输入的函数。输入由MUX、进位选择逻辑和乘法器阵列驱动。对应公式如下所示。
Adder/Sub输出= (Z ± (X + Y + CIN))或(-Z + (X + Y + CIN) –1)
DSP48E1的内部结构如图5-17所示,主要由以下几部分组成。
图5-17 DSP48E1内部结构图
一、 输入端口
(1) 输入端口A、B、C和D。
每个DSP48 SLICE有4个输入数据口A、B、C和D,A口30位宽,B口18位宽,C口48位宽,D口25位宽。A口、D口和预加器的逻辑如图5-18所示;B口逻辑如图5-19所示。A口的25位和B口18位数据是25位×18位乘法器输入。每个DSP48E1能完成乘加、乘减等操作。A口和B口可以合并跳过乘法器作为多路选择器X的输入。
A口和B口可以合并成48位宽的数据和48位宽的C口一起实现48位的加法/减法。
DSP48E1 SLICE提供了两个级联数据输入通道(ACIN和BCIN),提供了相邻DSP48E1 SLICE之间的级联输入数据流。级联路径ACIN为30位宽,BCIN为18位宽。A、B、ACIN和BCIN数据通路上有0、1或2级流水线。数据端口寄存器可以通过延时提高时钟频率。属性AREG和BREG用于设置A口和B口的流水线级数。属性ACASCREG和BCASCREG用于设置ACOUT口和BCOUT口级联流水线级数。DSP48E1通过控制多路选择器的控制位设置数据流的通路、寄存器和级联输入。
图5-18 A、D和预加器逻辑
图5-19 B口逻辑
INMODE[3:0]是DSP48E1里新增的控制位,这些位控制A和D输入寄存器与预加器的函数。
48位的C口作为Y和Z多路选择器的输入,实现加法、减法、三输入加/减和逻辑函数。C输入也连到模式识别器上,实现函数取舍。
(2) OPMODE、ALUMODE和CARRYINSEL端口逻辑。
OPMODE、ALUMODE和CARRYINSEL端口逻辑支持输入控制信号的直通或者寄存器输入。通过多路选择器的配置位可以选择直通或通过寄存器。OPMODE、ALUMODE和CARRYINSEL端口逻辑如图5-20所示。
(3) X、Y和Z多路选择器。
OPMODE提供了动态改变DSP48E1功能的方法,OPMODE的控制位对应X、Y和Z多路选择器的输出。这3个多路选择器的输出成为后面加/减器的三个操作数。
图5-20 OPMODE、ALUMODE和CARRYINSEL端口逻辑
(4) ALUMODE输入。
4位ALUMODE控制第二级加/减/逻辑单元的行为,如表5-11所示。
表5-11 ALUMODE控制的DSP操作配置表
(5) 进位输入逻辑。
Virtex-6器件中进位输入逻辑是3位CARRYINSEL信号的函数。输入逻辑见图5-21。所有可能的进位输入在X、Y和Z多路选择器之前“会合”。
图5-21 CARRYINSEL信号逻辑
二、 输出端口
除ACOUT和BCOUT外的所有输出端口通过RSTP复位,CEP使能。ACOUT和BCOUT分别通过RSTA和RSTB复位。DSP48E1输出逻辑如图5-22所示。
图5-22 DSP48E1输出逻辑
(1) 输出端口P。
DSP48E1有一个48位输出端口P,这个输出口能通过PCOUT通路连接(级联)相邻的DSP48E1 SLICE。PCOUT连接到相邻DSP48E的Z多路选择器的输入口(PCIN)。该通路提供两个相邻DSP48E1的输出级联通路。
(2) CARRYCASCOUT和CARRYOUT口。
DSP48E1 SLICE的进位输出为4位宽,通过CARRYOUT输出到FPGA逻辑。CARRYOUT信号通过CARRYCASCOUT和相邻DSP48E1 SLICE级联。实现更大的加法、减法、累加、乘累加函数。
(3) MULTSIGNOUT端口逻辑。
乘法器输出的最高位通过MULTSIGNOUT口级联到下一个DSP48E1 SLICE,仅用于扩展96位的MACC。
(4) PATTERNDETECT和PATTERNBDETECT端口逻辑。
DSP48E1 SLICE的输出增加了一个序列检测器,用于检测P总线是否和指定序列匹配,或者是否和指定序列的取反值相匹配。
(5) 上溢和下溢端口逻辑。
DSP48E1 SLICE利用模式检测器检测P[N](N从1到46)是否有溢出,当有上溢或下溢发生时,DSP48E1输出OVERFLOW和UNDERFLOW信号。
三、 算术功能
(1) 预加器。
Virtex-6 FPGA DSP模块结构上的又一改变是在A寄存器路径上增加了一个预加器,实现预加或预减等操作。
(2) 乘法器。
Virtex-6 FPGA DSP模块内包含一个二进制补码乘法器,如图5-23所示。二进制补码乘法器的一个输入为25位的二进制补码,另一个为18位的二进制补码,产生43位结果输出。乘法器86位输出包含两个43位部分乘积。乘法器和算法支持17位操作数右移,以对准宽乘法器的部分乘积(并行或顺序乘法)。级联通路作为Z多路选择器的输入,可以和相邻DSP48E1 SLICE的加法器/减法器相连。
将输入操作数的最高位设置成0,则乘法器就能实现无符号算术。
寄存器MREG是乘法器的输出可选流水线。
图5-23 DSP48E1内的乘法器
(3) 加法器/减法器/逻辑单元。
加法器/减法器/逻辑单元的输出是控制信号和输入数据的函数,加法器/减法器的输入由OPMODE和CARRYINSEL控制。ALUMODE设置加法器/减法器实现的功能。因此OPMODE、ALUMODE和CARRYINSEL信号一起设置加法器/减法器或逻辑单元实现的功能。
(4) 2输入逻辑单元。
通过OPMODE和ALUMODE的设置,可以在三输入加法/减法/逻辑单元的第二级实现逻辑函数。2输入逻辑单元配置如表5-12所示。
表5-12 2输入逻辑单元配置
分析DSP48E1结构后,可以理解,DSP48E1不需要使用通用可编程逻辑构造资源,可支持将多个DSP48E1逻辑片连接起来完成更宽输入的数字功能、DSP滤波器和复杂算法。这可以带来更低的功耗、更高的性能和更高的芯片资源使用效率。
Xilinx工具提供了便捷的DSP48的使用工具,用户可以在HDL中例化原语,或者调用CoreGen配置所需参数,设置相应功能,工具会自动配置OPMODE及内部寄存器。
收藏
分享
评分
记录学习中的点点滴滴,让每一天过的更加有意义!
回复
引用
订阅
TOP
返回列表
测试测量
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议