一个全加器的设计

一个全加器的整个设计包括三个模块,即底层两输入或门模块ORM2.VHD、半加器模块H_ADDER.VHD以及顶层全加器模块F_ADDER.GDF。其中ORM2.VHD和H_ADDER.VHD是用VHDL编写的,F_ADDER.GDF则是原理图。全加器是通过调用一个ORM2.VHD和两个H_ADDER.VHD组装成一个完整的设计实体F_ADDER.GDF而实现的。

1.源文件的编辑

1)ORM2.VHD H_ADDER.VHD的编辑及对应的元件符号图的生成 首先为该设计建立以目录,然后进入Maxplus2集成环境。再按新建文件按钮,选择file>new,选Text Editor file。在文本编辑窗口中输入如下程序:

Library ieee;

Use ieee.std_logic_1164.all; Entity orm2 is

Port(a,b:in std_logic;c:out std_logic); End entity orm2;

Architecture art1 of orm2 is Begin c

End architecture art1;

输入完毕后,保存文件,保存至最初建立的目录名下,并输入保存的文件名(注意后缀名的选择)。.VHD表示VHDL文件;后缀为.TDF表示AHDL文件;后缀为.V表示Verilog文件。 文件存盘后,为了能在图形编辑器中调用ORM2,需要为ORM2创建一个元件图形符号。选择File→Create Default Symbol,这是询问是否将当前工程设为ORM2。点确定。这时Maxplus2调出编译器对ORM2.VHD进行编译,编译后生成ORM2的图形符号。如果源程序有错,要对源程序进行修改,重复上面的步骤,直到此元件符号创建成功。然后退出编译器、编辑器,回到主窗口。

H_ADDER.VHD及其元件符号的创建过程同上,文件放在同一目录内。源程序如下: 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 art2 of H_ADDER is Begin

so

2) F_ADDER.GDF的编辑

F_ADDER.GDF是全加器设计中最顶层的图形设计文件,调用了前面两步创建的两个功能元件,将一个ORM2.VHD和两个H_ADDER.VHD组装成一个完整的设计实体。

选择File→New,在对话框中选择Graphic Editor file,出现图形编辑器窗口Graphic Editor.然后按如下操作:

(1)往图中添加元件。在图形编辑器中任一位置双击鼠标,出现Enter Symbol对话框。通过鼠标选择一个元件符号,或直接在Symbol Name中输入元件符号名,按OK。

一共调用一个ORM2、两个H_ADDER元件。放置好它们的位置。接着放置输入/输出接口。输入/输出接口符号名为INPUT和OUTPUT。在库prim中。调用3个INPUT和2个

OUTPUT元件。

(2)连线(细线表示单根线,粗线表示总线)改变连线的性质的方法:先点击该线,使其变红,然后选项Options→Line Style,即可在弹出的窗口中选所需的线段。

(3)设置输入/输出引脚名。在INPUT或OUTPUT的引脚上双击鼠标,可以输入新的引脚名。三个输入:ain、bin、cin。两个输出引脚:sum和cout。最后保存,将此顶层原理图文件取名为F_ADDER.GDF,并写入File Name中,存入同一目录下。

2.系统的编译、综合、适配 1)设置顶层文件

在编译系统文件F_ADDER.GDF之前,需要设置该文件为顶层文件Project(工程文件)。 选择File→Project→Set Project to Current File,当前的工程即将被设为F_ADDER(此名在最初是任选的)。

2)选择目标器件及锁定引脚

先选择用于编程的目标芯片。选择Assign→Device…,在弹出的对话框中的Device Family下拉栏中选FLEX10K,然后在Devices列表框中选择芯片型号EPF10KLC84-3。

选择菜单Assign→Pin/Location/Chip…弹出一个对话框来设置引脚。在Node Name右边的文本框中输入引脚名。注意,引脚名必须一个一个地确定。在Pin右边的下拉栏中选择芯片引脚号,然后按下Add按钮,就会在下面的子窗口出现引脚设定说明句,当前的一个引脚设置即加到了列表中。如果是总线形式的引脚名,也应当分别写出总线中的每个信号。例如,DATA[3..0]就应当分别写成DATA3,DATA2,…DATA0共四个引脚名。引脚号设定按下表

选择Compiler菜单,可运行编译器,此时将出现编译界面。编译器将一次性完成编译、综合、优化、逻辑分割和适配/布线等操作。现在首先设定VHDL版本。选择界面上方的Interfaces→VHDL Netlist Reader Setting,在弹出的窗口中选VHDL93.这样,编译器将支持93版本的VHDL语言。

