- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《VHDL硬件描述语言与数字逻辑电路设计》课程设计报告
实验台号: 16号
姓 名:
学 号: 0704040216
专 业: 通信工程
班 级: 2班
指导老师:
湖南科技大学课程设计材料
课程设计的目的和任务:
1,熟悉软件编程环境,熟练使用max-plus2软件的各项功能;
2,编写VHDL语言程序,熟悉程序编写调试的一般过程,通过具体实验巩固所学VHDL语言程序的理论知识;
3,了解编译与仿真的作用与意义;
4,熟练掌握简单的VHDL语言语句与程序结构。踏实的完成此次课程设计的教学将为学生进一步深入了解电子产业的发展与内容,积极投身于工程技术的开发与研究特别是EDA技术的发展奠定一定的基础。
二、设计的基本要求:
1.熟悉数字电路及相关专业课程的基本知识并能联系具体程序
2.正确操作使用VHDL语言相关软件,能编译,调试,仿真VHDL语言程序
3.设计数字电路,编写程序,实现电路功能。
三、课程设计内容:
1.设计60进计数器:设计一个BCD码60进计数器。要求实现同步,异步两种情况,且规定个位显示0~9,十位显示0~5,均用4位二进制数表示。在此基础上试用VHDL语言描述中小规模集成电路74LS169。
2.循环彩灯控制器:设计一个循环彩灯控制器,该控制器控制红,绿,黄三个发光管循环点亮。要求红发光管亮3秒,绿发光管亮2秒,黄发光管亮1秒。
3,抢答器的程序设计:设计一个二人抢答器,用两灯来表示两人抢答的顺序,从而来表示是谁抢答到了
四、课程设计方案及源程序:
1.设计60进计数器:
1)设计思想:两个同步计数器,一个实现个位计数,一个实现十位计数,当个位计数到9时,十位的计数器加一,并个位计数器清零,继续自加,如此循环,直到十位到5,即计数到59,一端口输出高电平,十位和个位计数器清零,如此循环。
2)源程序:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY bcd60count IS
PORT(clk,bcd1wr,bcd10wr,cin:STD_LOGIC;
CO:OUT STD_LOGIC;
datain:IN STD_LOGIC_VECTOR(3 DOWNTO 0);
bcd1:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);
bcd1m:OUT STD_LOGIC_VECTOR(2 DOWNTO 0));
END ENTITY bcd60count;
ARCHITECTURE rtl OF bcd60count IS
SIGNAL bcd1n:STD_LOGIC_VECTOR(3 DOWNTO 0);
SIGNAL bcd10n:STD_LOGIC_VECTOR(2 DOWNTO 0);
BEGIN
bcd1=bcd1n;
bcd1m=bcd10n;
PROCESS(clk,bcd1wr)IS
BEGIN
IF(bcd1wr=1)THEN
bcd1n=datain;
ELSIF(clkEVENT AND clk=1)THEN
IF(cin=1)THEN
IF(bcd1n=9)THEN
bcd1n=0000;
ELSE
bcd1n=bcd1n+1;
END IF;
END IF;
END IF;
END PROCESS;
PROCESS(clk,bcd10wr)IS
BEGIN
IF(bcd10wr=1)THEN
bcd10n=datain(2 DOWNTO 0);
ELSIF(clkEVENT AND clk=1)THEN
IF(cin=1 AND bcd1n=9)THEN
IF(bcd10n=5)THEN
bcd10n=000;
ELSE
bcd10n=bcd10n+1;
END IF;
END IF;
END IF;
END PROCESS;
PROCESS(bcd10n,bcd1n,cin)IS
BEGIN
您可能关注的文档
- 《电子技术》课程设计报告-数字电子钟设计.doc
- 《高频课程设计》报告-基于石英晶体的正弦波振荡器.doc
- 《管理信息系统》课程设计报告-人员流动管理系统.doc
- 《基于网络环境下小学数学应用题教学设计与评价的研究》课题研究报告.doc
- 《可编程序控制器应用技术》课程设计报告书-PLC在全自动洗衣机控制系统中的应用.doc
- 《能力拓展训练》课程设计报告-4G移动通信技术.doc
- 《人力资源管理》课程设计报告.doc
- 《数据库课程设计》报告-考勤管理系统数据库设计.doc
- 《语音信号》课程设计报告书-DSP语音信号处理.doc
- 51单片机课程设计报告-基于8155的8LED显示电子码表设计.doc
文档评论(0)