基于FPGA和单片机的多功能等精度频率计设计(共26页).doc

上传人:飞****2 文档编号:9091464 上传时间:2022-03-30 格式:DOC 页数:27 大小:1.47MB
返回 下载 相关 举报
基于FPGA和单片机的多功能等精度频率计设计(共26页).doc_第1页
第1页 / 共27页
基于FPGA和单片机的多功能等精度频率计设计(共26页).doc_第2页
第2页 / 共27页
点击查看更多>>
资源描述

《基于FPGA和单片机的多功能等精度频率计设计(共26页).doc》由会员分享,可在线阅读,更多相关《基于FPGA和单片机的多功能等精度频率计设计(共26页).doc(27页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上基于FPGA和单片机的多功能等精度频率计设计 摘 要基于传统测频原理的频率计的测量精度将随着被测信号频率的下降而降低,在实用中有很大的局限性,而等精度频率计不但有较高的测量精度,而且在整个测频区域内保持恒定的测试精度。运用等精度测量原理,结合单片机技术设计了一种数字频率计,由于采用了屏蔽驱动电路及数字均值滤波等技术措施,因而能在较宽定的频率范围和幅度范围内对频率,周期,脉宽,占空比等参数进行测量,并可通过调整闸门时间预置测量精度。选取的这种综合测量法作为数字频率计的测量算法,提出了基于FPGA 的数字频率计的设计方案。给出了该设计方案的实际测量效果,证明该设计方案切实

2、可行,能达到较高的频率测量精度。关键词 等精度测量,单片机,频率计,闸门时间,FPGA ABSTRACTAlong with is measured based on the traditional frequency measurement principle frequency meter measuring accuracy the signalling frequency the drop but to reduce, in is practical has the very big limitation, but and so on the precision frequency m

3、eter not only has teaches the high measuring accuracy, moreover maintains the constant test precision in the entire frequency measurement region. Using and so on the precision survey principle, unified the monolithic integrated circuit technical design one kind of numeral frequency meter, because ha

4、s used the shield actuation electric circuit and technical measure and so on digital average value filter, thus could in compared in the frequency range and the scope scope which the width decided to the frequency, the cycle, the pulse width, occupied parameter and so on spatial ratio carries on the

5、 survey, and might through the adjustment strobe time initialization measuring accuracy. Selection this kind of synthesis measured the mensuration took the digital frequency meter the survey algorithm, proposed based on the FPGA digital frequency meter design proposal. Has produced this design propo

6、sal actual survey effect, proved this design proposal is practical and feasible, can achieve the high frequency measurement precision Keywords Precision survey, microcontroller, frequency meter, strobe time,field programmable gate array1 绪论测量频率是电子测量技术中最常见的测量之一。不少物理量的测量, 如时间、速度等都涉及到或本身可转化为频率的测量。目前, 市

7、场上有各种多功能、高精度、高频率的数字频率计, 但价格不菲。而在实际工程中, 并不是对所有信号的频率测量都要求达到非常高的精度。目前, 有三种常用的数字频率的测量方法: 直接测量法(以下称M法) 、周期测量法(以下称T法) 和综合测量法(以下称M /T法) 。M法是在给定的闸门时间内测量被测信号的脉冲个数, 进行换算得出被测信号的频率。T法是通过测量被测信号一个周期时间计时信号的脉冲个数, 然后换算出被测信号的频率。这两种测量法的精度都与被测信号有关, 因而它们属于非等精度测量法。而M /T法它通过测量被测信号数个周期的时间, 然后换算得出被测信号的频率, 克服了测量精度对被测信号的依赖性。M

8、 /T法的核心思想是通过闸门信号与被测信号同步, 将闸门时间控制为被测信号周期长度的整数倍。测量时, 先打开预置闸门, 当检测到被测信号脉冲沿到达时, 标准信号时钟开始计数。预置闸门关闭时, 标准信号并不立即停止计数, 而是等检测到被测信号脉冲沿到达时才停止, 完成被测信号整数周期的测量。测量的实际闸门时间与预置闸门时间可能不完全相同, 但最大差值不超过被测信号的一个周期。专心-专注-专业2 系统设计方案2.1系统设计方案的选择根据频率计的设计要求,我们可将整个电路系统划分为几个模块,频率测量模块,周期测量模块,脉宽测量模块,和占空比测量模块。标准频率发生电路采用高频率稳定度和高精度的晶镇作为

9、标准频率发生器。如图所示。各模块的实现均有几种不同的设计方案。 图2.1 频率计组成模块框图2.1.1 频率测量模块直接测频法:把被测频率信号经脉冲整形电路处理后加到闸门的一个出入端,只有在闸门开通时间T(以秒计)内,被计数的脉冲送到十进制计数器进行计数;设计数器的值为N,则可得到被测信号频率为f=N/T,经分析,本测量在低频率的相对测量误差较大,即在低频段不能满足本设计的要求。组合测频法:这种方法可以在一定程度上弥补方法(1)中的不足,但是难以确定最佳分测点,且电路实现较复杂。倍频法:是指把频率测量范围分成多个频段,使用倍频技术,根据频段设置倍频系数,将经整形的低频信号进行倍频后在进行测量,

10、对高频段则直接进行测量。倍频法较难实现。等精度测频法:其实现方式可用图2.2来说明。图中,预置门控信号是宽度为TPR的一个脉冲,CNT1和CNT2是两个可控计数器。标准频率信号从CNT1的时钟输出端CLK输入,其频率为fs,经整形后的被测信号从CNT2的时钟输入端CLK输入,设其实际频率为fx;当预置门控信号为高时,经整形后的被测信号的上升沿通过D触发器的Q端同时启动计数器CNT1和CNT2。CNT1和CNT2分别对被测信号(频率为fs)和标准频率信号(频率为fx)同时计数。当预置门信号为低时,随后而至的被测信号的上升沿将两个计数器同时关闭。设在一次预置门时间Tpr内对被测信号的计数值为Nx,

11、对标准信号的计数值为Ns。则下式成立:fx/Nx=fs/Ns由此推得:fx=fs*Nx/NsDQCLKENCLKCNT1OUT1CLRCLRCLKCLKENCNT2OUT1预置门控信号标准频率信号被测信号清零信号图2.2 等精度测频法原理框图若所测频率值为fx,其真实值为fxe,标准频率为fs,一次测量中,由于fx计数的起停时间都是该信号的上跳沿触发的,因此在Tpr时间内对fx的计数Nx无误差,在此时间内的计数Ns最多相差一个脉冲,即fx/Nx=fs/Ns,则下式成立: fxe/Nx=fs/Ns+et 可分别推得 fx=fs*Nx/Ns fxe=fs*Nx/Ns+et 根据相对误差的公式有:f

12、xe/fxe=fxe-fx/fxe 经整理可得到:fxe/fxe=et/Ns因et1,故fxe/fxe1/Ns Ns=Tpr*fs根据以上分析,我们可知等精度测频法具有三个特点:1,相对测量误差与被测频率的高低无关;2,增大Tpr或fs可以增大Ns,减少测量误差,提高测量精度;3,测量精度与预置门宽度和标准频率有关,与被测信号的频率无关,在预置门和常规测频闸门时间相同而被测信号频率不同的情况下,等精度测量法的测量精度不变; 经过综合考虑,结合设计需求,选用第种方案,即用等精度测频法来实现本设计频率测量。2.1.2 周期测量模块直接周期测量法:用被测信号经放大整形后形成的方波信号直接控制计数门控

13、电路,使主门开放时间等于信号周期Tx,时标为Ts的脉冲在主门开放时间进入计数器。设在Tx期间计数值为N,可以根据以下公式来算得被测信号周期:Tx=N*Ts经误差分析,可得结论:用该测量法测量时,被测信号的频率越高,测量误差越大。等精度周期测量法:该方法在测量电路和测量精度上与等精度测量完全相同,只是在进行计算时公式不同,在周期1/T代换频率f即可,其计算公式为Tx=Ts*Ns/Nx从降低电路的复杂度及提高精度(特别是高频)上考虑,本设计拟采用方法测量被测信号的周期。2.1.3 脉宽测量模块在进行脉冲宽度测量时,首先经信号处理电路进行处理,限制只有信号的50%幅度及其以上部分才能输入数字测量部分

14、。脉冲边沿被处理得非常陡峭,然后送入测量计数器进行测量。测量电路在检测到脉冲信号的上升沿时打开计数器,在下降沿是关闭计数器,设脉冲宽度为Twx,计算公式为:Twx=Nx/fs。3 系统总体设计方案等精度数字频率计涉及到的计算包括加,减,乘,除,耗用的资源比较大,用一般中小规模CPLD/FPGA芯片难以实现。因此,我们选择单片机和CPLD/FPGA的结合来实现。电路系统原理框图如图所示,其中单片机完成整个测量电路的测试控制,数据处理和显示输出;CPLD/FPGA完成各种测试功能;键盘信号由AT89C51单片机进行处理,它从CPLD/FPGA读回计数数据并进行运算,向显示电路输出测量结果;显示器电

15、路采用七段LED动态显示,由8个芯片74LS164分别驱动数码管。系统的基本工作方式如下:P0是单片机与FPGA的数据传送通信口,P1口用于键盘扫描,实现各测试功能的转换;P2口为双向控制口。P3口为LED的串行显示控制口;系统设置5个功能键:占空比,脉宽,周期,频率,和复位。7个LED数码管组成测量数据显示器,另一个独立的数码管用于状态显示。BCLK 为测频标准频率为50MHz 信号输入端,由晶体震荡源电路提供。待测信号经放大整形后输入CPLD/FPGA 的TCL4 CPLD/FPGA测频专用模块的VHDL程序设计4.1测频模块逻辑结构利用VHDL程序设计的测频模块逻辑结构如图所示,其中有关

16、的接口信号规定如下:TP(P2.7):TF=0 时等精度测频;TF=1 时测脉宽; CLR/TRIG(P2.6):当TF=0 时系统全清零功能;当TF=1 时CLRTRIG 的上跳沿将启动CNT2 ,进行脉宽测试计数; ENDD (P2.4):脉宽计数结束状态信号,ENDD=1计数结束;CHOICE(P3.2):自校/测频选择,CHOICE=1 测频;CHOICE=0自校; START(P2.5):当TF=0 时,作为预置门闸,门宽可通过键盘由单片机控制,START=1时预置门开;当TF=1时,START有第二功能,此时,当START=0时测负脉宽,当START=1时测正脉宽。利用此功能可分别

17、获得脉宽和占空比数据。 EEDN(P2.3):等精度测频计数结束状态信号,EEND=0时计数结束。 SELP2.2(P2.2,P2.1,P2.0):计数值读出选通控制;当SEL2.0=“000”,“001”, “010”. “111”时,将CNT1,CNT2的计数值分8次,每次读出8位,并传达到单片机的P0口。图4.1 测频模块逻辑图4.2 各模块功能和工作步骤如下:4.2.1 测频/测周期的实现被测信号脉冲从CONTRL模块的FIN端输入,标准频率信号从CONTRL 的FSD端输入,CONTRL的CLR是此模块电路的工作初始化信号输入端。在进行频率或周期测量时,其工作步骤如下: 令TF=0,

18、选择等精度测频,然后再CONTRL的CLR端加一正脉冲信号以完成测试电路状态的初始化。 由预置门控信号将CONTRL的START端置高电平,预置门开始定时,此时由被测信号的上沿打开计数器CNT1进行计数,同时使标准频率信号进入计数器CNT2。 预置门定时结束信号把CONTRL的START端置为低电平(由单片机来完成),在被测信号的下一次脉冲的上沿到来时,CNT1停止计数,同时关断CNT2对FS的计数。 计数结束后,CONTRL的EEND端将输出低电平来指示测量计数结束,单片机得到此信号后,即可利用ADRC(P2.2),ADRB(P2.1),ADRA(P2.0)分别读回CNT1 和CNT2的计数

19、值,并根据精度测量公式进行运算,计算出被测信号的频率或周期值。4.2.2 控制部件设计如图所示,当D触发器的输入端START为高电平时,若FIN端来一个上升沿,则Q端变为高电平,导通FIN-CLK1和FSD-CLK2,同时EEND被置为高电平作为标志;当D触发器的输入端START为低电平时,若FIN端输入一个脉冲上沿,则FIN-CLK1与FSD-CLK2的信号通道被切断。图4.2 测频与测周期控制部分电路计数部件设计 图中的计数器CNT1/CNT2是32位二进制计数器,通过DSEL模块的控制,单片机可分4次将其32位数据全部读数。4.2.3 脉冲宽度测量和占空比测量模块设计 根据上述脉宽测量原

20、理,设计如图(CONTRL)所示的电路原理示意图。该信号的上沿和下沿信号对应于未经处理时的被测信号50%幅度时的上沿和下沿.被测信号从FIN端输入,CLR为初始化信号START为工作使能信号.CONTRL2模块的PUL端与GATE的输入端PUL连接.图4.3 脉冲宽度测量原理图 测量脉冲宽度的工作步骤如下: 向CONTRL的CLR端送一个脉冲以便进行电路的工作状态初始化. 将GATE的CNL端置高电平,表示开始脉冲宽度测量,这时CNT2的输入信号为FSD. 在被测脉冲的上沿到来时,CONTRL2的PUL端输出高电平,标准频率信号进入计数器CNT2. 在被测脉冲的下沿到来时,CONTRL2的PU

21、L端输出低电平,计数器CNT2被关断. 由单片机读出计数器CNT2的结果,并通过上述测量原理公式计算出脉冲宽度.CONTRL2子模块的主要特点是:电路的设计保证了只有CONTRL2被初始化后才能工作,否则PUL输出始终为零.只有在先检测到上沿后PUL才为高电平,然后在检测到下沿时,PUL输出为低电平:ENDD输出高电平以便通知单片机测量计数已经结束:如果先检测到下沿,PUL并无变化;在检测到上沿并紧接一个下沿后,CONTRL2不再发生变化直到下一个初始化信号到来.占空比的测量方法是通过测量脉冲宽度记录CNT2的计数值N1,然后将输入信号反相,再测量脉冲宽度,没得CNT2计数值N2则可以计算出:

22、占空比=N1/(N1+N2)*100%4.2.4 电路显示模块系统硬件电路中,单片机MCU与FPGA进行数据交换占用了P0口、P1口和P3口,因此数据显示电路的设计采用静态显示的方式,显示电路由8个共阳极七段数码管和8片1位串入8位并出的74LS164芯片组成。 图4.4 显示电路图这种显示方式不仅占用单片机端口少,而且充分利用了单片机的资源,容易掌握其编码规律,简化了软件编程,在实验过程中,也体现出较高的可靠性。数据显示电路如图4.4所示。74LS164是一种8位高速串入/并出的移位寄存器,随着时钟信号的高低变化,串行数据通过一个2输入与门同步的送入,使用独立于时钟的主控复位端让寄存器的输出

23、端变为低电平,并且采用肖特基钳位电路以达到高速运行的目的。并且还具有以下的特点:典型的35MHZ移位频率;异步主控复位;门控串行输入;同步数据传输;采用钳位二极管限制高速的终端;静电放电值大于3500V。 在本系统中,74LS164的连接方式为:74LS164的输出Q0Q7分别接LED数码管的dp、g、f、e、d、c、b、a,并且Q7连接下一个74LS164的A,B端,时钟CLK连接单片机的TXD端,第一片芯片的AB端连接单片机的RXD端,74LS164芯片的主控复位端接高电平VCC。在这种状态下,数码管的编码如下表所示。 4.2.5 数码管的编码表显示数码段 码显示数码段 码00c0h880

24、h10f9h990h20a4hA88h30b0hB83h499hC0c6h592hD0a1h682hE86h70f8hF8eh5 单片机控制与运算程序的设计5.1 AT89C51RC单片机简介AT89C5lRC是在AT89C52基础上开发的新型高档单片机。它的主要特性是:片内含有 32 KB的 Flash程序存储器,擦写周期为 1000次;片内数据存储器内含512字节的RAM;具有可编程32线I/O口(P0,P1,P2和P3口);具有3个可编程定时器T0,T1和T2;中断系统是具有8个中断源、6个中断矢量、2级中断优先权的中断结构;具有一个全双工 UART串行口;低功耗工作方式为空闲模式和掉电

25、模式;具有双数据指针DPTR0和DPTR1;具有3级程序锁定位;具有硬件看门狗定时器WDT;AT89C51RC工作电源为4.05.5V(AT89LV51RC为2.75.5V);AT89C51RC最高工作频率为33MHZ(AT89LV51RC为12MHZ);具有断电标志POF与AT89C52相比,AT89C5lRC具有如下特点:程序存储器由 8 KB增加到32 KB;片内数据存储器由256字节增加到512字节;数据指针由1个增加到2个;增加了看门狗定时器,CPU在执行程序过程中,由于瞬时的干扰使程序陷入死循环环状态,WDT(Watchdog Timer)是使CPU摆脱这种困境而自动恢复的一种方法

26、;退出掉电方式由单纯硬件复位方式增加到硬件复位和中断两种方式;新增加了断电标志POF89C51RC的内部框图 图5.1 89C51RC的内部框图 引脚排列及功能 AT89C51RC有3种封装形式:PDIPPLCC和TQFPPDIP封装的引脚排列如图所示。图5.2 AT89C51RC引脚图口线 P0口8位、漏极开路的双向 1O口。 当使用片外存储器及外扩 IO口时,P0口作为低字节地址数据复用线。在编程时,P0口可用于接收指令代码宇节;在程序校验时,P0口可输出指令字节(这时需要加外部上拉电阻)。 P0口也可作通用I/O口使用但需加上拉电阻变为准双向口。当作为普通输入时,应将 输出锁存器置1 P

27、O口可驱动8个 TTL负载 P1口8位、准双向IO口,具有内部上拉电阻。P1口是为用户准备的 1O双向口。在编程和校验时,可用做输入低8位地址。用做输入时,应先将输出锁存器置1 P1口可驱动4个TTL负载。P1.0 P1.1替代功能引脚替代功能说明P1.0T2定时器2的外部事件输入端;可编脉冲输出端P1.1T2EX定时器 2的捕捉重装触发器输入端定时器2的计数方向控制端P2口8位、准双向 1O口具有内部上位电阻 当使用片外存储器或外扩1O口时P2口输出高8位地址。在编程校验时P2口可接收高字节地址和某些控制信号。 P2口也可作普通IO口使用。用做输入时,应先将输出锁存器置1 P2口可驱动4个T

28、TL负载。 P3口8位、准双向 1O口,具有内部上拉电阻。 P3口可作为普通1O口。用做输入时,应先将输出锁存器置 1在编程校验时P3口接收某些控制信号。它可驱动4个TTL负载。P3口还提供各种替代功能。P3口替代功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2(外部中断0)P3.3(外部中断1)P3.4T0(记时器0外部输入)P3.5T1(记时器1外部输入)P3.6(外部数据存储器写选通)P3.7(外部数据存储器读选通)2控制信号线 RST复位输入信号,高电平有效。在振荡器稳定工作时,在RST脚施加两个机器周期(即24个晶振周期)以上的高电平,将器件复位。 VPP外部程序

29、存惜器访问允许信号EA(External Access Enable)。 当信号接地时,对ROM的读操作限定在外部程序存储器,地址为0000HFFFFH;当接地时,对ROM的读操作从内部程序存储器开始,并可延续至外部程序存储器。 在编程时,该引脚可接编程电压(AT89C51的VPP为5V或12V;AT89LV51的VPP为12 V)。在编程校验时,该引脚可接VCC。 片外程序存储器读选通信号用PSEN(Program Store Enable),低电平有效。 在片外程序存储器取指期间,当有效时,程序存储器的内容被送至 PO口(数据总线);在访问外部RAM时,无效。 AIE/低字节地址锁存信号

30、AlE(Address latch Enable)。 在系统扩展时,AlE的下降沿将PO口输出的低8位地址锁存在外接的地址锁存器中,以实现低字节地址和数据的分时传送。此外,ALE端连续输出正脉冲频率为晶振频率的16,可用做外部定时脉冲使用。但要注意,每次访问外RAM时要丢失一个ALE脉冲。在编程期间,该引脚输入编程脉冲()。3电原线 VCC电源电压输入。GND接地。4.外部晶振引线 XTAL1片内振荡器反相放大器和时钟发生线路的输入端。使用片内振荡器时,连接外部石英晶体和微调电容。 XTAL2片内振荡器反相放大器的输出端。当使用片内振荡器时,外接石英晶体 和微调电容。 当使用外部振荡器时,引脚

31、XTAL1接收外振荡器信号,XTAIL2悬空。 AT89C5lRC有两种低功耗节电模式:空闲模式和掉电模式。1空闲模式 应用软件使PCON中的IDLl,系统便可进入空闲模式由于PCON不可位寻址,进入空闲模式可采用如下指令: MOV A,PCON SETB ACC,0 ;IDL=l MOV PCON,A系统进入空闲模式后,CPU处于休眠状态振荡器和片内外围单元(中断系统、定时器、IO口、串行口)仍然有效片内RAM和SFR中的内容保留不变。退出空闲模式有两种方法:任何一个有效的中断和便件复位退出空闲模式后,IDL由片内硬件自动清0。2掉电模式 执行一条指令,使PD=1,系统便进入掉电模式。进入掉

32、电模式后,振荡器停止工作掉电模式下片内RAM和SPR中的内容保持不变退出掉电模式有两种方法:硬件复位和允许的外部低电平中断(INT0和INT1)。硬件复位过程不改变片内RAM的内容,但要重新设量SFR的内容仅当VCC恢复到正常操作值,且振荡器达到稳定后,复位有效复位退出掉电模式时,系统首先从断点处恢复执行程序,直到复位控制逻辑有效。这个过程长达2个机器周期。在复位有效之前,片内有硬件控制电路防止写入片内RAM,即在复位过渡期间片内RAM内容受到保护,但并不保护SFR的内容。因此,在进入掉电模式指令(使PD=l的指令)的后面,不要紧随写入1O端口或写入片外RAM的指令。主要单片机控制与运算程序流

33、程图:图5.3 测周期子程序流程图 图5.4 主程序流程图图5.5 显示子程序流程图图5.6 频率,周期计数子程序流程图图5.7 测频率子程序流程图5.2 软件调试系统支持CPLD和FPGA设计的软件有很多种,这里我使用由ALTERA公司开发的MAX+PLUSII工具软件,该软件方便易用,功能全面,能满足用户各种各样的设计需要,概括起来MAX+PLUSII开发系统具有如下几个特点。1结构无关 MAX+PLUSII支持ALTERA公司的CLASSIC,ACEX1K,MAX3000,MAX5000,MAX7000,MAX9000,FLEX6000,FLEX8000和FLEX10K等系列可编程逻辑器

34、件,门数为600250 000门,提供了业界真正与结构无关的可编程逻辑设计环境。MAX+PLUSII的编译器还提供了强大的逻辑综合与优化功能以减轻用户的设计负担。2集成化的界面 MAX+PLUSII提供了设计输入,设计处理和仿真校验等全集成化的开发工具,可以加快动态调试,缩短开发周期。3模块组合式设计工具 设计者可从各种设计输入,设计处理和设计校验选项中进行选择,从而使设计环境用户化。需要时,还可以保留初始的工具,并增添新的性能。由于MAX+PLUSII支持各种器件系列,设计者用此工具即可支持新结构。4支持多种HDL语言 MAX+PLUSII支持多种流行的HDL描述语言,包括VHDL,VERI

35、LOG HDL和AHDL。5良好的开放性和数据互换性 MAX+PLUSII可与其他工业标准的设计输入,综合与校验工具连接。它与EDA工具的接口符合EDIF200和209标准,并提供了参数化的模块库(LPM)。设计者可以使用ALTERA或其他标准的EDA设计输入工具去建立逻辑设计,使用MAX+PLUSII COMPLIER对设计进行编译和综合,然后进行仿真,也可使用其他EDA工具来仿真。6基于MAX+PLUSII的设计使用MAX+PLUSII软件进行设计和开发,主要包括以下几个步骤:设计输入:可以采用原理图输入,HDL语言描述,EDIF网表输入及波形输入等几种方式。编译:先根据设计要求设定编译参

36、数和编译策略,如器件的选择,逻辑综合方式的选择等;然后根据设定的参数和策略对设计项目进行网表提取,逻辑综合和器件适配,并产生报告文件,延时信息文件及编程文件,供分析,仿真和编程使用。1 仿真:仿真包括功能仿真,时序仿真和定时分析,可以利用软件的仿真功能来验证设计项目的逻辑功能是否正确。2 编程与验证:用经过仿真确认后的编程文件通过编程电缆配置PLD,加入实际激励,检查是否完成预定功能。在设计过程中,如果出现错误,则需要重新回到设计输入阶段,改正错误或调整电路后重复上述过程。5.3 系统的硬件验证 单元电路的调试 FPGA/CPLD测频专用电路的调试:使用MAX+plus 10.0,计算机,GW

37、48-CK EDA实验开发系统等软件和设备,对FPGA/CPLD测控电路进行VHDL程序的调试,有关仿真以及编程下载,硬件测试等。统的联合调试 在各个单元电路调试好后即可进行系统联调。统的硬件验证系统联合调试成功后,可将单片机程序通过编程器固化到单片机中并插入EDA实验开发系统中的单片机插座上,将VHDL设计经过综合适配后的网表对CPLD/FPGA进行编程下载,输入相关的信号,并进行有关性能指标的测试,直到满足系统的设计要求为止。本设计的具体硬件验证说明如下:本系统的显示电路共设置了8个数码管,前7个为数字显示,另一个是测量状态显示。(1) 当显示为P. 时,是复位状态,此时数码管全熄。(2)

38、 当显示为F时,是频率测量状态,单位Hz,如果前面出现两个小数点,则第二个小数点表示MHz。(3) 当显示为P时,是周期测量状态,单位s。(4) 当显示为A时,是脉宽测量状态,单位s。(5) 当显示为B时,是占空比测量状态,单位%。 5.4 设计技巧分析(1) 在系统总体设计方面,充分利用单片机和FPGA/CPLD各自的优势,将测控的主体分配给FPGA/CPLD,既可满足频测对速度方面的要求和多I/O口的要求,同时利用单片机具有良好的人机接口和控制运算的功能,可以较简单地实现键盘和显示控制以及数据处理运算。(2) 在频率测量方面,由于采用了等精度测频法,使该系统具有以下特点: 相对测量误差与被

39、测频率的高低无关; 增大Tpr或fs可以增大Ns,减少测量误差,提高测量精度; 测量精度与预置门宽度和标准频率有关,与被测信号的频率无关,预置门和常规测频闸门时间相同而被测信号频率不同的情况下,等精度测量法的测量精度不变。(3) 在显示方面,首先采用串行动态显示,节约了I/O口,简化了驱动电路的设计。5.5系统扩展思路 (1) 设计并制作系统工作的外围电路:系统用方波信号源、直流工作电源。(2) 系统联合调试成功后,可将单片机程序通过编程器固化到单片机中,将VHDL设计经过综合适配后的网表对CPLD/FPGA进行编程下载,将整个系统的外围电路设计制作印刷电路板。6 FPGA简介 FPGA 简介

40、FPGA是英文Field Programmable Gate Array的缩写,即现场可编程门阵列,它是在PAL、GAL、EPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个新概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。FPGA的基本特点主要有: 1

41、)采用FPGA设计ASIC电路,用户不需要投片生产,就能得到合用的芯片。2)FPGA可做其它全定制或半定制ASIC电路的中试样片。3)FPGA内部有丰富的触发器和IO引脚。4)FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。5)FPGA采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容。可以说,FPGA芯片是小批量系统提高系统集成度、可*性的最佳选择之一。目前FPGA的品种很多,有XILINX的XC系列、TI公司的TPC系列、ALTERA公司的FIEX系列等。FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。用户

