当前位置:文档之家› 计组课设报告(1)

计组课设报告(1)

计组课设报告(1)
计组课设报告(1)

重庆大学课程设计报告

课程设计题目:微程序设计

学院:计算机学院

专业班级:计算机科学与技术6班

年级:2012级

姓名:李航、周奥力、彭翔

学号:20125075、20125089、20125086

完成时间:2014 年12 月26 日成绩:

指导教师:冯永

重庆大学教务处制

课程设计指导教师评定成绩表姓名:李航学号:20125075

指导教师评定成绩:

指导教师签名:年月日

重庆大学本科学生课程设计任务书

说明:学院、专业、年级均填全称,如:计算机学院、计算机科学与技术、2010。

课程设计正文

一.设计要求

用微程序控制器实现以下指令功能:

调用:

CALL addr ;指令功能与80X86相同,addr是8位二进制地址

返回:

RET ;

存储器到存储器传送:

MOV mem

i , mem

j

; mem

i

←(mem

j

), i<>j,mem

i

内存单元地址

带左移的加法运算:

ADD R

i , R

j

, N ; R

i

←(R

i

)+(R

j

)<

j

中内容不变

二.详细设计

1.确定指令格式(李航、周奥力共同完成)

要求的指令有Call、Ret、Mov、Add,为了方便写指令我们添加了IN、HLT、LDI、OUT指令,指令的格式如下:

单字节指令,Ret,HLT:

三字节指令,Mov:

说明:其中括号中的1 表示指令的第一字节,2 表示指令的第二字节;

Rs 为源寄存器,Rd为目的寄存器(00-11分别对应选定寄存器R0-R3);

2.确定所有指令的操作码,如下所示:(李航、周奥力共同完成)

3.本次实验用到的指令译码电路如下:(李航、周奥力共同完成)

根据以上的电路图,得出了每条指令对应的微程序入口地址:

4.根据以上得到的微程序入口地址,我们设计了如下的微程序流程图:(李航完成)

本次设计的微指令格式是参照实验八的格式,相关内容如下:

根据微指令流程图和微指令格式,我们设计了如下表所示的微指令:

5.在.txt文档写了如下机器指令和微程序:(李航、周奥力、彭翔共同完成)$P 00 00

$P 01 00 ;将IN单元的数据送入R0中

$P 02 01

$P 03 00 ;将IN单元的数据送入R1中

$P 04 52

$P 05 38 ;将保存在内存中的立即数送到R2中,作为堆栈初值

$P 06 12

$P 07 0d ;执行CALL指令,进入地址为0DH的子程序入口

$P 08 44

$P 09 03 ;RO->(RO+R1)<<3位

$p 0a 70

$p 0b 40 ;R0->OUT

$P 0c 60 ;停机

$P 0d 30

$P 0e 20

$P 0f 21 ;MOV指令,将内存中20单元的数写入21单元中$P 10 22 ;RET

$P 20 13 ;数据

$P 21 25 ;数据

$M 00 000001

$M 01 006D43

$M 03 107070

$M 04 06B205

$M 05 006D46

$M 06 10A007

$M 07 006608

$M 08 200C09

$M 09 00D341

$M 0E 00001A

$M 11 106012

$M 12 102013

$M 13 006D54

$M 14 106015

$M 15 208201

$M 16 001617

$M 17 04B218

$M 18 006D59

$M 19 10201A

$M 1A 001628

$M 1B 103001

$M 1C 10601D

$M 1D 280401

$M 1E 000001

$M 20 001621

$M 21 04B201

$M 22 105163

$M 23 001624

$M 24 063201

$M 25 106026

$M 26 183001

$M 28 03B229

$M 29 00922A

$M 2A 06222B

$M 2B 00802C

$M 2C 0000CE

$M 30 006D65

$M 31 001604

$M 32 006622

$M 33 006D51

$M 34 002416

$M 35 006D5B

$M 36 000036

$M 37 006D5C

三.测试(彭翔单独完成)

首先按照如下电路图连接电路:

数据通路图如下:

运行:

将时序与操作台单元的开关KK1 和KK3 置为‘运行’档,进入软件界面,首先将程序装载进去,然后选择菜单命令“【实验】—【复杂模型机】”,打开复杂模型机数据通路图。按动CON 单元的总清按钮CLR,然后通过软件运行程序,选择相应的功能命令,即可联机运行、监控、调试程序。

测试结果:

IN指令,0E R0

LDI指令,(05) R2

CALL指令,将PC保存于39H中

MOV指令,将内存中20单元的数写入21单元中

Ret指令

Add指令,RO (RO+R1)<<3位

OUT 指令,R0 OUT

四.实验小结

实验结果完全符合当初的设计,各个微指令都实现了预先设计的目标,机器程序的测试也达到预期的效果。

五.参考文献

《计算机组成原理实验指导书》重庆大学计算机学院

《深入理解计算机系统》Randal E.Bryant David O’Hallaron编,中国电力出版社,2004年5月

《计算机组成和设计》David A.Patterson John L.Hennessy编,机械工业出版社,第4版

《计算机组成和设计》David A.Patterson John L.Hennessy编,机械工业

出版社,第3版

六.个人总结

通过本次课程设计,不仅巩固了在课堂上学习的知识,而且还锻炼了我们的实际动手能力.理解了复杂模型机的组成;通过自己设计微程序,也明白了微程序的实质和工作原理。

我在这次课程设计中负责微程序代码的设计和编写,当然我还有一个队友,在和他讨论的过程中,我也学习到了很多新的知识,同时发现了自己的不足之处。在设计的过程中,我感觉最难的就是Add指令的设计了,因为该指令需要将源寄存器和目的寄存器中的数相加后左移多位后再送回到目的寄存器。实现相加是很简单的,但是复杂模型机的ALU单元没有左移多位的功能,只能利用循环来解决这个问题。所以我们利用到了微指令的P<3>字段,但是在前面的实验中老师并没有讲过这方面的知识,我们只好去通过翻阅实验指导书来学习它的使用方法,最后通过一个中午的努力,终于完成了该指令的设计。

