电脑桌面
添加盘古文库-分享文档发现价值到电脑桌面
安装后可以在桌面快捷访问

eda作品设计报告

来源:莲生三十二作者:开心麻花2025-09-191

eda作品设计报告(精选6篇)

eda作品设计报告 第1篇

EDA

多 功 能 数 字 时 钟

专业:11级应用电子技术 班级:二班

学号:110372021307 姓名:贺成林 指导老师:祝宏

日期:2012年6月29日

一、实验目的

1、课程设计是一实践教学环节,是针对《数字电子技术》课程的要求,结合实践对学生进行综合设计性训练,在自学和实践训练中培养学生理论联系实践和实践动手能力,独立地解决实际问题能力。

2、通过课程设计是使学生熟悉和了解可编程专用数字逻辑电路的设计、开发流程,熟悉和了解现代EDA设计工具,掌握数字电子系统层次化的设计方法。

已知条件:MAX+Plus软件

基本功能:

1、以数字形式显示时、分、秒的时间;

2、小时计数器为24进制;

3、分秒计数器为60进制。

二、实验要求、综合应用《数字电子技术基础》课程中的理论知识去独立地完成一个设计课题;

2、熟悉和了解现代EDA设计、编程、编译、仿真及下载技术的全过程。

三、EDA 技术介绍

1、EDA 技术概况

EDA 是电子设计自动化(Electronic Design Automation)的缩写,在 20 世 纪 90 年代初从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。EDA 技术就是以计算机为工 具,设计者在 EDA 软件平台上,用硬件描述语言 HDL 完成设计文件,然后由计算机 自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特 定目标芯片的适配编译、逻辑映射和编程下载等工作。EDA 技术的出现,极大地提 高了电路设计的效率和可*性,减轻了设计者的劳动强度。

2、ALTERA QUARTUS II 软件介绍

Quartus II 是 Altera 公司的综合性 PLD 开发软件,支持原理图、VHDL、VerilogHDL 以及 AHDL(Altera Hardware Description Language)等多种 设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件 配置的完整 PLD 设计流程。

四、关键词

数字计数器、动态显示、快速校分、整点报时、时段控制。

五、实验步骤

1、秒计数器是60进制的。当下面的74161到9时等下一个脉冲来是向上面的74161计数,到5时将两个74161共同预置。从而实现00—59秒的计数功能。

电路图如下:

进行编译及波形仿真,如下图: 将上述文件保存并打包,如图:

2、分计数器是60进制的。功能如秒计数器。其电路图如下:

波形图仿真及打包图如下:

3、小时计数器是24进制的。当下面的74161到9时等下一个脉冲来是向上面的74161计数。但是等到上面的记到2时下面的将不能超过4,所以等上面的记到2,下面的记到4时就将两个74161共同预置。从而实现00—24秒的计数功能。

原理图如下:

仿真的波形图及打包的文件图如下:

4、校时。校时是通过加快时分的计数速度来快速校准时间的。实际上我们把秒脉冲cps加到分计数和时计数上,是他们加快计数速度。所以其中我们需要通过开关来选择。

原理图及打包图如下:

5、时段控制:时段控制是通过7485集成电路的数据比较来控制的。

原理图及打包图如下:

6、整点报时:整点报时是通过整点时的二进制数据规律来报时的。

原理图及打包图如下:

7、将时分秒打包文件连成多功能数字电路图如下:

8、多功能数字钟硬件测试原理图如下:

9、部分制作过程图,如下:

六、实验工具

装有QuartusⅡ软件的电脑,EDA开发板,相关EDA设计方面的书籍。

七、设计中遇到问题及解决方法

1、实验后期的引脚分配及下载方法不当,实验所用电脑没有

quartus11.0 的 驱动。耗费时间较多。解决方法:参阅西安电子科技大学出版社出版的《数字电路设计及 Verilog HDL 实现》第 394 页关于引脚分配和下载验证的介绍;

2、下载验证过程中时段控制部分有错误,原代码在软件上仿真没有错误,但是下载到实验板验证时,出现错误。解决方法:通过去请教同学及查阅相关资料得到解决。

八、特点和实用性

利用 QuartusII 软件,结合所学的数字电路的知识设计一个 24 时多功能数 字钟,具有正常分、秒计时,动态显示、快速校分、整点报时、时段控制的功能。分析整个电路的工作原理,分别说明各子模块的设计原理和调试、仿真、编 程下载的过程,并对最终结果进行总结,最后提出在实验过程中出现的问题和解 决的方案。通过实验掌握一些逻辑组合器件的基本功能和用法,同时体会利用软件设计 电路的方便快捷,避免硬件布线的繁琐,提高效率。

九、心得体会

1、设计必须要有整体概念,提前熟悉软件。刚开始时没头绪,不知道该怎 样分块,进度很慢,加上对软件不是很熟悉,比如:封装要注意哪些,哪些不能 运行,哪些是不正确的操作等等,走了很多冤枉路。

2、设计的模块要分块调试,免得等所有都完工了再调试出错,那样的话很 难确定是什么出错,更加没头绪。有必要的话做一部分后就送到平台上调试,这 样会大大减少出错率。

3、没有硬件软件化的概念,开始设计时没有总体的规划,不知道什么是可行 的,什么是封装,怎样使搭配组合最优化。

4、遇到问题先自己摸索,查阅资料要有技巧,避免没有目的和思路。明白 自己要解决什么问题。同时请教老师,和同学交流。良好的沟通很重要。针对本次的毕业设计,用我国著名的数学家的话概括一下我的感受: “科学上没有平坦的大道,真理长河中有无数礁石险滩。只有不为畏攀登的采药者,只有不怕 巨浪的弄潮儿,才能登上高峰采得仙草,深入水底觅得骊珠。”

