Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3495166
  • 博文数量: 534
  • 博客积分: 11595
  • 博客等级: 上将
  • 技术积分: 5785
  • 用 户 组: 普通用户
  • 注册时间: 2006-12-22 17:00
文章分类

全部博文(534)

文章存档

2015年(4)

2014年(27)

2013年(15)

2012年(38)

2011年(36)

2010年(85)

2009年(63)

2008年(142)

2007年(124)

分类:

2007-08-07 10:45:51

当你坐在计算机旁工作或在网上冲浪,当你打开电视机欣赏节目,当你在川流不
息的人群中拿起无绳电话,当你的VCD或DVD正在播放惊心动魄的hoolywood   电影.
.....你可知道在这些和我们的生活和工作如此密切相关的产品中有多少IC(大规模
集成电路)在默默的工作。

   个人电脑、因特网、无绳电话、天气预报、模拟战争、空中预警、导弹卫星....
..几乎所有的新名词都和IC密切相关。IC工业的成就和未来正引起人类社会新的变革
。当比尔.盖茨在condex大会上为我们描绘如诗般的internet生活;当intel和amd宣
布里程碑式的1G处理器;你是否了解为致力于创造和改变人们生活方式的IC设计工程
师是如何把我们的每一个梦想变成现实?

   笔者愿以一个普通设计人员的身份帮你撩开IC设计的神秘面纱。

  1,项目和课题;

   (1) Herbert Kroemer说过这样的名言:“任何一种新的并具创造性的技术的应
用原理总是,也一直都是,因为这种技术所创造的应用。”
    设计IC的唯一目的就是为了满足某种需求,譬如CPU和DRAM是为了计算机而存在
;  而80C51系列单片机就是因为很多的工控应用而蓬勃发展,而象mpeg1,mpeg2,m
p3解码器这些专用电路更是目的明确。因此IC设计项目总是和应用密切相关。不要盯
住无用的“新技术”而投入过份的精力。早在voodoo之前Nviria公司就创造了曲面帖
图技术,但这种技术太超前了,以致它现在都是不切实际的幻想。
    然而任何IC开发计划又都必须具有前瞻性,只是这种前瞻性必须是也只能是:当
芯片在制造厂流片成功时正是它所对应的技术即将或大量应用时。

    (2)在IC设计行业,“时间就是金钱”是永远不变的铁律。
     没有那个公司会做过时的IC,再傻的老板都不会在现在把开发mpeg1或10M以太
网芯片做为自己的目标,因为技术和应用发展的方向正在淘汰他们,一切不和时宜和
不具前瞻性的项目都不具吸引力。我所在的term就将千兆以太网芯片作为自己的努力
方向,因为它比现在正流行的传输率快一个阶段。随千兆以太网标准的推出,未来的
局域网应用一定会是千兆的天下,这称为技术贮备。NVIDIA公司在推出TNT2时早在研
发NV20。符合技术发展潮流和应用规律的项目是保证投资回报和团队生存的基本要求

    (3)“没有人愿意和巨人打架”,syrex和IDT的失败正是这句话的真实印证。
任何产品目标都必须是切实可行符合业界规范的。一个小的刚刚涉足IC设计的trem将
CPU设计作为自己的目标无疑是可笑和毫无意义的。他必须了解自己的研发能力可以
达到什么样的程度,这包括了项目带头人的能力和技术专长,包括了整个团队的开发
经验等等。在IC设计中,最讲究的就是要“专”,不要什么都想干,往往什么都干不
成。比如一个在网络开发方面有经验的TERM没必要选择开发单片机,最可能的是他会
开发网路产品而在需要用单片机或DSP作为microcontroller时去买nation semicond
ucter或TI的芯核(我们所属的TMI公司就是这样);我们在开发USB芯片的过程中,从
来不把host controller作为自己的目标,因为作为一个在国内的刚刚组建的IC des
ign term,我们根本没有技术,经验和能力去和nec、philips、intel或、nation s
emiconductor比较。即使我们研发的USB1.1标准的芯核也只可以作为usb接口的以太
网卡的一部分来使用,而不是作为一款单独的产品;

    众所周知曾经有中国的SVCD规范出台,SVCD的最终失败正是因为它不符合国际标
