verilog数字系统设计教程习题答案

verilog数字系统设计教程习题答案
verilog数字系统设计教程习题答案

verilog 数字系统设计教程习题答案第二章

HDL 既是一种行为描述语言,也是一种结构描述语言。如果按照一定的规则和风格编写代码,就可以将功能行为模块通过工具自动转化为门级互联的结构模块。这意味着利用Verilog 语言所提供的功能,就可以构造一个模块间的清晰结构来描述复杂的大型设计,并对所需的逻辑电路进行严格的设计。

2.模块的基本结构由关键词module和endmodule构成。

3.一个复杂电路系统的完整Verilog HDL 模型是由若干个Verilog

HDL模块构成的,每一个模块又可以由若干个子模块构成。其中有些模块需要综合成具体电路,而有些模块只是与用户所设计的模块交互的现存电路或激励信号源。利用Verilog HDL语言结构所提供的这种功能就可以构造一个模块间的清晰层次结构来描述极其复杂的大型设计,并对所作设计的逻辑电路进行严格的验证。

HDL和VHDL乍为描述硬件电路设计的语言,其共同的特点在于:能形式化地抽象表示电路的结构和行为、支持逻辑设计中层次与领域的描述、可借用高级语言的精巧结构来简化电路的描述、具有电路仿真与验证机制以保证设计的正确性、支持电路描述由高层到低层的综合转换、硬件描述与实现工艺无关(有关工艺参数可通过语言提供的属性包括进去)、便于文档管理、易于理解和设计重用。

5.不是

6.将用行为和功能层次表达的电子系统转换为低层次的便于具体实现的模块组合装配的过程。

7.综合工具可以把HDL变成门级网表。这方面Synopsys工具占有较大的优势,它的Design Compile 是作为一个综合的工业标准,它还有另外一个产品叫Behavior Compiler ,可以提供更高级的综合。

另外最近美国又出了一个软件叫Ambit ,据说比Synopsys 的软件更有效,可以综合50万门的电路,速度更快。今年初Ambit 被Cadence 公司收购,为此Cade nee放弃了它原来的综合软件Syn ergy。随着FPGA 设计的规模越来越大,各EDA公司又开发了用于FPGA设计的综合软件,比较有名的有:Sy nopsys 的FPGAExpress,Cade nee 的Syn plity ,Mentor的Leonardo,这三家的FPGA综合软件占了市场的绝大部分。

8.整个综合过程就是将设计者在EDA平台上编辑输入的HDL文本、原理图或状态图形描述,依据给定的硬件结构组件和约束控制条件

进行编译、优化、转换和综合,最终获得门级电路甚至更底层的电路描述网表文件。用于适配,适配将由综合器产生的网表文件配置于指定的目标器件中,使之产生最终的下载文件,如JEDEC Jam格式的

文件

9.在FPGA设计中,仿真一般分为功能仿真(前仿真)和时序仿真(后仿真)。功能仿真又叫逻辑仿真,是指在不考虑器件延时和布线延时的理想情况下对源代码进行逻辑功能的验证;而时序仿真是在布局布线后进行,它与

特定的器件有关,又包含了器件和布线的延时信息,主要验证程序在目标器件中的时序关系。在有些开发环境中,如

Xilinx ISE 中,除了上述的两种基本仿真外,还包括综合后仿真,转换(post-translate )仿真,映射后(post-map )仿真等,这样做完每一步都可进行仿真验证,从而保证设计的正确性。

10.仿真的三个阶段:

(1)行为仿真:目的是验证系统的数学模型和行为是否正确,对系统的描述的抽象程度较高。在行为仿真时,VHDL的语法语句都

可以执行。

(2)RTL仿真:目的是使被仿真模块符合逻辑综合工具的要求,使其能生成门级逻辑电路。在RTL仿真时,不能使用VHDL中一些不可综合和难以综合的语句和数据类型。该级仿真不考虑惯性延时,但要仿真传输延时。

(3)门级仿真:门级电路的仿真主要是验证系统的工作速度,惯性延时仅仅是仿真的时候有用在综合的时候将被忽略。

0声明

模块的端口声明了模块的输入输出端口,其格式如下:

Module模块名(端口1,端口2,端口3,端口4,…);

I/O 说明的格式如下:

数字系统设计与verilog HDL课程设计

数字系统设计与verilog HDL课程设计 设计题目:实用多功能数字钟 专业:电子信息科学与技术 班级:0313410 学号:031341025 姓名:杨存智 指导老师:黄双林

摘要 本课程设计利用QuartusII软件Verilog VHDL语言的基本运用设计一个多功能数字钟,经分析采用模块化设计方法,分别是顶层模块、alarm、alarm_time、counter_time、clk50mto1、led、switch、bitel、adder、sound_ddd、sound_ddd_du模块,再进行试验设计和软件仿真调试,分别实现时分秒计时、闹钟闹铃、时分秒手动校时、时分秒清零,时间保持和整点报时等多种基本功能。 单个模块调试达到预期目标,再将整体模块进行试验设计和软件仿真调试,已完全达到分块模式设计功能,并达到设计目标要求。 关键字:多功能数字钟、Verilog、模块、调试、仿真、功能

