第二章 技术背景
前设计中的存档模块,将这些模块存放在库中,就可以在以后的设计中进行复用。
由于VHDL语言是一种描述、模拟、综合、优化和布线的标准硬件描述语言, 因此它可以使设计成果在设计人员之间方便地进行交流和共享,从而减小硬件电路设计的工作量, 缩短开发周期。 2.3.2 QuartusⅡ简介
Altera公司的CPLD/FPGA设计工具软件QuartusⅡ是适合单芯片可编程系统(SOPC)的最全面的设计环境[3]。
Altera公司(http:// www.altera.com.cn)的逻辑方案涉及的工业应用非常广泛,包括:有线通信、无线网络、数据通信、计算机、高容量处理器、医疗设备、外围设备等。从网络交换设备到接入网、宽带无线通信、IP电话网关、Internet服务器、视频服务器、路由器、图像处理、工业控制等,皆有其产品的应用。
QuartusⅡ开发工具支持的Altera公司主流FPGA全部系列,器件支持如表所示。
表2.1 器件说明
器 件 说 明
StratixⅡ 最高的性能,最高的密度,大量的存储资源,特性丰富的平台 StratixⅡGX 最高的性能结构,高速串行收发器
Cyclone 低成本,替代ASIC,适用于价格敏感的应用 APEXⅡ 高密度,高性能,支持高速差分I/O标准
Mercury 高性能,高带宽,中密度,包括时钟数据恢复(CDR)支持 Excalibur 高性能,处理器硬核解决方案 APEX20K/KE/KE 高性能,中到高密度 FLEXl0K/KE 低成本,低到中密度 ACEX 1K 低成本,低到中密度
HardCopy 高密度,大批量ASIC替换器件
QuartusⅡ系统特点总览
1.第一款从FPGA至掩膜器件的完整设计工具。
QuartusⅡ新版软件可以在FPGA开发的初期就提供HardCopy掩膜器件的设计性能参数。
2.基于模块的设计方法提高工作效率
QuartusⅡ软件为用户提供了LogicLock基于模块的设计方法,便于用户独立设计和实施各种设计模块,并且在将模块集成到顶层工程时仍可以维持各个模块的性能。由于每一个模块都只要进行一次优化,因此LogicLock流程可以显著缩短设计和验证的周期。
3.更快集成IP
10
商洛学院学位论文
QuartusⅡ软件包括SOPC Builder工具,SOPC Builder针对可编程片上系统(SOPC)的各种应用自动完成IP核(包括嵌入式处理器、协处理器、外设、存储器和用户设定的逻辑)的添加、参数设置和连接等操作。
4.前期I/O分配和验证
设计软件可以在设计文件完成之前进行I/O分配和验证。 芯片编辑器(ChipEdit)
新的芯片编辑器允许设计者在完成布局布线之后查看Altera器件的内部详细结构,增量编辑逻辑单元(LE)和FO单元的配置和锁相环参数。
5.存储器编译器
用户可以使用QuartusⅡ软件中提供的存储器编译器功能对Altera FPGA中的嵌入式存储器进行轻松管理。增加了针对FIFO和RAM读写操作的基于现有设置的波形动态生成功能。
6.增量编译
少量修改VHDL或VerilogHDL源文件,用QuartusⅡ软件或第三方综合软件进行逻辑综合之后,新的增量布线特性可以在布局布线过程中把逻辑布局限制在新的或改变的逻辑中。
7.支持CPLD、FPGA和基于HardCopy的ASIC 设计流程可独立执行
QuartusⅡ软件是全新的体系,设计流程的主要阶段都可独立执行,这些阶段包括综合、映射、装配、设计规则检查、时间分析和器件编程。
使用全新的命令行和脚本功能自动化设计流程
用户可以使用命令行或QuarrasⅡ软件中的图形用户界面(GUl)独立运行QuartusⅡ软件中的综合、布局布线、时序分析以及编程等模块。除了提供Synopsys设计约束(SDC)的脚本支持以外,QuartusⅡ软件中还包括了易用的工具命令语言(Tcl)界面,允许用户使用该语言来创建和定制设计流程并满足用户的需求。
8.高级教程帮助深入了解QuartusⅡ的功能特性
QuartusⅡ软件提供详细的教程,覆盖从工程创建、普通设计、综合、布局布线到验证等在内的各种设计任务。
9.其他改变
同时发布Modelsim-Altera5.7c仿真软件,仿真时间可缩短20%;License采用Flexlm 8.0进行管理,用户需要升级老版本License;操作系统支持Windows XP/2000/NT,Solaris 7.8,Red Hat Linux7.1,HP-UX 11.0,不再支持官方Windows98。
(1)QuartusⅡ4.0的主要改进如下:
11
第二章 技术背景
1>增强CGI功能,更友善的人机界面。
2>将编译模式、仿真模式、软件模式统一到了一起。
3>新的Assignment菜单,可以在一个Setting窗口中完成所有项目设置。 4>新的Assignment Editor菜单,可以在友好的表格界面中,进行所有资源分配和所有约束设置。
5>新的Remove Assignment窗口,可以方便删除各种不同的设置。 6>提供一个新的Memory Compiler,可以在MegaWizard Plug-In Manager的界面中更方便地生成各种类型的Memory。
(2)布局布线
利用布线后的延时信息,实现对网表的二次优化,提高布线效果。用户能够手工控制逻辑复制(对部分器件)—Timing Closure Floorplan Improvements。增强MAX3000、7000器件布线算法,提高Fmax,同时减少资源占用率,能够自动在底层显示关键路径。
(3)校验
增强的LogicLock功能; 增强的SignTapⅡ功能; 支持HardCopy功耗估计。 (4)其他
支持一批StartixGX,Cyclone等新器件。 (5)扩大Altera软件的技术领导地位
QuartusⅡ软件版本4.0包括简化和加速大容量FPGA设计的新技术,包括:存储器、编译器、波形发生器(产生存储器结构操作的波形显示),基于存储器参数化和配置选择。此特性使不同存储器配置设置效果更易于理解。
一个完整的FPGA/CPLD开发设计流程应当包括电路设计与输入、功能仿真、综合、综合后仿真、实现、布线后仿真、下载调试等主要步骤。
QuartusⅡ开发工具分为综合工具、仿真工具、实现工具、辅助设计工具和其他工具等5类。 2.3.3 VHDL的设计流程
1.设计规范的定义
明确设计的目的,进行设计的总体规划。分析设计要求,以及自己要达到的设计目的和目标。
2.采用VHDL进行设计描述
这部分包括设计规划和程序的编写。设计规划主要包括设计方式的选择及是
12
商洛学院学位论文
否进行模块划分。设计方式一般包括直接设计,自顶向下和自底向下设计。
3.VHDL程序仿真
对于某些人而言,仿真这一步似乎是可有可无的。但是对于一个可靠的设计而言,任何设计最好都进行仿真,以保证设计的可靠性。另外,对于作为一个独立的设计项目而言,仿真文件的提供足可以证明你设计的完整性。
4.综合、优化和布局布线
综合指的是将设计描述转化成底层电路的表示形式,其结果是一个网表或者是一组逻辑方程;优化,这个主要是为了提高程序的执行效率及减少资源的利用;布局布线,指的是将逻辑关系转化成电路连接的方式。
5.仿真
这一步主要是为了确定你的设计在经过布局布线之后,是不是还满足你的设计要求。
2.4 系统方案分析
基于FPGA的片上可编程系统以高速的FPGA为数字平台,基于直接数字频率合成和数字调制技术原理,虽然专用DDS芯片的功能也比较多,但控制方式确实固定的,因此不一定是我们所需要的。利用FPGA则可以根据需要方便地实现比较复杂的功能,并能简化控制及接口,有利于提高精度、可靠性和灵活性,这也是现代电子技术发展的重要方向,如图2-3所示。
图 2.2基于FPGA的片上可编程系统
基于FPGA的片上可编程系统为我们此次设计的方案。利用新技术、新的解决方案来实现题目的各项功能,缩短设计时间,以便剩下更多的时间来进行严格的测试以及发挥更多的扩展功能。
FPGA具有丰富的门电路和逻辑功能,它运用IP核,将处理器、存储器、I/O
13
第二章 技术背景
接口等系统设计需要的功能模块到一块芯片上,构建成一个可编程的偏上系统,具有灵活的设计方式,可裁剪、可扩充、可升级,并具备软硬件在系统中可编程的功能。在可编程期间内,还具有小容量高速RAM资源和足够的可编程逻辑资源,用于实现其他的附加逻辑。
根据题目要求,并综合考虑FPGA的优越性,制定了整体的设计方案:相位累加器核心,将微处理器、总线、外设、数字频率合成器、存储器和I/O接口等器件集成在一片FPGA上,外部电路采用D/A转换、低通滤波和功率放大及幅度调节等环节。FPGA完成以下四大方面的功能:
(1)控制键盘和显示器;
(2)根据输入的频率值,通过数据计算得到频率控制字; (3)实现数字频率合成器; (4)实现对D/A转换的控制;
这种设计方式充分利用了FPGA的资源,减少了CPU与外设的接口,很大程度上提升了系统的速度、可靠性以及系统的成本。
14