数字电路
文章平均质量分 79
灭绝星辰
这个作者很懒,什么都没留下…
展开
-
hnu 数字电路 实验 CPU大综合 工程压缩包
1.蜘蛛网版链接:https://pan.baidu.com/s/1gzir2QL0IYkxDIXCx8uhuw提取码:ywwy2.简化连线版链接:https://pan.baidu.com/s/18BB200VZFU6wq-1XCDZu-w提取码:ywwy3.接板版链接:https://pan.baidu.com/s/1PBM5_YXvwYsZACEa32pvGA提取码:ywwy...原创 2021-11-13 16:14:37 · 295 阅读 · 0 评论 -
hnu 数字电路 实验5 CPU大综合
一、设计目的完整、连贯地运用《数字逻辑》所学到的知识,熟练掌握 EDA 工具基本使用方法,为学习好后续《计算机原理》课程做铺垫。二、设计内容① 按照给定的数据通路、数据格式和指令系统,使用 EDA 工具设计一台用硬连线逻辑控制的简易计算机;② 要求灵活运用各方面知识,使得所设计的计算机具有较佳的性能;③ 对所设计计算机的性能指标进行分析,整理出设计报告。三、详细设计3.1设计的整体架构模型机的基本结构和整体框架大致如下面三张图所示。3.2各模块的具体实现1.寄存器组+ALU+移位原创 2021-11-13 16:03:49 · 4942 阅读 · 0 评论 -
hnu 数字电路 实验4.4 RAM
4.用LPM_RAM_IO 定制一个 2568 的 RAM,实现对 RAM 的读写操作。① 理解要求,需要用LPM_RAM_IO 定制一个 2568 的 RAM,实现对 RAM 的读写操作。② 打开QuartusII,新建工程,【File】->【New】->【Memory InitializationFile】,建立一个名为RAM.mif的初始化文件,并输入初始化值。③ 在【Symbol】元件库的【megafunctions】|【storage】中选择LPM_RAM_IO,通过各种部件原创 2021-11-13 15:44:42 · 2416 阅读 · 0 评论 -
hnu 数字电路 实验4.3 寄存器组
3.用VHDL语言设计3个8位寄存器组成的寄存器组,实现读写操作① 理解要求,需要完成一个由3个8位寄存器组成的通用寄存器组。当处于时钟下降沿时,若使能信号WE=0,则根据WA将数据对应写入到相应寄存器中(WA=00->A寄存器,WA=01->B寄存器,WA=10->C寄存器),RA信号是什么无所谓;当RA有效时控制相应寄存器的值从S口输出(RA=00->A寄存器,RA=01->B寄存器,RA=10->C寄存器),WA控制相应寄存器的值从D口输出(WA=00->A原创 2021-11-13 15:40:57 · 514 阅读 · 0 评论 -
hnu 数字电路 实验4.2 8位指令计数器PC
2.用VHDL语言设计一个8位指令计数器PC① 理解题意,分析题目要求我们先设计一个8位指令计数器PC,在时钟下降沿时,若IN_PC=1,LD_PC=0,则c[7…0]中数据自加1;若IN_PC=0,LD_PC=1,则a[7…0]信号传入c[7…0]中。② 打开Quartus II,新建工程,工程命名为PC,开始编写源代码。③ 写好源代码,保存文件。LIBRARY IEEE;use IEEE.std_logic_1164.all;use IEEE.std_logic_unsigned.all;原创 2021-11-13 15:35:49 · 599 阅读 · 0 评论 -
hnu 数字电路 实验4.1 SM
一、实验目的1.熟悉计数器、寄存器和 RAM 的工作原理。2.了解模型机中 SM 的作用。3.学会使用 VHDL 语言设计时序电路。二、实验内容1.用 VHDL 语言设计 SM;2.用 VHDL 语言设计一个 8 位的指令计数器 PC;3.用 VHDL 语言设计 3 个 8 位寄存器组成的寄存器组,实现读写操作;4.用 LPM_RAM_IO 定制一个 256*8 的 RAM,实现对 RAM 的读写操作。三、实验方法使用Quartus II软件完成前三个部件的VHDL程序,RAM用LPM_原创 2021-11-13 15:31:28 · 618 阅读 · 0 评论 -
hnu 数字电路 实验3.3 控制信号产生逻辑
3.用VHDL语言设计模型机的控制信号产生逻辑① 理解要求,需要对模型机的运行以及控制信号有全面的认识,知道对应的输入将会有什么样的信号变化和逻辑操作。② 打开QuartusII,新建工程,工程命名为control_built_logic,开始编写源代码。③ 写好源代码,保存文件。LIBRARY IEEE;use ieee.std_logic_1164.all;entity control_built_logic is port(MOVA,MOVB,MOVC,ADD,SUB,OR0,NOT原创 2021-11-13 15:25:12 · 1606 阅读 · 0 评论 -
hnu 数字电路 实验3.2 移位模块
2.用VHDL语言设计模型机的移位模块① 理解题意,分析题目要求我们实现模型机中的移位模块,即通过fbus,flbus,frbus三个使能信号,分别控制移位模块完成直达、左移一位、右移一位的操作,将移位后的w信号输出,并更新cf的值。② 打开Quartus II,新建工程,工程命名为move_logic,开始编写源代码。③ 写好源代码,保存文件。LIBRARY IEEE;use ieee.std_logic_1164.all;entity move_logic is port(fbus,f原创 2021-11-13 15:20:17 · 567 阅读 · 0 评论 -
hnu 数字电路 实验3.1 ALU
一、实验目的1.了解简易模型机的内部结构和工作原理。2.分析模型机的功能,设计 ALU 和移位逻辑。3.分析模型机的工作原理,设计模型机控制信号产生逻辑。二、实验内容1.用 VHDL 语言设计模型机的 ALU 模块;2.用 VHDL 语言设计模型机的移位模块;3.用 VHDL 语言设计模型机的控制信号产生逻辑。三、实验方法使用Quartus II软件完成VHDL程序。四、实验步骤和实验过程1.用VHDL语言设计模型机的ALU模块① 理解题意,题目要求完成模型机的ALU模块,根据信号M原创 2021-11-13 15:15:43 · 1454 阅读 · 0 评论 -
hnu 数字电路 实验2.3 4位行波加法器
3.用VHDL语言设计一个4位行波加法器① 理解要求,需要完成一个一一进位的四位行波加法器。初步计划:设计一个半加器->利用半加器完成全加器的设计->设计四位行波加法器。② 原理图:半加器:全加器:③ 打开QuartusII,新建工程,工程命名为adder_4,开始编写源代码。④ 写好源代码,保存文件。LIBRARY IEEE;use IEEE.STD_LOGIC_1164.ALL;entity half_adder is port(x,y:in std_logic;原创 2021-11-05 20:30:57 · 1252 阅读 · 0 评论 -
hnu 数字电路 实验2.4 4位先行进位加法器
3.用VHDL语言设计一个4位行波加法器① 理解要求,需要完成一个一一进位的四位行波加法器。初步计划:设计一个半加器->利用半加器完成全加器的设计->设计四位行波加法器。② 原理图:半加器:全加器:③ 打开QuartusII,新建工程,工程命名为adder_4,开始编写源代码。④ 写好源代码,保存文件。(如图为源代码)LIBRARY IEEE;use IEEE.STD_LOGIC_1164.ALL;entity half_adder is port(x,y:in st原创 2021-11-05 20:09:56 · 3061 阅读 · 0 评论 -
hnu 数字电路 实验2.2 n-1多路复用器
2.用VHDL语言设计一个n-1多路复用器,调用该多路复用器定制为8-1多路复用器。① 理解题意,分析题目要求我们先设计一个n-1的多路复用器,再调用这个多路复用器,构造一个8-1多路复用器。② 打开Quartus II,新建工程,工程命名为dlfuy_8_1,开始编写源代码。③ 写好源代码,保存文件。(如图为源代码,包括n-1多路复用器的实现和调用)LIBRARY IEEE;use IEEE.std_logic_1164.all;use IEEE.std_logic_unsigned.all;原创 2021-11-05 19:59:35 · 554 阅读 · 0 评论 -
hnu 数字电路 实验2.1 8重3-1多路复用器
一、实验目的1.熟悉多路复用器、加法器的工作原理。2.学会使用 VHDL 语言设计多路复用器、加法器。3.掌握 generic 的使用,设计 n-1 多路复用器。4.兼顾速度与成本,设计行波加法器和先行进位加法器。二、实验内容1.用 VHDL 语言设计 8 重 3-1 多路复用器;2.用 VHDL 语言设计 n-1 多路复用器,调用该 n-1 多路复用器定制为 8-1多路复用器。3.用 VHDL 语言设计 4 位行波进位加法器。4.用 VHDL 语言设计 4 位先行进位加法器。三、实验原创 2021-11-05 19:53:35 · 1059 阅读 · 0 评论 -
hnu 数字电路 实验1.3 模型机指令译码器
3.用VHDL语言设计一个模型机指令译码器① 理解模型机指令译码器,相应的输入要对应上相应的输出。② 打开QuartusII,新建工程,工程命名为zhi_ling,开始编写源代码。③ 写好源代码,保存文件。(如图为源代码)④ 编译与调试。确保顶层实现的命名和工程名一致。编译成功。⑤ 查看RTL视图。⑥ 结果分析及结论。如RTL图所示,该指令译码器共EN,IR(0-7)九个输入,16个对应指令的输出。⑦ 功能仿真的波形及验证。a.新建波形文件,将对应的16种输入存储在波形文件zhi_原创 2021-11-05 19:34:30 · 2138 阅读 · 0 评论 -
hnu 数字电路 实验1.2 实现3-8译码器
用逻辑图和VHDL语言设计一个3-8译码器① 先画出3-8译码器的逻辑图② 打开Quartus II,新建工程,工程命名为yi_ma_38,开始编写源代码。③ 写好源代码,保存文件。(如图为源代码,VHDL数据流实现)④ 编译与调试。确保顶层实现的命名和工程名一致。编译成功。⑤ 查看RTL视图。⑥ 结果分析及结论。如RTL图所示,3-8译码器共A0,A1,A2三个输入,经过B0,B1,B2,B3三个与门和八个与门,完成C0-C7八个输出,完成3-8译码器的功能,和逻辑图相符,初步判断没原创 2021-07-06 10:42:03 · 3513 阅读 · 0 评论 -
hnu 数字电路 实验1.1 异或门
用逻辑图和VHDL语言设计一个异或门① 先画出异或门的逻辑图。② 打开Quartus II,新建工程,编写源代码。a.新建工程。【Create A New Project】->【Next】->设置文件路径为全英路径+设置project name为yi_huo ->【Next】->【Next】->Family 框处选择【Cyclone】->【Next】->【Next】->【Finish】。工程创建完毕。b.新建编程文件。【File】->【New】原创 2021-07-06 10:33:16 · 3788 阅读 · 0 评论