可编程逻辑器件(PLD)_第1页
可编程逻辑器件(PLD)_第2页
可编程逻辑器件(PLD)_第3页
可编程逻辑器件(PLD)_第4页
可编程逻辑器件(PLD)_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、清华大学电机系唐庆玉清华大学电机系唐庆玉2003年年11月制作盗版剽窃必究月制作盗版剽窃必究清华大学电机系唐庆玉清华大学电机系唐庆玉1997年制作年制作如发现有人剽窃必定追究!如发现有人剽窃必定追究!千岛湖风光千岛湖画面属唐庆玉个人创千岛湖画面属唐庆玉个人创作,青山緑水蓝天白云,剽作,青山緑水蓝天白云,剽窃必究窃必究概述概述PLD的逻辑表示方法和图形符号的逻辑表示方法和图形符号简单简单PLD阵列结构及编程阵列结构及编程现场可编程门阵列现场可编程门阵列FPGAMAX+plus编程软件编程软件可编程逻辑器件(可编程逻辑器件(PLD)第23章目录23.1 PLD的电路符号及编程原理23.2 简单PL

2、D结构及工作原理23.3 复杂PLD(CPLD) 23.4 现场可编程门阵列(FPGA)23.5 MAX+plus编程软件简介(不讲)(不讲)PLD概述概述PLDProgrammable Logic Devices 大规模集成电路,集成了大量的门电大规模集成电路,集成了大量的门电路和触发器,用户可编程构成所需电路。路和触发器,用户可编程构成所需电路。清华大学电机系唐庆玉清华大学电机系唐庆玉2003年年11月月15日编日编优点:优点:(1)节省集成芯片的数量)节省集成芯片的数量节省电路板面积,节省电路板面积, 节省电耗,减少产品体积,降低成本节省电耗,减少产品体积,降低成本(2)电路保密,不易被

3、他人仿造)电路保密,不易被他人仿造清华大学电机系唐庆玉清华大学电机系唐庆玉2003年年11月月15日编日编PLD类型类型(1)PROM型型(Programmable ROM)(2)PLA型型( Programmable Logic Array 可编程逻辑阵列可编程逻辑阵列 )(3)PAL型型( Programmable Array Logic可编程阵列逻辑)可编程阵列逻辑)(4)GAL型型(Generic Array Logic通用阵列逻辑)通用阵列逻辑)(5)复杂)复杂PLD型型( Complex PLD) CPLD(复杂可编程逻辑器件)(复杂可编程逻辑器件) FPGA(现场可编程门阵列)(

4、现场可编程门阵列)最复杂最复杂简单简单较复杂较复杂23.1 PLD的逻辑表示方法及图形符号的逻辑表示方法及图形符号(1)PLD的的逻辑表示方法逻辑表示方法固定连接固定连接编程连接编程连接不连接不连接熔丝熔丝(2)PLD的图形符号的图形符号缓冲门缓冲门AAA相当于相当于&1AAAABCY与门与门AY&BCABCY或门或门AY1BCABCY AY&B可编程连接可编程连接或不连接或不连接输出恒输出恒等于等于0AB BYAAB BYA PLD图形符号(续)图形符号(续)与或门与或门A B C DYACCDBCABY多输入端或门画法多输入端或门画法多输入端与门画法多输入端与门画法

5、门电路符号中美对照表&11&1=1与与或或非非与非与非或非或非异或异或清华大学电机系唐庆玉清华大学电机系唐庆玉2003年年11月月15日编日编23.2 简单的简单的PLD阵列结构及编程阵列结构及编程结构结构: AND逻辑阵列逻辑阵列+OR逻辑阵列逻辑阵列 类型类型 AND阵列阵列 OR阵列阵列 D触发器触发器PROM 连接固定连接固定 可编程可编程(一次性)(一次性)PLA 可编程可编程(一次性)(一次性) 可编程可编程(一次性)(一次性)PAL 可编程可编程(可多次电擦除)(可多次电擦除) 连接固定连接固定 8个个GAL 可编程可编程(可多次电擦除)(可多次电擦除) 连接固定