这次课程设计中,我认为最不起眼但最重要的就是电路图的连接了。因为就算微程序设计的再好,实验电路图一旦连错,就不能进行相关的测试了,这就会影响到我们,使我们不能继续做下去。实验图的连接是彭翔完成的,他很快就完成了电路的连接,我们才能顺利地进行测试。所以,团队合作才是最重要的,每个人都有自己的长处,用别人的长处去弥补自己的短处,这样在短时间内攻克难题。

计算机组成原理阵列乘法器课程设计报告

. 课程设计

. 教学院计算机学院 课程名称计算机组成原理题目4位乘法整列设计专业计算机科学与技术班级2014级计本非师班姓名唐健峰 同组人员黄亚军 指导教师 2016 年10 月 5 日

1 课程设计概述 1.1 课设目的 计算机组成原理是计算机专业的核心专业基础课。课程设计属于设计型实验,不仅锻炼学生简单计算机系统的设计能力,而且通过进行设计及实现,进一步提高分析和解决问题的能力。 同时也巩固了我们对课本知识的掌握,加深了对知识的理解。在设计中我们发现问题,分析问题,到最终的解决问题。凝聚了我们对问题的思考,充分的锻炼了我们的动手能力、团队合作能力、分析解决问题的能力。 1.2 设计任务 设计一个4位的二进制乘法器: 输入信号:4位被乘数A(A1,A2,A3,A4), 4位乘数B(B1,B2,B3,B4), 输出信号:8位乘积q(q1,q2,q3,q4,q5,q6,q7,q8). 1.3 设计要求 根据理论课程所学的至少设计出简单计算机系统的总体方案,结合各单元实验积累和课堂上所学知识,选择适当芯片,设计简单的计算机系统。 (1)制定设计方案: 我们小组做的是4位阵列乘法器,4位阵列乘法器主要由求补器和阵列全加器组成。 (2)客观要求 要掌握电子逻辑学的基本内容能在设计时运用到本课程中,其次是要思维灵活遇到问题能找到合理的解决方案。小组成员要积极配合共同达到目的。

2 实验原理与环境 2.1 1.实验原理 计算机组成原理,数字逻辑,maxplus2是现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。 用乘数的每一位去乘被乘数,然后将每一位权值直接去乘被乘数得到部分积,并按位列为一行每一行部分积末位与对应的乘数数位对齐,体现对应数位的权值,将各次部分积求和得到最终的对应数位的权值。 2.2 2.实验环境 2.2.1双击maxplu2II软件图标,启动软件 (1).新建工程,flie->new project ....,出现存储路径的选项框,指定项目保存路径并且为工程命名,第三行设置实体名,保持与工程名一致。点击OK

单片机课程设计报告——智能数字频率计汇总

单片机原理课程设计报告题目:智能数字频率计设计 专业:信息工程 班级:信息111 学号:*** 姓名:*** 指导教师:*** 北京工商大学计算机与信息工程学院

1、设计目的 (1)了解和掌握一个完整的电子线路设计方法和概念; (2)通过电子线路设计、仿真、安装和调试,了解和掌握电子系统研发产品的一个基本流程。 (3)了解和掌握一些常见的单元电路设计方法和在电子系统中的应用: 包括放大器、滤波器、比较器、计数和显示电路等。 (4)通过编写设计文档与报告,进一步提高学生撰写科技文档的能力。 2、设计要求 (1)基本要求 设计指标: 1.频率测量:0~250KHz; 2.周期测量:4mS~10S; 3.闸门时间:0.1S,1S; 4.测量分辨率:5位/0.1S,6位/1S; 5.用图形液晶显示状态、单位等。 充分利用单片机软、硬件资源,在其控制和管理下,完成数据的采集、处理和显示等工作,实现频率、周期的等精度测量方案。在方案设计中,要充分估计各种误差的影响,以获得较高的测量精度。 (2)扩展要求 用语音装置来实现频率、周期报数。 (3)误差测试 调试无误后,可用数字示波器与其进行比对,记录测量结果,进行误差分析。 (4)实际完成的要求及效果 1.测量范围:0.1Hz~4MHz,周期、频率测量可调; 2.闸门时间:0.05s~10s可调; 3.测量分辨率:5位/0.01S,6位/0.1S; 4.用图形液晶显示状态、单位(Hz/KHz/MHz)等。 3、硬件电路设计 (1)总体设计思路

本次设计的智能数字频率计可测量矩形波、锯齿波、三角波、方波等信号的频率。系统共设计包括五大模块: 主芯片控制模块、整形模块、分频模块、档位选择模块、和显示模块。设计的总的思想是以AT89S52单片机为核心,将被测信号送到以LM324N为核心的过零比较器,被测信号转化为方波信号,然后方波经过由74LS161构成的分频模块进行分频,再由74LS153构成的四选一选择电路控制档位,各部分的控制信号以及频率的测量主要由单片机计数及控制,最终将测得的信号频率经LCD1602显示。 各模块作用如下: 1.主芯片控制模块: 单片机AT89S52 内部具有2个16位定时/计数器T0、T1,定时/计数器的工作可以由编程来实现定时、计数和产生计数溢出时中断要求的功能。利用单片机的计数器和定时器的功能对被测信号进行计数。以AT89S52 单片机为控制核心,来完成对各种被测信号的精确计数、显示以及对分频比的控制。利用其内部的定时/计数器完成待测信号周期/频率的测量。 2.整形模块:整形电路是将一些不是方波的待测信号转化成方波信号,便于测量。本设计使用运放器LM324连接成过零比较器作为整形电路。 3.分频模块: 考虑单片机利用晶振计数,使用11.0592MHz 时钟时,最大计数速率将近500 kHz,因此需要外部分频。分频电路用于扩展单片机频率测量范围,并实现单片机频率测量使用统一信号,可使单片机测频更易于实现,而且也降低了系统的测频误差。本设计使用的分频芯片是74LS161实现4分频及16分频。 4.档位选择模块:控制74LS161不分频、4分频或者 16分频,控制芯片是74LS153。 5.显示模块:编写相应的程序可以使单片机自动调节测量的量程,并把测出的频率数据送到显示电路显示,本设计选用LCD1602。 (2)测频基本设计原理 所谓“频率”,就是周期性信号在单位时间(1s)内变化 的次数。若在一定时间间隔T内测得这个周期性信号的重复变 化次数N,则其频率可表示为f=N/T(右图3-1所示)。其中脉 冲形成电路的作用是将被测信号变成脉冲信号,其重复频率等 。利用单片机的定时/计数T0、T1的定时、计数 于被测频率f x 功能产生周期为1s的时间脉冲信号,则门控电路的输出信号持图3-1

