精华内容
下载资源
问答
  • 一位全加器的实验原理
    千次阅读 多人点赞
    2020-06-04 10:17:56

    广工计算机组成原理实验
    实验二要求:
    例2-19一位全加器,要做出仿真波形
    提交完整详细的代码,元件图,测试波形,说明文字

    一、实验目的

    1. 学习、掌握QuartusII开发平台的基本使用
    2. 设计一个一位全加器,并验证全加器的功能

    二、实验说明和实验原理

    一个一位全加器可以用两个一位半加器和一个或门连接而成。而一个一位半加器可由基本门电路组成。

    1. 半加器设计原理:只考虑两个一位二进制数的相加,而不考虑来自低位进位数的运算电路,称为半加器。
      其中:a、b分别为被加数与加数,作为电路的输入端;s0为两数相加产生的本位和,它和两数相加产生的向高位的进位c0一起作为电路的输出。
    2. 全加器设计原理:除本位两个数相加之外,还要加上从低位来的进位数,称为全加器。
      其中:a为被加数,b为加数,c为低位向本位的进位,c0为本位向高位的进位,s0为本位和。

    三、实验内容

    利用VHDL编辑程序实现半加器和或门,再连接半加器和或门完成全加器的设计。

    LIBRARY IEEE;
    USE IEEE.STD_LOGIC_1164.ALL;
    ENTITY f_adder IS
    	PORT (ain,bin,cin:IN STD_LOGIC;
    		  cout,sum:OUT STD_LOGIC);
    END ENTITY f_adder;
    ARCHITECTURE fd1 OF f_adder IS
    	COMPONENT h_adder
    		PORT (a,b:IN STD_LOGIC;
    			  co,so:OUT STD_LOGIC);
    	END COMPONENT;
    	COMPONENT or2a
    		PORT(a,b:IN STD_LOGIC;
    			 c: OUT STD_LOGIC);
    	END COMPONENT;
    SIGNAL d,e,f : STD_LOGIC;			
    	BEGIN
    	u1: h_adder PORT MAP(a=>ain,b=>bin,co=>d,so=>e);
    	u2: h_adder PORT MAP(a=>e,b=>cin,co=>f,so=>sum);
    	u3: or2a PORT MAP(a=>d,b=>f,c=>cout);
    END ARCHITECTURE fd1;
    
    LIBRARY IEEE;
    USE IEEE.STD_LOGIC_1164.ALL;
    ENTITY h_adder IS
    	PORT (a,b:IN STD_LOGIC;
    		  co,so:OUT STD_LOGIC);
    END ENTITY h_adder;
    ARCHITECTURE fh1 OF h_adder IS
    BEGIN
    	so<=NOT(a XOR (NOT b));
    	co<=a AND B;
    END ARCHITECTURE fh1;
    
    LIBRARY IEEE;
    USE IEEE.STD_LOGIC_1164.ALL;
    ENTITY or2a IS
    	PORT(a,b:IN STD_LOGIC;
    		 c: OUT STD_LOGIC);
    END ENTITY or2a;
    ARCHITECTURE one OF or2a IS
    	BEGIN 
    		c<=a OR b;
    END ARCHITECTURE one;
    

    四、元件图

    实验二元件图

    五、测试结果

    实验二测试结果

    六、实验心得

    1. 通过这次实验,学习且掌握了QuartusII开发平台的基本使用。
    2. 能设计出一个一位全加器,并验证全加器的功能。
    3. 学会了使用元件例化语句。例化语句用于层次设计,即在当前设计中调用一个已经设计好的功能模块。
    COMPONENT 元件名 IS 
          PORT  (端口名表) ;
        END COMPONENT 文件名 ; 
    

    例化名 : 元件名 PORT MAP( [端口名 =>] 连接端口名,…);

    更多相关内容
  • 计算机组成原理一位全加器实验报告.docx计算机组成原理一位全加器实验报告.docx计算机组成原理一位全加器实验报告.docx计算机组成原理一位全加器实验报告.docx计算机组成原理一位全加器实验报告.docx计算机组成原理...
  • 一位全加器

    2019-01-14 18:21:14
    基于Multisim14绘制的,实现一位全加器结构的仿真图。
  • 计算机组成原理一位全加器实验报告.pdf计算机组成原理一位全加器实验报告.pdf计算机组成原理一位全加器实验报告.pdf计算机组成原理一位全加器实验报告.pdf计算机组成原理一位全加器实验报告.pdf计算机组成原理一位...
  • 课程名称:计算机组成原理 实验名称:全加器实验报告实验原理及内容:原理:1 二进制加法器有三个输入量:两个二进制数字 Ai、Bi 和个低位的进位信号 Ci,这三个值相加产生个和输出Si以及个向高位的进位输出...
  • VHDL原理图编辑,从半加器到1位全加器,在到8位全加器,详尽设计流程,包括原理图,仿真图形,波形分析,实验总结与体会
  • 一位全加器原理图输入法设计四位全加器实验 一位全加器原理图输入法设计四位全加器实验 一位全加器原理图输入法设计四位全加器实验
  • FPGA小脚丫开发板学习笔记:1位全加器设计 板子:Altera Cyclone10 STEP小脚丫FPGA开发板 IDE:QuartusII 18.1... 一位全加器一、New一个1. 新建工程2. 绘制半加器原理图3. 波形仿真二、设计全加器1. 新建原

    FPGA小脚丫开发板学习笔记:1位全加器设计

    板子:Altera Cyclone10 STEP小脚丫FPGA开发板

    IDE:QuartusII 18.1(Educational)

    仿真软件:Modelsim-Alterl

    芯片系列:Cydone 10 LP

    芯片名称:10CL016YU256C8G

    芯片核心:10CL016

    O1CN01ZQ6e651tSFVPSCvlM_!!2997585900

    〇、全加器

    1. 全加器

    全加器英语名称为full-adder,是用门电路实现两个二进制数相加并求出和的组合线路,称为一位全加器。一位全加器可以处理低位进位,并输出本位加法进位。多个一位全加器进行级联可以得到多位全加器。常用二进制四位全加器74LS283。

    module FA_struct (A, B, Cin, Sum, Count);
    input A;
    input B;
    input Cin;
    output Sum;
    output Count;
    wire S1, T1, T2, T3;
    // -- statements -- //
    xor x1 (S1, A, B);
    xor x2 (Sum, S1, Cin);
    and A1 (T3, A, B );
    and A2 (T2, B, Cin);
    and A3 (T1, A, Cin);
    or O1 (Count, T1, T2, T3 );
    endmodule
    

    该实例显示了一个全加器由两个异或门、三个与门、一个或门构成 (或者可以理解为两个半加器与一个或门的组合)。S1、T1、T2、T3则是门与门之间的连线。代码显示了用纯结构的建模方式,其中xor 、and、or 是Verilog HDL 内置的门器件。以 xor x1 (S1, A, B) 该例化语句为例:xor 表明调用一个内置的异或门,器件名称xor ,代码实例化名x1(类似原理图输入方式)。括号内的S1,A,B 表明该器件管脚的实际连接线(信号)的名称,其中 A、B是输入,S1是输出。

    2. 一位全加器

    全加器是能够计算低位进位的二进制加法电路。与半加器相比,全加器不只考虑本位计算结果是否有进位,也考虑上一位对本位的进位,可以把多个一位全加器级联后做成多位全加器.

    image-20220326164404811

    一、New一个

    1. 新建工程

    • file->new project wizard->next->next

    • 输入文件名(文件名不要用数字开头,否则会编译出错),选择存储路径

      image-20220326170124239

    • 选择目标芯片:Cydone 10 LP系列的10CL016YU256C8G ,如图:

      image-20220404193726327

    • 直接next,之后到达完成界面,这里会看见关于整个工程的一些信息,核对

      一下是否正确,然后点击“finish”。

      此时界面上会出现顶层文件名和项目名:

      image-202203261744257013

    2. 绘制半加器原理图

    原理图编辑输入流程如下:

    • 新建原理图文件。打开QuartusII,选菜单“File”一“New”,在弹出的“New-”对话框中选择“ Design Files” 的原理图文件编辑输入项“Block block diagram/schematic File"按"OK"后将打开原理图编辑窗。

    image-20220326174734717

    • 在编辑窗中调入元件,完成半加器的原理图输入。

    ​ 点击按纽“ image-20220326174854758”或直接双击原理图空白处,从“ Symbol”窗中选择需要的符号,或者直接在“name”文本框中键入元件名,如“and2”为2输入与门,点OK按钮,即将元件调入原理图编辑窗中。例如为了设计半加器,分别调入元件and2,not,xnor和输入输出引脚input和output。并如图用点击拖动的方法连接好电路。然后分别在input和output的PIN NAME上双击使其变黑色,再用键盘分别输入各引脚名:a、b, co和s。

    image-20220326174937640

    • 存盘编译。选择菜单File - Save As,选择刚才为自己的工程建立的目录d:\adder4,将已设计好的原理图文件取名为:half_adder.bdf(注意默认的后缀是.bdf),并存盘在此文件夹内。然后点击image-20220326175145375进行编译,若无错误则可进行下一步,若有错进行原理图修改。编译完成后最下面的“message”框中会显示编译结果,没有error就可以忽略。

    • 将项目设置为可调用元件

      image-20220326175407475

    3. 波形仿真

    • 新建波形文件。如上面新建图形文件的方法,从“file”中选择“new”,然后从出现的对话框中选择“university program VWF”。点击“OK”。

    • 输入波形文件。在波形文件编辑器左端大片空白处双击,出现“insert node or bus”对话框,点击“node finder”按钮。如图。然后在随后出现的“node finder”对话框中点击“list”按钮,则半加器中所有的输入输出引脚全部出现在对话框左边。

      image-20220326175922992

    • 再在该界面上点击“>>”,则把左边所有的端口都选择到右边,进入波形。

      image-20220326180553220

    • 点击OK后出现如图的波形文件

      image-20220326180722138

    • 使用Random控制输入电频,使其随机输入

      image-20220326181042529

    • 点击仿真按钮,进行仿真,得到如下结果

      image-20220326181404367

    二、设计全加器

    1. 新建原理图

    • 新建原理图文件,奖上一步保存的半加器元件直接调用

      image-20220326181743051

    (同样需要生成可调用的元件,为后面的步骤做准备)

    • 编译,然后设置为顶层文件

    2. 新建波形文件然后仿真

    image-20220326182526368

    三、硬件部分

    1. 绑定引脚

    • 选择 Assignments→Device 打开器件配置页面,然后点击页面中的 Device and Pin Options… 选项打开器件和管脚选项页面。

    image-20220404194439510

    • 在 Unused Pins 选项中配置 Reserve all unused pins 为 As input tri-stated 状态。

    image-20220404194532514

    • 在 Voltage 选项中配置 Default I/O standard 为 3.3-V LVTTL 状态。然后 OK 回到设计界面。

    image-20220404194939999

    • 选择菜单栏中 Assignments→Pin planner 选项 或 工具栏中 Pin planner 图标,进入管脚分

    配界面。

    image-20220404195035706

    • 在 Pin Planner 页面中将所有端口分配对应的 FPGA 管脚,如下图,然后关闭(自动保存)。

    根据参考书中LED1-2,SW1-3的管脚名进行分配:将ABC三个输入端分别分配给SW1-3,两个输出端分别分配给LED1-2,LED亮则为0,不亮则为1

    image-20220404195555391

    image-20220404211059908

    • 选择菜单栏中 Processing→Start Compilation 选项 或 工具栏中 Start Compilation 按钮,开STEP-CYC10 软件手册,开始所有编译,等待 Tasks 列表中所有选项完成,如下图。

    image-20220404195910699

    2. 下载

    • 使用 micro-usb 线将 STEP-MAX10 二代开发平台连接至电脑 USB 接口,选择菜单栏中 Tools →Programmer 选项 或 工具栏中 Programmer 按钮,进入烧录界面。

      image-20220404211744327

    • 烧录界面如下,确认硬件驱动为 USB-Blaster[USB-0],选择 Add File 添加工程输出文件中 sof 格式文件,勾选 Program 列和 Verify 列,点击 Start 按钮进行 FPGA 加载。

      image-20220404211753096

    • FPGA 加载完成,界面中 Progress 状态显示 100%(Successful)。观察开发板现象。

      image-20220404211801991

    3. 测试

    • 全加器真值表:

    image-20220404212124828

    • 实际效果:

      IMG_20220404_212204
      实际测试结果与真值表一一对应,证明电路设计图没有问题

    注意:小脚丫的LED亮则为0,灭则为1

    四、总结

    通过这次实验,我学会了利用 Quartus I 的原理图输入方法设计简单组合电路。

    五、参考文章

    实验一:1位全加器设计—— 原理图与VHDL设计初步

    STEP-CYC10 硬件手册

    STEP-CYC10 软件手册

    STEP 10资源参考:

    image-20220404195310148

    六、源文件

    https://github.com/Wattson1128/FPGA

    展开全文
  • 实验一 1 位全加器电路的设计 一实验目的 1学会利用 Quartus 软件的原理图输入方法设计简单的逻辑电路 2熟悉利用 Quartus 软件对设计电路进行仿真的方法 3理解层次化的设计方法 二实验内容 1用原理图输入方法设计...
  • 位全加器实验

    2022-06-09 12:55:05
    位全加器实验

    四位全加器实验
    一、实验目的
    采用modelsim集成开发环境利用verilog硬件描述语言中行为描述模式、结构描述模式或数据流描述模式设计四位进位加法器。
    二、实验原理
    计数器是一种用来实现计数功能的时序部件计数器在数字系统中主要是对脉冲的个数进行计数 以实现测量、计数和控制的功能 同时兼有分频功能。计数器由基本的计数单元和一些控制门所组成计数单元则由一系列具有存储信息功能的各类触发器构成这些触发器有RS触发器、 T触发器、 D触发器及JK触发器等。计数器在数字系统中应用广泛如在电子计算机的控制器中对指令地址进行计数 以便顺序取出下一条指令在运算器中作乘法、除法运算时记下加法、减法次数又如在数字仪器中对脉冲的计数等等。
    三、实验步骤
    1、新建工程
    在这里插入图片描述
    在这里插入图片描述

    2、新建一个VHDL项目文件。
    打开QuartusII选择菜单“File” “New” 在New窗中的“ DesignFiles” 中选择编译文件的语言类型选“VHDL File” 如下图所示 ,选择编辑文件的语言类型。
    在这里插入图片描述
    3、然后在VHDL文本编译窗中键入VHDL程序。 VHDL语言的程序代码如下图所示

    在这里插入图片描述

    4、键入程序后 点击保存选择默认保存名。
    在这里插入图片描述

    5、需要进行项目工程编译QuartusII软件能自动对我们设计的电路进行编译和检查设计的
    确性。方法如下 在【Processing 】菜单下点击【Start Compilation】命令或直接点击常用工具栏上的按钮
    开始编译我们的项目。编译成功后 点击确定按钮。点击Processing—>Start Compilation下图表示编译成功没有报错警告一般不用管。
    在这里插入图片描述
    6、按如下步骤调出四位全加器的原理图
    在这里插入图片描述

    四位全加器原理图加载中在这里插入图片描述
    在这里插入图片描述
    四位全加器原理图一调出
    四、调出四位全加器的波形图,这里调波形和我们之前所调的波形步骤是一致的
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    以上就是这次四位全加器的实验过程及结果。

    展开全文
  • 二、实验原理 1 位全加器可以用两个半加器及个或门连接而成,半加器原理图的设计方法很多,我 们用个与门、个非门和同或门(xnor 为同或符合,相同为 1,不同为 0)来实现。先设计 底层文件:半加器,再设计...

    一、实验目的

    1.进一步熟悉 ALTERA 公司 EDA 设计工具软件 Quartus II。

    2.进一步熟悉 Quartus II 设计的原理图输入方法及设计流程。

    二、实验原理

    1 位全加器可以用两个半加器及一个或门连接而成,半加器原理图的设计方法很多,我

    们用一个与门、一个非门和同或门(xnor 为同或符合,相同为 1,不同为 0)来实现。先设计

    底层文件:半加器,再设计顶层文件全加器。

    三、实验内容

    在Quartus II软件中使用原理图输入法设计并实现一个1位全加器。在实验板上拨码开关作为输入设置,组成一个全加器,用实验板上的发光二极管作为输出,观察全加器输出随拨码开关置值的改变而引起的相应变化。

    1.半加器原理图

    2.半加器仿真波形

    3.一位全加器原理图 

     

    4.一位全加器仿真波形

     

    波形分析:sum的结果为ain、bin全加的结果,cin为进位标志,从仿真波形可以看出,sum满足两个二进制数ain、bin相加,并且输出cout加法进位。

    5.四位全加器原理图:

    6.四位全加器波形仿真:

     

    四、实验总结:

       通过本次实验学习,完成了半加器和全加器电路设计和波形仿真,熟悉半加器和全加器功能,回顾了数电的基础知识,加深了对EDA软件仿真功能的了解,进一步熟悉并能掌握电路图设计和仿真波形等关键功能的初步实现。

      错误整理(Quartus9.0版本):①创建好半加器的原理图后,忘记点击“Creat Symbol Files for Current File”以生成模块。②未经过编译就试图在vwf文件中导入端口。

     

     

    展开全文
  • 计算机组成原理 全加器实验

    千次阅读 2022-05-05 20:06:44
    全加器实验 实验目的 熟悉多思计算机组成原理网络虚拟实验系统的使用方法。 掌握全加器的逻辑结构和电路实现方法...图1.1 一位全加器实验电路 一位全加器的逻辑结构如图 1.1 所示,图中涉及的控制信号和数据信号如下:
  • 计算机组成原理实验全加器实验

    万次阅读 多人点赞 2020-05-20 11:21:36
    实验基于多思计算机组成原理网络虚拟实验系统 实验室地址:http://www.dsvlab.cn/ 实验目的: 1.... 是实现两个一位二进制数的加法运算电路 类比:现实中我们可以很容易计算出 1 + 1 = 2...
  • 多思计算机组成原理实验二:全加器实验
  • 1位全加器 module Full_Adder_1bit( input A,B,Cin, output F,Cout ); assign F = A^B^Cin; assign Cout = (A&B)|(A^B)&Cin; endmodule 4位全加器 module Full_Adder_4bit(Sum,Cout,X,Y,Cin); ...
  • 多思计算机组成原理实验:实验全加器实验;基于多思计算机组成原理虚拟实验室。计算机组成原理实验线上模拟;包括实验结果以及实验步骤,实验过程的视频。
  • 通过1位全加器的详细设计,掌握原理图输入以及Verilog的两种设计方法 二、实验过程 实验软件:quartusII 13.0 modelslimse10.2 实验硬件:FPGA开发板Intel DE2-115 实验步骤: 1.打开quartusll13.0的软件,新建个...
  • 微电子电路——一位全加器

    千次阅读 2019-12-05 14:40:01
    一位全加器的真值表 实验结果与真值表吻合。 文件中-sum: 修改后-sum: 文件中-cout: 修改后-cout: 文件中&修改后-a: 文件中&修改后-b: 文件中&修改后-cin: 首先,根据真值表,可以...
  • 4、一位全加器实现四、实验原理1、半加器的设计半加器只考虑了两个加数本身,没有考虑由低位来的进位。半加器真值表:被加数 A 加数 B 和数 S 进位数 C 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1半加器逻辑表达式:BABABAS...
  • 组成原理全加器实验

    万次阅读 多人点赞 2018-10-03 18:46:30
    1.1 实验目的 1) 熟悉多思计算机组成原理网络虚拟实验系统的使用方法。 2) 掌握全加器的逻辑结构和电路实现方法。 1.2 实验要求 1) 做好实验预习,复习全加器的原理,掌握实验元...一位全加器的逻辑结构如图 1.1...
  • 1.掌握全加器的工作原理; 2.掌握全加器原理图输入设计方法; 3.学会MAX+PLUSII的时序波形仿真方法; 4.了解VHDL设计初步。
  • 实验原理 从结构原理图上可推知,本实验中的ALU运算逻辑单元由4个一位的ALU运算逻辑单元组成。每位的ALU电路由全加器和函数发生器组成。事实上,是在全加器的基础上,对全加器功能的扩展来实现符合要求的多种算术/...
  • 位全加器

    2012-10-29 20:30:12
    位全加器一位减法器、一位加法器的原理图输入和文本输入、编译校验及功能仿真
  • Quartus II 之1位全加器

    千次阅读 2022-03-28 21:47:09
    文章目录、半加器和1位全加器原理1. 半加器2. 1位全加器二、实验目的三、设计半加器1. 新建项目2. 创建原理图3. 半加器仿真四、设计全加器五、硬件下载测试六、总结 、半加器和1位全加器原理 1. 半加器 所谓...
  • 实验三 基本组合逻辑电路的VHDL模型 一、实验目的 1.掌握简单的VHDL程序设计。 2.掌握用VHDL对基本组合逻辑电路的建模。...加法器中最小的单元是一位全加器一位全加器(Adder)的真值表如下所示: ..
  • 实验一 用原理图输入法设计八位全加器 一 ...二 实验原理 一个8位全加器可以由8个一位全加器构成加法器间的进位可以串行方式实现即将低位加法器的进位输出 cout 与相邻的高位加法器的最低进位输入信号 cin 相接而1位全

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 593
精华内容 237
热门标签
关键字:

一位全加器的实验原理