华南理工大学-数字系统设计实验报告汇总
- 格式:pdf
- 大小:2.16 MB
- 文档页数:39
系统设计的实验报告1. 实验目的本实验的目的是通过设计一个系统来解决某一特定问题,了解系统设计的过程和方法,并且实践系统设计的基本步骤和技巧。
通过本实验的实践,我们可以加深对系统设计概念的理解,并能够将所学知识应用到实际项目中。
2. 实验背景在我们日常的生活和工作中,我们会面临各种各样的问题,需要通过设计一个系统来解决。
系统设计是一种将问题转化为系统的方法,通过对系统进行设计和实施,可以提高问题解决的效率和质量。
因此,掌握系统设计的方法和技巧对于项目的成功实施非常重要。
3. 系统设计过程系统设计是一个复杂的过程,包括需求分析、系统架构设计、详细设计、实施等多个阶段。
下面将对每个阶段进行详细说明。
3.1 需求分析在需求分析阶段,我们需要明确系统的目标和功能需求,对用户需求进行调研和分析,以确定系统需要解决的问题和提供的功能。
在这个阶段,我们可以采用访谈、问卷调查和用户需求反馈等方法来收集和分析用户需求。
3.2 系统架构设计在系统架构设计阶段,我们需要确定系统的整体架构,包括系统的组成部分和各个部分之间的关系。
在这个阶段,我们可以采用系统框架图、组件图和流程图等方法来描述系统的结构和功能。
3.3 详细设计在详细设计阶段,我们需要将系统的功能进行详细的设计,包括各个模块的设计和接口的定义。
在这个阶段,我们可以采用类图、时序图和接口文档等方法来描述系统的细节设计。
3.4 实施在实施阶段,我们需要按照系统设计的要求进行系统的开发和实施。
在这个阶段,我们可以采用编码、测试和上线等方法来实现系统的功能并进行验证。
4. 实验结果与分析在本次实验中,我们设计了一个在线商城系统来解决电子商务的问题。
通过对实验结果的分析,我们发现该系统能够满足用户的需求,并且能够提供良好的用户体验。
通过本次实验的实践,我们加深了对系统设计的理解,并且学会了如何应用系统设计的方法和技巧。
5. 实验总结系统设计是一个复杂而重要的过程,需要进行需求分析、系统架构设计、详细设计和实施等多个阶段。
数字系统设计综合实验报告1)实验目的复习加法器的分类及工作原理。
掌握用图形法设计半加器的方法。
掌握用元件例化法设计全加器的方法。
掌握用元件例化法设计多位加法器的方法。
掌握用Verilog HDL语言设计多位加法器的方法。
学习运用波形仿真验证程序的正确性。
学习定时分析工具的使用方法。
2)实验原理加法器是能够实现二进制加法运算的电路,是构成计算机中算术运算电路的基本单元。
目前,在数字计算机中,无论加、减、乘、除法运算,都是化为若干步加法运算来完成的。
加法器可分为1位加法器和多位加法器两大类。
1位加法器有可分为半加器和全加器两种,多位加法器可分为串行进位加法器和超前进位加法器两种。
半加器如果不考虑来自低位的进位而将两个1位二进制数相加,称半加。
实现半加运算的电路则称为半加器。
若设A和B是两个1位的加数,S是两者相加的和,C是向高位的进位。
则由二进制加法运算规则可以得到。
全加器在将两个1位二进制数相加时,除了最低位以外,每一位都应该考虑来自低位的进位,即将两个对应位的加数和来自低位的进位三个数相加,这种运算称全加。
实现全加运算的电路则称为全加器。
若设A、B、CI分别是两个1位的加数、来自低位的进位,S是相加的和,C是向高位的进位。
则由二进制加法运算规则可以得到:3)实验内容及步骤用图形法设计半加器,仿真设计结果。
用原件例化的方法设计全加器,仿真设计结果用原件例化的方法设计一个4为二进制加法器,仿真设计结果,进行定时分析。
用Verilog HDL语言设计一个4为二进制加法器,仿真设计结果,进行定时分析。
分别下载用上述两种方法设计4为加法器,并进行在线测试。
4)设计1)用图形法设计的半加器,如下图1所示,由其生成的符号如图2所示。
2)用元件例化的方法设计的全加器如图3所示,由其生成的符号如图4所示。
图三:图四:5)全加器时序仿真波形如图下图所示6)心得体会:第一次做数字系统设计实验,老师给我们讲了用图形法设计的全过程。
《数学实验》报告1. 问题描述讨论调和级数∑(1n ∞n=1)的变化规律,(1)画出部分和数列{Sn}变化的折线图,观察变化规律;(2)引入数列{Hn}:Hn=S2n – Sn ,作图观察其变化,猜测是否有极限 (3)引入数列{Gn }:Gn=S2n ,作图观察其变化,寻找恰当的函数拟合;(4)讨论部分和数列{Sn }的变化规律。
2. 问题分析与实验过程1n 随着n 的增大,其数值逐渐减少,因此可以猜测调和级数∑(1n∞n=1)曲线的变化趋势是逐步趋缓的。
根据这个,按照题目要求引入各种要求的数列,然后用MATLAB 进行求解,得出各个数列的曲线,然后进行分析得出结论。
在用MATLAB 求解时,把各个函数分成几个独立模块,方便调试。
程序:模块a :实现显示调和级数∑(1n∞n=1)曲线变化的功能function test2a(n)fn = [1]; %定义fn 的初值为1 for i = 2:nfn = [fn,fn(i-1)+1/i]; %定义fn = ∑(1n ∞n=1)endplot(fn) %显示函数fn 的曲线变化图模块b: 实现显示数列{Hn}的曲线变化的功能 function test2b(n)fn = [1]; %定义fn 的初值为1 for i = 2:2*nfn = [fn,fn(i-1)+1/i]; %定义fn = ∑(1n ∞n=1)endHn = [1/2]; %定义Hn 的初值为0.5 for i = 1:nHn = [Hn,fn(2*i)-fn(i)];%定义Hn = ∑(12∗n∞n=1) - ∑(1n∞n=1)endplot(Hn) %显示函数Hn 的曲线变化图模块c :实现显示数列{Gn}曲线变化的功能function test2c(n)Gn = [1.5]; %定义Gn 的初值为1.5 for i = 2:nGn = [Gn,Gn(i-1)+1/(2*i)+1/(2*i-1)];%定义Gn = ∑(12∗n ∞n=1)endplot(Gn) %显示函数Gn 的曲线变化图模块d:实现对数列{Gn}的拟合功能function y = test2d(n) Gn = [1.5]; for i = 2:nGn = [Gn,Gn(i-1)+1/(2*i)+1/(2*i-1)]; end xn = 1:n;Gn = exp(Gn); %令Gn = e ^(Gn)y = polyfit(xn,Gn,1) %对Gn = e ^(Gn)进行一阶拟合模块e :实现比较数据跟拟合数据吻合程度的功能function y = test2e(n) Gn1 = [];for i = 1:nGn1 = [Gn1,log(3.5621*i+0.8910)];%设置拟合函数Gn1 = log(3.5621*i+0.8910)endGn2 = [1.5];for i = 2:nGn2 = [Gn2,Gn2(i-1)+1/(2*i)+1/(2*i-1)];endx = 1:n;plot(x,Gn1,'b',x,Gn2,'r*') %显示拟合函数Gn1和原始函数Gn2的曲线图进行比较,确定两个函数的吻合程度。
一、实验目的1. 理解数字系统设计的基本概念和流程。
2. 掌握数字电路的基本设计方法和技巧。
3. 熟悉常用数字集成电路的使用方法。
4. 培养实际动手能力和团队协作精神。
二、实验内容本次实验主要围绕数字系统设计展开,包括以下几个方面:1. 数字电路原理图绘制与仿真2. 数字系统硬件描述语言(HDL)编程3. 顶层模块设计4. 系统仿真与调试三、实验步骤1. 数字电路原理图绘制与仿真(1)根据实验要求,设计数字电路原理图,如数字时钟、移位寄存器等。
(2)使用Multisim等仿真软件对原理图进行仿真,验证电路功能。
2. 数字系统硬件描述语言(HDL)编程(1)根据原理图,使用Verilog或VHDL等HDL语言编写代码。
(2)对代码进行语法检查,确保代码正确。
3. 顶层模块设计(1)根据实验要求,设计顶层模块,如数字时钟控制器、移位寄存器控制器等。
(2)将底层模块(如计数器、触发器等)集成到顶层模块中。
4. 系统仿真与调试(1)使用仿真软件对顶层模块进行仿真,验证系统功能。
(2)根据仿真结果,对代码进行修改和优化,直至系统功能满足要求。
四、实验结果与分析1. 数字电路原理图绘制与仿真(1)原理图设计:根据实验要求,设计了一个数字时钟电路原理图,包括分频器、计数器、触发器等模块。
(2)仿真结果:通过仿真软件对原理图进行仿真,验证了电路功能。
2. 数字系统硬件描述语言(HDL)编程(1)代码编写:使用Verilog语言编写了数字时钟电路的代码,包括分频器、计数器、触发器等模块。
(2)代码验证:通过语法检查,确保代码正确。
3. 顶层模块设计(1)顶层模块设计:根据实验要求,设计了一个数字时钟控制器顶层模块,将底层模块集成到顶层模块中。
(2)系统仿真:通过仿真软件对顶层模块进行仿真,验证了系统功能。
4. 系统仿真与调试(1)系统仿真:通过仿真软件对顶层模块进行仿真,验证了系统功能。
(2)调试:根据仿真结果,对代码进行修改和优化,直至系统功能满足要求。
实验三基于状态机的交通灯控制地点:31号楼312房;实验台号:12实验日期与时间:2017年12月08日评分:预习检查纪录:批改教师:报告内容:一、实验要求1、开发板上三个led等分别代表公路上红黄绿三种颜色交通灯。
2、交通灯状态机初始状态为红灯,交通灯工作过程依次是红→绿→黄→红。
3、为了方便观察,本次实验要求红灯的显示时间为9s,绿灯显示时间为6s,黄灯显示时间为3s,时间需要倒计时,在数码管上显示。
编程之前要求同学们先画好ASM图。
4、1Hz分频模块请采用第二次实验中的内容,7段码显示模块请参考书本相关内容。
5、第三次实验课用到EP2C8Q208C8通过74HC595驱动数码管,有两种方法写该模块代码:方法1,用VHDL语言写,(自己写VHDL代码有加实验分)。
方法2,可调用verilog数码管驱动模块,该模块在附件“seg.zip”中。
和其它VHDL编写的模块可以混搭在一个电路图中使用。
EP2C8Q208C8的SCTP,SHCP,SER_DATA数码管信号线通过两块74HC595集成块,再驱动数码管。
6、芯片型号:cyclone:EP2C8Q208C8,开发板所有资料都在“新板”附件中,其中管脚配置在实验要求中是不对的,以“新板”附件中为准。
二、实验内容1设计要求开发板上三个led等分别代表公路上红黄绿三种颜色交通灯。
交通灯状态机初始状态为红灯,交通灯工作过程依次是红→绿→黄→红。
本次实验要求红灯的显示时间为9s,绿灯显示时间为6s,黄灯显示时间为3s,时间需要倒计时,在数码管上显示。
2设计思路(1)数码管驱动第三次实验课用到EP2C8Q208C8通过74HC595驱动数码管,有两种方法写该模块代码:方法1,用VHDL语言写,(自己写VHDL代码有加实验分)。
方法2,可调用verilog数码管驱动模块,该模块在附件“seg.zip”中。
和其它VHDL 编写的模块可以混搭在一个电路图中使用。
实验项目四信号存储与回放实验报告吴衡106040363王皓106040026目录摘要和关键词 (2)一.设计任务与要求 (2)1.1 设计任务 (2)1.2 技术指标 (2)1.3 题目评析 (2)二.实验方案 (2)2.1方案流程图 (2)2.2方案解析 (3)三.系统硬件设计 (3)3.1 系统的总体设计(设计思想、设计步骤),系统的计算。
(3)3.2 单元电路(或称功能模块)的设计,单元的参数计算。
(4)3.3 单元电路的功能以及工作原理的分析(单元具体电路图)。
(4)3.3.1直通回路模块: (4)3.3.2存储第一个数据的存储器模块: (5)3.3.3 DPCM模块: (6)3.3.4解码器模块: (6)3.3.5单次播放控制器: (7)3.3.6主控片段与RAM模块: (7)四.代码算法解析 (8)4.1存储第一个数据的存储器模块代码(cunchu.vhdl) (8)代码解析: (8)4.2DPCM模块代码:(zhuanhuan.vhdl) (8)代码解析: (9)4.3解码器模块代码:(shuzhi.vhdl) (9)代码解析: (9)4.4单次播放控制器代码:(kongzhi2.vhdl) (10)代码解析: (10)4.5主控片段模块代码:(kongzhi.vhdl) (10)代码解析: (11)五.系统测试 (11)5.1 RAM测试: (11)5.2 各模块测试: (11)5.3 示波器输出: (12)六.附录 (12)6.1 存储第一个数据的存储器模块代码:(cunchu.vhdl) (12)6.2 DPCM模块代码:(zhuanhuan.vhdl) (13)6.3 解码器模块代码:(shuzhi.vhdl) (13)6.4 单次播放控制器代码:(kongzhi2.vhdl) (14)6.5 主控片段模块代码:(kongzhi.vhdl) (14)6.6 电路总实验图: (16)七.实验声明 (16)摘要和关键词:信号存储、回放,ADC、DPCM、信号、解码一.设计任务与要求1.1 设计任务设计并制作一个数字化信号存储与回放系统。
数字系统设计实验共八个实验报告课程:数字系统设计班级:08电52姓名:马帼英实验日期:2011/4/11~2011/4/30目录1实验一基本组合逻辑电路设计实验 (3)2实验二加法器设计 (4)3实验三译码器设计 (6)4实验四计数器设计 (8)5实验五阻塞与非阻塞区别验证 (10)6实验六累加器设计 (12)7实验七数码管扫描电路设计 (14)8实验八数字频率计设计 (17)实验一实验名称:基本组合逻辑电路设计实验第1 组同组人:刘秀秀,马帼英一、实验目的:熟悉MAX+plus 软件的使用二、实验电路:三、波形图:实验二实验名称:加法器设计第1 组同组人:刘秀秀,马帼英一、实验目的:(1)复习加法器的分类及工作原理;(2)掌握用图形法设计半加器的方法;(3)掌握用元件例化法设计全加器的方法;(4)掌握用元件例化法设计多位加法器的方法;(5)掌握用Verilog HDL语言设计多位加法器的方法;(6)学习运用波形仿真验证程序的正确性;学习定时分析工具的使用方法。
二、实验电路:三、实验步骤:1)首先在原理图输入方式下设计出1位的半加器,并进行仿真验证;2)在原理图输入方式下采用调用半加器元件的方式设计出1位的全加器,并进行仿真验证;3)下载全加器电路,并进行在线测试。
四、实验结果分析、体会:实验过程中需注意的几点:1)保存所设计的原理图文件时,注意后缀名为.gdf;2)编程下载前一定要进行时序编译;3)分配引脚时要注意输入输出端口编号一定要与实验箱上的输入输出端口引脚号相对应。
五、思考题:1时序仿真波形图上出现了什么现象?其产生的原因是什么呢?如何进行消除?答:在组合逻辑中,由于多少输入信号变化先后不同、信号传输的路径不同,或是各种器件延迟时间不同(这种现象称为竞争)都有可能造成输出波形产生不应有的尖脉冲(俗称毛刺),这种现象成为冒险。
解决方法:一是添加布尔式的消去项,二是在芯片外部加电容。
2请比较分析用元件例化法与语言进行设计的4位加法器的定时分析结果。
一、实验目的1. 熟悉数字系统设计的基本流程和方法;2. 掌握数字系统硬件描述语言(如Verilog)的基本语法和设计方法;3. 培养动手实践能力,提高数字系统设计水平;4. 了解数字系统设计中常用模块的功能和实现方法。
二、实验内容1. 数字系统硬件描述语言(Verilog)编程2. 数字系统模块设计3. 数字系统仿真与调试三、实验步骤1. 设计数字系统模块(1)分析数字系统功能需求,确定模块功能;(2)根据模块功能,设计模块的输入输出端口和内部结构;(3)使用Verilog语言编写模块代码。
2. 编写顶层模块(1)根据数字系统功能需求,设计顶层模块的输入输出端口和内部结构;(2)将已设计的模块实例化,连接各模块端口;(3)编写顶层模块代码。
3. 仿真与调试(1)使用仿真工具(如ModelSim)对顶层模块进行仿真;(2)观察仿真波形,分析模块功能是否满足设计要求;(3)根据仿真结果,对模块代码进行修改和优化;(4)重复步骤(2)和(3),直至模块功能满足设计要求。
四、实验结果与分析1. 数字系统模块设计(1)设计了一个4位加法器模块,包括两个4位输入端口、一个4位输出端口和两个进位输出端口;(2)设计了一个2位乘法器模块,包括两个2位输入端口和一个4位输出端口;(3)设计了一个8位存储器模块,包括一个8位输入端口、一个8位输出端口和一个地址输入端口。
2. 顶层模块设计(1)根据功能需求,设计了一个包含加法器、乘法器和存储器的数字系统顶层模块;(2)将已设计的模块实例化,连接各模块端口;(3)编写顶层模块代码。
3. 仿真与调试(1)使用ModelSim对顶层模块进行仿真;(2)观察仿真波形,发现加法器和乘法器功能正常,但存储器模块存在错误;(3)分析存储器模块代码,发现地址输入端口的逻辑关系错误;(4)修改存储器模块代码,重新进行仿真,验证模块功能正确。
五、实验总结1. 通过本次实验,掌握了数字系统设计的基本流程和方法;2. 学会了使用Verilog语言进行数字系统模块设计;3. 培养了动手实践能力,提高了数字系统设计水平;4. 了解数字系统设计中常用模块的功能和实现方法。
数字系统设计及实验实验报告一、实验目的数字系统设计及实验课程旨在让我们深入理解数字逻辑的基本概念和原理,掌握数字系统的设计方法和实现技术。
通过实验,我们能够将理论知识应用于实际,提高解决问题的能力和实践动手能力。
本次实验的具体目的包括:1、熟悉数字电路的基本逻辑门、组合逻辑电路和时序逻辑电路的设计方法。
2、掌握使用硬件描述语言(如 Verilog 或 VHDL)进行数字系统建模和设计。
3、学会使用相关的电子设计自动化(EDA)工具进行电路的仿真、综合和实现。
4、培养团队合作精神和工程实践能力,提高解决实际问题的综合素质。
二、实验设备和工具1、计算机:用于编写代码、进行仿真和综合。
2、 EDA 软件:如 Quartus II、ModelSim 等。
3、实验开发板:提供硬件平台进行电路的下载和测试。
4、数字万用表、示波器等测量仪器:用于检测电路的性能和信号。
三、实验内容1、基本逻辑门电路的设计与实现设计并实现与门、或门、非门、与非门、或非门和异或门等基本逻辑门电路。
使用 EDA 工具进行仿真,验证逻辑功能的正确性。
在实验开发板上下载并测试实际电路。
2、组合逻辑电路的设计与实现设计一个 4 位加法器,实现两个 4 位二进制数的相加。
设计一个编码器和译码器,实现数字信号的编码和解码。
设计一个数据选择器,根据控制信号选择不同的输入数据。
3、时序逻辑电路的设计与实现设计一个同步计数器,实现模 10 计数功能。
设计一个移位寄存器,实现数据的移位存储功能。
设计一个有限状态机(FSM),实现简单的状态转换和控制逻辑。
四、实验步骤1、设计方案的确定根据实验要求,分析问题,确定电路的功能和性能指标。
选择合适的逻辑器件和设计方法,制定详细的设计方案。
2、代码编写使用硬件描述语言(如 Verilog 或 VHDL)编写电路的代码。
遵循代码规范,注重代码的可读性和可维护性。
3、仿真验证在 EDA 工具中对编写的代码进行仿真,输入不同的测试向量,观察输出结果是否符合预期。