准;符合标准是IC设计的前提,计算机产业的迅速发展正是因为它的标准化。对标准
的兼容性是一片IC是否可以被市场认可的关键。VIA正是因为intel在很多技术上的专
利而不得不收购S3、syrex等公司来换取技术专利交换协议以保持和intel处理器的兼
容性。另外,一个研发团队对标准的掌握程度和速度直接决定产品在市场中的成败。
我们在开发USB接口的100M以太网卡芯片的过程中,之所以USB部分开发迅速,而net
work的mac部分遇到困难,正是因为我们对network协议的无知,后来由熟知网路协议
的台湾term来完成;

   2,实现方法;
      IC从生产目的上可以分成为通用IC(如CPU,DRAM,接口芯片等)和ASIC(App
lication Specific Integreted Circuit)两种,ASIC是因应专门用途而生产的IC。

      从结构可以分成数字IC,模拟IC,数模混合IC三种,而SOC(system on chip
)则成为发展的方向。
      从实现方式上讲可以分为三种。基于晶体管级,所有器件和互连版图都采用人
工的称为全定制(full-custom)设计,这种方法比较适合于大批量生产的,要求集
成度高、速度快、面积小、功耗低的通用型IC或是ASIC。基于门阵(Gate-Array)和
标准单元(Standard-Cell)的半定制设计(Semi-custom)由于其成本低、周期短、
芯片利用率低而适合于批量小、要求推出速度快的芯片 。基于IC生产厂家已经封装
好的PLD(Programmable Logical Design)芯片的设计,因为其易用性、“可重写性
”受到对集成电路工艺不太了解的系统集成用户的欢迎。他的最大特点就是只须懂得
硬件描述语言就可以使用特殊EDA工具“写入”芯片功能。但PLD集成度低、速度慢、
芯片利用率低的缺点使他只适合新产品的试制和小批量生产。近年来PLD中发展最活
跃的当属FPGA(Field Programmable Gate Array)器件.

      从采用的工艺可以分成双极型(bipolar),MOS和其他的特殊工艺。硅(Si)基
半导体工艺中的双极型器件由于功耗大、集成度相对低,在近年随亚微米深亚微米工
艺的的迅速发展,在速度上对MOS管已不具优势,因而很快被集成度高,功耗低、抗
干扰能力强的MOS管所替代。MOS又可分为NMOS、PMOS和CMOS三种;其中CMOS工艺发展
已经十分成熟,占据IC市场的绝大部分份额。AsGa器件因为其在高频领域(可以在0
.35um下很轻松作到10GHz)如微波IC中的广泛应用,其特殊的工艺也得到了深入研究
。而应用于视频采集领域的CCD传感器虽然也使用IC一样的平面工艺,但其实现和标
准半导体工艺有很大不同。

      从设计方法可以分成自顶而下(top-down)和自底而上两种方法。top-down的
设计方法

      在IC开发中,根据不同的项目要求,根据项目经费和可供利用的EDA工具和人力
资源,根据代工厂的工艺实际,采用不同的实现方法是很重要的决策.
    (5)技术创新和紧跟潮流是IC公司良性循环的根本保证;(需要讲吗?)

   3,IC设计中所使用的EDA工具;

      俗话说“公欲善其事,必先利其器”。

      IC设计中EDA工具的日臻完善已经使工程师完全摆脱了原先手工操作的蒙昧期
。IC设计向来就是EDA工具和人脑的结合。随着IC不断向高集成度、高速度、低功耗
、高性能发展,没有高可靠性的计算机辅助设计手段,完成设计是不可能的。

      IC设计的EDA工具真正起步于80年代,1983年诞生了第一台工作站平台apollo
;20年的发展,从硬件描述语言(或是图形输入工具)到逻辑仿真工具(LOGIC SIMUL
ICATION),从逻辑综合(logic synthesis)到自动布局布线(auto plane & route
)系统;从物理规则检测(DRC & ERC)和参数提取(LVS)到芯片的最终测试;现代EDA工
具几乎涵盖了IC设计的方方面面。

      提到IC设计的EDA工具就不能不说cadence公司,随着compass的倒闭,它成为