目录 1.课程设计的目的及任务............................................................. 错误!未定义书签。 1.1 课程设计的目的 (3) 1.2 课程设计的任务与要求 (4) 2.课程设计思路及其原理 (4) 3.QuartusII软件的应用 (5) 3.1工程建立及存盘 (5) 3.2工程项目的编译 (5) 3.3时序仿真 (6) 4.分模块设计、调试、仿真与结果分析 (7) 4.1 clk50mto1时钟分频模块 (7) 4.2 adder加法器模块 (7) 4.3 hexcounter16 进制计数器模块 (7) 4.4 counter_time 计时模块 (8) 4.5 alarm闹铃模块 (8) 4.6 sound_ddd嘀嘀嘀闹铃声模块 (9) 4.7 sound_ddd_du嘀嘀嘀—嘟声音模块 (9) 4.8 alarm_time闹钟时间设定模块 (10) 4.9 bitsel将输出解码成时分秒选择模块 (10) 4.10 switch去抖模块 (11) 4.11 led译码显示模块 (11) 4.12 clock顶层模块 (12) 5.实验总结 (13) 5.1调试中遇到的问题及解决的方法 (13) 5.2实验中积累的经验 (14) 5.3心得体会 (14) 6.参考文献 (14) 1.1 课程设计的目的 通过课程设计的锻炼,要求学生掌握V erilog HDL语言的一般设计方法,掌握VerilogHDL语言的基本运用,具备初步的独立设计能力,提高综合运用所学的理论知识独立分析和解决问题的能力,基于实践、源于实践,实践出真知,实践检验真理,培养学生的

verilog数字系统设计教程习题答案

verilog 数字系统设计教程习题答案第二章 HDL 既是一种行为描述语言,也是一种结构描述语言。如果按照一定的规则和风格编写代码,就可以将功能行为模块通过工具自动转化为门级互联的结构模块。这意味着利用Verilog 语言所提供的功能,就可以构造一个模块间的清晰结构来描述复杂的大型设计,并对所需的逻辑电路进行严格的设计。 2.模块的基本结构由关键词module和endmodule构成。 3.一个复杂电路系统的完整Verilog HDL 模型是由若干个Verilog HDL模块构成的,每一个模块又可以由若干个子模块构成。其中有些模块需要综合成具体电路,而有些模块只是与用户所设计的模块交互的现存电路或激励信号源。利用Verilog HDL语言结构所提供的这种功能就可以构造一个模块间的清晰层次结构来描述极其复杂的大型设计,并对所作设计的逻辑电路进行严格的验证。 HDL和VHDL乍为描述硬件电路设计的语言,其共同的特点在于:能形式化地抽象表示电路的结构和行为、支持逻辑设计中层次与领域的描述、可借用高级语言的精巧结构来简化电路的描述、具有电路仿真与验证机制以保证设计的正确性、支持电路描述由高层到低层的综合转换、硬件描述与实现工艺无关(有关工艺参数可通过语言提供的属性包括进去)、便于文档管理、易于理解和设计重用。 5.不是

6.将用行为和功能层次表达的电子系统转换为低层次的便于具体实现的模块组合装配的过程。 7.综合工具可以把HDL变成门级网表。这方面Synopsys工具占有较大的优势,它的Design Compile 是作为一个综合的工业标准,它还有另外一个产品叫Behavior Compiler ,可以提供更高级的综合。 另外最近美国又出了一个软件叫Ambit ,据说比Synopsys 的软件更有效,可以综合50万门的电路,速度更快。今年初Ambit 被Cadence 公司收购,为此Cade nee放弃了它原来的综合软件Syn ergy。随着FPGA 设计的规模越来越大,各EDA公司又开发了用于FPGA设计的综合软件,比较有名的有:Sy nopsys 的FPGAExpress,Cade nee 的Syn plity ,Mentor的Leonardo,这三家的FPGA综合软件占了市场的绝大部分。 8.整个综合过程就是将设计者在EDA平台上编辑输入的HDL文本、原理图或状态图形描述,依据给定的硬件结构组件和约束控制条件 进行编译、优化、转换和综合,最终获得门级电路甚至更底层的电路描述网表文件。用于适配,适配将由综合器产生的网表文件配置于指定的目标器件中,使之产生最终的下载文件,如JEDEC Jam格式的 文件 9.在FPGA设计中,仿真一般分为功能仿真(前仿真)和时序仿真(后仿真)。功能仿真又叫逻辑仿真,是指在不考虑器件延时和布线延时的理想情况下对源代码进行逻辑功能的验证;而时序仿真是在布局布线后进行,它与

数字逻辑课程三套作业及答案

数字逻辑课程三套作业及答 案 -标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

数字逻辑课程作业_A 一、单选题。 1.(4分)如图x1-229 (D)。 A. (A) B. (B) C. (C) D. (D) 知识点:第五章 解析第五章译码器 2.(4分)如图x1-82 (C)。 A. (A) B. (B) C. (C) D. (D) 知识点:第二章 解析第二章其他复合逻辑运算及描述 3.(4分)N个触发器可以构成最大计数长度(进制数)为(D)的计数器。 A. N B. 2N C. N2次方 D. 2N次方 知识点:第九章 解析第九章计数器

4.(4分)n个触发器构成的扭环型计数器中,无效状态有(D)个。 A. A. n B. B.2n C. C.2n-1 D. D.2n-2n 知识点:第九章 解析第九章集成计数器 5.(4分)如图x1-293 (A)。 A. (A) B. (B) C. (C) D. (D) 知识点:第十一章 解析第十一章数字系统概述 6.(4分)如图x1-317 (D)。 A. (A) B. (B) C. (C) D. (D)

知识点:第二章 解析第二章其他复合逻辑运算及描述 7.(4分)EPROM是指(C)。 A. A、随机读写存储器 B. B、只读存储器 C. C、光可擦除电可编程只读存储器 D. D、电可擦可编程只读存储器 知识点:第十章 解析第十章只读存储器 8.(4分)如图x1-407 (B)。 A. (A) B. (B) C. (C) D. (D) 知识点:第十一章 解析第十一章数字系统概述 9.(4分)为实现将JK触发器转换为D触发器,应使(A)。

#用Verilog语言编写的多功能数字钟

