利用MP3C和Spartan-IIE开发板实现复杂FFT电路的验证

可编程逻辑

1360人已加入

描述

作者:谭安菊,陈泉根,许晏

1 APTIX MP3C介绍

MP3C系统是Aptix公司的产品,是一种价格低、验证速度快、基于层次化和模块化的硬件验证平台,可以逐步验证每一个逻辑模块直到验证整个系统功能。MP3C硬件中的现场可编程互连电路板(FPCB)和现场可编程互连元件(FPIC)是Aptix公司的专利技术,图1给出了FPCB和FPIC在MP3C上的部件孔模块。通过该系统可以40MHz的最快速度调试百万门级的片上系统;可实时运行软件作为系统测试矢量;加速仿真与递归测试速度和加速完成设计变更;还可随时利用最新FPGA技术满足更大的设计规模需要。此外,MP3C也可以对复杂数字系统进行快速验证,其中包括ASIC、DSP、微控制器、微处理器、RAM和ROM等。MP3C系统比较适合小批量、多品种的生产。

1.1 现场可编程电路板FPCB

MP3C的FPCB是一个22×16、16层的插孔板,根据应用和设计需求,可以把一些外围器件、接口和多个FPGA等放置在FPCB上,就像面包板一样,因此非常灵活方便,这些外围部件再通过FPIC互相连接起来。MP3C FPCB由许多硬件组成。

FPGA

(1)插孔区(freehole area)

插孔区分为上下二部分,分别用A到P标记,共64列,每列有40个可用插孔,有2560个插孔可以使用,除去16列作为I/O,共有1920个插孔连接到FPIC上。每列有15个FPGA特殊引脚,包括CLK、GDN和VCC等。

(2)全局互连(global interconnects)

全局连接是FPIC到FPIC的布线源,3个FPIC中每一个都有140根连线连接到其他两个FPIC,这样就会提供280个FPIC到FPIC之间的连接,而每一个FPIC的920个布线网中有280个用于FPIC到FPIC之间的连接,其余640个用于连接FPCB上的部件插孔区域,这样就可以实现部件之间的互连,如图2所示。

(3)总线(bus)

除了通过FPIC的布线网和全局连接来实现部件之间的互连外,还可以通过MP3C提供的一个总线结构来实现互连。MP3C系统共有4个总线模板连接器,每一个模板连接器有40个总线引脚,而一个FPGA能够访问二个总线模板,这就可以获得80个总线引脚。

(4)I/O信号

I/O信号使得MP3C FPCB可以和其他设备之间进行通信,它们是进出FPCB的信号。

(5)微控制器(microcontroller)

微控制器能为主机系统和MP3C FPCB上的可重配置FPGA之间的通信提供智能接口,微控制器控制FPCB上的能量时序。微控制器的操作系统是存储在被保护的Flash memory的根块区,仅需128kByte,这个3.4Mbyte的Flash存储器主要用来存储FPIC和FPGA之间的配置数据。

(6)现场可编程互连电路(FPIC)

MP3C含有3块FPIC,每一块FPIC有1024个缓冲器,排列成一个32×32矩阵形式,FPIC是可重构的双向连接,每一个缓冲器之间都可以任意布线,使得插接到FPCB上的外围设备达到互连,而每一个FPIC之间都有140根连线连接到另二个FPIC中的任意一个,这样,对于每一个FPIC来说就有280根互连线来实现FPIC与FPIC之间的互连。实际上,FPIC就是一个由软件控制的可编程接口,它能使用户对设计的修改变得非常灵活。图2表明了它们之间的连接关系。

FPGA

1.2 与MP3C配套的EXPLORER软件

Aptix Explorer软件可以提供一个图形用户接口GUI(Graphical User Interface),这上GUI能够生成设计,并对设计进行编辑和调试。通过Explorer软件可以提供一个直观有效的接口来对设计做一系列的操作。EXPLORER软件主要完成整个系统的搭建、FPGA的布局布线和FPCB的编译。其操作步骤如下:

(1)设置FPCB参数

用来配置FPCB参数,如说明所使用的Fpcb板类型、FPIC序列和说明使用的是那一个FPIC等。

(2)对网表文件(netlist)和设计文件进行设置。

主要输入网表文件和与设计有关的文件,Explorer软件支持EDIF和XNF格式的网表文件。

(3)设置Power和Ground

主要是为了说明在部件和针插孔上的Power和Ground引脚是被拉高还是拉低。