这个行业名副其实的“老大” cadence提供了IC design中所涉及的几乎所有工具;
但它的工具和它的名气一样的值钱!现代IC技术的迅猛发展
在EDA软件厂家中掀起并购、重组热潮。

      除CADENCE公司以外,比较有名的公司包括mentor,avanti,synopsys和INVOED
A;mentor和cadence一样
是一个在设计的各个层次都有开发工具的公司,而AVANTI因其模拟仿真工具HSPICE出
名,SYNOPSYS则因为逻辑综合方面的成就而为市场认可。

      下面我们根据设计的不同阶段和层次来谈谈这些工具;

      (1)输入工具(design input):
      对自顶而下的(TOP-DOWN)设计方法,往往首先使用VHDL或是VERILOG HDL来
完成器件的功能描述,代表性的语言输入工具有SUMMIT公司的VISUAL HDL和MENTOR公
司的RENIOR等。虽然很多的厂家(多为FPGA厂商)都提供自己专用的硬件描述语言输
入,如ALTRA公司的AHDL,但所有的公司都提供了对作为IEEE标准的VHDL,VERILOG
HDL的支持。

      对自下而上的设计,一般从晶体管或基本门的图形输入开始,这样的工具代表
性的有cadence公司的composer;viewlogic公司的viewdraw等,均可根据不同的厂家
库而生成和输入晶体管或门电路相对应的模拟网表。

      (2)电路仿真软件(circuit simulation):(分为数字和模拟两大类)。

     电路仿真工具的关键在于对晶体管物理模型的建立,最切和实际工艺中晶体管
物理特性的模型必然得到
和实际电路更符合的工作波形,随IC集成度的日益提高,线宽的日趋缩小,晶体管的
模型也日趋复杂。任何的电路仿真都是基于一定的厂家库,在这些库文件中制造厂为
设计者提供了相应的工艺参数;如TSMC0.18um Cu CMOS工艺的相关参数高达300个之
多;

      可以用于数字仿真的工具有很多,先期逻辑仿真的目的只是为了验证功能描述
是否正确。对于使用verilog HDL生成的网表,cadence公司的verilog-XL是基于UNI
X工作站最负盛名的仿真工具;而近年随PC工作站的出现,viewlogic的VCS和mentor
公司的modelsim因其易用性而迅速崛起并成为基于廉价PC工作站的数字仿真工具的后
起之秀;对于VHDL网表仿真,cadence公司提供LEAFROG;SYNOPSYS公司有VSS,而me
ntor公司基于PC的MODELSIM则愈来愈受到新手们的欢迎。

      PSPICE最早产生于Berkley大学,经历数十年的发展,随晶体管线宽的不断缩
小,PSPICE也引入了更多的
参数和更复杂的晶体管模型。使的他在亚微米和深亚微米工艺的今天依旧是模拟电路
仿真的主要工具之一。AVANTI是IC设计自动化软件的“英雄少年”,它的HSPICE因其
在亚微米和深亚微米工艺中的出色表现而在近年得到了广泛的应用。cadence公司的
spectre也是模拟仿真软件,但应用远不及PSPICE和HSPICE广泛;

      对于特殊工艺设计而言,由于它们使用的不是Si基bipolar或CMOS工艺,因而
也有不同的设计方法和仿真软件;例如基于AsGa工艺的微波器件所使用的工具,较著
名的有HP的eesoft等;

     (3)综合工具(synthesis tools):
      用于FPGA和CPLD的综合工具包括有cadence的synplify;synopsys公司的FPGA
express和FPGA compiler;mentor公司的leonardo spectrum;一般而言不同的FPGA厂
商提供了适用于自己的FPGA电路的专用仿真综合工具,比如altera公司的MAXPLUS2仅
仅适用它自己的MAX系列芯片;而foundation则为XILINX器件量身定做......

      最早的IC综合工具应该是cadence的buildgates;而Cadence最新版本的Envisi
a Ambit(R)则在99年在ASIC international公司成功用于240万门的设计。使用较广
泛的还有synopsys的design compiler和behavial compiler;基于不同的库,逻辑综
合工具可以将设计思想转化成对应一定工艺手段的门级电路;将初级仿真中所没有考
虑的门沿(gates delay)反标到生成的门级网表中,返回电路仿真阶段进行再仿真。
最终仿真结果生成的网表称为物理网表。

     (4)layout工具和自动布局布线(auto plane & route)工具
       cadence的design framework是常用的基于UNIX工作站的全定制设计的布局布