2009—2010学年第二学期 《数字电子技术课程设计》报告 专业班级:电气-08-1 姓名:曹操 学号:08051127 设计日期:2010年8月23日~27日 一.设计题目 多功能数字钟电路设计 二.设计任务及要求 多功能数字钟应该具有的功能有:显示时—分—秒、整点报时、小时和分钟可调等基本功能。整个钟表的工作应该是在1Hz信号的作用下进行,这样每来一个时钟信号,秒增加1秒,当秒从59秒跳转到00秒时,分钟增加1分,同时当分钟从59分跳转到00分时,小时增加1小时,小时的范围为0~23时。 在实验中为了显示的方便,由于分钟和秒钟显示的范围都是从0~59,所以可以用一个3位的二进制码显示十位,用一个四位的二进制码(BCD 码)显示个位,对于小时因为他的范围是从0~23,所以可以用一个2位的二进制码显示十位,用一个4位的二进制码(BCD码)显示个位。

实验中由于七段码管是扫描的方式显示,所以虽然时钟需要的是1Hz 时钟信号,但是扫描需要一个比较高频率的信号,因此为了得到准确的1Hz 信号,必须对输入的系统时钟50Mhz进行分频。 对于整点报时功能,本实验设计的是当进行正点的倒计时5秒时,让LED来闪烁进行整点报时的提示。 调整时间的按键用按键模块的S1和S2,S1调节小时,每按下一次,小时增加一个小时;S2调整分钟,每按下一次,分钟增加一分钟。另外用S8按键作为系统时钟复位,复位后全部显示00—00—00。 管脚分配如下表: 端口名使用模块信号对应FPGA管脚说明 S1 按键开关S1 R16 调整小时 S2 按键开关S2 P14 调整分钟 RST 按键开关S8 M15 复位 LED LED模块D1 L14 整点倒计时 LEDAG0 数码管模块A段N4 时间显示 LEDAG1 数码管模块B段G4 LEDAG2 数码管模块C段H4 LEDAG3 数码管模块D段L5 LEDAG4 数码管模块E段L4 LEDAG5 数码管模块F段K4 LEDAG6 数码管模块G段K5 SEL0 数码管选择位1 M4 8个数码管

《verilog_数字系统设计课程》(第二版)思考题答案

Verilog数字系统设计教程思考题答案 绪论 1.什么是信号处理电路?它通常由哪两大部分组成? 信号处理电路是进行一些复杂的数字运算和数据处理,并且又有实时响应要求的电路。它通常有高速数据通道接口和高速算法电路两大部分组成。 2.为什么要设计专用的信号处理电路? 因为有的数字信号处理对时间的要求非常苛刻,以至于用高速的通用处理器也无法在规定的时间内完成必要的运算。通用微处理器芯片是为一般目的而设计的,运算的步骤必须通过程序编译后生成的机器码指令加载到存储器中,然后在微处理器芯片控制下,按时钟的节拍,逐条取出指令分析指令和执行指令,直到程序的结束。微处理器芯片中的内部总线和运算部件也是为通用目的而设计,即使是专为信号处理而设计的通用微处理器,因为它的通用性也不可能为某一特殊的算法来设计一系列的专用的运算电路而且其内部总线的宽度也不能随便的改变,只有通过改变程序,才能实现这个特殊的算法,因而其算法速度也受到限制所以要设计专用的信号处理电路。 3.什么是实时处理系统? 实时处理系统是具有实时响应的处理系统。 4.为什么要用硬件描述语言来设计复杂的算法逻辑电路? 因为现代复杂数字逻辑系统的设计都是借助于EDA工具完成的,无论电路系统的仿真和综合都需要掌握硬件描述语言。 5.能不能完全用C语言来代替硬件描述语言进行算法逻辑电路的设计? 不能,因为基础算法的描述和验证通常用C语言来做。如果要设计一个专用的电路来进行这种对速度有要求的实时数据处理,除了以上C语言外,还须编写硬件描述语言程序进行仿真以便从电路结构上保证算法能在规定的时间内完成,并能通过与前端和后端的设备接口正确无误地交换数据。 6.为什么在算法逻辑电路的设计中需要用C语言和硬件描述语言配合使用来提 高设计效率? 首先C语言很灵活,查错功能强,还可以通过PLI编写自己的系统任务,并直接与硬件仿真器结合使用。C语言是目前世界上应用最为广泛的一种编程语言,因而C程序的设计环境比Verilog HDL更完整,此外,C语言有可靠地编译环境,语法完备,缺陷缺少,应用于许多的领域。比较起来,Verilog语言只是针对硬件描述的,在别处使用并不方便。而用Verilog的仿真,综合,查错等大部分软件都是商业软件,与C语言相比缺乏长期大量的使用,可靠性较差,亦有很多缺陷。所以只有在C语言的配合使用下,Verilog才能更好地发挥作用。C 语言与Verilog HDL语言相辅相成,互相配合使用。这就是即利用C语言的完整性又要结合Verilog对硬件描述的精确性,来更快更好地设计出符合性能要求的

数字逻辑心得体会(多篇范文)

数字逻辑心得体会 数字逻辑与系统课程在工科类学科属于普遍的基础性课程,计算机专业、电子信息类专业及其机电类专业都涉及该课程的学习。此次课程培训是以数字逻辑为基础,系统分析为桥梁,系统综合为目的,全面介绍数字电路的基本理论、分析方法、综合方法和实际应用,并着重从以下几个方面进行了介绍 1.介绍如何整理、设计电子教案; 2.如何讲好本门课程; 3.教学手段与教学方法在本课程的体现; 4.综合设计实验的设计与实施; 5.国家精品课程的申报与建设。 在解决如何讲好本门课程环节,侯教授提出了“厚理博术、知行相成”的理念,使我对该课程的教学有了更深的认识。在我院的实际教学过程中,由于课时少,实验的课时被大量压缩,侯教授关于课程实验的处理方式给了我们一种全新的方案。侯教授课件中很多flash 动画的灵活应用,也较好的解决了那些用语言无法表达清楚的问题的讲解。 研究性教学和双语教学对年轻教师提出了新的要求。作为一名年轻教师,刚走上讲台不久,在课程的讲授过程中,基本都是采用传统的教学方法,即以讲授为主,实验为辅,案例教学基本没有。平铺直叙和填鸭式教学早被学生所厌倦。刘颖教授的研究性教学极好的调动

