采用单片机实现对FPGA的配置

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Science &Technology Vision
科技视界0引言
可编程逻辑器件(PLD)的应用越来越广泛。

基于查找表技术、SRAM 工艺的FPGA 具有密度高且触发器多等特点,多用于复杂的时序逻辑和高速数据处理中。

FPGA 器件由于工艺原因在应用时需要进行数据配置。

配置数据决定了FPGA 内部互连和功能,改变配置数据,也就改变了器件的逻辑功能。

配置数据必须保存在FPGA 器件以外的非易失存储器内,这给实际应用带来了不便[1]。

为了实现在线可重配置(ICR),通常的方法有两种。

一是采用专用的配置芯片(如ALTERA 的EPC1、EPC2等)来存储配置数据。

专用的配置芯片比较昂贵,显著增加了系统成本。

而由于FPGA 器件在数值计算方面明显地劣于微处理器,所以,经常是单片机和FPGA 并行出现在系统中。

应用单片机的剩余程序存储区来存放配置数据,上电后由单片机控制实现对FPGA 器件的数据配置[2]。

本文通过从被动串行(PS)配置时序出发,介绍应用单片机来实现对FPGA 的数据配置方法。

1被动串行配置(PS)及硬件连接
FPGA 配置方式主要分为两大类:主动配置和被动配置。

主动配置方式由FPGA 器件引导配置操作过程,它控制着外部存储器和初始化过程;而被动配置方式则由外部计算机或微处理器控制配置过程。

根据数据线的多少又可以将FPGA 器件配置方式分为并行配置和串行配置两大类。

下面介绍用单片机实现的被动串行配置。

几乎所有FPGA 器件都支持被动串行配置。

被动串行配置的时序图如图1所示,在这种配置方式中没有握手信号,配置时钟的工作频率必须在器件允许的范围,最低频率没有限制。

为了开始配置,配置管脚和JTAG 管脚所在的bank 的VCCINT、VCCIO 必需供电。

FPGA 上电后进入复位状态。

nCONFIG 被置为低电平,使FPGA 进入复位状态;nCONFIG 由低到高的电位跳变启动配置过程。

图1FPGA 的被动串行(PS)配置时序图
整个配置包括三个阶段:复位、配置和初始化。

当nSTATUS 或者
nCONFIG 为低电平时,器件脱离复位状态,并且释放漏极开路的nSTATUS 管脚。

在nSTATUS 释放后,被外部电阻拉高,这时nSTATUS 和nCONFIG 同时为高电平,FPGA 准备接收配置数据,配置阶段开始。

在串行配置过程中,FPGA 在DCLK 上升沿锁存DATA0引脚上的数据。

成功接收到所有数据后,释放CONF_DONE 引脚,并被外部电阻拉高。

CONF_DONE 由低到高的转变标志配置结束,初始化开始。

此后,DCLK 必须提供几个周期的时钟(具体周期个数与DCLK 的频率有关,一般可在20到40之间选择),确保目标芯片被正确初始化。

初始化完成后,FPGA 进入用户工作模式。

如果使用了可选的INIT_DONE 信号,在初始化结束后,INIT_DONE 被释放,且被外部电
阻拉高,这时进入用户模式。

DCLK、DATA、DATA0配置后不能三态,可置高或者置低。

在配置过程中,一旦出现错误,FPGA 将nSTATUS 拉低。

系统可以实时监测,当识别到这个信号后,重新启动配置过程。

NCONFIG 由高变低,再变高可以重新进行配置。

一旦nCONFIG 被置低,nSTATUS 和CONF_DONE 也将被FPGA 置低。

当nSTATUS 和nCONFIG 同时为高电平时,配置开始。

采用单片机实现对FPGA 的被动串行配置方案的硬件连接图如图2所示。

图2用单片机实现对FPGA 的被动串行配置的硬件连接图
2单片机的软件编程
配置过程为:由微处理器将nCONFIG 置低再置高来初始化配置;检测到nSTATUS 变高后,就将配置数据和移位时钟分别送到DATA0和DCLK 管脚,送完配置数据后,检测CONF_DONE 是否变高,若未变高,说明配置失败,应该重新启动配置过程。

在检测CONF_DONE 变高后,根据器件的定时参数再送一定数量的时钟到DCLK 管脚;待FPGA 初始化完毕后进入用户模式。

如果单片机具有同步串口,DATA0、DCLK 使用同步串口的串行数据输出和时钟输出,这时只需要简单把数据字节或字锁存到发送缓冲器就可以了。

