基于FPGA_CPLD芯片的数字频率计设计

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第2卷第6期2002年11月

浙江树人大学学报

JOURNAL OF ZHEJIANG S HURE N UNIVERSITY

Vol.2,No.6Nov.2002

收稿日期:2002-01-06

作者简介:1.唐颖(1955-),女,上海人,副教授,电子设计自动化、单片机等教学与研究;2.阮文海(1955-),男,浙江温岭人,副教授.

基于FPGA/CPLD 芯片的数字频率计设计

唐 颖1 阮文海2

(1.浙江树人大学信息科技学院,浙江杭州 310015;2.浙江树人大学轻工与环保学院,浙江杭州 310015)

摘 要:详细论述了利用VHDL 硬件描述语言设计,并在EDA (电子设计自动化)工具的帮助下,用大规模可编程逻辑器件(FPGA/CPLD)实现数字频率计的设计原理及相关程序。特点是:无论底层还是顶层文件均用VHDL 语言编写,避免了用电路图形式设计时所引起的毛刺现象;改变了以往数字电路小规模多器件组合的设计方法,整个频率计设计在一块FPGA/CPLD 芯片上,与用其他方法做成的频率计相比,体积更小,性能更可靠。关键词:数字频率计;电子设计自动化;大规模可编程逻辑器中图分类号:TM935.13+3

文献标识码:A

文章编号:1671-2714(2002)06-0061-05

0 引 言

FPGA/CPLD 是一种新兴的高密度大规模可编程逻辑器件,它具有门阵列的高密度和PLD 器件的灵活性和易用性,目前已成为一类主要的可编程器件。可编程器件的最大特点是可通过软件编程对其器件的结构和工作方式进行重构,能随时进行设计调整而满足产品升级。使得硬件的设计可以如软件设计一样方便快捷,从而改变了传统数字系统及用单片机构成的数字系统的设计方法、设计过程及设计观念,使电子设计的技术操作和系统构成在整体上发生了质的飞跃。

采用FPGA/CPLD 可编程器件,可利用计算机软件的方式对目标器件进行设计,而以硬件的形式实现。既定的系统功能,在设计过程中,可根据需要随时改变器件的内部逻辑功能和管脚的信号方式,借助于大规模集成的FPGA/CPLD 和高效的设计软件,用户不仅可通过直接对芯片

结构的设计实行多种数字逻辑系统功能,而且由

于管脚定义的灵活性,大大减轻了电路图设计和电路板设计的工作量及难度,同时,这种基于可编程芯片的设计大大减少了系统芯片的数量,缩小了系统的体积,提高了系统的可靠性。

EDA(电子设计自动化)技术就是以计算机为工具,在EDA 软件平台上,对以硬件描述语言HDL 为系统逻辑描述手段完成的设计文件,自动的完成逻辑编译、逻辑化简、逻辑综合及优化、逻辑仿真,直至对特定目标芯片的适配编译、逻辑映射和编程下载等工作(本文选用的开发工具为Altera 公司的MAX+PLUS )。EDA 的仿真测试技术只需要通过计算机就能对所设计的电子系统从各种不同层次的系统性能特点完成一系列准确的测试与仿真操作,大大提高了大规模系统电子设计的自动化程度。设计者的工作仅限于利用软件方式,即利用硬件描述语言(如VHDL)来完成对系统硬件功能的描述,在EDA 工具的帮助下就可以得到最后的设计结果,这使得对整

个硬件系统的设计和修改过程如同完成软件设计一样方便、高效。

基于EDA 技术的设计方法为 自顶向下!设计,其步骤是采用可完全独立于目标器件芯片物理结构的硬件描述语言,在系统的基本功能或行为级上对设计的产品进行行为描述和定义,结合多层次的仿真技术,在确保设计的可行性与正确性的前提下,完成功能确认。然后利用EDA 工具的逻辑综合功能,把功能描述转换为某一具体目标芯片的网表文件,经编程器下载到可编程目标芯片中(如FPGA 芯片),使该芯片能够实现设计要求的功能。这样,一块芯片就是一个数字电路系统。使电路系统体积大大减小,可靠性得到提高。

1 频率计的工作原理

本文要设计一个8位十进制数字频率计,需要由四种器件来组成,即:测频控制信号发生器(ZPKZ H)、有时钟使能的十进制计数器(JSH10)、32位锁存器(SC Q32B)、7段显示译码器(LED7)。因为是8位十进制数字频率计,所以计数器JSH10需用8个,7段显示译码器LED7也需用8个。 频率测量的基本原理是计算每秒钟内待测