了学生参与教学的积极性。通过刘颖教授的报告,我深深的感受到数字逻辑与系统课程不仅是一门基础课程,同时也是一门综合性较高的实用课程。研究性教学方式的提出也给我们这些年轻教师提出了新的努力方向。研究性教学虽然给年轻教师提出了更大的要求和较大的压力,但是也是一种努力工作的动力,促进年轻教师的不断成长。同时,娄淑琴教授关于双语教学的报告,也给我们提出了新的要求,自己深深感受到责任的重大,压力也越来越大。但是也激发自己努力的激情与信心。研究性教学和双语教学在一定程度上对年轻教师的科研、应用水平和外语能力等综合素质提出了更高的要求,同时,进一步促进教师阅读国外科技文献、追踪行业发展新动向,保持教师敏锐的学习能力,利于形成新的观点和见解。 通过此次培训,也感受到了师德在教学工作中的重要作用的体会。侯教授及其团队教师的人格魅力在实际教学中起到了很好的促进教学作用。在培训中,很多参加培训的老师被侯教授的敬业精神所感动,所鼓舞,这一点值得我们年轻教师学习并发(请你支持)扬光大。当崇高的师德与高超的教学技术融于一身时,这个才是大师。 在此次培训中,我积极与各院校教师交流,共同探讨该门课程的实际教学中遇到的问题,通过交流大家认为在数字电子技术基础教学工作中遇到的主要困难是:很多学生认为学习数字逻辑课程没用,学习不主动,没有创新意识。并从其它老师处学习到了解决诸如分析键盘译码电路、奇偶检验电路、计算机i/o接口地址译码电路,设计火灾

数字逻辑考题及答案解析