在使用普通I/O 线输出数据时,每输出1位数据,就要将DCLK 置低再置高产生一个上升沿[3]。

配置数据的C51程序:#include <REG52.H>sbit NCONFIG=P1^2;sbit CONFDONE=P1^0;sbit NDTATUS=P1^1;
code unsigned char TABLE[]={255,255,98,255,37,0,255……};MAIN()
{unsigned int I=0;SCON=0;EA=0;
start:CONFDONE=1;NDTATUS=1;NCONFIG=0;NCONFIG=1;
while(!NDTATUS);for(I=0;I<(14751+3);I++){SBUF=TABLE[I];while(!TI);TI=0;(下转第197页)
采用单片机实现对FPGA 的配置
郑宝华1韩桂杰2孙万懿2
(1.吉林化工学院,吉林吉林132022;2.吉林信息工程学校,吉林吉林132022)
【摘要】FPGA 应用越来越广泛,但专用配置器件比较昂贵。

在具有微处理器和FPGA 的综合应用系统中,使用微处理器来实现对FPGA 的数据配置,是一种经济实用的方法。

本文介绍了应用单片机来实现对FPGA 的数据配置方法。

同时,给出了对FPGA 的被动串行配置的时序和具体硬件、软件的实现方法。

【关键词】单片机;FPGA ;被动串行;配置数据
作者简介:郑宝华(1963—),男,吉林人,博士,教授,主要从事领域测控技术及仪器。

. All Rights Reserved.
Science &Technology Vision 科技视
界(上接第120页)if(!NDTATUS)goto start;}while(1);}
3配置数据文件的生成
Altera 的MAX+PLUS II 或Quartus II 开发工具可以生成多种格式的配置文件,用于不同的配置方法。

不同目标器件,配置数据的大小不同。

配置文件的大小一般由二进制文件(扩展名为.rbf)决定。

Altera 提供的软件工具不自动生成*.rbf 文件,需要按照下面的步骤生成:①在MAX+PLUS II 编译状态下,选择文件菜单中的变换SRAM 目标文件命令。

②在变换SRAM 目标文件对话框,指定要转换的文件并且选择输出文件格式为*.rbf(Sequential),然后予以确定[4]。

③进行编译后便可以在对应的文件夹中查找到.rbf 文件。

④将*.rbf 文件更名为对应的*.bin 文件,可以通过编程器将数据写入到存储器的对应地址区域,供配置程序调用进行数据配置。

另外,MAX+PLUS II 或Quartus II 开发工具可以直接编译生成文件类型为TrueType 字体文件,这个文件没有扩展名,它包含了配置数据的全部信息。

可以将这个文件更名为*.txt 后由“记事本”打开,将其内容全部复制到C51的unsigned char TABLE[]类型的数组当中(本文
的例程便采用这种方法),由C51编译器完成配置数据的提取,配置程序通过调用TABLE[]内容完成数据配置。

4结论
单片机可以采用C 语音编程应用灵活,FPGA 速度快适合高速信号处理,两者结合的应用系统越来越多。

采用单片机剩余的程序存储空间来存储PPGA 的配置数据,实现用单片机对FPGA 的配置,可以省去FPGA 的配置存储器电路。

即简化了电路也节省了硬件成本,是一种即经济又实用的方法。

[1]陈赜,朱如琪.在系统可编程技术[M].北京:科学出版社,2001.
[2]宋万杰,罗丰,吴顺君.CPLD 技术及其应用[M].西安:西安电子科技大学出版社,2000.
[3]侯伯亨,股新.VHDL 硬件描述语言与数字逻辑电路设计[M].西安:西安电子科技大学出版社,2000.
[4]刘骛仁,杨万海.在系统可编程技术及其器件原理与应用[M].西安:西安电子科技大学出版社,2000.
[责任编辑:杨玉洁]
(上接第177页)形体的健美,避免肌肉粗壮、僵硬,往往是健美操训练中需特殊注意的问题。

普拉提训练能够使运动员的力量和柔韧性都得到增强。

普拉提训练法遵循小负荷多次数、身体不负重的训练原则,令肌肉丰盈充满弹性的同时不会使肌肉变粗;另外,在普拉提的训练中多纵向抻拉肌肉的练习,这会使膨胀的肌肉细胞纵向伸展,塑造健美修长的肌肉线条并提高肌肉的柔韧性。

普拉提训练有助于运动员肢体符合健美操运动员身体形态的审美原则。

而普拉提运动多采用肌肉伸拉方式,可以使人的肌肉力量和肌肉长度同时获得增加,肌肉力量与柔韧性协调发展,避免了一般力量训练所导致的力量增加同时柔韧性下降,容易出现肌肉形态变化的问题。

