课题七可编程逻辑器件GAL的应用任务一应用GAL制作8路输出控制器任务二应用GAL制作复合逻辑门电路任务三应用GAL制作十进制数码显示器任务四应用GAL制作4位左移寄存器任务五应用GAL制作四进制加法计数器任务六应用GAL制作十进制加法计数器在集成电路芯片中,一类是定制芯片,它们的逻辑功能是确定的。另一类是可编程逻辑器件PLD,用户可以通过编程方式写入逻辑功能。课题七可编程逻辑器件GAL的应用GAL16V8D管脚排列中,I表示逻辑输入端,CLK表示时钟脉冲输入端,O,Q表示输出端,表示输出3态控制端。电源电压典型值+5V,输出电流较大,可以直接驱动LED负载。任务引入任务一应用GAL制作8路输出控制器课题七可编程逻辑器件GAL的应用8路输出控制器测试电路课题七可编程逻辑器件GAL的应用一、可编程逻辑器件PLD1.PLD逻辑符号PLD逻辑符号相关知识课题七可编程逻辑器件GAL的应用PLD结构图2.PLD结构课题七可编程逻辑器件GAL的应用3.GAL16V8结构(1)8个输入缓冲器(2)8个输出/反馈缓冲器(3)8个三态输出缓冲器(4)8个输出逻辑宏单元OLMC(5)1个时钟输入缓冲器CLK(6)1个输出使能缓冲器(7)1个可编程的与门阵列4.GAL的工作模式和逻辑组态GAL16V8系列器件共有3种工作模式,它们是简单模式、复杂模式和寄存器模式。工作模式组态简单模式S①无反馈组合输出组态②本级组合输出邻级输入组态③邻级输入组态复杂模式C④有反馈组合输出⑤无反馈组合输出寄存器模式R⑥寄存器输出组态⑦组合输出组态3种工作模式和7种组态的关系课题七可编程逻辑器件GAL的应用二、用户源文件moduleDS00模块名是DS00IOdevice'P16V8S';使用器件为P16V8S,IO是烧写文件名D0,D1,D2,D3,D4,D5,D6,D7pin1,2,3,4,5,6,7,8;输入端管脚声明Q0,Q1,Q2,Q3,Q4,Q5,Q6,Q7pin19,18,17,16,15,14,13,12;输出端管脚声明CTRLpin9;控制端管脚声明input=[D7..D0];input是输入端D7~D0的集合output=[Q7..Q0];output是输出端Q7~Q0的集合equations逻辑方程式关键字WHENCTRL==0THENoutput=!input;逻辑功能WHENCTRL==1THENoutput=input;逻辑功能endDS00模块DS00结束关键字课题七可编程逻辑器件GAL的应用三、编程软件课题七可编程逻辑器件GAL的应用在编辑区写入用户源文件程序后,单击软件界面上设备库键,程序自动装载相应器件P16V8,单击编译键,自动生成WORD文件和烧写文件io.jed,Doc键和Jed键由灰白色变成黑色可用。编译结束后,单击保存键保存文件DS00.abl。下次可单击打开键,打开已保存的文件。课题七可编程逻辑器件GAL的应用用编程器制作8路输出控制专用芯片任务实施1.用编程电缆连接编程器和计算机。2.将GAL16V8芯片插入编程器40脚插座,锁紧手柄。注意芯片凹口方向与插座凹口方向一致,芯片右边沿紧贴插座内边沿。3.接通电源,编程器电源指示灯亮。课题七可编程逻辑器件GAL的应用4.进入编程界面,选择“可编程逻辑器件”,生产厂商“LATTICE”,在芯片型号中选择“GAL16V8D”。课题七可编程逻辑器件GAL的应用5.单击装载键,在D:\Abel4w\MyFiles文件夹中找到烧写文件io.jed。找到烧写文件io.jed课题七可编程逻辑器件GAL的应用6.单击打开键,选择.JED文件格式。选择JED文件格式课题七可编程逻辑器件GAL的应用7.单击确认键,将烧写文件io.jed装入编程器缓冲区。课题七可编程逻辑器件GAL的应用8.在操作界面上选择“先擦除、检查空、写器件、校对数据”组合操作,按下自动键后开始操作。烧写文件写入芯片操作界面课题七可编程逻辑器件GAL的应用操作步骤(1)关闭电源,将GAL16V8D芯片插入面包板上。(2)将发光二极管和电阻串联插入输出端管脚。(3)用插接线连接输入端电平,例如,D0~D3接高电平,D4~D7接低电平。(4)将插接线插入控制端管脚。(5)检查+5V电压是否正常。(6)接通电源后,当控制端接地时,输出端状态与输入端状态相反。(7)拔出控制端插接线,即控制端悬空为高电平时,输出端状态与输入端状态相同。任务二应用GAL制作复合逻辑门电路通过编程方式在一片芯片中实现多个不同逻辑的门电路。任务引入一、运算符号运算符表达式举例说明运算优先级--A求十进制补码1-A-B减3+A+B加3*A*B乘2/A/B无符号整除2%A%B取模:无符号整除的余数2ABA左移B位2ABA右移B位2算术运算符相关知识逻辑运算符运算符表达式举例说明运算优先级!!A非(取反)1&A&B与2#A#B或3$A$B异或3!$A!$B异或非(同或)3关系运算符运算符表达式举例说明运算优先级==A==B等于4!=A!=B不等于4AB小于4=A=B小于或等于4AB大于4=A=B大于或等于4课题七可编程逻辑器件GAL的应用二、用户源文件moduleDS01模块名是DS01gatedevice'p16v8s';使用器件为P16V8S,gate是烧写文件名a,b,c,d,e,fpin1,2,3,4,5,6;输入端管脚声明g,h,i,j,kpin7,8,9,11,12;输入端管脚声明u,v,x,y,zpin19,18,16,15,13;输出端管脚声明equations逻辑方程式关键字u=a&b;与逻辑门v=c#d;或逻辑门x=!e;非逻辑门y=f$g;异或逻辑门z=!(h&i&j&k);与非逻辑门endDS01结束关键字课题七可编程逻辑器件GAL的应用在编程操作界面,生成WORD文件和烧写文件gate.jed。编译结束后,单击保存键保存文件DS01.abl。课题七可编程逻辑器件GAL的应用5.单击装载键,找到烧写文件gate.jed。用编程器制作复合逻辑门专用芯片任务实施1~4略,与前面的任务中操作步骤相同。课题七可编程逻辑器件GAL的应用5.单击装载键,找到烧写文件gate.jed。用编程器制作复合逻辑门专用芯片任务实施1~4略,与前面的任务中操作步骤相同。课题七可编程逻辑器件GAL的应用6.单击打开键,选择JED文件格式。课题七可编程逻辑器件GAL的应用7.单击确认键,将烧写文件gate.jed装入编程器缓冲区。课题七可编程逻辑器件GAL的应用8.在操作界面上选择“先擦除、检查空、写器件、校对数据”组合操作,按下自动键后开始操作。操作过程中TOP851面板指示灯不停闪烁,约几秒钟时间整个操作过程结束,面板指示灯停止闪烁,状态显示“正常结束”,表示写入数据完全正确。复合逻辑门专用芯片制作完毕,从编程器中取出芯片待用。课题七可编程逻辑器件GAL的应用操作步骤1.关闭电源,将GAL16V8D芯片插入面包板上。2.将发光二极管和电阻串联插入输出端管脚。3.将插接线插入输入端管脚。4.检查+5V电压是否正常。5.接通电源后,逐个测试5个门电路的逻辑功能。任务三应用GAL制作十进制数码显示器十进制数码显示器测试电路任务引入本任务用GAL器件制作十进制数码显示器。一、属性字符串属性字符串属性字符器意义属性字符器意义‘com’组合型输出‘keep’不将此信号从方程式中简化掉‘reg’寄存器型输出‘reg_d’D型触发器‘invert’目标器件中的反相器‘reg_jk’JK型触发器‘buffer’目标器件中的缓冲器‘reg_sr’SR型触发器‘neg’未规定的逻辑为‘1’‘reg_t’T型触发器‘pos’未规定的逻辑为‘0’相关知识二、关键字ABEL关键字CASEEQUATIONSLIBRARYTEST_VECTORSDEVICEFLAGMACROTHENELSEFUSESMODULETITLEENABLEGOTONODETRUTH-TABLEENDIFPINWHENENDCASEINSTATEWITHENDWITHISTYPESTATE-DIAGRAM关键字是一类特殊的标识符,可以大写或小写,它们表示的含义相同。课题七可编程逻辑器件GAL的应用三、用户源文件moduleDS02bcd7device'P16V8s';bcd7是烧写文件名i1,i2,i3,i4pin1,2,3,4;i5,i6,i7,i8,i9pin5,6,7,8,9;a,b,c,d,e,f,gpin19,18,17,16,15,14,13istype'COM';定义为COM型truth_table表格关键字([i9,i8,i7,i6,i5,i4,i3,i2,i1]-[a,b,c,d,e,f,g])[0,0,0,0,0,0,0,0,0]-[1,1,1,1,1,1,0];0[0,0,0,0,0,0,0,0,1]-[0,1,1,0,0,0,0];1[0,0,0,0,0,0,0,1,0]-[1,1,0,1,1,0,1];2[0,0,0,0,0,0,1,0,0]-[1,1,1,1,0,0,1];3[0,0,0,0,0,1,0,0,0]-[0,1,1,0,0,1,1];4[0,0,0,0,1,0,0,0,0]-[1,0,1,1,0,1,1];5[0,0,0,1,0,0,0,0,0]-[1,0,1,1,1,1,1];6[0,0,1,0,0,0,0,0,0]-[1,1,1,0,0,1,0];7[0,1,0,0,0,0,0,0,0]-[1,1,1,1,1,1,1];8[1,0,0,0,0,0,0,0,0]-[1,1,1,1,0,1,1];9end结束关键字课题七可编程逻辑器件GAL的应用ABEL4软件编程操作界面课题七可编程逻辑器件GAL的应用1.用编程电缆连接编程器和计算机。2.将GAL16V8D芯片插入编程器40脚插座,锁紧手柄。3.进入编程软件界面,在下拉芯片型号中选择“GAL16V8D”。4.单击装载键,在MyFiles文件夹中找到烧写文件bcd7.jed。5.十进制数码显示器专用芯片制作完毕后,从编程器中取出芯片待用。用编程器制作复合逻辑门专用芯片任务实施课题七可编程逻辑器件GAL的应用操作步骤1.关闭电源,将GAL16V8D芯片插入面包板上。2.将数码管和电阻串联插入输出端管脚。3.用插接线将输入端管脚i0~i9接入低电平。4.检查+5V电压是否正常。5.接通电源后,数码管显示数码“0”。6.逐个拔出输入端插接线,即输入端悬空为高电平时,输出端输出相应的数码“1~9”。7.当两个以上输入端同时为高电平时,输出端无显示。任务四应用GAL制作4位左移寄存器制作4位左移寄存器测试电路。任务引入一、电路说明时序逻辑电路,由4个D触发器构成4位移位寄存器,所以要用GAL的寄存器模式R。在寄存器模式下,1号管脚固定为时钟脉冲输入端,11号管脚固定为使能控制端,在建立用户源文件时,11号管脚要给出管脚定义,但不必写出的方程式,在使用时只要将11号管脚接地就可保证时序电路使能。相关知识赋值运算字符二、关系赋值符赋值符表达式举例说明=A=B组合逻辑赋值(把B的值立即赋给A,没有延时,与时钟无关):=A:=B寄存器赋值(在下一个时钟脉冲的有效沿,把B的值赋给A)课题七可编程逻辑器件GAL的应用三、用户源文件moduleDS03SL4device'P16V8R';CLK,DIN,OEpin1,2,11;Q3,Q2,Q1,Q0pin19,18,17,16istype'REG';equations[Q3..Q0].C=CLK;Q0:=DIN;Q1:=Q0;Q2:=Q1;Q3:=Q2;end课题七可编程逻辑器件GAL的应用ABEL4软件编程操作界面课题七可编程逻辑器件GAL的应用操作步骤1.关闭电源,将GAL16V8D,CD4060芯片插入面包板上。2.将发光二极管和电阻串联插入输出端管脚。3.用插接线将端接