数字逻辑试题1答案 一、填空:(每空1分,共20分) 1、(20.57)8 =( 10.BC )16 2、(63.25) 10= ( 111111.01 )2 3、(FF )16= ( 255 )10 4、[X]原=1.1101,真值X= -0.1101,[X]补 = 1.0011。 5、[X]反=0.1111,[X]补= 0.1111。 6、-9/16的补码为1.0111,反码为1.0110 。 7、已知葛莱码1000,其二进制码为1111, 已知十进制数为92,余三码为1100 0101 8、时序逻辑电路的输出不仅取决于当时的输入,还取决于电路的状态 。 9、逻辑代数的基本运算有三种,它们是_与_ 、_或__、_非_ 。 10、1⊕⊕=B A F ,其最小项之和形式为_ 。AB B A F += 11、RS 触发器的状态方程为_n n Q R S Q +=+1_,约束条件为0=SR 。 12、已知B A F ⊕=1、B A B A F +=2,则两式之间的逻辑关系相等。 13、将触发器的CP 时钟端不连接在一起的时序逻辑电路称之为_异_步时序逻辑电路 。 二、简答题(20分) 1、列出设计同步时序逻辑电路的步骤。(5分) 答:(1)、由实际问题列状态图 (2)、状态化简、编码 (3)、状态转换真值表、驱动表求驱动方程、输出方程 (4)、画逻辑图 (5)、检查自起动 2、化简)(B A B A ABC B A F +++=(5分) 答:0=F 3、分析以下电路,其中RCO 为进位输出。(5分) 答:7进制计数器。

4、下图为PLD 电路,在正确的位置添 * , 设计出B A F ⊕=函数。(5分) 5分 注:答案之一。 三、分析题(30分) 1、分析以下电路,说明电路功能。(10分) 解: ∑∑==) 7,4,2,1()7,6,5,3(m Y m X 2分 A B Ci X Y 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 8分

数字电路时钟设计verilog语言编写--

电子线路设计与测试 实验报告 一、实验名称 多功能数字钟设计 二、实验目的 1.掌握可编程逻辑器件的应用开发技术 ——设计输入、编译、仿真和器件编程; 2.熟悉一种EDA软件使用; 3.掌握Verilog设计方法;

4.掌握分模块分层次的设计方法; 5.用Verilog完成一个多功能数字钟设计。 三、设计内容及要求 1.基本功能 具有“秒”、“分”、“时”计时功能,小时按24小时制计时。 具有校时功能,能对“分”和“小时”进行调整。 2.扩展功能 仿广播电台正点报时。在59分51秒、53秒、55秒、57秒发出低音512Hz 信号,在59分59秒时发出一次高音1024Hz信号,音响持续1秒钟,在1024Hz音响结束时刻为整点。 定时控制,其时间为23时58分。 3.选做内容 任意时刻闹钟(闹钟时间可设置)。 自动报整点时数。 四.系统框图与说明 数字钟框图

1.数字钟电路系统由主体电路和扩展电路两大部分所组成。 2.秒计数器计满60后向分计数器进位,分计数器计满60后向小时计数器进位,小时计数器按照“24进制”规律计数。 3.计数器的输出经译码器送显示器。 五.设计步骤 1.列写多功能数字钟设计--层次结构图 2.拟定数字钟的组成框图,在Max+Plus II软件中,使用Verilog语言输入,采用分层次分模块的方法设计电路; 3.设计各单元电路并进行仿真; 4.对数字钟的整体逻辑电路图,选择器件,分配引脚,进行逻辑综合; 5.下载到Cyclone II FPGA实验平台上,实际测试数字钟的逻辑功能。

六.Verilog代码 //24进制时钟, 具有计时、校时、仿广播电台正点报时、固定时刻定时,任意时刻闹钟等功能 module clock_main(LED_Hour,LED_Minute,LED_Second,Alarm,CP_1KHz,Jsh_Min_key,Jsh_Hour_ke y,Set_Hour_key,Set_Min_key,Show,Ctrl_Bell); input CP_1KHz;//定义输入时钟 input Jsh_Min_key,Jsh_Hour_key;//定义校时按键 input Set_Hour_key,Set_Min_key;//定义闹钟定时按键 input Show; //定义显示模式按键 input Ctrl_Bell;//定义闹钟铃声控制 output [7:0]LED_Hour,LED_Minute,LED_Second;//定义输出变量 wire [7:0]LED_Hour,LED_Minute,LED_Second;//定义输出变量类型 wire [7:0]Hour,Minute,Second; wire [7:0]Set_Hour_Out,Set_Min_Out; wire Out_1Hz,Out_500Hz;//定义分频模块输出变量类型 reg Alarm_Ring,Alarm_Clock_1KHz;//定义仿广播电台报时和固定时刻定时铃声 output Alarm;//蜂鸣器输入 supply1Vdd; wire Alarm_Clock;//任意时刻闹钟闹铃 wire MinL_EN,MinH_EN,Hour_EN;//定义中间变量类型 //分频 fre_dividerFD0(Out_1Hz,Out_500Hz,Vdd,Vdd,CP_1KHz); //正常计时 counter10 U1(.Q(Second[3:0]),.nCR(Vdd),.EN(Vdd),.CP(Out_1Hz)); counter6 U2(.Q(Second[7:4]),.nCR(Vdd),.EN(Second[3:0]==4'h9),.CP(Out_1Hz)); assignMinL_EN=Jsh_Min_key?Vdd:(Second==8'h59); assign MinH_EN=(Jsh_Min_key&&(Minute[3:0]==4'h9))||(Minute[3:0]==4'h9)&&(Second==8'h59 ); counter10 U3(.Q(Minute[3:0]),.nCR(Vdd),.EN(MinL_EN),.CP(Out_1Hz)); counter6 U4(.Q(Minute[7:4]),.nCR(Vdd),.EN(MinH_EN),.CP(Out_1Hz)); assign Hour_EN=Jsh_Hour_key?Vdd:((Minute==8'h59)&&(Second==8'h59)); counter24 U5(Hour[7:4],Hour[3:0],Vdd,Hour_EN,Out_1Hz); //仿广播电台正点报时 baoshi BS1(Alarm_Ring,Minute,Second,Out_500Hz,CP_1KHz);//在59分51秒、53秒、55秒、57秒发出低音512Hz信号,在59分59秒时发出一次高音1024Hz信号,音响持续1秒钟,在1024Hz音响结束时刻为整点 //固定时刻定时

基于verilog数字秒表的设计实现--生产实习报告

生产实习报告 班级:通信13-2班 姓名:闫振宇 学号:1306030222 成绩: 电子与信息工程学院 信息与通信工程系

基于verilog 数字秒表的设计实现 1. 概述 硬件描述语言HDL ( HardwareDescription Langyage) 是一种用形式化方法来描述数字电路和系统的语言。数字电路系统的设计这里用这种语言可以从上层倒下层逐层描述自设计思想用一系列分层的模块来表示极其复杂的数字系统,然后用EDA 工具逐层验证,把其中需要为具体物理电路的模块组合由自动综合工具转换到门级电路网表。Verilog HDL 是一种硬件描述语言,用于从算法级、门级到开关级的多种抽象设计层次的数字系统建模。被建模的数字系统对象的复杂性可以介于简单的门和完整的电子数字系统之间。数字系统能够按层次描述,并可在相同描述中显式地进行时序建模。使用VERILOG 进行系统设计时采用的是从顶至下的设计,自顶向下的设计是从系统机开始巴西同划分为若干个基本单元,然后再把每个单元划分为下一层的基本单元,这样下去直到可以直接用EDA 元件库中的基本元件来实现为止。 2. 设计目的及要求 a. 有源晶振频率:50MHZ ; b. 测试计时范围:00' 00” 00 ~ 59 ',59显”示9的9 最长时间为59 分59 秒; c. 数字秒表的计时精度是10ms; d. 显示工作方式:六位BCD 七段数码管显示读数,两个按钮开关(一个按钮使秒表复位,另一个按钮控制秒表的启动/暂停)。 3. 设计原理秒表的逻辑结构较简单,它主要由四进制计数器、十六进制计数器、分频器、数据选择器、和显示译码器等组成。在整个秒表中最关键的是如何获得一个精确的100HZ 计时脉冲,除此之外,整个秒表还需有一个启动信号和一个清零信号,以便秒表能随意停止、启动以及清零复位。 秒表有共有6个输出显示,其中6个显示输出数据,分别为百分之一秒、十分之一秒、秒、十秒、分、十分,所以共有 6 个计数器与之相对应; 6 个计数器的输出全都为BCD 码输出,这样便与同显示译码器连接。 利用一块芯片完成除时钟源,按键和显示器之外的所有数字电路功能。所有数字逻辑功能都在CPLD 器件上用Verilog 语言实现。这样设计具有体积小,设计周期短,调试方 便,故障率地和修改升级容易等特点。 本设计采用依次采用以下设计方法: 1)按键输入缓存,键盘消抖设计;

数字逻辑实验教案

滁州学院计算机与信息工程学院 实验课程教案 课程名称:数字电路分析与设计 授课教师:姚光顺 授课对象:11网工、计科 授课时间:20XX年2月-2012月7月 滁州学院计算机与信息工程系 20XX年2月 《数字逻辑》实验教学大纲

