首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
FPGA/CPLD可编程逻辑
» 《Xilinx可编程逻辑器件设计与开发(基础篇)》连载20:可配置逻辑模块(CLB)
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
《Xilinx可编程逻辑器件设计与开发(基础篇)》连载20:可配置逻辑模块(CLB)
发短消息
加为好友
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:35
|
只看该作者
《Xilinx可编程逻辑器件设计与开发(基础篇)》连载20:可配置逻辑模块(CLB)
开发
,
连载
5.1.1 可配置逻辑模块(CLB)
CLB是实现时序电路和组合电路的主要逻辑资源。
Virtex-6每个CLB模块里包含2个SLICE,每个CLB通过交换矩阵与外部通用逻辑阵列相连,如图5-2和图5-3所示。CLB中的两个SLICE之间没有直接连接。
图5-2 CLB 里的SLICE 排列
图5-3 CLB 的位置排列
在Virtex-6中,SLICE 分为SLICEX、SLICEL 和SLICEM 三种,SLICEX不具有存储功能,也没有进位链;SLICEL不具有存储功能,但包含进位链;SLICEM 具有存储/移位寄存器功能,也包含进位链。
每个SLICE包含4个LUT 和8个存储单元。这些基本单元能提供逻辑、算术和ROM功能。除了这些基本功能,还有一些SLICE具有分布式RAM和移位寄存器功能,这些SLICE又被称为SLICEM。
CLB 可以实现表5-1 所示功能。
表5-1 CLB的功能
SLICE结构图如图5-4(a)和图5-4(b)所示,每个SLICE包含逻辑函数发生器(即LUT)、存储元件、多功能多路复用器(MUXF)、进位逻辑和算法单元(MULT_AND)等资源。
(a)SLICEM
(b)SLICEL
图5-4 SLICE 内部简化结构图
一、 查找表(LUT)
Virtex-6 FPGA的函数发生器由6输入查找表实现。每个LUT有6个独立输入(A1-A6)和2个独立输出(O5 和O6),可以实现任意6 输入布尔函数。同时每个LUT 在相同的输入情况下,也可以实现2 个任意5 输入布尔函数。如果是6 输入函数,仅有O6 输出。
O5 和O6 分别对应两个5 输入函数发生器的输出,在这种情况下,A6 由软件设置为高电平。LUT 的延时与所实现的函数无关。
LUT 可以实现组合逻辑、ROM、分布式RAM、移位寄存器等功能。
(1) 组合逻辑:所有的LUT 可以实现任意6 输入布尔函数。
(2) ROM:所有的LUT 可以实现一个64×1 位ROM。有三种配置方式,分别是ROM64×1、ROM128×1 和ROM256×1。SLICEM 和SLICEL 中的ROM 可以级联成更宽或者更深的ROM,配置的表见表5-2。
表5-2 ROM 配置
(3) 分布式RAM存储器(只能在SLICEM中使用):SLICEM中的LUT可以配置成一种称为分布式RAM的同步RAM。SLICEM中的多个LUT可以灵活组合起来,以存储更多数据。在SLICEM内可以将RAM元件配置成以下形式,RAM的配置见表5-3。
表5-3 分布式RAM的配置表
分布式RAM原语如表5-4所示。
表5-4 单口、双口和四口的分布式RAM的原语
(4) 移位寄存器(只能在SLICEM中使用):SLICEM的LUT还可配置成32位移位寄存器,无需使用SLICE中提供的触发器。以这种方法使用的LUT可以将串行数据延迟1到32个时钟周期之间的任意长度。移位寄存器的移位输入SHIFTIN和移位输出SHITOUT用来将LUT级联成更大的移位寄存器,一个CLB里面的4个LUT可以级联,产生128个时钟周期的延时。CLB之间也可以连接组成移位寄存器,用于平衡数据流水线的时序。移位寄存器原语如图5-5所示。
图5-5 移位寄存器的原语
二、 存储元件
Virtex-6每个SLICE都有存储元件,可以实现存储功能,可以配置成边沿触发式的D型触发器或电平敏感型的锁存器,如图5-6所示。
图5-6 SLICE里寄存器/锁存器配置
三、 多路复用器(MUX)
在一个SLICE中,除了包含LUT外,还包含三个多路复用器(F7AMUX、F7BMUX和F8MUX),用户可以将4个函数发生器组合在一起,构成7输入或者8输入的函数。多于8个输入的函数,可以用多个SLICE实现。
多路复用器F7AMUX、F7BMUX和F8MUX通常和函数发生器或者片上逻辑一起实现多种多路复用器。可以实现以下几种多路复用器。
1个LUT实现4:1多路复用器2个LUT实现8:1多路复用器4个LUT实现16:1多路复用器四、 快速先行进位逻辑(Carry Logic)
Virtex-6每个CLB有2条独立的进位链,用于实现快速算术加减运算,它解决了多位宽加法、乘法从最低位向最高位进位的延时问题。先行进位逻辑有专用的进位通路和进位多路复用器(MUXCY),可用来级联函数发生器(LUT),以实现更宽更复杂的逻辑函数,提高CLB模块的处理速度。Virtex6中的进位链是上行进位链,每个SLICE具有4位的高度。考虑到进位链的上行结构特点,在设计中,要特别注意进位链的长度,因为如果当进位链的长度超出一列时,进位链会导致延时变长很多,影响时序。
五、 算术逻辑(MULT_AND)
算术逻辑包括一个异或门(XOR)和一个专用与门(MULT_AND),一个异或门可以使一个SLICE实现2位全加操作,专用与门提高乘法器的效率。
收藏
分享
评分
记录学习中的点点滴滴,让每一天过的更加有意义!
回复
引用
订阅
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
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议