十、参阅教材及文献

1、蒋立平编著《数字电路》.南京理工大学翻印;

2、南京理工大学电子技术中心编著.《EDA 设计实验指导书》 南京理工大学,2008 年;

3、谭会生,张昌凡.《EDA 技术及应用》.西安电子科技大学出版社,2001年;

4、《数字电路设计及 Verilog HDL 实现》 西安电子科技大学出版社出版;

5、《电子线路实验设计与仿真讲义》。

eda作品设计报告 第2篇

姓名:黄娟

学号:32214125

班级:自动141

成绩:

实验名称:2位十进制频率计设计

一、实验目的

1.掌握EDA工具Quartus Ⅱ的使用; 2.掌握Quartus Ⅱ的原理图设计流程。3.掌握2位十进制频率计设计方法。

二、2位十进制频率计设计

1、Quartus Ⅱ原理图设计流程

(1)计数器设计 a.设计电路原理图 b.建立工程 c.系统仿真 d.生成元件符号(2)频率计主结构电路设计(3)时序控制电路设计

(4)顶层电路设计 2、2位十进制频率计(1)原理图

工学院实验报告

(2)仿真测试结果

(2)RTL图

工学院实验报告

三、实验小结

EDA课程设计教学模式探索 第3篇

课程设计是实践教学中的重要环节, 因为它是学生进行理论联系实际的纽带, 也为后续的毕业设计、科研工作奠定一定基础。所以, 高校课程设计的教学模式至关重要, 直接影响到学生的“学以致用”能力。

EDA课程设计是具有工艺性、实践性的课程, 是电子专业学生进行工程训练的重要环节之一。通过该课程设计, 能够使学生初步接触电子产品的生产实际, 为后续课程, 特别是毕业设计等积累必要的知识和技能;同时通过实践操作, 也能够对学生进行工作作风和学风的培养, 并为今后从事有关电子技术工作奠定实践基础[1]。综上所述, EDA课程设计是电子专业不可忽视的一个教学环节, 它是学生从专业理论知识到实际应用生产的第一个纽带, 必须加以重视和正确引导。然而, 目前的该教学环节太过传统化, 不能充分调动学生的积极性, 多数学生只是为了拿到学分而随便找些资料进行“拼凑”, 并未达到真正用基础知识和专业知识去设计的目的, 而对于其创新性的提高更是微乎其微。鉴于以上关于EDA课程设计的各种不足之处, 提出了一种新型的课程设计教学模式, 旨在调动学生的积极性, 开发学生的发散性思维, 提高其创新意识, 强化其动手实践能力。

EDA课程设计教学模式改革探究:

1 提前下达任务, 避免选题陈旧, 防止学生走捷径

传统的EDA课程设计基本都是两周的时间, 由老师出一些相关题目, 学生来做, 无论学生对这些题目是否感兴趣, 都必须往下做。这样一来, 对题目感兴趣的部分学生或许能够认真完成, 而不感兴趣的学生则是应付差事, 成绩也是勉强及格。这种选题方式显然不能完全调动学生的积极性, 只是为了完成教学任务而进行教学。同时, 由于现代化网络的有利条件, 有些学生会因为时间紧张, 上网不是为了搜集资料, 而是直接进行各种抄袭, 严重影响了该课程的实际教学效果。

对于以上现状, 可采取提前下达任务书的方法, 提前半学期就将课程设计的任务书下达给学生, 包括难度要求、设计内容规范等等, 但对于题目可以先不规定, 而是由学生利用半个学期的课余时间来进行各种资料检索, 根据自己的兴趣爱好确定自己的题目, 指导老师再根据学生的题目定其难点和要点。利用这样的方法, 学生可以根据自己的兴趣爱好来选题, 只有由学生自行选择自己喜欢的方向, 才能充分发挥其潜能, 也就能够充分调动起学生的积极性、主动性。同时, 下达任务的时间比较早, 学生有足够的时间进行资料搜集和市场调查, 指导教师也有足够的时间去一一指导和监督, 防止学生走捷径, 从而使得抄袭率大大降低。

2 创新教学方法, 提高动手能力, 锻炼合作精神, 真正达到素质教育

素质教育是要提高学生的综合素质, 包括认知能力、分析能力、合作能力、沟通能力, 也包括更成熟的价值观体系, 更健全的知识框架等等[2]。那么高校的课程设计是实现素质教育最有利的工具, EDA课程设计当然也不例外。而我国目前EDA课程设计中, 都是每人一题, 自己研究自己的, 能力高的学生甚至能够做出实物, 而能力差的学生仅仅勉强弄明白设计原理, 高低差距相当悬殊。另外, 由于各自的题目不同, 所以学生之间的交流比较少。这种教学组织方式使得多数学生的实际动手能力并未得到实质性的提高, 也未能达到素质教育的目的。

针对于此, 我们可以借鉴国外的教学方法, 在课程设计中, 学生可以进行自由组合, 有同样兴趣爱好的学生就会组成一个团体, 一起进行研究, 在此我建议, 每组的人数不能太多, 过多学生一组必然会导致个别学生“鱼目混珠”。根据多位研究者在哈佛大学、牛津大学的各种调查显示, 这种自由组合的方法具有诸多优点:第一, 能够有力开发学生的潜能。几个人一起讨论进行课程设计的思路要比一个人的思路更加开阔, 所以设计的成果质量会比较高。同时, 在设计过程中互相交流, 不但提高了大家的兴趣, 而且彼此的专业知识也会随之提升;第二, 能够强化学生的动手、实践能力, 同时带动部分落后分子。由于多个人做一个题目, 所以EDA课程设计的要求就要提高, 每组都必须做出实物, 并能够正常运行, 这样一来, 组里的佼佼者会自主地带动落后分子去焊接实物, 因为工作量比较大, 一个人是没有足够的时间去完成, 因此整体的动手能力都会有所提高。如果有人“偷懒”, 那么下次的课程设计组合时, 他将会落单, 直接导致一人组, 所以学生考虑到以后的课程设计, 是不会“因小失大”的, 故而积极主动地向优秀生进行学习;第三, 锻炼学生的团体合作精神。成组进行设计, 必然导致组员之间的各种交流与合作, 如果一意孤行, 则会被小组“抛弃”, 所以进行课程设计的过程, 也是锻炼学生的团体合作精神的过程。

