赞
踩
北科大第二次计组实验报告超前进位加法器
北京科技大学 计算机与通信工程学院实 验 报 告实验名称: 超前进位加法器 学生姓名: 专 业: 计算机科学与技术 班 级: 学 号: 指导教师: 实验成绩: 实验地点: 实验时间: 2015 年 5 月 28 日1、实验目的与实验要求1、实验目的(1)掌握静态随机存储器的基本结构;(2)掌握静态随机存储器 RAM 工作特性及数据的读写方法;(3)掌握超前进位加法器的原理及其设计方法;(4)理解使用超前进位逻辑设计 ALU 的方法;(5)掌握乘法器的原理及其设计方法;(6)熟悉 FPGA 应用设计及 QuartusⅡ软件的使用。2、实验要求(1)验证静态随机存储器的读写功能;(2)用 QuartusⅡ软件设计一个超前进位加法器;(3)用 QuartusⅡ软件设计一个阵列乘法器。二、实验设备(环境)及要求Window 8, QuartusⅡ软件三、实验内容与步骤1、实验 1(1)实验内容验证静态随机存储的读写功能:(2)主要步骤①关闭实验系统电源,在断电状态下按图 3.15 所示连接实验电路,并检查无误。②将时序单元的状态开关置为“单步”档,MEM 单元的编程开关置为“运行”档。③将 CON 单元的 IOR 开关置为 1(使 IN 单元无输出),打开电源开关,如果听到有“嘀”报警声,说明有总线竞争现象,应立即关闭电源,重新检查接线,直到错误排除。④给存储器写入数据:要先写地址,后写数据。写存储器的流程如图 3.16 所示(以向 00 地址单元写入 11H 为例):读存储器的流程如图 3.17 所示(以从 00 地址单元读出 11H 为例):⑤根据对实验原理的描述,以向 03H 地址单元写入数据 33H 为例,填写表 3.6.中的操作步骤以及相关信号状态。在以从 03H 地址单元读取数据为例,填写表 3.7 中的操作步骤及相关的信号状态。2、实验 2(1)实验内容用 QuartusⅡ软件设计一个 8 位超前进位加法器。(2)主要步骤①打开 Quartus Ⅱ软件,进入软件初始界面;②通过 File→New→Block Diagram/Schematic File 选项,建立原理图文件;③添加原件和连接线:分别在原理图上画出 A、B 模块,保存原理图文件,通过File→Create/Update→Crate Symbol Files for File 选项,把 A、B 原理图转换为元件符号。再建立一个原理图文件,按照图 3.8 接线。原理图如下:A 模块B 模块④完成原理图后,过 File→New Project Wizard 选项,建立一个新工程,在建立时候在 Add Files 窗口添加原理图文件;⑤进行功能仿真。通过 Processing→Generate Functional Simulation Netlist 选项产生功能仿真网络表。有了功能仿真网络表,就可以对工程进行功能仿真。通过 File→New 或者单击工具按钮 新建一个 Vector Wave File 向量波形文件;⑥在向量波形文件窗口中,在 Name 下方空白处右击,在弹出的快捷菜单中选择Insert→Insert Node or Bus 菜单项,或者在 Name 正文空白处双击弹出 Insert Node or Bus 对话框,单击 Node Finder 按钮,进行信号的添加;添加 a、 b、C0 ,s 信号,a、b,s 设为十进制值,a、b 设置为随机值,C0 置零,保存文件;⑦通过 Assignments→Settings 选项或者单击工具按钮 进行仿真设置;更改 Simulation mode 为 Functional,选择仿真输入为刚刚新建的向量波形文件。完成设置后,通过Processing→Start Simulation 选项或者单击工具按钮 进行功能仿真,仿真结果为下图:3、实验 3(1)实验内容用 QuartusⅡ软件设计一个 4*4 阵列乘法器。(2)主要步骤①打开 Quartus Ⅱ软件,进入软件初始界面;②通过 File→New Project Wizard 选项,建立一个新工程;③通过 File→New 选项或单击工具按钮 ,在工程里新建 Verilog HDL 代码文件,保存文件,在 Quartus Ⅱ提供的代码编辑器里进行代码编辑:module chengfa(a,b,p); [3:0]a,b;output reg [7:0]p;integer c;always@(a or b)begin{c,p[0]}=a[0]*b[0];{c,p[1]}=a[1]*b[0]+a[0]*b[1]+c;{c,p[2]}=a[2]*b[0]+a[1]*b[1]+a[0]*b[2]+c;{c,p[3]}=a[3]*b[0]+a[2]*b[1]+a[1]*b[2]+a[0]*b[3]+c;{c,p[4]}=a[3]*b[1]+a[2]*b[2]+a[1]*b[3]+c;{c,p[5]}=a[3]*b[2]+a[2]*b[3]+c;{c,p[6]}=a[3]*b[3]+c;p[7]=c;endendmodule④完成代码编写后,通过 Processing →Start →Start Analysis&Synthesis 选项或者单击工具按钮 进行 Quartus Ⅱ工程的语法与综合编译;编译无误后,通过 Tools→Netlist Viewers→RTL Viewer 选项可以生成综合后的电路结构图;⑤完成编译与综合后,进行功能仿真。通过 Processing→Generate Functional Simulation Netlist 选项产生功能仿真网络表。有了功能仿真网络表,就可以对工程进行功能仿真。通过 File→New 选项或者单击工具按钮 新建一个 Vector Wave File 向量波形文件;⑥在向量波形文件窗口中,在 Name 下方空白处右击,在弹出的快捷菜单中选择Insert→Insert Node or Bus 菜单项,或者在 Name 正文空白处双击弹出 Insert Node or Bus 对话框,单击 Node Finder 按钮,进行信号的添加;添加 a、 b、p 信号,a、b、p 设置为十进制值,a、b 设置为随机值;保存文件;⑦通过 Assignments→Settings 选项或者单击工具按钮 进行仿真设置;更改 Simulation mode 为 Functional,选择仿真输入为刚刚新建的向量波形文件。完成设置后,通过Processing→Start Simulation 选项或者单击工具按钮 进行功能仿真,仿真结果为下图:四:实验结果与分析1、实验 1表 3.6 存储器写操作流程信号步骤IN 单元置地址地址打入ARIN 单
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。