您好,  [请登录] [QQ登录]  [支付宝登录[免费注册]

商品分类

分享到: 百度搜藏 搜狐微博 新浪微博 腾讯微博 QQ收藏 人人网 Facebook Twitter

SEP3203处理惩罚器的FPGA数据通讯接口计划

发布日期:2011-05-09

 SEP3203处理惩罚器是由东南大学国度专用集成电路体系工程技能研究中间计划的16/32位RISC微控制器,面向低本钱手持配置和其他通用嵌入式配置。该处理惩罚器内嵌ARM7TDMI处理惩罚器内核,为用户提供了面向移动终端应用的丰富外设、低功耗办理和低本钱的外存配置,整个芯片可以运行在75 MHz。数据通讯体系利用的重要成果模块如下:20 KB片上零等待静态存储器(eSRAM);外部存储器接口控制器(EMI);停止控制器(INTC);DMA控制器(DMAC)。

 体系中利用的FPGA为Altera公司的Cyclone系列中的EP1C6Q240C8,拥有丰富的I/O资源和逻辑资源,外部接口依照SRAM时序。它重要认真提供信号的A/D采样频率,并将A/D转换后的数据存储到一组FIFO中,待FIFO的FF(Full Flag)端口有效后,将FIFO中的数据读回,同时使能另一组FIFO的写时序,实现了信号不停止的采样和存储。

 FPGA将一组数据处理惩罚完毕后,以停止的方法关照SEP3203,处理惩罚器以DMA方法将运算后的结果存储到片外的SDRAM中。由于数据写满FIFO的时间大于FPGA处理惩罚数据的时间,以是整个体系实现了流水线操纵。

 1体系的总体计划[1-2]

 体系硬件重要由信号征求模块、FIFO、FPGA和SEP3203处理惩罚器构成。信号征求模块重要包括信号吸取器和A/D转换模块。吸取到的信号起重要通过NE5534举行放大,NE5534采取±5 V供电。图1为体系总体框图。


 

 体系中的A/D转换芯片利用了ADI公司的AD1672,它采取4级流水线布局,在3 Msps采样速率下精度为12位。FIFO选用了IDT公司的IDT7202。它具有输入和输出两套数据线,独立的读/写地点指针在读/写脉冲的控制下次序地从双口FIFO读/写数据,读/写地点指针均从第一个存储单位开始,直到末了一个存储单位,然后又回到第一个存储单位。为了支持9位数据宽度的存储,体系采取了2片IDT7202将数据宽度扩展为16位,共利用了4片IDT7202实现了FIFO的协同事变。在体系事变时,IDT7202内部的仲裁电路通过对读指针和写指针的比较,相应给出FIFO的空(EF)和满(FF)状态指示;FPGA可以根据所得到的FIFO状态标记控制FIFO的读/写时序,实现对FIFO的读/写操纵。

 Cyclone系列的FPGA支持多种I/O电平标准,包括3.3 V、2.5 V和1.8 V的LVTTL和LVCMOS电平。SEP3203处理惩罚器的I/O电平为3.3 V,与事变在3.3 V的FPGA电平兼容,可以直接相连。由于FIFO必须是5 V供电,以是FPGA将数据从FIFO读入内部存储器时,必要颠末一个电平转换芯片。体系选用了IDT公司的IDT74LVC16245,它支持8/16位数据的双向传输。

 2 SEP3203与FPGA的接口电路计划

 2.1 硬件计划[3]

 体系中的FPGA输入时钟由外部晶振提供,为20MHz。FPGA的复位信号通过SEP3203的I/O话柄现。本体系有2个触发信号:硬件触发信号和软件触发信号。硬件触发信号低电平有效,软件触发信号高电平有效。起首,SEP3203处理惩罚器孕育产生复位信号复位FPGA内部的逻辑电路;当FPGA检测到任意一个有效触发信号后,会根据SEP3203处理惩罚器配置的分频因子,将in_clk分频后输出div_clk给A/D采样电路。硬件实现框图如图2所示。

 A/D采样数据在采样时钟有效后短时间内大概会是无效的,以是SEP3203要配置肯定的延时价给FPGA。当延时餍足后,FPGA才将FIFO的写时序输出到IDT7202的写端口。确保征求到的数据为有效数据。

 图3是SEP3203处理惩罚器输入到FPGA内部的控制信号的仿真波形图。in_rst_n_a是复位信号,in_we_n和in_cs_n是SEP3203的写信号和片选信号。体系中FPGA接到了处理惩罚器的CSB片选上,该片选的地点映射默以为0x24000000~0x27FFFFFF,in_addr是地点线,in_data为输入数据。这里将延时设为2,分频因子设为10,之后通过往地点0x24000804写1,用软件使能体系。in_trig为硬件触发信号。

 2.2软件计划[4]

 

  一旦软件使能体系,FPGA就会输出div_clk给A/D采样电路。div_clk可以通过软件机动配置,这里Div_clk为1 MHz。

 3 FPGA与FIFO的数据通讯接口计划

 在FPGA与FIFO数据通讯接口计划中,FPGA重要输出控制时序到IDT7202的复位、写和读端口,实现A/D转换数据到FIFO的存储,并将数据从FIFO读入FPGA的内部存储器。一旦延时餍足,FPGA就输出写时序给FIFO的写端口(nW),同时检测FIFO的nFF(Full Flag)信号。若该信号为低,则阐明FIFO已经写满1 024个半字(16位)。此时,FPGA输出读时序给该组FIFO,同时输出写时序给另一组FIFO,以不停止地存储A/D采样数据。

 这部分电路在硬件实现上比较大略,IDT7202的输出数据通过电平转换芯片IDT74LVC16245输出给FPGAFPGA输出控制时序到FIFO。由于FPGA输出逻辑"1"时的最低电压Uoh为2.4 V,输出逻辑"0"时的最高电压Uol为0.4 V,而IDT7202输入逻辑"1"时的最低电压为2.2 V,输入逻辑"0"时的最高电压为0.8 V,以是FPGA到FIFO的控制时序无须举行电平转换,控制端口可以直接相连。

 体系中FPGA输出完全切合FIFO读写时序的脉冲,控制FIFO的读写操纵。图4是仿真波形图。

 IDT7202的异步读写操纵时序如图5所示。

 

 表1是IDT7202异步读写操纵时序的参数及阐明。

 

 当FPGA检测到in_ff_n_1为低时,fifo_ff_pulse就孕育产生一个50 ns的高脉冲;检测到该脉冲后,out_wr_n_1连续高电平,out_rd_n_1输出有效读时序;同时out_wr_n_1输出有效写时序。写时序以1 MHz的频率输出连续100ns低电平的脉冲;读时序低电平连续100 ns,高电平连续50 ns。FPGA根据out_FPGA_rd信号来征求FIFO输出的数据。

 4 SEP3203与FPGA的数据通讯接口计划

 数据经FPGA做算法处理惩罚后,由SEP3203处理惩罚器将结果存储到片外SDRAM中,SDRAM利用的是Winbond公司的W981216BH。硬件实现框图如图6所示。

 SEP3203对FPGA的访问依照SRAM时序,图7为SEP3203读数据时的信号仿真波形图。

 通过DMA方法传输数据时,in_cs_n和in_rd_n信号不停为低,以是只有通过in_addr信号来控制FPGA的内部存储器地点。处理惩罚后的A/D数据扩展为32位。

 SEP3203处理惩罚器默认的AHB总线宽度是32位。当利用DMA传输时,源和目标数据可以是差别的宽度,可以便是或小于总线的物理宽度,DMAC会对数据举行得当的打包和解包,以餍足AHB总线宽度。由于FPGA与SEP3202处理惩罚器之间只有16位数据总线,以是计划中源地点数据宽度设为16位,目标地点数据宽度设为32位。步伐如下:
 

  5性能阐发

 为了实现体系的流水线操纵,利用了EP1C6Q240C8中的PLL模块。FPGA的外部晶振频率为20 MHz,PLL提供70 MHz的时钟,重要用于A/D数据的处理惩罚和结果输出。征求1 024个16位数据的时间为(1/div_clk)×1024,数据从FIFO读入到结果输出的时间为580μs左右,以是当用1.7 MHz以下的频率采样A/D数据时,体系事变正常。若必要更高的A/D采样频率,则可通过优化数据处理惩罚进程来实现。


 

 别的,为了进步软件的实行速率,将代码放在SEP3203处理惩罚器的eSRAM中实行。它是片上SRAM,实现了单周期数据读/写,可以提供比外存高得多的性能(0.89 MIPS/MHz),极大地收缩了软件实行时间,进步了体系性能。

 6 总结

 本文给出了SEP3203处理惩罚器的FPGA数据通讯接口计划,限于篇幅,详细的硬件电路和软件源代码未能细致列出。如今,该体系已在东南大学ASIC中间GE02实行板上调试通过,可以正常事变。