所以, 这样的教学方法能够有效地提高学生的动手能力, 锻炼其团队合作精神, 真正达到素质教育的目的, 同时还能够对部分较差学生起到督促的作用, 方便教师的指导。

3 评分体系优化

如何综合评定课程设计成绩, 也是至关重要的一个环节。课程设计不像一般的考试课可以直接统计分数来确定, 它是要准确反映每个学生课程设计过程及成果的真实成绩。所以, 正确的成绩评定方法能够对学生起到促进作用, 也会对学生的下一次课程设计起到正面铺垫作用。

我在完成EDA课程设计的教学工作中, 通过两年的实践和努力, 结合国外的各种有效方法, 对原有的EDA课程设计评分标准进行了优化, 并与上文中的教学组织方法相配合, 总结出一套有效的成绩评定方法。首先, 指导教师要根据每个学生日常的各种表现确定其平时成绩, 占总成绩的20%。其次, EDA课程设计考核的重点是焊接的实物和其设计原理, 考核的办法是以组为单位进行答辩。答辩中, 指导老师指定组中的某个成员进行回答, 然后其余成员可以补充。这样指导教师可以根据答辩的情况给每个学生打分, 用来作为其答辩成绩, 占总成绩的30%;而对于该组的设计成果, 也会有一个相应的设计成果成绩, 占总成绩的30%, 当然, 由于该成果是一个组所有成员共同努力的结晶, 所以同一个组所有成员的设计成果分数均相同。最后, 同一组的成员也要进行互相评分, 这样可以互相监督, 如果某个成员经常“偷懒”, 则大家给与的评分就可以表现出来。根据同组成员给的分数计算出平均分, 则作为该学生的组内成绩, 占总成绩的20%。最后将平时成绩、答辩成绩、设计成果成绩和组内成绩进行综合, 得出每个学生的综合成绩。这样的评分方法能够反映出学生做课程设计的全部环节质量, 极少造成误评, 同时也增强了他们的学习信心, 对整体学业也会产生正面影响。

结束语

EDA课程设计的教学模式改革不是一朝一夕之事, 需要我们全体教师的一起努力, 也需要师生共同的探讨, 更需要不断的实践、考察与探索。我们一定要坚持素质教育的原则, 通过各种实践来促进该教学模式的改革, 让学生通过该教学环节能够真正提高实践能力, 完善专业知识结构, 为后续的课程和将来走向社会打下坚实的基础。

参考文献

[1]刘晓燕.课程设计教学模式改革探讨[J].黑龙江教育, 2007, 7:94-95.

EDA设计快速入门 第4篇

近年,数字化进程的不断加快,推动了具有高速度、高集成度、低功耗的可编程ASIC器件的发展,同时也推动了用于开发这类器件的EDA技术发展和进步,电路设计构成逐步地从中、小规模芯片转为大规模、超大规模(LSI、VLSI)芯片,因此掌握EDA设计技术,使用可编程大规模、超大规模(LSI、VLSI)芯片已经成为从事电子设计人员必需具有的基本能力。本文将介绍如何在短时间内学习掌握这项技术,并在实际设计中运用。

1. 可编程ASIC器件选择

在电路设计中使用可编程ASIC器件,简单地说就是用大规模、超大规模(LSI、VLSI)芯片来代替中、小规模的芯片。在设计中主要依据芯片的内部结构、性能来选择器件。在EDA技术中所使用的大规模、超大规模(LSI、VLSI)芯片被称为可编程ASIC芯片,这些芯片包含有通用的逻辑资源,经过设计编程,就可以实现所需的功能。这些芯片根据其内部结构可划分为CPLD(Complex Programmable Logic Device)和FPGA (Field Programmable Gate Array)。CPLD是复杂可编程逻辑器件的简称,其结构与早期的PAL、GAL相似,内部包含多个逻辑宏单元或宏模块;FPGA是现场可编程门阵列的简称。

CPLD的内部结构是基于乘积项(Product-Term)技术的可编程ASIC芯片。代表的器件有Altera公司的MAX7000系列和Xilinx公司的XC9500系列等等。图1是Altera公司MAX7000S系列的内部基本编程结构,从图1中可以看出,MAX7000S系列的基本编程结构是由逻辑阵列、乘积项选择矩阵和可编程触发器构成的,这三部分都可以通过编程配置实现各种逻辑功能。不同型号器件中所包含的基本编程单元机构相似,但包含基本单元的数量多少不等,即它们的容量不同。CPLD的编程信息是采用E2CMOS工艺实现的,这种工艺具有非易失性,编程数据可以保持数十年,此类器件只能对其进行有限次(几千次)编程。另外,可以对器件进行加密,而且一旦被加密,很难破解。

