电子工程师的网站
首 页 |  新闻资讯 | 最新产品 | 解决方案 | 技术参数
设计应用
电路图 | 技术资料 | 芯片资料 | 技术论坛
  现在位置: 首页 > 设计应用 > 单片机 > 详细信息
单片机:采用AVR单片机对FPGA进行配置(图)
来源:   时间: 2007-4-16 22:11:13    

Altera公司的ACEX、FLEX等系列的FPGA芯片应用广泛,但其FPGA基于SRAM结构,决定电路逻辑功能的编程数据存储于SRAM中。由于SRAM的易失性,每次上电时必须重新把编程数据装载到SRAM中,这一过程就是FPGA的配置过程。FPGA的配置分为主动式和被动式。在主动模式下,FPGA上电后主动将配置数据从专用的EPROM(如EPC1,EPC2等)加载到SRAM中。被动模式下,FPGA为从属器件,由相应的控制电路或微处理器控制配置过程,包括通过下载电缆由计算机控制配置和单片机模拟配置时序配置。其中,专用的EPROM价格高,可编程次数少,而计算机配置在现场应用中又很不现实,因此本文提出一种基于AVR单片机的被动配置方式。由于AVR系列单片机的内嵌闪存的容量为8~128kB,可容纳中小规模(10万门以下)FPGA的配置文件并进行配置,另外还可实现多任务配置。以下将以FLEX10K10为例,介绍单片机对FPGA的双任务配置。


ATmega系列单片机


ATMEL公司的ATmega系列单片机根据片内闪存的大小分为ATmega8、ATmega32、ATmega128等。本设计采用的是ATmega32,该单片机片内含16K×16共32KB的片内可编程ROM,可擦写10 000次,能装载2万门以内FPGA的配置数据,最高性能可达16MIPS,可在最短的时间内完成FPGA的配置。如需要配置门数更高的FPGA,可采用MEGA128。

硬件电路设计


ATmega32内含32KB的闪存,FPGA为FLEX10K10,其配置文件的大小为15KB,因此该方案可实现双任务配置。硬件连接上,采用单片机配置模式时,须将FLEX10K10的MESL0、MESL1、nCE接地,同时将nCONFIG、DCLK、DATA0、nSTATUS、CONF_DONE分别与MEGA32的PA0~PA4相连。MEGA32的I/O口均是可编程的,根据需要将PA0、PA1、PA2设置为输出口,PA3、PA4设置为输入口。另外,需在单片机的PB0、PB1上连接两个按键以选择配置任务。具体电路如图1所示。

图1  硬件原理框图

配置方式


Altera公司FPGA器件的配置方式主要有AS(主动串行方式)、PS(被动串行方式)、PPS(被动并行同步方式)、PPA(被动并行方式)和JTAG(边界扫描方式),使用单片机对FPGA进行配置主要是采用单片机来模拟PS方式的时序,以实现FPGA器件的配置。


被动串行方式的工作过程如下:配置时需要五个引脚,其中nCONFIG、DCLK、DATA0为单片机的输出引脚,nSTATUS、CONF_DONE为单片机的输入引脚。系统上电后,由单片机使nCONFIG上产生一个大于8μs的负脉冲,FPGA检测到nCONFIG的下降沿后将启动配置过程,nSTATUS和CONF_DONE随之拉低。nCONFIG抬高1μs内,nSTATUS抬高,配置数据从DATA0上由低位到高位依次送出,当所有配置数据全部送出后,CONF_DONE被抬高,当MCU检测到这一变化后即结束配置过程。随后,DCLK必须再提供几个周期的时钟(对于FLEX10K需要10个周期)以供FPGA正确完成初始化,进入用户模式。若配置过程出错,nSTATUS将被拉低,MCU重新启动配置过程。其配置时序如图2所示。

图2  被动串行配置时序图

配置文件


Altera公司的开发工具Quartus II和MAXPlus II可生成多种配置文件,包括sof、pof、hex、rbf、ttf等。该配置方案中采用的是rbf文件,rbf文件为二进制文件,包含了全部配置数据,1字节的rbf数据包含8bit的配置数据,配置时最低位先由低位到高位依次装入。

软件设计


使用单片机对FPGA的设计关键是软件设计。在双任务配置中,两个任务的配置数据分别存放于不同起始地址的连续存储器区域中。单片机上电复位后,进入按键查询状态,检测到按键按下后,单片机从相应起始地址中读出数据并对FPGA进行配置。配置过程按照PS方式的时序要求进行,配置完成后重新进入按键查询状态。控制程序流程图如图3所示。

图3  控制程序流程图


在双任务配置中,两个任务的配置数据分别存放于指定的地址中,由引导程序从指定地址中读出数据并对FPGA进行配置。引导程序和rbf文件(配置数据)的合并是软件设计的关键,以下详述其处理过程。


(1) 将引导程序在ICCAVR下编译并生成mcu.hex,hex文件格式是由Intel公司定义的,是按地址排列的数据信息,数据宽度为字节,所有数据使用16进制数字表示. 以下是一个例子。


