1、2022-11-251 第八章第八章 全定制设计方法全定制设计方法 清华大学计算机系 2022-11-252 1 全定制电路的结构化设计特征全定制电路的结构化设计特征 结构化设计是由Mead和Conway首先提出来的,其目的是让系统设计者能够直接参加芯片设计以实现高性能系统。在结构化设计中采用以下几方面的技术。2022-11-253一、层次性:一、层次性:l原因:由于系统规模很大,设计复杂性很高,层次式设计可以降低设计复杂性。l层次式设计分类:自底向上(bottom-up)自顶向下 (top-down)两者结合l层次式设计方法:系统划分与布图规划2022-11-254l系统划分:系统划分:在功
2、能设计与寄存器级设计完成后,将模块划分成合适的单元组合,然后分别对单元电路进行逻辑级、电路级乃至版图级的设计。划分的关键是评价函数的确定。l布图规划:布图规划:与全定制设计功能级并行的工作是芯片面积的规划,称为布图规划,其目的是为每个模块确定一个布图面积的大小及在芯片上的相对位置。在布图规划中,只是在较高层次上完成了对软模块的形状和大小的估计,以及它们的引线端的分配。2022-11-255二、模块性二、模块性l模块有明确定义的物理接口:模块名称、功能、层类、尺寸与外部互连端点的数目,名称及位置等。如目前广泛使用的IP模块。l模块性有助于设计人员明确问题并做出文件接口。每个人只设计芯片的一部分。
3、2022-11-256三、规则性三、规则性l规则化:是指模块内部可以随功能不同而不同,但模块间的接口如电源、地线、时钟线、总线等是公共的。l方法及优点:采用单元重复的方法是结构化设计的一种好方法,这样既简化设计,又减少错误,同时使结构规则化。l规则化的层次:规则化可以在设计层次的所有级别上存在。2022-11-257四、局部性四、局部性 通过对模块接口的很好定义,可以有效地使该模块的内容变得对任何外部接口不再重要,可以将每个模块看作一个黑盒子。设计时不关心模块内部的情况,这样减少了模块表现的复杂性。2022-11-258五、手工参与五、手工参与l 全定制设计中往往需要手工参与:由于设计系统的复
4、杂性、结构灵活性、性能的约束性,人的经验是计算机所无法取代的。l手工参与设计的实质是在各个设计层次上,人工干预和协调各种EDA工具的应用,目的是取得设计的最高效率和最好结果。2022-11-259 全定制设计流程全定制设计流程 设计说明 功能设计 单元版图设计与验证 寄存器传输级设计 寄存器模块的逻辑设计 逻辑单元的电路设计 芯片版图验证 芯片版图设计 布图规划 设计规则 电学参数 功能设计要求 掩膜版数据输出 测试图形生成 测试数据输出 2022-11-25102 几种全定制设计方法几种全定制设计方法 基于几何图形的交互版图编辑符号法积木块自动布图2022-11-2511一、交互图形编辑:一
5、、交互图形编辑:交互图形编辑方法是一种人工设计方法:l绘图、显示、插入、移动、删除、复制、拉伸等命令。l联机的的设计规则检查功能。l开窗、缩放、窗口移动。l设计性能高、版图质量高、效率低,设计周期长。2022-11-2512 设计检查设计检查 l由于手工设计方法不可避免地会产生错误。因此,必须在版图编辑后进行版图验证。l版图验证包括:设计规则检查、电学规则检查、版图与原理图对照检查以及电路网表提取,版图寄生参数提取和后模拟。2022-11-2513 二、符号法版图设计方法二、符号法版图设计方法 符号法版图设计方法(symbolic layout approach)是一种半自动设计方法:(1)使
6、用晶体管、通孔和连线的符号进行输入和编辑并产生一个拓扑版图。(2)根据给定的设计规则将拓扑版图转换成物理版图。(3)版图压缩,以优化版图面积。2022-11-2514 符号法版图设计的特点符号法版图设计的特点 符号法版图设计方法保持了交互图形编辑方法所具有的较高布图密度和灵活性的优点,且由于设计规则是由符号法版图编辑器维持的,用户在操作时不需要考虑,因而大大降低了设计工作量。2022-11-2515三、积木块自动设计三、积木块自动设计 积木块自动布图(Building Block Layout)又称为任意形状单元布图,简称作BBL。它是基于单元库的一种最为灵活的设计方式。限于实现的困难,大部分
7、的BBL模式单元版图都为矩形,它们可被安置在芯片的任何位置上。2022-11-2516 积木块自动布图积木块自动布图 ROM/RAMA/DPLAI/O转换数据通路压焊块第一层金属第二层金属通孔随机逻辑2022-11-2517 BBL布图分类布图分类l有通道:BBL模式下的布线区域比较复杂,未被模块占用的芯片空间为布线区。通常要先把它们划分成矩形的通道区,然后再按一定次序逐个进行布线,此时模块上面不能走线。l无通道:随着多层布线工艺的出现,模块上允许有三层以上的走线,出现了“跨单元布线”(Over the Cell Routing)技术。它使得布线区域大大减小。2022-11-2518 BBL布
8、图设计特点布图设计特点 l优点:布图密度高、布图灵活、设计性能高,它是一种很理想的设计方法。l难点:自动化比较困难,BBL的布图算法和布图系统较其它设计方法复杂,目前还没有一个很成功的实用系统。但是,目前从SOC设计的需要出发,必须要研究这种基于各种IP模块的设计方法。2022-11-2519 BBL布图方法的改进布图方法的改进 l目前可以有非矩形的模块,如L型、T型的形状。l问题的表示方法、布图规划、布局、布线算法的研究也在不断进行。l考虑延迟、功耗、噪声串扰等约束以及将布局与布线同时考虑的算法等。2022-11-2520 BBL自动设计的算法复杂性自动设计的算法复杂性 由于VLSI电路的规
9、模和复杂性,一次设计成功的难度太大,通常:l布局的复杂性在O(n2)到O(n4)之间l布线在O(n logn)到O(n2)之间当n(问题的规模)很大时,计算时间会相当长。2022-11-2521 采用分级设计策略可有效地降低复杂性采用分级设计策略可有效地降低复杂性 以布局为列,若原来复杂性为S=O(n2),划分为m个子模块,分级后先对模块内进行布局,然后对整个芯片进行布局,则总的复杂性为:两者工作量之比为:由于mn,所以其工作量大约是原来的1/m。分级设计会损失掉一些布图变量。)/()/(2222cmmnOcmmnmOS2)/(/1/nmCmSS2022-11-2522 3 BBL布图规划与布
10、局布图规划与布局 l典型系统是BEAR -采用模板枚举匹配和启发式算法 -限于复杂性只能枚举4个模块l首次提出用解析法求解布局问题 l边勾链数据结构和另一种解析法(势能函数)lFRACT-基于BEAR的BBL系统l布图表示成为关键2022-11-2523 Slicing 结构结构 和和 Non-Slicing 结构结构lSlicing 结构l 数据表示容易l 通道定义方便l计算复杂性较低lNon-Slicing 结构l布图密度更高 l处理特殊问题较方便l日益受到重视2022-11-2524 各种不同模型的比较各种不同模型的比较l计算复杂性计算复杂性 binary tree SP BSG O-t
11、ree CBL O(n)O(n2)O(n2)O(n)*O(n)l搜索空间搜索空间 binary tree SP BSG O-tree CBL O(n!2)C(n2,n)O(n!22n-2/n1.5)O(n!23n-7)l存储量存储量(bits)binary tree SP BSG O-tree CBL n(6+lgn)2nlgn n(n-1+lgn)n(2+lgn)n(3+lgn)2022-11-2525 新一代的新一代的BBL问题问题l九十年代中针对甚大规模和分级设计的需要提出,希望优化时延、面积、噪声和功耗。l考虑插入缓冲单元的互连规划的布图规划。l满足多种约束:芯片宽长比、多边形模块、多
12、边形芯片外框、固定方位模块、固定位置模块、固定障碍等。l可应用于晶体管级的布局问题(另加约束)。l多采用随机优化方法:模拟退火、遗传进化等。2022-11-25264 不同设计方法比较不同设计方法比较 l 设计方法的选择与芯片性能要求、产品上市时间以及产品产量有关。l 用户可以根据自己对产品性能、批量大小和上市时间的要求,选择相应的设计方法。表1设计模式在版图结构上的差别。表2设计模式芯片面积、性能及制造方法上的不同。2022-11-2527表一表一 各种设计模式的版图结构各种设计模式的版图结构 设计模式设计模式全定制全定制标准单元标准单元门阵列门阵列FPGA单元外形单元外形 可变可变固定高度
13、固定高度不变不变不变不变单元类型单元类型 可变可变可变可变固定固定可编程可编程单元布局单元布局 可变可变按行按行固定固定固定固定连连 线线 可变可变可变可变可变可变可编程可编程2022-11-2528表表二二 不不同同的的设设计计模模式式的的芯芯片片面面积积、性性能能和和掩掩膜膜制制作作方方式式设设计计模模式式全全定定制制标标准准单单元元门门阵阵列列FPGA芯芯片片面面积积小小较较小小中中等等大大芯芯片片性性能能高高较较高高中中等等低低制制作作掩掩膜膜全全部部全全部部金金属属连连线线及及孔孔不不需需要要2022-11-2529 设计成本、质量、时间设计成本、质量、时间设计成本、质量、时间是相互
14、制约的。如果设计一个高质量的版图,需要付出较高的成本,同时设计时间较长。反之,如果要求低成本和较短设计时间,那么往往要在设计质量上作出某些让步。2022-11-2530 设计的产量与成本设计的产量与成本 芯片生产中平均每个管子的成本C可用下式表示:当产量很低时,第一项设计成本起主要作用,当产量很高时,单个芯片生产成本起主要作用。总产量芯片上晶体管数总产量单个芯片生产成本芯片设计成本)()(C2022-11-2531 设计方法、设计规模与成本设计方法、设计规模与成本 图中给出设计成本与集成度的关系。当规模较小时,人工设计质量高,但成本并不高。但当规模大时,人工设计成本迅速增加而显示出自动设计的优越性。而半动设计在a0、a1区显示出其低成本的优越性。2022-11-2532 设计方法与设计成本、集成度的关系设计方法与设计成本、集成度的关系设计成本集成度a0a1人工半自动全自动2022-11-2533 设计模式的选择设计模式的选择l大批量的产品,如微处理器,存储器等宜采用全定制设计方法。l小批量ASIC产品则采用半定制的门阵列或宏单元阵列设计方法。l单件、批量很小的产品、试验电路则采用FPGA设计方法。l电性能要求较高,而批量较小的产品,或中批量产品则采用标准单元设计方式。