数字系统设计技术实验指导书
数字信号处理综合设计实验指导书-基于SYSTEMVIEW 滤波器的设计与仿真

学生需要规划整个系统,确定系统的采样频率、观测时间;细化并设计整个系统,仿真调整并不断改进,达到正确调制、正确滤波、正确解调的目的。
3、拟采用的实验指导方式、教学方法和手段
给学生提出问题和解决问题的思路,提供实验条件和实验要求,给出系统设计的框图,学生根据所学的知识,细化框图,设计系统,不断改进,作好记录,验证结果。
采用理论教学结合实验教学的方法,第一步将实验所需的所有知识点以理论教学的方式传授,第二步将SYSTEMVIEW软件工具以实验的方式让学生熟悉并掌握,最后学生根据实验要求自行设计系统并验证实验结果的正确性。
5、拟采用的实验结果评价办法
给学生提出问题和解决问题的思路,提供实验条件和实验要求,给出系统设计的框图,学生根据所学的知识,细化框图,设计系统,不断改进,作好记录,验证结果。
采用理论教学结合实验教学的方法,第一步将实验所需的所有知识点以理论教学的方式传授,第二步将SYSTEMVIEW软件工具以实验的方式让学生熟悉并掌握,最后学生根据实验要求自行设计系统并验证实验结果的正确性。
4.否达到预定要求;
(2)检查幅度调制的波形以及相加后的信号的波形与频谱是否正常;
(3)了解滤波器在通信系统中的应用
2、实验内容和涉及知识点
通过SYSTEMVIEW软件设计与仿真工具,设计一个FIR数字带通滤波器,预先给定截止频率和在截止频率上的幅度值,通过软件设计完后,确认滤波器的阶数和系统函数,画出该滤波器的频率响应曲线,进行技术指标的验证。
基带信号1
建立一个两载波幅度调制与解调的通信系统,将该滤波器作为两个载波分别解调的关键部件,验证其带通的频率特性的有效性。系统框图如下:
(3)检查解调后的的基带信号是否正常,分析波形变形的原因和解决措施;
《计算机操作系统》实验指导书

《计算机操作系统》实验指导书(适合于计算机科学与技术专业)湖南工业大学计算机与通信学院二O一四年十月前言计算机操作系统是计算机科学与技术专业的主要专业基础课程,其实践性、应用性很强。
实践教学环节是必不可少的一个重要环节。
计算机操作系统的实验目的是加深对理论教学内容的理解和掌握,使学生较系统地掌握操作系统的基本原理,加深对操作系统基本方法的理解,加深对课堂知识的理解,为学生综合运用所学知识,在Linux环境下调用一些常用的函数编写功能较简单的程序来实现操作系统的基本方法、并在实践应用方面打下一定基础。
要求学生在实验指导教师的帮助下自行完成各个操作环节,并能实现且达到举一反三的目的,完成一个实验解决一类问题。
要求学生能够全面、深入理解和熟练掌握所学内容,并能够用其分析、设计和解答类似问题;对此能够较好地理解和掌握,并且能够进行简单分析和判断;能够熟练使用Linux用户界面;掌握操作系统中进程的概念和控制方法;了解进程的并发,进程之间的通信方式,了解虚拟存储管理的基本思想。
同时培养学生进行分析问题、解决问题的能力;培养学生完成实验分析、实验方法、实验操作与测试、实验过程的观察、理解和归纳能力。
为了收到良好的实验效果,编写了这本实验指导书。
在指导书中,每一个实验均按照该课程实验大纲的要求编写,力求紧扣理论知识点、突出设计方法、明确设计思路,通过多种形式完成实验任务,最终引导学生有目的、有方向地完成实验任务,得出实验结果。
任课教师在实验前对实验任务进行一定的分析和讲解,要求学生按照每一个实验的具体要求提前完成准备工作,如:查找资料、设计程序、完成程序、写出预习报告等,做到有准备地上机。
进行实验时,指导教师应检查学生的预习情况,并对调试过程给予积极指导。
实验完毕后,学生应根据实验数据及结果,完成实验报告,由学习委员统一收齐后交指导教师审阅评定。
实验成绩考核:实验成绩占计算机操作系统课程总评成绩的20%。
指导教师每次实验对学生进行出勤考核,对实验效果作记录,并及时批改实验报告,综合评定每一次的实验成绩,在学期终了以平均成绩作为该生的实验成绩。
最新UML程序设计实验指导书