线软件,和silicon ensemble ,Envisia place &route DSM; (cadence的版图输入
工具Virtuoso)

     (5)物理验证(physical validate)和参数提取(LVS)工具依然可以分成为A
SIC和FPGA两大类。                  ASIC设计中最有名、功能最强大的是cadenc
e的DRECULA,可以一次完成版图从DRC(设计规则检查),ERC(电气特性检查)到L
VS(寄生参数提取)的工序;DIVA作为其相对较弱的软件多提供给教学用途;AVANT
I的STAR-RC也是用于物理验证的强力工具,而hercules则是其LVS的排头兵。如同综
合工具一样,FPGA厂商的物理验证和参数提取多采用专门的软件、并和其仿真综合工
具集成在一起。ALTERA的MAXPLUS2和XILINX的FOUNDATION是这样的典型;

     (6)由于VLSI尤其是ULSI电路的预投片费用都相当的高(如TSMC 0.25um CMO
S 工艺一次预投片的费用为100万美圆,而0.18um Cu CMOS 3.3V工艺的一次预投竟高
达300万美圆)。因而对ASIC芯片,要求芯片设计尽量正确。最好完全消灭错误;解
决功耗分析;生成用于芯片测试目的的特殊测试电路;因应这一要求,也产生了一些
特殊的EDA工具,以完成诸如power analysis、故障覆盖率分析、测试矢量生成等目
的。
      现代VLSI特别是ULSI IC的迅速发展, 正是依靠EDA工具在亚微米和深亚微米
技术上的进步及其对应工艺水平的提高。应该说没有EDA工具就没有IC;

    4,设计团队(design term or group)
      (FIG1 是IC设计的流程图)
     上面我们主要讲了IC设计对研发项目和EDA工具的要求,那么有了切实可行的项
目和完整可靠的EDA工具,如何将它变成为产品呢?
     集成电路设计和足球比赛一样是一个最能体现人类合作精神和智慧的工作了,
只是他有更深刻的科技涵义罢了。就如同没有任何一个英雄可以创造足球场上的神话
一样(当然一边倒的比赛除外)一个结构合理的研发队伍是产品“成败的关键”;
     一般而言,一片IC可以从大的方面分成两部分:即数字(Digital)和模拟(An
aloge) 电路部分。实际上真正的IC设计应该是ASIC设计,而FPGA或PLD设计更倾向于
系统级的设计;可以这样说:一个做IC设计的工程师至少应该是学半体出身的,他更
多的是在和诸如晶体管,版图这样的东西打交道;而一个做FPGA的工程师只须懂得硬
件描述语言,他只要将行为级描述使用特殊的FPGA 工具写入到FPGA或PLD中即可。因
而本部分将着重于ASIC来说IC设计;

    (1) 模拟工程师(analog design engineer)在term中主要完成模拟电路的设计,
