Xilinx Virtex-5 FPGA CLB资源学习笔记
FPGA CLB介绍
一个CLB包含两个Slice,两个Slice分别位于独立的列,有各自的进位链,他们相互不连接。每个CLB连接到一个Switch matrix上已完成布线。CLB中底部的Slice为Slice0,上部的为Slice1。
Xilinx给Slice的标号为X代表列、Y代表行,从die的左下角开始排序。
每个Slice包含4个逻辑生成器(6-LUT)、4个Storage element、4个Wide-function multiplexer、1个进位逻辑。这些器件可以实现逻辑、算术运算、ROM的功能。此外,有一些Slice可以支持2种额外功能:用Distributed RAM存数、32位移位寄存器,这些有额外功能的Slice叫SliceM。其他的Slice叫SliceL。
每个CLB可以提供的逻辑资源如下。
Slice中的逻辑生成器由6-LUT实现。每个6-LUT有6个独立输入(A1~A6)、两个独立输出(O5、O6)。6-LUT可以实现任意6输入布尔逻辑,也可以实现任意两个5输入布尔逻辑,只要这两个逻辑运算有共同输入。O6是6输入布尔逻辑运算的输出,而O5、O6是5输入布尔逻辑运算的输出。一个6-LUT的延迟是与所计算的逻辑函数无关的。布尔逻辑运算的结果可以①输出Slice(O6通过A、B、C、D,O5通过AMUX、BMUX、CMUX、DMUX),②O6的输出可以进入一个专用异或门,③O5的输出可以进入进位逻辑链,④O6的输出还可以进入进位逻辑选择器的选择端,⑤进入Storage element的数据输入端口,⑥O6的输出进入F7AMUX/F7BMUX。
F7AMUX/F7BMUX、F8MUX是用来组合四个6-LUT用的,可以提供7输入布尔逻辑运算、8输入布尔逻辑运算。更多输入的布尔逻辑运算需要更多的Slice。
CLB中的Storage element可以配置为边沿触发的DFF或者锁存器。配置为DFF时,DFF的输入可以是6-LUT的输出通过AFFMUX、BFFMUX、CFFMUX、DFFMUX这4个选择器输入,或者通过AX、BX、CX、DX输入而passby掉6-LUT。配置为锁存器是,当CLK为低时,输出随输入变化(transparent)。
Storage element的控制信号有时钟(CK)、时钟使能(CE)、置位复位(SR)、取反(REV)。一个Slice中所有Storage element共用相同的控制信号,但是时钟信号的极性可以不同(通过时钟路径上的非门实现)。
Attribute SRHIGH决定了当SR assert时,输出高。而Attribute SRLOW决定了当SR assert时,输出低。同时REV assert时输出取反。Slice中的每个storage element的Attribute SRHIGH 与Attribute SRLOW都能独立设置。但是SR是同步还是异步则不能独立设置。
Attribute INT0与Attribute INT1设置了Storage element的初始值。默认情况设置Attribute SRLOW时设置了INIT0,而设置Attribute SRHIGH时设置了INIT1。但是Attribute INT0与Attribute INT1可以独立于Attribute SRLOW、Attribute SRHIGH单独设置。
SliceM中的6-LUT可以配置为Distributed RAM。
每种RAM所需的LUT数量如下,
单端口模式时,分布式RAM的同步写、异步读共用相同的端口。双端口模式时,分布式RAM的一个端口用于同步写、异步读,另一个用于异步读。对于四端口模式时,一个端口用于同步写和异步读,另三个用于异步读。
单端口模式中,读写共用相同的地址总线,双端口模式中,一个函数生成器连接共用的读写地址,另一个函数生成器的A pin连接第二个端口的只读地址总线,WA pin连接第一端口的读写地址总线。
上图是4端口32x2 bit RAM,A~C是只读端口,D是读写端口,4个函数生成器(DPRAM32)的输入DI1、DI2是输入的2bit数据。
上图是单个2端口32x6 bit RAM,用4个函数生成器实现一个双端口RAM。
上图是用1个函数生成器实现的单端口64x1 bit RAM。DI1是1bit数据输入,A是读写地址。
上图是双端口64x1 bit RAM。
同步写操作:时钟沿来到的时候,当写使能为高,数据端口的数据写入RAM中地址A处。
异步读操作:输出由A pin决定(单端口模式或者双端口模式中的SPO pin)、DPRA pin决定(双端口模式中的DPO pin)。只要地址端口变化,一定的LUT延迟后,输出就会变。
配置为只读ROM所需的函数生成器数量如下表。
SliceM、SliceL都可以配置为64x1 bit ROM、128x1 bit ROM、256x1 bit ROM。
SliceM可以配置为32位移位寄存器。
函数生成器还可以实现选择器。
Slice中的进位逻辑资源用于算术加、减法。
Xilinx Virtex-5 FPGA CLB资源学习笔记相关推荐
- Xilinx 7系列 FPGA CLB资源介绍
赛灵思 7系列 FPGA CLB资源介绍 ---主要来源于官方技术手册ug474_7Series_CLB.pdf FPGA共有6大组成部分:1.可编程输入输出I/O单元:2.基本可编程逻辑单元CLB: ...
- 沧小海的《xilinx的A7系列芯片资源学习笔记》之第一部分:I/O BANK(三)
目录 2.3 OSERDESE2与ISERDESE2 2.2.1 ISERDESE2 2.2.2 OSERDESE2 2.2.3 IO_FIFO 2.4 其他 2.3 OSERDESE2与ISERDE ...
- 特权同学的FPGA/CPLD设计学习笔记
题记:这个笔记不是特权同学自己整理的,特权同学只是对这个笔记做了一下完善,也忘了是从那DOWNLOAD来的,首先对整理者表示感谢.这些知识点确实都很实用,这些设计思想或者也可以说是经验吧,是很值得每一 ...
- FPGA:zcu102学习笔记(参考自xing见博客)
1,概述 有一个计划是打算做一个摄像头的驱动与显示. 但是实际上手上只有一个zcu102开发板,没有摄像头,也没有上位机,自己也不会写.所以就将方案阉割成将录制好的视频放在SD卡里面,然后从SD卡里面 ...
- 【FPGA】流水线学习笔记
下面的内容来自:<从算法设计到硬件逻辑的实现> 所谓流水线设计实际上就是把规模较大.层次较多的组合逻辑电路分为几个级,在每一级插入寄存器组暂存中间数据.K 级的流水线就是从组合逻辑的输入到 ...
- 野火FPGA征途Pro学习笔记(IP核)
分频器 偶分频器 通过always语句,对系统时钟进型分频,例如4分频:对系统时钟进行计数四次,产生一个高电平的flag信号. 在后级模块中使用时,采用 系统时钟&&flag==1 的 ...
- 收藏了两年的嵌入式AI资源学习笔记,今天全分享给大家(附代码/资料/视频/学习规划)...
当前乃至未来5-10年,嵌入式开发者还有哪些风口?" 画外音:风口的本质,其实就是一段时间的人才供需不平衡.说白了就是由于行业突变,敏锐的资本快速进入,导致短时间内行业大量扩张,需要大量开发 ...
- Android Android应用资源 | 学习笔记
Android应用资源 一.字符串资源 步骤 二.颜色资源 步骤 三.尺寸资源 步骤 四.数据资源 一.字符串资源 为了改善程序的可读性和维护成本,Android允许把应用中用到的各种资源:字符串资源 ...
- IOS安全测试(资源学习笔记)
客户端程序安全 位置无关代码 检测客户端是有启用Position Independent Executable(PIE)编译选项,采用PIE选项编译的引用程序允许使用地址空间随机分布功能(ASLR, ...
最新文章
- Jmeter使用指南
- 挺水的一门课,发现全系都过了,就自己挂了,这是一种什么样的感觉呢?
- Anti-Forgery Request Recipes For ASP.NET MVC And AJAX 防伪验证,防伪请求
- 学完python基础后该学什么_想提一个老生常谈的问题, Python 基础学完后我应该干啥?...
- 织梦数据库支持mysql5.7_最新织梦DEDECMS5.7数据库说明文档
- goaheadlinux移植_goahead
- MyBatis的配置和用法
- jQuery使用总结 - jQuery组成和主要功能 1/4
- sql server 性能_如何在SQL Server中收集性能和系统信息
- 【jQuery笔记Part1】02-jQuery代码风格
- Test.ai完成1100万美元A轮融资,Google人工智能基金领投
- 一组这几年,美国人均寿命变化的数据
- openwrt reboot流程
- 模仿天猫商城的J2EE商城网站项目后端5——bean包
- Android图片添加水印图片并把图片保存到文件存储
- 浏览器跳不同 不同页面 php,利用js根据不同浏览器自动跳转不同页面
- Linux用wget和curl下载jdk
- 关于Android高德地图路线规划的学习
- 吉林大学数据库系统概念2015年期末试题自做答案
- matlab怎么运行步进,有没有大侠知道怎么用matlab控制步进电机
热门文章
- 组件数据更新页面未更新的解决方法
- http://cs.dartmouth.edu/~xy/blog/facel/
- Android设备测试应用总结
- 不忍了!自己来搭建一个网盘
- 分布式数据库系统面临的问题和挑战
- 5500xt挖矿算力_(视频)静态计算 RTX 3080 的以太坊挖矿回本周期 白露矿业报告 (20.09.19)...
- hdu-1225-Football Score
- 特来电最新财务数据曝光:年亏7770万,与星星充电争抢上市
- 刷酸记录(迪维维A酸乳膏)20190906-0908
- 百度地图AK鉴权说明与白名单设置方法