计组实验报告

计算机组成原理实验报告 实验1:VERILOG 设计基础 专业班级:14级计算机二班 学号:14048001 姓名:杨娜 学号:14048003 姓名:周蓉 实验地点:理工楼901 实验时间:2016年5月14日

实验十VGA显示控制器的设计 一、实验目的 1、学习VERILOG的基本语法和编程规则 2、掌握通用寄存器等常用基本数字模块的VERILOG描述和基本设计方法 3、理解带使能控制和异步清零的8位寄存器的设计原理 4、掌握使用VERILOG设计和验证带使能控制和异步清零的8位寄存器的方法 5、掌握移位寄存器的设计方法 二、实验任务 1、设计一个带使能控制和异步清零的8位寄存器REG8X,实现8位输入的锁存,在时钟的上升沿处得到一个8位的输出和一个8位的反向输出,将结果显示在发光二极管。 模块的端口描述如下: 模块的参考物理结构如下: R7 R6 R i R 0 7 6 i 0 带使能控制和异步清零的8位寄存器 模块的使用注意事项

1.数据源D(7..0)一直加在寄存器的数据输入端; 2.周期性的时钟信号Clock一直加在寄存器的时钟输入端 3.使能信号Enable控制寄存器是否接受数据。当Enable = '0'时,寄存器不 接受数据,保持原来的状态不变;当Enable = '1'时,在时钟信号Clock正 跳变时,寄存器接受并保存当时D(7..0)的数据; 4.本寄存器其它方面的功能与上述的寄存器相同。 完成的参考电路图如下:dout=q 2、设计一个有左、右移位功能的8位寄存器REGSHIFT8,并仿真验证。

三、实验内容 1、通过输入数据先进行计算,并通过实验进行验证REG8X。 (1)、将清零信号Resetn(sw17)设为0,将输入信号D(sw7~sw0)设为10101010,观察输出信号Q(ledr7~ledr0)和Qb(ledg7~ledg0),观察并记录输出。 (2)、将清零信号Resetn(sw17)设为1,在时钟信号处输入一个上升沿(按下key0),观察并记录输出。 (3)、将输入信号D(sw7~sw0)设为01010101,观察并记录输出。 (4)、在时钟信号处输入一个上升沿(按下key0),观察并记录输出。 (5)、自行完善设计表格,观察并记录测试输出。 实验数据表 2、通过输入数据先进行计算,并通过实验进行验证REGSHIFT8。 (1)、测试清零信号Resetn (2)、测试移位功能 (3)、测试寄存功能 (4)、自行设计表格观察并记录测试输出。 实验数据表

等精度频率计的实验报告

数字频率计 摘要 以FPGA(EP2C8Q208C8N)为控制核心设计数字频率计,设计采用硬件描述语言Verilog 该作品主要包括FPGA控制、数码管模块、信号发生器、直流电源模块、独立按键、指示灯模块。主要由直流电源供电、数字信号发生器输出信号,FPGA 控制信号的采集、处理、输出,数码管显示数据,按键切换档位,指示灯显示档位。作品实现了测频、测周、测占空比,能准确的测量频率在10Hz 到100kHz之间的信号。 关键字: 频率计等精度 FPGA (EP2C8Q208C8N)信号发生器Verilog语言

一、系统方案论证与比较 根据题目要求,系统分为以下几个模块,各模块的实现方案比较选择与确定如下: 1.主控器件比较与选择 方案一:采用FPGA(EP2C8Q208C8N)作为核心控制,FPGA具有丰富的I/O 口、内部逻辑和连线资源,采集信号速度快,运行速度快,能够显示大量的信息,分频方便。 方案二:采用SST89C51作为主控器件,虽然该款单片机较便宜,但运行速度较慢,不适合对速度有太大要求的场合,并且不带AD,增加了外围电路。 综上所述,主控器件我选择方案一。 2.测量方法的比较与选择 方案一:采用测频法测量。在闸门时间内对时钟信号和被测信号同时计数,由于在闸门闭合的时候闸门时间不能是被测信号的整数倍,导致计数相差为一个被测信号时间,所以测频法只适合频率较高的测量。 方案二:采用测周法测量。用被测信号做闸门,在闸门信号内对时钟信号计数,由于在闸门闭合的时候闸门时间不能是时钟信号的整数倍,导致计数相差为一个时钟信号时间,所以测周法只适合较低频率的测量。 方案三:采用等精度法和测周法结合的方法。用等精度发测量1KHZ以上的频率,测周法测量1KHZ一下的频率。这种方法取长补短,既能准确的测高频又能测低频。 综上所述,测量方法我选用方案三。 3. 界面显示方案的选择 方案一:采用数码管显示,控制程序简单,价格便宜,显示直观。 方案二:液晶5110,虽然体积小,可以显示各种文字,字符和图案。 考虑到数码管完全可以满足数据显示要求,所以显示部分我选用方案一。 二、理论分析与计算 1、键盘设计 系统中我们采用独立键盘,用2个I/O控制2个键。原理是将2个I/O口直接接键盘的2个引脚,低电平有效,这种键盘的优点反应的速率快。 2、计算公式 (1)测频: 1khz以上:被测频率=时钟频率*(被测频率计数/时钟频率计数) 1khz以下:被测频率=时钟频率/(时钟频率在被测信号高电平计数+时钟频率在被测信号低电平计数)

计算机组成原理课程设计报告

计算机组成原理课程设计报告JUC2模型机的微程序设计 姓名沈钰城 学号3140604029 专业信息安全 指导教师肖铁军 江苏大学计算机学院 2016年1 月 6 日

