eda技术与vhdl实验指导书v内容摘要:
加器的电路(如图 31 所示)或真值表写出或门和半加器的 VHDL 描述。 然后根据图 32 写出全加器的顶层描述。 I 1 1 3coasob1001010110001100cosoban o t x n o r 2a n d 2 图 31 半加器 h_adder 电路图及其真值表 I 1 1 3a inco u t co u ta in b insu mci nb in su mci nf _ a d d e ro r 2 afedu3u2u1ba ccosoBcosoBh _ a d d e rAh _ a d d e rA 图 32 全加器 f_adder 电路图及其实体模块 实验步骤: 1. 设计输入 1 位全加器 设计采用原理图输入和 VHDL 文本输入两种方式,设计输入时的步骤有所区别,其它步骤一样。 进入 集成开发环境 在桌面上用鼠标左键双击 图标,进入 ,显示如图 33 界面 建立新工程 方法 1:在 Getting Started With QuartusII Software 窗体中鼠标左键单击 Greate a New Project 按钮。 如图 34 所示。 22 图 33 创建工程快捷界面 图 34 创建工程快捷界面 方法 2:在 QuartusII 下选择 File→New Project Wizard…。 如图 34 所示。 图 34 新建工程界面 进入 New Project Wizard 引导界面,提示工程向导可完成创建一个新工程和 23 对其 进行初步的设置,包括:工程名和路径;顶层设计实体名;工程文件和库; 目标器件家族和器件; EDA 工具设置等。 如图 35 所示 图 35 工程引导界面(第 1 页面) 进入 New Project Wizard 引导界面,鼠标左键单击 Next,进入图 36 界面:提示输入工程工作路径、工程名、顶层设计实体名。 图 36 工程引导界面(第 2 页面) 按 Next,如果没有建立工程工作路径,弹出图 37 界面,提示用户按 ”是 (Y)”按钮创建 E:\f_adder 路径。 24 图 37 工程引导界面(第 3 页面) 工程工作路径创 建后,进入图 38,提示用户添加设计文件,也可以以后添加,点击 Next指向图 39,选择使用的 FPGA 或 CPLD 器件, EPM240T100 ,按图中选择即可。 图 38 工程引导界面(第 4 页面) 25 图 39 工程引导界面(第 5 页面) 点击 Next进入图 310 所示界面,提示选择第三方的 EDA 工具,如ModelSim、 Synplify Pro 等。 这里不选,采用 QuartusII 进行综合、仿真。 图 310 工程引导界面(第 6 页面) 按 Next进入图 311 所示界面,显示设计摘要,点击 Finish 完 成新工程建立。 26 图 311 工程引导界面(第 7 页面) 添加新文件: 方法一:用 VHDL 文件实现 建立工程后,在 中选择 File 312 所示选择 VHDL File按 OK. 图 312 编辑文本类型对 话框 27 将出现文本编辑界面 ,输入 VHDL 源程序, 分别建立半加器描述底层文件,或门描述底层文件, 1 位二进制全加器顶层设计全加器顶层设计描述,然后 选择 Filesave 分别将 其保存为: , , 如图 313所示。 1 半加器的 vhdl 描述实现有两种方式: ( 1) 布尔函数描述方法的 VHDL 源程序如下: LIBRARY IEEE。 半加器描述 (1):布尔方程描述方法 USE。 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。 ( 2) 真值表( case 语句)描述方法: LIBRARY IEEE。 半加器描 述 (2):真值表描述方法 USE。 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 SIGNAL abc : STD_LOGIC_VECTOR(1 DOWNTO 0)。 定义标准逻辑位矢 量数据类型 BEGIN abc = a amp。 b。 a 相并 b,即 a 与 b 并置操作 PROCESS(abc) BEGIN CASE abc IS 类似于真值表的 CASE 语句 WHEN 00 = so=39。 039。 co=39。 039。 WHEN 01 = so=39。 139。 co=39。 039。 WHEN 10 = so=39。 139。 co=39。 039。 WHEN 11 = so=39。 039。 co=39。 139。 WHEN OTHERS = NULL。 END CASE。 END PROCESS。 END ARCHITECTURE fh1。 ( 3)或门逻辑描述: LIBRARY IEEE。 或门逻辑描述 USE。 ENTITY or2a IS PORT (a, b :IN STD_LOGIC。 28 c : OUT STD_LOGIC )。 END ENTITY or2a; ARCHITECTURE one OF or2a IS BEGIN c = a OR b。 END ARCHITECTURE one。 ( 4) 1 位二进制全加器顶层设计描述: LIBRARY IEEE。 1 位二进制全加器顶层设计描述 USE。 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。 定义 3 个信号作为内部的连接线。 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。 29 图 313 文本编辑窗口 方法二: 图形法输入设计 1 位全加器可以用两个半加器及一个或门连接而成,因此需要首先完成半加器的设计。 下面将给出使用原理图输入的方法进行底层元件设计和层次化设计的主要步骤。 事实上,除了最初的输入方法稍有不同外,主要流程与前面介绍的VHDL 文本输入法完全一致。 1 建立工程后和工程文件夹,在 中选择 File 314 所示选择 BlockDiagram/Schematic File 按 OK. 图 314 编辑文本类型对话框 30 2 输入设计项目和存盘 原理图编辑输入流程如下: ( 1)在编辑窗口中的任何一个位置上右击,将弹出快捷菜单,选择 Insert→Symbol 命令,将弹出如图 315 所示的元件输入对话框。 图 315 元件输入对话框 ( 2) 单击“„”按钮,找到基本元件库路径 e:/altera/90/quartus/libraries/ primitives /logic 项(假设 Quartus II 安装在 e 盘的 altera 文件夹),选中需要的元件,单击“打开”按钮,此元件即显示在窗口中,然后单击 Symbol 窗口中的 OK 按钮,即可将元件调入原理图编辑窗口中。 也可以直接在 Name 栏输入需要的元件名。 例如,为了设计半加器,可参考图 31,分别调入元件 and not、 xnor 和输入 /输出引脚 input 和 output,并如图 316 所示用单击拖动的方法连接好电路,然后分别在 input 和 output 的 PIN NAME 上双击使其变为黑色,再分别输入各引脚名a、 b、 co 和 so。 图 316 将所需元件全部调入原理图编辑窗口并连接好 ( 3)选择 File→ Save As 命令,选择刚才为自己的工程建立的目录 d:\adder,将已设计好的原理图文件取名为 (默认的后缀是 .bdf),并存盘在此文件夹内。 31 3. 将设计项目设置成可调用的元件 使用完全相同的方法也可以将 VHDL 文本文件变成原理图中的一个元件符号,实现 VHDL 文本设计与原理图的混合输入设计方法。 转换中需要注意以下两点: ( 1)转换好的元件必须存在当前工程的路径文件夹中。 ( 2)按图 316 给出的 方式进行转换,只能针对被打开的当前文件。 4.设计全加器顶层文件 新建一个原理图,在新打开的原理图编辑窗口中双击,在弹出的如图 315 所示的窗口中选择 Project 选项,在其中将显示生成的所有元件( 元件所在的路径 d:\adder),调出此元件,并按照图 39 所示连接好全加器电路图(见图 317)。 以 名将此全加器设计存在同一路径的文件夹中。 图 317 连接好的全加器原理图 工程配置 : 配置不用器件管脚:选择 AssignmentsDevice 如图 318 所示,选择 Device and options… 出现图 319 界面。 选择 Unused Pins 标签,将 Reserve all unused pins:设置为 As input tristated,设置完按 “确定 ”即可。 图 318 设备配置对话框 32 图 319 设备 amp。 引脚配置对话框 2. 编译设计文件 执行 QuartusII 主窗口“ Processing”菜单的“ start pile”命令,或是 直接用鼠标单击“开始编译” 快捷按键进行编译。 ( 如图 320 所示 ) 图 320 编译工具的编译过程如图 321 所示,编译过程包括分析与综合、适配、编程和时序分析 4 个环节。 分析与综合( Analysisamp。 Synthesis) 在编译过程中,首先对设计文件进行分析和检查,如检查原理图的信号线有无漏接、信号有无双重来源、文本输入文件中有无语法错误等,如果设计文件存在错误,则报告出错信息并标出错误的位置,供设计者修改。 如果设计文件不存在错误,接着进行综合。 通过综合完成设计逻辑到器件资源的技术映射。 适配( Fitter) 适配是编译的第 2 个环节,只有当分析与综合成功完成之后才能进 行。 在适配过程中,完成设计逻辑在器件中的布局和布线、选择适当的内部互连路径、引脚分配、逻辑元件分配等操作。 编程( Assembler) 成功完成适配之后,才能进入编程环节。 在。eda技术与vhdl实验指导书v
相关推荐
PORT(A,B,C:IN STD_LOGIC。 Y:OUT STD_LOGIC)。 END BIAOJUE。 ARCHITECTURE A OF BIAOJUE IS Y=(A AND B) OR (A AND C) OR (B AND C)。 END A。 8. LIBRARY IEEE。 USE。 ENTITY jk_ff IS PORT(j,k,clk,reset:in
十二条工程预付款结算应符合下列规定: (一)包工包料工程的预付款按合同约定拨付,原则上预付比例不低于合同金额的 10%,不高于合同金额的 30%,对重大工程项目,按年度工程计划逐年预付。 计价执行《建设工程工程量清单计价规范》( GB50500— 2020)的工程,实体性消耗和非实体性消耗部分应在合同中分别约定预付款比例。 (二)在具备施工条件的前提下
净收益,应当依照税法规定缴纳所得税。 六十 一、 企业的剩余财产,应当按照规定进行分配。 六十二、 企业自清算开始,应当视作会计年度终了,按照本制度的规定,编制并报送会计 报告。 清算期间跨年度的,应当于年度终了,编制并报送资产负债表和清算损益表;清算终了,编制并报送自清算开始至清算结束的清算损益表和财产分配表。 清算终了的会计报表的报送时间应当在企业注销工商登记之前。 第十四章 六十三、
毕业 生质量 A M72 办学效益 规模与效益 A 办学特色与示范作用 A 产教结合 A 19 表 1 校园占地面积统计表 M111 校园用地种类 实有面积( M2) 备 注 教学用校舍建筑用地 14369 教职工宿舍建筑用地 2400 附属机构建筑用地 体育用地 26479 集中绿化用地 24640 其他用地 44916 包括校园公路“引青入城”面积 校园总面积 表 2 校舍面积统计表