如收发器(transreceiver)、高频锁相环、A/D    D/A转换器、放大器等这些无法
用数字方法实现的电路,必须用晶体管来搭建。而对于在厂家库中所没有提供的基本
门也必须使用晶体管来实现。现代IC设计的发展已经使得工程师只须在厂家提供的库
的基础上调整晶体管的宽长比(W/L)来决定晶体管特性。(FIG1是一个基于0.18um
工艺可以达到2.5G频率的D触发器参数图,它采用TSMC的0.18um制程库;而图FIG2则是
使用AVANTI公司的HSPICE98.4 version模拟仿真工具所生成的波形图;从图中我们可
以发现这个电路设计可以很好的运行在2.5G的高频下,并句有很好的上升和下降沿;

     USB接口芯片中的transreciever部分就必须是模拟工程师根据USB协议中要求发
送和接收的物理和电气特性来采用合适的晶体管电路实现;

    (2) 在一片功能IC中,大部分是数字电路设计。数位工程师(digital design e
ngineer)正是使用verilog HDL或是VHDL语言来完成芯片的功能描述;使用modelsim
这样的仿真工具来完成逻辑验证;然后再使用design compiler这样的综合工具来将
行为描述(behaviral descriptor)转化成门级网表(net gate)以便layout工程师
可以使用布局布线工具将它转化成版图;下面是在USB芯片中要用到的,一个产生CRC5
校验码模块的verilog HDL描述:
module  crc5(sysclk,nfsr,address_endpoint,sout_crc5,en_crc5);
input[1:0] nfsr;  input sysclk,en_crc5; input[10:0] address_endpoint;
output[4:0] sout_crc5;
wire[4:0] sout_crc5;
reg[4:0] register5a,register5b; reg[3:0] i;  reg[1:0] j;
assign  sout_crc5=~register5a;
always @(posedge sysclk)
begin
     if ((nfsr==2'b0)||!en_crc5)  // if reset or soft_reset;
        begin j=0; register5a=5'b11111; register5b=5'b00101; end  //initi
alization
     else if (nfsr==2'b10)    // if system in operation status;
        begin   if (j<=1)   begin  j=j+1;  end
          if (j==1) begin
             for (i=0;i<=10;i=i+1) //every bit would be xor with register
5a
              begin                //then right-move;
                if (register5a[4]^address_endpoint[i])
                 begin   register5a=register5a<<1; register5a=register5a^
register5b; end
                 else        begin   register5a=register5a<<1;end
              end
                    end
        end
end
endmodule
图FIG6是对其使用MODELSIM逻辑仿真工具所生成的波形;
下面是使用synopsys公司的综合工具DESIGN CPMPILER综合生成的网表文件(基于TSM
C的0.35um CMOS数字电路库,注意仅仅选取整个网表的一部分作为示意);:
module crc5 ( sysclk, nfsr, address_endpoint, sout_crc5, en_crc5);
input  [10:0] address_endpoint; input[1:0] nfsr; input  sysclk, en_crc5;
output [4:0] sout_crc5;
    wire \j[1] , \register5b[4] , \register5a[3] , \register5a[1] ,
        \register5b[2] , \register5a[4] , \register5a[0] , \register5b[3]
,
        \n768[0] , \j[0] , \register5a[2] , \register5b[1] , n899, n900,
n901,..... n1041;
    RS_ND2_A U458 ( .O(n973), .I1(\register5b[2] ), .I2(n1003) );
    ........
    RS_XNR2_A U464 ( .O(n907), .I1(address_endpoint[0]), .I2(\register5a[
4] )
         );
    .......
    RS_XOR2_A U467 ( .O(n919), .I1(n938), .I2(n917) );
    .......
    RS_INV_A U472 ( .O(n1002), .I(n921) );
    .......
    RS_XOR2_A U476 ( .O(n921), .I1(n939), .I2(n918) );
    .......
    RS_AN2_B U556 ( .O(n899), .I1(n1001), .I2(n908) );
    .......
    RS_DFF_B \j_reg[1]  ( .Q(\j[1] ), .D(n899), .CK(sysclk) );
    RS_DFF_B \j_reg[0]  ( .Q(\j[0] ), .D(n1031), .CK(sysclk) );
    RS_DFF_B \register5a_reg[4]  ( .Q(\register5a[4] ), .QB(sout_crc5[4])
, .D(
        n1032), .CK(sysclk) );
    .......
endmodule
图FIG7是design compiler综合生成的门级电路图。
   对数位和模拟工程师而言,厂家库是设计的基础,生成的门级电路的模拟输出特
性或是数字逻辑是否正确,都须以综合后仿真为依据。如果没有达到自己想要的结果
或是电路过于复杂,就必须再回头重新调整自己原先的设计。因而数位和模拟工程师
的工作总是遵循这样的法则:VHDL或VERILOG HDL描述(或图形输入)—前仿真——
综合——后仿真——修改语言描述(或图形输入);而网表文件则是IC设计EDA工具
可以识别的标准语言。
   (3)layout设计可能是IC TERM中最需艺术家气质的工作。只是他必须严格按照代
工厂所提供的设计规则(design rule)来绘制版图,或编写布局布线的约束文件。有
两种版图设计的方法:直接的手工布局布线和EDA工具的自动布局布线。对ASIC和通
用IC电路而言,经验丰富layout工程师的手工操作意味着比自动布局布线更紧凑合理
的电路结构,更小的芯片面积,更短的线延迟和更高的后仿真成功率;而自动布局布
线则意味着更短的设计周期,更少的人力资源投入;

   图FIG10为上述2.5G D触发器的手工layout的版图;(采用TSMC的0.18um六层布线
Cu CMOS工艺标准,标准号:CMOS018 design rule)
   一个优秀的layout工程师可能同时掌握物理验证(DRC,ERC)和参数提取(LVS)工具
;设计规则检测用于检查一个版图是否符合芯片加工厂的工艺约束,而参数提取则将在
前仿真中没有考虑到的寄生的RC(电阻电容)参数从生成的版图中提取出来,反标到网
表文件中供模拟和数位工程师做版图后仿真之用.模拟和数位工程师根据包含了寄生
参数的网表文件来调整已有的设计以达到项目要求的物理,电气特性和逻辑功能.然后
再将仿真后网表送到layouter手中进行重新的布局布线;这样的循环往往要来回数次
才能得到满意的结果.
   实际的情况往往是版图设计师和验证设计师各司其职,只是他们统称为layout工
程师;
   为设计出高效专业的版图,进行正确的物理验证和参数提取,layout工程师必须非
常熟悉半导体工艺及其原理,熟悉代工厂的工艺细节,精通工厂提供的设计规则.layo
ut设计师是一个term中和工艺关系最密切的环节;
    layout的经验是设计师最可宝贵的财产;
   (4)TEST engineer;众所周知,现代IC的发展已经使得测试占到整个设计成本的
30%左右。设计的可测试性以及样片的测试成为产品的重要方面。所谓可测性即在设
计阶段,为了芯片性能测试和工艺正确性测试的需要,设计师必须在芯片上加入大量
的与功能无关的测试电路。有时这种测试版图甚至超过功能模块的面积!样片测试则
是在预投片后对芯片样品进行细致的预定功能测试。测试手段的不断进步使得芯片的
功耗分析、热分析、功能分析、信号完整性分析等等的精度和涵盖的范围愈来愈深入
和广泛;而用于测试的设备仪器和软件投入也愈来愈大。  测试工程师的工作结果是
一个设计是否成功的标准依据。
    (5)经验丰富的项目主管
    技术主管首先是资深ASIC设计工程师(Junior ASIC Design Engineers),
    4,雄厚的经济基础;
    5,结论
    从项目论证到选择合适的实现方法,从使用不同的EDA工具到分配合理的人力资
源。集成电路设计的每一个环节都相互关联和影响,都是关系产品成败不可或缺的因
素。
    我国的微电子技术在50、60年代并不比美日差,那时半导体技术研究有“遍地开
花”之说。但因为种种原因(比如政策上的和大环境上的)使的我们今天已经远远落
后于美国、日本、韩国等国家和我国的台湾地区。现在国家开始逐渐重视IC产业;加
入WTO有望打破日美发达国家对我们的技术封锁 ;国内有丰富的人力资源;很多著名
的半导体厂商开始在大陆投资建厂、设立研究机构......这些为我国微电子产业的快
速启动和发展创造了前所未有的有利条件。国内的微电子行业如何迎接挑战,如何在
落后日美10年的情况下迎头赶上?我认为是一个很值得研究的课题。
    但我们坚信只要可以很好的解决这个课题;国家加大对微电子行业的投资力度;设
立有效的IC设计和生产人力资源管理和使用制度,吸引更多的人加入到IC产业并减少
每年白白流失到国外的IC设计人才(由于国外的IC产业的报酬都很高,如清华、中科
院、复旦等学校的大量IC人才流失到国外);鼓励基础研究和与国外先进技术厂商加
强技术和学术交流;借鉴韩国和台湾在微电子产业发展方面的经验教训;不盲目地上
马项目,脚踏实地地努力;我想正如台湾UMC首席技术教授、中科院外籍院士、DRAM
器件的发明人施敏先生所说:“不出10年大陆的微电子产业就会赶超台湾
阅读(2332) | 评论(0) | 转发(0) |
0

上一篇:Cadence软件产品介绍

下一篇:版图经验总结

给主人留下些什么吧!~~