3.4普拉提训练能使健美操运动员的心肺功能得到较明显的改善,表现于心肺功能指标中肺活量、最大吸氧量的测试数据在训练前后明显提高,且差异非常显著。

呼吸与运动相结合是普拉提运动的核心之一。

普拉提的呼吸方式是横向呼吸法,每次呼吸向两侧扩展肋部,腹部向内收拢,肺部吸纳最大量氧气的吸气和完全呼出肺内气体的呼气。

这种肺的呼吸运动,有效地促进了肺与外界环境的气体交换及肺泡与肺毛细血管血液间的气体交换,加大肺通气量,提高肺通气功能,使肺活量的数值明显增大。

普拉提训练可以调节相应脏腑器官及系统的功能,增强呼吸肌的功能,从而提高肺的通气量;提高心肌收缩力,增强心肌力量,改善血
管的张力,增强血液循环总量。

普拉提训练是以有氧代谢为主的耐力运动,持久的耐力运动改善了心肌的血液循环,增强心肌的收缩力,改进心血管系统的调节功能。

[1]全国体育院校教材委员会.运动生理学[M].北京:人民体育出版社.[2]杨文萍.普拉提健身宝典[M].北京:人民体育出版社,2005.
[3]村上贵弘.核心肌肉训练[M].台北:瑞升文化事业股份有限公司,2010:10.
[4]阿丽西亚·
安格罗.普拉提美体运动[M].汕头:汕头大学出版社,2006:6.[5]张晓莹,张泽新,孙琴.中学生健身普拉提[J].中国学校体育,2006.
[6]汪敏,钱强,等.瑜伽形体训练对女大学生身心健康影响的研究[J].广州体育学院学报,2005,25(3):84-87.
[7]黎涌明,于洪军,程小平,等.论核心力量及其在竞技体育中的训练一起源问题发展[J].体育科学,2008,28(4):1.
[8]卢燕,张善斌.普拉提形体练习对女大学生生理指标影响的实验研究[J].吉林体育学院学报,2009,25(6).
[9]卢村.普拉提与核心力量的训练[J].理论创新,2009(3):28.
[10]李迪.对高校体育开设普拉提的可行性研究[J].辽宁体育科技,2011(5):111-113.
[责任编辑:汤静]
1)个体发展的需要。

研究生期间是提高自我的良机,不仅是知识的学习,更要学会如何有效管理时间、合理安排学习生活,有目的、有计划地完成目标,是将理论知识与实践相结合的重要阶段。

而低自制力和拖拉的坏习惯常使这些要求难以实现,从而产生负罪感,形成焦虑。

2)科研能力的需要。

由于长期接受的都是以教师为主的填鸭式教育,学生到了研究生阶段还不适应这种自主的学习方式。

学习和研究过程中需要学生具备一定的搜集资料的能力,而这正是很多学生所欠缺的。

面对搜到的资料又不知道如何甄别有用的信息,导致迷茫甚至是焦躁。

同时,研究生阶段还要求科研成果,而他们在知识的输入部分尚存在问题,对于产出则更是无从下手。

3)社会生存的压力。

在访谈中研究者了解到,大多数受访者并不看好自己的就业前景;有的认为自己相对于非英语专业的学生来说并没有什么优势甚至处于劣势。

4结语
英语学习焦虑普遍存在于英语专业研究生中。

研究生自身应正视
焦虑现象,合理使用学习策略来减轻学习焦虑,脚踏实地,减少不必要的焦虑来源;同时,外语学习焦虑的原因和程度因人而异,学校和老师应多与学生交流,了解他们的真实需求,帮助他们减轻焦虑感。

[1]Elis R.1994.The Study of Second Language Acquisition [M].Oxford:
Oxford University Press.
[2]Eysenck,H.J.The structure and measurement of intelligence [M].New York:Springer-Verlag.1979.
[3]Gregerson,Horwitz nguage Learning and Perfectionism:Anxious and Non-anxious Language Learner’s Reaction to Their own Oral Performance [J].The Modern Language Journal,2002,86(4):562-570.
[4]Horwitz,Elaine K.,Michael B.Horwitz &Joann Cope.Foreign Language Classroom Anxiety [J].The Modern Language Journal,1986(70,ii):125-132.
[5]MacIntyre,PD.,and Gardner,R.C.,Investigating language classroom anxiety using the focused essay technique [J].The Modern Language Journal,1991,75(3):296-304.
[责任编辑:王静]
197
. All Rights Reserved.。

相关文档
最新文档