FPGA的内部结构是基于查找表(LUT)技术的可编程ASIC芯片。代表的器件有Altera公司的FLEX、ACEX、APEX系列和Xilinx公司的XC4000、Spartan、Virtex系列等等。图2是Xilinx公司的XC4000系列的基本可配置逻辑块CLB结构,从图2可以看出,一个CLB由两个独立的4输入查找表、一个3输入查找表和两个触发器构成。查找表实际上是一个RAM结构,一个4输入的查找表就是一个16×1 RAM单元,通过编程可以实现4输入变量的任意逻辑函数。CLB内部的两个触发器通过编程,可以配置成不同类型的触发器。图2中的梯形符号均为可编程的数据选择器符号,对这些数据选择器的控制端编程,就可以改变CLB的配置结构,进而实现对器件的编程控制。数据选择器的选择控制端是由SRAM控制的,也就是说,FPGA的编程信息是通过SRAM实现的。由于器件掉电后,SRAM中的数据会丢失,因此,设计中需要根据情况为器件提供上电配置的电路,以保证上电后器件可以正常工作。配置FPGA的数据是存储在非易失数据存储器中的,使用时不便对其加密。

由此可见,CPLD内部具有大量的乘积项和较少的触发器,而FPGA正好相反,其内部具有较少的组合逻辑资源和较多的触发器。当设计中组合逻辑电路成分较多,而时序电路成分较少的电路时,或者需要很好的加密功能时,选择CPLD比较适合,例如设计宽译码器和复杂编码器时,最好选择CPLD。当我们要设计功能较为复杂的时序电路时,由于复杂的时序电路需要大量的触发器单元,例如设计ALU,选择FPGA则比较适合。

2. EDA开发系统选择

为了学习和使用可编程ASIC器件,需要有一个合适的开发平台,即EDA开发系统。EDA开发系统按功能划分为集成开发系统、综合系统和仿真系统。集成开发系统一般是由可编程ASIC器件生产厂商开发的开发系统平台,用户利用这些开发平台可以完成全部设计工作。代表的开发平台如Xilinx公司的Foundation系列、Altera公司的MaxplusII 系列和QuartusII系列。综合系统一般是由第三方软件开发商开发的,为各器件厂商和普通用户提供对原始设计输入进行综合产生编程数据的软件,代表的综合系统如Synplicity公司的Synplicity 系列。仿真系统是仅用于对设计进行功能仿真的EDA软件,一般也是由第三方开发的,它不能生成编程数据,只用作设计初期工作,也就是说它不涉及具体的器件。代表的仿真系统如Aldec公司的Active-HDL。

由此可见,作为初学者应将功能齐全、能够完成全部设计工作的集成开发系统作为EDA开发系统的首选。附表是Xilinx公司的Foundation系列和Altera公司的QuartusII系列的性能对比表,从附表中可以看出:两种集成系统的设计流程基本相同,只是各自采用的具体程序不同,初学用户可以根据自己喜好的需要选择一种作为入门系统来学习,一旦掌握一种系统,很容易学习其它系统。笔者认为,Altera公司的Quartus II系统提供了较多与74系列中小规模器件完全相同的设计元件,对于初学者更容易开始设计;Xilinx公司的Foundation系统提供了较好的图形导航界面,对于初学者更容易掌握软件的使用。

3. EDA实验系统选择

无论集成开发系统功能如何强大,仿真功能如何准确,为了更快更好地学习和使用CPLD/FPGA,都需要有一个开发实验平台。实验平台根据其性能可以分为两类:评估平台和实验系统。评估平台是用来对某一个具体的器件的功能进行验证的实验平台,评估板大多占用CPLD/FPGA的引脚资源,用户只能在此硬件约束的条件下,对器件验证和评估,而不能进行其它设计。在这类评估平台上,只可以完成特定的实验验证,例如各厂商提供的EVM板就属于这一类平台。实验系统则是一种开放的平台。所谓开放的实验平台是与各种评估板相对而言的。图3所示为一个开放式的实验系统(多功能EDA实验系统),从图3中可以看出,该多功能EDA实验系统由主板和子板构成,用户通过更换不同类型的子板,就可以实现对不同厂家的不同类型芯片进行设计开发。在该实验系统中,还提供了丰富的辅助资源以及单片机调试接口。在这个系统中,不仅可以对CPLD/FPGA进行设计,还可以利用单片机开发系统方便地进行CPLD/FPGA与单片机之间数据传输的设计。另外,多功能EDA实验系统还应该提供独立的下载编程电缆,并且编程接口与各公司所提供的编程电缆接口完全相同,这样可以为用户的目标系统提供器件编程服务。

4. EDA开发流程

根据自己的需要选择了器件、开发系统和实验系统后,就可以开始EDA设计了。利用集成开发系统进行EDA设计的流程如图4所示。设计一般可分为设计输入、设计综合和器件编程三个步骤。设计输入是由设计者完成,作为最原始的设计输入;设计综合包括优化、合并、映射、布局、布线等工作,并产生最终的下(上接25页)载数据文件;器件编程是将设计输出的数据文件通过下载电缆写入到可编程器件内部,使其实现设计的功能。 EDA开发系统同时还具有功能仿真和时序仿真的功能,通常情况下,这些仿真结果是可以信赖的,开发系统一般是以最坏的情况给出仿真结果的,实际的工作情况比仿真结果会好一些。为了提高设计效率,必须正确掌握功能仿真和时序仿真的方法,准确理解仿真结果,以便于及时修改设计,而不必采用反复下载方式来验证设计结果。图4中的虚器件测试是EDA设计的最后一步,是在EDA实验系统或目标系统中完成的。在整个设计过程中,设计输入是最关键的,是由设计者对器件所实现的数字系统的逻辑功能进行描述阶段。设计输入一般有电路图输入法、真值表输入法、状态机输入法、波形输入法、硬件描述语言输入法等等,其中电路图输入和硬件描述语言输入是最常用的两种输入形式。

电路图输入法是把数字系统用逻辑图来表示的输入方法,使用元件符号和连线等来描述设计。电路图描述要求设计工具提供必要的元件库和逻辑宏单元库。这种输入方法具有条理清楚、易学、易用等优点。比较适用于初学者使用和较小的系统设计。几乎所有的可编程器件开发系统都支持这种输入方法。但是电路图输入法具有可移植性、可读性较差、不便于交流的缺点。

