一款深亚微米射频SoC芯片的后端设计与实现*

2018-01-04 03:41张志鹏张超刘铁锋
微处理机 2017年6期
关键词:硬核布线时序

张志鹏,张超,刘铁锋

一款深亚微米射频SoC芯片的后端设计与实现*

张志鹏,张超,刘铁锋

(中国科学院沈阳自动化研究所网络化控制系统重点实验室,沈阳110016)

随着集成电路的发展,片上系统芯片(SoC)技术广泛应用于多种领域中,越来越多的射频、模拟、存储器模块集成到一块芯片中。SoC芯片后端设计面临尺寸特征小,芯片规模大,物理设计复杂程度高等问题。良好的芯片版图设计是集成电路实现和成功的基础之一。介绍了基于台积电0.18μmULL低功耗工艺设计的射频SoC电路结构,在此基础上,详细说明了后端版图设计流程与布局规划,重点介绍了时钟模块设计,多时钟电路及复杂时序关系设计的后端布局处理,供电设计以及布线优化方法和技巧,对各类相关芯片的后端设计具有良好的借鉴意义。

片上系统芯片;后端布局;多时钟设计;时钟生成;后端流程;供电设计

1 引言

基于此,介绍一款射频SoC芯片WiASoC2400的后端设计流程,通过布局规划、电源设计、时钟模块设计、布线设计与优化等过程,实现版图设计并完成流片,满足设计要求。

2 深亚微米射频SoC芯片介绍

WiASoC2400是一款自主研发的2.4GHz高实时WIA-PA网络片上系统芯片,采用台积电0.18μm ULL低功耗工艺设计,芯片基于ARMcortex-M3,内部结构如图1所示,包括MCU、定时器、总线、控制器等设计,集成射频模块、模拟模块、SRAM模块、EFLASH模块等硬核,芯片尺寸大约25mm2,适用于工业无线通信应用。

图1 WiASoC2400内部结构框图

3 芯片后端设计流程

芯片设计按照流程划分,一般分为前端设计和后端设计。前端设计是从RTL代码到网表,后端设计是从网表到GDS文件。因为芯片规模较大,软硬模块较多,因此设计流程采用自顶向下与自底向上相结合的混合设计模式;对时序要求较高的时钟模块,组合逻辑为主、布线复杂的AES模块等,都采用了模块单独综合布局布线设计,再从顶层进行连接并自顶向下进行前端综合以及后端版图设计。

后端设计流程如图2所示,包括:

(1)设计数据与库单元准备,完成网表与物理实现单元的转换[1];

(2)布局规划和电源布线规划,其中重点解决输入输出(IO)单元和硬核IP单元的布局问题,电源网络布线规划根据芯片的功耗以及IO与硬核IP的位置,考虑关键单元的供电裕量,在芯片有效面积与电源网络之间做最适合的均衡设计;

图2 芯片后端设计流程图

(3)标准单元基于时序与功耗的优化放置;

滑翔翼的左侧不可避免地擦过崖壁上的一块凸石,撕扯开了一道豁口,滑翔翼剧烈地颤动了一下,几乎将他甩脱下去。他一只手死死地抓着翼面下方的三角架,另一只手握着操纵杆,努力控制着方向。破损的翼面极大地增加了控制的难度,还未等滑翔翼彻底平稳下来,他便惊恐地发现,前方的江面又是一个急弯。

(4)时钟树综合设计,通过在时钟源与触发器的时钟端加入缓存器树实现负载平衡,达到最小时钟偏斜以满足设计的时序约束;

(5)布线优化,满足包括时序,串扰,信号完整性以及可制造性规则的设计;

(6)提取寄生参数,得到真实的信号通路的电阻电容信息;

(7)静态时序分析,采用寄生参数提取的文件反标到后端生成的网表中,计算得到真实的延迟数据,并根据约束进行静态时序分析,对不满足的时序路径进一步优化;

(8)后仿仿真,对反标过真实时序信息的网表进行后仿仿真,检验芯片设计功能;

(9)物理验证,通过版图的DRC和LVS检查,生成可以流片的GDS文件。

4 时钟模块设计

在同步数字系统电路中,时钟信号是用来定义系统中数据移动的时间参考,决定了数据传输的速度和频率,同步数字系统的电路质量严重依赖于时钟的设计[2]。而因为WiASoC2400是一款在工业通信应用的芯片,为满足工业无线通信的低功耗需求,需要设计包括深度睡眠、睡眠、待机、接收、发送、调试等多种操作模式,因此时钟设计非常复杂,包括2个时钟源,生成11个内部时钟,并且这些时钟存在互采的情况。而在不同的操作模式下,2个时钟源又可以被1、2、4、8分频生成内部时钟,因此本芯片的时钟模块设计是很大的挑战。时钟生成结构如图3所示。