一.实验环境 1.使用的硬件实验板 (1)品牌,型号 实验板品牌:Altera 实验板型号:DE2-115 FPGA芯片品牌:Cyclone IV E FPGA芯片型号:EP4CE115 (2)FPGA在现代工业中的应用 FPGA令系统开发商的产品更快速地推向市场;更长的生命周期;灵活性,可支持各种标准和网络协议;低成本,低功耗。 在工业应用中,FPGA可取代旧的ASIC技术,提供更具成本有效性的解决方案;FPGA作为通信协处理器负责连接到以太网的工作,灵活的解决方案可以通过一个硬件平台支持多种协议;用FPGA控制马达,通过它的嵌入式处理器,实时特性和数字编码器轻松实现。 另一个典型应用是马达控制。目前世界工业电力的2/3都用来驱动电机,但只有2%的电机使用了可变速的驱动,如果使用变速电机控制每年将节约10个发电厂的能量。使用电机控制芯片技术将把工业应用的能耗效率提升到88%。系统有这样的需求:在增加以太网连接能力同时不想增加额外的器件;想要灵活的方法去控制多个马达和差异化的产品;想要一个支持马达控制和现场总线连接能力的单芯片方案。基于Cylone III的马达驱动方案通过集成了不同的算法和I/O接口可满足不同的特性需求。Altera与第三方伙伴合作,将他们提供的优化算法整合到FPGA中,一个平台可实现多个电机控制,大大提高能源利用效率 2.使用的设计软件 (1)品牌、名称、版本、发布年份 软件品牌:Altera 名称:quartus ii 版本:12.0 发布年份:2012 (2)行业对该软件的评价 Altera的Quartus II可编程逻辑软件属于第四代PLD开发平台。该平台支持一个工作组环境下的设计要求,其中包括支持基于Internet的协作设计。Quartus平台与Cadence、ExemplarLogic、MentorGraphics、Synopsys和Synplicity等EDA供应商的开发工具相兼容。改进了软件的LogicLock模块设计功能,增添了FastFit编译选项,推进了网络编辑性能,而且提升了调试能力。支持MAX7000/MAX3000等乘积项器件 Quartus II设计套装的其他特性包括:DSP Builder 12.0新的数字信号处理(DSP)支持——通过系统控制台,与MATLAB的DDR存储器进行通信,并具有新的浮点功能,提高了设计效能,以及DSP效率。经过改进的视频和图像处理(VIP)套装以及视频接口IP——通过具有边缘自适应算法的Scaler II MegaCore功能以及新的Avalon-Streaming (Avalon-ST)视频监视和跟踪系统IP内核,简化了视频处理应用的开发。增强收发器设计和验证——更新了Arria V FPGA的收发器工具包支持,进一步提高收发器数据速率(对于Stratix V FPGA,高达14.1 Gbps)。 3.使用的调试工具 硬件:JUPOD调试适配器 软件:JULAB实验系统软件 江苏大学计算机学院研发

基于单片机的简单频率计课程设计报告

《单片机原理与接口技术》课程设计报 告 频率计

1功能分析与设计目标 0 2频率计的硬件电路设计 (3) 2.1 控制、计数电路 (3) 2.2 译码显示电路 (5) 3频率计的软件设计与调试 (6) 3.1软件设计介绍 (6) 3.2程序框图 (8) 3.3功能实现具体过程 (8) 3.4测试数据处理,图表及现象描述 (10) 4讨论 (11) 5心得与建议 (12) 6附录(程序及注释) (13)

1 功能分析与设计目标 背景:在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此频率的测量就显得更为重要。为了实现智能化的计数测频,实现一个宽领域、高精度的频率计,一种有效的方法是将单片机用于频率计的设计当中。用单片机来做控制电路的数字频率计测量频率精度高,测量频率的范围得到很大的提高。 题目要求: 用两种方法检测(△m ,△ T )要求显示单位时间的脉冲数或一个脉冲的周期。 设计分析: 电子计数式的测频方法主要有以下几种:脉冲数定时测频法(M 法),脉冲周期测频法(T 法),脉冲数倍频测频法(AM 法),脉冲数分频测频法(AT 法),脉冲平均周期测频法(M/T 法),多周期同步测频法。下面是几种方案的具体方法介绍。 脉冲数定时测频法(M 法):此法是记录在确定时间Tc 内待测信号的脉冲个数Mx ,则待测频率为: Fx=Mx/ Tc 脉冲周期测频法(T 法):此法是在待测信号的一个周期Tx 内,记录标准频率信号变化次数Mo。这种方法测出的频率是: Fx=Mo/Tx 脉冲数倍频测频法(AM 法):此法是为克服M 法在低频测量时精度不高的缺陷发展起来的。通过A 倍频,把待测信号频率放大A 倍,以提高测量精度。其待测频率为: Fx=Mx/ATo 脉冲数分频测频法(AT 法):此法是为了提高T 法高频测量时的精度形成的。由于T 法测量时要求待测信号的周期不能太短,所以可通过A 分频使待测信号 的周期扩大A倍,所测频率为: Fx=AMo/Tx 脉冲平均周期测频法(M/T法):此法是在闸门时间Tc内,同时用两个计数器分别记录

计组-加法器实验报告

半加器、全加器、串行进位加法器以及超前进位加法器 一、实验原理 1.一位半加器 A和B异或产生和Sum,与产生进位C 2.一位全加器 将一位半加器集成封装为halfadder元件,使用两个半加器构成一位的全加器 3.4位串行进位加法器 将一位全加器集成封装为Fulladder元件,使用四个构成串行进位加法器

4.超前进位加法器(4位) ⑴AddBlock 产生并行进位链中的ti(即Cthis)和di(即Cpass),以及本位结果Sum ⑵进位链(Cmaker) 四位一组并行进位链,假设与或非门的级延迟时间为1.5ty,与非门的延迟时间为1ty,在di和ti产生之后,只需2.5ty就可产生所有全部进位

⑶超前进位加法器 将以上二者结合起来即可完成,A和B各位作为各个AddBlock的输入,低一位的进位Ci-1作为本位AddBlock的C-1的输入。各个AddBlock输出的C_this和C_pass作为对应的Cmaker的thisi和passi的输入。

二、实验器材 QuartusII仿真软件,实验箱 三、实验结果 1.串行进位加法器结果 2.超前进位加法器结果