42、可以根据不同的配置模式,采用不同的编程方式。加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM编程器即可。当需要修改FPGA功能时,只需换一片EPROM即可。这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。因此,FPGA的使用非常灵活。FPGA有多种配置模式:并行主模式为一片FPGA加一片EPROM的方式;主从模式可以支持一片PROM编程多片FPGA;串行模式可以采用串行PROM编程FPGA;

43、外设模式可以将FPGA作为微处理器的外设,由微处理器对其编程。FPGA现场可编程门阵列技术是二十年前出现,而在近几年快速发展的可编程逻辑器件技术。这种基于EDA技术的芯片正在成为电子系统设计的主流。大规模可编程逻辑器件FPGA是当今应用最广泛的可编程专用集成电路(ASIC)。设计人员利用它可以在办公室或实验室里设计出所需的专用集成电路,从而大大缩短了产品上市时间,降低了开发成本。此外,FPGA还具有静态可重复编程和动态在系统重构的特性,使得硬件的功能可以像软件一样通过编程来修改。因此,FPGA技术的应用前景非常广阔。 PLD是可编程逻辑器件(Programable Logic Device)的

44、简称,FPGA是现场可编程门阵列(Field Programable Gate Array)的简称,两者的功能基本相同,只是实现原理略有不同,所以我们有时可以忽略这两者的区别,统称为可编程逻辑器件或PLD/FPGA。 PLD是电子设计领域中最具活力和发展前途的一项技术,它的影响丝毫不亚于70年代单片机的发明和使用。 PLD能做什么呢?可以毫不夸张的讲,PLD能完成任何数字器件的功能,上至高性能CPU,下至简单的74电路,都可以用PLD来实现。PLD如同一张白纸或是一堆积木,工程师可以通过传统的原理图输入法,或是硬件描述语言自由的设计一个数字系统。通过软件仿真,我们可以事先验证设计的正确性。在P

45、CB完成以后,还可以利用PLD的在线修改能力,随时修改设计而不必改动硬件电路。使用PLD来开发数字电路,可以大大缩短设计时间,减少PCB面积,提高系统可靠性。 PLD的这些优点使得PLD技术在90年代以后得到飞速的发展,同时也大大推动了EDA软件和硬件描述语言(HDL)的进步。结论通过对等精度数字频率计的学习和掌握,对本专业的知识有了更好的认识。运用单片机AT89C51和FPGA的结合,制作完成了频率计。在实验过程中,自制了显示电路和按键等,力求精度更高,我们进行了多组数据的分析和总结,最终得到了相对满意的效果。但由于在编写程序的过程中,对数据的设置处理精度不高,最后显示得结果没有小数位的显示,而对于低频的显示结果误差就相对较大。如果能有更准确地显示结果,本设计效果更佳。在VHDL程序写入FPGA的过程很顺利,能从试验箱上的显示中算出测频结果。在单片机程序的读入过程中,遇到问题后也得到了解决。此设计中运用到FPGA和单片机控制,在此平台上的运用,使得设计顺利完成。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 教育教学

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