第六章存储器和可编程器件 Memory And Programmable logic devices 6.5可编程逻辑技术 实现逻辑 可编程逻辑器件类型:(PLDs) ROM: read-only memory PLA: programmable logic array PAL: programmable array logic CPLD: complex programmable logic device GAL: generic array logic FPGA: field-programmable gate array 可编程逻辑器件的支持技术: 1.互联的建立与消除。 2.设立查找表。 3.晶体管开关的控制。 连接控制: 1.熔丝(fuse):可编程点为熔丝构成连接, 可高电压烧断,断开连接 CLOSED连接,OPEN断开
第六章 存储器和可编程器件 Memory And Programmable Logic Devices 6.5 可编程逻辑技术 实现逻辑 可编程逻辑器件类型:(PLDs) ROM:read-only memory PLA:programmable logic array PAL:programmable array logic CPLD:complex programmable logic device GAL: generic array logic FPGA:field-programmable gate array 可编程逻辑器件的支持技术: 1. 互联的建立与消除。 2. 设立查找表。 3. 晶体管开关的控制。 连接控制: 1. 熔丝(fuse):可编程点为熔丝构成连接, 可高电压烧断,断开连接。 CLOSED 连接,OPEN 断开
2.掩膜编程( mask programmable):半导 体制造商在器件制作的最后一步根据 用户要求确定金属层的导线连接。器件 量大时,经济上才合算 3.反熔丝( antifuse):编程前,连接点被 高阻物质分开,断路,编程高电压使其 熔化连接。 4.Mosn沟道晶体管用SRAM驱动: SRAM的位存1,晶体管导通,连接点 连接,反之,断开。 前三种技术不可重编,但是永久的。第四种 编程容易,但易失。 建立查找表 lookup table) 利用SRAM存储真值表,地址为逻辑输入, 对应字为逻辑输出。 晶体管开关控制:浮栅技术。 利用浮栅存储电荷控制 晶体管的永久“开”与“关”。 浮栅的电荷可移去,称为擦除。采用这种技
2. 掩膜编程(mask programmable):半导 体制造商在器件制作的最后一步根据 用户要求确定金属层的导线连接。器件 量大时,经济上才合算。 3. 反熔丝(antifuse):编程前,连接点被 高阻物质分开,断路,编程高电压使其 熔化连接。 4. Mos n 沟道晶体管用 SRAM 驱动: SRAM 的位存 1,晶体管导通,连接点 连接,反之,断开。 前三种技术不可重编,但是永久的。第四种 编程容易,但易失。 建立查找表(lookup table): 利用 SRAM 存储真值表,地址为逻辑输入, 对应字为逻辑输出。 晶体管开关控制:浮栅技术。 利用浮栅存储电荷控制 晶体管的永久“开”与“关”。 浮栅的电荷可移去,称为擦除。采用这种技 D G1 S G2
术的器件称为可擦除器件( erasable) 擦除可用紫外光或电的方法( electrically erasable)。 6.6只读存储器(ROM) 永久存储二进信息,非易失( nonvolatile)。 ROM框图: k inputs(address) 2kx n rom n outputs (data) 存2k个字。每字n位。无数据输入。常带 有一个或多个使能,以便构成大阵列。 内部逻辑结构:32×8ROM为例。 lo 1 5-to-32 decoder 28 30 ⑦⑦ A, A6 A5 A4 A3 A2 A Ao
术的器件称为可擦除器件(erasable)。 擦除可用紫外光或电的方法(electrically erasable)。 6.6 只读存储器 (ROM) 永久存储二进信息,非易失(nonvolatile)。 ROM 框图: 2k k inputs (address) x n ROM n outputs (data) 存 2 k 个字。每字 n 位。无数据输入。常带 有一个或多个使能,以便构成大阵列。 内部逻辑结构:32×8 ROM 为例。 5-to-32 decoder 0 1 2 3 28 29 30 31 I0 I1 I2 I3 I4 A0 A1 A2 A3 A4 A5 A6 A7
>5-32译码器。每个输出对应一个存储地 址。对应确定地址译码输出为1。 >8个32扇入或门输出。每个译码输出经 熔丝与或门可编程连接,形成或阵。 2×nROM内有K个地址输入端,2译 码器,n个2可编程连接扇入或门。 >ROM存储内容用真值表表示。例: Outputs 14 13 I I1 le A7 A6 As A 000 0000 1000 10110 000 100 真值表内容可被硬件编程输入。值0、 分别对应可编程连接点的断、通。 或阵中用×表示连接,十表示断开。 上例真值表内容对应ROM内部逻辑连 接结构如下图:
➢ 5-32 译码器。每个输出对应一个存储地 址。对应确定地址译码输出为 1。 ➢ 8 个 32 扇入或门输出。每个译码输出经 熔丝与或门可编程连接,形成或阵。 ➢ 2 k×n ROM 内有 K 个地址输入端,2 k译 码器,n 个 2 k可编程连接扇入或门。 ➢ ROM 存储内容用真值表表示。例: ➢ 真值表内容可被硬件编程输入。值 0、1 分别对应可编程连接点的断、通。 ➢ 或阵中用×表示连接,+表示断开。 ➢ 上例真值表内容对应 ROM 内部逻辑连 接结构如下图: Inputs Outputs I4 I3 I2 I1 I0 A7 A6 A5 A4 A3 A2 A1 A0 0 0 0 0 0 1 0 1 1 0 1 1 0 0 0 0 0 1 0 0 0 1 1 1 0 1 0 0 0 1 0 1 1 0 0 0 1 0 1 0 0 0 1 1 1 0 1 1 0 0 1 0 . . . . . . 1 1 1 0 0 0 0 0 0 1 0 0 1 1 1 1 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 0 1 0 0 1 0 1 0 1 1 1 1 1 0 0 1 1 0 0 1 1
5-to-32 0123 8903 X Fuse intact Fuse blown >ROM类型 掩膜编程技术:ROM。 熔丝编程技术:PROM。 浮栅编程技术: EPROM。 电可擦编程技术:E2PROM 编程技术的选择根据所需ROM的数量、 编程与可重编性、器件延时而不同。 用ROM实现组合逻辑 除存储数据外,ROM可实现组合逻辑。 任何组合逻辑均可表示为输入变量的最小 项之和,如将ROM的输入看作输入变量,其译 码器产生了所有的最小项,其输出或门可编程实 现任意最小项求和,所以ROM可实现任何所希 的组合逻辑
5-to-32 decoder 0 1 2 3 28 29 30 31 I0 I1 I2 I3 I4 A0 A1 A2 A3 A4 A5 A6 A7 Fuse intact Fuse blown ➢ ROM 类型: 掩膜编程技术:ROM。 熔丝编程技术:PROM。 浮栅编程技术:EPROM。 电可擦编程技术:E 2PROM。 ➢ 编程技术的选择根据所需 ROM 的数量、 编程与可重编性、器件延时而不同。 用 ROM 实现组合逻辑 除存储数据外,ROM 可实现组合逻辑。 任何组合逻辑均可表示为输入变量的最小 项之和,如将 ROM 的输入看作输入变量,其译 码器产生了所有的最小项,其输出或门可编程实 现任意最小项求和,所以 ROM 可实现任何所希 的组合逻辑
上例ROM可编程实现5变量输入8变量输 出的任意组合逻辑 A(l4,l3,12,1,)=∑m ×:连接,加入和运算,+:开路,不加入 和运算。 ROM常用于码制变换,复杂算术运算等。 特别对于中等数量输入、大量输出的情况。 实现过程:提供真值表;编程输入。 例:用ROM实现3位二进数的平方运算。 1.导出真值表。 Inputs Outputs A2 Al Ao Bs B B3 BB Bo Decimal 0000 000000 01 0100 000 00000000 0 36 注意到B0=A0,B1=0,有下表 1000 00.000 B001 0101 0010 0
上例 ROM 可编程实现 5 变量输入 8 变量输 出的任意组合逻辑: ( , , , , ) = ( ) Ai I 4 I 3 I 2 I 1 I 0 m ×:连接,加入和运算,+:开路,不加入 和运算。 ROM 常用于码制变换,复杂算术运算等。 特别对于中等数量输入、大量输出的情况。 实现过程:提供真值表;编程输入。 例:用 ROM 实现 3 位二进数的平方运算。 1. 导出真值表。 注意到 B0=A0,B1=0,有下表: A2 A1 A0 B5 B4 B3 B2 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 0 1 1 0 0 1 0 1 0 0 0 1 0 0 1 0 1 0 1 1 0 1 1 0 1 0 0 1 1 1 1 1 1 0 0 Inputs Outputs A2 A1 A0 B5 B4 B3 B2 B1 B0 Decimal 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 1 0 1 0 0 0 0 1 0 0 4 0 1 1 0 0 1 0 0 1 9 1 0 0 0 1 0 0 0 0 16 1 0 1 0 1 1 0 0 1 25 1 1 0 1 0 0 1 0 0 36 1 1 1 1 1 0 0 0 1 49
2.画逻辑图。需8×4ROM。 BI Ao B 2 8 x 4 ROM BA LD的三种主要类型 与阵十或阵结构可实现组合逻辑。 与或阵固定与可编程的不同组合构成三 种PLD。 1.ROM(可编程只读存储器) (programmable read-only memory) mmable AND array p Outputs (decoder) Connections OR array 2.PAL(可编程阵列逻辑器件) programma ble array logic device Pr Inputs Fixed y Outputs AND array OR array 3.PLA(可编程逻辑阵列器件 (programmable logic array device) Programmable Programmable rogrammable w Outputs Connections AND array Connections OR array
2. 画逻辑图。需 8×4ROM。 8 x 4 ROM 0 B0 B1 B2 B3 B4 B5 A0 A1 A2 PLD 的三种主要类型: ➢ 与阵+或阵结构可实现组合逻辑。 ➢ 与或阵固定与可编程的不同组合构成三 种 PLD。 1. ROM(可编程只读存储器) (programmable read-only memory) Fixed AND array (decoder) Programmable OR array Programmable Connections Inputs Outputs 2. PAL(可编程阵列逻辑器件) (programmable array logic device) Programmable AND array Fixed OR array Programmable Connections Inputs Outputs 3.PLA(可编程逻辑阵列器件) (programmable logic array device) Programmable AND array Programmable OR array Programmable Connections Inputs Outputs Programmable Connections
6.7 PLA PLA与PROM相似,为节省逻辑,将PROM 中全译码器用可编程与阵代替。与阵不提供全译 码,只提供输入变量有限译码,即只能产生有限 最小项,但逻辑所需最小项可在与阵可编程选择 产生。或阵可编程求和。 例:3输入2输出PLA内部逻辑构成 AB X Fuse intact t fuse blown CCBBAA FL F2 注意:多扇入与或门的表示 可编程异或门实现或门输出的求反。 可编程连接实现逻辑为: F=AB+AC+ABC F=AC+ BC
6.7 PLA PLA与 PROM相似,为节省逻辑,将 PROM 中全译码器用可编程与阵代替。与阵不提供全译 码,只提供输入变量有限译码,即只能产生有限 最小项,但逻辑所需最小项可在与阵可编程选择 产生。或阵可编程求和。 例:3 输入 2 输出 PLA 内部逻辑构成。 1 2 3 4 0 1 F1 F2 AB AC BC ABC Fuse intact Fuse blown C C B B A A A B C 注意:多扇入与或门的表示; 可编程异或门实现或门输出的求反。 可编程连接实现逻辑为: F1 = AB + AC + ABC F2 = AC + BC
PLA熔丝图可用真值表表示。 Outputs Product term A B C FI F2 AB AC A BC 010 与阵:1,与原码连接;0,与反码连接; ,与原反码均不连接。 或阵:1,与积项连接。一,与积项不连接。 T:真值(true)。原码输出,异或门控制输 入为0。 C:补( complement)。补码输出,异或门 控制输入为0。 PLA的大小 1.输入数。典型16。 2.积项数。典型48。 3.输出数。读写8。 n入、k积项、m输出PLA含有n反相门 k个与门,m个或门和异或门,可编程连接点为 2n×k+k×m+m
PLA 熔丝图可用真值表表示。 与阵:1,与原码连接;0,与反码连接; -,与原反码均不连接。 或阵:1,与积项连接。-,与积项不连接。 T:真值(true)。原码输出,异或门控制输 入为 0。 C:补(complement)。补码输出,异或门 控制输入为 0。 PLA 的大小 1. 输入数。典型 16。 2. 积项数。典型 48。 3. 输出数。读写 8。 n 入、k 积项、m 输出 PLA 含有 n 反相门, k 个与门,m 个或门和异或门,可编程连接点为: 2n×k+k×m+m。 Inputs Outputs Product (T) (C) term A B C F1 F2 AˉB 1 1 0 - 1 - AC 2 1 - 1 1 1 BC 3 - 1 1 - 1 ˉA BˉC 4 0 1 0 1 -
PLA的编程 掩膜编程提交编程表。FPLA可通过开发系 统用硬件编程器编程。 提交的编程表应最简。(积项最少,积项中 含有变量数最少。 例:用PLA实现下列组合逻辑。 F1(A,BC)=∑m(O,2.4 F=(ABC)=∑m057) BC B 00011110 A00011110 0110|1 01000 A11000 F= AB+ AC+ BC F= AB+AC+AbC F,= AB+AC +BC F2=AC+ AB+ ABC 选F和F2,可最少积项。得编程表: Inputs Outputs Product AB O FI AB AC BC A B c 对于实际复杂的逻辑函数化简通常借助计 算机辅助设计完成上述过程得到PLA编程表
PLA 的编程 掩膜编程提交编程表。FPLA 可通过开发系 统用硬件编程器编程。 提交的编程表应最简。(积项最少,积项中 含有变量数最少。 例:用 PLA 实现下列组合逻辑。 ( , , ) = (0,1,2,4) F1 A B C m = ( , , ) = (0,5,6,7) F2 A B C m 1 1 0 1 1 0 0 0 00 01 11 10 0 1 B A A BC C F AB AC BC F AB AC BC = + + = + + 1 1 1 0 0 0 0 1 1 1 00 01 11 10 0 1 B A A BC C F AC AB ABC F AB AC ABC = + + = + + 2 2 选 F1 和 F2,可最少积项。得编程表: Inputs Outputs Product (C) (T) term A B C F1 F2 AB 1 1 1 - 1 1 AC 2 1 - 1 1 1 BC 3 - 1 1 1 - ˉA ˉB ˉC 4 0 0 0 - 1 对于实际复杂的逻辑函数化简通常借助计 算机辅助设计完成上述过程得到 PLA 编程表