课程编号: 课程名称:数字逻辑 英文名称:Digital Logic 课程类型:专业基础课 课程属性:独立设课 总学时:16总学分:0.5 开设学期:2 适用专业:计算机科学与技术网络工程 先修课程:大学物理电路原理 一、实验课程简介 数字逻辑实验,是数字逻辑课程教学内容的延伸和加强。在电子产品广泛应用的前提下,对于每一个大学生,具备一定电工电子基本知识和应用能力是必不可少的。因此,数字逻辑实验教学是按在相关理论教学的基础上,根据教学实际情况所开设的重点技术基础实验课程。通过实验,可以加深学生对课程内容中重点、难点的理解,培养其动手能力。 二、实验教学目标与基本要求 本课程的作用与任务是:使学生进一步掌握数字逻辑电路的分析与设计的基本方法,了解数字逻辑物理器件的主要技术参数,以及物理设计中的制作、调试、故障诊断的基本技能。要求学生在实验原理指导下,熟悉和掌握常用中、大规模集成电路的功能和在实际中应用的方法,具备基本电路的设计能力。培养学生检查与排除电路故障、分析和处理实验结果、分析误差和撰写实验报告的能力,旨在培养学生综合运用知识能力、严谨细致的工作作风和一丝不苟的科学态度。 三、本实验课程的基本理论与实验技术知识 本实验课基于门电路、组合逻辑电路、触发器、时序逻辑电路、A/D和D/A转换的基本理论而设定。 四、实验方法、特点与基本要求 实验分为实验预习、实验操作、实验总结三个步骤: 1、实验预习 1) 明确实验目的,理解实验原理; 2) 了解实验环境; 3) 了解实验方法,拟定实验的操作步骤; 2、实验操作 1) 建立实验环境,进行实验操作,培养实践动手能力 2) 实验过程中认真观察实验现象,详细记录实验结果 3) 实验结束前,整理好实验设备,经指导教师验收方可退出实验室 3、实验总结 通过对实验记录的整理,以加深对所学理论知识的理解,不断总结、积累经验,从而提高动手能力。

数字逻辑课程设计

《数字逻辑课程设计》 实验报告书 专业班级计算机科学与技术074班 学号 姓名 指导教师徐国雄 安徽工业大学计算机学院

数字逻辑课程设计之数字钟 一.设计目的 1.掌握各类计数器及将它们相连的方法; 2.掌握多个数码管动态显示的原理与方法; 3.掌握用FPGA技术的层次化设计方法; 4.进一步掌握用VHDL硬件描述语言的设计思想; 5.了解有关数字系统的设计。 二.设计要求 1、显示时、分、秒的十进制数字显示,采用24小时制; 2、校时功能; 三.选用器材 EDA-V试验箱 四.原理分析和电路设计 1.时钟脉冲 时钟脉冲有EDA-V试验箱上的时钟脉冲提供,分别对计时电路和扫描 LED电路提供时钟脉冲信号。 2.计数器 计数器采用4位二进制同步加法计数器74LS161,如下图所示。分别对秒 钟、分钟和时钟进行控制。当74161的两个使能端输入为高电平,同时 LDN和CLRN端为高电平时,输入时钟脉冲时,计数器会在时钟脉冲上升沿的作用下进行循环加一运算,正好符合电子钟在正常计时时的工作特点;当CLRN端为低电平时,无需时钟脉冲的作用,计数器的输出将自动变为0,这就是所谓的异步清零,这个功能可以提供我们当秒钟的后半部分到达10需要返回到0时,将其置为0的功能;当CLRN端为高电平,LDN端为低电平时,在时钟脉冲的上升沿的推动下,计数器的输出将直接由输入决定,这可以满足我们设置时间的要求。 3.译码显示电路 译码显示采用自己定义的两个用AHDL语言描述的自定义元件半字节分离器和扫描显示电路驱动DELED 。 图像分别如下: 描述文件如下: Half_byte:

SUBDESIGN half_byte ( din[23..0]:input; s[2..0]:input; dout[3..0]:output; ) begin if s[2..0]==0 then dout[3..0]=din[3..0]; end if; if s[2..0]==1 then dout[3..0]=din[7..4]; end if; if s[2..0]==2 then dout[3..0]=din[11..8]; end if; if s[2..0]==3 then dout[3..0]=din[15..12]; end if; if s[2..0]==4 then dout[3..0]=din[19..16]; end if; if s[2..0]==5 then dout[3..0]=din[23..20]; end if; end; DELED: SUBDESIGN deled ( num[3..0]:INPUT; a,b,c,d,e,f,g:OUTPUT; ) BEGIN TABLE num[3..0]=>a,b,c,d,e,f,g; H"0" =>1,1,1,1,1,1,0; H"1" =>0,1,1,0,0,0,0; H"2" =>1,1,0,1,1,0,1; H"3" =>1,1,1,1,0,0,1; H"4" =>0,1,1,0,0,1,1; H"5" =>1,0,1,1,0,1,1; H"6" =>1,0,1,1,1,1,1; H"7" =>1,1,1,0,0,0,0; H"8" =>1,1,1,1,1,1,1; H"9" =>1,1,1,1,0,1,1; H"A" =>0,0,1,1,1,1,1; H"B" =>0,0,1,1,1,1,1; H"C" =>1,0,0,1,1,1,0; H"D" =>0,1,1,1,1,0,1; H"E" =>1,0,0,1,1,1,1; H"F" =>1,0,0,0,1,1,1; END TABLE; END; 半字节分离器的SEL[0..24]端输入的分别是时分秒的8421码的输入端口,SE[0..2]端输入的是从一个74161输入的选择信号,依次扫描六个LED灯。 2

数字逻辑习题及答案.