硬件描述语言是用文本形式描述设计,常用的硬件描述语言有不同语言形式。常用的有ABEL-HDL、VHDL和Verilog HDL。 ABEL-HDL支持布尔方程、真值表、状态机等逻辑表达方式。适合对计数器、译码器、比较器和状态机等逻辑功能的描述。VHDL和Verilog HDL类似于C语言,在描述复杂设计时,非常简洁,具有很强的逻辑描述功能,适合设计比较复杂的数字系统。

在设计过程中,往往采用层次化设计方法,分模块、分层次地进行设计描述。描述系统总功能的设计为顶层设计,描述系统中较小单元的设计为底层设计。层次化设计方法比较自由,可以在任何层次使用电路图或硬件描述语言进行描述。根据两种输入方式的特点,通常我们在顶层设计中采用电路图输入方式,而在底层设计中,采用硬件描述语言描述模块的逻辑功能。

结语

EDA实验报告 第5篇

QUARTUS II 软件使用及组合电路设计仿真

实验目的:

学习QUARTUS II 软件的使用,掌握软件工程的建立,VHDL源文件的设计和波形仿真等基本内容。

实验内容:

1.四选一多路选择器的设计 基本功能及原理 :

选择器常用于信号的切换,四选一选择器常用于信号的切换,四选一选择器可以用于4路信号的切换。四选一选择器有四个输入端a,b,c,d,两个信号选择端s(0)和s(1)及一个信号输出端y。当s输入不同的选择信号时,就可以使a,b,c,d中某一个相应的输入信号与输出y端接通。

逻辑符号如下:

程序设计:

软件编译:

在编辑器中输入并保存了以上四选一选择器的VHDL源程序后就可以对它进行编译了,编译的最终目的是为了生成可以进行仿真、定时分析及下载到可编程器件的相关文件。仿真分析:

仿真结果如下图所示

分析:

由仿真图可以得到以下结论:

当s=0(00)时y=a;当s=1(01)时y=b;当 s=2(10)时y=c;当s=3(11)时y=d。符合我们最开始设想的功能设计,这说明源程序正确。2.七段译码器程序设计 基本功能及原理:

七段译码器是用来显示数字的,7段数码是纯组合电路,通常的小规模专用IC,如74或4000系列的器件只能作十进制BCD码译码,然而数字系统中的数据处理和运算都是2进制的,所以输出表达都是16进制的,为了满足16进制数的译码显示,最方便的方法就是利用VHDL译码程序在FPGA或CPLD中实现。本项实验很容易实现这一目的。输出信号的7位分别接到数码管的7个段,本实验中用的数码管为共阳极的,接有低电平的段发亮。数码管的图形如下

七段译码器的逻辑符号:

程序设计:

软件编译:

在编辑器中输入并保存了以上七段译码器的VHDL源程序后就可以对它进行编译了,编译的最终目的是为了生成可以进行仿真、定时分析及下载到可编程器件的相关文件

。仿真分析:

仿真结果如下图所示:

分析: 由仿真的结果可以得到以下结论:

当a=0(0000)时led7=1000000 此时数码管显示0; 当a=1(0001)时led7=1111001 此时数码管显示1; 当a=2(0010)时led7=0100100 此时数码管显示2; 当 a=3(0011)时led7=0110000 此时数码管显示3; 当 a=4(0100)时led7=0011001 此时数码管显示4; 当 a=5(0101)时led7=0010010 此时数码管显示5; 当 a=6(0110)时led7=0000010 此时数码管显示6; 当 a=7(0111)时led7=1111000 此时数码管显示7; 当 a=8(1000)时led7=0000000 此时数码管显示8; 当a=9(1001)时led7=0010000 此时数码管显示9; 当a=10(1010)时led7=0001000 此时数码管显示A; 当a=11(1011)时led7=0000011 此时数码管显示B; 当 a=12(1100)时led7=1000110 此时数码管显示C; 当a=13(1101)时led7=0100001 此时数码管显示D; 当a=14(1110)时led7=0000110 此时数码管显示E; 当a=15(1111)时led7=0001110 此时数码管显示F;

这完全符合我们最开始的功能设计,所以可以说明源VHDL程序是正确的。

实验心得:

通过这次实验,我基本掌握了QUARTUS II软件的使用,也掌握了软件工程的建立,VHDL源文件的设计和波形仿真等基本内容。在实验中,我发现EDA这门课十分有趣,从一个器件的功能设计到程序设计,再到编译成功,最后得到仿真的结果,这其中的每一步都需要认真分析,一遍又一遍的编译,修改。当然,中间出现过错误,但我依然不放弃,一点一点的修改,验证,最终终于出现了正确的仿真结果,虽然有一些毛刺,但是总的来说,不影响整体的结果。

实验二:计数器设计与显示

实验目的:

(1)熟悉利用QUARTUS II中的原理图输入法设计组合电路,掌握层次化的设计方法;

(2)学习计数器设计,多层次设计方法和总线数据输入方式的

仿真,并进行电路板下载演示验证。实验内容:

1.完成计数器设计

基本功能及原理:

本实验要设计一个含有异步清零和计数使能的4位二进制加减可控计数器,即有一个清零端和使能端,当清零端为1时异步清零,即所有输出值都为0,当使能端为0时,计数器停止工作,当使能端为1时,正常工作,由时钟控制。另外,还应该有一个控制端,当控制端为0时,进行减法运算,当控制端为1时,进行加法运算。输出端有输出值和进位端,当进行加法运算时,输出值递增,当减法运算时,输出值递减,同时进位端进行相应的变化。

4位二进制加减计数器的逻辑符号:

