1、EDA实习报告课 程 设 计 报 告设计名称 EDA(VHDL)课程设计 专业班级 电子1142 姓 名 学 号 成 绩 评 定考 核内 容平 时表 现设 计报 告设计成果和答辩综合评定成绩成 绩电气与信息工程学院2013年12月课程设计要求和成绩考核办法1不允许在教室或实验室内吸烟、吃零食,不准带无关人员到教室或实验室活动,否则扣平时表现分。2凡病事假超过3天(每天7小时),或迟到早退三次以上,或旷课两次(1天)以上,不得参加本次考核,按不及格处理,本次课程设计不能通过。3病事假必须有请假条,需经班主任或有关领导批准,否则按旷课处理。4课程设计的考核由指导教师根据设计表现(出勤、遵守纪律情况
2、等)、设计报告、设计成果、答辩等几个方面,给出各项成绩或权重,综合后给出课程设计总成绩。该设计考核须经教研室主任审核,主管院长审批备案。5成绩评定采用五级分制,即优、良、中、及格和不及格。6课程设计结束一周内,指导教师提交成绩和设计总结。实习报告要求实习报告内容、格式各专业根据实习(设计)类别(技能实习、认识实习、生产实习、毕业实习等)统一规范,经教研室主任审核、主管院长审批备案。注意: 1课程设计任务书和指导书在课程设计前发给学生,设计任务书放置在设计报告封面后和正文目录前。 2统一采用A4纸打印,课程设计报告除封皮外,设计任务书和正文都单面打印,左侧装订,订两个钉。目 录 一:基于FPGA
3、的半整数分频设计1 系统设计任务及功能描述.3 1.1 系统设计任务基于FPGA的半整数分频器设计 31.2 小数分频的基本原理 31.3 系统功能概述 32 系统设计方案 32.1系统设计方案 33 电路模块VHDL设计 3 3.1模12计数器 4 3.1.1模12计数器VHDL设计 4 3.1.2模12计数器波形仿真 4 3.1.3模12计数器元件图 5 3 .2分频比11.5的半整数分频器逻辑设计及仿真 5 3.2.1分频比11.5的半整数分频器逻辑图设计 6 3.2.1分频比11.5的半整数分频器逻辑仿真.64 课程设计总结 7参考文献 7 二:数字秒表的VHDL设计1 系统设计任务及
4、功能描述 82 系统设计方案 82.1系统设计方案 83 电路模块VHDL设计 9 3.1 模6 计数器VHDL设计及波形仿真 9 3.1.1 模6计数器VHDL设计 10 3.1.2 模6计数器波形仿真 10 3 .2 模10 计数器VHDL设计及波形仿真 11 3.2.1 模10 计数器VHDL设计 11 3.2.1 模10计数器波形仿真 12 3 .3 分频器VHDL设计及波形仿真 13 3.3.1 分频器VHDL设计 13 3.3.2 分频器波形仿真 14 3 .4 数字秒表VHDL设计及仿真 14 3.4.1数字秒表VHDL设计 14 3.4.2数字秒表电路波形仿真 15 3 .5
5、数字秒表总体设计结果 174 课程设计总结.18参考文献 18基于FPGA的半整数分频器设计一.系统设计任务及功能概述1.系统设计任务基于FPGA的半整数分频器设计任务要求:设有一个5MHz(或7、9、11、13、15、17、19、21、23 、25MHz)的时钟源,但电路中需要产生一个2MHz的时钟信号,由于分频比为2.5(或3.5、4.5、5.5、6.5、7.5、8.5、9.5、10.5、11.5、12.5),因此采用小数分频。2.小数分频的基本原理小数分频的基本原理是采用脉冲吞吐计数器和锁相环技术先设计两个不同分频比的整数分频器,然后通过控制单位时间内两种分频比出现的不同次数来获得所需要
6、的小数分频值。如设计一个分频系数为10.1的分频器时,可以将分频器设计成9次10分频,1次11分频,这样总的分频值为:F=(910+111)/(9+1)=10.13.系统功能概述本系统是一个基于FPGA的半整数分频器,具有以下功能:有一个5MHz的时钟源,通过半整数分频器后电路中可以产生的是一个2MHz的时钟信号二.系统设计方案和程序设计1.系统设计方案由于分频比为2.5,因此采用小数分频。分频系数为N-0.5的分频器,其电路可由一个异或门、一个模N计数器和二分频器组成。下图给出了通用半整数分频器电路组成。由于分频比为2.5则本实验中先要设计一个模11的计数器,然后建立模11计数器的元件,再利
7、用原理图设计完成分频器的设计三、电路模块VHDL程序设计-VHDL程序设计(1)模12计数器VHDL程序如下:library ieee; - IEEE库的使用说明use ieee.std_logic_1164.all; - 程序包使用说明use ieee.std_logic_unsigned.all;entity MOU12 is - 定义实体mou12 port(clr,ena,clk:in std_logic; - 定义端口CLR,ENA,CLK为输入端口 qa,qb,qc,qd:out std_logic); - QA,QB,QC,QD 为输出端口end entity MOU12; -
8、实体结束architecture art of MOU12 is - 定义了结构体 signal cqi: std_logic_vector(0 to 3); - 定义信号CQI begin process(clk,clr,ena)is -进程开始,clk,clr,ena为敏感信号 begin if clr=1 then cqi=0000; elseif clkevent and clk=1then -时钟有效 if ena=1then if cqi=11 then cqi=0000; - 有清零信号,或计数已达11,CQI输出0 else cqi=cqi+1; - 否则作加1操作end if
9、; end if; end if;end if;end process; - 进程结束qa=cqi(0); - 信号赋值qb=cqi(1);qc=cqi(2);qd=cqi(3);end architecture art;(2).输入、输出接口说明接口名称类型(输入/输出)结构图上的信号名引脚号说明INCLKINinclock2系统时钟 21MHzOUTCLKOUToutclk3系统输出QOUTq4系统输出接口名称类型(输入/输出)结构图上的信号名引脚号说明INCLKINinclock2系统时钟 21MHzOUTCLKOUToutclk3系统输出QOUTq4系统输出(3).模12计数器仿真波形
10、图图1 计数器仿真波形图(4).文件所在目录图2 模12文件所在目录四、半整数分频器电路总体设计结果(1)半整数分频器原理图图3 分频器原理图(2).半整数分频器仿真波形图图4 分频器仿真波形图 (3).半整数分频器所在目录.图5 半整数分频器所在目录五.课程设计总结本次试验采用了程序与原理图相结合的设计方法,主要编写计数器的程序实现分频。经过一段时间的实验操作使我熟练的掌握了对软件maxplus2的使用,加深了对VHDL语言的了解,提高了编程能力。在应用VHDL的过程中让我真正领会到了其并行运行与其他软件顺序执行的差别及其在电路设计上的优越性。用VHDL硬件描述语言的形式来进行数字系统的设计
11、方便灵活,利用EDA软件进行编译优化仿真极大地减少了电路设计时间和可能发生的错误,降低了开发成本。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从实践中得出结论,才能真正掌握知识,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,如源文件名与实体名不一致,导致程序无法运行,实验不足之处是实验每次只能一种分频比,如果需要其它的分频比,需要修改程序参考文献1 谭会生,瞿遂春.EDA综合应用与实例分析. 西安:西安电子科技大学出版社,2004,11.2潘松著.EDA技术实用教程(第二版).
12、北京:科学出版社,2005.3 谭会生,张昌凡编著.EDA技术及应用. 西安:西安电子科技大学出版社.2011,1.4 阎石主编.数字电子技术基础. 北京:高教出版社,2003.5 刘艳萍,高振斌,李志军.EDA实用技术及应用M.北京:国防工业出版社,2006基于VHDL的数字秒表设计一、 系统设计任务及功能概述1、系统设计任务基于VHDL的数字秒表设计本系统是一个数字秒表电路,数字秒表电路计时范围的要求为0.01-1小时,即59分59.99秒,所以这就需要获得一个比较精确的计时基准信号,此基准信号可以由CPLD/FPGA试验箱提供的频率具体设定分频器。六进制计数器针对10秒和10分位,十进制
13、针对0.01秒、0.1秒、1秒和1分位,这是根据不同的计数进位而设定的。电路还需要一个扫描电路,对每一位的计时结果进行不断的扫描,扫描的速度要大于输入信号的频率,避免出现扫描滞后、显示的结果不是当前结果的现象。扫描的同时还需要一个位码电路。位码电路的作用是将数字秒表的各位选中,以便七段数码管的显示。每一个功能模块作为一个实体单独进行设计,最后再用VHDL的例化语句将各个模块进行整合,生成顶层实体top。2、系统功能阐述:1、 分频器模块:将5MHz的时钟信号转换成100Hz的计时脉冲,使秒表正常工作;2、 计数器模块:这是本秒表设计的基本功能,对时间进行计数并在显示屏显示当前时间,这个模块中,
14、分别有十进制计数器和六进制计数器,共用四个十进制,分别表示数字秒表的百分之一秒、十分之一秒、秒和分,两个六进制,分别表示数字秒表的十秒和十分;3、 显示电路模块:6个计数器中的每一位计数器的4位输出,通过外设的BCD译码器输出显示。图2中,6个4位二进制计数器输出的最小显示值分别为:DOUT3.0-1/100s、DOUT7.4-1/10s、DOUT11.8-1s、DOUT15.12-10s、 DOUT19.16-1min、DOUT23.20-10min等二、 系统设计方案按照EDA自顶向下的设计理念,该数字秒表主要由显示译码器、分频器、十进制计数器(1/100s.1/10s.1s.1min)以
15、及六进制计数器(10s.10min)组成,其顶层电路如下图所示。图 2 数字秒表系统的连接的原理图图7 数字秒表电路逻辑实现原理总图三、电路模块VHDL程序设计(一)模6计数器VHDL设计及波形仿真1.模6计数器VHDL程序library ieee; - IEEE库的使用说明 use ieee.std_logic_1164.all; - 程序包使用说明use ieee.std_logic_unsigned.all;ENTITY cntm6 IS - 定义实体 PORT( CLK:IN std_logic; - 定义CLK.CLR.ENA为输入端口,CO.CQ为输出端口 CLR:IN std_l
16、ogic; ENA:IN std_logic; CO:out std_logic; CQ:OUT std_logic_vector(3 downto 0);END ENTITY cntm6; - 实体结束ARCHITECTURE ART OF cntm6 IS - 定义结构体 SIGNAL CQI:STD_LOGIC_VECTOR(3 DOWNTO 0); -定义信号CQI BEGIN PROCESS(CLK,CLR,ENA)IS - 敏感信号CLK,CLR,ENA BEGIN IF CLR=1 THEN - CLR置一清零 CQI=0000; ELSIF CLKEVENT AND CLK=1
17、THEN IF ENA=1 THEN IF CQI =0101THEN - 加到五再加一清零 CQI =0000; ELSE CQI=CQI+1; - 否则CQI加一,重载操作符+END IF;END IF;END IF ;END PROCESS;PROCESS(CQI)IS - 定义敏感信号CQI BEGIN IF CQI=0000THEN CO=1; - CO赋一 ELSE CO=0;END IF; END PROCESS; - 结束进程 CQ=CQI; - 把 CQ 赋给CQI END ARCHITECTURE ART; - 结束结构体2.输入输出接口说明接口名称类型(输入/输出)结构图
18、上的信号名说明CLK IN CLK 系统时钟CLR INCLR 系统输入 ENA INENA 系统输入CO OUT CO系统输出CQ OUT CQ系统输出3模6计数器波形仿真图图8 模6计数器波形仿真图4.文件所在目录图9 模6文件所在目录(二)模10计数器VHDL设计及波形仿真1. 模10计数器VHDL程序library ieee; - IEEE库的使用说明use ieee.std_logic_1164.all; - 程序包使用说明use ieee.std_logic_unsigned.all;ENTITY cntm10 IS - 定义实体 PORT( CLK:IN std_logic; -
19、 定义CLK.CLR.ENA为输入端口,CO.CQ为输出端口 CLR:IN std_logic; ENA:IN std_logic; CO:out std_logic; CQ:OUT std_logic_vector(3 downto 0);END ENTITY cntm10; - 实体结束ARCHITECTURE ART OF cntm10 IS - 定义结构体 SIGNAL CQI:STD_LOGIC_VECTOR(3 DOWNTO 0); -定义信号CQI BEGIN PROCESS(CLK,CLR,ENA)IS - 敏感信号CLK,CLR,ENA BEGIN IF CLR=1 THEN
20、 -CLR=1,CQI清零 CQI=0000; ELSIF CLKEVENT AND CLK=1THEN IF ENA=1 THEN IF CQI =1001THEN -加到九再加一清零 CQI =0000; ELSE CQI=CQI+1; -否则CQI加一,重载操作符+ END IF; END IF; END IF ; END PROCESS; -结束进程 PROCESS(CQI)IS - 定义敏感信号CQI BEGIN IF CQI=0000THEN CO=1; -CO赋一 ELSE CO=0; END IF; END PROCESS; - 结束进程 CQ=CQI; - 把 CQ 赋给CQ
21、I END ARCHITECTURE ART; - 结束结构体2.输入输出接口说明接口名称类型(输入/输出)结构图上的信号名说明CLK IN CLK 系统时钟CLR INCLR 系统输入 ENA INENA 系统输入CO OUT CO系统输出CQ OUT CQ系统输出3模10计数器波形仿真 图10 模10计数器波形仿真图4.模10文件所在目录图11 模10文件所在目录(三)分频器逻辑设计及仿真设计1.分频器VHDL程序library ieee; - IEEE库的使用说明 use ieee.std_logic_1164.all; - 程序包使用说明ENTITY clkgen is - 定义实体
22、PORT( CLK:IN std_logic; - 定义端口CLK 输入端口,NECLK输出端口 NEWCLK:out std_logic);END ENTITY clkgen;ARCHITECTURE ART OF clkgen IS - 定义结构体 SIGNAL CNT:INTEGER RANGE 0 TO 10#49999#; -定义信号CNT BEGIN PROCESS(CLK)IS - 敏感信号CLK BEGIN IF CLKEVENT AND CLK=1 THEN - 时钟有效 IF CNT=10#49999# THEN CNT=0; - 记满清零 ELSE CNT=CNT+1;
23、- 否则加一 END IF; END IF ; END PROCESS; - 结束进程 PROCESS(CNT)IS - 定义敏感信号CNT BEGIN IF CNT=10#49999# THEN NEWCLK=1; ELSE NEWCLKCLK,NEWCLK=S0); - 名称关联U1:CNTM10 PORT MAP(S0,CLR,ENA,DOUT(3 DOWNTO 0),S1); -位置关联U2:CNTM10 PORT MAP(S1,CLR,ENA,DOUT(7 DOWNTO 4),S2);U3:CNTM10 PORT MAP(S2,CLR,ENA,DOUT(11 DOWNTO 8),S3
24、);U4:CNTM10 PORT MAP(S3,CLR,ENA,DOUT(15 DOWNTO 12),S4);U5:CNTM10 PORT MAP(S4,CLR,ENA,DOUT(19 DOWNTO 16),S5);U6:CNTM10 PORT MAP(S5,CLR,ENA,DOUT(23 DOWNTO 20);END ARCHITECTURE ART; - 结束结构体2.输入输出接口说明接口名称 类型(输入/输出) 结构图上的信号名 说明CLK INCLK 系统时钟CLR INCLR 系统输入ENA INENA 系统输入DOUT OUTDOUT 系统输出3.数字秒表波形仿真图14 数字秒表时序波形仿真图4数字秒表所在目录图15 数字秒表所在目录四、数字秒表电路总体设计结果1.数字秒表总电路图图16 数字秒表电路逻辑实现原理总图2.数字秒表时序波形仿真图图17 数字秒表电路时序波形仿真图3.数字秒表所在目录图18 数字秒表所在目录4.输入、输出接口说明接口名称类型(输入/输出)结构图上的信号名说明CLKINCLK系统时钟 5 MHzRESIN
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1