(4)设计节点(net)/终端特征

主要设置节点驱动值,其值的范围为0~100,驱动值的大小决定了节点在FPIC内部的布线顺序。驱动值越大就越先布线,因此,可以优先选择最短的路径。

(5)在FPCB上放置部件

把数字系统设计中的模块放到FPCB上。

(6)对设计进行编译

编译可以使被仿真的部件之间实现布线连接,还能控制Explorer软件和FPCB硬件之间的互连。

(7)对设计进行调试

这是帮助下载带有新信号布线信息的FPCB信息到MP3C硬件上的过程,做完这一步就可以对设计进行验证、测试和调试。

2 Spartan-IIE FPGA

2.1 Spartan-IIE FPGA的组成

Spartan-IIE FPGA提供了创建成本优化、应用灵活、功能丰富的产品所需要的一切,它的开发过程远比任何采用ASIC的方案要容易得多(成本也更低)。该系统板主要包括两个时钟源、通用I/O、电源供给、P160扩展槽、LVD 10位接收和传输端口、开关按钮、7段显示器、JTAG端口、RS-232端口、ISP PROM和XC2S300E-5FG456C FPGA等。其中XC2S300E-5FG456C FPGA和ISP PROM是比较重要的部件。图3是Spartan-IIE开发板内部结构。

FPGA

2.2 FPGA与PC连接

用Spartan-IIE开发板来配置Spartan-IIE FPGA的方法有很多:可以通过其JTAG端口直接配置Spartan-IIE FPGA;通过编程在板XC18V02 ISP PROM进行配置,一旦ISP PROM被编程,通过配置端口就能直接配置Spartan-IIE FPGA;也可以通过在系统板上的从动并行/串行端口来配置FPGA。图4给出Spartan-IIE开发板支持的Spartan-IIE FPGA配置连接模式。

FPGA

3 验证系统

用APTIX MP3C和Spartan-IIE开发板实现对数字系统进行验证的系统组成如图5所示。

FPGA

在这个验证系统中,把需要验证的电路放到MP3C FPCB上,Spartan-IIE开发板通过J6或J7通过I/O口连接到FPCB硬件,Spartan-IIE开发板通过串口/并口号计算机相连,工作站通过网线与MP3C通信,也可以把逻辑分析仪连接到MP3C上,实现对系统的在线观察调试。具体验证步骤如下:

(1)用51指令对待验证电路需要的输入信号和激励进行编程,程序经编译后转换成汇编语言,然后写入R80515 IP核以便下载到Spartan-IIE FPGA,d Xilinx ISE软件中对IP核进行仿真和综合后直接通过并口下载到FPGA中。

(2)用CAD软件如OrCAD等完成系统顶层原理图的绘制,需注意其中的接地和电源信号,然后生成网表文件(netlist),把网表文件传到安装了EXPLORER软件的工作站上。

(3)在工作站的EXPLORER软件上完成整个系统的搭建、MP3C相关参数的设置、输入网表文件、生成引脚匹配(pinmap)文件和完成MP3C地址设定等,如果在EXPLORER syslib库中没有所需要的库,还要自己建库,然后就可以进行编译和调试。

(4)用逻辑分析仪或示波器对某些信号进行观察,以便进一步查错和纠错。这种方法可以很方便地帮助用户找到出错的原因。

(5)把验证电路最后输出的结果暂存于Spartan-IIE的存储器中,然后利用串口调试程序在微机上察看结果。目前有很多串口调试程序,如RS-232/RS-485串口通讯程序XP就是一个比较好的程序,如果输出的结果不正确,就需要检查错误原因,错误有可能在硬件方面,也有可能在软件方面,修改之后回到第一步重新进行验证。

4 结束语

用这种方法成功实现了对一个复杂FFT电路的验证。MP3C最具特色的地方就是可编程互连电路板(FPCB)和可编程互连元件(FPIC)的应用,FPIC在FPGA模块之间提供可编程互连使得在整个设计过程中不用对PCB板进行设计和生产,从而节省了费用;在FPGA上实现了数字系统的设计,允许将FPGA直接安装到主板上,可以随着设计FPGA的设计程序重新编制,无需修改其他FPGA,并且可随时利用最新FPGA技术满足更大规模的设计,因此大大增加了设计的灵活性和方便性;还可以对系统进行在线实时修改、调试,方便快捷。MP3C的这些特点大大提高了IC验证的效益。

责任编辑:gt

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分