:10008000AF5 F67F0602703E0322CFA92007780C361
:1000900089001C6B7EA7CA9200 FE10D2AA00477D81
:0B00A00080FA92006F3600 C3A00076CB
:00000001FF


第一行,“:”符号表明记录的开始。后面的两个字符表明记录的长度,这里是10h。后面的四个字符给出调入的地址,这里是0080h。后面的两个字符表明记录的类型后面则是真正的数据记录, 最后两位是校验和检查,最后一行是结束串,总写成这样;


(2)将fpga1.rbf改为fpga1.bin,使用“超级单片机工具”将fpga1.bin转换成起始地址为0x0273(mcu.hex的数据长度)的fpga1.hex;
(3)将fpga2.rbf改为fpga1.bin,使用“超级单片机工具”将fpga2.bin转换成起始地址为0x3bd7(mcu.hex和fpga1.hex的数据长度和)的fpga2.hex;
(4)将删除结束串后的mcu.hex和fpga1.hex与fpga2.hex依次合并成config.hex;
(5)将config.hex用下载线下载到ATmega32单片机中。

结论


以上方案可适用于3.3V和5V系统的FPGA配置,无须扩展EEPROM,还能实现多任务配置。


相关信息
发表评论
打印本页 关闭本页
基于ATmega128L与CC2420的无线传感器网络节点的研究与实现
    摘要:介绍了一种基于ATmega128L和CC2420在2.4GHz频带下工作的无线传感器网络节点的设计和实现,详细讨论了各部分的硬件组成。实验表明,节点可以灵活构成无线传感器网络,节点组成的网络系统性能稳定、通信效率高、功耗低,可广泛应用于控制、信号采集与传输等领域。  关键词:ATmega128L单片机;CC2420芯片;无线传感器网络节点  无线传感器网络是新兴的研究领域,在军事、...
>>详细内容
用ATmega8单片机设计串行编程器
  通常进行单片机实验和开发,编程器是必不可少的。仿真、调试完的程序要借助编程器写入单片机的存储器中,随着单片机技术的发展出现了MTP(可多次编程)存储器技术和ISP(在系统可编程)技术,这样就可以省去昂贵的仿真器,只要通过计算机接口和一条串行下载线就可直接在目标芯片上编程。ATmega8就是一种具有MTP与ISP功能的单片机,他也是AVR单片机中价格性能比最高的单片机,因此研究他的串行...
>>详细内容
ATmega8内部RC振荡器漂移测试
  选择ATmega8-16PI,内部1M RC,程序为I/O取反操作,Agilent infiniium 54833A DSO 1GHz 4GSa/S数字示波器测量,LM2825-5供电。 27℃ Mean:141.313 Min:141.2439 Max:141.4173 Current:141.0/141.2 35℃ Mean:141.245 Min:141.0358 Max:141.4173 Current:140.9/141.0 40℃ Mean:141.18 ...
>>详细内容
ATmega8内部2.56V ADC基准温飘测试报告
  选用ATmega8-16PI,工业级(-40℃-85℃),5V供电,FLUKE 189表测量。 27℃ 2.7158/2.7159 35℃ 2.7159/2.7160 40℃ 2.7161/2.7162 45℃ 2.7160/2.7161 50℃ 2.7161/2.7162 55℃ 2.7162/2.7163 60℃ 2.7163/2.7164 ...
>>详细内容
用FLEX10K器件设计的恒虚警电路
  用FLEX10K器件设计的恒虚警电路 青岛92323部队102分队 章红明 徐国平 1引言 恒虚警率(CFAR)处理是雷达信号处理的重要组成部分。当雷达机内噪声或外界干扰(如地物、雨雪、海浪等杂波干扰)强度变化时,恒虚警率处理能保持信号检测时的虚警概率恒定不变,保证数据处理机...
>>详细内容
基于Atmega8的数字功放设计
  摘要:Mega8是一款高性能、低功耗,采用先进RISC精简指令,内置PWM和A/D的8位单片机,用它设计数字功放不仅成本低、硬件简单,而且易实现各种扩展功能。文中介绍了如何利用AVR系列单片机mega8及新型VMOS管IRF7389来设计高效数字功放的方法,同时给出了相应的电路原理图、程序流程和测试结果。 关键词:mega8;数字功放;PWM;AD8605;IRF73891 引言数字功放由于其...
>>详细内容
已有(
)位对此新闻感兴趣的网发发表了看法 >>更多评论
内 容:
     
 
热点新闻
一周排行
关于我们 | 服务项目 | 付款方式 | 广告服务 | 联系我们 | 友情链接 | 投诉 建议 合作 | 网站地图 | 加入收藏
Copyright © 2007-2008 WEEQOO.COM Corp.All Rights Reserved. 版权所有 经营许可证编号:浙B2-20050339 法律声明
维库电子旗下网站:维库电子市场网 | ChinaICMart | 维库电子开发网 | 维库电子人才网
总部:杭州市下城区朝晖路182号国都发展大厦1号楼80A
电话:0571-85889139-8007 QQ:303939539 | MSN:zh1226@hotmail.com |  邮箱:laz8258@163.com dzsc51@163.com