程序设计:

软件编译:

在编辑器中输入并保存了以上4位二进制加减计数器的VHDL源程序后就可以对它进行编译了,编译的最终目的是为了生成可以进行仿真、定时分析及下载到可编程器件的相关文件。仿真分析: 仿真结果如下:

分析:

由仿真图可以得到以下结论:

当enable端为0时,所有数值都为0,当enable端为1时,计数器正常工作;当reset端为1时,异步清零,所有输出数值为0,当reset端为0时,正常工作;当updown端为0时,进行减法运算,当updown为1时,进行加法运算;另外,当程序进行减法运算时,出现借位时,co为1,其余为0,当进行加法运算时,出现进位时,co为1,其余为0。图中所有的功能与我们设计的完全一样,所以说明源程序正确。2.50M分频器的设计

基本功能及原理:

50M分频器的作用主要是控制后面的数码管显示的快慢。即一个模为50M的计数器,由时钟控制,分频器所有的端口基本和上述4位二进制加减计数器的端口一样,原理也基本相同。分频器的进位端(co)用来控制加减计数器的时钟,将两个器件连接起来。50M分频器的逻辑符号如下:

程序设计:

软件编译:

在编辑器中输入并保存了以上50M分频器的VHDL源程序后就可以对它进行编译了,编译的最终目的是为了生成可以进行仿真、定时分析及下载到可编程器件的相关文件。仿真分析: 结果如下:

上图为仿真图的一部分,由于整个图太大,所以显示一部分即可,其余部分如图以上图规律一直递增,直到50M为止,然后再重复,如此循环。

上图是部分输出的显示,由于整个图太大,所以只显示部分,其余部分如图递增。

分析:

由仿真图可以看出,当reset为0,enable为1时(因为本实验中计数器的模值太大,为了尽可能多的观察出图形,可让reset一直为0,enable一直为1,即一直正常工作),输出值由0一直递增到50M,构成一个加法计数器,与我们设计的功能一致。3.七段译码器程序设计

基本功能及原理:

七段译码器是用来显示数字的,7段数码是纯组合电路,通常的小规模专用IC,如74或4000系列的器件只能作十进制BCD码译码,然而数字系统中的数据处理和运算都是2进制的,所以输出表达都是16进制的,为了满足16进制数的译码显示,最方便的方法就是利用VHDL译码程序在FPGA或CPLD中实现。本项实验很容易实现这一目的。输出信号的7位分别接到数码管的7个段,本实验中用的数码管为共阳极的,接有低电平的段发亮。

七段译码器的逻辑符号:

程序设计:

软件编译:

在编辑器中输入并保存了以上七段译码器的VHDL源程序后就可以对它进行编译了,编译的最终目的是为了生成可以进行仿真、定时分析及下载到可编程器件的相关文件。仿真分析:

仿真结果如下图所示:

分析:具体分析与实验一中七段译码器的分析相同,在此不再赘述。计数器和译码器连接电路的顶层文件原理图:

原理图连接好之后就可以进行引脚的锁定,然后将整个程序下载到已经安装好的电路板上,即可进行仿真演示。

实验心得:

经过本次试验,我学到了很多。首先,我加强了对QUARTUS II软件的掌握;其次,我掌握了电路图的顶层文件原理图的连接,学会了如何把自己设计的程序正确的转化为器件,然后正确的连接起来,形成一个整体的功能器件;最后,我学会了如何安装以及如何正确的把完整的程序下载到电路板上,并进行演示验证。

实验三:大作业设计

(循环彩灯控制器)

实验目的:

综合应用数字电路的各种设计方法,完成一个较为复杂的电路设计。实验内容:

流水灯(循环彩灯)的设计 设计任务:

设计一个循环彩灯控制器,该控制器可控制10个发光二极管循环点亮,间隔点亮或者闪烁等花型。要求至少三种以上花型,并用按键控制花型之间的转换,用数码管显示花型的序号。基本原理:

该控制器由两部分组成,一部分是一个50M的分频器,其主要用来控制花色变化的快慢;另一部分是一个彩灯控制器,该彩灯控制器可由两个开关控制花型的序号,10个输出分别控制10个发光二极管的亮暗,当输出为1时,该发光二极管亮,输出为0时,该二极管灭。将分频器的co端用来控制彩灯控制器的时钟,将两个器件连接起来。1.分频器的设计

50M分频器与实验二中的分频器一样,这里不再赘述。2.彩灯控制器的设计 基本原理:

该彩灯控制器由时钟控制,reset异步清零,enable当做使能端,由两个开关do(0-1)来控制选择不同的花型,10个输出端lig(0-9)来控制10个LED灯的亮灭。因为用了两个开关来控制花型,所以一共有4种花色。

彩灯控制器的逻辑符号:

程序设计:

3.七段译码器的设计

七段译码器是用来显示不同花型的序号的,其设计与实验一中的设计一样,这里不再赘述。循环彩灯控制器的原理图:

仿真波形如下: 第一种花型:

第二种花型:

第三种花型:

第四种花型:

仿真分析:

将以上仿真波形图和源程序对比,我们可以看到,仿真出来的波形和我们设计的功能一致,这说明源VHDL程序是正确的。实验心得:

EDA实验报告 第6篇

实验报告

姓名:汤灿亮 学号:2012118060 班级:1211自动化

实验一 QUARTUS Ⅱ的设计流程

一、实验目的:

1、掌握QUARTUSⅡ安装过程;

2、熟悉QUARTUSⅡ设计环境;

3、掌握QUARTUSⅡ的设计过程。

二、实验内容:

用文本输入法设计一个二进制加法器。

三、实验步骤:

(一)、创建工作文件夹