四、实验结果分析 1.实验仿真结果显示串行加法器比超前进位加法器快,部分原因应该是电路结构优化 不到位。另外由于计算的位数比较少,超前进位加法链结构较复杂,所以优势没体现出来,反倒运作的更慢一点。当位数增加的时候,超前进位加法器会比串行的更快。 2.波形稳定之前出现上下波动,应该与“竞争冒险”出现的情况类似,门的延迟和路径 的不同导致了信号变化时到达的时间有先有后,因此在最终结果形成前出现了脉冲尖峰和低谷;另外也可能部分原因由于电路结构优化的不到位所致

四位数字频率计实验报告

数字逻辑电路大型实验报告 姓名 指导教师 专业班级 学院信息工程学院 提交日期

一、实验目的 学习用FPGA实现数字系统的方法 二、实验内容 1.FPGA, Quartus II 和VHDL使用练习 2.四位数字频率计的设计 三、四位数字频率计的设计 1.工作原理 当系统正常工作时,8Hz信号测频控制信号发生器进行信号的变换,产生计数信号,被测信号通过信号整形电路产生同频率的矩形波,送入计数模块,计数模块对输入的矩形波进行计数,将计数结果送入锁存器中,保证系统可以稳定显示数据,显示译码驱动电路将二进制表示的计数结果转换成相应的能够在七段数码显示管上可以显示的十进制结果。在数码显示管上可以看到计数结果。工作原理图如下: 2.设计方案

1) 整形电路:整形电路是将待测信号整形变成计数器所要求的脉冲信号 2)控制信号产生器(分频电路):用8Hz时钟信号产生1Hz时钟信号、锁存器信号和cs信号 3)计时器:采用级联的方式表示4位数 4)锁存器:计数结束后的结果在锁存信号控制下锁存 5)译码器:将锁存的计数结果转换为七段显示码 3.顶层原理图(总图)

注:①CLK1:8Hz时钟信号输入; CLKIN:待测信号输入; ②显像时自左而右分别是个位、十位、百位、千位; ③顶层原理图中: (1)consignal模块:为频率计的控制器,产生满足时序要求的三个控制信号; (2)cnt10模块:有四个,组成四位十进制(0000-1001)计数器,使计数器可以从0计数到9999; (3)lock模块:有四个,锁存计数结果; (4)decoder模块:有四个,将8421BCD码的锁存结果转换为七段显示码。 4.底层4个模块(控制信号产生模块,十进制计数器模块,锁存器模块,译码模块)的仿真结果。 cnt10模块(十进制计数器模块): 输入:CLK:待测量的频率信号(时钟信号模拟); CLR:清零信号,当clr=1时计数器清零,输出始终为0000,只有当clr=0时,计数器才正常计数 CS:闸门信号,当cs=1时接收clk计数,当cs=0时,不接收clk,输出为0; 输出: co:进位信号,图中,在1001(9)的上方产生一个进位信号0,其余为1。 qq:计数器的四位二进制编码输出,以十进制输出。

计算机组成原理课程设计报告完整版

计算机组成原理课程设计报告 班级:06计算机 6 班姓名:李凯学号:20063007 完成时间:2009年1月3日 一、课程设计目的 1.在实验机上设计实现机器指令及对应的微指令(微程序)并验证,从而进一步掌握微程序设计控制器的基本方法并了解指令系统与硬件结构的对应关系; 2.通过控制器的微程序设计,综合理解计算机组成原理课程的核心知识并进一步建立整机系统的概念; 3.培养综合实践及独立分析、解决问题的能力。 二、课程设计的任务 针对COP2000实验仪,从详细了解该模型机的指令/微指令系统入手,以实现乘法和除法运算功能为应用目标,在COP2000的集成开发环境下,设计全新的指令系统并编写对应的微程序;之后编写实现乘法和除法的程序进行设计的验证。 三、课程设计使用的设备(环境) 1.硬件 ●COP2000实验仪 ●PC机 2.软件 ●COP2000仿真软件 四、课程设计的具体内容(步骤) 1.详细了解并掌握COP 2000模型机的微程序控制器原理,通过综合实验来实现该模型机指令系统的特点: COP2000模型机包括了一个标准CPU所具备所有部件,这些部件包括:运算器ALU、

累加器A、工作寄存器W、左移门L、直通门D、右移门R、寄存器组R0-R3、程序计数器PC、地址寄存器MAR、堆栈寄存器ST、中断向量寄存器IA、输入端口IN、输出端口寄存器OUT、程序存储器EM、指令寄存器IR、微程序计数器uPC、微程序存储器uM,以及中断控制电路、跳转控制电路。其中运算器和中断控制电路以及跳转控制电路用CPLD来实现,其它电路都是用离散的数字电路组成。微程序控制部分也可以用组合逻辑控制来代替。 模型机为8位机,数据总线、地址总线都为8位,但其工作原理与16位机相同。相比而言8位机实验减少了烦琐的连线,但其原理却更容易被学生理解、吸收。 模型机的指令码为8位,根据指令类型的不同,可以有0到2个操作数。指令码的最低两位用来选择R0-R3寄存器,在微程序控制方式中,用指令码做为微地址来寻址微程序存储器,找到执行该指令的微程序。而在组合逻辑控制方式中,按时序用指令码产生相应的控制位。在本模型机中,一条指令最多分四个状态周期,一个状态周期为一个时钟脉冲,每个状态周期产生不同的控制逻辑,实现模型机的各种功能。模型机有24位控制位以控制寄存器的输入、输出,选择运算器的运算功能,存储器的读写。24位控制位分别介绍如下: XRD :外部设备读信号,当给出了外设的地址后,输出此信号,从指定外设读数据。 EMWR:程序存储器EM写信号。 EMRD:程序存储器EM读信号。 PCOE:将程序计数器PC的值送到地址总线ABUS上。 EMEN:将程序存储器EM与数据总线DBUS接通,由EMWR和EMRD决定是将DBUS数据写到EM中,还是从EM读出数据送到DBUS。 IREN:将程序存储器EM读出的数据打入指令寄存器IR和微指令计数器uPC。 EINT:中断返回时清除中断响应和中断请求标志,便于下次中断。 ELP: PC打入允许,与指令寄存器的IR3、IR2位结合,控制程序跳转。 MAREN:将数据总线DBUS上数据打入地址寄存器MAR。 MAROE:将地址寄存器MAR的值送到地址总线ABUS上。 OUTEN:将数据总线DBUS上数据送到输出端口寄存器OUT里。 STEN:将数据总线DBUS上数据存入堆栈寄存器ST中。 RRD:读寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定。 RWR:写寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定。

