正在加载图片...
XILINX FPGA/CPL.D简介 (Register)组成的。FPGA内部查找表一般为4输入(注:Altera StratixⅡ 的自适应逻辑模块ALM结构比较特殊)。 查找表 一般完成纯组合逻辑功能 FPGA内部寄存器结构相当灵活,可以配置为带同步/异步复位或置位、时仲 使能的触发器(FF,Flip Flop),也可以配置成为锁存器(Latch)。FPGA中 一般依赖寄存器完成同步时序逻辑设计。比较经典的基本可编程单元配置为 一个寄存器加一个杏找表。但是不间厂商的寄存器和杏找表的内部结构有 定的差异,而且寄存器和查找表的组合模式也不同。例如,Xix可编程透 辑单元叫做Sice,它由上下两部分构成 每部分都由 Register加 LUT组成,被称为LC(Logie Cell,漫辑单元),两个LC之间有一些共用透 辑,可以完成LC之问的配合工作与级连。Altera可编程逻辑单元被称为LE (Logic Element,逻辑单元),由一个Register加一个LUT构成。Lattice的 底层逻辑单元叫做PFU(Programmable Function Unit,.可编程功能单元),它 由8个LUT和9个Re sr构成。当然这些可编程单元的配置结构随着件 的发展也在不断更新,最新的一些可编程逻辑器件常常根据设计需求推出 些新的LUT和Register的配置比率,并更新其内部的连接构造。 学习底层配置单元的LUT和Register比率的一个重要意义在于器件选型 和规模估算。很多器件手册上用器件的ASIC门数或等效的系统门数表示器 件的规模。但是由于目前FPGA内部除了基本可编程辑单元外,还包含有 丰富的嵌入式RAM.PL或DLL 专用H IP Core 硬知识产权功能核 等。这些功能模块也会等效出相当规模的系统门,所以用系统门考核基本可 编程逻辑单元的数量是不准确的。比较科学的方法是用器件的Register或 LUT的数量衡量(因为一般未说两者比率为l:1)。例如,Xilinx的Spartan- Ⅲ系列的XC3S1000有15360个LUT,而Lattice的EC系列LFEC15E也有 15360 所以这两款FPGA的可编程逻辑单元数量基本相当, 腐于同 规模的产品。同样道理,Altera的Cyclone器件族的EPIC12的LUT数司 是12060个,就比前面提到的两款FPGA规模略小。需要说明的是,器件远 型是一个综合性问题,需要将设计的需求、成本压力、规模、速度等级、时 钟资源、V0特性、封装和专用功能棋块等诸多因素综合考患。 (3)嵌入式块RAM 目前大多数FPGA都有内嵌的块RAM(Block RAM)。FPGA内部嵌入可 编程RAM模块,大大地拓晨了FPGA的应用范围和使用灵活性。FPGA内的 的块RAM一般可以灵活地配置为单口RAM(SPRAM,Single Port RAM)、双 口RAM(DPRAM,Double Ports RAM)、伪双口RAM(Pseudo DPRAM) CAM(Content addressable memory)和FlFO(First In First Out)等常用存结 结构。RAM的念和功能迹考应这非常孰悉不再禁球。FGA中其空 有专用的ROM硬件资源 实现ROM的思路是对RAM赋子初值, 并保持议 初值。所谓CAM,即内容地址储存器。CAM这种存储器在其每个存储单元都 包含了一个内嵌的比较逻辑,写入CAM的数据会和其内部存储的每一个数据 进行比较,并返回与端口数据相同的所有内部数据的地址。概括地讲,RAM 3FPGA/CPLD 简介 3 (Register)组成的。FPGA 内部查找表一般为 4 输入(注:Altera Stratix II 的自适应逻辑模块 ALM 结构比较特殊),查找表一般完成纯组合逻辑功能。 FPGA 内部寄存器结构相当灵活,可以配置为带同步/异步复位或置位、时钟 使能的触发器(FF,Flip Flop),也可以配置成为锁存器(Latch)。FPGA 中 一般依赖寄存器完成同步时序逻辑设计。比较经典的基本可编程单元配置为 一个寄存器加一个查找表。但是不同厂商的寄存器和查找表的内部结构有一 定的差异,而且寄存器和查找表的组合模式也不同。例如,Xilinx 可编程逻 辑单元叫做 Slice,它由上下两部分构成,每部分都由一个 Register 加一个 LUT 组成,被称为 LC(Logic Cell,逻辑单元),两个 LC 之间有一些共用逻 辑,可以完成 LC 之间的配合工作与级连。Altera 可编程逻辑单元被称为 LE (Logic Element,逻辑单元),由一个 Register 加一个 LUT 构成。Lattice 的 底层逻辑单元叫做 PFU(Programmable Function Unit,可编程功能单元),它 由 8 个 LUT 和 9 个 Register 构成。当然这些可编程单元的配置结构随着器件 的发展也在不断更新,最新的一些可编程逻辑器件常常根据设计需求推出一 些新的 LUT 和 Register 的配置比率,并更新其内部的连接构造。 学习底层配置单元的 LUT 和 Register 比率的一个重要意义在于器件选型 和规模估算。很多器件手册上用器件的 ASIC 门数或等效的系统门数表示器 件的规模。但是由于目前 FPGA 内部除了基本可编程逻辑单元外,还包含有 丰富的嵌入式 RAM、PLL 或 DLL,专用 Hard IP Core(硬知识产权功能核) 等。这些功能模块也会等效出相当规模的系统门,所以用系统门考核基本可 编程逻辑单元的数量是不准确的。比较科学的方法是用器件的 Register 或 LUT 的数量衡量(因为一般来说两者比率为 1:1)。例如,Xilinx 的 Spartan￾III 系列的 XC3S1000 有 15360 个 LUT,而 Lattice 的 EC 系列 LFEC15E 也有 15360 个 LUT,所以这两款 FPGA 的可编程逻辑单元数量基本相当,属于同 一规模的产品。同样道理,Altera 的 Cyclone 器件族的 EP1C12 的 LUT 数量 是 12060 个,就比前面提到的两款 FPGA 规模略小。需要说明的是,器件选 型是一个综合性问题,需要将设计的需求、成本压力、规模、速度等级、时 钟资源、I/O 特性、封装和专用功能模块等诸多因素综合考虑。 (3) 嵌入式块 RAM 目前大多数 FPGA 都有内嵌的块 RAM(Block RAM)。FPGA 内部嵌入可 编程 RAM 模块,大大地拓展了 FPGA 的应用范围和使用灵活性。FPGA 内嵌 的块 RAM 一般可以灵活地配置为单口 RAM(SPRAM,Single Port RAM)、双 口 RAM(DPRAM,Double Ports RAM)、伪双口 RAM(Pseudo DPRAM)、 CAM(Content Addressable Memory)和 FIFO(First In First Out)等常用存储 结构。RAM 的概念和功能读者应该非常熟悉,不再赘述。FPGA 中其实并没 有专用的 ROM 硬件资源,实现 ROM 的思路是对 RAM 赋予初值,并保持该 初值。所谓 CAM,即内容地址储存器。CAM 这种存储器在其每个存储单元都 包含了一个内嵌的比较逻辑,写入 CAM 的数据会和其内部存储的每一个数据 进行比较,并返回与端口数据相同的所有内部数据的地址。概括地讲,RAM
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有