在windows中新建一个文件夹(又称工作库或WORK LIBRARY),用于保存设计工程项目的有关文件。注:设计工程项目的所有有关文件不能保存在根目录下,必须保存在一个文件夹之下。例如建立的文件夹:E:CNT10

(二)、启动Quartus II 点击QUARTUSⅡ9.0图标打开QUARTUSⅡ9.0设计窗口。或点击QUARTUSⅡ9.0图标打开QUARTUSⅡ9.0设计窗口

(三)、设计文件输入

1、打开输入文件编辑器

点击菜单Filenew„选择Verilog HDL file建立一个文本设计文件。用文本输入法输入程序。

2、保存文件,文件名同程序的模块名。后缀.v

(四)、全编译(逻辑综合)

1、创建工程

点击菜单FileNew Project Wizard…….进行工程设置。完成工程文件夹的选定、工程名、顶层设计文件名(主程序)、编程器件的选择等工程设置。

2、编译前的相关设置设置

⑴选择PLD芯片:AssignmenmtsSettingsDevice弹出的窗口中选择选择芯片。

⑵选择配置芯片的工作方式AssignmenmtsSettingsDeviceDevice&Pin Options弹出的窗口中首选General项,在Options栏中选择Auto-restart-configuration after error.⑶选择配置芯片和编程方式:AssignmenmtsSettingsDeviceDevice&Pin Options弹出的窗口中选择Configuration栏,在窗口中设置配置方式,配置芯片和是否需要生成压缩的配置文件。

⑷选择输出设置:(1)-(4)项默认方式,可以不做任何操作,⑸选择目标器件闲置引脚的状态:AssignmenmtsSettingsDeviceDevice&Pin Options弹出的窗口中选择Unused Pins栏,在窗口中对闲置的引脚设置,推荐设置为As input tri-stated。

3、执行全程编译:ProcessingStart Compilation。完成对设计项目的检 错、逻辑综合、结构综合、配置文件生成以及时序分析。

(五)、功能仿真(或时序仿真)

建议先做功能仿真,以检验设计项目的逻辑真确性,这样可以提高设计效率。

1、功能仿真设置:AssignmenmtsSettings弹出的窗口中选择Simulator Settings。在右边Simulation mode中选择 Functional.2、ProcessingGenerate Functional Simulation netlist,生成功能仿真所需的文件。

3、建立波形文件并进行功能仿真

⑴FileNew,在窗口中选择Vector Waveform file打开向量波形文件编辑器。

⑵设置仿真时间区域:可默认。一般几十微妙。时间区域过长,使仿真时间变长,影响仿真效率。

⑶在向量波形文件编辑器中添加项目的相关引脚。原则上是所有引脚,但有的项目引脚很多,可以只添加必要的一些引脚。双击向量波形文件编辑器Name栏的空白区域后,会弹出一个“Insert Node or Bus”对话框,在弹出的对话框中选择“Node Finder„”按钮,则弹出“Node Finder„”对话框,选择Filter:Pins:all,然后点击List,Nodes Found栏将列出所有输入、输出端口。选择要观察的信号,点击“>”命令按钮加入到观察目标窗口中。选择OK,则在波形图中加入了待观察信号的图形。

或者执行ViewUtility WindowsNode Finder命令打开Node Finder窗口,在弹出的窗口中将所需引脚拖入波形编辑器中。

⑷编辑输入波形:对所有的输入引脚设置合适的波形。⑸启动仿真器:ProcessingStart Simulation.⑹观察分析仿真结果。仿真结果保存于文件“Simulation Report”,此文件在仿真完成后会自动弹出。若仿真结果有出入,重新修改程序,直到仿真结果没有问题。

(六)、下载验证:

1、芯片选择ACEX1KEP1K30QC208-2;

2、引脚锁定:

3、全编译;

4、下载线连接:将25针连下一端连接电脑LPT1口,一端连接到编程模块的DB25接口,再用十针连线一头插入通用编程模块JTGA下载接口处,另一头连接到目标芯片的下载接口。

5、打开实验箱电源,将模式选择开关CTRL的(2)(4)(8)拨至ON,使按键KD1,KD2,LED1,LED2,LED3,LED4,LED5等有效。

6、下载:ToolsProgrammer,完成下载。

7、拨动开关按键KD1,KD2验证电路。

四、实验程序及仿真结果

(一)、实验程序:

时序仿真结果:

波形文件及仿真:

五、实验箱现象描述

注:在程序正确,正确操作实验箱并成功下载并正常运行程序的前提下,现象为:实验箱上一排设定的LED灯,分别为4个表示四位二进制码,一个表示使能信号EN,一个表示复位信号RST,一个表示置数信号,一个进位位COUT,高电平时表示进位,四个用于置数的灯。EN信号高电平有效,低电平起保持作用,RST低电平有效,起复位作用,LOAD信号低电平有效,起置数作用。启动实验箱,让EN灯亮(高电平),RST灯亮(高电平),LOAD灯亮(高电平),此时表示四位二进制码的LED灯分别从0到9计数(约为1S记一个数),到10的时候,显示数的四个LED灯表示成0(全灭),进位位灯(COUT)闪动一次(表示进一位),如此反复。使EN灯熄灭(低电平),显示数的灯停止变动,保持在它当前所表示的数值。恢复EN灯亮,继续计数。使RST灯熄灭(低电平),显示数的灯立即变为全灭(表示复位为0)。设置任意值,使LOAD灯熄灭(低电平),显示灯变成设置的数值,然后正常计数。

六、心得体会

在这次实验中,QUARTUS II软件是英文版的,一下基本功能在第一次中还是不够熟悉,通过问老师同学,慢慢的了解到QUARTUS Ⅱ软件的基本使用方法,以及从编写程序到下载到实验箱验证运行的基本流程,实验二用原理图输入法设计2位频率计

一、实验目的:

