ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:108.43KB ,
资源ID:21198285      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/21198285.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(可编程逻辑器件实验报告Word文件下载.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

可编程逻辑器件实验报告Word文件下载.docx

1、 output cout; output3:0 s; reg cout,s; always(k) begin if(k = 1) cout,s = aa+bb+cin; else cout,s Spreadsheet view,打开 Spreadsheet view框.在 pin一栏中填入各输入输出映射的管脚.其中定义37、38、39、40.为数据输出显示位。54为进位位或借位位,控制键,52为加减法切换键。(5)烧录程序,器件实现:在Diamond主界面中,进入Tools-Programmer,在State栏出现 PASS,即说明烧写成功。4.实验结果及分析:1)用加减法运算符实现:在实验板

2、上可以看到,发光二极管在不带进位的情况下,即cin为0时,这时应按下实验板上控制进位位与借位位的按键54时,显示为1001,在不按下按键时,即进位位cin为1时为1010,可知带进位的加法器功能完全实现;在按下控制加减法器按键52,而且同时按下54时,为不带借位的减法器输出为1111,不按下54时,即为有借位位发光二极管显示为1110,可知带借位的减法器功能完全实现。2)位运算符实现:除控制加减法切换相反外,实验结果与上相同。综上所述,达到了实验所预定的功能。5.实验体会:1.对于硬件描述语言的学习的几点体会:(1)熟悉了verilog HDL程序的基本结构。(2)理解了Verilog HDL

3、使用一个或多个模块电路进行建模。其中,模块代表硬件上的逻辑实体,其范围可以从简单的门到整个大的系统。(3)在本次实验中用到了行为级描述方式的语句,明白了“always”的重复使用,有别于“initial”只能执行一次,主要用于仿真测试而不能用于逻辑综合。同时了解到不同的描述方式在程序中的排列先后次序是任意的。实际上,Verilog HDL语句有三种描述方式,在模块中可以使用下述三种描述方式的任意一种或几种组合1)数据流描述方式:在程序中用到的assign即是,其中,逻辑表达式右边的变量受到持续的监控,一旦这些变量中的任何一个发生变化,整个表达式就会被重新计算,并将变化值赋予左边的线网变量,对组

4、合逻辑电路使用该方式特别方便.2)行为级描述方式:只有寄存器类型的变量能够在,always, initial语句中被赋值,且在赋新值以前变量保持不变。所有的initial语句和aways语句都从0时刻并行执行。3)结构型描述方式:(4)结构极建模包括门级建模和分层次建模两种情况,门级建模就是将逻辑逻辑电路图用verilog HDL规定的文本语言描述出来.分层次的电路设计通常有自顶向下(Top-Down)和自底向上(BottomUp)的设计方法。本实验中我还采用了自底向上的方法,即先定义子模块然后调用它们组成顶层的减加器模块。2.关于lattice diamond 2。0使用:在实验中,在综合这

5、一步中应在主界面 Process窗口中双击 Translate Design,对所编辑的代码进行综合。但是我所用的机子中找不见,后来在该软件的windows窗口中进行设置后可恢复Translate Design选项。实验2:乘法器设计设计一个3位二进制乘法器.2.实验要求:要求:在软件环境下,编写源文件,参考教材用ISP器件设计现代电路与系统P266第3题。3.实验过程:(1) 原理分析:乘法器有多种实现方法,其中最典型的方法是采用部分项进行相加的方法,通常称为并行法。其原理是:通过逐项移位相加的原理实现,从最低位开始,若为1,则乘数左移后遇上一次的和相加;若为0,左移后以全零相加制止被乘数的

6、最高位。这种算法采用纯组合逻辑来实现,其特点是:设计思路简单直观、电路运算速度快,缺点是使用的逻辑思源较多。(2)Verilog HDL源文件设计:/module mult(chengshua,out); parameter beichengshub = 3b101; input 2:0 chengshua; output 5:0 out; reg 5: reg 2:0 beichengshub; integer i; always (chengshua) inb = 3b101; out = 0; for(i=0;i3;i=i+1) if(beichengshubi) out = out+(

7、chengshuaProgrammer,在State栏出现 PASS,即说明烧写成功。在实验板上可以看到,在54、53、52、50为信号输入键情况下,比如为1111时为例,这时应不按下实验板上控制位54、53、52、50,显示为0001;其他情况下,比如1010则输出为00000该结果与所需要达到的实验目的完全相同。可知序列检测器功能完全实现。综上所述,达到了实验所预定的功能. 本实验编写起来难度也不算太大。另外,需要注意引脚的分配,在分配din及clk引脚时,不能使用Y1/RESET,Y2/SCLK,因为这是系统自带的,当有自定义的clk时,我们只能使用I/O口来对其进行分配.通过本程序的编

8、写,自己对Verilog语言的编写有了更进一步的了解,程序的具体操作变得更加熟练。实验4:变模计数器设计设计模为 9,11,13,15 的可变模计数器。实验要求:能在键盘的控制下,实现变模计数。模可变计数器的逻辑是有一端为时钟输入,另一端为模式控制端,最多可以实现8种不同模式的计数方式,例如可以构成7进制、10进制、16进制、256进制等共八种计数模式。/ module mchang(clk,m,Q)input clk;input 2:0 m;output4:0 Q;integer cnt;assign Q=cnt;always(posedge clk)case(m)3b000:if(cnt9

9、) cnt=cnt+1;else cnt=0;3b001:if(cnt11) cnt=cnt+1;3b010:if(cntProgrammer,在State栏出现 PASS,即说明烧写成功。 图1:程序烧写成功截图在实验板上可以看到,在53、52、50为信号输入键情况下,比如为001时为例,这时应不按下实验板上控制位50键而去按下52,53键,此时为模数为9的可变计数器。当按下54键即clk时进行加数计算,当为10是返回0值。其余的情况与它类似不在赘述。同时,也可以用其他仿真工具来进行实验,得到如下的时序图。1)模为9时的计数器:(2)模为11时的计数器:(3)模为13时的计数器:(4)模为1

10、5时的计数器:可知变模计数器功能完全实现。综上所述,达到了实验所预定的功能。实验体会: 计数器实现模15计数。本程序中多次用到if else 语句,必须很清楚的理清每个if else语句的管辖范围,否则很容易出现错误而又检查不出来。引脚的分配同上次相同,不能使用系统自带的,只能用I/O口来进行分配。程序的编写中要注意always模块中被赋值的信号必须是reg型,而输出pout为wire型,是一个变量,还有等号是“=”,很容易误写为“=等等一些小细节,这些小细节都必须引起足够的重视。实验5:简易计算器设计设计模为 9,11,13,15 的可变模计数器.能在键盘的控制下,实现变模计数.模可变计数器的逻辑是有一端为时钟输入,另一端为模式控制端,最多可以实现8种不同模式的计数方式,例如可以构成7进制、10进制、16进制、256进制等共八种计数模式。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1