当前位置:首页 > 工业控制 > 电子设计自动化
[导读]采用FPGA进行的数字电路设计具有更大的灵活性和通用性,已成为目前数字电路设计的主流方法之一。本文给出一种基于FPGA的数字钟设计方案。该方案采用VHDL设计底层模块,采用电路原理图设计顶层系统。整个系统在QuartusⅡ开发平台上完成设计、编译和仿真,并在FPGA硬件实验箱上进行测试。测试结果表明该设计方案切实可行。

  EDA(Electronic Design Automation)又名电子设计自动化,其基本特征是:以超大规模可编程逻辑器件,如FPGA,为设计载体,以硬件描述语言,如VHDL,为系统逻辑描述的主要表达方式,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计工具,完成电子系统的设计。使用EDA进行电子系统设计具有以下特点:1)用软件方式设计硬件;2)用软件方式设计的系统到硬件系统的转换是由有关开发软件自动完成的;3)设计过程中可用有关软件进行各种仿真;4)系统可现场编程,在线升级;5)整个系统可集成在一个芯片上,体积小、功耗低、可靠性高;6)设计的移植性好、效率高;7)适合分工设计、团队协作。因此,EDA技术是现代电子设计的发展趋势。

  1 数字钟的设计方案

  本文以FPGA平台为基础,采用VHDL语言在QuartusⅡ开发环境下设计开发多功能数字钟,具有计时、校时、蜂鸣闹铃的功能,具体功能为:1)能够对秒、分、小时进行正常计时,每日按24小时计时制,能用八个七段数码管进行友好界面的显示;2)具有复位功能,可以对当前时间进行清零;3)能够对电子时钟进行时分秒设置,方便在时钟跑错时进行校正;4)能够设定电子闹钟,在指定的时间驱动蜂鸣器等外设工作,引起使用者注意;5)电子钟具有溢出警报功能,当小时数超过24时,用一个LED小灯进行溢出警报说明,然后从00—00—00开始从新计时,此功能可以使电子钟很方便的扩展为万年历。

  我们采用自顶向下的层次化设计方法进行设计,其输入为状态选择信号(使用一个2位二进制表示选择,00正常运行或显示闹铃信息,01设置秒,10设置分,11设置时)、复位信号、闹铃开关(配合状态选择信号进行闹铃的设置)、1 Hz的计时时钟信号和1 kHz的扫描时钟信号;输出为时、分、秒数字显示(这里使用了8个共阴极的七段数码管作为显示输出)、闹钟蜂鸣、溢出信号。系统由状态选择模块、时、分、秒计时校时模块、显示与闹铃模块组成。数字钟的系统框图图如图1所示。

 2 核心模块设计

  2.1 状态选择模块设计

  该模块主要功能其实是对输入端的汇总,然后根据设置方法对不同的模块进行使能和参数传递,输出不同的信令signaling控制到各个模块,使每个模块工作在一个有序的状态。状态选择模块的电路描述如图2所示,具体说明如下:当输入一个脉冲到复位键reset时,数字钟启动并对时间清零。闹铃键clock=0时,模块根据状态选择键IS_SET输出不同秒、分、时信令到秒、分、时计时校时模块,控制这些模块的运行状态。此时,当IS_SET=00时为正常计时状态,秒、分、时的输出信令均为80;IS_SET=01时为秒校时状态,输出秒信令S_signaling为时间输入Time(显然该输出小于60),而输出分信令M_signaling和时信令H_signaling均为100,表示暂停分、时计时;IS_SET=10和11时则分别为分和时的校时状态。闹铃键clock=1时,当IS_SET=10和11时分别设置闹铃的分、时为时间输入Time并将设置的闹铃时间输出到“显示与闹铃模块”中保存;当IS_SET=00时,输出out_clock=1,控制显示与闹铃模块显示设置的闹铃时间。注意,当闹铃键clock=1时,计时正常运行,不论IS_SET如何设置,秒、分、时的输出信令均为80。

  2.2 计时校时模块设计

  该模块用于时、分、秒的计时校时,根据状态选择模块传输过来的信令signaling分别进行计时和校时。时、分、秒计时校时模块是一样的,只是分秒的进位为60,而小时的进位为24。我们在实体声明中的使用generic变量定义一个numn,该值设置进制为60或24,通过修改numn值就完成分、秒计时模块到小时计时模块的转换。模块的输入为扫描时钟、计时时钟和信令signaling,输出为输出时间高位time_h和输出时间低位time_l,以及进位clk_jin。

  计时校时模块的电路描述如图3所示,具体说明如下:每当扫描时钟上升沿时,启动进程,并根据信令signaling执行不同操作,1)当signaling

  2.3 显示、闹铃模块设计

  本模块是数字钟系统中的输出模块,用于输出LED数字显示和闹铃,其输入为扫描时钟,从计时校时模块输出的秒低位、秒高位、分低位、分高位、时低位、时高位信号和状态选择模块输出的闹铃显示Nao_En闹铃时间Nan_In。如果Nao_En=0则正常显示时间,当Nao_En=1时,在LED数码管上显示闹钟时间。当当前时间与保存的闹铃时间Nan_In相同时,蜂鸣器鸣响1 min。这里我们使用了八个共阴极的七段数码管显示时间,当选位信号sel=“01111111”时,第一个数码管显示数字,其他七位不显示。我们通过动态扫描,轮流显示秒低位sec_ge、秒高位sec_shi、分低位min_ge、分高位min_shi、时低位hour_ge、时高位hour_shi共6路信号,当扫描时钟sanc_clk频率高于28 Hz时,由于人眼的视觉残留效果,使得这6路信号看上去是同时显示在6个七段数码管上。显示、闹铃模块电路描述如图4所示。

  3 结束语

  在QuartusⅡ软件开发平台上,采用“自顶向下设计,自底向上实现”的方法完成了数字钟的设计与实现。其基本过程如下:1)完成数字钟的总体设计;2)完成各个底层模块的设计和波形仿真:底层模块采用VHDL语言编写,在编译和仿真成功后,对其进行封装;3)完成数字钟的顶层电路设计:根据数字钟的系统框图(图1)在QuartusⅡ中采用电路原理图方式,调用封装好的底层模块,完成顶层电路图的设计;4)对顶层电路进行编译和仿真,结果表明仿真波形符合设计要求;5)进行引脚分配,再编译后,将下载文件下载到FPGA开发板中进行验证和调试。测试结果表明数码管能正确的显示计时时间,能通过按键调整时间,能实现整点报时,完全符合设计要求。

 

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

