专用集成电路设计方法--课件

上传人:仙*** 文档编号:240925249 上传时间:2024-05-18 格式:PPT 页数:182 大小:1.99MB
返回 下载 相关 举报
专用集成电路设计方法--课件_第1页
第1页 / 共182页
专用集成电路设计方法--课件_第2页
第2页 / 共182页
专用集成电路设计方法--课件_第3页
第3页 / 共182页
点击查看更多>>
资源描述
专用集成电路设计方法专用集成电路设计方法1PPT课件课课 程程 安安 排排4专用集成电路 概述 1 周4ASIC的设计流程和设计方法(重点)设计描述,设计流程 1周设计策略,综合方法 1周设计验证,ASIC设计中的考虑因素 1周深亚微米设计方法和设计技术以及EDA技术的发展 1周2PPT课件课课 程程 安安 排排4专用集成电路的测试方法Design-for-Test Basics 2 周4可编程ASIC可编程ASIC器件的结构,资源,分类和开发系统 1周Xilinx,Altera可编程器件 2周3PPT课件第一章第一章 专用集成电路概述专用集成电路概述41.1通用集成电路和专用集成电路通用集成电路:市场上能买到的具有通用功能的集成电路74 系列 ,4000系列,Memory,CPU 等专用集成电路ASIC(Application Specific Integrated Circuits)SUN SPARC Workstation 中的9块电路,某些加密电路等4PPT课件第一章第一章 专用集成电路概述专用集成电路概述专用标准电路ASSP(Application-Specific Standard Products)Modem 芯片,DVD decoder,VCD decoder,audio DAC,Motor Servo DSP 等5PPT课件第一章第一章 专用集成电路概述专用集成电路概述41.2集成电路发展简史6PPT课件第一章第一章 专用集成电路概述专用集成电路概述41.4集成电路设计和制造过程设计过程制定规范(SPEC)系统设计(System Design)电路设计(Circuit Design)版图设计(Layout Design)制造过程制版 掩膜版制造(MASK)流片(Fab)光刻,生长,扩散,掺杂,金属化,蒸铝等产生Pn结,NPN结构,MOS 电阻,电容等 7PPT课件第一章第一章 专用集成电路概述专用集成电路概述制造过程测试(Testing)以Spec和Test Vector 为标准检测制造出的芯片是否满足设计要求封装(Pakaging)划片(Cutting)键合(Wire Bonding)包封(Pakaging)形式:DIP,QFP,PLCC,PGA,BGA,FCPGA等8PPT课件第一章第一章 专用集成电路概述专用集成电路概述集成电路功能测试示意图9PPT课件集成电路设计过程集成电路设计过程10PPT课件第一章第一章 专用集成电路概述专用集成电路概述41.5ASIC技术现状和发展趋势摩尔规律:每十八个月,集成度增加一倍,速度上升一倍,器件密度上升一倍11PPT课件第一章第一章 专用集成电路概述专用集成电路概述专用集成电路预测与发展 SOC(System on a chip)工艺(Process)由0.35um,0.25um,0.18um进入0.13um,0.10um即高速,低压,低功耗EDA设计工具与设计方法必须变革以适应深亚微米工艺的发展(如 Single Pass,Physical Synthesis 等)可编程器件向更高密度,更大规模和更广泛的领域发展(如Mixed Signal)MCMAnalog 电路-高速,高精度,低功耗,低电压ASIC产品的发展动向内嵌式系统(Embeded System)(自动控制,仪器仪表)计算机,通讯结合的系统芯片(Cable Modem,1G)多媒体芯片(Mpeg Decoder Encoder,STB,IA)人工智能芯片光集成电路12PPT课件第二章第二章ASIC设计流程和方法设计流程和方法42.1 概述设计过程分电路设计-前端设计版图设计-后端设计设计流程(方法)分自底向上(Bottom Up)自顶向下(Top Down)数字集成电路设计行为方面结构方面物理方面13PPT课件第二章第二章ASIC设计流程和方法设计流程和方法42.1 概述设计策略设计描述自动化设计的综合方法设计验证方法深亚微米设计方法和EAD 工具的发展14PPT课件第二章第二章ASIC设计流程和方法设计流程和方法42.2设计描述描述方面行为描述结构描述物理描述设计抽象的层次系统算法级寄存器传输级(RTL级)逻辑级和电路级最低层的晶体管级电路15PPT课件第二章第二章ASIC设计流程和方法设计流程和方法42.2.1.硬件描述语言HDL(Hardware Description Language)VHDL VHDL描述能力强,覆盖面广,可用于多种层次的电路描述,VHDL的硬件描述与工艺技术无关,不会因工艺变化而使描述无效。VHDL支持设计再利用(Reuse)方法,支持超大规模集成电路设计的分解和组合。可读性好,易于理解,国际标准,具备通用性。16PPT课件第二章第二章ASIC设计流程和方法设计流程和方法VHDL设计描述由五种基本设计单元组成设计实体说明(Entity declaration)结构体(Architecture body)配置说明(Configuration declaration)集合元说明(Package dec1aration)集合元(Package body)17PPT课件第二章第二章ASIC设计流程和方法设计流程和方法ENTITY mux ISGENERIC(m:TIME:=2ns);PORT(in1,in2,sel:IN BIT;out1:OUT BIT);END mux;-设计实体说明18PPT课件第二章第二章ASIC设计流程和方法设计流程和方法AECHITECTURE twown1 OF mux ISBEGINIF sel=1 THEN out1=1;ELSE out1=in2 AFTER m;END twown1;-行为描述19PPT课件第二章第二章ASIC设计流程和方法设计流程和方法AECHITECTURE twown2 OF mux ISBEGINNOT:Sb=U0(sel);AND2:S1=U1(sel,in1);AND2:S2=U2(Sb,in2);OR:out1=U3(s1,s2);END twown2;-结构描述120PPT课件第二章第二章ASIC设计流程和方法设计流程和方法AECHITECTURE twown3 OF mux ISBEGINNOT:Sb=U0(sel);NAND2:S1=U1(sel,in1);NAND2:S2=U2(Sb,in2);NAND:out1=U3(s1,s2);END twown3;-结构描述221PPT课件VHDL 设计环境22PPT课件第二章第二章ASIC设计流程和方法设计流程和方法Verilog HDL能用于行为描述和结构描述,电路描述同时可以包含不同层次,且能和混合模式的模型一起进行模拟Verilog使用四值逻辑,即0,l,X和Z,其中“X”为不定态,Z为悬空态使用的基本数据类型是 与和 寄存器。23PPT课件第二章第二章ASIC设计流程和方法设计流程和方法2.2.2 行为描述(算法描述)举例 一位全加器24PPT课件第二章第二章ASIC设计流程和方法设计流程和方法Verilog-HDL 描述进位算法描述module carry(co,a,b,c);output co;input a,b,c;wire#10 co=(a&b)|(a&c)|(b&c)end module25PPT课件第二章第二章ASIC设计流程和方法设计流程和方法2.23结构描述RTL(register Transfer Level)级门级(Gate Level)开关级(Switch Level)电路级(Circuit Level)4位加法器的结构描述26PPT课件第二章第二章ASIC设计流程和方法设计流程和方法4位加法器的结构描述module add4(s,c4,ci,a,b);input3:0 a,b;input ci;output3:0 s;output c4;wire2:0 co;add a0(co0,s0,a0,b0,ci);add a1(co1,s1,a1,b1,c0);add a1(co2,s2,a2,b2,c2);add a1(co4,s3,a3,b3,co2);end module27PPT课件module add(co,s,a,b,c);input a,b,c;output s,co;sum s1(s,a,b,c);carry c1(co,a,b,c);end modulemodule carry(co,a,b,c);input a,b,c;output co;wire x,y,z;and g1(x,a,b);and g2(y,a,c);and g3(z,b,c)or3 g4(co,x,y,z)end module28PPT课件第二章第二章ASIC设计流程和方法设计流程和方法 开关级描述(1)module carry(co,a,b,c);input a,b,c;output co;wire il,i2,i3,i4,i5,i6;nmos nl(i3,i4,a);nmos n2(i4,vss,b);nmos n3(i3,i5,b);nmos n4(i5,vss,c);nmos n5(i3,i6,a);nmos n6(i6,vss,c);nmos n7(co,vss,i3);pmos pi(il,vdd,a);pmos p2(i2,il,b);pmos p3(i3,i2,c);pmosp4(il,vdd,b);pmos p5(i2,il,c);pmos p6(i3,i2,a);pmos p7(co,vdd,i3);end module29PPT课件30PPT课件第二章第二章ASIC设计流程和方法设计流程和方法 开关级描述(2)module carry(co,a,b,c);input a,b,c;output co;wire il,i2,i3,i4,en;nmos nl(il,vss,a);nmosn2(il,vss,b);nmos n3(en,il,c);nmos n4(i2,vss,b);nmos ns(en,i2,a);pmospl(i3,vdd,b);.pmos p2(en,i3,a);pmos p3(cn,i4,c);pmos p4(i4,vdd,b);pmos p5(i4,vdd,a);pmos p6(co,vdd,en);pmos n6(co,vss,en);end module31PPT课件32PPT课件第二章第二章ASIC设计流程和方法设计流程和方法42.2.4 物理描述module add4;input a 3:0,b3:0;input ci;output s 3:0,outpu c4;boundary 0,0,100,400;portport a 0 aluminum width=l origin=0,25;port b 0 aluminum width=l origin=0,75;port ci polysilicon width=lorigin=50,0;port a 0 aluminum width=ladd so origin=0,0add a1 origin=0,100end module33PPT课件第二章第二章ASIC设计流程和方法设计流程和方法42.3 设计流程2.3.1 bottom-Up自底向上(Bottom-Up)设计是集成电路和PCB板的传统设计方法,该方法盛行于七、八十年设计从逻辑级开始,采用逻辑单元和少数行为级模块构成层次式模型进行层次设计,从门级开始逐级向上组成RTL级模块,再由若于RTL模块构成电路系统对于集成度在一万门以内的ASIC设计是行之有效的,无法完成十万门以上的设计设计效率低、周期长,一次设计成功率低34PPT课件35PPT课件第二章第二章ASIC设计流程和方法设计流程和方法42.3 设计流程2.3.2 Top-Down设计Top-Down流程在EDA工具支持下逐步成为IC主要的设计方法从确定电路系统的性能指标开始,自系统级、寄存器传输级、逻辑级直到物理级逐级细化并逐级验证其功能和性能36PPT课件第二章第二章ASIC设计流程和方法设计流程和方法关键技术首先是需要开发系统级模型及建立模型库,这些行为模型与实 现工艺无关,仅用于系统级和RTL级模拟。系统级功能验证技术。验证系统功能时不必考虑电路的实现结 构和实现方法,这是对付设计复杂性日益增加的重要技术,目前系统级DSP模拟商品化软件有Comdisco,Cossap等,它们的通讯库、滤波器库等都是系统级模型库成功的例子。逻辑综合-是行为设计自动转换到逻辑结构设计的重要步骤37PPT课件第二章第二章ASIC设计流程和方法设计流程和方法Top-Down设计与Bottom-Up设计相比,具有以下优点:设计从行为到结构再到物理级,每一步部进都进行验证,提高了一次设计的成功率。提高了设计效率,缩短了ASIC的开发周期,降低了产品的开发成本设计成功的电路或其中的模块可以放入以后的设计中提高了设计的再使用率(Reuse)。38PPT课件第二章第二章ASIC设计流程和方法设计流程和方法42.4 设计策略42.4.1 概述设计参数电路性能,包括功能、速度,功耗和应用特性芯片尺寸电路的可测性及测试码生成的难易性;设计周期成功率(Time to Market)经济性(Profit)设计效率(Efficiency)39PPT课件第二章第二章ASIC设计流程和方法设计流程和方法42.4.2 结构设计层次设计从高层到低层从抽象到具体利于多人同时设计使设计思想清晰,设计工作简化规则设计使一个电路系统变成大量不同的子模块尽可能地将电路划分成一组相同或相似的模块,尽可能采用规划性结构的设计,达到简化设计的目的。适用于设计的各个阶段和层次40PPT课件规则性在电路级的体现;用倒相器和三态缓冲器构成的单元电路41PPT课件第二章第二章ASIC设计流程和方法设计流程和方法42.4.3 设计协调模块信号的标准化信号输入的驱动输入信号的寄存输出信号的寄存模块间的连接关系串接结构迭代结构条件选择42PPT课件第二章第二章ASIC设计流程和方法设计流程和方法42.4.4模块定时采用公共时钟(同步时序)结构清晰较易验证可测性好关键路径43PPT课件44PPT课件第二章第二章ASIC设计流程和方法设计流程和方法42.5综合方法42.5.1概述对芯片高性能,高密度,高可靠性,设计周期的要求包含三个层次行为综合逻辑综合版图综合45PPT课件46PPT课件47PPT课件48PPT课件第二章第二章ASIC设计流程和方法设计流程和方法42.5.3逻辑综合和逻辑优化综合过程是将VHDL描述转换成非优化约布尔等式的描述,也就是门级描述,读转换过程是综合软件自动完成的,其过程不受用户控制。RTL级描述-一般使用HDL硬件描述语言,从描述语句和结构特征来分析可归纳为以下几种情况:使用if then-else和case语句来控制流程;反复迭代层次字宽、位向量和位场串行和并行操作算术、逻辑运算和比较操作寄存器的规定和分配。49PPT课件ENTITY counter IS PORT(clk:IN STD_LOGIC;rs:IN STDJLOGIC;count_out:OUT STD_LOGIC_VECTOR(0 TO 2)END counter;ARCHITECTURE behav OF counter IS signal next_count:STD_LOGIC_VECTOR(2 DOWNTO 0)BEGIN IF rs=0 THEN count_out next_count next_count next_count next_count next_count next_count=000;END CASE;count_out MGA CBIC FCCFPGA 用于量少,上市要求快的产品(NRE 和固定成本低,可变成本高(5倍于CBIC)CBIC,FCC 用于产量巨大的产品 (NRE 和固定成本高,但可变成本低,在巨大产量的分摊后,NRE 和固定成本变得不重要)78PPT课件第二章第二章ASIC设计流程和方法设计流程和方法2.7 设计指标-设计指标书的内容如下:ASIC芯片总体说明,包括以下细节:芯片及标识符;芯片功能及用途的简要说明;特性说明;ASIC的封装及管脚说明:芯片的封装说明及封装图;管脚名及管脚类型;管脚功能的简要说明;管脚信号特性的说明。79PPT课件第二章第二章ASIC设计流程和方法设计流程和方法ASIC的使用说明:直流规格:包括电源电压、管脚电平和管脚接口特性。其中管脚电平,应指明读管脚采用的是TTL或CMOS或ECL类型的电平,同时应指明电压最小、最大值范围。交流规格:通常是指ASIC电路的工作频率,包括时钟频率以及输入信号的建立时间和保持时间,输出延迟时间,还包括其它关键信号的定时,例如最小脉冲宽度等。80PPT课件第二章第二章ASIC设计流程和方法设计流程和方法2.9 ASIC设计的综合因素考虑:ASIC 设计要求软硬件的折衷ASIC的实现方式采用的制造工艺及工艺生产线(Foundry)测试封装开发费用和生产成本市场81PPT课件第二章第二章ASIC设计流程和方法设计流程和方法2.10深亚微米设计方法和设计技术2.10.1深亚微米工艺给集成电路设计带来的新问题元件模型变化电路元件延迟减小,互连线延迟增大(5070%,0.35um)串扰和噪声时钟线和电源线的影响功耗和散热问题铝线的电迁移造成连线断裂热载流子对ASIC可靠性的影响逻辑与物理的反复设计问题(0.8um-1次,0.5um-5次,0.35um-10次)82PPT课件第二章第二章ASIC设计流程和方法设计流程和方法2.10深亚微米设计方法和设计技术2.10.2深亚微米设计方法和设计技术的改进高层次设计规划(Floorplanning)在行为级验证成功,进入寄存器传输级设计中生成RTL模块的物理抽象,进行预布局,结合物理特征,得到布局、时序及面积以及互连线信息,由此产生的综合优化的约束条件,便综合生成的门级时序得到较好的控制;经门级功能及时序验证,并生成门级物理抽象,设计规划进 行更精确的布局探索和各模块驱动、延迟的分析计算,并精确地得到关键路径的延时和电路时序;在物理级,将门级设计得到的驱动、延迟信息作一规划分析并作为时序驱动布局布线的约束条件。83PPT课件第二章第二章ASIC设计流程和方法设计流程和方法综合优化技术-进人深亚微米设计阶段,由于互连线延迟超过单元延迟,综合技术必须考虑由此引起的时序问题,改进电路时序特性有以下几点措施:使用预布局得到的互连线模型替代原来的连线负载模型,原来模型是对指定工艺库单元的扇出和RC树的统计模型,它没有考虑深亚微米连线的种种影响,而互连模型是使用设计规则工具得到的互连特性模型。它能比较精确地反映互连延迟、分布特性及RC特性使用设计规划工具得到的时序约束和互连线模型去驱动综合优化过程,由此得到满足时序要求的综合结果。在物理级,将门级设计得到的驱动、延迟信息作一规划分析并作为时序驱动布局布线的约束条件84PPT课件第二章第二章ASIC设计流程和方法设计流程和方法将综合技术与版图设计算法结合起来,产生基于布局的物理综合工具,它将时序约束、逻辑网表和布局拓扑关系一起进行分析、调整。例如,根据电路驱动与负载情况,调整缓冲器和驱动单元的大小私布局;根据时序要求,减少可能存在的长连线及并行走线,减少时钟线的影响,生成较优的时钟树布局。总之,使布局布线能满足电路的时序要求。采用行为级综合技术,这种高层次综合的任务是实现从系统级算法描述到底层结果级表示的转换,其核心技术是调度和分配。调度(scheduling)是将操作贼给所指定的控制步,在满足约束条件下使得给定的目标函数(例如控制步数、硬件资源、延迟和功耗)最小。分配是将操作和数据赋给相应的功能单元和寄存器,其目标是便所占用的硬件资源最少。85PPT课件第二章第二章ASIC设计流程和方法设计流程和方法模拟技术-模拟是设计的基础,从行为级、RTL级到门级,从逻辑功能摸拟、时序模拟到故障模拟,模拟过程就是验证的过程。对于深亚微米设计,设计的数据巨量增加,电路的时序复杂性等对模拟技术提出更高的要求。总的来说,近年来模拟技术有以下几方面的发展:传统的线性延迟模型不再适用,需要建立考虑高速、低电压、低功耗以及负载和工艺影响的模型;精碗的模型可以保证电路功能和时序的设计正确,这是ASIC设计过程的核心门级模拟过程变为先进行单位延迟的功能模拟,得到门级网表,然后使用设计规划工具估算由于互连线、负载、输入信号变化速率等影响产生的延迟信息,再将它们和网表及功能模型一起模拟,得到门级功能和时序结果86PPT课件第二章第二章ASIC设计流程和方法设计流程和方法采用基于时钟的节拍式(Cycle-Based)模拟技术,它比传统使用的事件驱动技术耍快几个量级。这种技术通常适用于同步电路的功能验证,但不能作时序验证。Synopsys公司近年推出的CycloneRTL级迷你软件,是利用高层次节拍模拟技术开发的,适用于VLSI的RTL级设计及相应的测试程序进行仿真,由于不需要象常规的将RTL级描述转换为门级描述长时间的编译步骤,使模拟时间大大缩短。深亚微米电路的时序分析成为设计的中心问题,静态时序分析是解决电路时序问题行之有效的方法87PPT课件第二章第二章ASIC设计流程和方法设计流程和方法布图技术-布图技术是集成电路芯片物理设计的关键技术,虽然早在八十年代;已经实现了布局布线自动化,但由于深亚微米设计中又出现了时序问题和设计数据量巨大的问题,显然采用以前的布图技术是无法解决:时序驱动(Timing Driven)和性能驱动(PerformanceDriven)是近几年布图技术发展的方向。对于VLSI芯片设计来说,希望有一种快速的时序驱动,性能驱动的布局布线技术,这样可以在短时间内试探多种布图的可能性,而且可以将快速预布局、预布线得到的结果反馈给综合优化工具,对网表和时序进行优化,这种技术也是物理设计规划工具的基础进入深亚微米阶段,使用层次化设计和购买知识产权(IP)模块的可能性增多,因此布局布线工具应能灵活地处理模块,能够把IP模块、第三方厂商提供的模块和设计人员自已开放的模块有机地组合起来88PPT课件第二章第二章ASIC设计流程和方法设计流程和方法深亚微米的布线设计是一重要课题,金属线的层数已从二、三层上 升到六层左右。因此首先要支持多层布线,可以进行通道式或基于区域的布线,也可以是二者混合型的。通道式布线是一传统方法,它要求单元排列成行,行与行之间留出互连线通道,通道宽度可以调节,以保证100%约有通率。另一种区域布线是假设单元布局固定,在确定的区域内完成布线。前一种方法无法预测芯片大小,后一种方法比较死板苛求两者的优化组合是所谓混合型布线方法。布线还要考虑采用宽线条克服 电迁移问题,避免高频串扰,以及对平行线分布电容计算,对电源线、时钟线也应合理分布,以保证时序要求总之提高布图质量和布通率,满足时序要求是布图的目标。89PPT课件第二章第二章ASIC设计流程和方法设计流程和方法内嵌式系统和软硬件协同开发技术-内嵌式式系统是硬件与软件协同设计实现特定要求的系统,在内嵌式系统中,通常包括有微处理器模块、专用电路模块以及存放应用软件代码的ROM、RAM等。在设计过程中需要硬件与软件紧密配合,共同完成一定的电路功能,所以也称为硬软件协同设计设计重用方法(Design Reuse)-片上系统的设计是极其复杂的,采用设计重用方法是行之有效的。设计重用方法是将 ASIC设计中核心部分的设计可以不用修改或只作少量修改就可用在其它的设计之中。也就是说,对于一些有价值的模块或IP(Intellectual Property),设计一次,可以便用多次。设计重用在概念上是简单的,但是实现起来也有一定的难度。首先 设计重用方法需要一定的设计环境和设计工具,常规的Top-Down设计方法应作适当扩展。首先要建立设计重用模块的系统级模型及相应的模 块库,也就是用VHDL或Verilog语言编写行为级模型,进行行为级验证然后是综合优化,直到物理设计和工艺制造,经测试和试用证实设计正确无误后,90PPT课件第二章第二章ASIC设计流程和方法设计流程和方法才能把该模块的行为级模型、RTL级模型等存人重用模块库。因此设计工具应具有对重用模块的建立,修改,调用和管理的功能 也应具有对重用模块和其它方式生成的模块协同设计和界面格式转换的能力。设计重用的应用一般有两种情况。一种情况是重用模块包含了行为级模块和RTL模块,也就是事先已经把模块的行为级描述综合成适合于某一工艺过程的形式,设计时只需要将ASlC行为级模型分配成专用工艺过程的RTL级描述,然后调用所需的RTL级模块,一起进行逻辑综合.第二种情况是针对某一特定工艺过程,将设计重用模块除了硬件块外还有软件块。软件块是执行特定操作的一般程序。例如微处理机中的微程序,它们通常以代码形式放置在ROM中,这种软件硬化的ROM也称为固件,因此软件块一般以ROM形式出现。91PPT课件第二章第二章ASIC设计流程和方法设计流程和方法92PPT课件第二章第二章ASIC设计流程和方法设计流程和方法设计重用也是深亚微米设计的主要方法,设计重用也是对IP的再使用,通常可以把设计成功的子模块建成一个核心模块库,以便在以后的ASIC RTL级设计中调用。常用的核心模块可以有MPU、DSP、A/D、D/A、RAM、ROM、输入/输出接口以及加法器、乘法器等。设计重用方法对于超大规模或更大规模的集成电路设计尤其适用。2.11集成电路 CAD技术发展概况计算机辅助设计(CAD)计算机辅助测试(CAT)计算机辅助工程(CAE)计算机辅助制造(CAM)电子设计自动化-EDA(Electronics Design Automation)93PPT课件第二章第二章ASIC设计流程和方法设计流程和方法电子设计自动化-EDA(Electronics Design Automation)第一代-绘图及版图图形编辑,七十年代IC发展初期第二代-逻辑模拟和版图设计自动化,八十年代,集成电路巳从中规模发展到大规模第三代-概念驱动设计和Top-Down的设计方法l;从八十年代后期第四代-深亚微米设计技术94PPT课件第二章第二章ASIC设计流程和方法设计流程和方法95PPT课件第四章第四章 可编程可编程ASIC44.1概述可编程逻辑器件(programable Logic Device)简称PLD70年代 PROM,PLA,PAL80年代初 GAL Latice 公司84年 EPLD(CPLD)Altera 公司85年 FPGA Xilinx 公司90年代0.18um,1.8V,56层布线,几百万门,速度200MHz,内部RAM,片内DLL,丰富的布线资源.强大的EDA软件和IP支持,朝高速,高密度,低功耗,大容量方向发展 96PPT课件第四章第四章 可编程可编程ASIC44.1概述可编程ASIC(FPGA,CPLD)特点规模较大(几千门几百万门)适用于时序,组合等各种逻辑电路大部分具有重复特性设计周期短,风险小,设计费用低现场和在系统编程97PPT课件第四章第四章 可编程可编程ASIC44.2可编程ASIC器件的结构,资源和分类 44.2.1基本结构可编程ASIC器件包含有三种编程资源:可编程逻辑功能块(LOGIC FUNCTION BLOCKS)可编程输入输出块(I/O BLOCKS)可编程连线资源(INTERCONECT)98PPT课件第四章第四章 可编程可编程ASIC99PPT课件第四章第四章 可编程可编程ASIC100PPT课件第四章第四章 可编程可编程ASIC4可编程逻辑功能块(LOGIC FUNCTION BLOCKS)可编程逻辑块是ASIC器件实现逻辑功能的主要部分。目前的可编程ASIC器件中有三种不同类型的基本逻辑单元基于查找表的逻辑单元结构基于多路选择器的逻辑单元结构。传统可编程阵列逻辑。101PPT课件第四章第四章 可编程可编程ASIC4可编程输入一输出块I/O提供外部封装腿与内部逻辑块之间的接口。I/O的设计须考虑许多要求支持输入、输出、双向、集电极开路和三态输出模式与同一生产厂家的其它可编程ASIC系列芯片接口可根据需要选择高驱动能力高速或低功耗、低噪声等等。要求1/0块能兼容多个电压标准102PPT课件第四章第四章 可编程可编程ASIC4可编程连线资源提供逻辑功能块与逻辑功能块之间及逻辑功能块与I/O之间的连线。连线资源的延迟特性直接影响芯片的性能。按布线延迟可否预先估算,可编程互连资源可分为统计型和确造型二类103PPT课件第四章第四章 可编程可编程ASIC44.2.2编程技术-可编程逻辑器件是通过可编程开关来实现器件内部连线和逻辑功能块的编程控制。习惯上把编程开关的实现方法称为编程技术。可编程ASIC的编程技术主要可分为静态RAM (SRAM)编程技术浮栅编程技术反熔丝编程技术 104PPT课件第四章第四章 可编程可编程ASIC4SRAM编程技术SRAM编程技术是由静态存贮单元来实现编程控制的。对芯片内阵列分布的SRAM加载不同的配置数据,芯片可实现不同的逻辑功能。编程控制是用SRAM单元去控制传输门或多路选择器,每个静态存储单元载入配置数据中的一位,控制FPGA逻辑单元阵列中的一个编程选择。采用SRAM编程技术可以重复编程,且电路编程构造与再构造的速度很快105PPT课件第四章第四章 可编程可编程ASIC106PPT课件第四章第四章 可编程可编程ASIC4SRAM编程技术采用SRAM编程技术,芯片一旦断电,SRAM编程数据就会丢失,因此使用时需要在ASIC芯片外附加一个非易失性的存储器。通常用一个PROM或EPROM器件实现。并且由于内部编程控制使用大量的传输门开关,使电阻较大,对信号的传输速度有一定影响。每个SRAM编程点一般需要6-7个NMOS管实现,因此芯片的面积相对较大。107PPT课件第四章第四章 可编程可编程ASIC108PPT课件第四章第四章 可编程可编程ASIC采用SRAM 编程技术时,通常将一定格式的配置数据存放于ASIC芯片外附加的PROM或EPROM中,在系统加电进行配置时,将配置数据加入ASIC芯片内的SRAM单元中,亦可由微处理器控制,直接将数据加载SRAM单元中目前采用SRAM编程技术的ASIC产品,主要有XilinxFPGA各个系列,AlteraFLEX各个系列和APEX系列的产品以及AT&T公司的DRCA系列产品等。Actel的系统可编程门阵列(SPGA)也采用了SRAM编程技术109PPT课件第四章第四章 可编程可编程ASIC4反熔丝(Antituse)编程技术反熔丝编程技术是相对于熔丝技术而提出的。熔丝技术用于PROM,PLD器件中,编程时把熔丝编程器件的熔丝烧断。反熔丝技术则相反,编程前,编程器件呈现十分高的阻抗(100M),当加上编程电压时,则建立低电阻(500),处于永久的导通状态,因而是一次性编程的。反熔丝编程的优点:开关面积小,导通电阻低。不需要附加PROM或EPROM,保密性好。主要缺点是一次性编程,成本相对提高。110PPT课件第四章第四章 可编程可编程ASIC4反熔丝(Antituse)编程技术Actel公司的ACT系列FPGA采用反熔丝编程技术。美国的QuickLogic公司及Xlinx8100系列,也采用反熔丝技术。由于需求问题,Xlinx已放弃反熔丝技术,Cypress也不采用反熔丝编程元件而要推出基于SRAM的产品。111PPT课件第四章第四章 可编程可编程ASIC4浮栅编程技术浮栅编程技术包括EPROM、EEROM及闪速存储器(Flash Memory)。这三种存储器都是用悬浮栅存储电荷的方法来保存编程数据的,因此在断电时,存储的数据不会丢失浮栅编程技术具有可擦除性,电路可再构造,并且可作为非丢失器件,在掉电后仍能保持编程数据,不需要外接永久性存储器。浮栅编程技术的工艺较复朵,功耗比较高。浮栅编程技术的主要产品是Altera公司的Classic和MAX系列产品,Latice,AMD公司的产品也采用浮栅编程技术,Xlinx的CPLD产品采用FastFlash技术。112PPT课件第四章第四章 可编程可编程ASIC113PPT课件第四章第四章 可编程可编程ASIC114PPT课件第四章第四章 可编程可编程ASIC44.2.3可编程逻辑单元结构可编程逻辑单元是可编程ASIC的核心,是可编程ASlC器件实现各种逻辑功能的基础,目前可编程ASIC的逻辑单元结构主要有以下几类:基于查找表LUT(Look-up-Table)的结构基于多路选择器(MUX)的结构基于传统PLD结构的可编程逻辑单元115PPT课件第四章第四章 可编程可编程ASIC4基于查找表型(LUT)可编程逻辑单元结构-基于查找表型可编程逻辑单元结构的器件,其组合逻辑功能是通过“查找表”来实现的。查找表LUT是利用数字存储技术将逻辑功能真值表存储起来,通过“查表”方式实现逻辑功能4查找表型结构的优点是可以构成相当大的逻辑。目前采用这种结构的产品有Xlinx的XC3000,XC4000,XC5000系列及Spartan系列和Virtex系列;Altera的FLEX10K,FLEX8K,FLEX6000系列;APEX20K系列也具有LUT结构。116PPT课件117PPT课件118PPT课件第四章第四章 可编程可编程ASIC4例子:用查找表结构实现一位全加器的方法。一位全加器有三个输入Ao,Bo和进位输入Ci;有二个输出:和数输出So和进位输出Co。其逻辑方程为:4 So=Ao+Bo+Co,Co=AoCi+BoCi+AoBo4 用查找表结构实现一位全加器,要求查找表有三个以上的输入端和二个以上的输出端。若选用XC3000系列可将原来五输入的32xl SRAM分成两个16x1的存储器;每个存储器只用1半,即用两个三输入的8X1存储器分别存入So,Co的值。4如果选用含有四输入查找表的系列实现一位分加器,需要用二个四输入16Xl SRAM,每个存贮器也只用1半。119PPT课件120PPT课件第四章第四章 可编程可编程ASIC4多路选择器型可编程逻辑单元结构-多路选择器型可编程逻辑单元结构中基本的构成部分是多路选择器(Mux),它是利用多路开关的特性来形成不同的逻辑功能。4例如具有选择输入s和输入信号a和b的多路开关,输出的f=sa+sb,当置b为逻辑零时,多路开关实现与的功能:f=sa;当置a为逻辑1时,多路开关实现或的功能,f=s+b。4 Actel公司的Act系列器件的可编程逻辑单元采用MUX型结构。图(413)为Act-l的逻辑模块(称为LM)。它可以完成任何输4入为二变量的功能、大部分三变量功能及某些四变量功能。Act-l的LM由三个两输入多路开关和一个或门成,共有八个输入和一个输出,可以实现的函数为:4 _ _ _4 f=(S3+S4)(S1w+S1x)+(S3+S4)(S2y+S2z)4通过对输入变量进行不同的设置,可以实现7力种逻辑函数4多路开关型的LM结构其基本单元较小,结构简单,逻辑单元的利用率高,但因此而需要大而复杂的连线资源121PPT课件122PPT课件第四章第四章 可编程可编程ASIC4传统PLD类型的可编程逻辑单元结构-现今流行的复杂PLD即CPLD结构是从传统PLD结构演变而来的。以Altera公司的MAX系列CPLD为例,它的宏单元中的逻辑阵列是由可编程宽输入的与阵列和固定的或门及异或门组成。我们知道,任意组合逻辑都可以用输入变量的乘积项之和形式表示出来。因此这种AND-OR阵列结构能够产生输入变量的任意组合逻辑。4MAX7000系列宏单元由逻辑阵列,乘积项,选择矩阵和可编程触发器组成,可用较少的功能块来形成逻辑函数,这样可以降低连线的规模,使连线延迟得到较好的控制4这类结构的缺点是输入端有效利用率不可能很高,导致芯片面积利用率的降低。同时CPLD结构的乘积项阵列用到线与结构和上拉电阻,故增加了静态功耗。123PPT课件124PPT课件第四章第四章 可编程可编程ASIC4传统PLD类型的可编程逻辑单元结构-现今流行的复杂PLD即CPLD结构是从传统PLD结构演变而来的。以Altera公司的MAX系列CPLD为例,它的宏单元中的逻辑阵列是由可编程宽输入的与阵列和固定的或门及异或门组成。我们知道,任意组合逻辑都可以用输入变量的乘积项之和形式表示出来。因此这种AND-OR阵列结构能够产生输入变量的任意组合逻辑。4MAX7000系列宏单元由逻辑阵列,乘积项,选择矩阵和可编程触发器组成,可用较少的功能块来形成逻辑函数,这样可以降低连线的规模,使连线延迟得到较好的控制125PPT课件第四章第四章 可编程可编程ASIC44.2.4互连特性从互连特性上可将可编程逻辑器件结构分为两大类。类似PAL的确定型结构,类似于门阵列的统计型结构126PPT课件第四章第四章 可编程可编程ASIC4确定型互连结构-确定型结构提供的互连特性是在实现相同功能时每次实现相同的布线模式。所以这类PLD器件布线延迟特性是确定的。4 Altera公司器件属确定型互连结构。图(416)为MAX7000 系列器件的结构示意图。其PIA(Programmable Interconnect Array)可编程互连阵列为全局总线可编程通道,通过编程将各逻辑阵列块相互连接构成所需的逻辑。MAX7000的所有专用输入,I/0控制和宏单元输出均馈送到PIA,PIA把这些信号送到整个器件内的各个地方。PIA好象一个巨大的开关块。它使得一个LAB的输出很方便地与另一个LAB 的输入相连。并且通过固定的开关数,使得布线与延迟计算变得非常简单,并且确定。127PPT课件128PPT课件第四章第四章 可编程可编程ASIC4图(417)是Altera的FLEX8000系列的结构图,FLEX8000器件内部逻辑单元与I/O引脚及逻辑单元之间的互连是通过快速通道(FastTrack)。FastTrack是由一系列水平和垂直的连续式布线通道组成。每个行连线带由上百条行通道组成,每个列连线带有几十条列通道。信号按一定的规则通过行通道、列通道在LAB之间及LAB与I/O之间传输,它们的连线延迟基本也是固定的129PPT课件130PPT课件第四章第四章 可编程可编程ASIC4统计型互连结构4 统计型互连结构的设计系统,在执行相同的功能时每次给出不同的布线模式。因而延迟信息也不相同。这种结构的设计系统一般允许设计者对布线作速度或逻辑单元数目等性能方面的限制性要求。Xlinx和Actel公司的FPGA被称为是统计型结构的。4 图(418)为XC3000系列的连线结构图。XC3000系列的布线资源有通用连线、直接连线及水平和垂直长线几种,它的通用连线在CLB与CLB或CLB与IQB的行列之间,由水平金属线段和垂直金属线段组成,通过开关矩阵把各线段连在一起。XC3000系列器件,布线时两块可编程逻辑单元之间的连线路径,通过的开关数,一般是不确定的。因而这种连线资源的延时通常是不可预测的。Xlinx FPGA相同,ActelFPGA器件的布线模式也是不确定的。图(4.19)为Actel的内部可编程连线结构示意图。由图可见,它的水平互连线是各种长度的金属线通过反熔丝开关编程连接,垂直通道的互连线是一系列连续的连线,它的连线路径也是不确定的,延迟是不可预测的。131PPT课件132PPT课件第四章第四章 可编程可编程ASIC44.3可编程ASIC开发系统用可编程ASIC(FPGA/CPLD)芯片构成ASIC,要有相应的开发软件,它一般包括:设计输入软件(Design Entry)单元库(Library)仿真软件(Simulation)物理设计软件(Mapping,P&R,Make bit Stream,Download)4431可编程ASIC设计流程可编程ASIC的设计流程如(420)所示,即设计输入,设计实现和设计仿真133PPT课件134PPT课件第四章第四章 可编程可编程ASIC设计输入:设计输入阶段的目标是产生一个网表文件,以供设计实现用。常用的设计输入方法有以下几种:原理图输入-利用原理图编辑器并使用单元库中的元件符号进行逻辑设计硬件描述语言:除原理图输入外,设计输入也常采用硬件描述语言135PPT课件第四章第四章 可编程可编程ASIC设计实现-设计实现是设计开发过程的核心部分,设计实现阶段将产生一个完整的己布局布线的设计和一个配置位流文件。设计经过优化,分配成适合相应器件逻辑功能块和其它资源的小块,并选择合适的布局、布线算法。布局是把逻辑单元分配到ASIC芯片内物理位置的过程。布局采用的算法与器件结构有关。布线是完成ASIC器件内所有逻辑连接的过程,自动布线软件采用的算法同样与器件结构有关。如ActelFPGA器件采用分段通道布线,xilinxFPGA器件采用迷宫布线算法。最新的设计实现工具在布局、布线期间对整个信号通道执行时序分析。因此用户可以对设计规定性能要求。新的设计实现工具还具有支持递增设计的特性。它可以使设计在原有基础上进行一些小的改动而保存原有未变部分的物理实现和时序特性,这个部分不需要重新仿真和测试。设计实现工具采用的算法与器件结构有密切的关系,因而各个可编程ASIC制造公司都提供由他们本公司开发的设计实现软件136PPT课件第四章第四章 可编程可编程ASIC设计仿真-通常用于设计的有二类仿真,一类是逻辑仿真,包括功能仿真和时序仿真,另类是时序分析。功能仿真是在完成设计输入和产生网表后进行,是对设计的逻辑功能正确性的验证,没有物理设计的时序信息。时序仿真是在物理设计(布局、布线)完成获取时序信息后进行。功能和时序仿真通常采用第三方提供的或由本公司设计开发的仿真器进行,仿真器需要输入激励,具有输出显示并有返回注释的功能。137PPT课件第四章第四章 可编程可编程ASIC时序分析器是一种静态仿真工具。时序分析工具不需要输入激励而代之以时序分析器对关键路径的验证。大部分设计系统可将时序分析检验到的时序违反返回至设计输入,并且在重新完成布局、布线步骤之前标注关键路径的特征,在下一步使用布局、布线软件时给予特别的注意,以便布线延迟最小。但这是一个冗长的迭代过程。使用逻辑综合可以自动进行这个设计过程的迭代阶段。在使用逻辑综合时,关键路径的信息被计算到逻辑综合中,并且时序约束被建立于前馈路径(这称为是正向注释)送往布局布线软件。4 设计仿真是捕获和排除一些潜在故障的恰当方法,保证设计在最坏情况下,可靠的工作。138PPT课件第四章第四章 可编程可编程ASIC44.3.2 Xilinx设计开发系统 4Xilinx可编程ASIC的设计流程主要包括:输计输入设计实现设计仿真139PPT课件第四章第四章 可编程可编程ASIC140PPT课件第四章第四章 可编程可编程ASIC41、设计输入-Xilinx可以原理图或ABEL,VHDL,VerilogHDL硬件描述语言进行设计输入,亦可采用混合型的设计输入方法。Xlinx可使用第三方设计输入与仿真工具,也可以与产生EDIF网表文件的其它工业标准CAE工具接口,(包括Synopsys,Cadence,Viewlogic,Orcad,ALDEC ACTIVE-HDL等等。)141PPT课件第四章第四章 可编程可编程ASIC4Xilinx设计通过utility程序将xilinx设计输入工具产生的网表转换成xilinx网表格式XNF文件,以供xilinx设计实现与仿真用。4Xilinx提供对多种综合工具的接口,包括LogiBLOX Express,状态编辑器等。LogiBLOX工具是基于图形的高级语言,可以利用原理图编辑器输入并设计,产生通用的高级功能模块包括加法器,计数器,译码器,移位寄存器和RAM、ROM等,为设计提供了确定尺寸和功能 的模块库。LogiBLOX编辑器能自动地为每个功能模块选择相应的结构资源,并对设计进行优化。142PPT课件第四章第四章 可编程可编程ASIC4XilinxExpress软件具有对FPGA逻辑分析,综合及优化的功能。Express工具输入VHIDL或VerilogHDL格式的文件,并能对HDL源文件进行分析,检查句法错误。Express以选定的Xilinx器件结构对VHDL或VerilogHDL输入文件进行逻辑综合并根据用户的设计约束,时序要求对设计和算法功能进行优化,产生一个优化的XNF网表文件,以供设计实现工具用。4Xilinx开发软件的设计环境支持层次设计输入;顶层的符号图形定义功能块,底层定义每个功能块的逻辑,层次设计有助于构思,易于设计调试,易于递增设计和平行式设计。使用层次设计时应注意考虑层次名和对器件和网线的命名。层次设计允许对不同层次的元件采用不同的设计输入工具。143PPT课件第四章第四章 可编程可编程ASIC42、设计实现-XilinxFPGA,CPLD设计流程在完成设计输入后用Xilinx自主开发的物理设计软件以高度自动化程度完成从网表格式转换到产生配置FPGA的位流文件的全过程。4Xilinx XACT设计实现软件的流程可以用Xmake程序来自动进行,它包括以下几个部分(1)XNF转换(XNF-Translation)XNF文件是Xilinx网表格式文件,是一个含有设计的逻辑及连接信息的ASCII文本网表格式,也支持设计的时序信息。不同的输入工具需用不同的格式转换程序来完成格式转换。144PPT课件第四章第四章 可编程可编程ASIC4(2)合并(Merging)合并分层设计及多设计输入源产生的多个文件为一个XNF文件4(3)映射(Map)映射取XNF文件并将逻辑映射到Xilinx逻辑单元阵到结构中,映射步骤产生map文件。4(4)布局一布线(Place and Route)XMake使用自动布局、布线软件APR或PPR对设计自动布局布线。4(5)产生位流文件XMake用makebts程序产生位流文件bit,用于FPGA编程。145PPT课件第四章第四章 可编程可编程ASIC43、设计仿真-Xilinx设计仿真包括功能/时序仿真,静态时序分析及在电路上验证。Xilinx设计仿真采用第三方仿真工具,这些仿真工具部集成到Xilinx设计开发系统中。4 功能仿真在设计输入,产生网表文件后进行。集成工具可以从输入软件直接进入仿真软件。此时网表文件只有元件延时信息。4 时序仿真在完成布局,布线并将布线延时信息反馈注释到网表文件后进行。静态时序分析在实现布局-布线前和布局-布线完成后进行。4 Xilinx支持交互式静态时序分析工具。Xdelay静态时序分析器可以快速检测关键路径和时序危险。并在时序分析报告申提供详细的延时信息。4 用Xlinx加载电缆在实际电路板上给器件配置位流文件,可以在典型工作条件下对设计进行测试,验证。146PPT课件第四章第四章 可编程可编程ASIC4Xilinx设计开发软件,有第三方支持的设计输入和设计验证工具,有自主开发的设计实现软件,有多种形式的设计输入方式,还有统一的单元库和LogiBLOX库。Xilinx提供给用户的是集成化的设计工具和设计环境,Xilinx集成化的设计工具有两个系列的产品。Foundation系列Alliance系列147PPT课件第四章第四章 可编程可编程ASIC4Foundation系列是一个高度集成的工具,它以集成化的设计环境提供给设计者完成FPGA,CPLD器件整个设计流程的工具,包括设计输入,逻辑综合与优化,仿真及时序驱动的设计实现。Foundation系列支持标准HDL设计,包括VHDL,Verilog HDL和ABEL。Foundation系列还集成了LogiBLOX模块生成器和Xilinx的CORE Generator系统。148PPT课件第四章第四章 可编程可编程ASIC4Alliance系列软件-Alliance系列软件是开放式的系统软件,可以让用户根据应用需要,自由选择EDA设计环境,Alliance系列采用了 Xilinx 先进的时序驱动设计实现软件,含有LogiBLox模块发
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!