西安邮电学院研究生课程考试试题标准答案及评分标准第1页共6页西安邮电学院研究生课程考试试题标准答案及评分标准(2011—2012学年第二学期)课程名称数字信号处理的FPGA实现试卷类型A卷专业年级电子、通信工程一年级研究生考试时间(分钟)120分钟一、简述题(共30分,每小题15分)(段前0.5行、小四号黑体)1.简述FPGA和DSP芯片在数字信号处理具体应用中的区别。2.简述ALTERAsignaltap工具的理解。二、论述题(共30分,每小题15分)1.硬件验证与软件仿真在实际使用中有何区别,并举例说明?2.论述Wimax系统的组成及功能。三、创新设计题(共40分,每小题20分)1.设计DSPBulider使用流程。2.设计一基于2FFT(2048point)的FPGA设计架构图。试题标准答案及评分标准1.简述FPGA和DSP芯片在数字信号处理具体应用中的区别。西安邮电学院研究生课程考试试题标准答案及评分标准第2页共6页DSP基本是串行的,并行程度有限,但是编程调试要容易许多;FPGA可以在资源允许的前提下,尽量的提高硬件的并行程度,但是其面向更低的逻辑层,因此设计和调试都要复杂,尤其是并行程序调试,现在还没有好的解决方案;DSP易于实现一些复杂的信号处理算法,目前的高端FPGA都集成了DSP核。DSP与FPGA性能比较:DSP内部结构使它所具有的优势为:所有指令的执行时间都是单周期,指令采用流水线,内部的数据、地址、指令及DMA(DirectMemoryAccess直接存储器存取)总线分开,有较多的寄存器。与通用微处理器相比,DSP芯片的通用功能相对较弱些。DSP是专门的微处理器,适用于条件进程,特别是较复杂的多算法任务。在运算上它受制于时钟速率,而且每个时钟周期所做的有用操作的数目也受限制。例如TMS320C6201只有两个乘法器和一个200MHz的时钟,这样只能在每秒完成400M的乘法。将模拟算法、具体指标要求映射到通用DSP中,比较典型的DSP通过汇编或高级语言如C语言进行编程,实时实现方案。如果DSP采用标准C程序,这种C代码可以实现高层的分支逻辑和判断。例如通信系统的协议堆栈,这是很难在FPGA上实现的。从效果来说,采用DSP器件的优势在于:软件更新速度快,极大地提高了系统的可靠性、通用性、可更换性和灵活性,但DSP的不足是受到串行指令流的限制。FPGA有很多自由的门,通过将这些门连接起来形成乘法器、寄存器、地址发生器等等。这些只要在框图级完成,许多块可以从简单的门到FIR(FiniteImpulseResponse有限冲激响应)或FFT(FastFourierTransform快速傅里叶变换)在很高的级别完成。但它的性能受到它所有的门数及时钟速度的限制。例如,一个具有20万门的Virtex器件可以实现200MHz时钟的10个16位的乘法器。FPGA包含有大量实现组合逻辑的资源,可以完成较大规模的组合逻辑电路设计;与此同时,它还包含有相当数量的触发器,借助这些触发器,FPGA又能完成复杂的时序逻辑功能。通过使用各种EDA(ElectronicDesignAutomatic电子设计自动化)工具,设计人员可以很方便地将复杂的电路在FPGA中实现。象微处理器一样,许多FPGA可以无限的重新编程,加载一个新的设计方案只需要几百毫秒。甚至现场产品可以很简单而且快速的实现。这样,利用重配置可以减少硬件的开销。2.简述ALTERAsignaltap工具的理解。调试FPGA是一个比较艰巨的任务,设计越是复杂,则在验证设计上所花的时间和金钱就越多。为了能让产品尽快地占领市场,我们必须尽可能地减少验证时间。此时,验证工具的优势就体现出来了。Altera的SignalTapII逻辑分析仪是AlteraStratixII、Stratix、StratixGX、Cyclone、CycloneII、APEXII、APEX20KE、APEX20KC、APEX20K、Excalibur、Mercury等系列FPGA的在线、片内信号分析工具。与硬件逻辑分析仪相比,SignalTap具有成本低廉、使用方便、灵活性大等特点。SignalTapII是一款功能强大且极具实用性的FPGA片上debug工具软件,它集成在altera公司提供的FPGA开发工具QuartusII中SignalTapII全称SignalTapIILogicAnalyzer是第二代系统级调试工具,可以捕获和显示实时信号,观察在系统设计中的硬件和软件之间的互相作用。QuartusII软件可以选择要捕获的信号、开始捕获的时间,以及要捕获多少数据样本。还可以选择时间数据从器件的存储器块通过JTAG端口传送至SignalTapIILogicAnalyzer,还是至I/O引脚以供外部逻辑分析仪或示波器使用。将实时数据提供给工程师帮助debug。SignalTapII获取实时数据的原理是在工程中引入Megafunction中的ELA(EmbeddedLogicAnalyzer),以预先设定的时钟采样实时数据,并存储于FPGA片上ram西安邮电学院研究生课程考试试题标准答案及评分标准第3页共6页资源中,然后通过JTAG传送回QuartusII分析。可见SignalTapII,其实也是在工程额外加入了模块来采集信号,所以使用SignalTapII需要一定的代价,首先是逻辑单元(ELA),其次是ram,如果工程中剩余的ram资源比较充足,则SignalTapII一次可以采集较多的数据,相应的如果FPGA资源已被工程耗尽则无法使用SignalTapII调试。1.硬件验证与软件仿真在实际使用中有何区别,并举例说明?硬件验证,顾名思义就是通过仿真、时序分析、上板调试等手段检验设计正确性的过程,FPGA开发流程中,验证主要包括功能验证和时序验证两个部分。功能验证,也就是前仿真,属于软件仿真。利用Modelsim、VCS等仿真工具对设计进行仿真,检验设计的功能是否正确;常用的仿真工具有ModelTech公司的ModelSim,Synopsys公司的VCS,Cadence公司的NC-Verilog和NC-VHDL,Aldec公司的ActiveHDLVHDL/VerilogHDL等。仿真过程能及时发现设计中的错误,加快了设计进度,提高了设计的可靠性。在一个硬件的开发中,如果没有软件的仿真模拟,那硬件就很难确认是否可用。所以,才会有硬件验证的程序。简单的说:例如:CAD软件,是一个机械制图软件,可以把它想像成“仿真模拟”,制出成型之前,就必需要有验证程序确认,才能量产。例如:FPGA,开发流程和IC的开发流程相似,设计输入,功能验证,布局布线,时序验证,生成并下载BIT或PROM文件,进行板级调试。在以上几个主要开发步骤当中,属于硬件验证的有功能仿真和时序验证两个步骤。这就是先软件仿真和后硬件验证的不同处,相异处。2.论述Wimax系统的组成及功能。Wimax(WorldwideInteroperabilityforMicrowaveAccess),即全球微波互联接入。Wimax也叫802·16无线城域网或802.16。WiMAX是一项新兴的宽带无线接入技术,能提供面向互联网的高速连接,数据传输距离最远可达50km。WiMAX还具有QoS保障、传输速率高、业务丰富多样等优点。WiMAX的技术起点较高,采用了代表未来通信技术发展方向的OFDM/OFDMA、AAS、MIMO等先进技术,随着技术标准的发展,WiMAX逐步实现宽带业务的移动化,而3G则实现移动业务的宽带化,两种网络的融合程度会越来越高。网络结构组成和功能:WiMAX网络体系包括:核心网、用户基站(SS)、基站(BS)、接力站(RS)、用户终端设备(TE)和网管。(1)核心网络:WiMAX连接的核心网络通常为传统交换网或因特网。WiMAX提供核心网络与基站间的连接接口,但WiMAX系统并不包括核心网络。(2)基站:基站提供用户基站与核心网络间的连接,通常采用扇形/定向天线或全向天线,可提供灵活的子信道部署与配置功能,并根据用户群体状况不断升级扩展网络。(3)用户基站:属于基站的一种,提供基站与用户终端设备间的中继连接,通常采用固定天线,并被安装在屋顶上。基站与用户基站间采用动态适应性信号调制模式。(4)接力站:在点到多点体系结构中,接力站通常用于提高基站的覆盖能力,也就是说充当一个基站和若干个用户基站(或用户终端设备)间信息的中继站。接力站面向用户侧的下行频率可以与其面向激战的上行频率相同,当然也可以采用不同的频率。西安邮电学院研究生课程考试试题标准答案及评分标准第4页共6页(5)用户终端设备:WiMAX系统定义用户终端设备与用户基站间的连接接口,提供用户终端设备的接入。但用户终端设备本身并不属于WiMAX系统。(6)网管系统:用于监视和控制网内所有的基站和用户基站,提供查询、状态监控、软件下载、系统参数配置等功能。1.设计DSPBulider使用流程。DSPBuilder设计包括两套流程:自动流程和手动流程:设计流程的第一步:在Matlab/Simulink中进行设计输入,在Matlab/Simulink中建立一个模型文件(mdl文件),用图形方式调用DSPBuilder和其它Simulink库中的模块,构成系统级或算法级设计框图。利用Simulink的图形化仿真、分析功能,分析此设计模型的正确性,完成模型仿真。第一步设计同一般的Matlab/Simulink建模过程几乎没什么区别,所不同的是,设计采用了DSPBuilder库。设计流程第二步:通过SignalCompiler把Simulink的模型文件转化为硬件描述语言文件,以供其它的EDA(QuartusII、ModelSim等)软件处理,这些软件不能直接处理Matlab/Simulink产生的模型文件,那么DSPBuilder中的SignalCompiler模块用于完成模型文件到硬件描述语言文件的转换,转换之后的HDL文件是RTL级(寄存器传输级,即可综合的格式)。设计流程的第三步:执行RTL级的仿真,DSPBuilder支持自动流程的ModelSim仿真。用户也可以利用第二步产生的VHDL文件使用其它的仿真工具软件手动地进行仿真。设计流程的第四步:使用第二步SignalCompiler产生的VHDL文件进行RTL级的综合,网表产生和适配等处理,DSPBuilder支持自动流程和手动流程两种方式:自动流程中可以选择让DSPBuilder自动调用QuartusII等EDA软件来完成相应的工作;手动模式允许用户选择相应的软件来完成相应的工作,手动模式需要更多的干预,同时提供了更大的灵活性,用户可以指定综合、适配等过程的条件。第三步和第四步可以不分先后。设计流程的第五步:在QuartusII中编译用户的设计,最后将设计下载,进行测试验证。经过测试、验证的设计可以单独执行相应的DSP功能。如果DSPBuilder产生的DSP模型只是整个设计中的一个子模块,那么可以在设计中调用DSPBuilder产生的VHDL文件,以构成完成的设计。设计DSPBulider使用流程流程图:Simulink模型仿真综合(QuartusII,LeonardoSpectrum,Synplify)ATOMNetlist产生QuartusIIHDL仿真(ModelSim)综合(QuartusII,LeonardoSpectrum,Synplify)QuartusII生成编程文件(.pof,.sof)下载至硬件自动流程手动流程mdl转成vhdlMatlabSimulink建立模型西安邮电学院研究生课程考试试题标准答案及评分标准第5页共6页2.设计一基于2FFT(2048point)的FPGA设计架构图。评分标准:简答题1.对FPGA和DSP概念清晰描述5分掌握FPGA和DSP如何应用于数字信号处理5分描述FPGA和DSP的主要区别5分西安邮电学院研究生课程考试试题标准答案及评分标准第6页共6页2.描述出ALTERAsig