《UML程序设计》实验指导教程课程与实验综述第一部分实验综述一.课程简介及实践要求:《UML程序设计》是以介绍面向对象的统一建模语言UML为主,使学生了解面向对象技术的基本概念,掌握UML的分析和设计方法,同时掌握在Enterprise Architect环境下用UML进行分析和设计的技术。
本课程在教学内容方面着重基本理论、基本知识和基本方法,在培养实践能力方面着重设计构思和设计技能的基本训练,熟练的上机操作能力和分析能力。
实验实践训练是UML程序设计教学的重要技能环节。
通过实验,使学生加深理解、验证、巩固课堂教学内容,特别是通过设计和综合实验,发挥学生的想象力和创新能力。
二.课程实验目的要求:通过UML的实验,学生应该:1.学会用UML进行面向对象的思想去分析和设计相关系统;2.学会用Rose建模工具进行软件建模。
三.课程实验参考资料1.(美)Joseph Schmuller著.UML基础、案例与应用.人民邮电出版社,20042.(美)Hans-Erik Eriksson.UML 2工具箱. 电子工业出版社,20043.吴际,金茂忠.UML面向对象分析.北京航空航天大学出版社,20024.赵从军.UML设计及应用.机械工业出版社,20045.Grady Booch,James Rumbaugh,Ivar Jacobson.UML用户指南.机械工业出版社,20016.吴建,郑潮,汪杰.UML基础与Rose建模案例.人民邮电出版社,2004第二部分实验实践指导实验一构建用例图一、实验目的1.学会分析系统中的参与者和用例2.掌握用例图的绘制方法二、实验器材1. 计算机一台;2. Enterprise Architect 工具软件;三、实验内容1、分析ATM系统需求,按要求画出用例图;2、建立一个学生管理信息系统的需求3、建立设计一个学生管理信息系统的完整的用例图四、实验步骤(一)ATM系统的用例图1.分析ATM自动取款机:客户可以取钱,存钱,查询余额,转帐,修改密码。
电子科技大学EDA指导书附完整答案讲解

数字系统EDA技术实验指导书学院:学号:姓名:实验一八位全加器的设计一、预习内容1.结合教材中的介绍熟悉QuartusⅡ软件的使用及设计流程;2.八位全加器设计原理。
二、实验目的1.掌握图形设计方法;2.熟悉QuartusⅡ软件的使用及设计流程;3.掌握全加器原理,能进行多位加法器的设计。
三、实验器材PC机一台、EDA教学实验系统一台、下载电缆一根(已接好)、导线若干四、实验要求1、用VHDL设计一个四位并行全加器;2、用图形方式构成一个八位全加器的顶层文件;3、完成八位全加器的时序仿真。
五、实验原理与内容1、原理:加法器是数字系统中的基本逻辑器件。
例如:为了节省资源,减法器和硬件乘法器都可由加法器来构成。
但宽位加法器的设计是很耗费资源的,因此在实际的设计和相关系统的开发中需要注意资源的利用率和进位速度等两方面的问题。
多位加法器的构成有两种方式:并行进位和串行进位方式。
并行进位加法器设有并行进位产生逻辑,运算速度快;串行进位方式是将全加器级联构成多位加法器。
通常,并行加法器比串行级联加法器占用更多的资源,并且随着位数的增加,相同位数的并行加法器比串行加法器的资源占用差距也会越来越大。
实验表明,4 位二进制并行加法器和串行级联加法器占用几乎相同的资源。
这样,多位数加法器由4 位二进制并行加法器级联构成是较好的折中选择。
因此本实验中的8 位加法器采用两个4位二进制并行加法器级联而成。
2、实现框图:1)四位加法器四位加法器可以采用四个一位全加器级连成串行进位加法器,实现框图如下图所示,其中CSA为一位全加器。
显然,对于这种方式,因高位运算必须要等低位进位来到后才能进行,因此它的延迟非常可观,高速运算肯定无法胜任。
通过对串行进位加法器研究可得:运算的延迟是由于进位的延迟。
因此,减小进位的延迟对提高运算速度非常有效。
下图是减少了进位延迟的一种实现方法。
可见,将迭代关系去掉,则各位彼此独立,进位传播不复存在。
【电子设计】数字电子技术基础实验指导书