下面进行综合器的有关优化设置。选择Assign→Global Project Logic Synthesis,进入此窗后,将滑块放在右侧小窗口Optimize中的适当位置。滑块越靠左(Area),综合后的芯片资源利用率越高;靠右(Speed)则是对运算速度进行优化,但以耗用芯片资源为代价。若为CPLD目标器件,要对窗口中间的Max Device Synthesis Options作相应的选择。

在Compiler窗口中按下Start按钮,启动编译过程,直到编译结束。点击Fitter下的rpt标记,即可进入适配报告,以便了解适配情况,然后了解引脚的确定情况是否与以上设置一致。关闭编辑器。

3.系统的有关仿真

Maxplus2支持功能仿真和时序仿真两种形式。功能仿真用于大型设计编译适配之前的仿真,而时序仿真则是再编译适配生成时序信息文件之后进行的仿真。

1)建立仿真波形文件

选择File→New,选择Waveform Editor file,在弹出的窗口中选择Node→Enter

Nodesform SNF,出现选择信号结点对话框。按右上侧的List按钮,左边的列表框将立即列出所有可以选择的信号结点,全部移到右侧来。点OK,选中的所有信号将出现在波形编辑器中。其中有全加器的输入输出信号。最后必须保存波形文件,取名f_adder.scf。

2)设置输入信号波形

波形观察窗左排按钮是用于设置输入信号的,使用时只要先用鼠标在输入波形上拖一段需要改变的黑色区域,然后点击左排相应的按钮即可。其中

0:低电平 1:高电平 X:任意 Z:高阻态 INV:反相

G:总线数据设置

若是时钟信号,用鼠标点时钟信号的Value区域,可以将时钟信号选中。这时,时钟信号的波形区域全部变成黑色,按集成环境窗左边上的时钟按钮,将出现时钟信号设置对话框,按下OK,即可设置时钟信号。最后保存好波形文件。

3)运行仿真器进行仿真

选择Simulator,出现仿真参数设置与仿真启动窗。这时按下该窗口中的Start按钮,即可进行仿真运算(注意,在启动仿真时,波形文件必须已经存盘)。仿真运算结束后出现对话框,若无错误表示仿真运算结束。

如果系统含有时钟信号,又希望在不改变输入时钟信号周期的条件下,延长仿真时间,可以作如下调整:选File→End Time,在弹出的窗口中设置仿真结束时间,例如5us,按OK后,选择菜单MaxPlus→Simulator,在Simulator子窗口中的End Time处也设置5us。然后启动仿真操作,结束后可观察仿真波形。如果在一开始没有打开波形观察窗,可选择File→Open,这时将弹出一名为Open的窗口,可在此窗口的Waveform Editor files处点击,并在Files窗中弹出的波形文件名f_adder.scf上双击,即可进入波形观察窗。

一个全加器的整个设计包括三个模块,即底层两输入或门模块ORM2.VHD、半加器模块H_ADDER.VHD以及顶层全加器模块F_ADDER.GDF。其中ORM2.VHD和H_ADDER.VHD是用VHDL编写的,F_ADDER.GDF则是原理图。全加器是通过调用一个ORM2.VHD和两个H_ADDER.VHD组装成一个完整的设计实体F_ADDER.GDF而实现的。

1.源文件的编辑

1)ORM2.VHD H_ADDER.VHD的编辑及对应的元件符号图的生成 首先为该设计建立以目录,然后进入Maxplus2集成环境。再按新建文件按钮,选择file>new,选Text Editor file。在文本编辑窗口中输入如下程序:

Library ieee;

Use ieee.std_logic_1164.all; Entity orm2 is

Port(a,b:in std_logic;c:out std_logic); End entity orm2;

Architecture art1 of orm2 is Begin c

End architecture art1;

输入完毕后,保存文件,保存至最初建立的目录名下,并输入保存的文件名(注意后缀名的选择)。.VHD表示VHDL文件;后缀为.TDF表示AHDL文件;后缀为.V表示Verilog文件。 文件存盘后,为了能在图形编辑器中调用ORM2,需要为ORM2创建一个元件图形符号。选择File→Create Default Symbol,这是询问是否将当前工程设为ORM2。点确定。这时Maxplus2调出编译器对ORM2.VHD进行编译,编译后生成ORM2的图形符号。如果源程序有错,要对源程序进行修改,重复上面的步骤,直到此元件符号创建成功。然后退出编译器、编辑器,回到主窗口。

