通信工程毕业论文

高性能FPGA中的BRAM模块设计论文

时间:2020-12-16 19:38:23 通信工程毕业论文 我要投稿

高性能FPGA中的BRAM模块设计论文

  第 1 章 绪 论

高性能FPGA中的BRAM模块设计论文

  1.1 FPGA 的发展及优势

  现场可编程逻辑门阵列(FPGA)是继可编程阵列逻辑(PAL),门阵列逻辑(GAL)和电可编程逻辑器件(EPLD)等可编程器件之后的产物[2]。作为一种半定制器件,它经常被用户使用,通过编程控制达到所需要的逻辑功能[8]。相对于专用集成电路(ASIC),它的优点如下:设计灵活:FPGA 芯片具有丰富的可编程逻辑资源且支持多种 I/O 接口及封装,使得其设计可以应对多种市场需求[7]。

  易于使用:FPGA 有配套的 EDA 软件,能够自动完成原有 ASIC 设计所必需的芯片后端设计;这样,开发工程师就不需要再去了解过多的芯片后端设计知识,可以节省大部分的精力而投入到产品的功能设计中去。研发周期短:在用 FPGA 实现产品功能设计时,几乎不用后端设计,也不需要流片生产,因此基于 FPGA 的电子设计研发周期大约为 6-12 个月。相比于 ASIC 的研发周期(14-24 个月),平均节省了一半的研发时间。研发风险小:FPGA 的现场可编程性可以及时修改系统设计的缺陷和错误,规避了ASIC 由于设计失败而必须重新流片的风险。研发投入小:和 ASIC 相比,基于 FPGA 的设计没有昂贵的 EDA 工具使用费用,和ASIC 设计所需要的人工费,因此可以大大减少研发投入。

  1.2 FPGA 的国内外发展现状

  1.2.1 国外研究情况

  国外 FPGA 技术起步早,发展快,其电路规模已达到上千万门。作为 FPGA 产业中的两大霸主,Altera 和 Xilinx 已经拥有 65nm 工艺的高性能 FPGA 器件。它们都采用基于 LUT 的可编程逻辑单元;其中 Xilinx 的 Virtex-5 系列 FPGA 产品能达到 550MHz 的工作频率,Altera 的 Stratix 系列 FPGA 产品的工作速度已达 600MHz。如此高性能的 FPGA 内部拥有大量的可编程逻辑资源且集成了许多软核和硬核,以方便用户使用[11]。

  1.2.2 国内研究现状

  在国内市场中,FPGA 的竞争力很是强大,而且应用前景也非常广泛。但是由于国内关于 FPGA 芯片技术的研究发展时间并不长,与国外 FPGA 如火如荼的发展速度相比,还是处于发展,甚至起步阶段;国内除了少数公司和一些院校研究单位对 FPGA 内部的部分结构进行了研究且取得了一些研究成果之外,别的方面成果甚少。另外,国外对于可编程器件方面关键技术的垄断也使得我国 FPGA 技术发展缓慢。即便如此,FPGA在中国已经如雨后春笋般慢慢兴起,并努力在此领域实现突破和长足发展。虽然在技术和水平上和国外差距甚大,但是与以往中国 FPGA 芯片界的情况相比,国内已经有了比较先进的工艺技术和理论基础,为自主设计和实现 FPGA 奠定了基础。

  第 2 章 FPGA 的基本架构

  2.1 可配置逻辑单元(CLB)

  CLB(Configurable Logic Block),即:可编程逻辑单元,它的基本结构是逻辑单元(LC)。一个 LC 包括:4 输入函数发生器,存储器和进位逻辑;每个 CLB 包含 4 个 LC 和一些逻辑电路[11]。图 2-3 展示了 CLB 的整体结构。函数发生器是由 4 输入查找表(LUT)实现的,除了可用作函数发生器,还可以是16x1bit 同步 RAM[12];由同一对在同一单元中的 LUTs 片可组成一个 16x2bit 或者 32x1bit的同步 RAM;也可以形成一个 16x1bit 的双端口的 RAM;每个 LC 单元的存储部分可配置为 D 触发器或锁存器。

  图 2-2 为 FPGA 芯片的模块布局示意图。,各功能模块以阵列的形式较为规则地分布在整个芯片上,每个模块的四周为布线通道。

  该芯片包含以下功能模块:逻辑模块 由查找表、寄存器等组成的单元模块,是最基本的功能模块,配置完成后可以实现多种不同的逻辑功能。

  存储器模块,即本论文的研究对象,用来存储大量的数据资源。它具有多种不同的功能模式,可以通过特定的配置方式来实现。ALU 模块 如乘法器,用于涉及到数据处理方面的问题。

  IO 模块 连接 FPGA 和外部电路,分布在 FPGA 的`四条边上。时钟管理模块 通常由全数字时钟锁相环和时钟数组成,为全芯片提供低偏移、低抖动的多种分频和移相时钟。

  布线通道模块 作为 FPGA 实现“可编程”的关键,按走向和功能可以列为横向,纵向和转换通道。他们分布在其他功能模块的四周,将各模块互连起来。

  ........

  2.2 可编程连线资源

  FPGA 提供多种可编程的连线资源,通过软件的配合优化长路径,使其延时尽可能最小,从而使系统性能达到最优。FPGA 内部的可编程连线资源分为可编程布线矩阵、可分割长线、长线和短线。可编程布线矩阵又包括许多种,如通用布线、专用布线、全局布线等等[5]。布线通道由两个模块组成:开关和连线;相邻的连线之间只能通过开关连通。FPGA 的结构是阵列式的,布线通道水平和垂直地分布在模块之间。

  ........

  2.3 输入输出模块(IOB)

  FPGA 芯片中的 IOB 单元可以支持像 PCI、LVTTL、LVCMOS2 等多种端口的信号标准。其结构如下图 2-4 所示,每个 IOB 结构都包括 3 个寄存器单元、一个输入缓冲器、一个输出缓冲三态 buf、上拉/下拉电阻和 weak-keeper 电路。

  作为 IOB 的寄存器单元,可以被配置成为 D 触发器或者锁存器。在 IOB 单元中,三个寄存器单元共享一个时钟信号(CLK);一个置位/复位信号(SR),每个触发器的此信号可以被独立配置成同步置位/复位和异步置位/复位[5];分别有独立的时钟使能信号(CE)。IOB 的输入路径中的缓冲器可以将输入信号通过触发器或直接送到内部电路,触发器的输入端还包括一个可配置的延时单元[13],它的作用是用来消除 PAD 到 PAD 之间的时间差;我们还可以通过配置输入缓冲器,使其匹配任何标准的低电压信号。

  IOB 的输出路径中有一个三态输出缓冲器,与输入路径中的缓冲器一样,它既可以从电路的内部直接接收信号,也可以从 IOB 输出端的触发器接收信号,然后再输出;此三态缓冲器的控制信号也具有以上的两种来源渠道;而且,经过触发器的三态控制信号可以作为同步的使能和非使能信号。

  ........

  第 3 章 FPGA 中 BRAM 模块的电路设计 ........11

  3.1 设计流程 .......11

  3.2 设计实现原理 ...11

  3.3 18-Kb BRAM 的整体结构划分...18

  3.4 本章小结 .......19

  第 4 章 BRAM 各模块电路的设计与实现 .......20

  4.1 输出端数据位宽配置的电路设计和实现 .....20

  4.2 输入端的数据位宽配置的设计和实现 .......24

  4.3 字线译码电路的设计 ...29

  4.4 BRAM 的存储单元设计 ........31

  4.5 外围电路设计 ...36

  4.6 时序控制生成电路设计 .......39

  4.7 本章小结 .......44

  第 5 章 可配置存储器各模块功能仿真和验证........45

  5.1 可配置存储器各功能模块的仿真 .....45

  5.2 BRAM 整体电路仿真 ....50

  第 5 章 可配置存储器各模块功能仿真和验证

  电路设计的整个过程是伴随着仿真进行的,首先我们可以通过仿真来验证设计出来的电路是否达到预期情况,其次也可以用仿真的结果来指导我们对电路进行补充和修改,从而可以获得更好的性能。

  对于存储器模块来说,其中很多的功能模块对信号的时序和幅度都要求比较严格,所以,需要对局部模块和整体模块进行逐步的仿真和验证。在对电路做整体仿真时,我们采用的方法是将设计出来的 BRAM 电路级模块转换成为 dut 行为级模块,然后通过 Modelsim 仿真工具进行仿真验证。由于此 dut 模块是由BRAM 的电路级提取而来,所以它的结果完全可以用来验证我们设计电路的正确与否。

  以下验证模块三种不同工作模式的整体仿真结果。从图中可以看出,在写使能信号有效时,数据在时钟上升沿被写入对应的地址单元;与此同时,输出端的数据却保持原数据不变,直至 wea 使能信号变为 0 之后,输出端才开始输出对应地址的数据,在此有必要说明,在输出“保持模式”下,不支持校验位的选择,所以选择输入数据为 16 位。

  .......

  结论

  本论文首先介绍了 FPGA 的发展,以及与专用芯片相比的优势所在,国内外现状对比得出 FPGA 芯片自主研究的意义重大;对片上存储器和它的发展现状进行了介绍,引出本课题的研究内容是 FPGA 芯片上的可配置存储器设计。本论文的目的是设计一款基于 130nmCMOS 工艺的 FPGA 芯片中的嵌入式存储器模块。通过对有关 FPGA 芯片资料的调研,结合本项目芯片的设计要求,提出了存储器模块的设计指标:总量为 18Kb;完全独立双端口且每个端口支持 6 种数据组织形式(16Kx1、8Kx2、4Kx4、2Kx9、1Kx18、512x36),支持校验位;每个端口支持三种数据写入模式;控制信号的极性可以被选择。

  其中,该存储器区别于普通存储器的主要地方就在于它的可配置性,也是该课题的创新之处。主要工作是嵌入式存储器模块的电路设计和仿真。结合设计指标和对设计流程的理解,采用结构和层次化的方法完成了整个模块的电路设计

  。重点实现了存储器模块位宽的可配置性,以及存储器读写过程中时序控制电路的设计。在读写过程中,采用脉冲控制的方式通过减小控制读写的信号脉宽,降低了整个电路的功耗。

  在设计中采用 Hspice对单个存储单元的读写进行了仿真,通过调节器件的尺寸得到最佳的工作波形;在位宽可配置模块设计的部分则采用了 VCS 仿真工具,通过位宽控制信号的改变和不同位宽数据的输入来验证其功能的正确性。对 BRAM 整体电路的仿真,则采用了 modelsim 仿真工具,主要通过三种不同的读写模式对整体电路进行了功能仿真。可配置存储器除了上述实现的功能外,还可以通过设计进一步地增加一些附加的功能,比如流水线输出和集成 FIFO 的实现。目前还需要对芯片的电路结构进行进一步的学习和深入研究。

  参考文献(略)

【高性能FPGA中的BRAM模块设计论文】相关文章:

论设计中品牌文化的实现论文04-11

节能设计在建筑中的应用论文11-17

基于FPGA的微波炉控制器设计-开题报告11-27

计算机辅助工业设计模块化教学建设论文04-01

传统中探寻平面艺术设计中的网格结构论文12-07

建筑规划中节能设计的有效运用论文11-19

建筑设计中节能措施的分析论文11-03

计算机网页设计中图形设计的运用论文03-28

绿色建筑设计思路在设计中的应用分析论文11-18