6、连接固定 8个个输出比输出比PAL增加增加“可编程输出逻辑宏单元可编程输出逻辑宏单元”使编程更灵活。使编程更灵活。清华大学电机系唐庆玉清华大学电机系唐庆玉2003年年11月月15日编日编(1)PROM的内部结构及编程的内部结构及编程 AND阵列固定OR阵列可编程输出输入O2 O1 O0I2 I1 I0例例1 用用PROM实现半加器实现半加器半加器逻辑式半加器逻辑式F=AB+AB=A BC=AB思考题:如何用思考题:如何用PROM实现全加器?实现全加器?半加器真值表半加器真值表A B F C 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1半加器半加器 1+) 0 1 0+) 1

7、1 0+) 0 0 1+) 1 1 0进位进位C本位和本位和F1&FCAB用用TTL门电路实现门电路实现F CA B BABABAABPROM实现实现例例2 用用PROM实现三变量奇数校验电路实现三变量奇数校验电路A B CYABCCBACBACBAYABC Y0 0 0 00 0 1 10 1 0 10 1 1 01 0 0 11 0 1 01 1 0 01 1 1 1真值表真值表ABCCBACBACBACBABCACBACAB清华大学电机系唐庆玉清华大学电机系唐庆玉2003年年11月月15日编日编(2) PLA的内部结构及编程的内部结构及编程 AND阵列可编程OR阵列可编程O2 O

8、1 O0I2 I1 I0输出输入例例3 用用PLA实现三八译码器实现三八译码器A2A1A00 0 0 只只 =0Y00 0 1 只只 =0Y11 1 1 只只 =0Y7输出输出三八译码器真值表三八译码器真值表0120AAAY0121AAAY0127AAAYA2 A1 A0Y0 Y1 Y7A2A1A0A2A1A0清华大学电机系唐庆玉清华大学电机系唐庆玉2003年年11月月15日编日编(3) PAL(专用组合输出型)(专用组合输出型)的内部结构及编程的内部结构及编程AND阵列可编程OR阵列固定输出0输入O0I2 I1 I0O1输出1用途:实现组合逻用途:实现组合逻辑电路辑电路PAL的输出结构类型O

9、与,或,非三态门输出与,或,非三态门输出O输出端可编程变为输入输出端可编程变为输入O异或门的一个输入端可编异或门的一个输入端可编程,可使输出反相程,可使输出反相与阵列与阵列或阵列或阵列三态门输出三态门输出AXAAXAAX10CLKO1DQQOE寄存器输出结构寄存器输出结构例例4:写出:写出PAL阵列输出阵列输出X的表达式的表达式BCCB英文教材数字电子技术习题选编清华大学电机系 唐庆玉2002年9月16日XABCCBABCBCACBAXBCCACBA将此式化简将此式化简BCCBA例例5:Y=A B C,用,用PAL阵列实现该式。阵列实现该式。CBAABCCBACBACBAABCBABACBAC

