为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

数字锁相环

2017-11-26 45页 doc 763KB 28阅读

用户头像

is_729658

暂无简介

举报
数字锁相环数字锁相环 摘要 本设计是在FPGA上设计数字锁相环。选用的是ALTERA公司开发的的 Quartus?7.0作为软件开发平台,采用自上而下的设计方法,将数字锁相环 )分成了鉴相器(DPD)模块,数字环路滤波器(DLP)模块,数控振荡器(DPLL (DCO)模块和除,分频。最后将用VHDL语言编写好的程序通过Quartus?7.0 软件仿真,验证设计的正确性。 关键词:数字鉴相器(DPLL),数字环路滤波器(DLP),数字压控振荡器(DCO), 除N分频计数器;VHDL.。 Digital Phase-Locked L...
数字锁相环
数字锁相环 摘要 本设计是在FPGA上设计数字锁相环。选用的是ALTERA公司开发的的 Quartus?7.0作为软件开发平台,采用自上而下的设计方法,将数字锁相环 )分成了鉴相器(DPD)模块,数字环路滤波器(DLP)模块,数控振荡器(DPLL (DCO)模块和除,分频。最后将用VHDL语言编写好的程序通过Quartus?7.0 软件仿真,验证设计的正确性。 关键词:数字鉴相器(DPLL),数字环路滤波器(DLP),数字压控振荡器(DCO), 除N分频计数器;VHDL.。 Digital Phase-Locked Loop Abstract: This design is designed in the FPGA digital phase-locked loop. ALTERA selection is developed in the Quartus ? 7.0 as a software development platform, using top-down design method, digital PLL (DPLL) is divided into a phase detector (DPD) module, digital loop filter (DLP ) module, numerical controlled oscillator (DCO) module and inter-N frequency. Finally a good use of VHDL language program through the Quartus ? 7.0 software simulation, design verification. Keywords: digital phase detector (DPLL), digital loop filter (DLP), Digital voltage controlled oscillator (DCO), except N frequency Counter;VHDL。 前言:本文重点介绍数字鉴相器(异或门)和数字环路滤波器(可逆计数器)。 I 第1章 绪 论 1.1数字锁相环的发展背景 锁相的概念是在19世纪30年代提出的,而且很快在电子学和通信领域中获得广泛应用。尽管基本锁相环的从开始出现几乎保持原样,但是使用不同的技术制作及满足不同的应用要求,锁相环的实现对于特定的设计还是蛮大的挑战。 锁相环在通信,雷达,测量和自动化控制等领域应用极为广泛,已经成为各种电子设备中必不可少的基本部件。随着电子技术向数字化方向发展,需要采用数字方式实现信号的锁相处理。锁相环技术在众多领域得到了广泛的英用。如信号处理,调制解调,时钟同步,倍频,频率综合等都应用到了锁相环技术。传统的锁相环由模拟电路实现,而数字锁相环(DPLL)与传统的模拟电路实现的锁相环相比,具有精度高且不受温度和电压影响,环路带宽和中心频率编程可调,易于构建高阶锁相环等优点,并且应用在数字系统中时,不需要A/D及D/A转换。随着通讯技术,集成电路技术的飞速发展和系统芯片的深入研究,数字锁相环必然会在其中得到更为广泛的应用。因此,对数字锁相环的研究和应用得到了越来越多的关注。 传统的数字锁相环系统是希望通过采用具有低通特性的环路滤波器,获得稳定的振荡器数据。对于高阶数字锁相环,其数字滤波器通常采用基于DSP的运算电路。这种结构的锁相环,当环路带宽很窄时,环路滤波器的实现将需要很大的电路图,这给专用集成电路的应用和片上系统SOC(system on chip)的设计带来一定的困难。另一种类型的数字锁相环是采用脉冲序列低通滤波器计数电路作为环路滤波器,如随机徘徊序列滤波器,先N后M序列滤波器等。这些电路通过对鉴相模块产生的相位误差脉冲进行计数运算,获得可控振荡器模块的振荡控制参数。由于脉冲序列低通滤波器计数方法是一个比较复杂的非线性处理过程,难以进行线性近似,因此,无法采用系统传递函数的分析方法确定锁相环的设计参数。不能实现对高阶数字锁相环性能指标的解耦控制和分析,无法满足较高的应 [1]用需求。 由于数字电子技术的迅速发展,尤其是数字计算和信号处理技术在多媒体,自动化,仪器仪,通讯等领域的广泛应用,用数字电路处理模拟信号的情况日益普遍。所以模拟信号数字化是信息技术的发展趋势,而数字锁相环在其中扮演着重要的角色。近年来,随着VLSI技术的发展,随着大规模,超高速集成电路的飞速发展,数字系统的集成度和逻辑速度越来越高,这使得数字锁相环在数字通信,控制及无线电电子学的各个领域中的应用也越来越广泛。数字锁相环路已在数字通信,无线电电子学及电力系统自动化等领域中得到了极为广泛的应用。随着集成电路技术的发展,不仅能够制成频率较高的单片集成锁相环路,而且可以把整个系统集成到一个芯片上去。在基于FPGA的同学电路中可以把数字锁相环路作为一个功能模块嵌入FPGA中,构成片内锁相环。 锁相环最初用于改善电视接收机的行同步和帧同步,以提高抗干扰能力。20世纪50年代后期随着空间技术的发展,锁相环用于对宇宙飞行目标的跟踪,遥测和遥控。但是基本都是以模拟锁相环为基础。60年代初随着数字通信系统的发展,出现数字锁相环其应用相当广泛,例如为相干解调提取参考载波,建立位同步等。具有门限扩展能力的调频信号锁相鉴频器也是在60年代初发展起来的。在电子仪器方面,锁相环在频率合成器和相位计等仪器中起了重要作用。数字锁 1 相环也以其独特的优点在很多方面取代了模拟锁相环。数字锁相环具有以下优点:广泛采用逻辑门电路,触发电路和其他数字电路,因而受干扰影响的可能性小;可靠性高便于集成化和小型化,避免了模拟锁相环的一些固有缺点。锁相环 [2] [4]路所以获得日益广泛的应用时因为它具有如下几个重要特性: 跟踪特性。在环路锁定状态下,一旦输入频率发生变化,压控振荡器立—— 即响应这个变化,迅速跟踪输入频率,最终使输入与输出同步。这种环路可用于锁相接收机。 ——滤波特性。通过环路滤波器的作用,锁相环路具有窄带滤波特性,能够将混进输入信号中的噪声和杂声干扰滤除。而且通带可以做的很窄,性能远远优于任何LC。RC,石英晶体,陶瓷滤波器。 ——锁定状态无剩余频差存在。正是由于锁相环的这一理想频率控制特性,使它在自动频率控制,频率合成技术等方面获得广泛的应用。 ——易于集成化。组成环路的基本部件都易于采用模拟集成电路实现。环路实现数字化之后,更易于采用数字集成电路。集成锁相环的体积不断减小,成本不断降低,而可靠性却不断增强,用途也越来越多。 因此,研究能够嵌入系统芯片内的数字锁相环,提高其环路的工作性能,具有十分重要的意义。 1.2研究数字锁相环目的和意义 集成电路的出现与飞速发展彻底改变了人类文明和人们的日常生活的面目。集成电路是电子电路,但它又不同于一般意义的电子电路,它把成千上万的电子元器件包括晶体管、电阻、电容甚至电感集成在微小的芯片是哪个,正是这种奇妙的设计和制造方式使它为人类社会的进步创造了空前绝后的奇迹,而是这种奇迹变成现实的是集成电路掩模版图设计。 IC(“集成电路”)产业是全球高新技术产业的前沿与核心,是最具活力和挑战性的战略产业。自2000年来,在国家政策的大力支持下,我国集成电路产业得到了长足的发展,而作为集成电路产业最前沿的设计业更是呈现出“百花齐放”的繁荣景象,作为产业命脉的IC设计人才,在IC产业最集中的长三角地区也仅仅只有几千人。所以拥有一定工作经验的设计工程师,据国内知名猎头公司烽火猎聘公司数据显示IC目前已成为人才猎头公司争相角逐的“宠儿”。 IC版图设计是指将前端设计产生的门级网表通过EDA设计工具进行布局布线和进行物理验证并最终产生供制造用的GDSII数据的过程。其主要工作有:芯片物理结构分析、逻辑分析、建立后端设计流程、版图布局布线、版图编辑、版图物理验证、联络代工厂并提交生产数据。作为连接设计与制造的桥梁,合格的版图设计人员既要懂得IC设计、版图设计方面的专业知识,还要熟悉制程厂的工作流程、制程原理等相关知识。 2 集成电路版图是电路系统与集成电路工艺之间的中间环节。通过集成电路版图设计,可以将立体的电路系统变为一个二维的平面图形,再经过工艺加工还原为基于硅材料的立体结构。因此,版图设计是一个上承电路系统,下接集成电路芯片制造的中间桥梁,其重要性可见一斑。 集成电路掩模版图设计是实现集成电路制造所必不可少的设计环节,它不仅关系到集成电路的功能是否正确,而且也会极大程度的影响集成电路的性能、成本和功耗。近年来迅速发展的计算机、通信、嵌入式或便携式设备中集成电路的高性能低功耗运行都离不开集成电路掩模版图的精心设计。一个优秀的掩模版图设计者对开发超性能的集成电路是极其关键的。 随着微电子技术的突飞猛进,新技术、新工艺、新材料不断涌现,设计方法、设计手段、设计理念不断更新,集成电路设计已从单纯的图形设计发展为需要综合考虑各方面因素的,复杂的设计问题。集成电路设计是一门技术,它需要设计者具有电路系统原理与工艺制造方面的基础知识。但它更需要设计者的创造性,空间想象力和耐性,需要设计者长期工作的经验和知识的积累,需要设计者对日新月异的集成电路发展密切关注和探索。正因为其需要掌握的知识面广,而国内高校开设这方面专业比较晚,IC设计工程师的人才缺口更为巨大。 通用串转并移位寄存器芯片是一种具有8位串行输入 、8位串行或并行输出 、存储状态寄存器,这使得它具有很好的驱动能力。由于LED和数码管在现今社会中的广泛应用,使用通用串转并移位寄存器作为驱动数码管、LED芯片具有:速度较快,功耗较小,软硬件设计简单,功耗低,驱动能力强,占用的I/O口线较少,造价低廉等优点 现如今由LED发光二极管节能灯,具有寿命长、节能、安全、绿色环保、色彩丰富等显著优点。是全球新兴产业。在城市的发展中,一个美丽的夜景可以给居住的市民感受的现代化的气息和这座城市的繁荣,而这样的魅力正是由于LED灯发展的快速。但是LED的价格也相应地较高,如果在低成本的简单系统中,不仅是一种资源的浪费,而且增加了产品的成本,所以使用通用串转并移位寄存器芯片驱动LED,LED的数目多少随意,既可以控制共阴极的LED显示器,也可以控制共阳极的LED显示器,还可以在必要的时候关断显示,以减小功耗,并可随时唤醒显示,已达到节约成本的作用。 1.3全数字锁相环基本结构及工作原理 3 1.3.1全数字锁相环的基本结构 随着数字电路技术的发展,数字锁相环在调制解调、频率合成、FM 立体声解码、彩色副载波同步、图象处理等各个方面得到了广泛的应用。数字锁相环不仅吸收了数字电路可靠性高、体积小、价格低等优点,还解决了模拟锁相环的直流零点漂移、器件饱和及易受电源和环境温度变化等缺点,此外还具有对离散样值的实时处理能力,已成为锁相技术发展的方向。 所谓数字PLL,就是指应用于数字系统的PLL,也就是说数字PLL中的各个模块都是以数字器件来实现的,是一个数字的电路。 数字锁相环的优点是电路最简单有效,可采用没有压控的晶振,降低了成本,提高了晶振的稳定性。但缺点是和模拟锁相环一样,一旦失去基准频率,输出频率立刻跳回振荡器本身的频率;另外还有一个缺点,就是当进行频率调整的时候,输出频率会产生抖动,频差越大,抖动会越大于密,不利于某些场合的应用。随着大规模、超高速的数字集成电路的发展,为数字锁相环路的研究与应用提供了广阔空间。由于晶体振荡器和数字调整技术的加盟,可以在不降低振荡器的频率稳定度的情况下,加大频率的跟踪范围,从而提高整个环路工作的稳定性与可靠性。 锁相环是一个相位反馈控制系统,在数字锁相环中,由于误差控制信号是离散的数字信号,而不是模拟电压,因而受控的输出电压的改变是离散的而不是连续的;此外,环路组成部件也全用数字电路实现,故而这种锁相环就称之为全数字锁相环(简称PLL)。全数字锁相环主要由数字鉴相器、可逆计数器、频率切换电路及N分频器四部分组成。其中可逆计数器及N分频器的时钟由外部晶振提供。不用VCO,可大大减轻温度及电源电压变化对环路的影响。同时,采用在系统可编程芯片实现有利于提高系统的集成度和可靠性。 一阶全数字锁相环的基本结构如图所示。主要由鉴相器、K变模可逆计数器、脉冲加减电路和除N计数器四部分构成。K变模计数器和脉冲加减电路的时钟分别为Mfc和2Nfc。这里fc是环路中心频率,一般情况下M和N都是2的整数幂。本设计中两个时钟使用相同的系统时钟信号。 输入信号 相位误差序列 数字鉴相器 数字滤波器 本地估算信号 相位校正序列 数字压控 振荡器 图1.2 数字锁相环基本结构 4 1.3.2全数字锁相环的工作原理 当环路失锁时,异或门鉴相器比较输入信号(fin)和输出信号(fout)之间的相位差异,并产生K变模可逆计数器的计数方向控制信号(dnup); K变模可逆计数器根据计数方向控制信号(dnup)调整计数值,dnup为高进行减计数,并当计数值到达0时,输出借位脉冲信号(borrow);为低进行加计数,并当计数值达到预设的K模值时,输出进位脉冲信号(carryo);脉冲加减电路则根据进位脉冲信号(carryo)和借位脉冲信号(borrow)在电路输出信号(idout)中进行脉冲的增加和扣除操作,来调整输出信号的频率;重复上面的调整过程,当环路进入锁定状态时,异或门鉴相器的输出se为一占空比50%的方波,而K变模可逆计数器则周期性地产生进位脉冲输出carryo和借位脉冲输出borrow,导致脉冲加减电路的输出idout周期性的加入和扣除半个脉冲。这样对于输出的频率没有影响,也正是基于这种原理,可以把等概率出现的噪声很容易的去掉。 环路滤波器的性能优劣会直接影响到跟踪环路的性能。而采用数字化的环路滤波器便于调试参数和提高系统可靠性。环路滤波器的输出要直接控制频率合成器产生相应频率,使本地伪码能够准确跟踪发端信息。数字环中使用的数字环路滤波器与模拟环中使用的环路滤波器作用一样,都对噪声及高频分量起抑制作用,并且控制着环路相位校正的速度与精度。适当选择滤波器的参数,可以改善环路的性能。数字环路滤波器的设计原理是建立在模拟环路滤波器的基础上的。 1.4锁相环概述 我们说的PLL,其实就是锁相环路,简称为锁相环。锁相环路是一种一种反馈控制电路。许多电子设备要正常工作,通常需要外部的输入信号与内部的振荡信号同步,利用锁相环路就可以实现这个目的。锁相环的特点是: 利用外部输入的参考信号控制环路内部振荡信号的频率和相位。因锁相环路可以实现输出信号频率对输入信号频率的自动跟踪,所以锁相环通常用于闭环跟踪电路。锁相环在工作的过程中,当输出信号的频率与输入信号的频率相等时,输出电压与输入电压保持固定的相位差值,即输出电压与输入电压的相位被锁住,这就是锁相环名称的由来。 目前锁相环主要有模拟锁相环,数字锁相环以及有记忆能力(微机控制)锁相环。 第2章 EDA开发环境 2.1 EDA技术简介 5 2.1.1 EDA发展 电子设计自动化(Electronic Design Automation ,简称EDA),伴随着计算机、 CAD)、计算机辅助集成电路、电子系统设计的发展,经历了计算机辅助设计( 工程设计(CAED)和电子系统设计自动化(ESDA)三个阶段。 2.1.2 EDA技术主要内容 EDA技术涉及面广,内容丰富,从教学和实验角度看主要有以下四方面内容:?大规模可编程逻辑器件;?硬件描述语言;?软件开发工具;?实验开发系统。 其中大规模可编程逻辑器件是利用EDA技术进行电子系统设计的载体,硬件描述语言是利用EDA技术进行电子系统设计的主要表达手段,软件开发工具是利用EDA技术进行电子系统设计的智能化的自动化设计工具,实验开发系统则是利用EDA技术进行电子系统设计的下载工具几硬件验证工具。 2.1.3 EDA技术及特点 现代EDA技术的基本特征是采用高级语言即硬件描述语言描述,具有系统仿真和综合能力。 (1)并行工程和“自顶向下”的设计方法 (2)硬件描述语言 (3)逻辑综合优化 (4)开放性和标准性 利用EDA技术进行电子系统的设计,具有以下几个特点:用软件的方式设计硬件;用软件方式设计的系统到硬件系统的转换是由有关的开发软件自动完成的;设计过程中可用有关软件进行各种仿真;系统可现场编程,在线升级;整个系统可集成在一个芯片上,体积小、功耗低、可靠性高。 2.1.4 EDA工具 EDA的设计工具流程图见下图2-1所示: EDA设计工具 检查/分析工具 编辑器 仿真器 优化/综合工具 文字编辑器 图形编辑器 统计型仿真确定型仿真 器 器 6 2.2 QUARTUSII概述 Altera公司在20世纪90年代以后发展的很快,是最大的可编程逻辑器件供应商之一,在推出各种可编程逻辑器件的同时,也在不断升级其相应的开发工具软件。其开发工具从早期的A+PLUS、MAX+PLUS发展到MAX+PLUS2、QUARTUS,再到现在QUARTUSII,经历了多次版本的升级,软件性能也得到了很大的提高。为了缩短设计周期和降低设计的复杂度,QUARTUSII提供了一种与结构无关的设计环境,设计人员无须精通器件的内部结构,只需利用自己熟悉的输入工具进行设计,就可以通过QUARTUSII把这些设计转换成最终所需要的格式。同时,QUARTUSII还集成了逻辑分析、时序优化、功能仿真、EDA工具集成、多过程支持、IP集成等,使设计变得更为简洁。 altera公司新一代开发软件QUARTUSII的新版本7.0的在支持原器件的基础上,增加了对APEX20K、APEX2、Excalibur、Mercury以及Stratix、Stratix GX、StratixII 等新器件系列的支持。这一版本包括了FPGA提供的第一款时序分析工具timequest时序分析仪,能够很好的支持业界标准Synopsys设计约束时需格式。此外,该版本还增加了对SystemVerilog的支持,并改进了I/O引脚规划器和SignalTapII逻辑分析仪等功能。 实验步骤 2.3 QUARTUSII文件建立及仿真 2.3.1建立工程文件 1)选择开始>程序>Altera>Quartus II 7.0,运行QUARTUSII软件。或者双击 桌面上的QUARTUSII的图标运行QUARTUSII软件,出现如图1-3所示界面。 图1-3 QUARTUS II软件运行界面 2)选择软件中的菜单File>New Project Wizard,新建一个工程。如图1-4 7 所示。 3)点击图1-4中的Next进入工作目录,工程名的设定对话框如图1-5所示。第一个输入框为工程目录输入框,用户可以输入如e:/eda/example1等工作路径来设定工程的目录,设定好后,所有的生成文件将放入这个工作目录。第二个输入框为工程名称输入框,第三个输入框为顶层实体名称输入框。用户可以设定如EXP1,一般情况下工程名称与实体名称相同。使用者也可以根据自已的实际情况来设定。 图1-4 新建工程对话框 图1-5 指定工程名称及工作目录 4)点击NEXT,进入下一个设定对话框,按默认选项直接点击NEXT进行器件选择对话框。如图1-6所示。这里我们以选用CycloneII系列芯片 8 EP2C5Q208C8为例进行介绍。 图1-6 器件选择界面 首先在对话框的左上方的Family下拉菜单中选取CycloneII,在中间右边的Speed grade下拉菜单中选取8,在左下方的Available devices框中选取EP2C5Q208C8,点击NEXT完成器件的选取,进入EDA TOOL设定界面如图1-7所示。 图1-7 EDA TOOL对话框 5)按默认选项,点击NEXT出现新建工程以前所有的设定信息,如图1-8 9 所示,点击FINISH完成新建工程的建立。 图1-8 新建工程信 2.3.2建立图形设计文件 …1)在创建好设计工程后,选择File>NEW菜单,出现图1-9所示的新建设计文件类型选择窗口。这里我们以建立图形设计文件为例进行说明,其它设计输入方法与之基本相同。 图1-9 新建设计文件选择窗口 2)在New对话框(图1-9)中选择Device Design Files页下的Block Diagram/Schematic File,点击OK按钮,打开图形编辑器对话框,如图1-10所示。图中标明了常用的每个按钮的功能。 10 图1-10 QUARTUSII图形编辑器对话框 QUARTUSII图形编辑器也称块编辑器(Block Editor),用于以原理图(Schematics)和结构图(Block Diagrams)的形式输入和编辑图形设计信息。QUARTUSII图形编辑器可以读取并编译结构图设计文件(Block Design File)和MAXPLUSII图形设计文件(Graphic Design Files),可以在QUARTUSII软件中打开图形设计文件并将其另存为结构图设计文件。 在QUARTUSII图形编辑器窗口(图1-10)中,根据个人爱好,可以随时改变Block Editor的显示选项,如导向线和网格间距、橡皮筋功能、颜色以及基本单元和块的属性等。 3)在这里以用原理图输入设计一个三八译码器为例,介绍基本单元符号输入方法的步骤。在图1-10所示的图形编辑器窗口的工件区双击鼠标的左键,或 …点击图中的符号工具按钮,或选择菜单Edit>Insert Symbol,则弹出的Symbol对话框。 4)用鼠标点击单元库前面的“+”号,展开单元库,用户可以选择所需要的图元或符号,该符号则显示在右边的显示符号窗口,用户也可以在符号名称里输入你所需要的符号名称,点击OK按钮,所选择的符号将显示在图形编辑器的工作区域。 5)参考图1-12所示,将要选择的器件符号放置在图形编辑器的工件区域,用正交节点工具将原件边接起来,然后定义端口的名称。在这个例子里,定义三个输入为A、B、C,定义八个输出为D0、D1、D2、D3、D4、D5、D6、D7。用户也可以根据自己的习惯来定义这些端口名称。 6)完成图形编辑的输入之后,需要保存设计文件或重新命名设计文件。选 …择File>Save As项,出现如图1-13所示对话框,选择好文件保存目录,并在文件 11 名栏输入设计文件名。如需要将设计文件添加到当前工程中,则选择对话框下面的Add file to current project复选框,单击保存按钮即可保存文件。需要注意的是,在整个设计文件保存的过程当中,都需要遵循设计输入法的一般规则。 图1-13 保存设计文件对话框 2.3.3对设计文件进行编译 QUARTUSII编译器窗口包含了对设计文件处理的全过程。在QUARTUSII 软件中选择Tool>Compiler Tool菜单项,则出现QUARTUSII的编译器窗口,如 图1-14所示,图中标明了全编译过程各个模块的功能。 图1-14 QUARTUSII编译器窗口 需要说明的是在进行设计文件的综合和分析,也可以单独打开某个分析 综合过程不必进行全编译界面。当完成上述窗口的设定后,点击START按钮 进行设计文件的全编译。如果文件有错,在软件的下方则会提示错误的原因 和位置,以便于使用者进行修改直到设计文件无错。整个编译完成,软件会 12 提示编译成功,如图1-15所示。 图1-15 全编译成功界面 2.3.4对设计文件进行仿真 1)创建一个仿真波形文件,选择QUARTUSII软件File>New,进行新建文件对话框。如图1-24所示。选取对话框的Other File标签页,从中选取Vector Waveform File,点击OK按钮,则打开了一个空的波形编辑器窗口,如图1-25所示。 图1-24 新建文件对话框 图1-25 波形编辑器 2)设置仿真结束时间,波形编辑器默认的仿真结束时间为1µS,根据仿真需要,可以自由设置仿真的结束时间。选择QUARTUSII软件的Edit>End Time命令,弹出线路束时间对话框,在Time框办输入仿真结束时间,点击OK按钮完成设置。 3)加入输入、输出端口,在波形编辑器窗口左边的端口名列表区点击 …鼠标右键,在弹出的右键菜单中选择Insert Node or Bus命令,在弹出的 …Insert Node or Bus对话框如图1-26所示界面中点击Node Finder按钮。 13 图1-26 Insert Node or Bus对话框 在出现的Node Finder界面中,如图1-27所示,在Filter列表中选择Pins:all,在Named窗口中输入“*”,点击List在Nodes Found窗口出现所有信号的名称,点击中间的按钮则Selected Nodes窗口下方出现被选择的端口名称。双击OK按钮,完成设置,回到图1-26所示的Insert Node or Bus对话框,双击OK按钮,所有的输入、输出端口将会在端口名列表区内显示出来,如图1-28所示。 图1-27 Node Finder对话框 14 图1-28 在波形编辑器中加入端口 4)编辑输入端口波形,即指定输入端口的逻辑电平变化,在如图1-28所示的波形编辑窗口中,选择要输入波形的输入端口如A端口,在端口名显示区左边的波形编辑器工具栏中有要输入的各种波形,其按钮说明如图1-29所示。根据仿真的需要输入波形。完成后如图1-30所示。最后选择软件的File>Save进行保存。 图1-29 波形编辑器工具栏 15 图1-30 编辑输入端口波形 5)指定仿真器设置,在仿真过程中有时序仿真和功能仿真之分,在这里介绍功能仿真。在QUARTUSII软件中选择Tool>Simulator Tool命令,打开仿真器工具窗口,如图1-31所示。 图1-31 仿真器工具窗口 按图1-31上的提示,首先产生功能仿真网表文件,点击产生功能仿真网表的按钮Generate Functional Simulation Netlist,产生功能仿真网表,然后点击开始仿真的START按钮开始进行仿真,直到仿真进度条为100%完成仿真。点击仿真报告窗口按钮Report,观察仿真波形。如图1-32所示。 图1-32 仿真波形 16 6、从设计文件到目标器件的加载 完成对器件的加载有两种形式,一种是对目标器件进行加载文件,一种 是对目标器件的配置芯片进行加载。这里我们介绍对目标器件EP2C35F672C8 进行加载的方法。 1)使用下载电缆将PC机与实验系统连接起来。 2)选择QUARTUSII软件的Tool>Programmer命令,进行编程器窗口,如 图1-33所示,如果没有设置编程硬件,则编程硬件类型为No Hardware,需 …要对编程硬件进行设置。点击Hardware Setup编程硬件设置按钮,进行如图 1-34所示的编程硬件设置对话框。 第3章 FPGA概述及VHDL语言 3.1 FPGA 3.1.1 Cyclone器件 Cyclone系列器件是 ALTERA 公司在 2002 年 12 月份推出的。从那以后,已向全球数千位不同的客户交付了数百万片,成为 ALTERA 历史上采用最快的产品。它采用 0.13um、全铜 SRAM 工艺,1.5V 内核,容量从 2910 个逻辑单元到 20060 个逻辑单元,并嵌入了 4 级最多为 64 个 RAM 块(128×36bit)。CYCLONE器件支持大量的片外数据传输的单端 I/O 标准,包括 LVTTL, LVCMOS,PCI,SSTL-2 和 SSTL-3。为满足设计者更快数据速率和信号传输能力的需要,Cyclone器件还设有高达 311Mbps 的低压差分信令(LVDS)兼容通道。由于采用了特殊的三级布线结构,其裸片尺寸大大降低。 Cyclone器件的性能可与业界最快FPGA芯片相抗衡,平衡了逻辑,存储器,锁相环(PLL)和高级 I/O 接口,Cyclone器件具有以下特性: (1)新的编程构架通过设计实现低成本; (2)嵌入式存储资源支持各种存储器应用和数字信号处理(DSP)实施; (3)专用外部存储接口电路集成了 DDR FCRAM 和 SDRAM 存储器件; (4)支持串行、总线和网络接口及各种通信; (5)使用 PLLs管理片内和片外系统时序; (6)采用新的串行配置器件的低成本配置; (7)通过 Quartus II 软件 OpenCore 评估特性,免费评估IP功能。 此外,Cyclone具有较高的性能价格比,Cyclone容量是以往低成本 FPGA系列的四倍,每千个LE 的批量价格低于 1.50 美元。低成本结构和Cyclone FPGA 丰富的器件资源相结合,能够实现完整的。可编程芯片系统(SOPC)方案,成为 17 大批量应用的理想选择。鉴于Cyclone器件价格低廉,速度快,所以在全数字锁相环模块的设计中采用此器件进行设计开发。 3.1.2 FPGA片内系统结构 为了平衡系统的稳定性和捕获带宽之间的矛盾,就要找到一个最佳的K值,使系统在最大可能消除干扰的前提下,捕捉带达到最大,捕获时间最短,其整个过程由CPU来控制。CPU的选择主要有2种方案:?FPGA片内实现CPU;?与片外系统共用CPU。这里主要介绍第一种。 对于片内CPU,这里采用Ahera公司推出的Nios?嵌入式软核处理器予以实现。在系统中,片内寄存器,全数字锁相环以及检测电路均作为外设嵌入到FPGA芯片中。片内寄存器,全数字锁相环,检测电路通过系统总线相连接,受到片内的Nios?软核处理器的控制,使得全数字锁相环中的数字环路滤波器部分在工作中的参数得到优化。此种结构使得Nios?处理器和全数字锁相环2部分集成在一块FPGA器件中,大大提高了系统的稳定性和可靠性。罔3给出片内全数字锁相环系统结构框图。 3.1.3 FPGA的特点 现场可编程门阵列FPGA(Field Programmable Gate Array),是由可编程逻辑单元阵列、布线资源和可编程的I/O单元阵列构成。 与其他可编程逻辑器件相比,FPGA具有如下特点: (1)EPLD,CPLD可编程逻辑器件是通过修改内部电路的逻辑功能实现编程;而FPGA是通过修改一根或多根内连线的布线,实现编程。 (2)FPGA的编程单元是SRAM,可以无限次编程,但它属于易失性元件,掉电后芯片内信息丢失。为此,它需要附加外部存储芯片来保存已编程信息,且保密性差。 (3)FPGA的互连是分布式的,虽然布线相当灵活,但其延时与系统布局有关;而EPLD,CPLD的互连是集中式的,其延时是等延时。故在系统速度方面FPGA可能低于EPLD,CPLD。 (4)FPGA的设计输入方式是原理图输入,不能充分利用芯片资源。 (5)FPGA的功耗低于EPLD,CPLD,其静态功耗几乎为零。 (6)FPGA编程时不用编程器,可以安装好后再编程,使用很方便。 3.1.4 全数字锁相环FPGA实现的总结 在本设计中的一阶全数字锁相环使用Mentor公司的ModelSim6.0软件进行设计的功能仿真以及Altera公司的QuartusII7.2软件时序仿真并且进行设计综合,并采用Altera的cyclone系列的EP1C6Q240C8 FPGA器件实现。实验测试结果表明:本设计中DPLL时钟可达到10MHz,性能较高;而使用了256逻辑单 18 元,占用资源很少。下面给出详细描述全数字锁相环的工作过程。 (1)当环路失锁时,异或门鉴相器比较输入信号(fin)和输出信号(fout)之间的相位差异,并产生K变模可逆计数器的计数方向控制信号(dnup); (2) K变模可逆计数器根据计数方向控制信号(dnup)调整计数值,dnup为高进行减计数,并当计数值到达0时,输出借位脉冲信号(borrow);为低进行加计数,并当计数值达到预设的K模值时,输出进位脉冲信号(carryo); (3)脉冲加减电路则根据进位脉冲信号(carryo)和借位脉冲信号(borrow)在电路输出信号(idout)中进行脉冲的增加和扣除操作,来调整输出信号的频率; (4)重复上面的调整过程,当环路进入锁定状态时,异或门鉴相器的输出se为一 的方波,而K变模可逆计数器则周期性地产生进位脉冲输出carryo占空比50% 和借位脉冲输出borrow,导致脉冲加减电路的输出idout周期性的加入和扣除半个脉冲。 本次设计中开始遇到了很多困难,开始通过多方面查找资料并了解全数字锁相环的原理及方案,锁相环一般都是模拟的居多,关于数字的资料比较少,所以查阅资料花了大量时间;在确定全数字锁相环设计原理后,开始学习硬件描述语言verilog HDL,学习FPGA器件的使用,学习Mentor公司的ModelSim6.0软件来作功能仿真以及用Altera公司的QuartusII7.2软件进行时序仿真以及下载配置的等问题。 3.2硬件语言——VHDL 3.2.1硬件描述语言简介 VHDL的英文全名是Very-High-Speed Integrated Circuit Hardware Description Language,诞生于1982年。1987年底, VHDL被IEEE( The Institute of Electrical and Electronics Engineers)和美国国防部确认为标准硬件描述语言。自IEEE公布了VHDL的标准版本(IEEE-1076)之后,各EDA公司相继推出了自己的VHDL设计环境,或宣布自己的设计工具可以和VHDL接口。此后VHDL在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准硬件描述语言。1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本。现在,VHDL作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。VHDL是EDA技术的重要组成部分,是电子设计的主流硬件描述语言。 3.2.2硬件描述语言的特点 VHDL主要用于描述数字系统的结构、行为、功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法十分类似于一般的计 19 算机高级语言。VHDL的程序结构特点是将一项设计实体(可以是一个元件、一个电路模块或一个系统)分成外部和内部两个基本点部分,其中外部为可见部分,即系统的端口,而内部则是不可视部分,即设计实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。应用VHDL进行工程设计的优点是多方面的,具体如下: (1)功能强大,设计灵活 VHDL具有功能强大的语言结构,可以用简洁明确的源代码来描述复杂的逻辑控制。它具有多层次的设计描述功能,层层细化,最后可成为直接生成电路级描述。VHDL还支持同步电路、异步电路和随机电路的设计,这是其他硬件描述语言所不能比拟的。 VHDL支持各种设计方法,既支持自底向上的设计,也支持自顶向下的设计;既支持模块化设计,也支持层次化设计。 (2)支持广泛,易于修改 由于VHDL已成为IEEE标准所规范的硬件描述语言,目前大多数的EDA工具都支持VHDL。在硬件电路设计过程中,主要的设计文件是用VHDL编写的源代码,因为VHDL易读和结构模块化,所以易于修改设计。 (3)强大的系统硬件描述能力 VHDL具有多层次的设计描述功能,既可描述系统级,又可描述门级电路;描述形式既可采用行为描述、寄存器传输描述或结构描述,也可采用三者混合的混合级描述。另外,VHDL支持惯性延迟和传输延迟,可准确的建立硬件电路模型。 VHDL一个突出的特点是具有丰富的数据类型,既可支持预定义的数据类型,也可自己定义数据类型,这样给硬件描述带来了较大的自由度。 (4)独立于器件的设计,与工艺无关 在用VHDL语言设计系统硬件时,没有嵌入与工艺有关的信息。当门级或门级以上层次的描述通过仿真检验以后,再用相应的工具将设计映射成不同的工艺。这样,在工艺更新时,就无须修改原设计程序,只要改变相应的映射工具。 (5)具有很强的移植能力 由于VHDL是一种标准化的硬件描述语言,因此同一个设计可以被不同的工具所支持,使得设计描述的移植成为可能。VHDL的移植能力主要体现在:对于同一个设计描述,它可以从一个模拟工具移植到另一个模拟工具,从一个综合器移植到另一个综合器,从一个工作平台移植到另一个工作平台去执行。 (6)易于共享与复用 VHDL采用基于库(library)的设计方法。在设计过程中,可以建立各种可再次利用的模块,将这些模块放在库中,就可以在以后的设计中进行复用。由于VHDL是一种描述、模拟、综合、优化和布线的标准硬件描述语言,因此它可以使设计成果在设计人员之间进行交流与共享,减少硬件电路设计的工作量,缩[8]短开发周期。 3.2.3硬件描述语言的流程 运用VHDL语言设计系统一般采用自上而下分层设计的方法,首先从系统级功能设计开始,对系统高层模块进行行为描述和功能验证。这样,在电路细节设计之前,先对系统的功能和结构进行验证,可对存在的问题早发现早修改,提高 20 设计效率。完成系统的功能验证后,就可以将抽象的高层设计,子顶而下逐级细化,直到所用pld(可编程逻辑器件)结构相对应的逻辑描述。在细化的过程中,对电路结构清楚的模块可采用结构描述;对采用什么电路结构不确定的模块可采 [8]用行为描述。现在的EDA(电子设计自动化)工具一般都具有逻辑综合的功能,可将行为描述自动转换为与pld器件结构相对应的逻辑描述,这给设计者带来了极大的方便,并大大缩短了产品的开发周期。 第四章 具体实现及电路仿真验证 4.1全数字锁相环设计方案 全数字锁相环结构框图下图4-1所示,主要由异或门鉴相器、K变模可逆计数器、脉冲加/减电路和除N计数器四部分构成。K变模计数器和脉冲加/减电路的时钟分别为Mf0和2Nf0。这里f0是环路中心频率,一般情况下M和N都是2的整数幂。为了使电路简单,这两个时钟由同一振荡器提供,时钟频率2Nf0=Mf0。 Mf0 CP1 (φin) f进位脉冲 i 可逆计数异或门借位脉冲 Ud 器 鉴相器 dec inc CP2 iout fo(φout) 除N计数器 加/减脉冲控制器 2Nf0 图3-1 全数字锁相环结构框图 DPLL的工作过程如下: (1)当环路失锁时,异或门鉴相器比较输入信号和输出信号之间的相位差异,并产生K变模可逆计数器的计数方向控制信号Ud; (2)K变模可逆计数器根据计数方向控制信号Ud调整计数值,Ud为高进行减计数,并当计数值到达0时,输出借位脉冲信号dec;为低进行加计数,并当计数值达到预设的K模值时,输出进位脉冲信号inc; (3)脉冲加减电路则根据进位脉冲信号inc和借位脉冲信号dec在电路输出信号iout中进行脉冲的增加和扣除操作,来调整输出信号的频率; (4)重复上面的调整过程,当环路进入锁定状态时,异或门鉴相器的输出Ud为一占空比50%的方波,而K变模可逆计数器则周期性地产生进位脉冲输出dec和借位脉冲输出inc,导致脉冲加减电路的输出iout周期性的加入和扣除半个脉 21 冲。 本方案介绍了一种一阶DPLL的设计方法,利用VHDL语言配合XILINX的FPGA,为设计提供了极大的便利和性能保证。DPLL中可逆计数器模值可随意修改,来控制DPLL的跟踪补偿和锁定时间;同时,除N计数器的分频值也可随意改变,使DPLL可跟踪不同中心频率的输入信号,而这些只需在设计中修改几行代码即可完成。另外,设计好的DPLL模块还可作为可重用的IP核,应用于其他设计。 4.2 各部分的实现 4.2.1 数字鉴相器 常用的鉴相器有两种类型:异或门(XOR)鉴相器和边沿控制鉴相器(ECPD),本设计中采用异或门(XOR)鉴相器。异或门鉴相器比较输入信号fin相位和输出信号fout相位之间的相位差Фse=Фfin-Фfout,并输出误差信号se作为K变模可逆计数器的计数方向信号。环路锁定时,se为一占空比50%的方波,此时的绝对相位差为90?。因此异或门鉴相器相位差极限为?90?。异或门鉴相器如图所示。 模块端口设计说明如下: port (V1 ,V2 : in std_logic ; Vd:out std_logic); 其中 fin对应异或门的输入端a,fout对应异或门输入端b,se对应异或门的输出端y。如下图给出图异或门鉴相器在环路锁定及极限相位差下的波形: 22 图4.2环路锁定是异或门鉴相器输出的波形 4.2.2 数字环路滤波器 基本原理如下,数字环路滤波器(DLF)作用是消除鉴相器输出的相位差信号se中的高频成分,保证环路的性能稳定,实际上可用一变模可逆计数器(设模数为K)来实现。K变模可逆计数器根据相差信号SE来进行加减运算。当SE为高电平时,计数器进行加运算,如果相加的结果达到预设的模值,则输出一个进位脉冲信号CARRY给脉冲加减电路;当SE为低电平时,计数器进行减运算,如果结果为零,则输出一个借位脉冲信号BORROW给脉冲加减电路。当Fout同步于Fin或只有随机干扰脉冲时,计数器加减的数目基本相等,计数结果在初始值处上下徘徊,不会产生进位和借位脉冲,滤除因随机噪声引起的相位抖动。计数器根据输出结果生成控制增减脉冲动作的控制指令。 数字滤波器的工作过程如下,将异或鉴相器产生的se信号加到环路滤波器的输入端, 在环路滤波器模块内设置一个可逆计数器,计数器初始值设为kmode;超前脉冲到来时, 可逆计数器加1,滞后脉冲到来时,可逆计数器减1.经过一段时间的计数后,当可逆计数器为ktop 时,表示本地信号超前,环路滤波器输出扣脉冲信号,可逆计数器复位为kmode; 当可逆计数器为0 时,表示本地信号滞后,环路滤波器输出增脉冲信号,可逆计数器复位为kmode。从而起到了环路滤波的作用。在DPLL 的基本结构中,K变模可逆计数器始终起作用。当环路锁定后,如果模数kmode较小,则K 变模可逆计数器会周期性输出超前脉冲和滞后脉冲,在脉冲加减电路中产生周期性的脉冲加入和扣除,其结果是在脉冲加减电路的输出信号中产生了周期性的误差,称为“波纹”;如果模数kmode足够大,这种“波纹” 误差通过除N 计数器后, 可以减少到N 个周期出现一次,即K 模可逆计数器的超前脉 23 冲和滞后脉冲的周期是N个参考时钟周期。kmode 的大小决定了DPLL的跟踪步,kmode 越大,跟踪步长越小,锁定时的相位误差越小, 但捕获时间越长kmode越小,跟踪步长越大,锁定时的相位误差越大, 但捕获时间越短。 K变模可逆计数器模值K对DPLL的性能指标有着很大的影响。计数器模值K的取值可根据输入信号的相位抖动而定,加大模值K,有利于提高DPLL 的抗噪能力,但是会导致较大的捕捉时间和较窄的捕捉带宽。减小模值K 可以缩短捕捉时间,扩展捕捉带宽,但是降低了DPLL 的抗噪能力。本设计中选择Kmode=4。在初始时刻,计数器被置初值为K/2=2,这样可以DPLL捕捉速度很快。 K变模可逆计数器模块端口设计说明如下: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity bmkn is port(clk,ud,en,c,b,a:in std_logic; r1,r2:out std_logic); end entity bmkn; architecture behave of bmkn is signal cq,k,mo : std_logic_vector (8 downto 0); signal cao1,cao2: std_logic; signal instruction: std_logic_vector (2 downto 0); 图4.3 K变模可逆计数器的仿真 24 4.2.3 数控振荡器 在全数字锁相环中,数控振荡器有别于以往的压空振荡器,数控振荡器由脉冲加减电路实现,根据数字滤波器的给出的进位脉冲信号(carryo)和借位脉冲信号(borrow)进行输出脉冲的调整。当没有进位脉冲信号和借位脉冲信号是,脉冲加减信号就是对时钟进行二分频输出,当有进位脉冲信号时,脉冲加减模块会增加一个脉冲,相当于减少了脉冲周期,而增加了输出频率;同理,当有借位脉冲信号时,脉冲加减模块会减少了一个脉冲,相当于增加了脉冲周期,而减少输出了频率;这样通过脉冲增减模块的对输入信号频率和相位的跟踪和调整,最终使输出信号锁定在输入信号的频率和信号上,工作波形如图所示。 脉冲增减模块模块端口设计说明如下: module IDCounter (IDclock,reset,inc,dec,IDout); input IDclock,reset,inc,dec; output IDout; reg IDout; reg inc_new,dec_new,inc_pulse,dec_pulse; reg delayed,advanced,Tff; always @(posedge IDclock) 脉冲增减模块模块仿真如下图: 图4.4 脉冲加减电路工作原理波形 4.2.4 N分频参数控制 为了使锁定频率范围更宽,这里采用了动态N分频。原理就是对输入信号周 25 期用高频时钟进行测量,得到高频时钟的长度之后再量化然后给出N值,N的值与高频时钟长度比例关系,高频时钟长度越长,N值越大。 N分频参数控制模块端口设计说明如下: module counter_N(clk, fin, reset, count_N);//利用clk对fin脉冲的测量并给出N值 input clk, fin, reset; output [14:0] count_N; //输出counter_N是输入信号fin周期长度的一半 N分频参数控制模块仿真如下图: 图2.8 N分频参数控制模块的仿真图 4.2.5 N分频器 N分频器则是一个简单的除N计数器。N分频器对脉冲加减电路的输出脉冲再进行N分频,得到整个环路的输出信号fout。同时,因为fout=clk/2N=fc,因此通过改变分频值N可以得到不同的环路中心频率fc。除N计数器对脉冲加减电路的输出IDOUT再进行N分频,得到整个环路的输出信号Fout。同时,因为fc=IDCLOCK/2N,因此通过改变分频值N可以得到不同的环路中心频率fc。 Port端口: port(clk:in std_logic; q:out std_logic); N分频器模块仿真如下: 26 图2.9 输入分频倍数为n=10时的输出波形图 图2.9 输入分频倍数为n=20时的输出波形图 图2.11 输入分频倍数为n=50时的输出波形图 4.3 全数字锁相环的功能仿真 总体模块、仿真及体统性能分析 对各个模块进行调试后,进行了总体连接与仿真,其整体的全数字锁相环生 27 成模块及仿真结果如下面两部分所示 (1)设计一:全部模块使用VHDL语言设计的全数字锁相环原理如图4-11 所示,其中:clk为时钟频率,等于64f0;u1为输入,频率为f0;ud为异或门鉴相器的输出,它作为变模可逆计数器的方向控制信号;iout为加/减脉冲控制器的输出;u2为ADPLL的输出,在相位锁定的频率为f0,相位与输入U1 相差Π/ 2;C、B、A可预置变模可逆计数器的模数,它在001,111范围内变化,相应的模 ??数在23,29 范围内变化;En为可逆计数器使能端。 图4-11 全字锁相环电路总原理图 相应的仿真波形见下图4-12、4-13和图4-14:图中参数均为M=64,N=8,H=4。 28 图4-12 锁相环K=8时的仿真波形 由图4-12可看出,u1与u2达到锁定的时间为0ns。 图4-13 锁相环K=128时的仿真波形 由图4-13可看出,u1和u2达到锁定的时间为274.5ns。 图4-14 锁相环K=256时的仿真波形 由图4-14可看出,u1和u2达到锁定的时间为2.3945us。 由以上全数字锁相环三个不同模K值下的仿真波形可看出,显然,模K愈大,环路进入锁定状态的时间愈长。模K愈小,环路进入锁定状态的时间愈短。但K取得过大,虽对抑制噪声、减少相位抖动有利,但锁定范围越窄,而且进位和借位的周期加长,因而加大了环路进入锁定状态的时间。反之,K取得过小,虽可以加速环路的锁定,但对噪声的抑制能力却随之降低。因此由以上分析可知,模K的取值要适当。 因为本方案使用的是异或门鉴相器,ud输出是本地输入时钟u1频率的1/2,而在数字环路滤波器(K变模可逆计数器)中的加减计数器的计数范围都是[0,K-1],当计数器的值大于K-1或等于0时有进位或借位输出,因此在ud的一个周 29 期内,至少应该有一个进位同时有一个借位的产生,以相互抵消减少波纹,则在u1的1/4周期内应该至少有一个进位或借位,或者说在u1的一个周期中有两个进位同时有两个借位的产生,这些进借位相互抵消从而产生零波纹。由于u1周期是时钟周期的M倍,则在理论上当ADPLL工作于中心频率时,应该在K=M/4时锁相环输出有零波纹。因而,K=M/4时称为最小波纹配置。若KM/4。但在K=8的仿真波形图中,没有波纹的出现,是因为2K=M/4,则在一个u1周期内同时产生四个进位和借位,进借位数目少,它们相互抵消,因而不存在波纹。 在DPLL工作过程中,环路锁定时,异或门鉴相器的输出DN/UP应是一个占空比50%的方波。但在实际实验中,由于环境的影响,u1和u2在频率上达到锁定,但在相位上却不是相差Π/2的关系,而且随着K值的不同相位误差不同。因此产生的ud不是占空比50%的方波,而是随着K值的不同而不同。 图3.1 全数字锁相环功能仿真结果 图3.2 全数字锁相环功能仿真结果 上面图3.1和图3.2分别是从不同的变化的fin输入频率的仿真,根据波形可以看到fout频率能够跟随fin输入的变化。 4.4 全数字锁相环的时序仿真 在时序仿真前,先利用QuartusII7.2软件编译如下图是编译的报告,从给出的编译结果可以知道,利用Altera公司的Cyclone系列器件的EP1C6Q 30 图3.3 全数字锁相环编译结果截图 利用QuartusII7.2软件进行时序仿真: 图3.4 全数字锁相环时序仿真结果 从时序仿真图可以看到,se在十个周期内输出方波,说明fout的频率在几个fin周期内可以跟上fin的频率,就是相位被锁定,这时的相位差为90度。 4.5 硬件测试 利用EDA6000实验箱来验证,并在实验箱上进行逻辑的分析。实验板上的FPGA型号为EP1C6Q240C8,使用电路的时钟频率为10MHz。在所设计的锁相环逻辑电路中,为了便于鉴视锁相环的工作状况,本次设计引出了一个锁相监视的判断信号se。采用逻辑分析仪观察各个信号的情况,设置好各个端脚对应的引脚。并且下载到芯片,连接好逻辑分析仪,就可以进行验证。 31 图4.1 图全数字锁相环下载图示 图4.2 全数字锁相环EDA6000模式设置图 上图为设置EDA6000的模式,电路工作时钟clk就是clk0(IO30)设置为10Mhz,输入信号fin就是clk1(IO31),在这里可以选择不同的信号频率。定义K0(IO40),K1(IO41) ,K2(IO42) ,K3(IO43), K4(IO44)并分别与Kmod0,Kmod1,Kmod2,enable, reset对应;把芯片上定义的clk,fin,fout,se管脚分别连接到逻辑分析仪的LA7,LA6,LA5,LA4上,从而可以直接观察fin,fout和se信号之间的关系 32 变化。 下面是逻辑仪分析对几种不同的fin输入频率分析的结果。 当fin输入频率取为1khz时,可以看到波形图如下: 图4.3 全数字锁相环逻辑分析仪结果,fin=1khz 当fin输入频率取为10khz时,可以看到波形图如下: 图4.4 全数字锁相环逻辑分析仪结果,fin=10khz 33 当fin输入频率取为10khz时,可以看到波形图如下: 图4.5 全数字锁相环逻辑分析仪结果,fin=100khz 上面的仿真图分别是在不同的输入信号,就是被锁相信号fin的频率由1kHz到10kHz到100kHz,逻辑分析仪分析的结果。我们看上面的结果可以知道输出信号se是一系列的方波,说明了达到了相位锁定。因为锁相过程就是十几个fin周期,比较短,逻辑分析仪采样不到刚开始的数据,所以锁相的过程无法显示出来。从上面的结果可以看出设计的结果达到课题的设计指标。 第五章 历程总结 经过几个月的努力,毕业设计终于完成了。由于时间的原因,其中还存在许 34 多需要完善的地方。在毕业设计的过程中,学到了很多书本中学不到的知识。学会了如何合理的分工合作,如何发挥团队的优势。我想这些知识对我以后的工作会有很大的帮助。在工作中与人的交流合作不但可以提高工作的效率,加速项目的进展,也可以增长不少的知识,而这些知识往往是很实用的经验总结。比自己摸索总结来的更快。 现在回想起来做毕业设计的整个过程,真的觉得自己的水平提高了很大一截。从选题到定案,最终完成电路设计,每一步都充满着成就感。每克服一个问题都会让我激动不已。下面我就为我这段经历作一下总结: 1.一定要分析题目确定设计方案。在分析题目的过程中一定要多查资料多听取老师同学的意见,尽量站在别人的肩膀上少走弯路。对所选的题目也大概有了一些了解,下一步就是在这样一个基础上,综合已有的资料来更透彻的分析题目。 2.查资料很重要,可以为以后的工作储备知识,并且在查找资料的同时,要做好笔记。 3.学习的能力,要多看书,多学习,遇到问题的时候要懂得如何在最短的时间里找到解决的办法。 以上就是我的一点心得的总结,现实比想象的要困难得多。在整个电路设计过程中培养了我独立工作的能力,树立了对自己工作能力的信心,而且大大提高了动手的能力,使我充分体会到了在创造过程中的探索的艰难和成功的喜悦。 35 谢 辞 本论文的顺利完成,得到了众多方面的帮助和支持。 首先,我要衷心地感谢我的导师老师多年来对我的悉心指导和热情帮助。从课程学习、论文选题、开题报告、课题进行,论文撰写、修改,到最终论文完成的整个过程中,得到了韦老师热情的鼓励、富有启发性的建议和精心的指导,其中点点滴滴无不凝聚着韦老师的心血和汗水。在我本科毕业期间,韦老师为我提供了很好的学习环境和锻炼机会。再次,我对韦雪明老师表示衷心的感谢。 非常感谢我的同学和朋友们,感谢他们在我学习和生活中给予我的大力支持和无私鼓励,这段时光虽然短暂但却美好灿烂,我将永远难忘。 非常感谢我的父母、哥哥、弟弟及亲人,他们对我始终如一的理解、默默无闻的大力支持及无私的帮助和鼓励,使我得到不断前行的巨大动力,也使我在求学的道路上感到无比的坚强和自信。 非常感谢桂林电子科技大学多年的的培养,这段学习经历将使我终生受益。感谢曾经教育和帮助过我的所有老师。衷心感谢百忙之中抽出时间参加论文评阅和评议的各位专家学者,感谢他们为审阅本文所付出的辛勤劳动。 最后,再次怀着感恩的心感谢所有帮助过我的人! 参考文献 [3]北京理工大学ASIC 研究所.VHDL语言100例祥解[M].北京:清华大学出版社,2003. [4]边计年,薛宏熙.用VHDL设计电子线路[M].北京:清华大学出版社,2002. [5]董介春,李万玉.基于VHDL语言的数字锁相环的设计与实现[J].青岛大学学报,2004,19(2);84— 87. [6]单长虹,邓国杨,孟宪元.基于FPGA 的线性可变码位控制全数字锁相环的设计与仿真[J].计算机仿真,2003,20(2);111—113. [7] 龚建荣,李晓飞.利用 FPGA数字锁相及频率转换[J].南京邮电学院学 36 报,1998 ,18(4) :83— 86. [8] Floyd M.Gardner,姚剑清 译.锁相环技术[M]:第3 版.北京:人民邮电出版社,2007.11 [9]陈贵灿,程军,张瑞智 译.模拟CMOS集成电路设计[M].西安:西安交通大学出版社,2002.12 [10]冼进.Verilog HDL数字控制系统设计实例[M].北京:中国水利出版社,2007 [11]袁文波,张皓,唐振中.FPGA应用开发从实践到提高[M].北京:中国电力出版社,2007 极。 37
/
本文档为【数字锁相环】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索