实用数字电子技术基础实验设计论文
(2012级)
题 目 学 院 专 业 班 级 学 号 学生姓名 指导教师 完成日期
正弦信号发生器设计 电子信息学院 集成电路设计与集成系统
12042211 12042110、12042139 樊永刚、张呈明
陈龙 2013年6月
摘要
本实验运用EDA技术,采用FPGA为核心器件,对逻辑器件进行编程,QUARTUS II及实验开发系统为设计工具,对产品进行设计然后下载到FPGA上验证实现功能。此设计涉及ROM和DAC的应用,这里主要使用DAC0832来完成实验。
系统功能:整个系统理论上可以输出任意频率的正弦波形。考虑到DAC0832的数据建立速度是1μs,所以CLK的频率不宜过高。通过示波器可以观测到DAC0832的
输出波形。
关键词:FPGA、EDA、ROM、DAC、正弦信号发生器。
1 引言 1.1本课题的研究背景
第 1 页
PLD(可编程逻辑器件)是数字集成系统逻辑器件,一种数字集成电路的半成品,在其芯片上按一定排列方式集成了大量的门和触发器等基本逻辑元件,使用者可利用某种开发工具对其进行加工,即按设计要求将这些片内的元件连接起来,使之完成某个逻辑电路或系统的功能,成为一个可在实际电子系统中使用的专用集成电路。PLD的出现使数字系统的设计方法发生了崭新的变化。传统的系统设计方法采用SSI和MSI标准通用器件以对电子电路进行设计,由于器件的种类、数量多且连接复杂,因而造成系统体积大、可靠性差。采用PLD设计系统后,可利用EDA工具来完成,极大地提高了设计效率和设计灵活性。近年来,PLD和EDA技术相互促进,使得PLD已在计算机硬件、工业控制、智能仪器、家用电器等领域得到广泛应用,成为电子产品设计变革的主流器件。目前具有竞争力的电子产品,多数都采用了PLD,而PLD的设计与改进必须借助EDA工具,因此掌握PLD和EDA技术已成为当今硬件系统设计者的重要任务。
当今社会是数字化的社会,是数字集成电路广泛应用的社会,数字集成电路本身在不断地进行更新换代。它由早期的电子管、晶体管、小中规模集成电路,发展到超大规模集成电路(VLSCI,几万门以上)以及许多具有特定功能的专用集成电路。但是,随着微电子技术的发展,设计与制造集成电路的任务已不完全由半导体厂商来承担。系统设计师们更愿意自己设计专用集成电路(ASIC)芯片,而且希望ASIC的设计周期尽可能短,最好是在实验室里就能设计出合适的ASCI芯片,并且立即投入实际应用之中,因而出现了现场可编程逻辑器件(FPLD),其中应用最广泛的当属现场可编程门阵列(FPGA)和复杂可编程逻辑器件(CPLD)。大规模可编程逻辑器件CPDL和FGPA是当今应用最广泛的两类可编程专用集成电路,电子设计工程师利用它可以在办公室或实验室里设计出所需的专用集成电路,从而大大缩短产品的上市时间,降低了开发成本。此外,可编程逻辑器件还具有静态可重复编程和动态在系统重构的特性,使得硬件的功能可以象软件一样通过编程来修改,这样就极大的提高了电子系统设计的灵活性和通用性。由于具备上述两方面的特点,CPLD和FPAG受到了世界范围内广大
第 2 页
电子设计工程师们的普遍欢迎,应用日益广泛。目前已有单片可用门数超过数百万门、工作频率可达500MHZ以上的可编程ASCI芯片问世,由于工艺和结构的不断改进,可编程ASCI芯片上包含的资源越来越丰富,可实现的功能越来越强,他们已成为当今实现电子系统集成化的重要手段。当前PLD主要向两个方向发展:CPLD和FPGA。而随着近年来半导体技术的飞速发展,现代高密度现场可编程逻辑器件FPGA,其设计性能及性价比已能够与掩膜ASIC抗衡,这极大地提高了FPGA在此领域的竞争力。
可编程器件制造厂家可按照一定的规格以通用器件大量生产,用户可按通用器件从市场上选购,然后按自己的要求通过编程实现专用集成电路的功能。因此,对于集成电路制造技术与世界先进的集成电路制造技术尚有一定差距的我国,开发具有自主知识产权的专用集成电路,已成为相关专业人员的重要任务。
按用户需要,面向特定用途而专门设计制作的集成电路。大量生产并标准化的通用集成电路一般不能满足全部用户的需要,研制新的电子系统常需各种具有特殊功能或特殊技术指标的集成电路。定制集成电路是解决这个问题的重要途径之一,是集成电路发展的一个重要方面。
FPGA是英文Field Programmable Gate Array的缩写,即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。
1.2 本课题的主要研究内容及意义
函数(波形)信号发生器。能产生某些特定的周期性时间函数波形(正弦波、方波、三角波、锯齿波和脉冲波等)信号,频率范围可从几个微赫到几十兆赫函数信号发生器在电路实验和设备检测中具有十分广泛的用途。例如在通信、广播、电视系统中,都需要射频(高频)发射,这里的射频波就是载波,把音频(低频)、视频信号或脉冲信号运载出去,就需要能够产生高频的振荡器。除供通信、仪表和自动控制系统测试用外,还广泛用于其他非电测量领域。本文利用EDA技术,即以大规模可编程逻辑器件FPGA为设计载体,以计算机,FPGA的开发软件
第 3 页
QUARTUS II及实验开发系统为设计工具,实现相应的部分功能,从而自动完成用软件的方式设计的电子系统到硬件系统的逻辑编译,逻辑仿真,直至完成对目标芯片FPGA适配编译、逻辑映射、编程下载等工作,最终实现对正弦信号发生器的设计。本设计所做的工作主要有以下几个方面:
(1)根据实验的功能要求,设计正弦信号发生器的模型,画出系统框架图。要明确系统的任务。将系统划分成规模大小合适多个子系统,便于电路级的设计。
(2)掌握QUARTUS II软件的学习和使用。
(3)用基于LPM宏模块的自动化设计对系统中的各个子系统或者模块进行逻辑描述。
(4)利用EDA提供的设计平台,完成用软件的方式设计的电子系统到硬件系统的逻辑编译,逻辑仿真。
(5)在FPGA实验箱上下载验证所设计的正弦信号发生器的功能,进行相应的测试和查错,直至完成对目标芯片FPGA适配编译、逻辑映射、编程下载等工作。
通过以上步骤,就可以设计出实验所要求的信号发生器。
2 总体设计
2.1 功能要求
通过数字方式产生模拟信号的方法设计一个简易正弦信号发生器。
第 4 页
2.2 系统设计框图
6位计数器 字正弦波数(地址发生据存储器 器) (LPM_ROM)
图2.2-1
2.3 基本设计步骤
(1)定制初始化波形数据文件 (2)定制LPM ROM元件
(3)简易正弦信号发生器的顶层电路设计 (4)软件编译仿真 (5)硬件下载调试
DAC0832 示波器(正弦波输出)
3 各模块设计 3.1 定制初始化波形数据文件
第 5 页
在设计之前必须首先确定图2.1-1中ROM内的波形数据文件。这里的正弦波数据是64点的。通过以下设计来产生.Mif文件。
图3.1-1 选择mif文件
图3.1-2 完成正弦波新号数据输入
3.2 定制LPM ROM元件
存放波形数据ROM的设计。
第 6 页
图3.2-1六位计数器CNT6B的设计
图3.2-2 生成六位计数器CNT6B ROM元件的设计
图3.2-3 选择使用LPM_ROM模块
第 7 页
图3.2-4 为LPM_ROM选择初始化配置文件
图3.2-5 生成LPM_ROM元件
3.3 简易正弦信号发生器的顶层电路设计
原理图顶层设计如图3.3-1所示。其中,CLR是异步清零信号,高电平有效;CNT6B是六位计数器,用作地址发生器;DAC_OUT[7..0]是ROM数据输出,接外部DAC。
图3.3-1 简易正弦信号发生器顶层电路设计
第 8 页
3.4 软件编译仿真
仿真波形如下:
3.5 硬件下载调试
图3.5-1 下载引脚锁定
图3.5-2 配置文件下载
4 正弦信号发生器的FPGA验证 4.1 FPGA简述
第 9 页
FPGA是现场可编程门阵列(Field Programmable Ggte Array)简称。FPGA器件及其开发系统是开发大规模数字集成电路的新技术。它利用计算机辅助设计,绘制出实现用户逻辑的原理图、布尔方程或用硬件描述语言等方式作为设计输入;然后经一系列转换程序、自动布局布线、模拟仿真的过程;最后生成FPGA器件的配置文件,用于对FPGA器件初始化。这样就实现了满足用户要求的专用集成电路,真正达到了用户自行设计、自行研制和自行生产集成电路的目的。
概括地说,FPGA器件具有下列优点:高密度、高速率、系列化、标准化、小型化、多功能、低功耗、低成本,设计灵活方便,可无限次反复编程,并可现场调试验证。结合其并行工作方式,在超高速应用领域和实时测控方面有非常广阔的应用前景。在高可靠应用领域,不会存在复位不可靠和可能跑飞等问题。使用FPGA期间,一般可在几天到几周内完成一个电子系统的设计和制作,大大缩短研制周期,达到快速上市和进一步降低成本的要求。
FGPA/CPLD经过了十几年的发展,许多公司都开发出了多种可编程逻辑器件。比较典型的就是Xilinx公司的FPGA器件系列和Altera公司的CPDL器件系列,它们开发较早,占据了较大的PDL市场。通常来说,在欧洲用Xilnix的人多,在日本和亚太地区用ALTEAR的人多,在美国则是平分秋色。全球PLDF/GPA产品60%以上是由Altera和Xilinx提供的,可以讲Altera和Xilinx共同决定了PLD技术的发展方向。当然还有许多其它的公司,如:比ttiee,vantss,Aetel,Quieklogie,Lucent等,他们的产品各有特色,走的技术路线也不尽相同。
4.2 FPGA的结构描述
FPGA是大规模可编程逻辑器件除CPLD外的另一类PLD器件。它使用了另一种可编程逻辑的形成方法,即可编程的查找表(Look Up Table,LUT)结构,LUT是可编程的最小逻辑构成单元。大部分FPGA采用基于SRAM的查找表逻辑形式结构,就是用SRAM(静态随机存储器)来构成逻辑函数发生器。
第 10 页
FPGA器件的内部结构为逻辑单元阵列(LCA)。LCA由3类可编程单元组成:周边的输入/输出模块(IOB)、核心阵列式可配置逻辑块(CLB)以及各模块的互连资源。
周边可配置模块的IOB为内部逻辑与器件封装引脚之间提供了可编程接口;CLB阵列实现用户指定的逻辑功能;互连资源类似于印制电路板上的引线,可编程并用于模块间传递信号的网络。
4.2 FPGA的配置模式
FPGA的配置模式是指FPGA用来完成设计时的逻辑配置和外部连接方式。逻辑配置是指经过用户设计输入并进过开发系统编译后产生的配置数据文件,将其装入FPGA芯片内部的可配置存储器的过程,简称FPGA的下载。只有经过逻辑配置后,FPGA才能实现用户需要的逻辑功能。FPGA的配置之前,首先要借助于FPGA开发系统,按某种格式要求描述设计系统,在编译仿真后,将描述文件转换成FPGA芯片的配置数据文件。选择一种FPGA的配置模式,将配置数据装载到FPGA芯片内部的可配置存储器后,FPGA芯片才会成为满足要求的芯片系统。
芯片编程配置方式有:被动串行(PS)模式和JTAG编程方式。
采用被动串行模式,配置数据将通过ByteBlaster电缆串行发送到FLEX器件(FPGA芯片)配置数据的收发同步由ByteBlaster时钟提供。在MAX+PLUSII开发环境下,可直接对FLEX器件进行PS配置。此种配置方式使用的配置文件为SOF文件,此文件是在设计综合过程中自动形成的。
JTAG编程方式同时支持MAX器件和FLEX器件,但由于MAX器件的下载文件为POF文件,而用于FLEX器件的下载文件为SOF文件。
4.3 系统验证
将整体电路编译仿真,并进行引脚锁定后下载到FPGA中,然后将示波器和DAC0832的相关引脚相连。可以看到示波器上显示出了稳定的正弦波形。通过调节时钟信号的频率,可以使出任意频率的正弦波形。
5 致谢
第 11 页
这篇实验论文写完后,数电这门课的学习就结束了。通过这门课的学习,我真的收获了好多。而且,这次写实验报告又锻炼了我写论文的能力。陈龙老师讲课细心认真,极大地提升了我对这门课的学习兴趣。陈老师对思维的发散和知识的拓展的注重令我印象深刻。此次实验由于过程中的种种原因,导致最终的结果令人不甚满意。但我还是学到了好多,让我深深体会到了拥有坚韧不拔的毅力对一个理科生的重要性。最重要的是我学会了如何与他人合作,极大地提升了和别人就交流的能力。在这里,我衷心感谢陈龙老师,感谢陈老师给我们大一学生学习数电的机会,感谢陈老师给我们大一学生的悉心教诲,让我们提前感受到了电子的魅力,让迷茫的我们不再迷茫。我坚信,在陈老师的指导下,我们向电子迈出的脚步将更加坚定有力!
目录
1 引言 .................................................. 1 1.1本课题的研究背景 .................................. 1 1.2 本课题的主要研究内容及意义 ....................... 2 2 总体设计 .............................................. 4 2.1 功能要求 ........................................ 4 2.2 系统设计框图 .................................... 4 2.3 基本设计步骤 .................................... 4 3 各模块设计 ............................................ 5 3.1 定制初始化波形数据文件 ........................... 5 3.2 定制LPM ROM元件 ........................... 5 3.3 简易正弦信号发生器的顶层电路设计 ................. 7 3.4 软件编译仿真 .................................. 8 3.5 硬件下载调试 ................................... 8 4 正弦信号发生器的FPGA验证 .............................. 9 4.1 FPGA简述 ......................................... 9 4.2 FPGA的结构描述 .................................. 9 4.2 FPGA的配置模式 ................................. 10 4.3 系统验证 ....................................... 10 5 致谢 ................................................. 11