H_ADDER.VHD及其元件符号的创建过程同上,文件放在同一目录内。源程序如下: 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 art2 of H_ADDER is Begin

so

2) F_ADDER.GDF的编辑

F_ADDER.GDF是全加器设计中最顶层的图形设计文件,调用了前面两步创建的两个功能元件,将一个ORM2.VHD和两个H_ADDER.VHD组装成一个完整的设计实体。

选择File→New,在对话框中选择Graphic Editor file,出现图形编辑器窗口Graphic Editor.然后按如下操作:

(1)往图中添加元件。在图形编辑器中任一位置双击鼠标,出现Enter Symbol对话框。通过鼠标选择一个元件符号,或直接在Symbol Name中输入元件符号名,按OK。

一共调用一个ORM2、两个H_ADDER元件。放置好它们的位置。接着放置输入/输出接口。输入/输出接口符号名为INPUT和OUTPUT。在库prim中。调用3个INPUT和2个

OUTPUT元件。

(2)连线(细线表示单根线,粗线表示总线)改变连线的性质的方法:先点击该线,使其变红,然后选项Options→Line Style,即可在弹出的窗口中选所需的线段。

(3)设置输入/输出引脚名。在INPUT或OUTPUT的引脚上双击鼠标,可以输入新的引脚名。三个输入:ain、bin、cin。两个输出引脚:sum和cout。最后保存,将此顶层原理图文件取名为F_ADDER.GDF,并写入File Name中,存入同一目录下。

2.系统的编译、综合、适配 1)设置顶层文件

在编译系统文件F_ADDER.GDF之前,需要设置该文件为顶层文件Project(工程文件)。 选择File→Project→Set Project to Current File,当前的工程即将被设为F_ADDER(此名在最初是任选的)。

2)选择目标器件及锁定引脚

先选择用于编程的目标芯片。选择Assign→Device…,在弹出的对话框中的Device Family下拉栏中选FLEX10K,然后在Devices列表框中选择芯片型号EPF10KLC84-3。

选择菜单Assign→Pin/Location/Chip…弹出一个对话框来设置引脚。在Node Name右边的文本框中输入引脚名。注意,引脚名必须一个一个地确定。在Pin右边的下拉栏中选择芯片引脚号,然后按下Add按钮,就会在下面的子窗口出现引脚设定说明句,当前的一个引脚设置即加到了列表中。如果是总线形式的引脚名,也应当分别写出总线中的每个信号。例如,DATA[3..0]就应当分别写成DATA3,DATA2,…DATA0共四个引脚名。引脚号设定按下表

选择Compiler菜单,可运行编译器,此时将出现编译界面。编译器将一次性完成编译、综合、优化、逻辑分割和适配/布线等操作。现在首先设定VHDL版本。选择界面上方的Interfaces→VHDL Netlist Reader Setting,在弹出的窗口中选VHDL93.这样,编译器将支持93版本的VHDL语言。

下面进行综合器的有关优化设置。选择Assign→Global Project Logic Synthesis,进入此窗后,将滑块放在右侧小窗口Optimize中的适当位置。滑块越靠左(Area),综合后的芯片资源利用率越高;靠右(Speed)则是对运算速度进行优化,但以耗用芯片资源为代价。若为CPLD目标器件,要对窗口中间的Max Device Synthesis Options作相应的选择。

在Compiler窗口中按下Start按钮,启动编译过程,直到编译结束。点击Fitter下的rpt标记,即可进入适配报告,以便了解适配情况,然后了解引脚的确定情况是否与以上设置一致。关闭编辑器。

3.系统的有关仿真

Maxplus2支持功能仿真和时序仿真两种形式。功能仿真用于大型设计编译适配之前的仿真,而时序仿真则是再编译适配生成时序信息文件之后进行的仿真。

1)建立仿真波形文件

选择File→New,选择Waveform Editor file,在弹出的窗口中选择Node→Enter

Nodesform SNF,出现选择信号结点对话框。按右上侧的List按钮,左边的列表框将立即列出所有可以选择的信号结点,全部移到右侧来。点OK,选中的所有信号将出现在波形编辑器中。其中有全加器的输入输出信号。最后必须保存波形文件,取名f_adder.scf。

2)设置输入信号波形

波形观察窗左排按钮是用于设置输入信号的,使用时只要先用鼠标在输入波形上拖一段需要改变的黑色区域,然后点击左排相应的按钮即可。其中

0:低电平 1:高电平 X:任意 Z:高阻态 INV:反相

G:总线数据设置