4月24日消息,华为今日举办了2024华为智能汽车解决方案发布会。

关键字: 华为 12nm EDA 半导体

Bluespec支持加速器功能的RISC-V处理器将Achronix的FPGA转化为可编程SoC

关键字: RISC-V处理器 FPGA SoC

4月10日消息,日前边缘计算社区正式发布了“2024中国边缘计算企业20强榜单”,华为位居第一。

关键字: 华为 12nm EDA 半导体

为无处不在的端侧设备插上AI的翅膀,AMD发布第二代Versal™ 自适应 SoC

关键字: AMD FPGA 自适应SoC AI 边缘计算

4月8日消息,钱多到没地方花,对于大部分人或公司而言都是一个梦想。

关键字: 华为 12nm EDA 半导体

Pmod接口可以说是数字电路板的连接革命。随着科技的飞速发展,数字电路板间的通信与连接技术也在不断创新和进步。Pmod接口,作为一种新兴的数字接口标准,正逐渐成为数字电路板间通信的桥梁,为电子设备的连接和通信带来了革命性...

关键字: pmod接口 FPGA 数字电路板

4月2日消息,据上清所披露,华为投资控股有限公司发布关于分配股利的公告,拟向股东分配股利人民币770.95亿元。

关键字: 华为 12nm EDA 半导体

华为2023年年度报告显示,华为2023年实现全球销售收入7,042亿元人民币,同比增长9.64%,净利润为870亿元人民币,同比暴涨144.38%。

关键字: 华为 12nm EDA 半导体

3月29日消息,市场研究机构Counterpoint Research发布的报告显示,预计今年高端手机(600-799美元)出货量将同比增长17%,而这主要是靠苹果和华为的拉动。

关键字: 华为 12nm EDA 半导体

近日举办的GTC大会把人工智能/机器学习(AI/ML)领域中的算力比拼又带到了一个新的高度,这不只是说明了通用图形处理器(GPGPU)时代的来临,而是包括GPU、FPGA和NPU等一众数据处理加速器时代的来临,就像GPU...

关键字: FPGA AI 图形处理器
关闭
关闭