24小时论文定制热线

咨询电话

ASP.NETVC++MySQLPHP安卓JSPLinuxJava机械VBASP单片机模具汽车工程毕业设计Flash
您当前的位置:论文定制 > 毕业设计论文 >
快速导航
毕业论文定制
关于我们
我们是一家专业提供高质量代做毕业设计的网站。2002年成立至今为众多客户提供大量毕业设计、论文定制等服务,赢得众多客户好评,因为专注,所以专业。写作老师大部分由全国211/958等高校的博士及硕士生设计,执笔,目前已为5000余位客户解决了论文写作的难题。 秉承以用户为中心,为用户创造价值的理念,我站拥有无缝对接的售后服务体系,代做毕业设计完成后有专业的老师进行一对一修改与完善,对有答辩需求的同学进行一对一的辅导,为你顺利毕业保驾护航
代做毕业设计
常见问题

基于SRAM型FPGA的配置芯片开发

添加时间:2018/07/16 来源:电子与封装 作者:庄雪亚 李蕾蕾
掉电后SRAM中的配置数据丢失, FPGA内部逻辑关系随之消失。正常使用SRAM型FPGA时必须配一个配置芯片用来存储配置数据, 上电后FPGA能快速从配置芯片内加载到配置数据, 使FPGA正常工作。
  以下为本篇论文正文:

  摘要:随着设计工艺的飞速发展, SRAM型FPGA的规模也越做越大, 对配置芯片的存储容量、配置速度提出了更高的要求。基于SRAM型FPGA, 采用BPI接口和大容量FLASH, 并通过JTAG接口转BPI接口的软核, 代替传统配置芯片内部的JTAG模块, 完成了基于SRAM型FPGA的配置芯片设计, 其结构简单、芯片面积小、存储容量大、速度快, 兼容性好。通过数字仿真波形分析和FPGA原型验证, 验证了设计方法的可行性和正确性。

  关键词:配置芯片; JTAG; FLASH; FPGA; BPI; 软核;

  Abstract:With the rapid development of the design process, the size of the SRAM-type FPGA is getting bigger and bigger, putting higher requirements on the storage capacity and the configuration speed of the configuration chip. In this paper, based on the SRAM-type FPGA, using high-capacity FLASH and BPI interface, and the soft core of JTAG interface to BPI interface through FPGA instantiation instead of the JTAG module of traditional configuration chip, the design of configure chip based on SRAM-type FPGA have been completed. This design has realized the simple design structure, small chip area, storage capacity, speed, compatibility. The feasibility and correctness of the design method is proved through the analysis of corresponding digital simulation waveform and FPGA prototype verification.

  Keyword:configuration; JTAG; FLASH; FPGA; BPI; soft core;

  1、引言

  基于SRAM结构的FPGA, 上电时要将配置数据读入到片内SRAM中, 配置完成就可以进入工作状态。掉电后SRAM中的配置数据丢失, FPGA内部逻辑关系随之消失。正常使用SRAM型FPGA时必须配一个配置芯片用来存储配置数据, 上电后FPGA能快速从配置芯片内加载到配置数据, 使FPGA正常工作。随着设计工艺的飞速发展, FPGA规模也越做越大, 配置容量也呈几何倍数增长, 因而对配置芯片的配置便捷性、加载速度、存储容量提出了更高的要求[1]。本文基于SRAM型FPGA, 设计一款改进型配置芯片, 该芯片兼容传统的配置芯片。

  2、配置芯片下载方式

  配置芯片都是与SRAM型FPGA搭载使用, 一般一片SRAM型FPGA会搭载一片配置芯片或多片配置芯片级联使用。因此我们在对配置芯片加载数据时可以借助FPGA来完成。普通配置芯片下载方式[2]如图1所示, 通过上位机软件建立FPGA工程、编译、布局布线后生成配置数据, 连接JTAG下载至配置芯片, FPGA再通过BPI接口从配置芯片中加载配置数据。改进型配置芯片下载方式如图2所示, 配置芯片去除了JTAG模块, 通过例化一个JTAG转BPI的软核在FPGA内部实现。上位机可以通过连接FPGA的JTAG再通过软核转换为BPI格式的数据下载配置芯片, 这样可以在不提供额外硬件资源的前提下, 实现用JTAG接口对配置芯片的读写。上位机也可以通过BPI接口直接对配置芯片读写数据, BPI的数据总线为16位宽, 数据传输量大, 最高配置速度为800 Mb/s。配置芯片的下载方式决定了配置芯片的架构设计。

  本设计的优点如下:

  (1) 不需要JTAG模块, 省去配置芯片的大部分控制逻辑, 减少流片风险;

  (2) 在不增加硬件资源的前提下, 直接通过设计一个JTAG接口转BPI接口的软核, 通过FPGA生成对应的电路, 仍能保留JTAG下载及调试配置芯片的功能;

  (3) 兼容以往配置芯片的功能。

图1 普通配置芯片下载框图
图1 普通配置芯片下载框图

图2 改进型配置芯片下载框图
图2 改进型配置芯片下载框图

  3、设计与实现

  3.1、配置芯片架构设计

  如图3所示, 配置芯片由初始化模块、JTAG接口模块、BPI命令解析模块、Flash读写模块、接口数据处理模块及Flash组成。上电后由内部时钟供给初始化模块, 读取Flash的一些配置信息, 保证每个Flash地址都可以正确读写。当初始化结束后, 就可以根据JTAG接口或者BPI接口接收数据。JTAG接口模块是一种符合JTAG接口协议、能解析数据命令、下载、调试配置芯片的一个接口模块[3]。BPI接口数据处理模块通过BPI控制信号获得数据总线及地址总线上的数据。通过两个接口接收到的数据和地址由BPI命令解析模块解析具体对Flash的操作并传给Flash读写模块[4], 能产生有效的读写时序对Flash进行读写。本文把图3中用虚线画的JTAG接口模块省去, 把这部分逻辑改为用FPGA的软核实现。