数字逻辑数字频率计的设计课程设计报告

滁州学院 课程设计报告 课程名称:数字逻辑课程设计 设计题目:数字频率计的设计 系别:网络与通信工程系 专业:网络工程(无线传感器网络方向)组别:第七组 起止日期:2012年5月28日~2012年6 月18日指导教师:姚光顺 计算机与信息工程学院二○一二年制

课程设计任务书

目录 1绪论 (1) 1.1设计背景 (1) 1.2主要工作和方法 (1) 1.3本文结构 (1) 2相关知识 (1) 2.1数字频率计概念...................................................................................................................... .. (1) 2.2数字频率计组成 (1) 3系统设计 (2) 4系统实现 (2) 4.1计数译码显示电路 (2) 4.2控制电路 (3) 5系统测试与数据分析 (5) 6课程设计总结与体会 (8) 6.1设计总结 (8) 6.2设计体会 (8) 结束语 (9) 参考文献 (9) 附录 (10) 致谢 (12)

1绪论 1.1设计背景 数字频率计是一种基础测量仪器,到目前为止已有 30 多年的发展史。早期,设计师们追求的目标主要是扩展测量范围,再加上提高测量精度、稳定度等,这些也是人们衡量数字频率计的技术水平,决定数字频率计价格高低的主要依据。目前这些基本技术日臻完善,成熟。应用现代技术可以轻松地将数字频率计的测频上限扩展到微频段。 随着科学技术的发展,用户对数字频率计也提出了新的要求。对于低档产品要求使用操作方便,量程(足够)宽,可靠性高,价格低。而对于中高档产品,则要求有高分辨率,高精度,高稳定度,高测量速率;除通常通用频率计所具有的功能外,还要有数据处理功能,统计分析功能,时域分析功能等等,或者包含电压测量等其他功能。这些要求有的已经实现或者部分实现,但要真正完美的实现这些目标,对于生产厂家来说,还有许多工作要做,而不是表面看来似乎发展到头了。 随着数字集成电路技术的飞速发展,应用计数法原理制成的数字式频率测量仪器具有精度高、测量范围宽、便于实现测量过程自动化等一系列的突出特点。 1.2主要工作和方法 设计一个数字频率计。要求频率测量范围为1Hz-10kHz。数字显示位数为四位静态十进制计数显示被测信号。先确定好数字频率计的组成部分,然后分部分设计,最后组成电路。 1.3本文结构 本文第1部分前言主要说明频率计的用处和广泛性。第2部分简要说明了本次课程设计的要求。第3部分概要设计大致的勾画出本次设计的原理框架图和电路的工作流程图。第4部分简要说明4位二进制计数器74160的原理和搭建计数译码显示电路的原理,同时分析控制电路的功能,形成控制电路图,及搭建显示电路和控制电路的组合原理图。第5部分调试与操作说明,介绍相关的操作和输入不同频率是电路的显示情况。 2相关知识 2.1数字频率计介绍 2.1.1数字频率计概念 数字频率计是一种直接用十进制数字现设被测信号频率的一种测量装置,它不仅可以测量正弦波、方波、三角波等信号的频率,而且还可以用它来测量被测信号的周期。经过改装,在电路中增加传感器,还可以做成数字脉搏计、电子称、计价器等。因此,数字频率计在测量物理量方面有广泛的应用。 2.1.2数字频率计组成 数字频率计由振荡器、分频器、放大整形电路、控制电路、计数译码显示电路等部分组成。其中的控制脉冲采用时钟信号源替代,待测信号用函数信号发生器产生。数字频结构原理框图如图3.1

计组-4位乘法器实验报告

实验4位乘法器实验报告 姓名:X XX 学号:X XX 专业:计算机科学与技术课程名称:计算机组成同组学生姓名:无 实验时间:实验地点:指导老师:XXX 一、实验目的和要求 1.熟练掌握乘法器的工作原理和逻辑功能 二、实验内容和原理 实验内容: 根据课本上例3-7的原理,来实现4位移位乘法器的设计。 具体要求:1. 乘数和被乘数都是4位 2. 生成的乘积是8位的 3. 计算中涉及的所有数都是无符号数 4.需要设计重置功能 5.需要分步计算出结果(4位乘数的运算,需要四步算出结果) 实验原理: 1.乘法器原理图

2.本实验的要求: 1.需要设计按钮和相应开关,来增加乘数和被乘数 2.每按一下M13,给一个时钟,数码管的左边两位显示每一步的乘 积 3.4步计算出最终结果后,LED灯亮,按RESET重新开始计算 三、主要仪器设备 1.Spartan-III开发板1套 2.装有ISE的PC机1台 四、操作方法与实验步骤 实验步骤: 1.创建新的工程和新的源文件 2.编写verilog代码(top模块、display模块、乘法运算模块、去抖动模块以及 UCF引脚) 3.进行编译 4.进行Debug 工作,通过编译。

5.. 生成FPGA代码,下载到实验板上并调试,看是否与实现了预期功能 操作方法: TOP: module alu_top(clk, switch, o_seg, o_sel); input wire clk; input wire[4:0] switch; output wire [7:0] o_seg; // 只需七段显示数字,不用小数点 output wire [3:0] o_sel; // 4个数码管的位选 wire[15:0] disp_num; reg [15:0] i_r, i_s; wire [15:0] disp_code; wire o_zf; //zero detector initial begin i_r <= 16'h1122; //0x1122 i_s <= 16'h3344; //0x3344 end alu M1(i_r, i_s, switch[4:2], o_zf, disp_code); display M3(clk, disp_num, o_seg, o_sel); assign disp_num = switch[0]?disp_code:(switch[1] ? i_s : i_r); endmodule

频率计实验报告