在后端设计实现中,时钟模块采用单独设计,形成硬核IP再接入到顶层中。作为时钟模块最重要的因素,时钟的时序环境作为硬核固化在设计中,可以避免时钟模块打散综合做时钟树而产生很多复杂的时序路径,且时钟互采的延时不好控制。具体的时钟模块在设计时,由前端流程完成理想时钟树综合,采用的是零偏移时钟树[3]以及最小的线延时模型[4],生成网表后利用Synopsys的后端工具ICCompiler进行一个完整的后端流程设计,首先的目标是减少两个源时钟clk32M和clk32K的时钟偏移,然后考虑在一个生成时钟来源于一个时钟源以及单一分频的情况下将各个生成时钟在时钟模块的输出口尽量保证整齐,使系统的时序优化在可控的允许范围内并且也降低同步信号开关的供电噪声[5]。

图3 时钟生成结构示意图

但是,由于存在一个生成时钟可以来自不同的时钟源,或者同一时钟源的不同分频模式,因此还需要进行交互再优化,将第一轮完成后端设计的时钟模块输出网表,提取寄生参数文件到Prime Time做静态时序分析,生成反标文件做仿真。计算来源于两个时钟源和各自不同的分频模式时,生成时钟端口到源时钟端口的真实延时,再返回后端设计流程,通过分析时钟电路结构,找到适合的路径,通过插入延时缓冲器来实现所有时钟在所有模式下的均衡。这样就可以得到所有操作模式下的生成时钟延时值,避免出现不可控制的大的时序违例。

其中,最重要的就是分析时钟电路结构,找到各生成时钟电路中只影响单独模式的路径,而不会影响到其它模式的时钟路径延时,采用set_min_delay命令对需要增加延时的路径的两个端口之间增加缓冲器,命令如下:

set_min_delay 0.25-from[get_pins{U571/Y}]-to[get_ports fclk]

set_min_delay 0.255-from[get_pins{U572/Y}]-to[get_portshclk]

通过在后端设计中增加均衡缓冲器的设计,可实现所有操作模式下,各个生成时钟点的延时基本一致。将时钟模块作为硬核嵌入到WiASoC2400的整体设计中,设置为don’t_touch,在时钟设置上,在SDC文件中,设置set_clock_latency命令确定真实时钟的最大、最小条件下的时序信息,具体命令如下:

set_clock_latency-source-min 1.902[get_clocks{wtclk}]

set_clock_latency-source-max 5.083[get_clocks{wtclk}]

在真实时钟命令下,增加set_clock_uncertainty命令到SDC文件中,确保在时序分析中留有不同频率和不同时钟源生成时钟产生掩饰偏差的时序裕量,设置值为所有操作模式中差值的最大值,具体命令如下:

set_clock_uncertainty-setup 0.188 [get_clocks{tim1clk}]

set_clock_uncertainty -hold 0.003 [get_clocks{tim1clk}]

通过对硬核时钟模块进行后仿仿真,得到各个生成时钟在两个时钟源以及不同分频模式下产生的最大、最小条件下的延时时间,如表1和表2所示。

表1 最大条件下生成时钟的源延时

表2 最小条件下生成时钟的源延时

5 布局方法与电源布线

合理的布局、布线可以起到优化时序,降低功耗,减少成本的作用[6]。WiASoC2400在数字后端设计中,采用射频电路与模拟电路单独设计,因为MCU需要对射频模块进行精准参数控制,因此射频模拟部分与数字部分的pin的接口多达208个,如果采用传统的文件列表形式列出放置pin的位置以及坐标的方式,必然会造成很大的工作量,同时产生错误的几率也会大大增加。在本设计,采用直接由工具方法生成布局文件流程,如图4所示,首先利用Cadence的Virtuoso工具,将射频模拟的硬核版图,包括输入输出pin的位置以及数字部分的电源环路的信息导出GDS文件,输入给Synopsys的Milkyway工具,产生这些信息的floorplan文件,将floorplan文件导入ICCompiler工具,在ICCompiler中做电源规划布线、硬核IP摆放以及电源连接等设计工作,最后生成DEF文件,作为后续设计的布局基础。

图4 工具生成布局文件流程

电源布线的设计与优化要求在整个设计中供电均匀且充分[7],在保证可靠性的前提下,提供更高的信号布线利用空间,还需要根据芯片设计的实际功耗和压降以及电迁移率等方面要求,确定增加/减少电源和地线的宽度以及供电引脚的数量。设计采用1P6M工艺设计,芯片内部按照传统的Metal1,3,5水平方向,Metal2,4,6垂直方向。而在电源环路设计中,采用了叠层金属环路供电方式,如图5所示,即电源和地的环路采用Metal6和Metal5叠在一起形成环形,芯片内部的Straps采用Metal6垂直,Metal5水平的方法放置。这样放置的方法的好处是,相对传统布线方式,节省了一条电源环路的宽度,因为电源环路是在芯片最外圈,因此可以节省很大的面积。而且由于Metal6的布线宽度以及间距规则要求非常大,做信号线布线可利用率很低,而为了Metal6的密度要求,用其来做Straps不但可以利用其可流过电流大,压降低的优点,还可以提高其它金属层的布线利用率,减少寄生电容[8],同时满足了密度要求的可生产规则。

