下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 基于FIash和JTAG接口的FPGA多配置系统摘要:针对需要切换FPGA器件的配置以实现不同功能的特殊应用场合,提出了一种使用大容量的Flash存储器作配置码流载体的FPGA多配置系统。该系统采用传输速度快的JTAG接口提高了配置码流的烧写速度,采用并行从模式减少了FPGA器件配置时间,并利用串口通信实现了配置码流的在线切换。应用结果表明,该系统操作方便,可靠性高,实现成本低,通用性好。关键词:FPGA;Flash存储器;JTAG引言 针对需要切换多个FPGA配置码流的场合,Xili 摘要:针对需要切换FPGA
2、器件的配置以实现不同功能的特殊应用场合,提出了一种使用大容量的Flash存储器作配置码流载体的FPGA多配置系统。该系统采用传输速度快的JTAG接口提高了配置码流的烧写速度,采用并行从模式减少了FPGA器件配置时间,并利用串口通信实现了配置码流的在线切换。应用结果表明,该系统操作方便,可靠性高,实现成本低,通用性好。关键词:FPGA;Flash存储器;JTAG引言 针对需要切换多个FPGA配置码流的场合,Xilinx公司提出了一种名为System ACE的解决方案,它利用CF(Compact Flash)存储卡来替代配置用PROM,用专门的ACE控制芯片完成
3、CF卡的读写,上位机软件生成专用的ACE文件并下载到CF存储卡中,上电后通过ACE控制芯片实现不同配置码流间的切换。 System ACE的解决方案需要购买CF存储卡和专用的ACE控制芯片,增加了系统搭建成本和耗费了更多空间,而且该方案只能实现最多8个配置文件的切换,在面对更多个配置文件时,这种方案也无能为力。但若要开发System ACE的替代方案,则需要选择更合适的可反复编程存储器,并且需要选用合适的传输协议接口来下载配置码流。通过串口或并口来下载配置码流速度太慢,不能满足应用中快速下载的需要;通过USB接口来下载配置码流则需要专门的控制芯片,增加了系统
4、设计的成本。 本文选用大容量NOR Flash存储器来存储配置码流,并利用JTAG接口完成配置码流下载的FPGA多配置解决方案。与System ACE方案相比,该方案不仅能快速完成多个配置码流的下载,还具有更高的配置速度和更低的实现成本。1 JTAG接口模块的设计 为了将配置码流写入Flash存储器,上位机软件通过JTAG下载线与JTAG接口模块连接。JTAG接口模块接收上位机软件发送的JTAG信号,从中提取出JTAG指令及对应的数据,并产生针对Flash存储器的擦除和烧写信号。由IEEE 114912001标准以及NOR
5、 Flash存储器先擦除后写入的特性,设计上位机软件的具体执行流程如图1所示。同时为了完成Flash存储器的擦除和烧写,本文在软件设计中规定了一系列的自定义JTAG指令,如图1中括号内所示。本文规定一帧数据大小为4 096比特。 JTAG接口模块通过外部引脚接收到JTAG信号后,为了完成JTAG指令及数据的提取,JTAG接口模块中必需包含一个TAP(Test Access Port)控制器,TAP控制器是一个16状态的状态机,在TCK的上升沿通过TMS的变化可以控制状态的转移。在特定的状态即可将JTAG指令及数据分别存入指令寄存器(IR-Instruetio
6、n Register)和数据寄存器(DR-Data Register)中。JTAG接口模块在接收到上位机软件发送的指令后,相应的解释如表1所列。2 FIash控制器和FPGA器件配置模块设计21 FIash控制器设计 烧写Flash存储器和利用Flash存储器配置FPGA器件时,都需要对Flash存储器进行操作,因此需要设计一个控制器模块来专门产生Flash存储器的控制指令。Flash控制器要实现的功能是:响应输入的擦除、写、读命令,并根据命令产生相应的时序来实现对Flash的操作。 为了在一片Flash存储器中存放多个配
7、置文件,可以将Flash按照配置文件的大小分为多个区间。这样,对于一个具体的配置文件,输入指令的作用范围应该在配置文件存放的区间内。因此,擦除某个配置文件时要选用块擦除方式,而不是整片擦除方式。 为了及时的将一帧配置码流写入Flash存储器中,要求Flash存储器的编程时间应该小于FPGM指令执行后的等待时间。根据Flash存储器数据手册上的参考数据计算后发现,使用普通的编程方式来烧写一帧配置码流时间大于等待时间,而使用写缓冲的编程方式来烧写一帧配置码流的时间要小于等待时间,因此必须选用写缓冲的编程方式来烧写Flash存储器。
8、0; JTAG接口与Flash控制器间的命令和数据翻译由反向兼容JTAG控制器中的烧写控制模块完成。它会接收JTAG接口发送的擦除或写命令,经过转化后产生相应的Flash控制器必需的命令、地址和数据。由于一次写缓冲编程写入Flash存储器的数据小于一帧配置码流的大小,因此接收到写命令后,烧写控制模块会配合写命令和对应的操作地址,将缓冲区中一帧配置码流分多次送往Flash控制器。22 FPGA器件配置模块设计 Virtex系列FPGA器件的配置模式共有4种:串行主模式、串行从模式、并行从模式和边界扫描模式,其中主模式使用内部振荡器提供时钟,从模式和边界扫描模式
9、使用器件外部提供的时钟。在FPGA器件上电初始化后,配置模块向FPGA发送配置码流和配置时钟来配置FPGA器件。因为配置速度越快FPGA器件工作前的等待时间就越短,所以本方案选择速度最快的并行从模式。图2是并行从模式的时序图,数据(DATA7:O)必须满足建立时间(Tsu)和保持时间(Th)的约束。FPGA器件配置模块配置FPGA器件的步骤如下: FPGA器件配置模块检测到INIT引脚信号变高,说明FPGA器件的上电后自动初始化已完成,配置模块向Flash控制器发送读命令; 配置模块收到Flash控制器返回的配置码流后,在
10、每个时钟上升沿向FPGA器件发送一个8位配置码流; 配置模块检测到DONE引脚信号变高,说明FPGA器件已配置完成,配置过程结束。 由于从向Flash控制器发送读命令到Flash控制器返回配置码流的时间大于一个周期,且返回数据的位宽大于并行从模式的数据位宽,因此必须先对配置码流进行位宽转换。同时,为了保证CCLK的每个始终上升沿都有一个8位配置码流发送出去,还必须对CCLK进行合适的分频。3 方案的设计实现 本方案的所有控制逻辑设计用一片Xilinx Spartan II系列XC2S20
11、0型FPGA器件实现。采用Spansion公司的NOR Flash存储器来存放配置文件,其型号为S29GL512N,容量为512 Mb。系统总体框图如图3所示。上位机软件包括Flash烧写工具和串口工具。烧写配置文件时,Flash烧写工具通过JTAG下载线向控制FPGA传输JTAG指令及配置码流,同时串口工具通过串口向控制FPGA发送配置文件地址,完成配置文件存放区间的切换;配置FPGA时,串口工具通过串口向控制FPGA发送配置文件地址及重配置信号,完成配置文件的切换。若实际应用中配置文件过多,还可组成Flash存储器阵列来增加存储深度。31 设计的FPGA实现
12、0; 控制FPGA实现的逻辑控制功能包括与上位机软件iMPACT和串口工具通信、烧写Flash以及配置FPGA器件。基于模块化的设计思想将具体功能分解成多个模块,如图3所示,数据与地址通道上的下标为其通道宽度。各模块作用如下: RS232接口模块接收来自串口工具的配置文件地址及重配置信号,配置文件地址译码后得到对Flash存储器进行各种操作时的起始地址,重配置信号则用来触发FPGA配置文件的切换。 JTAG模块包括JTAG接口模块、数据缓存模块及烧写控制模块。JTAG接口接收JTAG下载线上的JTAG指令和数据后,若为FE
13、RASE或FPGM指令则向烧写控制模块发送擦除或烧写信号,若为FDATA0指令则接收TDI上的串行数据并存入数据缓存模块中。数据缓存模块利用片内BRAM来实现,可存放一帧配置码流。烧写控制模块接收到擦除信号后,产生擦除命令和操作地址并发往状态选择模块;接收到烧写信号后,从数据缓存模块读取配置码流,产生的写命令、操作地址发往状态选择模块,操作数据则直接发往Flash控制器。 FPGA配置模块接收到来自RS232接口模块的起始地址和重配置信号后,先向待配FPGA器件发送初始化信号,等待初始化完成后向状态选择模块连续发送读命令和操作地址,并利用从Flash控制器返
14、回的配置码流来配置FPGA器件。 状态选择模块根据外部的烧写配置信号选择Flash控制器的输入,从而决定控制FPGA目前处于烧写Flash存储器状态还是配置FPGA器件状态。若为“0”,则输入烧写控制模块产生的命令和地址,控制FPGA处于烧写Flash存储器状态;若为“1”,则输入配置控制模块产生的命令和地址,控制FPGA处于配置FPGA器件状态。 Flash控制器响应这些输入的命令、操作地址和数据,产生与命令相对应的Flash存储器控制时序,并返回Flash存储器的数据输出。32 性能实际测试 本方案处于编程模式时,系统能够通过JTAG接口和串口与上位机软件进行正常的通信,在加载合适的配置文件后,可以完成Flash存储器的擦除和烧写操作,实测烧写速度为160 Kb。需要烧写多个配置文件时,通过串口工具发送配置文件地址,即可对不同的Flash空间进行操作。 处于配置模式时,以Virtex系列中XCV1000型FPGA为配置对象,其配置文件大小约为584 Mb,实测一次配置时间为60 ms,计算得知配置速度约为97 Mbs,远大于System ACE解决方案的30 Mbs。如需切换不同的配置文件,从串口工具发送配
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 某化工公司人力资源办法
- 2025-2026年护理伦理学知识点巩固习题
- 2025-2026年化工企业安全生产管理制度与操作规程测试卷
- 某纺织厂用工准则
- 医院重症医学科2026年工作总结及下一步计划
- 旅居胜地建设方案怎么写
- 锚杆支护施工资源调配方案
- DB3705-T 39-2024 保密资质管理工作规范
- T-SXCAS 023-2024 泡沫陶瓷钢骨架轻型预制板应用技术标准
- 2026秋三年级语文上册《海底世界》课件4沪教版
- 备考2025届中考数学中档及压轴题型模型方法技巧专题05:全等三角形模型综合(原卷版)
- GB/T 222-2025钢及合金成品化学成分允许偏差
- 人工智能伦理课件
- 2025年temu商家考试题库
- 压力管道拆除安装方案(3篇)
- 2025年大学统计学期末考试题库:SPSS统计软件应用试题试卷
- 土建类安全员(C2)试题库+答案
- T-SHWSHQ 01-2023《医疗卫生机构安全生产标准化管理规范》
- 体育产业体育场馆运营管理与赛事策划方案
- 小学语文整本书阅读《中国古代神话》 导读课件
- 2024版红枣园承包合同
评论
0/150
提交评论