《数字逻辑第七章幻灯片.ppt》由会员分享,可在线阅读,更多相关《数字逻辑第七章幻灯片.ppt(109页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、数字逻辑第七章第1页,共109页,编辑于2022年,星期六PLD由逻辑单元、互连线单元、输入/输出单元组成,各单元的功能及相互连接关系都可经编程设置。借助EDA(Electronic Design Automation)工具软件,PLD可为数字系统设计者提供灵活而强大的处理能力。PLD从早期的小规模PLD(PROM、PLA、PAL、GAL)发展起,现已发展成复杂的PLD(CPLD/FPGA),其逻辑单元可达数百个、等效逻辑门数十万个、片内信号传输延时在ns数量级。PLD的目前发展方向之一是将CPU、存储器、逻辑单元乃至模拟部件集成在一块芯片以构成系统级PLD(SoPC),使用户通过编程可实现更
2、综合、更大规模的系统。第2页,共109页,编辑于2022年,星期六7 71 1ROMROM(Read Only Memory:(Read Only Memory:只读存储器只读存储器)7.1.1ROM可作为一种PLD器件ROM是计算机中的重要部件,通常用于存储固定信息。ROM中的存储信息在芯片掉电后一般能继续保存。ROM存储的信息在其工作时只能被读出,不能被改写。ROM由若干存储单元(字)组成,每一单元存储了m个二进制位(例如8位)。输入给ROM的为n条地址线(例如10条),地址线经地址译码器给出2n条字线,每条字线(Wi)寻址一个存储单元。被寻址的存储单元通过m条位线(Dj)将存储的0、1信
3、息送出ROM。第3页,共109页,编辑于2022年,星期六第4页,共109页,编辑于2022年,星期六图表达了一个n=2、m=4的CMOS-ROM的结构。图中可见2n4个存储单元中存储的1、0信息和MOS管的有、无的对应关系。ROM中存储的信息可由制造厂家一次性制作进去,也可由用户写入,后者称为PROM(Programmable ROM)图 CMOS-ROM的结构示例 第5页,共109页,编辑于2022年,星期六ROM中的地址译码器用2n条输出字线表达n位地址线上变量的编码,译码的规则是每条字线(Wi)对应n位地址变量的一个最小项(n位地址变量的与运算乘积项)。ROM的地址译码器是一个与运算阵
4、列,它给出n位地址变量的全部最小项(Wi,i=02n-1)。在任何时刻,各Wi中必有一个、只有一个有效。这个与运算阵列在ROM中是固定制备的。第6页,共109页,编辑于2022年,星期六由图可见,各存储单元中具有相同位权的存储MOS管的漏极输出连接在同一条输出数据线(位线Dj)上。由于同一时刻只可能有一条字线(Wi)有效,因而同一位线上的各存储位呈或运算关系。由于ROM存储的0、1信息可根据需要制作进入或由用户写入,因而说ROM中的存储矩阵是一个可编程的或运算阵列。D0=W01+W10+W20+W31D1=W01+W11+W20+W31D2=W01+W10+W21+W30D3=W00+W11+
5、W21+W30(7.1.2)第7页,共109页,编辑于2022年,星期六从以上分析可见,ROM是一种与运算固定,或运算可编程的器件,可作为PLD用于实现n个输入变量的多输出(最多m个)组合函数。在实现组合函数时,将函数式整理为最小项表达式并由此决定ROM存储单元的内容,将函数变量输入到ROM的地址线,由ROM的每条数据线得到一个函数输出。第8页,共109页,编辑于2022年,星期六例7.1.1用ROM实现四位自然二进制码到循环码的转换电路。解:四位二进制码A3A2A1A0与循环码D3D2D1D0的转换真值表如表7.1.1。二进制码循环码A3 A2 A1 A0D1 D2 D1 D00 0 0 0
6、0 0 0 00 0 0 10 0 0 10 0 1 00 0 1 10 0 1 10 0 1 00 1 0 00 1 1 00 1 0 10 1 1 10 1 1 00 1 0 10 1 1 10 1 0 01 0 0 01 1 0 01 0 0 11 1 0 1 1 0 1 01 1 1 11 0 1 11 1 1 01 1 0 01 0 1 01 1 0 11 0 1 11 1 1 01 0 0 11 1 1 11 0 0 0第9页,共109页,编辑于2022年,星期六二进制码A B C D循环码W X Y Z0 0 0 00 0 0 10 0 1 00 0 1 10 1 0 00 1
7、0 10 1 1 00 1 1 11 0 0 01 0 0 11 0 1 01 0 1 11 1 0 01 1 0 11 1 1 01 1 1 10 0 0 00 0 0 10 0 1 10 0 1 00 1 1 00 1 1 10 1 0 10 1 0 01 1 0 01 1 0 11 1 1 11 1 1 01 0 1 01 0 1 11 0 0 11 0 0 001326754C hD hF hE hA hB h98A3 A2 A1 A0ROM 的 地 址 线D3 D2 D1 D0ROM 的 数据 线ROM存储单元的内容第10页,共109页,编辑于2022年,星期六由表7.1.1可得由A
8、3A0的最小项序号表达的D3D0的逻辑关系式(7.3)。可用4位地址、4位数据的ROM实现此转换的电路。将二进制码A3A2A1A0连接ROM的地址线,由ROM的输出数据线得到循环码D3D2D1D0。由表7.1可得到ROM各存储单元的存储信息,再结合式(7.1.3)可得到类似图7.1.1的CMOS-ROM的结构。D0=m(1,2,5,6,9,10,13,14)D1=m(2,3,4,5,10,11,12,13)D2=m(4,5,6,7,8,9,10,11)D3=m(8,9,10,11,12,13,14,15)第11页,共109页,编辑于2022年,星期六表示方便,通常用阵列图描述可编程逻辑器件(P
9、LD)的结构和编程信息。图7.1.2为阵列图中逻辑门的画法和连接关系。图7.1.3为例7.1.1中实现四位二进制码到循环码转换功能的ROM的阵列图。图7.1.2 PLD阵列图中的逻辑门及连接关系图7.1.3 实现二进制码到循环码转换的ROM的阵列图第12页,共109页,编辑于2022年,星期六 7.1.2 ROM的种类的种类(1)熔丝型和反熔丝型)熔丝型和反熔丝型PROM熔丝型和反熔丝型PROM是一次编程性ROM,数据一经写入便不能更改。图7.1.4为双极型晶体管熔丝PROM的结构示意。在PROM出厂时,多发射极晶体管的各发射极所连的熔丝呈连接状态,相当于各存储位存储数据“1”。在写入信息时,
10、对需要写“0”的位控制其晶体管发射极使其流过较大的电流,使与发射极连接的熔断丝烧断。第13页,共109页,编辑于2022年,星期六图7.1.5为反熔丝的结构示意。反熔丝相当于生长在n扩散层和多晶硅(两个导电材料层)之间的介质层,这一介质层在器件出厂时呈现很高的电阻,使两个导电层间绝缘。当编程需要连接两个导电层时,在介质层施加高脉冲电压(18V)使其被击穿,使两个导电层连通。连通电阻小于1K。反熔丝占用的硅片面积较小,适宜做高集成度可编程器件中的编程单元。图7.1.5反熔丝的结构示意第14页,共109页,编辑于2022年,星期六(2)EPROM(Erasable PROM 可改写可改写PROM)
11、EPROM可经紫外线照射擦除所存储的数据,擦除后可再次写入,因而又称为UVEPROM(UltraViolet EPROM)。EPROM中的关键器件是浮栅MOS晶体管,图7.1.6为叠栅式浮栅MOS管示意图。浮栅MOS管中的栅极G1埋在SiO2绝缘层中没有引出线,称之为浮栅。第二栅极G2有引出线。图7.1.6EPROM中的浮栅MOS管第15页,共109页,编辑于2022年,星期六编程写入时,在D、S加施足够大的脉冲正电压,使PN结出现雪崩击穿而产生许多高能量的电子。同时在G2加正电压使沟道中的电子在电场的作用下可穿过氧化层注入到浮栅G1。由于G1埋在绝缘层中没有放电通路,在脉冲正电压结束后,积累
12、在G1浮栅的负电荷可长期保留。G1上积累的负电荷使MOS管的开启电压(VTH)变得较高,使得在G2加高电平时,MOS管也不能导通,这相当于在管上存储了数据“0”。而当G1上没有电子积累时,管的开启电压较低,在G2施加高电平时,管可以导通,相当于存储数据“1”。第16页,共109页,编辑于2022年,星期六图7.1.7为EPROM中的位存储位单元。当读取该存储位时,字线x、y由地址译码器置高电平。当需要改写EPROM中的存储内容时,需要先擦除原存储内容。用紫外线透过芯片表面的透明窗照射浮栅G1(照射需数分钟),使浮栅上的负电荷获得足够的能量穿过绝缘层回到衬底,使EPROM中所有存储位回到存“1”
13、状态。此后就可对EPROM再次写入。图7.1.7EPROM中的位存储单元第17页,共109页,编辑于2022年,星期六(3)EEPROM(Electrical Erasable PROM 可电擦除可电擦除PROM)EEPROM使用电信号完成擦改工作,无需紫外线照射。这给使用者带来了方便,也给ISP(In System Programmability 在系统编程)建立了基础。EEPROM的结构可类比EPROM。EEPROM的浮栅MOS晶体管如图7.1.8所示。图7.1.8EEPROM中的浮栅MOS管第18页,共109页,编辑于2022年,星期六管中的浮栅G1有一区域与衬底间的氧化层极薄(1015
14、nm),可产生隧道效应。当在G2栅极加脉冲正电压时,隧道效应使电子由衬底注入浮栅G1。脉冲正电压结束后,注入G1的负电荷由于没有放电通路而保留在浮栅上,使MOS管的开启电压变高。第19页,共109页,编辑于2022年,星期六图7.1.9为EEPROM中的一个位存储单元。当浮栅管T2的G1有负电荷积累时,T2管不导通,位存储单元相当于存储了数据“1”。EEPROM出厂时,各位存储单元均为“1”存储状态,当需要在某位写“0”时,使栅极G2接地,在漏极施加脉冲正电压使G1上的负电荷由于隧道效应回到衬底。图7.1.9EEPROM中的位存储单元第20页,共109页,编辑于2022年,星期六(4)Flas
15、h Memory(闪速存储器)(闪速存储器)闪速存储器的结构与EPROM、EEPROM相似,也为双栅极MOS管结构。两个栅极为控制栅和浮置栅。闪速存储器的隧道氧化物层较EEPROM的更薄。闪速存储器的擦除方法与EEPROM类似,利用“隧道效应”(FN隧道效应)。而编程方法有FN隧道效应法和CHE法两类,后者与EPROM类似,为一种“沟道热电子注入技术”。闪速存储器的结构和制作工艺可使它的集成度更高。在编程和擦除时,闪速存储器可一次对多个存储单元同时完成,因而闪速存储器的存取速率比EPROM、EEPROM快。闪速存储器的这些优点使它获得了快速的发展。第21页,共109页,编辑于2022年,星期六
16、(5)FRAM(铁电存储器)(铁电存储器)FRAM是近年新发展起来的存储器件。它的核心技术是铁电晶体材料。当铁电晶体材料置于电场中,晶阵中的每个自由浮动的中心原子会沿着电场方向运动,从一种稳定状态到达另一种稳定状态。在电场作用下的这种稳定状态只有两个。可用一个来记忆逻辑,另一个记忆逻辑。中心原子的稳定状态在电场撤消后可长期保留,常温中可达一百年以上。铁电晶体材料的这一特性特别适用于ROM。第22页,共109页,编辑于2022年,星期六由于铁电晶体单元在存储状态改变时的物理过程中没有任何原子碰撞,FRAM的写入速率可比EPROM类(EPROM、EEPROM、Flash Memery)快得多,在s
17、数量级。而后者通常在ms数量级。另一方面,FRAM写入功耗也比EPROM类的低得多,典型值上是EEPROM的2,500分之一。FRAM的写入次数寿命也比EPROM类的高得多,一般EEPROM类的写入次数寿命在十万到一百万次之间,而FRAM已见有一亿个亿次的写入寿命的报道。第23页,共109页,编辑于2022年,星期六 7 72 2 PLAPLA、PALPAL、GALGAL 7.2.1PLA(Programmable Logic Array)PROM产生输入变量的全部最小项。但多数组合逻辑函数并不需要使用到全部最小项,因而用PROM实现组合逻辑时的芯片面积使用效率不是很高,特别是在多输入变量的情
18、况。PLA(可编程逻辑阵列)中的与阵列、或阵列均可被编程。第24页,共109页,编辑于2022年,星期六图7.2.1为22PLA的阵列图。与阵列和或阵列中每条线的交点均可由编程决定连接或不连接。可见PLA的与阵列并不固定产生输入变量的全部最小项,其芯片面积使用效率高于PROM。图7.2.122 PLA第25页,共109页,编辑于2022年,星期六由于PLA的与阵列、或阵列的连接需要编程,在用PLA实现组合逻辑函数时,需要将函数表达式化简为最简与或式,多输出情况时,也要尽量利用公共的乘积项。这些优化设计使得EDA综合器中的软件算法较为复杂。另外,由于在结构上需保证与阵列或阵列均可被编程,PLA器
19、件的运行速度也受到了一定的限制。第26页,共109页,编辑于2022年,星期六7.2.2PAL(Programmable Array Logic)与PLA相比较,PAL(可编程阵列逻辑)有着以下主要特点:与阵列可编程,或阵列固定。图7.2.2为22PAL中组合逻辑部分的阵列图,其中的或阵列用输入端数目固定的或门表示。器件中增加了触发器,使PAL可实现时序逻辑。图7.2.222 PAL第27页,共109页,编辑于2022年,星期六 7.2.3 GAL(Generic Array Logic)80年代在PAL基础上发展的GAL(通用阵列逻辑)有着以下主要特点:首次在PLD上采用了EEPROM工艺,
20、使得PLD具有了电可擦除并可重复编程的性能。沿用了PAL的“与阵列可编程,或阵列固定”的结构特征,在I/O部分增加了输出逻辑宏单元(OLMC),改进了器件的功能,增加了编程设置的灵活性。第28页,共109页,编辑于2022年,星期六GAL16V8器件的结构图。第29页,共109页,编辑于2022年,星期六 (1)逻辑阵列)逻辑阵列图7.2.3中画出了与阵列,或阵列(或门)。与阵列中的每个与门可实现一个乘积项,送入每个OLMC中或门的各有8个乘积项。每个乘积项中的变量可选自32个信号(88个输入原变量、反变量、88个反馈原变量、反变量)。由7.2.3可见每个OLMC向与阵列反馈回一个信号,这个反
21、馈信号可来自三个信号:OLMC的输出信号、相邻OLMC的输出信号、I/O引脚来的外输入信号。反馈信号可以增加一个OLMC实现组合函数中的乘积项的个数,也可以增加一个乘积项中变量的个数。在OLMC构成时序逻辑电路时反馈也是必要的。引脚I/CLK、I/OE经编程可以作为一般输入端引脚,也可为各OLMC提供全局时钟(CLK)和输出使能(OE)信号。第30页,共109页,编辑于2022年,星期六(2)OLMC(Output Logic Macro Cell)图7.2.4为GAL16V8中的输出逻辑宏单元(OLMC)的逻辑图。其中,8输入或门完成或运算,异或门起着可编程控非门的作用。D触发器使GAL有了
22、时序逻辑功能,其时钟用全局时钟(CLK)。图7.2.4GAL16V8的OLMC的逻辑图第31页,共109页,编辑于2022年,星期六第32页,共109页,编辑于2022年,星期六对OLMC的编程配置主要是通过四个选择器进行的。其中,选择器TSMUX为输出缓冲门选取控制信号;PTMUX决定由与阵列来的第8个乘积项是否可作为输出缓冲器的控制信号;OMUX决定是否使用D触发器,当选择组合逻辑电路的结果直送输出时不使用D触发器,但D触发器也不能另作它用。这一缺点在后发展的EPLD、CPLD、FPGA中有了改进。选择器FMUX选取反馈信号,反馈信号可来自本OLMC(序号为n),也可来自相邻OLMC(序号
23、为m,由图7.2.4,m=n+1或n-1)的输出,也可来自I/O引脚的输入信号或选择无反馈。AC0、AC1(n)、AC1(m)决定着各选择器的选通连向。AC0、AC1(n)、AC1(m)为GAL控制字中的信息位(还有其它信息位)。使用者通过编译工具(如ABEL3.0)将编程信息写入GAL的控制字。第33页,共109页,编辑于2022年,星期六OLMC有5种工作模式。图7.2.5(a)、(b)分别为其中的时序输出模式和组合I/O模式。图7.2.5第34页,共109页,编辑于2022年,星期六73 EPLD(Erasable PLD:可擦除的可编程逻辑器件)7.3.1MAX7000系列的系统结构系
24、列的系统结构MAX7000系列PLD采用0.8m CMOS EEPROM技术制造,有6005000个可用门。引脚到引脚的信号延时为6ns,计 数 器 最 高 工 作 速 度 为151.5MHz。图7.3.1为MAX7000E/S器件的结构框图。第35页,共109页,编辑于2022年,星期六图7.3.1 MAX7000的结构框图第36页,共109页,编辑于2022年,星期六MAX7000系列器件由以下几个基本部分组成:逻辑阵列块(LAB)、宏单元(MC)、输入/输出控制块(I/O控制块)、可编程连线阵列(PIA)、扩展乘积项、专用输入线(4个)。4个专用输入端可作为全局时钟(CLK)、清除(CL
25、R)、输出使能(OE)信号,它们是为MC和I/O控制块提供的高速控制信号。各LAB之间通过PIA(Programmable Interconnection Array)互连。信号经PIA传输后增加一个传输延时tPIA。对一确定型号的EPLD,tPIA是一个固定值,不因信号在PIA中的路径不同而改变。这是EPLD/CPLD类PLD器件的优点。第37页,共109页,编辑于2022年,星期六 7.3.2 MAX7000系列的系列的LAB和和MCMAX7000系列中的各个型号可分别提供216个逻辑阵列块(LAB),每个LAB中有16个宏单元(MC),分为两组,每组8个。MC主要由逻辑阵列、乘积项选择矩
26、阵和可编程触发器组成。图7.3.2为MC的结构图。第38页,共109页,编辑于2022年,星期六图7.3.2 MAX7000系列中宏单元(MC)的结构框图第39页,共109页,编辑于2022年,星期六1.逻辑阵列和乘积项选择矩阵逻辑阵列实现“与运算”,图7.3.2中每个与门实现一个乘积项,每个乘积项的变量可选自从PIA来的36个信号以及从本LAB来的16个共享扩展项信号。由逻辑阵列本身可实现5个乘积项,但使用扩展乘积项后可使一个MC实现多至20个的乘积项。乘积项选择矩阵选取乘积项送入或门及异或门以构成组合逻辑函数。后接的可编程触发器的置位(PRN)、清除(CLRN)、时钟(CLK)、时钟使能(
27、ENA)信号也可由乘积项选择矩阵从乘积项中选取。第40页,共109页,编辑于2022年,星期六2、可编程触发器可编程触发器可被设置实现D、JK、T、RS触发器的功能。触发器的时钟工作方式可有三种:选自全局时钟(GCLK1、GCLK2)。这种方式的工作速度最快。带有时钟使能控制的全局时钟。时钟使能信号来自乘积项。时钟来自某一乘积项。第41页,共109页,编辑于2022年,星期六触发器的置位(PRN)、清除(CLRN)均为异步方式。它们可选自乘积项,清除信号也可选自全局清除信号。触发器的输入信号可来自组合逻辑部分(由乘积项选择矩阵决定),也可直接来自I/O引脚。来自I/O引脚时,可使器件的输入建立
28、时间很短(3ns)。此时的可编程触发器可作为寄存器快速捕获输入信号。触发器也可根据需要被旁路掉,由组合逻辑部分直送MC的输出。第42页,共109页,编辑于2022年,星期六3、扩展乘积项使用扩展乘积项可增加MC的逻辑功能。有两种扩展乘积项:(1)共享扩展项由每个MC提供一个未使用的乘积项反馈回本LAB的逻辑阵列(见图7.3.2)。这个乘积项称为共享扩展项。这样,一个LAB的逻辑阵列中可有16个共享扩展项,它们可被本LAB中的任何MC使用。使用共享扩展项后,信号的传输延时会增加一个tsexp量。共享扩展项可增加乘积项中变量的个数。第43页,共109页,编辑于2022年,星期六(2)并联扩展项)并
29、联扩展项一个MC未使用的乘积项可通过并联扩展项的方式提供给相邻的MC使用。图7.3.3给出一个并联扩展项的使用例图7.3.3 并联扩展项使用例第44页,共109页,编辑于2022年,星期六一个LAB中的MC分为两组,每组8个。在每组MC中,排序号高的可向序号低的借用并联扩展项。一个MC可最多实现20个乘积项,其中的5个来自本MC的逻辑阵列,另15个来自相邻的MC。每使用一个并联扩展项,信号的传输延时会增加一个tpexp量。第45页,共109页,编辑于2022年,星期六7.3.3MAX7000系列的系列的I/O控制块控制块I/O控制块主要由多路选择器和输出缓冲门组成。图7.3.4为MAX7000
30、E/S器件的I/O控制块的逻辑框图。I/O控制块可使对应的I/O引脚工作于输入、输出、双向三种方式之一。图7.3.4 MAX7000E/S的I/O控制块第46页,共109页,编辑于2022年,星期六多路选择器为输出缓冲门选取控制信号,使缓冲门呈导通或高阻状态。经PIA来的控制信号来自全局输出使能信号、I/O引脚信号和宏单元输出信号。输出缓冲门可被设置为漏极开路输出形式(仅MAX7000S),增加了输出引脚的驱动功能。输出缓冲门的输出电路摆动速率也可被编程设置为高速或低速,高速输出时,输出电压信号的摆动速率大,但输出信号的边沿毛刺噪声也较大,器件的功耗也较大。低速输出时,输出噪声低、功耗小,但输
31、出信号会增加一个附加延时量。第47页,共109页,编辑于2022年,星期六 74CPLD/FPGA FLEX10K系列是一种高密度、高性能的可编程器件。它可提供10000250000个等效门。内带的嵌入式阵列增强了其运算处理能力。内带的JTAG边界扫描测试电路方便了对其工作状态的检测。FLEX10K的内部连接具有高速、延时固定并可预测的特点。FLEX10K采用CMOS-SRAM(CMOS静态随机存储器)的制作工艺,与EEPROM制作工艺的器件不同,用CMOS-SRAM工艺的PLD的编程配置信息在芯片断电后不能自己保存数据,需另加ROM类(如EPROM、EEPROM、FLASHROM等)器件保存
32、编程配置信息并完成上电自动加载。虽然这增加了应用系统的复杂度,但可实现芯片的在线动态配置,这增强了器件的处理能力和应用灵活性。第48页,共109页,编辑于2022年,星期六7.4.1FLEX10K的系统结构的系统结构FLEX10K主要由嵌入式阵列块(EAB)、逻辑阵列块(LAB)、快速连线带(FastTrack)、输入/输出单元(IOE)四个部分组成。图7.4.1给出了它们的结构关系。图7.4.1 FLEX10K的结构框图第49页,共109页,编辑于2022年,星期六FLEX10K是在业界最先将嵌入式阵列结合进PLD的。借助嵌入式阵列,PLD可更有效地实现复杂逻辑处理,如乘法器、微处理器、DS
33、P等。嵌入式阵列由多个EAB组成,每个EAB基本为一个带有寄存器的RAM(2048位)。LAB呈行列排序,每行嵌入一个EAB。每个LAB内包含有局部连线和8个逻辑单元(LE),每个LAB自身可构成一个低密度PLD,相当于96个可用逻辑门。多个LAB互连结合可构成更 大 的 逻 辑 块,因 而 也 将LAB称 为 构 成 CPLD的“粗颗粒(coarse grain)”。第50页,共109页,编辑于2022年,星期六行、列快速连线带贯穿于整个器件的长、宽,分布于LAB的行列之间,连线带内有多条等长度的连续金属连接线,毎条称为一个互连通道,统称为互连资源。LAB、EAB、IOE之间的互连主要是通过
34、快速连线带连接的。IOE起着引脚接口的作用,其内部主要有一个双向缓冲器和一个寄存器。每个IOE可经编程选择与多个互连通道连接。FLEX10K还有6个专用输入引脚,其连接线遍布整个器件,传送信号的延时偏移较小。它们可用作全局时钟、清除、置位。第51页,共109页,编辑于2022年,星期六第52页,共109页,编辑于2022年,星期六7.4.2FLEX10K的嵌入式阵列块(的嵌入式阵列块(EAB)EAB为一个有2048bit的RAM块,其输入、输出带有寄存器,如图7.4.2所示。图7.4.2FLEX10K的嵌入式阵列块(EAB)第53页,共109页,编辑于2022年,星期六利用EAB可直接构成规模
35、不很大的存储器,如ROM、RAM、FIFO(先入显出存储器)。实现存储器时,可将一个EAB 配 置 为2568(256单 元,每 个 单 元8位)或5124、10242、20481。较大规模的存储器可由多个EAB连接实现,如两个5124的EAB连接可得5128的存储器。EDA工具软件会根据用户的设计自动配置各EAB。EAB中的RAM的入出端均带有寄存器,输入/输出寄存器可用不同的时钟,这给EAB实现FIFO、双端RAM带来方便。第54页,共109页,编辑于2022年,星期六EAB也可用于实现乘法器、数字滤波器、微处理器等。例如将EAB配置为2568只读存储器存入两个4位数相乘的积,将两个4位数
36、据作为地址,这样用一个EAB就可实现44乘法器。这种查找表(LUT)法实现的乘法器的工作速度快于由门电路构成的乘法器。EAB中的内容可在FLEX10K其他部分工作时动态改变,这给PLD器件的应用带来了方便。第55页,共109页,编辑于2022年,星期六 7.4.3 FLEX10K的逻辑阵列块(的逻辑阵列块(LAB)一个LAB中包括8个逻辑单元(LE)、进位链与级联链、控制信号以及LAB局部互连带,结构关系如图7.4.3所示。图7.4.3FLEX10K的逻辑阵列块(LAB)第56页,共109页,编辑于2022年,星期六每个LAB中为8个LE提供4个控制信号,其中的两个可作为时钟,另两个作为置位/
37、清除信号。这4个控制信号可选择来自器件的专用与全局输入信号或来自LAB的局部互连,专用与全局输入信号通过器件时的时延附加偏移很小,适于作为同步控制信号。进位链与级联链是各LE间的快速连接线,信号通过它们传输时的附加时延小于经行、列连线带的时延。进位链与级联链也在同一行的LAB间连接,由图7.4.1并结合图7.4.3可见,某一LAB中第8个LE输出的进位链、级联链送到同一LAB行间隔列LAB的第1个LE的进位链、级联链的输入。但进位链、级联链不能穿过LAB行中间的EAB。各LE的输出可编程选择送入行、列快速连线带,也可反馈回本LAB的局部互连带。第57页,共109页,编辑于2022年,星期六 7
38、.4.4FLEX10K的逻辑单元(的逻辑单元(LE)LE是FLEX10K结构中的基本处理单元。图7.4.4为LE的结构。每个LE包含一个四输入LUT(查找表:Look Up Table),一个带有使能和异步清除、置位的可编程触发器,一个进位链和一个级联链。LE的输出可选送到行、列快速连线带,也可反馈回本LAB的局部互连线带。LE有4种工作模式。图7.4.4FLEX10K的逻辑单元(LE)第58页,共109页,编辑于2022年,星期六1.查找表(LUT)LUT为一种存储结构,可作为编程实现组合逻辑函数的一种方法。与基于乘积项的组合逻辑 函 数 实 现 方 法(GAL、MAX7000中)不同,LU
39、T只需改变存储器的内容即可实现给定变量的任何组合函数,因而也称LUT为函数发生器。图7.4.5为用SRAM和选择器构成的四变量LUT的框图。图7.4.5 4变量查找表(LUT)的结构第59页,共109页,编辑于2022年,星期六例如,实现函数 ,基于乘积项方法需4个与门,一个或门。LUT法根据函数F的真值表(表7.4.2)将F的取值存入SRAM。而将输入变量作为四组二选一选择器的控制信号,低位控制前组、高位控制后组。图7.4.5的可实现4变量的任一组合逻辑函数,其复杂度和传输延时不随乘积项的多少而改变。SRAM查找表被认为是FPGA类PLD的特点之一,因而也将FLEX10K归入FPGA类。由于
40、SRAM的内容在芯片掉电后不能保存,因而FPGA类芯片在应用时需加设非易失性存储器保存配置信息。第60页,共109页,编辑于2022年,星期六第61页,共109页,编辑于2022年,星期六 2可编程触发器可编程触发器可被设置成D、T、JK或SR触发器。触发器的时钟(CLK)、清除(CLR、异步)、置位(PRN、异步)及使能(ENA)可选自专用输入引脚或通用I/O引脚,也可由内部逻辑电路产生。由图7.4.4,可编程触发器和LUT的输出可以各自独立工作、分别输出。这提高了LE的利用率。第62页,共109页,编辑于2022年,星期六 3、进位链进位链提供了LE之间的快速(0.2ns)进位功能。低位L
41、E的进位信号可经进位链送到高位LE。这一特点有助FLEX10K实现任意位的高速加法器、计数器和比较器。图7.4.6为借助进位链由n+1个LE实现的n位全加器。LUT的一部分组成三变量查找表产生两位输入信号及低进位的“和”Si,而另一部分也构成一个三变量查找表产生高进位通过进位链送到高位LE。第63页,共109页,编辑于2022年,星期六图7.4.6借助进位链实现的n位全加器第64页,共109页,编辑于2022年,星期六 4、级联链利用级联链,LE可实现多变量(多于4个)的组合逻辑函数。图7.4.7表示了用n个LE借助“或”级联链实现4n个变量组合逻辑函数F的结构图。可见各查找表呈并联工作,但级
42、联链中每加入一级LE,输出信号的传输时延会附加一个量(约0.7ns)。图7.4.7中的或门也可被设置成与门形成“与”级联链。图7.4.7“或”级联链第65页,共109页,编辑于2022年,星期六进位链和级联链为LAB中的各LE之间提供了快速通道,信号经由它们连接的传输时延小于经由行、列连线带的。各LAB之间的进位链和级联链的连接关系可由图7.4.1见。进位链和级联链连接同一LAB行中的间隔LAB之间,但它们不穿过LAB行中间位置处的EAB。EDA编译器软件会根据要求自动建立进位链和级联链,用户也可用手动方式建立。但过多使用进位链和级联链会限制其它逻辑布线的灵活性。第66页,共109页,编辑于2
43、022年,星期六 5、LE的工作模式根据对LE中的LUT和可编程触发器的设置的不同,可把LE的工作模式分为四种。在这几种模式中,来自LAB局部互连的信号DATA1DATA4作为输入信号并有着不同的作用,输入信号还有进位链、级联链信号及来自LE输出的反馈信号。可编程触发器的时钟选择和异步进位、复位仍可均如图7.4.4所示。第67页,共109页,编辑于2022年,星期六(1)正常模式如图7.4.8所示。LUT被设置为4输入查找表,4个输入来自DATA1DATA4及进位链输入。可编程触发器的输入数据可以是查找表的输出,也可选择直接来自局部互连。触发器和查找表可各自独立工作、分别输出。这种工作模式可接
44、收输入进位链、级联链,产生输出级联链,但没有输出进位链。图7.4.8LE的正常工作模式第68页,共109页,编辑于2022年,星期六(2)运算模式)运算模式3变量变量如图7.4.9所示。LUT被设置为两个三输入查找表。第一个查找表的输出可作用触发器。第二个查找表的输出连接到进位链送下级LE。这种工作模式可用于高速加法器、累加器和比较器。图7.4.9LE的运算工作模式第69页,共109页,编辑于2022年,星期六(3)加/减计数模式如图7.4.10所示。设置LUT为两个三输入查找表,但输入的信号与运算模式不同。本LE的输出Q被反馈回送到查找表的输入,DATA2可作为加/减控制信号与Q及进位链来信
45、号运算后再经进位链送到下级LE。本工作模式中,可编程触发器可以被同步加载数据,这是由DATA3、DATA4控制完成的。图7.4.10LE的加/减计数工作模式第70页,共109页,编辑于2022年,星期六(4)可清除的计数模式如图7.4.11所示。类似加/减计数模式,但DATA2经与门作用触发器入端,因而DATA2可作为同步清除信号。这种模式没有级联链的输入,但有级联链输出。图7.4.11LE的可清除的计数工作模式第71页,共109页,编辑于2022年,星期六7.4.5FLEX10K的快速连线带(的快速连线带(FastTrack)行、列快速连线带由遍布于器件长、宽的一系列连续连接线(互连通道)组
46、成,由图7.4.1和图7.4.12可见快速连线带和LAB、EAB在器件中的分布关系。由图7.4.2、7.4.3可见快速连线带与EAB、LAB的互连。图7.4.12CPLD/EPLD器件中的快速连线带第72页,共109页,编辑于2022年,星期六为提高连接布线的效率,行连线带的互连通道分为全长和半长通道,半长通道仅能连接LAB行的一半,距离较近的LAB可通过半长通道互连。连线带内采用连续连接线的布线方式称为连续式互连结构,这是EPLD/CPLD类器件的布线的特点。在这种连线结构中,不同位置处的逻辑阵列块的连接关系是固定的,这使得信号通过器件的延时可以预测,给器件的调测和使用带来了方便。FPGA类
47、器件采用分段式互连结构,布线效率较高,但有着难以预测信号传输延时的缺点。第73页,共109页,编辑于2022年,星期六 7.4.6 FLEX10K的输入的输入/输出单元(输出单元(IOE)IOE主要包含一个输出缓冲器和一个寄存器,如图7.4.13。IOE使I/O引脚可输入、输出、双向传送信号。当输入信号能保证的建立时间较短时,可用IOE寄存器快速捕获输入数据。输出信号时,IOE寄存器也可提供快速“时钟输出”性能。输出三态缓冲器可提供漏极开路输出的选择。输出电压的摆动速率也可由编程设置,这使得用户可调控输出信号的速度和噪声。第74页,共109页,编辑于2022年,星期六图7.4.13FLEX10
48、K的IOE第75页,共109页,编辑于2022年,星期六每个IOE的时钟可选自两个专用时钟线。IOE的清除、时钟使能、输出使能及时钟选自周边控制总线。共有12条周边控制总线,其上复用分配的信号有8个输出使能、6个时钟使能、2个时钟、2个清除和4个全局信号。每个周边控制总线的信号可由专用输入引脚驱动,也可由某一LAB特定行中的每个LAB的第一个LE驱动。IOE作为输入单元时可驱动两个行通道或两个列通道。作为输出单元时,IOE可通过多路选择器从m个行通道或k个列通道中选择信号,m和k的数值随器件型号而定,例如EPF10K10的m=18,k=16。第76页,共109页,编辑于2022年,星期六 75
49、FPGAFPGA是一类PLD的总称。与CPLD类PLD类比,FPGA由可编程逻辑模块(CLB)、可编程输入/输出模块(IOB)、可编程互连资源三个主要部分组成。图7.5.1给出了FPGA的模块结构。图7.5.1FPGA的模块结构第77页,共109页,编辑于2022年,星期六与CPLD类PLD相比较,FPGA有着以下几个主要特点:1.编程配置技术基于SRAM,便于实现在系统动态重构(ICR:In Circuit Reconfigurability)。但芯片掉电后,配置信息丢失,需另设非易失性存储器件保存配置信息并完成上电自动加载。2.基本逻辑模块的集成规模度与CPLD类的LAB比较相对较小,故称
50、FPGA为“细颗粒结构”的PLD。3.内部布线采用分段式互连结构,布线效率较高。但信号在内互连的传输延时常难以预测。第78页,共109页,编辑于2022年,星期六7.5.1XC4000系列的可编程逻辑模块(系列的可编程逻辑模块(CLB)CLB主要由函数发生器和可编程触发器两部分组成。图7.5.2为CLB的框图。图7.5.2XC4000系列CLB的结构框图第79页,共109页,编辑于2022年,星期六(1)函数发生器一个CLB中包含有两个4输入变量的函数发生器(F、G)和一个3输入的函数发生器(H),它们都是基于SRAM的查找表(LUT)结构。使用函数发生器,CLB可实现的组合逻辑函数有以下几种