图5 叠层金属环路供电图

6 芯片版图与封装

WiASoC2400芯片的实际版图如图6所示,采用台积电0.18umCMOS工艺完成,实现了流片,采用QFN56封装,并完成了封装测试,封装图如图7所示,经过对芯片功能与性能以及功耗测试,实际测试结果满足设计需求。

图6 WiASoC2400芯片版图

图7 WiASoC2400芯片封装图

7 结束语

对一款深亚微米射频SoC的数字后端设计与实现方法进行研究,在简单介绍WiASoC2400的内部结构的基础上,通过说明数字版图后端设计流程,详细介绍了时钟模块设计,布局规划,电源设计及优化等过程,最后给出了芯片的版图设计。这款射频SoC的设计解决了多模块多硬核IP的后端设计复杂度问题,同时也解决了多时钟源与多操作模式的复杂时序问题,进而提出了叠层供电布线的方式,对各种相关芯片的设计具有良好的借鉴意义以及实现价值。

[1] 张玲,罗静,百万门系统级芯片的后端设计[J].电子与封装,2010,10(5):25-29.Zhang Ling,Luo Jing,The Back-end Design of Millions Gates SoC[J].Electronicsand Packaging,2010,10(5):25-29.

[2] J.P.Fishburn,Clock Skew Optimization.IEEETransactions on Computers,C-39:945-951,July 1990.

[3]R.-S.Tasy,An Exact Zero Skew Clock Routing Algorithm.IEEE Transactions on CAD/ICAS,Vol.12,No.2,pp.242-249,February 1993.

[4]T.-H.Chao,Y.-C.Hsu,J.-M.Ho,A.B.Khang,Zero Skew Clock Routing with Minimum Wirelength.IEEE Ttransactionson Circuitsand Systems II:Analog and Digital Signal Processing,Vol.39,No.11,pp.799-814,November 1992.

[5]W.-C.D.Lam,C.-K.Koh,and C.-W.A.Tsao,Power Supply Noise Suppression via Clock Skew Scheduling.In Proc.ISQED,pp.355-360,2002.

[6]Wang Donghui,Yu Qian,Hong Yingetc.,Super VBack-end Design Flow Based on Astro[J].Proceedings of ISCIT2005 IEEE,1477-1480,2005.

[7] 邹文英,徐新宇,徐睿,一款深亚微米ASIC芯片的后端设计[J].电子与封装,2012,12(8):26-29.Zou Wenying,Xu Xinyu,Xu Rui,The Back-end Design of a Deep Submicron ASIC Chip[J].Electronics and Packaging,2012,12(8):26-29.

[8] 刘金禾,林平分,一种减少金属层数的芯片物理设计方法[J].科技信息,2012,(11):18,66.Liu Jinhe,Lin Pingfen,AMethod of Chip Physical Design to Reducethe Number of Metal Layers[J].Science,2012,(11):18,66.

The Back-end Design and Implementation of a Deep Submicrometer RF SoC

Zhang Zhipeng,Zhang Chao,Liu Tiefeng
(Key Lab.of Networked Control Systems,ShenyangInstituteof Automation ChineseAcademy of Sciences,Shenyang 110016,China)

With the development of integrated circuit,the system on chip (SoC)technology is widely used in many applications,as more and more RF modules,analog modules and memory modules are embedded into one chip.The SoC back-end design confronts more challenges such as smaller feature size,larger chip area and more complex physical design.A remarkable layout design is one of the elements of the integrated circuit implemention and success.RF SoC circuit structure based on TSMC 0.18μmULL low power consumption process design is introduced,and on this basis,back-end layout design process and layout planning are explained in detail,mainly focusing on the clock generation module design,back-end processing method of multi-clock circuit and complex timing relationship design,power supply plan and layout optimization methods and techniques,that supplies a good reference to many relevant kinds of beckend chip design.

System on Chip;Back-end layout processing;Multi-clock design;Clock generation;Back-end flow;Power supply design

10.3969/j.issn.1002-2279.2017.06.001

TP277

A

1002-2279-(2017)06-0001-06

国家科技重大专项,新一代宽带无线移动通信网重大专项资助(03专项),高实时WIA-PA网络片上系统(SoC)研发与示范应用(编号:2015ZX03003010)

张志鹏(1980—),男,辽宁省沈阳市人,高级工程师,硕士,主研方向:工业控制领域芯片后端设计。

2017-11-20

猜你喜欢
硬核布线时序
清明
硬核爷爷炼成记
疫战中的“硬核”
“硬核”举措下的暖心举动
基于不同建设时序的地铁互联互通方案分析
摆脱繁琐布线,重定义家庭影院 Klipsch Reference Wireless 5.1
陕西制造需要“硬核”
卫星固定站集成布线方案的优化设计
基于FPGA 的时序信号光纤传输系统
基于模体演化的时序链路预测方法