『数字电子技术基础实验指导书』实验一实验设备认识及门电路一、目的:1、掌握门电路逻辑功能测试方法;2、熟悉示波器及数字电路学习机的使用方法;3、了解TTL器件和CMOS器件的使用特点。
二、实验原理门电路的静态特性。
三、实验设备与器件设备1、电路学习机一台2、万用表两快器件1、74LS00 一片(四2输入与非门)2、74LS04 一片(六反向器)3、CD4001 一片(四2输入或非门)四、实验内容和步骤1、测试74LS04的电压传输特性。
按图1—1连好线路。
调节电位器,使VI在0~+3V间变化,记录相应的输入电压V1和输入电压V的值。
至少记录五组数据,画出电压传输特性。
2、测试四二输入与非门74LS00的输入负载特性。
测试电路如图1—2所示。
请用万用表测试,将VI 和VO随RI变化的值填入表1—1中,画出曲线。
表1-13、测试与非门的逻辑功能。
测量74LS00二输入与非门的真值表:将测量结果填入表1—2中。
表1—24、测量CD4001二输入或非门的真值表,将测量结果填入表1-2中。
注意CMOS 电路的使用特点:应先加入电源电压,再接入输入信号;断电时则相反,应先测输入信号,再断电源电压。
另外,CMOS 电路的多余输入端不得悬空。
五、预习要求1、阅读实验指导书,了解学习机的结构;2、了解所有器件(74LS00,74LS04,CD4001)的引脚结构;3、TTL 电路和CMOS 电路的使用注意事项。
图1-1 图1-2300V O一、实验目的1、学习并掌握小规模芯片(SSI)实现各种组合逻辑电路的方法;2、学习用仪器检测故障,排除故障。
二、实验原理用门电路设计组合逻辑电路的方法。
三、实验内容及要求1、用TTL与非门和反向器实现“用三个开关控制一个灯的电路。
”要求改变任一开关状态都能控制灯由亮到灭或由灭到亮。
试用双四输入与非门74LS20和六反向器74LS04和开关实现。
测试其功能。
2、用CMOS与非门实现“判断输入者与受血者的血型符合规定的电路”,测试其功能。
TEC-8实验指导书

2
前 言……………………………………………………………………………………..1 第 1 章 TEC-8 计算机硬件综合实验系统…………………………………………….…..5 1.1 TEC-8 实验系统的用途…………………………………………………………….…5 1.2 TEC-8 实验系统技术特点…………………………………………………….………5 1.3 TEC-8 实验系统组成………………………………………………………….………6 1.4 逻辑测试笔……………………………………………………………………………6 1.5 TEC-8 实验系统结构和操作……………………………………………….…………7 1.5.1 模型计算机时序信号………………………………………………………………7 1.5.2 模型计算机组成……………………………………………………………………7 1.6 模型计算机指令系统………………………………………………………………… 10 1.7 开关、按钮、指示灯……………………………………………………..…………11 1.8 数字逻辑和数字系统实验部分…………………………………..…………………12 1.8.1 基本实验通用区…………………………………………………………………...12 1.8.2 大型综合设计实验装臵………………………………………………………..….13 2 1.9 E PROM 中微代码的修改………………………………………………….……….…13 第 2 章 计算机组织与体系结构基本实验………………………………………………18 2.1 运算器组成实验……………………………………………………………………..18 2.2 双端口存储器实验…………………………………………………………………..22 2.3 数据通路实验………………………………………………………………………..26 2.4 微程序控制器实验…………………………………………………………………..30 2.5 CPU 组成与机器指令的执行…………………………………………………………36 2.6 中断原理实验………………………………………………………………………..39 第 3 章 课程综合设计…………………………………………………………………....43 3.1 模型机硬连线控制器设计…………………………………………………………..43 3.2 模型机流水微程序控制器设计……………………………………………………..47 3.3 模型机流水硬连线控制器设计……………………………………………………..50 3.4 含有阵列乘法器的 ALU 设计………………………………………………………..51 第 4 章 数字逻辑与数字系统基本实验…………………………………………………55 4.1 基本逻辑门逻辑实验………………………………………………………………..55 4.2 TTL、HC 和 HCT 器件的电压传输特性实验………………………………………..56 4.3 三态门实验…………………………………………………………………….…….59 4.4 数据选择器和译码器实验……………………………………………………….….61 4.5 全加器构成及测试实验………………………………………………………….….63 4.6 组合逻辑中的冒险现象实验…………………………………………………….….64 4.7 触发器实验……………………………………………………………………….….66 4.8 简单时序电路实验…………………………………………………………………..69 4.9 计数器和数码管实验………………………………………………………………..70 4.10 四相时钟分配器实验………………………………………………………………74 第 5 章 数字逻辑与数字系统综合设计实验…………………………………………...76 5.1 简易电子琴实验……………………………………………………………………..76
电子系统设计实验指导书(FPGA基础篇Vivado版)