一.设计方案 1. 整体思路:求待测信号的频率,实际上是在1s内对脉冲进行计数。故先对1MHz分频产生1s的闸门信号,由此产生计数使能信号,计数清零信号(有锁存要求的也要产生锁存信号要求);六位十进制计数器在计数使能和计数清零信号的控制下计数。若有显示频率值固定的要求,则由锁存信号控制寄存器锁存稳定的频率值。 2. 模块划分:采用“自顶向下,逐步细化”的设计思想,顶层文件定义总输入输出端口及各模块的输入输出端口,并进行端口匹配。底层分为三个模块:分频模块,计数模块和锁存模块,分别完成各自功能。 (1)分频模块:输入为1MHz基准时钟信号,输出为计数使能信号,计数清零信号(和锁存信号) 共有四个线程, p1: process (clk01) 用于将1MHz时钟基准信号500000分频产生2Hz时钟信号(具体实现方式是设置计数变量,每计到49999时2Hz时钟信号clk2产生一个脉冲); p2: process ( clk2 ) 用于将2Hz时钟信号clk2 2分频,产生1s的闸门信号(实现方法是clk2每出现一个脉冲,clk1的值反转一次。这样两次分频产生的闸门信号是方波,而将1MHz 直接500000分频得到的输出信号占空比不是50%); p3: process ( clk1 ) 用于将闸门信号clk1再次2分频从而产生计数使能信号en(和锁存信号lock); p4: process ( clk1,clk0_5 ) 用于产生计数清零信号clr(计数使能信号无效的后0.5s计数器清零)。 (2)计数模块:输入为待测脉冲频率,计数使能和计数清零信号,输出为27位(前7位对应十万位7段译码管g~a,后20位对应万位~各位的8421码输出)。采用异步清零。 计数器的原理入下: a.若个位小于9,则个位加1,其余位不变; b.若个位为9,十位小于9,则十位加1,个位归0,其余位不变; c.若个位,十位均为9,百位小于9,则百位加1,十位,个位归0,其余位不变; d.若个,十,百位均为9,千位小于9,则千位加1,百位,十位,个位归0,其余位不变; e.若个,十,百,千位均为9,万位小于9,则万位加1,千位,百位,十位,个位归0,其余位不变; f.若个,十,百,千,万位均为9,十万位小于9,则十万位加1,万位,千位,百位,十位,个位归0,其余位不变; g.若这6位均为9,则各位均归0(此时待测频率超出0~999999Hz量程,频率计不能正确显示)。 计数器的数值一定是上述情况中的一种,因此一定会进入某个if条件中执行相应语句。 *(3)锁存模块 有锁存要求时,由锁存信号控制在第2s初(上升沿)锁存计数值,因此当输入待测信号稳定时,输出总是某个恒定值。没有锁存要求时,不需锁存信号控制,锁存模块的输出就是本模块的输入。 二.问题及解决方案 1.顶层设计时,最初为了简便将各模块对应端口直接MAP起来,而没有设置中间变量;后来怀疑这种写法是否规范,和小组成员商量后,组长的建议书是决定还是在端口间设置

计算机组成原理课程设计微程序报告

微程序控制器的设计与实现

目录 1设计目的 (3) 2设计内容 (3) 3具体要求 (3) 4设计方案 (3) 5 调试过程 (11) 6 心得体会 (12)

微程序控制器的设计与实现 一、设计目的 1)巩固和深刻理解“计算机组成原理”课程所讲解的原理,加 深对计算机各模块协同工作的认识 2)掌握微程序设计的思想和具体流程、操作方法。 3)培养学生独立工作和创新思维的能力,取得设计与调试的实 践经验。 4)尝试利用编程实现微程序指令的识别和解释的工作流程 二、设计内容 按照要求设计一指令系统,该指令系统能够实现数据传送,进行加、减运算和无条件转移,具有累加器寻址、寄存器寻址、寄存器间接寻址、存储器直接寻址、立即数寻址等五种寻址方式。 三、设计要求 1)仔细复习所学过的理论知识,掌握微程序设计的思想,并根 据掌握的理论写出要设计的指令系统的微程序流程。指令系 统至少要包括六条指令,具有上述功能和寻址方式。 2)根据微操作流程及给定的微指令格式写出相应的微程序 3)将所设计的微程序在虚拟环境中运行调试程序,并给出测试 思路和具体程序段 4)尝试用C或者Java语言实现所设计的指令系统的加载、识 别和解释功能。 5)撰写课程设计报告。 四、设计方案 1)设计思路 按照要求设计指令系统,该指令系统能够实现数据传送,进行加、减运算和无条件转移,具有累加器寻址、寄存器寻址、寄存器间接寻址、存储器直接寻址、立即数寻址等五种寻址方式。从而可以想到如下指令:24位控制位分别介绍如下: XRD :外部设备读信号,当给出了外设的地址后,输出

此信号,从指定外设读数据。 EMWR:程序存储器EM写信号。 EMRD:程序存储器EM读信号。 PCOE:将程序计数器PC的值送到地址总线ABUS上。 EMEN:将程序存储器EM与数据总线DBUS接通,由EMWR 和EMRD决定是将DBUS数据写到EM中,还是 从EM读出数据送到DBUS。 IREN:将程序存储器EM读出的数据打入指令寄存器IR 和微指令计数器uPC。 EINT:中断返回时清除中断响应和中断请求标志,便于下次中断。 ELP: PC打入允许,与指令寄存器的IR3、IR2位结合,控制程序跳转。 MAREN:将数据总线DBUS上数据打入地址寄存器MAR。 MAROE:将地址寄存器MAR的值送到地址总线ABUS上。 OUTEN:将数据总线DBUS上数据送到输出端口寄存器OUT 里。 STEN:将数据总线DBUS上数据存入堆栈寄存器ST中。 RRD:读寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定。 RWR:写寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定。 CN:决定运算器是否带进位移位,CN=1带进位,CN=0不带进位。 FEN:将标志位存入ALU内部的标志寄存器。 X2:X1:X0: X2、X1、X0三位组合来译码选择将数据送到DBUS

数电课程设计报告-数字频率计

