370 likes | 520 Views
EDA 技术 实用教程. 第6章 原理图输入设计方法. 6.1 原理图方式设计初步. 6.1.1 基本设计步骤. 1. 为本项工程设计建立文件夹. 假设本项设计的文件夹取名为 MY_PRJCT , 路径为: E:MY_PRJCT 。. 6.1.1 基本设计步骤. 2. 输入设计项目和存盘. 2. 输入设计项目和存盘. 图 6-2 将所需元件全部调入原理图编辑窗. 图 6-3 连接好原理图并存盘. 6.1.1 基本设计步骤. 3. 将设计项目设置成工程文件 ( Project). 4. 选择目标器件并编译.
E N D
EDA技术实用教程 第6章 原理图输入设计方法
6.1 原理图方式设计初步 6.1.1 基本设计步骤 1. 为本项工程设计建立文件夹 假设本项设计的文件夹取名为MY_PRJCT, 路径为:E:\MY_PRJCT。
6.1.1 基本设计步骤 2. 输入设计项目和存盘
2. 输入设计项目和存盘 图6-2 将所需元件全部调入原理图编辑窗 图6-3 连接好原理图并存盘
6.1.1 基本设计步骤 3. 将设计项目设置成工程文件(Project) 4. 选择目标器件并编译 图6-4 对工程文件进行编译、综合和适配等操作
6.1.1 基本设计步骤 5. 时序仿真和包装入库 图6-5 半加器h_adder.gdf的仿真波形
6.1.1 基本设计步骤 6. 设计顶层文件 图6-6 在顶层编辑窗中调出已设计好的半加器元件
6.1.1 基本设计步骤 6. 设计顶层文件 图6-7 在顶层编辑窗中设计好全加器 图6-8 1位全加器的时序仿真波形
6.2 较复杂电路的原理图设计 6.2.1 设计有时钟使能的两位十进制计数器 图6-9 用74390设计一个有时钟使能的两位十进制计数器
6.2.1 设计有时钟使能的两位十进制计数器 图6-10 调出元件7439 图6-11 从Help中了解74390的详细功能
6.2.1 设计有时钟使能的两位十进制计数器 图6-12 两位十进制计数器工作波形
6.2.2 频率计主结构电路设计 图6-13 两位十进制频率计顶层设计原理图文件
6.2.2 频率计主结构电路设计 图6-14 两位十进制频率计测频仿真波形
6.2.3 测频时序控制电路设计 图6-15 测频时序控制电路
6.2 较复杂电路的原理图设计 6.2.3 测频时序控制电路设计 图6-16 测频时序控制电路工作波形
6.2.4 频率计顶层电路设计 图6-17 频率计顶层电路原理图(文件:ft_top.gdf)
6.2.4 频率计顶层电路设计 图6-18 频率计工作时序波形
6.3 参数可设置LPM宏功能块应用 6.3.1 基于LPM_COUNTER的数控分频器设计 data[ ]:置入计数器的并行数据输入;clock:上升沿触发计数时钟输入。 clk_en:高电平使能所有同步操作输入信号;updown:计数器加减控制输入。 cin:最低进位输入;aclr:异步清0输入。 aset:异步置位输入;q[ ]:计数输出; sload:在clk的上升沿同步并行数据加载输入;cout:计数进位或借位输出。 LPM_WIDTH:计数器位宽;cnt_en:计数使能控制,
6.3.1 基于LPM_COUNTER的数控分频器设计 图6-19 数控分频器电路原理图
6.3.1 基于LPM_COUNTER的数控分频器设计 图6-20 数控分频器工作波形
6.3 参数可设置LPM宏功能块应用 6.3.2 基于LPM_ROM的4位乘法器设计 图6-21 用LPM_ROM设计的 4位乘法器原理图
6.3.2 基于LPM_ROM的4位乘法器设计 图6-22 LPM_ROM参数设置窗口
6.3.2 基于LPM_ROM的4位乘法器设计 LPM_ROM中作为乘法表的数据文件rom_data.mif WIDTH = 8 ; DEPTH = 256 ; ADDRESS_RADIX = HEX ; DATA_RADIX = HEX ; CONTENT BEGIN 00:00 ; 01:00 ; 02:00 ; 03:00 ; 04:00 ; 05:00 ; 06:00 ; 07:00 ; 08:00 ; 09:00; 10:00 ; 11:01 ; 12:02 ; 13:03 ; 14:04 ; 15:05 ; 16:06 ; 17:07 ; 18:08 ; 19:09; 20:00 ; 21:02 ; 22:04 ; 23:06 ; 24:08 ; 25:10 ; 26:12 ; 27:14 ; 28:16 ; 29:18; 30:00 ; 31:03 ; 32:06 ; 33:09 ; 34:12 ; 35:15 ; 36:18 ; 37:21 ; 38:24 ; 39:27; 40:00 ; 41:04 ; 42:08 ; 43:12 ; 44:16 ; 45:20 ; 46:24 ; 47:28 ; 48:32 ; 49:36; 50:00 ; 51:05 ; 52:10 ; 53:15 ; 54:20 ; 55:25 ; 56:30 ; 57:35 ; 58:40 ; 59:45; 60:00 ; 61:06 ; 62:12 ; 63:18 ; 64:24 ; 65:30 ; 66:36 ; 67:42 ; 68:48 ; 69:54; 70:00 ; 71:07 ; 72:14 ; 73:21 ; 74:28 ; 75:35 ; 76:42 ; 77:49 ; 78:56 ; 79:63; 80:00 ; 81:08 ; 82:16 ; 83:24 ; 84:32 ; 85:40 ; 86:48 ; 87:56 ; 88:64 ; 89:72; 90:00 ; 91:09 ; 92:18 ; 93:27 ; 94:36 ; 95:45 ; 96:54 ; 97:63 ; 98:72 ; 99:81; END ;
6.3.2 基于LPM_ROM的4位乘法器设计 图6-23是此乘法器的仿真结果。 图6-23 LPM_ROM构成的乘法器仿真波形
6.3.2 基于LPM_ROM的4位乘法器设计 图6-24 在Initialize Memory窗口中编辑乘法表地址/数据
6.4 波形输入设计方法 图6-25 待设计电路的预设输入输出波形 图6-26 打开wdf波形文件编辑器
6.4 波形输入设计方法 图6-27 输入待设计电路的信号名
6.4 波形输入设计方法 图6-28 输入信号名及其端口属性
6.4 波形输入设计方法 图6-29 输出时序信号设置
习 题 6-1 用74148和与非门实现8421BCD优先编码器。 6-2 用3片74139组成一个5-24线译码器。 6-3 用74283加法器和逻辑门设计实现一位8421BCD码加法器电路,输入输出均是BCD码,CI为低位的进位信号,CO为高位的进位信号,输入为两个1位十进制数A,输出用S表示。 6-4 设计一个7人表决电路,参加表决者7人,同意为1,不同意为0,同意者过半则表决通过,绿指示灯亮;表决不通过则红指示灯亮。 6-5 使用prim和mf库中的元件设计一个周期性产生二进制序列01001011001的序列发生器,用移位寄存器或用同步时序电路实现,并用时序仿真器验证其功能。 6-6 用D触发器构成按循环码(000->001->011->111->101->100->000)规律工作的六进制同步计数器。 6-7应用4位全加器和74374构成4位二进制加法计数器。
习 题 6-8 用74194、74273、D触发器等器件组成8位串入并出的转换电路,要求在转换过程中数据不变,只有当8位一组数据全部转换结束后,输出才变化一次。如果使用74299、74373、D触发器和非门来完成上述功能,应该有怎样的电路? 6-9 用一片74163和两片74138构成一个具有12路脉冲输出的数据分配器。要求在原理图上标明第1路到第12路输出的位置。若改用一片74195代替以上的74163,试完成同样的设计。 6-10 用同步时序电路对串行二进制输入进行奇偶校验,每检测5位输入,输出一个结果。当5位输入中1的数目为奇数时,在最后一位的时刻输出1。 6-11 用7490设计模为872的计数器,且输出的个位、十位、百位都应符合8421码权重。 6-12 用74161设计一个97分频电路,用置0和置数两种方法实现。 6-13某通信接收机的同步信号为巴克码1110010。设计一个检测器,其输入为串行码x,输出为检测结果y,当检测到巴克码时,输出1。
实 验 与 设 计 6-1 用原理图输入法设计8位全加器 (1) 实验目的:熟悉利用MAX+plusⅡ的原理图输入方法设计简单组合电路,掌握层次化设计的方法,并通过一个8位全加器的设计把握利用EDA软件进行电子线路设计的详细流程。 (2) 原理说明:一个8位全加器可以由8个1位全加器构成,加法器间的进位可以串行方式实现,即将低位加法器的进位输出cout与相临的高位加法器的最低进位输入信号cin相接。而一个1位全加器可以按照6.1节介绍的方法来完成。 (3) 实验内容1:按照6.1节介绍的方法与流程,完成半加器和全加器的设计,包括原理图输入、编译、综合、适配、仿真、实验板上的硬件测试,并将此全加器电路设置成一个硬件符号入库。键1、键2、键3(PIO0/1/2)分别接ain、bin、cin;发光管D2、D1(PIO9/8)分别接sum和cout。
实 验 与 设 计 6-1 用原理图输入法设计8位全加器 (4) 实验内容2,建立一个更高的原理图设计层次,利用以上获得的1位全加器构成8位全加器,并完成编译、综合、适配、仿真和硬件测试。建议选择电路模式1,键2、键1输入8位加数;键4、键3输入8位被加数;数码6/5显示加和;D8显示进位cout。 (5) 思考题:为了提高加法器的速度,如何改进以上设计的进位方式? (6) 实验报告:详细叙述8位加法器的设计流程;给出各层次的原理图及其对应的仿真波形图;给出加法器的延时情况;最后给出硬件测试流程和结果。
实 验 与 设 计 6-2用原理图输入法设计较复杂数字系统 (1) 实验目的:熟悉原理图输入法中74系列等宏功能元件的使用方法,掌握更复杂的原理图层次化设计技术和数字系统设计方法。完成8位十进制频率机的设计。 (2) 原理说明:利用6.2节介绍的2位计数器模块连接它们的计数进位,用4个计数模块就能完成一个8位有时钟使能的计数器;对于测频控制器的控制信号,在仿真过程中应该注意它们可能的毛刺现象。最后按照6.2节中的设计流程和方法即可完成全部设计。 (3) 实验内容:首先完成2位频率计的设计,然后进行硬件测试,建议选择电路模式2,数码2和1显示输出频率值,待测频率F_IN接clock0;测频控制时钟CLK接clock2,若选择clock2 = 8Hz,门控信号CNT_EN的脉宽恰好为1秒。然后建立一个新的原理图设计层次,在完成实验内容1的基础上将其扩展为8位频率计,仿真测试该频率计待测信号的最高频率,并与实测的结果进行比较。
实 验 与 设 计 6-2用原理图输入法设计较复杂数字系统 (4) 实验附加题1:完成习题6-4、6-5、6-8和习题6-9的设计和硬件实验验证。 (5) 实验附加题2:分析图6-30工作原理、各元件模块的功能以及各端口信号的功能。完成该图所示电路的设计和时序仿真,并说明该电路功能,给出其仿真波形和硬件测试方法。 (6) 实验报告:给出各层次的原理图、工作原理、仿真波形图和分析,详述硬件实验过程和实验结果。
实 验 与 设 计 6-3LPM模块使用 (1) 实验目的:掌握LPM模块的参数设置方法以及设计和应用方法。 (2) 原理说明:数控分频器和乘法器的设计原理已在6.3节中作了详细描述。 (3) 实验内容1:按照6.3节介绍的流程和设计原理,分别使用LPM_COUNTER和LPM_ROM设计8位数控分频器和4位乘法器。然后进行波形仿真和硬件测试。 (4) 实验内容2:按照以上流程和要求分别对LPM库中的LPM_FIFO、乘法器LPM_MULT、双口随机存储器LPM_RAM_DQ和移位寄存器LPM_SHIFTREG进行仿真测试与硬件实验验证。 (5) 实验报告:按照实验6-2的要求完成实验报告。