实验指导书(FPGA 基础篇 Vivado 版)
东南大学 电子科学 ........................................................................................................................................................... 1
安全使用规范
东南大学 电子科学与工程学院
无论何时,外部电源供电与 USB 两种供电方式只能用其中一种,避免因为电压有所差别而烧坏电路板。 采用电压高于5.5V的任何电源连接器可能造成永久性的损害。 插拔接插件前请关闭电路板总开关,否则易损坏器件。 电路板应在绝缘平台上使用,否则可能引起电路板损坏。 不同编码机制不要混接。 安装设备需防止静电。 液晶显示器件或模块结雾时,不要通电工作,防止电极化学反应,产生断线。 遇到正负极连接时需谨慎,避免接反引起开发板的损坏。 保持电路板的表面清洁。 小心轻放,避免不必要的硬件损伤。
实验目的 ....................................................................................................................................................... 17 实验内容 ....................................................................................................................................................... 17 实验要求 ....................................................................................................................................................... 17 实验步骤 ....................................................................................................................................................... 17 实验结果 ....................................................................................................................................................... 22
TEC 8实验指导书

2
前 言……………………………………………………………………………………..1 第 1 章 TEC-8 计算机硬件综合实验系统…………………………………………….…..5 1.1 TEC-8 实验系统的用途…………………………………………………………….…5 1.2 TEC-8 实验系统技术特点…………………………………………………….………5 1.3 TEC-8 实验系统组成………………………………………………………….………6 1.4 逻辑测试笔……………………………………………………………………………6 1.5 TEC-8 实验系统结构和操作……………………………………………….…………7 1.5.1 模型计算机时序信号………………………………………………………………7 1.5.2 模型计算机组成……………………………………………………………………7 1.6 模型计算机指令系统………………………………………………………………… 10 1.7 开关、按钮、指示灯……………………………………………………..…………11 1.8 数字逻辑和数字系统实验部分…………………………………..…………………12 1.8.1 基本实验通用区…………………………………………………………………...12 1.8.2 大型综合设计实验装臵………………………………………………………..….13 1.9 E2PROM 中微代码的修改………………………………………………….……….…13 第 2 章 计算机组织与体系结构基本实验………………………………………………18 2.1 运算器组成实验……………………………………………………………………..18 2.2 双端口存储器实验…………………………………………………………………..22 2.3 数据通路实验………………………………………………………………………..26 2.4 微程序控制器实验…………………………………………………………………..30 2.5 CPU 组成与机器指令的执行…………………………………………………………36 2.6 中断原理实验………………………………………………………………………..39 第 3 章 课程综合设计…………………………………………………………………....43 3.1 模型机硬连线控制器设计…………………………………………………………..43 3.2 模型机流水微程序控制器设计……………………………………………………..47 3.3 模型机流水硬连线控制器设计……………………………………………………..50 3.4 含有阵列乘法器的 ALU 设计………………………………………………………..51 第 4 章 数字逻辑与数字系统基本实验…………………………………………………55 4.1 基本逻辑门逻辑实验………………………………………………………………..55 4.2 TTL、HC 和 HCT 器件的电压传输特性实验………………………………………..56 4.3 三态门实验…………………………………………………………………….…….59 4.4 数据选择器和译码器实验……………………………………………………….….61 4.5 全加器构成及测试实验………………………………………………………….….63 4.6 组合逻辑中的冒险现象实验…………………………………………………….….64 4.7 触发器实验……………………………………………………………………….….66 4.8 简单时序电路实验…………………………………………………………………..69 4.9 计数器和数码管实验………………………………………………………………..70 4.10 四相时钟分配器实验………………………………………………………………74 第 5 章 数字逻辑与数字系统综合设计实验…………………………………………...76 5.1 简易电子琴实验……………………………………………………………………..76
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Experiment 2 Designing Number Comparer实验目的: 熟悉QuartusII 的开发环境熟练掌握编程开发流程 学习VHDL 的基本语法 学习VHDL 编程设计实验内容:数值比较器设计实验要求:熟练掌握QuartusII 开发环境下对可编程逻辑器件进行程序化设计的整套流程设计输入使用插入模板(Insert Template )在QuartusII 开发环境下对设计程序进行时序仿真将生成的配置文件下载到实验板,进行最终的实物测试验证实验原理:根据两位二进制数的大小得到对应的比较结果,其电路示意图及电路特性表为:比较器特性表比较器电路示意图实验报告内容要求:(1) 实验目的;(2) 实验内容; (3) 实验要求; (4) 实验原理; (5) 程序编写; (6) 程序编译(首先选择器件具体型号); (7) 功能仿真和芯片时序仿真; (8) 芯片引脚设定; (9) 适配下载结果及结论。
NumberComparerA(3..0) B(3..0)In_s In_l In_eYl YeYs YExperiment 3 Designing 8 to1-Multiplxer实验目的:熟悉QuartusII的开发环境熟练掌握编程开发流程学习VHDL的基本语法学习VHDL编程设计实验内容:八选一数据选择器设计。
实验要求:熟练掌握QuartusII开发环境下对可编程逻辑器件进行程序化设计的整套流程设计输入使用插入模板(Insert Template)在QuartusII开发环境下对设计程序进行时序仿真将生成的配置文件下载到实验板,进行最终的实物测试验证实验原理:电路功能表及其电路外部符号如下:电路功能表实验报告内容要求:(1)实验目的;(2)实验内容;(3)实验要求;(4)实验原理;(5)程序编写;(6)程序编译(首先选择器件具体型号);(7)功能仿真和芯片时序仿真;(8)芯片引脚设定;(9)适配下载结果及结论。
Experiment 4 Designing module _60实验目的:熟悉QuartusII的开发环境熟练掌握编程开发流程学习数字系统中层次化设计技巧学习显示译码电路分频电路、计数电路的VHDL程序设计学习结构化设计的VHDL程序设计实验内容:基于数码管显示的60进制计数器设计实验要求:熟练掌握QuartusII开发环境下对可编程逻辑器件进行程序化设计的整套流程将50MHz信号分频为1Hz信号以1Hz为60进制计数器使能信号,实现60进制计数功能计数结果用两位数码管显示计数进位持续时间1s用LED显示设计位同步时序电路在QuartusII开发环境下对设计程序进行时序仿真将生成的配置文件下载到实验板,进行最终的实物测试验证实验原理:先对50MHz时钟信号分频得到1Hz,然后调用两个10进制计数器,计数到59时回到初始0的计数状态,每个10进制计数的技术结果通过显示译码送到两位数码管上显示,结构框图如下:50MHz数码管数码管(1) 实验目的; (2) 实验内容; (3) 实验要求; (4) 实验原理; (5) 程序编写;(6) 程序编译(首先选择器件具体型号); (7) 功能仿真和芯片时序仿真; (8) 结论。
Experiment 5 Designing shift_register实验目的: 熟悉QuartusII 的开发环境熟练掌握编程开发流程 学习VHDL 的基本语法学习数字系统中移位寄存器设计及其VHDL 编程实验内容:移位寄存器设计实验要求:熟练掌握QuartusII 开发环境下对可编程逻辑器件进行程序化设计的整套流程设计输入使用插入模板(Insert Template )在QuartusII 开发环境下对设计程序进行时序仿真将生成的配置文件下载到实验板,进行最终的实物测试验证实验原理:根据两位二进制数的大小得到对应的比较结果,其电路示意图及电路特性表为:比较器特性表比较器电路示意图Shift_registerSr slData_in(3..0) clk clr load ctrData_q(3..0)(9)实验目的;(10)实验内容;(11)实验要求;(12)实验原理;(13)程序编写;(14)程序编译(首先选择器件具体型号);(15)功能仿真和芯片时序仿真;(16)芯片引脚设定;(17)适配下载结果及结论。
实验2考程序Library ieee;Use ieee.std_logic_1164.all;Entity compare_2 isPort( data_a,data_b:in std_logic_vector(3 downto 0);In_s,In_l,In_e:in std_logic;Ys,Yl,Ye:out std_logic);End compare_2;Architecture rtl of compare_2 isSignal tmps,tmpe: std_logic;BeginYs<=tmps;Ye <= tmpe;Yl <= tmps nor tmpe;Aa:process(data_a,data_b, In_e)BeginIf(data_a = data_b and In_e = ‘1’) thentmpe<=’1’;elsetmpe<=’0’;End if;End process aa;bb:process(data_a,data_b, In_s)BeginIf(data_a<data_b) thentmps<=’1’;elsif(data_a=data_b and In_s=’1’) thentmps<=’1’;Elsetmps<=’0’;End if;End process bb;End rtl;实验3参考程序ENTITY mux8_1 ISPORT(d : IN STD_LOGIC_VECTOR(7 DOWNTO 0);sel : IN STD_LOGIC_VECTOR(2 DOWNTO 0);sb : IN STD_LOGIC;y : OUT STD_LOGIC);END mux8_1;ARCHITECTURE rtl OF mux8_1 ISBEGINPROCESS (d, sel,sb)BEGINIf(sb=’0’) thenCase(sel)When "000" => y<=d(0);When "001" => y<=d(1);When "010" => y<=d(2);When "011" => y<=d(3);When "100" => y<=d(4);When "101" => y<=d(5);When "110" => y<=d(6);When "111" => y<=d(7);When others => y<=’X’;end case;elsey<=’0’;end if;END PROCESS;END rtl;实体(entity)名称与文件名称一致;时序仿真时,波形编辑后先保存波形文件再进行时序仿真;分配管脚后,需要重现编译,然后才能下载。
设计流程:新建项目→新建源文件→输入语言→编译→仿真→分配管脚→编译→下载仿真流程:新建波形文件→导入管脚信号并编辑输入信号→仿真下载的时候选择硬件为:BytebBlaster[LPT1]实验4参考程序library ieee;use ieee.std_logic_1164.all;entity count_60 isport(clk,rst:in std_logic;count_data10,count_data1: out std_logic_vector(6 downto 0);en_out :out std_logic);end count_60;architecture rtl of count_60 iscomponent sec_out port(clk,rst:in std_logic;en_out :out std_logic);end component;component count_10 port(clk,rst,en_in,ld:in std_logic;data_in:in std_logic_vector(3 downto 0);data_out:out std_logic_vector(3 downto 0);en_out :out std_logic);end component;component dis_decode port(data_in:in std_logic_vector(3 downto 0);dis_num :out std_logic_vector(6 downto 0));end component;signal cont_tmp10,cont_tmp1,data_in:std_logic_vector(3 downto 0);signal ld,sec_en,sec_en10,min_out:std_logic;beginld<=sec_en10 and cont_tmp10(2) and cont_tmp10(0);data_in<="0000";en_out<=cont_tmp10(2) and cont_tmp10(0) and cont_tmp1(3) and cont_tmp1(0); U0:sec_out port map(clk,rst,sec_en);U1:count_10 port map(clk,rst,sec_en,ld,data_in,cont_tmp1,sec_en10);U2:count_10 port map(clk,rst,sec_en10,ld,data_in,cont_tmp10,min_out);U3:dis_decode port map(cont_tmp1,count_data1);U4:dis_decode port map(cont_tmp10,count_data10);end rtl;library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity count_10 isport(clk,rst,en_in,ld:in std_logic;data_in:in std_logic_vector(3 downto 0);data_out:out std_logic_vector(3 downto 0);en_out :out std_logic);end count_10;architecture rtl of count_10 issignal cont_tmp:std_logic_vector(3 downto 0); beginen_out<=en_in and cont_tmp(3) and cont_tmp(0); data_out<=cont_tmp;process(clk,rst)beginif(rst='0')thencont_tmp<="0000";elsif(clk'event and clk='1')thenif(ld='1')thencont_tmp<=data_in;elsif(en_in='1')thenif(cont_tmp="1001")thencont_tmp<="0000";elsecont_tmp<=cont_tmp+'1';end if;end if;end if;end process;end rtl;library ieee;use ieee.std_logic_1164.all;entity dis_decode isport(data_in:in std_logic_vector(3 downto 0);dis_num :out std_logic_vector(6 downto 0)end dis_decode;architecture rtl of dis_decode isbeginwith data_in selectdis_num<="0111111" WHEN "0000","0000110" WHEN "0001","1011011" WHEN "0010","1001111" WHEN "0011","1100110" WHEN "0100","1101101" WHEN "0101","1111101" WHEN "0110","0000111" WHEN "0111","1111111" WHEN "1000","1100111" WHEN "1001","0000000" WHEN others;end rtl;library ieee;use ieee.std_logic_1164.all;entity sec_out isport(clk,rst:in std_logic;en_out :out std_logic);end sec_out;architecture rtl of sec_out iscomponent divide_5 port(clk,rst,en_in:in std_logic;en_out :out std_logic);end component;component divide_10 port(clk,rst,en_in:in std_logic;en_out :out std_logic);end component;signal en0,en1,en2,en3,en4,en5,en6:std_logic; beginU0:divide_5 port map(clk,rst,'1',en0);U1:divide_10 port map(clk,rst,en0,en1);U2:divide_10 port map(clk,rst,en1,en2);U3:divide_10 port map(clk,rst,en2,en3);U4:divide_10 port map(clk,rst,en3,en4);U5:divide_10 port map(clk,rst,en4,en5);U6:divide_10 port map(clk,rst,en5,en6);U7:divide_10 port map(clk,rst,en6,en_out); end rtl;library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity divide_5 isport(clk,rst,en_in:in std_logic;en_out :out std_logic);end divide_5;architecture rtl of divide_5 issignal cont_tmp:std_logic_vector(2 downto 0); beginen_out<=en_in and cont_tmp(2);process(clk,rst)beginif(rst='0')thencont_tmp<="000";elsif(clk'event and clk='1')thenif(en_in='1')thenif(cont_tmp="100")thencont_tmp<="000";elsecont_tmp<=cont_tmp+'1';end if;end if;end if;end process;end rtl;library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity divide_10 isport(clk,rst,en_in:in std_logic;en_out :out std_logic);end divide_10;architecture rtl of divide_10 issignal cont_tmp:std_logic_vector(3 downto 0);beginen_out<=en_in and cont_tmp(3) and cont_tmp(0); process(clk,rst)beginif(rst='0')thencont_tmp<="0000";elsif(clk'event and clk='1')thenif(en_in='1')thenif(cont_tmp="1001")thencont_tmp<="0000";elsecont_tmp<=cont_tmp+'1';end if;end if;end if;end process;end rtl;实验5参考程序library ieee;use ieee.std_logic_1164.all;ENTITY shift ISPORT(clr,clk,load,shift_en,ctr,sr,sl : IN STD_LOGIC;data_in : IN STD_LOGIC_VECTOR(7 downto 0);data_q : OUT STD_LOGIC_VECTOR(7 downto 0)); END shift;ARCHITECTURE arc OF shift ISSIGNAL data_tmp : STD_LOGIC_VECTOR(7 downto 0);Signal en_tmp1, en_tmp2, en_tmp: std_logic;BEGINPROCESS(clr,clk)BEGINIF (clr='0') THENen_tmp1 <=’0’;elseen_tmp1 <=shift_en;end if;end process;PROCESS(clr,clk)BEGINIF (clr='0') THENen_tmp2 <=’0’;elseen_tmp2<= en_tmp1;end if;end process;en_tmp<= (not en_tmp1) and en_tmp2;data_q<= data_tmp;PROCESS(clr,clk)BEGINIF (clr='0') THENdata_tmp <="00000000";ELSIF (clk'EVENT AND clk='1') THENIF load='0' THENdata_tmp <= data_in;ELSIF (en_tmp ='1' AND ctr='0') THENdata_tmp <=sr& data_tmp (7 downto 1);ELSIF (en_tmp ='1' AND ctr='1') THENdata_tmp <= data_tmp (6 downto 0) & sl;END IF;END IF;END PROCESS;END arc;。