多语言展示
当前在线:261今日阅读:113今日分享:31

怎样做一份EDA设计报告?

EDA课程设计报告 设计题目: 专业: 姓名: 学号: 指导老师(首先是前言部分) 前言 随着电子设计技术、ISP(在系统可编程)技术,PLD(可编程逻辑器件),与EDA(电子设计自动化)紧密结合,它代表了数字系统设计领域的最高水平,给数字电路的设计带来了革命性的变化。 作为现在的大学生应熟练掌握这门技术,为以后的发展打下良好的基础,本实验设计是应用QuartusII环境及VHDL语言设计一个时间可调的数字时钟。使自己熟练使用QuartusII环境来进行设计,掌握VHDL语言的设计方法。要注重理论与实践之间的不同,培养自己的实践能力!(目录部分)例: 目录一、课程设计任务及要求41.1实验目的41.2功能设计4二、整体设计思想42.1性能指标及功能设计42.2总体方框图5三、详细设计53.1数字钟的基本工作原理:53.1.1时基T产生电路53.1.2调时、调分信号的产生63.1.3计数显示电路63.2设计思路63.3设计步骤73.3.1工程建立及存盘73.3.2工程项目的编译83.3.3目标芯片的选择83.3.4时序仿真93.3.5引脚锁定103.3.6硬件测试113.3.7实验结果12四、设计总结12(正文部分)一、课程设计任务及要求1.1实验目的1)掌握VHDL语言的基本运用2)掌握QuartusII的简单操作并会使用EDA实验箱3)掌握一个基本EDA课程设计的操作1.2功能设计1)有时、分、秒计数显示功能,小时为24进制,分钟和秒为60进制以24小时循环计时2)设置复位、清零等功能3)有校时功能,可以分别对时及分进行单独校时,使其校正到标准时间4)时钟计数显示时有LED灯显示;二、整体设计思想2.1性能指标及功能设计1)时、分、秒计时器时计时器为一个24进制计数器,分、秒计时器均为60进制计数器。当秒计时器接受到一个秒脉冲时,秒计数器开始从1计数到60,此时秒显示器将显示00、01、02、...、59、00;每当秒计数器数到00时,就会产生一个脉冲输出送至分计时器,此时分计数器数值在原有基础上加1,其显示器将显示00、01、02、...、59、00;每当分计数器数到00时,就会产生一个脉冲输出送至时计时器,此时时计数器数值在原有基础上加1,其显示器将显示00、01、02、...、23、00。即当数字钟运行到23点59分59秒时,当秒计时器在接受一个秒脉冲,数字钟将自动显示00点00分00秒。2)校时电路当开关拨至校时档时,电子钟秒计时工作,通过时、分校时开关分别对时、分进行校对,开关每按1次,与开关对应的时或分计数器加1,当调至需要的时与分时,拨动reset开关,电子钟从设置的时间开始往后计时三、详细设计3.1数字钟的基本工作原理:3.1.1时基T产生电路数字钟以其显示时间的直观性、走时准确性作为一种计时工具,数字钟的基本组成部分离不开计数器,在控制逻辑电路的控制下完成预定的各项功能。由晶振产生的频率非常稳定的脉冲,经整形、稳定电路后,产生一个频率为1Hz的、非常稳定的计数时钟脉冲。3.1.2调时、调分信号的产生由计数器的计数过程可知,正常计数时,当秒计数器(60进制)计数到59时,再来一个脉冲,则秒计数器清零,重新开始新一轮的计数,而进位则作为分计数器的计数脉冲,使分计数器计数加1。现在我们把电路稍做变动:把秒计数器的进位脉冲和一个频率为2Hz的脉冲信号同时接到一个2选1数据选择器的两个数据输入端,而位选信号则接一个脉冲按键开关,当按键开关不按下去时(即为0),则数据选择器将秒计数器的进位脉冲送到分计数器,此时,数字钟正常工作;当按键开关按下去时(即为1),则数据选择器将另外一个2Hz的信号作为分计数器的计数脉冲,使其计数频率加快,当达到正确时间时,松开按键开关,从而达到调时的目的。调节小时的时间也一样的实现。3.1.3计数显示电路由计数部分、数据选择器、译码器组成,是时钟的关键部分。1、计数部分:由两个60进制计数器和一个24进制计数器组成,其中60进制计数器可用6进制计数器和10进制计数器构成;24进制的小时计数同样可用6进制计数器和10进制计数器得到:当计数器计数到24时,“2”和“4”同时进行清零,则可实现24进制计数。2、数据选择器:84输入14输出的多路数据选择器,因为本实验用到了8个数码管(有两个用来产生隔离符号‘—’)。3、译码器:七段译码器。译码器必须能译出‘—’,由实验二中译码器真值表可得:字母F的8421BCD码为“1111”,译码后为“1000111”,现在如果只译出‘—’,即字母F的中间一横,则译码后应为“0000001”,这样,在数码管上显示的就为‘—’。3.2设计思路根据系统设计要求,系统设计采用自顶向下设计方法,由时钟分频部分、计时部分、按键部分调时部分和显示部分五个部分组成。这些模块都放在一个顶层文件中。1)时钟计数:首先下载程序进行复位清零操作,电子钟从00:00:00计时开始。sethour可以调整时钟的小时部分,setmin可以调整分钟,步进为1。由于电子钟的最小计时单位是1s,因此提供给系统的内部的时钟频率应该大于1Hz,这里取100Hz。CLK端连接外部10Hz的时钟输入信号clk。对clk进行计数,当clk=10时,秒加1,当秒加到60时,分加1;当分加到60时,时加1;当时加到24时,全部清0,从新计时。用6位数码管分别显示“时”、“分”、“秒”,通过OUTPUT(6DOWNTO0)上的信号来点亮指定的LED七段显示数码管。2)时间设置:手动调节分钟、小时,可以对所设计的时钟任意调时间,这样使数字钟真正具有使用功能。我们可以通过实验板上的键7和键4进行任意的调整,因为我们用的时钟信号均是1HZ的,所以每LED灯变化一次就来一个脉冲,即计数一次。3)清零功能:reset为复位键,低电平时实现清零功能,高电平时正常计数。可以根据我们自己任意时间的复位。3.3设计步骤3.3.1工程建立及存盘1.打开QuartusⅡ,单击“File”菜单,选择File→NewProjectWizard,对话框如下:分别输入项目的工作路径、项目名和实体名,单击Finish。3.3设计步骤3.3.1工程建立及存盘1.打开QuartusⅡ,单击“File”菜单,选择File→NewProjectWizard,对话框如下:分别输入项目的工作路径、项目名和实体名,单击Finish。2.单击“File”菜单,选择New,弹出小对话框,双击“VHDLFile',即选中了文本编辑方式。在出现的“Vhdl1.vhd”文本编辑窗中键入VHDL程序,输入完毕后,选择File→SaveAs,即出现“SaveAs”对话框。选择自己建立好的存放本文件的目录,然后在文件名框中键入文件名,按“Save”按钮。3.建立工程项目,在保存VHDL文件时会弹出是否建立项目的小窗口,点击“Yes”确定。即出现建立工程项目的导航窗口,点击“Next”,最后在出现的屏幕中分别键入新项目的工作路径、项目名和实体名。注意,原理图输入设计方法中,存盘的原理图文件名可以是任意的,但VHDL程序文本存盘的文件名必须与文件的实体名一致,输入后,单击“Finish”按钮。3.3.2工程项目的编译单击工具条上的编译符号开始编译,并随着进度不断变化屏幕,编译成功,完成后的屏幕如图3.2所示:3.3.3目标芯片的选择选择菜单Assignments选项的下拉菜单中选择器件Device…,如图3.3所示:在弹出的对话框中的Family(器件序列栏)对应的序列名,EP1C3对应的是Cyclone系列。在AvailableDevices里选择EP1C3T144-C8(有时需要把Showadvanceddevices的勾消去,以便显示出所有速度级别的器件)。注意:所选器件必须与目标板的器件型号完全一致。在图中,单击“DeviceandPinOptions…”,在弹出的“DeviceandPinOptions…”窗口中,单击“UnusedPins”标签。选择“Asoutputdrivinganunspecifiedsignal”(由于学习机的“FPGA”具有很多功能,为了避免使用引脚对其它器件造成影响,保证本系统可靠工作,将未使用引脚设定为输出不定状态)后,单击确定后,无误后单击“OK”。3.3.4时序仿真建立波形文件:选择File→New,在New窗中选中“OtherFile”标签。在出现的屏幕中选择“VectorWaveformFile”项出现一新的屏幕。在出现的新屏幕中,双击“Name”下方的空白处,弹出“InsertNodorBus”对话框,单击该对话框的“NodeFinder……”。在屏幕中的Filter中选择Pins,单击“List”。而后,单击“>>”,所有输入/输出都被拷贝到右边的一侧,这些正是我们希望的各个引脚,也可以只选其中的的一部分,根据实际情况决定。然后单击屏幕右上脚的“OK”。在出现的小屏幕上单击“OK”。设定仿真时间宽度。选择Edit→Endtime…选项,在Endtime选择窗中选择适当的仿真时间域,以便有足够长的观察时间。波形文件存盘。选择File→Saveas选项,直接存盘即可。运行仿真器。在菜单中选择项,直到出现,仿真结束。
推荐信息