若是时钟信号,用鼠标点时钟信号的Value区域,可以将时钟信号选中。这时,时钟信号的波形区域全部变成黑色,按集成环境窗左边上的时钟按钮,将出现时钟信号设置对话框,按下OK,即可设置时钟信号。最后保存好波形文件。

3)运行仿真器进行仿真

选择Simulator,出现仿真参数设置与仿真启动窗。这时按下该窗口中的Start按钮,即可进行仿真运算(注意,在启动仿真时,波形文件必须已经存盘)。仿真运算结束后出现对话框,若无错误表示仿真运算结束。

如果系统含有时钟信号,又希望在不改变输入时钟信号周期的条件下,延长仿真时间,可以作如下调整:选File→End Time,在弹出的窗口中设置仿真结束时间,例如5us,按OK后,选择菜单MaxPlus→Simulator,在Simulator子窗口中的End Time处也设置5us。然后启动仿真操作,结束后可观察仿真波形。如果在一开始没有打开波形观察窗,可选择File→Open,这时将弹出一名为Open的窗口,可在此窗口的Waveform Editor files处点击,并在Files窗中弹出的波形文件名f_adder.scf上双击,即可进入波形观察窗。


相关文章

  • 加法器实验报告
  • 实验三 加法器的设计与仿真 一.实验目的 熟悉quartus ⅱ仿真软件的基本操作,用逻辑图和vhdl 语言设计加法器并验证. 二.实验内容 1.熟悉quartus ⅱ软件的基本操作,了解各种设计输入方法(原理图设计.文本设计. 波形设计) ...查看


  • 组合逻辑电路的设计及半加器.全加器
  • 实验四 组合逻辑电路的设计及半加器.全加器 一.实验目的 1. 掌握组合逻辑电路的设计与测试方法 2.掌握半加器.全加器的工作原理. 二.实验原理和电路 1.组合逻辑电路的设计 使用中.小规模集成电路来设计组合电路是最常见的逻辑电路.设计 ...查看


  • 计算机组成原理-半加器实验报告
  • 课 程 设 计 报 告 课程设计名称:课程设计题目: 院(系):专 业:班 级:学 号:姓 名:指导教师:完成日期: 计算机组成原理课程设计半加器和全加器设计开发 目 录 1.1 实验目的 ......................... ...查看


  • 1位全加器的电路和版图设计
  • 集成电路设计基础 论文题目: 学 院: 专 业: 姓 名: 学 号: CMOS 全加器设计 摘要:现代社会随着电路的集成度越来越高,功耗和信号延迟成为超大规模集成电路的关键 .加法运算是数字系统中最基本的运算,为了更好地利用加法器实现减法. ...查看


  • 全加器设计
  • 学院:计算机学院 专业:信息与计算科学 姓名:方荣华 学号:0908060223 班级:0902 全加器 一位全加器 全加器是能够计算低位进位的二进制加法电路 一位全加器(FA)的逻辑表达式为: S=A⊕B⊕Cin Co=AB+BCin+A ...查看


  • 8位加法器的设计
  • 实验二 8位加法器设计 一.实验目的 熟悉利用Quartus Ⅱ的图形编辑输入法设计简单组合电路,掌握层次化设计方法,并通过8位全加器的设计,进一步熟悉利用EDA 软件进行数字系统设计的流程. 二.实验仪器与器材 计算机1台,GW48-PK ...查看


  • 组合逻辑电路设计之全加器.半加器
  • 班级 姓名 学号 实验二 组合电路设计 一.实验目的 (1) 验证组合逻辑电路的功能 (2) 掌握组合逻辑电路的分析方法 (3) 掌握用SSI小规模集成器件设计组合逻辑电路的方法 (4) 了解组合逻辑电路集中竞争冒险的分析和消除方法 二.实 ...查看


  • 一位全加器HSPICE设计
  • 设计一·四路与非电路的Hspice 设计. 设计二·一位全加器电路的Hspice 设计. 专 业 电子科学与技术 学 号 学生姓名 指导老师 汪再兴 设计一·四路与非门的设计 一·设计目的: 1.学习使用电路设计与仿真软件HSPICE ,练 ...查看


  • 相位累加器原理
  • 相位累加器 一个正弦波,虽然它的幅度不是线性的,但是它的相位却是线性增加的. DDS 正是利用了这一特点来产生正弦信号.如图 2,根据DDS 的频率控制字的位数N ,把360° 平均分成了2的N 次等份. 图2,相位累加器原理 假设系统时钟 ...查看


热门内容