您所在的位置:e-works首页 > 产品创新数字化(PLM) > EDA

基于VHDL的时间时钟的设计与实现

发表时间:2008-7-19 刘泽良 来源:万方数据
关键字:VHDL 世界时钟 EDA
随着科技的迅猛发展,EDA技术越来越受到社会的重视,在电子产品上占有比重越来越大,成为电子产业发展的一个重要方向。从EDA发展出发,本文从一个简单的应用实例来说明其应用,基于VHDL语言设计了一个世界时钟系统,实现了时,分,秒的标准计时,调节及时区选择等功能。

引言

    本世界时钟系统可分为四个主要模块:综合计时电路,时区选择电路,调整控制电路和显示电路。其中综合计时电路用于完成各种计时的功能,时区选择电路主要完成对世界各地区时区选择功能,调整控制电路则用于调整计时系统和时区选择的有关参数,显示控制电路用于完成计时结果和时区的译码显示功能。

1.综合计时电路的设计

    根据系统的设计要求,综合计时电路可分为计秒电路,计分电路,计时电路等三个模块,这三个子模块必须能具有置数,计数和进位功能,设计思路如下:

    (1) 计秒电路:以直接输人或由分频器产生的秒脉冲作为计秒电路的计时时钟信号,待计数至印秒瞬间,进位,计分电路加1,而计秒电路则清零并重新计秒。

    (2) 计分电路,计时电路:其设计思想与计秒电路类似。

    (3) 由于以上3个部分功能相似,结构相似,所以可以采用同一种设计模块,然后通过端口映射的方法实现,大大减少程序代码的书写,便于阅读和调试。

    下面简单介绍CNT60计数模块的设计。

    CNT60计数模块是一个多用计时模块,它既可作为计秒电路调用,又可作为计分电路调用,计时电路调用。输入信号ID为置数控制信号,低电平有效;输入信号CLK为计数时钟信号;输入信号DATA为待预置数;输出信号NUM为计数结果;输出信号CO为计数进位信号。

2.时区选择电路的设计

    设计中一共选择了有代表性的8个时区,北京(0),纽约(1),伦敦(2),巴黎(3),莫斯科(4),曼谷(5),东京(6),悉尼(7),在显示时间时,默认显示北京时间(用代码0表示)。由于调时区采用的是“+"“一”两个按钮调节。所以需要对相邻时区进行换算。如下所示:

    纽约(1)=北京(0)-13小时

    伦敦(2)=纽约(1)+5小时

    巴黎(3)=伦 敦(2)+1小时

    莫斯科(4)=巴黎(3)+2小时

    曼谷(5)=莫斯科(4)+4小时

    东京(6)=曼谷(5)+2小时

    悉尼(7)=东京(6)+1小时

责任编辑:赵蔓
2