数电课程设计报告:频率计 目录 一、设计指标 二、系统概述 1.设计思想 2.可行性论证 3.工作过程 三、单元电路设计及分析 1.器件选择 2.设计及工作原理分析 四、电路的组构及调试 1.遇到的问题 2.现象记录及原因分析 3.解决及结果 4.功能的测试方法、步骤、设备、记录的数据 五、总结 1.体会 2.电路总图 六、参考文献 一、设计指标 设计指标:要求设计一个测量TTL方波信号频率的数字系统。测试值采用4个LED七段数码管显示,并以发光二极管只是测量对象(频率)的单位:Hz、kHz。

频率的测量范围有四档量程。 1)测量结果显示四位有效数字,测量精度为万分之一。 2)频率测量范围:100.1Hz——999.9kHz,分为: 第一档: 100.0Hz——999.9Hz 第二档: 1.000kHz——9.999kHz 第三档: 10.00kHz——99.99kHz 第四档: 100.0kHz——999.9kHz 3)量程切换可以采用两个按键SWB、SWA手动切换。 扩展要求: 一、当被测频率大于999.9kHz,超出最大值时,设置亮一个警灯,并同时发出报警声音。 二、自动切换量程 提示: 1.计数器计到9999时,产生溢出信号CO,启动量程加档。 2.显示不足4位有效数字时量程减档。 三、各量程输出信号的频率最高位有效数字为1、2、3、4、5、6、7、8、9。 二、系统概述 1.设计思想 周期性信号频率可通过记录信号在1s内的周期数来确定其频率。

累计标准时间Ts中被测信号的脉冲个数Nx,被测信号频率:fx≈Nx/Ts 测量时间Ts选择:由于测量时间Ts需要根据被测信号的频率切换,所以通常对振荡时钟进行分频以获得不同的定时时间。 采样定时、显示锁存、计数器清零的控制时序波形图 2.可行性论证 用计数器实现记录周期数的功能;用时基信号产生计数时间作为采样时间;用四位动态扫描通过数码管显示结果;因为如果计数器直接把数据输入到数码管显示,那么数码管的数据就会不断变化,累计增加的情况,所以采用锁存器,在每个时间信号内,通过一个高电平使能有效,将计数器的数值锁存到寄存器或者锁存器;为了不要让每次锁存的数据会比上次

实验六-数字频率计的Verilog-HDL语言实现

五邑大学实验报告 实验课程名称 ) 数字频率计的Verilog HDL语言实现 院系名称:信息工程学院 专业名称:通信工程(物联网工程) 实验项目名称:EDA实验 班级: 110711 学号: 。 报告人:冯剑波

实验六 数字频率计的Verilog HDL 语言实现 一、实验目的: 1、掌握较复杂数字电路或系统的纯Verilog HDL 实现方法; 2、体会纯Verilog HDL 语言输入设计与原理图输入设计的差别。 二、实验原理: 【 数字频率计是用来测量输入信号的频率并显示测量结果的系统。一般基准时钟的高电平的持续时间为s T 10 ,若在这0T 内被测信号的周期数为N 则被测信号的频率就是N ,选择不同的0T ,可以得到不同的测量精度。一般0T 越大,测量精度越高,但一次的测量时间及频率计所需的硬件资源也增加。 三、设计任务与要求: 1、设计一个6位频率计,测量范围从1Hz 到99 99 99Hz ,测量结果用6个数码管显示,基准时钟频率为1Hz ; 2、只显示测量结果,中间计数过程不显示;结果更新时间2秒一次; 3、频率计只设一个复位键,按下该键(reset=0)系统复位,释放该键(reset=1)系统工作,测量并显示结果。 4、显示用静态方式; 5、用Verilog HDL 实现上述要求的频率计。 四、设计源程序及注释与仿真结果 设计源程序: module pinlvji(oHEX0,oHEX1,oHEX2,oHEX3,oHEX4,oHEX5,clk_50M,clk_1Hz,reset,signal_out); @ input clk_50M,reset; //50MHz 时钟输入、复位 output[6:0] oHEX0,oHEX1,oHEX2,oHEX3,oHEX4,oHEX5; //数码管0-5,分别显示个、十、百、千、万、十万位的数字 output reg clk_1Hz; output reg signal_out; reg signal_in; reg[29:0] cnt; reg[29:0] cnt1; reg count_en; //计数允许,count_en=1时计数,下降沿到来时锁存 reg load; reg[3:0] ge,shi,bai,qian,wan,shiwan; reg cout1,cout2,cout3,cout4,cout5; reg[3:0] q0,q1,q2,q3,q4,q5; wire clr; always @(posedge clk_50M) //改变Hz 的范围,自己设定的频率1Hz-999999Hz begin

计组课设-微指令的设计实验

计算机组成原理课程设计报告 班级:计算机/物联网 ________ 班姓名:_______ 学号:___________ 完成时间:2016.1.14 _____________________ 一、课程设计目的 1 ?在实验机上设计实现机器指令及对应的微指令(微程序)并验证,从而进一步掌握微程 序设计控制器的基本方法并了解指令系统与硬件结构的对应关系; 2 ?通过控制器的微程序设计,综合理解计算机组成原理课程的核心知识并进一步建立整机系统的概念; 3 ?培养综合实践及独立分析、解决问题的能力。 二、课程设计的任务 针对COP2000实验仪,从详细了解该模型机的指令/微指令系统入手,以实现乘法和 除法运算功能为应用目标,在COP2000 的集成开发环境下,设计全新的指令系统并编写 对应的微程序;之后编写实现乘法和除法的程序进行设计的验证。 三、课程设计使用的设备(环境) 1 .硬件 COP2000实验仪 PC机

2 .软件 COP2000仿真软件 四、课程设计的具体内容(步骤) 1?详细了解并掌握COP 2000模型机的微程序控制器原理,通过综合实验来实现 该模型机指令系统的特点: 从指令字长来看该模型机指令系统包含单字长和双字长两种格式的指令,字长为8位,对于需要访问内存的指令都是双字长的,指令系统中大多数指令是单字长;从指令操作码是 定长和变长来看,这里认为,虽然ADD A, R?和ADD A, @R?都是执行加法操作, 但他们是不同的指令,将指令格式中寻址寄存器的两位也认为是操作码的一部分,这两条指令的操作码不同。因此,指令系统的指令格式是定长操作码的,操作码为6位。 1)双字长的指令格式如下: 举例 2)单字长的指令格式如下:

相关主题
文本预览
相关文档 最新文档