数字逻辑习题及答案 一. 填空题 1.一个触发器有Q和Q两个互补的输出引脚,通常所说的触发器的输出端是指 Q ,所谓置位就是将输出端置成 1 电平,复位就是将输出端置成 0 电平。 2.我们可以用逻辑函数来表示逻辑关系,任何一个逻辑关系都可以表示为逻辑函数的与或表达式,也可表示为逻辑函数的或与表达式。 3.计数器和定时器的内部结构是一样的,当对不规则的事件脉冲计数时,称为计数器,当对周期性的规则脉冲计数时,称为定时器。 4.当我们在计算机键盘上按一个标为“3”的按键时,键盘向主机送出一个ASCII码,这个ASCII码的值为 33H 。 5.在5V供电的数字系统里,所谓的高电平并不是一定是5V,而是有一个电压范围,我们把这个电压范围称为高电平噪声容限;同样所谓的低电平并不是一定是0V,而也是有一个电压范围,我们把这个电压范围称为低电平噪声容限。 二. 选择题 1.在数字系统里,当某一线路作为总线使用,那么接到该总线的所有输出设备(或器件)必须具有 b 结构,否则会产生数据冲突。 a. 集电极开路; b. 三态门; c. 灌电流; d. 拉电流2.TTL集成电路采用的是 b 控制,其功率损耗比较大;而MOS 集成电路采用的是 a 控制,其功率损耗比较小。 a. 电压; b.电流; c. 灌电流; d. 拉电流 3.欲将二进制代码翻译成输出信号选用 b ,欲将输入信号编成二进制代码选用 a ,欲将数字系统中多条传输线上的不同数字信号按需要选择一个送到公共数据线上选用 c ,