1.熟悉和掌握用QUARTUS Ⅱ的原理图输入方法设计简单数字系统的方法,并通过一个2位频率计的设计掌握用EDA软件进行数字系统设计的详细流程。2.掌握用EDA技术的层次化设计方法; 3.掌握多个数码管动态显示的原理与方法

二、实验内容

用原理图输入法设计一个2位频率计

三、实验步骤

1.在顶层文件设计窗口中设计频率计,频率计的设计分成几部分设计,分别是一个2位十进制计数器,一个时序控制电路,一个显示电路模块。

2.先设计2位十进制计数器,如图显示为设计好的2位十进制计数器。

步骤:(1)、点击file—new,弹出如图所示窗口,点击design File中Block diagram/schematic file,再点击ok即可。(2)、在弹出的bdf文件设计窗口中设计所需的设计,设计完成后,点击编译按钮,编译无误后,再进行时序仿真。

结果如图:

(3)、即可点击file—created/update—create symbol files for current file.生成元件符号,供高层次设计调用。注意:需要独立建立工程,2位十进制计数器的工程名和bdf文件名都为counter8。

3、设计时序控制电路,设计步骤与设计2位类似,设计完成后,一样需要设计文件符号供高层次设计调用,如图为设计好的时序控制电路。

4.在顶层设计窗口中设计顶层设计,最终的设计如图

进行时序仿真无误后进行波形仿真,结果如图:

可以从波形仿真中看出,当输入的待测信号的周期为410ns的时候,所测的的频率的最后两位为39。

四、试验箱验证及现象描述

引脚正确设定并正确下载到试验箱后,调节待测信号频率,当输入为4hz时,数码管上显示04,当输入为8hz,数码管上显示08,当输入为16HZ时,数码管

上显示为16,当输入为128hz时,数码管上显示为28。

五、心得体会

这次实验中,按照书上面的接线图,完成基本的接线,然后在电脑上面设计原理图,进行实验的测试,掌握用EDA技术的层次化设计方法,在实验中也出现过点失误,软件运行出错,经过检查,发现软件没有破解,在实验中还是要注意小细节。

实验三简易正弦波信号发生器设计

一、实验目的:

1、进一步熟悉QuartusII设计流程;

2、熟悉LMP_ROM与FPGA硬件资源的使用方法。3、熟悉SignalTap II嵌入式逻辑分析仪的使用方法。

二、实验内容

用原理图设计一个简易的正弦波信号发生器。

三、实验步骤

1.建立一个工程,取名为SIN_GNT。

2.生成.mif文件,用直接编辑法。点击file—new—memory file—memory initialization file,点击OK,选number为128位,word size为8位,点击ok,填写 表格,结果如图

3.以原理图方式对LPM_ROM进行设置和调用,在工程原理图编辑窗中双击,出现symbol框图中点击megawizard plug-in manager,在所示窗口中点击memory compiler的ROM:1-PORT,取文件名为ROM78,正弦波数据初始化文件选择DATA7X8.mif,即可生成正弦信号数据存储器ROM,如图所示

4.用原理图方式对7为计数器LPM模块,方法与制作ROM78模块类似,如图所示

5.新建一个原理图设计窗口,取名为SIN_GNT,在窗口里面设计所需的电路,结果如图,进行时序仿真,无误后建立波形文件,结果如图

由图可知,在时间脉冲的作用下,AR计数,相对于的,Q也从正弦信号数据存储器ROM中输出相对应的数值,由这两项,这可以在示波器上输出正弦波。

四、心得体会

在实验中,LPM 是参数可设置模块库Library of Parameterized Modules 的英语缩写,Altera 提供的可参数化宏功能模块和LPM 函数均基于Altera 器件的结构做了优化设计。在许多实用情况中,必须使用宏功能模块才可以使用一些Altera 特定器件的硬件功能。例如各类片上存储器、DSP 模块、LVDS 驱动器、嵌入式PLL 以及SERDES 和DDIO 电路模块等等。这些可以以图形或硬件描述语言模块形式方便调用的宏功能块,使得基于EDA 技术的电子设计的效率和可靠性有了很大的提高LPM可实现基于LPM的流水线的累加器的设计,逻辑数据采样电路设计,简易正弦信号发生器的设计

实验四用状态机实现序列检测器的设计

一、实验目的

1、熟悉状态机的作用及设计方法;

2、学习用状态机实现序列检测器的设计,并对其进行仿真和硬件测试。

二、实验原理

序列检测器可用于检测一组或多组由二进制码组成的脉冲序列信号,当序列检测器连续收到一组串行二进制码后,如果与检测器预先设置的码相同,则输出为1,否则输出为0。

三、实验内容

设计一个序列检测器,对1110010进行检测,对设计进行仿真测试并给出仿 真波形。

四、实验步骤

(1)运行软件,创建一个工程,取名为SHCK,打开文本文件编辑窗口,输入编写好的程序,如图所示。

取名为shiyan4,保存生成shiyan4.v文件。

(2)编译,时序仿真,直至无错误。

(3)建立波形文件,保存,取名为SHCK。设置各个需要的设置的参数,仿真时间设置为50us,时钟信号周期为4us,复位信号高电平有效,一般情况保持低电平,设置输入信号DIN含有输入数据段如图1110010,如图所示

(4)点击波形仿真,结果如图

由仿真结果可以看出,只有当输入完整的1110010时,输出信号才是高电平。(5)点击tools—netlist viewers—state machine viewers,查看状态转换表。

四、心得体会

eda作品设计报告

eda作品设计报告(精选6篇)eda作品设计报告 第1篇EDA多 功 能 数 字 时 钟专业:11级应用电子技术 班级:二班学号:110372021307...
点击下载文档文档内容为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

确认删除?
回到顶部