10、BACBAX)()()()(英文教材数字电子技术习题选编清华大学电机系 唐庆玉2002年9月16日XACB例例6:分别在:分别在PROM和和PAL阵列上画出七段显示译码器阵列上画出七段显示译码器 逻辑电路图逻辑电路图Y Ya aabcdefg译译 码码 器器YbYbYcYcYdYdYeYeYfYfYgYgA A3 3A A2 2A A1 1A A0 0七段显示译码电路七段显示译码电路七七段段显显示示译译码码电电路路真真值值表表十进制数十进制数 A A3 3A A2 2A A1 1A A0 0 Ya Yb Yc Yd Ye Yf YgYa Yb Yc Yd Ye Yf Yg 显示字形显示字形 0

11、 0 0 0 0 00 0 0 0 1 1 1 1 1 1 1 1 1 1 1 0 01 0 0 1 1 0 0 0 10 0 0 1 0 0 1 1 0 0 0 0 1 1 1 0 0 0 0 1 2 2 0 0 1 0 0 0 1 0 1 1 1 0 1 1 0 1 2 1 0 1 1 0 1 2 3 3 0 0 1 1 0 0 1 1 1 1 1 1 1 0 0 1 3 1 1 1 0 0 1 3 4 4 0 1 0 0 0 1 0 0 0 0 1 1 0 0 1 1 4 1 1 0 0 1 1 4 5 5 0 1 0 1 0 1 0 1 1 1 0 1 1 0 1 1 5 0 1 1

12、0 1 1 5 6 0 1 1 0 6 0 1 1 0 0 0 0 1 1 1 1 1 6 0 1 1 1 1 1 6 7 7 0 1 1 1 0 1 1 1 1 1 1 1 0 0 0 0 7 1 1 0 0 0 0 7 8 8 1 0 0 0 1 0 0 0 1 1 1 1 1 1 1 1 8 1 1 1 1 1 1 8 9 9 1 0 0 1 1 0 0 1 1 1 1 1 0 0 1 1 9 1 1 0 0 1 1 9 用真值表设计用真值表设计YaYa的逻辑表示式的逻辑表示式 A A3 3A A2 2A A1 1A A0 0 Ya Ya0 0 0 0 0 0 0 0 0 0 1 1 1

13、 0 0 0 1 1 0 0 0 1 0 02 0 0 1 0 2 0 0 1 0 1 1 3 0 0 1 1 3 0 0 1 1 1 1 4 0 1 0 0 4 0 1 0 0 0 0 5 0 1 0 15 0 1 0 1 1 1 6 0 1 1 0 6 0 1 1 0 0 0 7 0 1 1 1 7 0 1 1 1 1 1 8 1 0 0 0 8 1 0 0 0 1 1 9 1 0 0 1 9 1 0 0 1 1 1用输出为用输出为1的项写出与或表达式,的项写出与或表达式,(不化简)(不化简)0123012301230123012301230123AAAAAAAAAAAAAAAAAAAAA

14、AAAAAAAYa同理写出同理写出YbYg的逻辑表达式的逻辑表达式用用PROM阵列实现七段显示译码器逻辑阵列实现七段显示译码器逻辑0123012301230123012301230123AAAAAAAAAAAAAAAAAAAAAAAAAAAAYaA3 A2 A1 A0YaYbYgA3A2A1A000110100100111101111111000无所谓项无所谓项当当1 1处理处理用卡诺图化简用卡诺图化简YaYa的逻辑表示式的逻辑表示式Ya=A3+A2A0+A2A1+A2A0 A A3 3A A2 2A A1 1A A0 0 Ya Ya0 0 0 0 0 0 0 0 0 0 1 1 1 0 0

15、0 1 1 0 0 0 1 0 02 0 0 1 0 2 0 0 1 0 1 1 3 0 0 1 1 3 0 0 1 1 1 1 4 0 1 0 0 4 0 1 0 0 0 0 5 0 1 0 15 0 1 0 1 1 1 6 0 1 1 0 6 0 1 1 0 0 0 7 0 1 1 1 7 0 1 1 1 1 1 8 1 0 0 0 8 1 0 0 0 1 1 9 1 0 0 1 9 1 0 0 1 1 1在在PAL阵列上阵列上实现七段显示译码器逻辑实现七段显示译码器逻辑Ya=A3+A2A0+A2A1+A2A0英文教材数字电子技术习题选编清华大学电机系 唐庆玉2002年9月16日YaA3A

16、2A1A1A2A3A0A0清华大学电机系唐庆玉清华大学电机系唐庆玉2003年年11月月15日编日编(4) PAL (寄存器输出结构型)(寄存器输出结构型)的内部结构及编程的内部结构及编程功能:可编程功能:可编程组成记忆、计组成记忆、计数、移位、寄数、移位、寄存等时序逻辑存等时序逻辑电路电路I2 I1 I0反馈信号CLKOE输出使能三态输出DQQDQQ8输入输入8输出输出固定固定清华大学电机系唐庆玉清华大学电机系唐庆玉2003年年11月月15日编日编例例7 用用寄存器输出结构型的寄存器输出结构型的PAL组成二位减法器组成二位减法器 CLK FB FA 0 1 1 1 1 0 2 0 1 3 0

17、0 4 1 1SCLKOE 输出使能FADQQDQQFBQBQAQAQAQBQBSS状态方程状态方程SQSQQnAnAnA1nAnAQQS1 , 1nBnAnBnAnBQQQQQS1 , 1SQSQQQQQnBnBnAnBnAnB)(10011010100 :ABQQ经反相输出后就是二位减法器经反相输出后就是二位减法器(5) GAL的内部结构及编程的内部结构及编程GAL的内部结构与的内部结构与PAL基本一样,只是在输出端基本一样,只是在输出端增加了增加了“可编程输出逻辑宏单元可编程输出逻辑宏单元(OLMC)”,其输,其输出状态可由用户定义,这样,使编程更灵活,使出状态可由用户定义,这样,使编程

18、更灵活,使一片一片GAL具有所有型号的具有所有型号的PAL的功能。的功能。GAL16V8I0/CLK I1 I2 I3 I4 I5 I6 I7 I8 GNDVCC F7 F6 F5 F4 F3 F2 F1 F0 I9/OE20111012-9脚输入(固定)1脚时钟(可定义成输入)11脚 输出使能(可定义成输入)12-19脚输出(也可定义成输入)I/OGAL的输出逻辑宏单元(OLMC)结构XOR(n)OECLKI/On10110100DQ输出数据选择器MUXO1S1(n)乘积项数据选择器MUXPT01来自邻级(第m级)的I/Om反馈数据选择器MUXF三态数据选择器MUXTSS1(m)S1(n)1

19、1100100S0S1(n)S0S001S0S1(n)Q第n级OLMC单元来自与阵列去与阵列例例8 GAL16V8型型GAL的编程举例的编程举例BAY1Y3Y0Y2真值表真值表Y2BAY1Y30 0 1 1 1 00 1 1 1 0 11 0 1 0 1 11 1 0 1 1 1 Y0ABY0ABY1ABY2ABY3设计设计2线线4线译码器线译码器例例8 ABEL语言编程语言编程 ABY0ABY1ABY2ABY3GAL16V8I0/CLK I1 I2 I3 I4 I5 I6 I7 I8 GNDVCC F7 F6 F5 F4 F3 F2 F1 F0 I9/OE2011101 B Y3 Y2 Y1

20、 Y0 输入输入输出输出定义定义 A215 14 13123Module 2-4 DECODERDeclarationsA,B pin 2,3;Y0,Y1,Y2,Y3 pin 12,13,14,15;EquationsY0=B#A;Y1=B#!A;Y2=!B#A;Y3=!B#!A;Test-vectors(B,A Y3,Y2,Y1,Y0)0,0 1,1,1,00,1 1,1,0,11,0 1,0,1,11,1 0,1,1,1END& 与,与,# 或,!非,或,!非, 异或,异或,!(A&B)与非,)与非, !(A#B)或非)或非定义模块名定义模块名定义引脚号定义引脚号逻辑代数式

21、描述逻辑代数式描述测试向量测试向量23.3/23.4 现场可编程门阵列现场可编程门阵列FPGA及编程及编程FPGA型号:型号:Altera EPF10K10LC84-4 内部有内部有6000门以上,可编程组成各种门以上,可编程组成各种74系列组合逻系列组合逻辑电路、触发器、寄存器、计数器等复杂数字电路辑电路、触发器、寄存器、计数器等复杂数字电路 速度达速度达40MHz 200MHz 84引脚,其中引脚,其中59个可用于个可用于I/O引脚引脚 可由单片机或可由单片机或PC机控制机控制 编程编程软件软件:MAX+Plus 9.23(1)特性)特性电路绘图法编程软件(电路绘图法编程软件(Graphi

22、c Editor file)数字硬件描述语法(数字硬件描述语法(AHDL描述语法)描述语法)(2)FPGA实验系统框图实验系统框图按钮,开关,键盘,单脉冲,连续脉冲,数码管,LEDAltera FPGA芯片:EPF10K10LC84-4串行E2PROM: SE2PROM ,8KBFPGA下载板I/O实验板RS-232FPGA下载板元件分布图下载板元件分布图清华大学电机系唐庆玉清华大学电机系唐庆玉2003年年11月月15日编日编FPGA芯片芯片下载板固定插座下载板固定插座 单片机插座单片机插座晶振SEEPROM稳压块稳压块7805DC7.5V电源电源P01P42引脚插座引脚插座串行接口串行接口P

23、43P84引脚插座引脚插座FPGA芯片的引脚编号芯片的引脚编号RS232串行串行E2PROMI/O实验板元件分布图实验板元件分布图清华大学电机系唐庆玉清华大学电机系唐庆玉2003年年11月月15日编日编P55P56P57P58P60P61P62P63P64P65P66P67P69P70P71P72P01P02P03P04P06P07P08P09P34P35P36P37P39P40P41P42SWP1 SWP2 SWP3 SWP41023546798ABDCEF6个七段LED数码管3个8位逻辑输入开关16个逻辑电平检测LED3个CPLD下载板插座J1J2J316个逻辑电平检测LED1个57点阵L

24、ED显示器1个米字形LED显示器4 4矩阵键盘2个连续可调脉冲发生器4个单脉冲按键P81 P82 P83 P84跳线区跳线区FPGA下载板下载板RS232串口DC7.5V电源I/O板上的引脚编号1Hz-1kHz 1kHz-1MHz清华大学电机系唐庆玉清华大学电机系唐庆玉2003年年11月月15日编日编例例1 用绘图法设计用绘图法设计“投币洗衣机电路投币洗衣机电路”设计思路:设计思路: 投币数投币数 5,OK=1,洗衣机启动。,洗衣机启动。 只投只投1分硬币,用按键分硬币,用按键SWP1模拟,按一次投模拟,按一次投1分,分,用三位计数器用三位计数器Q1C Q1B Q1A表示;表示; 只投只投2分

25、硬币,用按键分硬币,用按键SWP2模拟,按一次投模拟,按一次投2分,分,用二位计数器用二位计数器Q2B Q2A表示;表示; 只投只投5分硬币,用按键分硬币,用按键SWP3模拟,按一次投模拟,按一次投5分,分,用一位计数器用一位计数器Q5表示;表示;OK清清01分分2分分5分分投币洗衣机投币洗衣机电路电路投币洗衣机电路真值表投币洗衣机电路真值表Q1C Q1B Q1A Q2B Q2A Q5 OK 1 0 1 1 1 0 0 1 1 1 1 1 1 1 0 1 0 1 1 1 0 1 1 1 1 1 152221212112111 QQQQQQQQQQQQQQOKABBABBAABACAC52221

26、212112111QQQQQQQQQQQQQQOKABBABBAABACAC逻辑表达式逻辑表达式清华大学电机系唐庆玉清华大学电机系唐庆玉2003年年11月月15日编日编用用图形输入法图形输入法法设计法设计“投币洗衣机电路投币洗衣机电路”文件名: wash.gdf52221212112111QQQQQQQQQQQQQQOKABBABBAABACAC7490749074175RESETSWP3SWP2SWP1OK1分计数器分计数器2分计数器分计数器5分计数器分计数器例例2 用用AHDL描述语法和绘图法设计电路:描述语法和绘图法设计电路: 将一个将一个2位位16进制数转换为进制数转换为2位位10进制

27、数进制数2位位16进制数进制数 2位位10进制数进制数 00H 00D 01H 01D 0AH 10D 0BH 11D 62H 98D 63H 99D 2位位16进制数和进制数和2位位10进进制数的对应关系制数的对应关系转换电路真值表转换电路真值表8位二进制数位二进制数 二位二位BCD码码H7 H6 H0 DA7 DA6 DA0 00000000 0000 0000 00000001 0000 0001 00001010 0001 0000 00001011 0001 0001 01100010 1001 1000 01100011 1001 1001将一个将一个2位位16进制数转换为进制数转

28、换为2位位10进制数进制数转换电路真值表转换电路真值表8位二进制数位二进制数 二位二位BCD码码H7 H6 H0 DA7 DA6 DA0 00000000 0000 0000 00000001 0000 0001 00001010 0001 0000 00001011 0001 0001 01100010 1001 1000 01100011 1001 1001 hcd.sym将一个将一个2位位16进制数转换为进制数转换为2位位10进制数进制数 hcd.sym h2cd.sym组合逻辑电路子系统组合逻辑电路子系统将一个将一个2位位16进制数转换为进制数转换为2位位10进制数进制数 h2cd.sym组合逻辑电路子文件组合逻辑电路子文件012023030BBBBBBBBD0112031BBBBBBD012032BBBBBD02

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论