1、毕业论文 文献综述 电气工程及自动化 基于 CPLD 的分频器 摘 要 本设计是应用 CPLD 器件的特点和应用范围,利用 VHDL硬件描述语言以及原理图的输 入方式设计 关键词 VHDL 硬件描述语言; CPLD;数字逻辑电路设计; 偶数倍( 2N)分频; 奇 数倍( 2N+1)分频 CPLD 的分频器的现状和意义: 随着数字技术电力电子技术迅速发展,各种各样的电子产品在生活以及生产中发挥越来越重要的作用,已经成为人们不可或缺的一项重要技术。分频器是数字系统设计中的基本电路 ,它的应用领域十分广泛,在设计具体的数字电路时,可能需 要多种频率的时钟信号,但实际电路中往往只有一种单一频率的外部时
2、钟输入,此时,可以通过分频器 对某个给定的频率进行分频 ,以得到所需的频率 。常见的分频器有多种,比如:基于 FPGA的分频器,基于单片机的分频器,基于 CPLD的分频器等。这些都是目前数字电子设计中主流实用的分频器。 在电子设计技术领域可编程逻辑器件如 CPLD的广泛应用为数字系统的设计带来极大的灵活性 ,由于该器件可以通过软件编程而对其硬件的结构和工作方式进行重构 ,使得硬件的设计可以如同软件设计那样方便快捷。这一切极大地改变了传统的数字系统设计方法。 设计过程乃至设计观念在传统的数字系统设计中用户能够通过编程方式改变器件逻辑功能只有两种途径即微处理器的软件编程如单片机和特定器件的控制字配
3、置如 8255。 在传统的设计概念中器件引脚功能的硬件方式的任意确定是不可能的,而对于系统构成的设计过程只能对器件功能和电路板图分别进行设计和确定通过设计电路板来规划系统功能。在此期间大量的时间和精力花在元件选配和系统结构的可行性定位上。 但若采用可编程逻辑器件便可利用计算机软件的方式对目标器件进行设计,而以硬件的 形式实现即定的系统功能。在设计过程中设计者可根据需要随时 改变器件的内部逻辑功能和管脚的信号方式,借助于大规模集成的可编程逻辑器件和高效的设计软件用户不仅可通过直接对芯片结构的设计实现多种数字逻辑系统功能而且由于管脚定义的灵活性大大减轻了电路图设计和电路板设计的工作量和难度。同时这
4、种基于可编程逻辑器件芯片的设计大大减少了系统芯片的数量,缩小了系统的体积提高了系统的可靠性。 高集成度高速和高可靠是 FPGA/CPLD, 最明显的特点:时钟延迟可达纳秒级结合其并行工作方式在超高速应用领域和实时测控方面有非常广阔的应用前景。在高可靠应用领域,如果设计得当,将不会存在 类似于 MCU 的复位不可靠和 PC 可能跑飞等问题 。 CPLD/FPGA 的高可靠性还表现在几乎可将整个系统下载于同一芯片中实现所谓片上系统,从而大大缩小了体积易于管理和屏蔽。 由于 FPGA/CPLD 的集成规模非常大,可利用先进的 EDA 工具进行电子系统设计和产品开发。由于开发工具的通用性,设计语言的标
5、准化以及设计过程几乎与所用器件的硬件结构没有关系,所以设计成功的各类逻辑功能块软件有很好的兼容性和可移植性。它几乎可用于任何型号和规模的FPGA/CPLD 中。从而使得产品设计效率大幅度提高。可以在很短时间内 完成十分复杂的系统,设计这正是产品快速进入市场最宝贵的特征美国 TI公司认为一个 ASIC 80%的功能可用 IP 核等现成逻辑合成,而未来大系统的 CPLD/FPGA设计仅仅是各类再应用逻辑与 IP 核的拼装。其设计周期将更短与 ASIC 设计相比 FPGA/CPLD 显著的优势是开发周期短投资风险小。产品上市速度快市场适应能力强和硬件升级回旋余地大而且当产品定型和产量扩大后可将在生产
6、中达到充分检验的 VHDL 设计迅速实现 ASIC 投产。 基于 CPLD的分频电路设计: 起初设计的分频器由输入模块,脉冲信号模块,分频处 理模块,显示模块 4部分组成,输入模块主要有一个晶振加一个 555芯片组成,输出模块由芯片 74HC138驱动数码管显示。但是考虑到, 从 外部 任何一个用户 I/O都可以输入时钟但这会带来附加延时 ,导致输入频率上限降低且逻辑综合时比较耗资源。 分频是数字电子设计辅助的功能较多些,本身的输出大都没有什么意义,而使用的 Xilinx公司的 CPLD芯片 xc95108就带有这些功能,就不考虑此种方法来设计电路。所以我采用的主要方法和设计是 利用 V HD
7、L 硬件描述语言 ,通过 ISM开发平台 ,建立各个模块,然后加以整合, 使用 Xilinx公司的 CPLD,实现可预置任意系数奇偶分频,通过软件仿真图,在开发板上的数码管上实现频率的数字显示。 在设计中,常常会遇到任意整数分频 (偶数或奇数分频 ),还会遇到半整数分频、小数分频 ,以及具有时序关系的多路分频等。本次设计只做任意整数分频。 偶数倍( 2N)分频 使用一个模 N 计数器模块即可实现,即利用模 N 计数器从 0 开始对输入时钟的上升沿计数,计数值等于 N 时,输出时钟进行翻转,同时给计数器一个复位信号使之从 0 开始重新计数,以此循键盘 DSP CPLD 显示器 环即可。 奇 数倍
8、( 2N+1)分频 占空比为 X/(2N+1)或( 2N 1-X) /( 2N+1)分频,用模( 2N 1)计数器模块可以实现。取 0 至2N 之间某一数值 X(0X2N),当计数器时钟上升沿从 0 开始计数到 X 值时输出时钟翻转一次,在计数器继续计数达到 2N 1 时,输出时钟再次翻转并对计数器置一复位信号,使之从 0 开始重新计数,即可实现。 参考文献: 1 万杰 . CPLD技术及其应用 M. 西安电子科技大学出版社 , 1999. 2 禇 振勇 . FPGA 设计及应用 M. 西安电子科技大学出版社 , 2002. 3 罗朝霞 ,高书莉 . CPLD/FPGA设计及应用 M, 人民邮
9、电出版社 ,2007 4 刘爱荣 , 王振成 .EDA技术与 CPLD/FPGA开发应用简明教程 M,清华大学出版社 ,2007 5 郑燕 ,赫国强 ,党剑华 . 基于 VHDL语言与 Quartus 软件的可编程逻辑器件应用与开发M, 国防工业出版社 2007 6 梁淼 ,刘会军 . 数字系统电子自动化设计教程 M, 北京理工大学出版社 2008 7 俞一鸣 , 唐薇 , 陆晓鹏 . Altera可 编程逻辑器件的应用与设计 M, 机工业出版社 , 2007 8 黄志强 . Xilinx可编程逻辑器件的应用与设计 M,机械工业出版社 , 2007 9 姜咏江 . 基于 Quartus 的计算机核心设计 M,清华大学 ,2007 10 宋万杰, 罗丰 . CPLD 技术及其应用 M 西安电子科技大学出版社 , 1999 11 江翠云 .基于 CPLD和 VHDL的数字钟的设计 J, 硅谷 , 2010(2) 12 James R.Armstrong.VHDL Design Representation and Synthesis VHDL 设计、表示和综合 M.北京:机械工业出版社, 2003, 3. 13 王诚,薛小刚,钟信潮 .FPGA/CPLD 设计工具 XlinxISE 使用详解 M.北京:人民邮电出版社, 2005, 1