欲实现两个相同位二进制数和低位进位数的相加运算选用 e 。 a. 编码器; b. 译码器; c. 多路选择器; d. 数值比较器; e. 加法器; f. 触发器; g. 计数器; h. 寄存器 4. 卡诺图上变量的取值顺序是采用 b 的形式,以便能够用几何 上的相邻关系表示逻辑上的相邻。 a. 二进制码; b. 循环码; c. ASCII 码; d. 十进制码 5. 根据最小项与最大项的性质,任意两个不同的最小项之积为 0 ,任意两个不同的最大项之和为 1 。 a. 不确定; b. 0 ; c. 1 三. 简答题 1.分别写出(或画出)JK 、D 、T 和T ’四个触发器的特征方程、真 值表和状态转换图。 2.请分别完成下面逻辑函数的化简。 1). )DE C B A (*)E D )(C B A (F ++++++= 答:原式)DE C B A (*)]E D ()C B A ([+++++++= )DE )C B A ((*))DE )C B A ((++++++=)) C B A ()C B A ((DE DE )C B A ()C B A (+++++++++++= DE = 2). )EH D B A )(B A )(C A )(C B A (F +++++++= 答:原式的对偶式为: ) H E (ABD AB AC C AB 'F ++++= ))H E (BD B C C B (A ++++=)] H E (BD B B C [A ++++==A A )'A ()''F (===∴原式 3.请分别说明A/D 与D/A 转换器的作用,说明它们的主要技术指标, 并进一步说明在什么情况下必须在A/D 转换器前加采样·保持电路。 答:A/D 与D/A 转换器分别能够将模拟量转换成数字量与数字量转换 成模拟量,通过这样的转换电路,能够将模拟系统和数字系统联

多功能数字钟设计Verilog语言编写

多功能数字钟设计 院系:电光学院 班级:*** 学号: *** 姓名: *** 指导老师:*** 时间:2010.4.20.

摘要:利用QuartusII软件设计一个数字钟,利用模块化的程序设计思想,核心 模块均采用Verilog语言编写(译码显示模块采用原理图设计),软件仿真调试编译成功后,再下载到SmartSOPC实验系统中。经过硬件测试,查找软件设计缺陷,并进一步完善软件,最终设计得到较为满意的多功能数字钟。 关键词:QuartusII; 多功能数字钟; 模块化; Verilog; 可编程; Abstract:Using the QuartusII software design a digital bell with the blocking method.The design takes theory drawing instead of Verilog language.After emluating and debuging successfully,translate and edit the code.Then,download the result to the programmable SmartSOPC system and test it in hardware.Realizing the soul of designing hardware by software. Keywords:QuartusII; digital bell; blocking method; VHDL; programmable; hardware 目录 设计内容简介 (3) 设计要求说明 (3) 方案论证(整体电路设计原理) (3) 各子模块设计理 (5) 分频模块: (5) 计数模块: (7) --校准模块程序实现: (8) --秒计数模块程序实现: (9) --分计数模块程序实现: (10) --时计数模块程序实现: (10) 整点报时模块: (12) 闹钟设定模块: (13) --闹钟调节模块程序实现: (14) --输出信号选择模块程序实现: (14) 彩铃模块: (15) 译码显示模块: (18) 万年历模块: (19) --日计数模块程序设计: (20) --月计数模块程序设计: (23) --年计数模块程序设计: (23) --万年历波形仿真结果: (25) 结论: (26) 实验感想: (26) 附图: (27)

数字逻辑试题及答案

期数字逻辑试题A 一、填空题(共15分,每空1分) 1、分别写出逻辑函数的五种表示方法()、()、()、()、()。2、数字逻辑电路的两大种类分别是()电路,()电路。 3、( )和( )是衡量A/D转换器D/A转换器性能优劣的主要指标。 4、消除竞争冒险的4种方法分别是()、()、()、()。 5、555定时器电路提供了一个复位电平为()和置位电平为()。 二、选择题(共10分,每题5分) 1、将(175)10十进制数转换为二进制数下列选择结果中正确的是()。 A、二进制数(11010111)2 B、二进制数(10110011)2 C、二进制数(10011010)2 D、二进制数(1010111 1)2 2、运用摩根定理变换Y=X Q Z 的表达式,下列选择中正确的是()。 A、Y=( X + Q + Z ) B、Y=(X + Q +Z) C、Y=(X + Q + Z) D、Y=( X + Q + Z ) 三、综合题(共20分,每题10分) 1、对如图电路分别写出E = 0 或E = 1 时,函数F 的逻辑表达式。 2、用图形法化简函数为最简与或式 F(A,B,C,D)=∑M(0,1,2,3,6,8)+∑D(10,11,12,13,14,15) 四、组合逻辑电路分析、设计题(共25分,1题10分,2题15分) 1、写出下图电路(电路由四个或非门组成)输出信号的逻辑表达式,并说明其功能。 F

2、用集成译码器74LS138实现下列组合逻辑函数 Z1=AB+AB+BC Z2=AB+BC+CA 30分,每题15分) 1、一个时序逻辑电路如下图所示(由两个D触发器组成),请画出其状态图。 CP 2、用JK触发器设计一个同步、上升沿触发的四进制计数器。状态图如下 /0 /0 /0 /1

eda,verilog数字钟设计报告

数字钟 一、任务解析 用Verilog硬件描述语言设计数字钟,实现: 1、具有时、分、秒计数显示功能,以二十四小时循环计时。 2、具有调节小时,分钟的功能,调整时对应的数字闪烁。 3、具有整点报时及闹铃时间可调的功能。 4、数字钟具有四种模式:正常显示、时间调整、闹铃时间调整、秒表。 二、方案论证 没有闹铃功能 三、重难点解析 选择模式:module beii(clr,selin_key,beii_out); input clr,selin_key; output [1:0]beii_out; wire [1:0]beii_out; reg [1:0]selout_key; always@(negedge clr or posedge selin_key) begin if(!clr) selout_key=0; else begin if(selout_key==2) selout_key=0; else selout_key=selout_key+1;end end assign beii_out=selout_key; endmodule

头文件中: module clk_top(clr,clk,upkey,downkey,sel,a,b,c,d,e,f,g,p,clr_key,selin_key); clr:清零clk:50M时钟 upkey:向上调downkey:向下调 clr_key:恢复初始状态selin_key:模式选择 四、硬件资源分配 60进制module mycnt60(clr,clk,upkey,downkey,selout,q,c); input clk,clr,upkey,downkey;//upkey为加按键 input [1:0] selout; output[7:0] q;//60进制输出 output c;//进位溢出位 reg c; reg[7:0] q; wire new_clk1,ckb,ckc,ckd,cko; assign new_clk1=clk|((!selout[0]&selout[1])&(upkey|downkey)); LCELL AA(new_clk1,ckb);//信号延迟 LCELL BB(ckb,ckc); LCELL CC(ckc,ckd); LCELL DD(ckd,cko); initial c=0; always @(posedge cko or negedge clr )begin if(!clr) q=8'h00; else begin if(selout==2) begin if(upkey)begin if(q==8'h59) q=8'h00; else if(q==8'h?9) q=q+4'h7; else q=q+1; end else if(downkey)begin if(q==8'h00) q=8'h59; else if(q==8'h?0) q=q-4'h7; else q=q-1; end

verilog数字系统设计教程习题答案

verilog数字系统设计教程习题答案 第二章 1.Verilog HDL 既是一种行为描述语言,也是一种结构描述语言。如果按照一定的规则和风格编写代码,就可以将功能行为模块通过工具自动转化为门级互联的结构模块。这意味着利用Verilog语言所提供的功能,就可以构造一个模块间的清晰结构来描述复杂的大型设计,并对所需的逻辑电路进行严格的设计。 2.模块的基本结构由关键词module和endmodule构成。 3.一个复杂电路系统的完整Verilog HDL模型是由若干个Verilog HDL模块构成的,每一个模块又可以由若干个子模块构成。其中有些模块需要综合成具体电路,而有些模块只是与用户所设计的模块交互的现存电路或激励信号源。利用 Verilog HDL语言结构所提供的这种功能就可以构造一个模块间的清晰层次结构来描述极其复杂的大型设计,并对所作设计的逻辑电路进行严格的验证。 4.Verilog HDL和VHDL作为描述硬件电路设计的语言,其共同的特点在于:能 形式化地抽象表示电路的结构和行为、支持逻辑设计中层次与领域的描述、可借用高级语言的精巧结构来简化电路的描述、具有电路仿真与验证机制以保证设计的正确性、支持电路描述由高层到低层的综合转换、硬件描述与实现工艺无关(有关工艺参数可通过语言提供的属性包括进去)、便于文档管理、易于理解和设计重用。 5.不是 6.将用行为和功能层次表达的电子系统转换为低层次的便于具体实现的模块组 合装配的过程。 7.综合工具可以把HDL变成门级网表。这方面Synopsys工具占有较大的优势,它的Design Compile是作为一个综合的工业标准,它还有另外一个产品叫Behavior Compiler,可以提供更高级的综合。 另外最近美国又出了一个软件叫Ambit,据说比Synopsys的软件更有效,可以 综合50万门的电路,速度更快。今年初Ambit被Cadence公司收购,为此Cadence 放弃了它原来的综合软件Synergy。随着FPGA设计的规模越来越大,各EDA公 司又开发了用于FPGA设计的综合软件,比较有名的有:Synopsys的FPGA Express,Cadence的Synplity, Mentor的Leonardo,这三家的FPGA综合软件占了市场的绝大部分。 8.整个综合过程就是将设计者在EDA平台上编辑输入的HDL文本、原理图或状态图形描述,依据给定的硬件结构组件和约束控制条件 进行编译、优化、转换和综合,最终获得门级电路甚至更底层的电路描述网表文件。用于适配,适配将由综合器产生的网表文件配置于指定的目标器件中,使之产生最终的下载文件,如JEDEC、Jam格式的文件。

相关文档
最新文档