信号的脉冲个数。为此,测频控制信号发生器ZPKZ H 应设置一个控制信号时钟C LK,一个计数使能信号输出端JSEN 、一个与JSEN 输出信号反向的锁存输出信号SCXH 、和清零输出信号CLR_JSH 。如C LK 的输入频率为1HZ,则输出信号端JSEN 输出一个脉宽恰好为1秒的周期信号,可以作为闸门信号用。由它对频率计的每一个计数器的使能端进行同步控制。当JSE N 高电平时允许计数,低电平时停止计数,并保持所计的数。在停止计数期间,锁存信号SCXH 的上跳沿将计数器在前1秒钟的计数值锁存进32位锁存器SCQ32B,由7段译码器译出并稳定显示。设置锁存器的好处是,显示的数据稳定,不会由于周期性的清零信号而不断闪烁。锁存信号之后,清零信号CLR -JSH 对计数器进行清零。为下1秒钟的计数操作作准备。测频控制信号发生器的工作时序如图1

示。

图1 测频控制信号发生器的工作时序图

电路设计原理框图如图2所示

:

图2 电路设计原理框图

62

浙江树人大学学报2002年

2 用VHDL 语言设计频率计

VHDL(VHSIC Hardware Description Language)即超高速集成电路硬件描述语言。若按传统的设计方法,完成这个频率计需用上述的四种器件共计十几块芯片构成,不仅体积大,而且因外接引脚多,影响可靠性。而采用E DA 技术,整个设计分仅两步:第一步,在MAX+PLUS 开发工具中,先用VHDL 语言分别编写出以上四种器件的文本文件(称为底层文件),并将它们分别转换成相应的器件,然后分别进行时序仿真,使每个器件的时序仿真结果与设计要求一致;第二步,将这四种器件共十几块芯片按电路设计图连接起来,形成顶层文件后进行整个系统的综合,并将整个频率计作为一个器件进行时序仿真。下面分步给出设计过程。

2.1 频率计所需四种器件的VHDL 文件(频率

计的底层文件)及波形仿真结果2.1.1 带时钟使能十进制计数器JSH10

LIBRARY IEE E;

USE IEEE.STD -LOGIC -1164.AL L;

USE IEEE.STD -LOGIC -UNSIGNE D.ALL;ENTI TY JSH10IS

PORT (CL K:IN ST D -L OGIC;

C LR:I N ST

D -L OGI C;

E NA:I N STD -LOGIC;C Q:OUT S TD -L OGIC -VEC TOR(3DOW NTO 0);C ARRY -OUT:OUT S TD -L OGIC);END JS H10;

ARC HITE CT URE be ha v OF JSH10IS

SIGNAL C QI:STD -LOGI C -VEC TOR(3DOW NTO 0);BE GIN

P ROCE SS(CL K,CL R,ENA)B EGI N

IF CL R=∀1∀T HEN CQI #= 0000!;

EL SI F CL K ∀E VENT AND CL K=∀1∀T HEN

I F ENA=∀1∀T HEN I F CQI # 1001!THE N CQI #=C QI+1;ELSE CQI #= 0000!;E ND IF;

END IF;

END IF;END PROCESS;PROCESS(C QI)B EGIN

I F CQI= 1001!T HEN C ARRY -OUT #=∀1∀;ELSE CARRY -OUT #=∀0∀;END IF;

END PROCESS;CQ #=CQI;END be hav;

波形仿真见图3

图3 带时钟使能十进制计数器的波形仿真图

2.1.2 测频控制信号发生器ZPKZH

LIBR ARY IEE E;

USE IEE E.ST D -LOGIC -_1164.AL L;

USE IEE E.ST D -LOGIC -UNSIGNED.ALL ;ENTI TY Z PKZ H I S

PORT (CL K:IN ST D -L OGIC;

TST EN:OUT STD -L OGIC;C LR -C NT:O UT ST D -LOGIC;l oad:O UT ST D -LOGIC);

END Z PKZ H;

ARC HITE CT URE be hav OF Z P KZ H IS SIGNAL DI V2CL K:STD -LOGIC;BEGIN

P ROCESS(CL K)

BE GIN

IF CL K ∀EVENT AND C LK=∀1∀THE N DIV2C LK #=NOT DIV2C LK;

END IF;

END PROCESS;

PROCESS(C LK,DIV2CL K)B EGIN

I F CL K=∀0∀AND DIV2C LK=∀0∀THE N

CL R -JS H #=∀1∀;

ELSE CL R -JS H #=∀0∀;END IF;END PROCESS;

SC XH #=NOT DIV2C LK;JSE N #=DIV2C LK;END be hav;

波形仿真见图4

图4 测频控制信号发生器波形仿真图

63

第6期唐 颖,阮文海:基于FPGA/CPLD 芯片的数字频率计设计

相关文档
最新文档