图3 配置芯片架构
图3 配置芯片架构

  3.2、软核设计

  如图4所示, 软核设计思路是:开始TMS信号经过状态机解析当前TDI是数据还是命令, 根据数据或者命令分别把TDI的数据存储到数据寄存器和指令寄存器;再进一步根据指令和数据解析成BPI对应的地址或者数据, 还有BPI的控制信号线。当解析到是读数据命令或者读状态命令, 可以根据BPI接口的DATA总线读到数据缓存器通过TDO输出。

图4 软核框图
图4 软核框图

  3.3、配置命令定义

  如表1所示, BA是指块地址, 一个块地址包括1 Mbits;BLA是指一个单位的地址, 一个地址存储16 bits;CRD是指配置数据;SDR是指返回的状态数据;PD是指写命令时每个地址对应写入的数据;RD是指读命令时读出的数据。每个命令都需两个有效周期完成, 读命令不需要具体的命令值, 只要BPI接口的FOE信号直接拉低就可以, 这样做是为了方便FPGA上电完自动去加载配置芯片内的配置数据, 省去发读命令的操作。

表1 配置芯片命令
表1 配置芯片命令

  3.4 、擦除时序设计

  如图5所示, 第一个写周期数据总线发送20h命令, 地址总线发送对应要擦除的区域地址, 第二个写周期数据总线发送D0h命令, 地址总线不变, 当擦除完成后数据总线会返回一个80h的状态, 如未擦除完成会返回00h的状态。

图5 擦除时序
图5 擦除时序

  3.5、写时序设计

  如图6所示, 第一个写周期数据总线发送40h命令, 地址总线发送对应要写数据的地址, 第二个写周期数据总线发送要写入的数据, 地址总线不变, 当写入完成后数据总线会返回一个80h的状态, 如未写完成会返回00h的状态。

图6 写时序
图6 写时序

  3.6、读时序设计

  如图7所示, 第一个写周期FOE_B拉低, FEW_B为高, 就说明是读命令, 每一个地址都需立即返回一个该地址的数据。

图7 读时序
图7 读时序

  4、仿真验证

  采用基于verilog行为级描述的RTL代码, 建立整个仿真验证环境, 利用Cadence公司仿真工具NC进行设计仿真验证[5], 对配置芯片进行BPI接口数据仿真, 对配置芯片接软核进行FPGA原型验证。

  4.1、配置芯片加载FPGA EDA

  如图8所示, 通过配置芯片与FPGA对接, 通过仿真波形看到done信号已经由低变高, 说明配置芯片内的数据已经正确无误地加载到FPGA内。

图8 配置芯片加载FPGA时序
图8 配置芯片加载FPGA时序

  4.2、配置芯片原型验证

  如图9所示, 通过用两片xilinx virtex5 95T芯片来完成整个配置芯片的FPGA验证。先通过ISE-1软件把设计好的配置芯片工程load到Virtex5-1中, 此时virtex-1就实现了配置芯片的功能, 再通过ISE-2软件下载一个JTAG转BPI接口的软核给virtex5-2, 再通过ISE-2建立一个工程, 通过JTAG接口下载给virtex5-2, 下载的数据通过转换后对virtex5-1进行写入配置数据, 当把全部数据写完后, ISE-2对virtex5-2进行复位, 放开对virtex5-2的控制权限, 再重新上完电后, virtex5-2会自动从virtex5-1内加载配置数据, 直到加载结束Done接的灯亮。Done信号变高代表配置数据已正确无误地下载到FPGA内, FPGA对应的工程可以正常启动。

图9 配置芯片FPGA验证框图
图9 配置芯片FPGA验证框图

  5、结论

  本文基于SRAM型FPGA设计的配置芯片, 设计结构简单, Flash容量大, 通过BPI接口访问速度快, 在不需要更多硬件资源的情况下能兼容以前版本的配置芯片。通过EDA验证和FPGA原型验证, 结果符合预期。

  参考文献
  [1]石雪梅, 计贤春.FPGA配置芯片测试方法的研究与实现[J].计算机与数字工程, 2010, 38 (09) :77-79, 87.
  [2]刘笑嫘, 何广平.FPGA芯片的配置与下载[J].科技信息, 2011, (15) :109-110.
  [3]吕彩霞.JTAG的设计与研究[D].北京:北京交通大学, 2006.
  [4]潘立阳, 朱钧.Flash存储器技术与发展[J].微电子学, 2002 (01) .
  [5] (美) Rabaey, J M.数字集成电路-电路、系统与设计 (第二版) [M].周润德, 等译.北京:电子工业出版社, 2004:319-357.

    相关内容
    好优论文定制中心主要为您提供代做毕业设计及各专业毕业论文写作辅导服务。 网站地图
    所有论文、资料均源于网上的共享资源以及一些期刊杂志,所有论文仅免费供网友间相互学习交流之用,请特别注意勿做其他非法用途。
    如有侵犯您的版权或其他有损您利益的行为,请联系指出,论文定制中心会立即进行改正或删除有关内容!