Cadence Allegro元件封装制作流程

(本文为转载,原文出处不详)

  1. 引言

一个元件封装的制作过程如下图所示。简单来说,首先用户需要制作自己的焊盘库Pads,包括普通焊盘形状Shape Symbol和花焊盘形状Flash Symbol;然后根据元件的引脚Pins选择合适的焊盘;接着选择合适的位置放置焊盘,再放置封装各层的外形(如Assembly_Top、Silkscreen_Top、Place_Bound_Top等),添加各层的标示符Labels,还可以设定元件的高度Height,从而最终完成一个元件封装的制作。

下面将分表贴分立元件,通孔分立元件,表贴IC及通孔IC四个方面来详细分述元件封装的制作流程。

  1. 表贴分立元件

分立元件一般包括电阻、电容、电感、二极管、三极管等。

对于贴片分立元件,以0805封装为例,其封装制作流程如下:

  1. 焊盘设计

    1. 尺寸计算

表贴分立元件,主要对于电阻电容,焊盘尺寸计算如下:

其中,K为元件引脚宽度,H为元件引脚高度,W为引脚长度,P为两引脚之间距离(边距离,非中心距离),L为元件长度。X为焊盘长度,Y为焊盘宽度,R为焊盘间边距离,G为封装总长度。则封装的各尺寸可按下述规则:

  1. X=Wmax+2/3*Hmax+8 mil

  2. Y=L,当L<50 mil;Y=L+ (6~10) mil,当L>=50 mil时

  3. R=P-8=L-2*Wmax-8 mil;或者G=L+X。这两条选一个即可。个人觉得后者更容易理解,相当于元件引脚外边沿处于焊盘中点,这在元件尺寸较小时很适合(尤其是当Wmax标得不准时,第一个原则对封装影响很大),但若元件尺寸较大(比如说钽电容的封装)则会使得焊盘间距过大,不利于机器焊接,这时候就可以选用第一条原则。本文介绍中统一使用第二个。

注:实际选择尺寸时多选用整数值,如果手工焊接,尺寸多或少几个mil影响均不大,可视具体情况自由选择;若是机器焊接,最好联系工厂得到其推荐的尺寸。例如需要紧凑的封装则可以选择小一点尺寸;反之亦然。

另外,还有以下三种方法可以得到PCB的封装尺寸:

  • 通过LP Wizard等软件来获得符合IPC标准的焊盘数据。

  • 直接使用IPC-SM-782A协议上的封装数据(据初步了解,协议上的尺寸一般偏大)。

  • 如果是机器焊接,可以直接联系厂商给出推荐的封装尺寸。

  1. 焊盘制作

Cadence制作焊盘的工具为Pad_designer。

打开后选上Single layer mode,填写以下三个层:

  1. 顶层(BEGIN LAYER):选矩形,长宽为X*Y;

  2. 阻焊层(SOLDERMASK_TOP):是为了把焊盘露出来用的,也就是通常说的绿油层实际上就是在绿油层上挖孔,把焊盘等不需要绿油盖住的地方露出来。其大小为Solder Mask=Regular Pad+4~20 mil(随着焊盘尺寸增大,该值可酌情增大),包括X和Y。

  3. 助焊层(PASTEMASK_TOP):业内俗称"钢网"或"钢板"。这一层并不存在于印制板上,而是单独的一张钢网,上面有SMD焊盘的位置上镂空。这张钢网是在SMD自动装配焊接工艺中,用来在SMD焊盘上涂锡浆膏用的。其大小一般与SMD焊盘一样,尺寸略小。

其他层可以不考虑。

以0805封装为例,其封装尺寸计算如下表:

mm 

mil 

确定mil值

78.74015748 

1.27 

50 

高(max)

1.25 

49.21259843 

W(max) 

0.7 

27.55905512 

1.330133333 

52.36745407 

50 

1.27 

50 

60 

3.330133333

131.1076115 

130 

可见焊盘大小为50*60 mil。该焊盘的设置界面如下:

保存后将得到一个.pad的文件,这里命名为Lsmd50_60.pad。

  1. 封装设计

  1. 各层的尺寸约束

一个元件封装可包括以下几个层:

  1. 元件实体范围(Place_bound)

含义:表明在元件在电路板上所占位置的大小,防止其他元件的侵入,若其他元件进入该区域则自动提示DRC报错。

形状:分立元件的Place_bound一般选用矩形。

尺寸:元件体以及焊盘的外边缘+10~20mil,线宽不用设置。

  1. 丝印层(Silkscreen)

含义:用于注释的一层,这是为了方便电路的安装和维修等,在印刷板的上下两表面印刷上所需要的标志图案和文字代号等,例如元件标号和标称值、元件外廓形状和厂家标志、生产日期等等。

形状:分立元件的Silkscreen一般选用中间有缺口的矩形。若是二极管或者有极性电容,还可加入一些特殊标记,如在中心绘制二极管符号等。

尺寸:比Place_bound略小(0~10 mil),线宽可设置成5mil。

  1. 装配层(Assembly)

含义:用于将各种电子元件组装焊接在电路板上的一层,机械焊接时才会使用到,例如用贴片机贴片时就需要装配层来进行定位。

形状:一般选择矩形。不规则的元件可以选择不规则的形状。需要注意的是,Assembly指的是元件体的区域,而不是封装区域。

尺寸:一般比元件体略大即可(0~10mil),线宽不用设置。

  1. 封装制作

Cadence封装制作的工具为PCB_Editor。可分为以下步骤:

  1. 打开PCB_Editor,选择File->new,进入New Drawing,选择Package symbol并设置好存放路径以及封装名称(这里命名为LR0805),如下图所示:

  1. 选择Setup->Design Parameter中可进行设置,如单位、范围等,如下图所示:

  1. 选择Setup->Grids里可以设置栅格,如下图所示:

  1. 放置焊盘,如果焊盘所在路径不是程序默认路径,则可以在Setup->User Preferences中进行设计,如下图左所示,然后选择Layout->Pins,并在options中选择好配置参数,如下图中所示,在绘图区域放置焊盘。放置时可以使用命令来精确控制焊盘的位置,如x -40 0表示将焊盘中心位于图纸中的(-40,0)位置处。放置的两个焊盘如下图右所示。

  1. 放置元件实体区域(Place_Bound),选择Shape->Rectangular,options中如下图左设置,放置矩形时直接定义两个顶点即可,左上角顶点为x -75 40,右下角顶点为x 75 -40。绘制完后如下图右所示。

  1. 放置丝印层(Silkscreen),选择Add->Lines,options中如下图左所示。绘制完后如下图右所示。

  1. 放置装配层(Assembly),选择Add->Lines,options中如下图左所示。放置完后如下图右所示,装配层的矩形则表示实际元件所处位置。

  1. 放置元件标示符(Labels),选择Layout->Labels->RefDef,标示符包括装配层和丝印层两个部分,options里的设置分别如下图左和中所示,由于为电阻,均设为R*,绘制完后如下图右所示。

  1. 放置器件类型(Device,非必要),选择Layout->Labels->Device,options中的设置如下图左所示。这里设置器件类型为Reg*,如下图右所示。

  1. 设置封装高度(Package Height,非必要),选择Setup->Areas->Package Height,选中封装,在options中设置高度的最小和最大值,如下图所示。

  1. 至此一个电阻的0805封装制作完成,保存退出后在相应文件夹下会找到LR0805.dra和LR0805.psm两个文件(其中,dra文件是用户可操作的,psm文件是PCB设计时调用的)。

    1. 直插分立元件

通孔分立元件主要包括插针的电阻、电容、电感等。本文档将以1/4W的M型直插电阻为例来进行说明。

  1. 通孔焊盘设计

    1. 尺寸计算

设元件直插引脚直径为:PHYSICAL_PIN_SIZE,则对应的通孔焊盘的各尺寸如下:

  1. 钻孔直径DRILL_SIZE    =PHYSICAL_PIN_SIZE+12 mil,PHYSICAL_PIN_SIZE<=40

                        =PHYSICAL_PIN_SIZE+16 mil,40<PHYSICAL_PIN_SIZE<=80

=PHYSICAL_PIN_SIZE+20 mil,PHYSICAL_PIN_SIZE>80

  1. 规则焊盘Regular Pad    =DRILL_SIZE+16 mil,DRILL_SIZE<50 mil

                        =DRILL_SIZE+30 mil,DRILL_SIZE>=50 mil

                        =DRILL_SIZE+40 mil,DRILL_SIZE为矩形或椭圆形

  1. 阻焊盘Anti-pad        =Regular Pad+20 mil

  2. 热风焊盘    内径ID    =DRILL_SIZE+20 mil

    外径OD=Anti-pad=Regular Pad+20 mil

    =DRILL_SIZE+36 mil,DRILL_SIZE<50 mil

    =DRILL_SIZE+50 mil,DRILL_SIZE>=50 mil

             =DRILL_SIZE+60 mil,DRILL_SIZE为矩形或椭圆形

开口宽度=(OD-ID)/2+10 mil

  1. 焊盘制作

以1/4W的M型直插电阻为例,其引脚直径20 mil,根据上述原则,钻孔直径应该为32 mil,Regular Pad的直径为48 mil,Anti-pad的直径为68 mil,热风焊盘的内径为52 mil,外径为68 mil,开口宽度为18 mil。焊盘制作过程分两大步骤:制作热风焊盘和制作通孔焊盘。

首先制作热风焊盘。使用PCB Designer工具,步骤如下:

  1. 选择File->New,在New Drawing对话框中选择Flash symbol,命名一般以其外径和内径命名,这里设为TR_68_52,如下图所示。

  1. 选择Add->Flash,按照上述尺寸进行填写,如下图左所示。完成后,如下图右所示。

热风焊盘制作完成后,可以进行通孔焊盘的制作。使用的工具为Pad_Designer。步骤如下:

  1. File->New,新建Pad,命名为pad48cir32d.pad,其中,48表示外径,cir表示圆形,32表示内径,d表示镀锡,用在需要电气连接的焊盘或过孔,若是u则表示不镀锡,一般用于固定孔。

  2. 在Parameters选项中设置如下图所示。图中孔标识处本文选用了cross,即一个"+"字,也可选用其他图形,如六边形等。

  1. 在Layer中需填写以下几个层。一般情况下,一个通孔的示意图如下图所示。

  1. 顶层(BEGIN LAYER)

根据需要来选择形状和大小,一般与Regular Pad相同,也可以选择其他形状用于标示一些特殊特征,例如有极性电容的封装中用正方形焊盘标示正端。这里设置成圆形,直径为48 mil。

  1. 中间层(DEFAULT_INTERNAL)

选择合适尺寸的热风焊盘;注意,若热风焊盘存的目录并非安装目录,则需要在PCB Designer中选择Setup->User Preferences中的psmpath中加入适当路径,如下图所示。

  1. 底层(END_LAYER)

一般与顶层相同,可以copy顶层的设置并粘贴到底层来。

  1. 阻焊层(SOLDERMASK_TOP和SOLDERMASK_BOTTOM):Solder Mask=Regular Pad+4~20 mil(焊盘直径越大,这个值也可酌情增大)。

  2. 助焊层(PASTEMASK_TOP和PASTEMASK_BOTTOM):这一层仅用于表贴封装,在直插元件的通孔焊盘中不起作用,但可以设置,会被忽略。

  3. 预留层(FILMMASK_TOP和FILMMASK_BOTTOM):预留,可不用。

最终该通孔焊盘layer层参数配置如下图所示。

  1. 封装设计

    1. 各层的尺寸约束

除丝印层的形状外,直插分立元件的约束与2.2.1节基本类似。

对于丝印层,其形状与元件性质有关:

  1. 对于直插式电阻、电感或二极管,丝印层通常选择矩形框,位于两个焊盘内部,且两端抽头;

  2. 对于直插式电容,一般选择丝印框在焊盘之外,若是扁平的无极性电容,形状选择矩形;若是圆柱的有极性电容,则选择圆形。

  3. 对于需要进行标记的,如有极性电容的电容的正端或者二极管的正端等,除却焊盘做成矩形外,丝印层也可视具体情况进行标记。

  1. 封装制作

仍然以1/4W的M型直插电阻为例,其引脚直径20 mil,引脚间距400 mil,元件宽度约80 mil,元件长度为236mil,直插电阻封装的命名一般为AXIAL-xx形式(比如AXIAL-0.3、AXIAL-0.4),后面的xx代表焊盘中心间距为xx英寸,这里命名为AXIAL-0.4L。其封装制作步骤如下(与2.2.2节中相同的部分将省略):

  1. 放置焊盘,放置的两个焊盘如下图所示。

  1. 放置元件实体区域(Place_Bound),绘制完后如下图右所示。

  1. 放置丝印层(Silkscreen),选择Add->Lines,options中如下图左所示。绘制完后如下图右所示。

  1. 放置装配层(Assembly),选择Add->Lines,options中如下图左所示。放置完后如下图右所示,装配层的矩形则表示实际元件所处位置。

  1. 放置元件标示符(Labels)和器件类型(Device),如下图左所示。

  1. 设置封装高度(Package Height,非必要)。设置高度为60~120 mil。

  1. 表贴IC

表贴IC是目前电子系统设计过程中使用最为广泛地,本文以集成运放AD8510的SO8为例来进行叙述。其尺寸图如下所示。

  1. 焊盘设计

    1. 尺寸计算

  1. 对于如SOP,SSOP,SOT等符合下图的表贴IC。其焊盘取决于四个参数:脚趾长度W,脚趾宽度Z,脚趾指尖与芯片中心的距离D,引脚间距P,如下图:

焊盘尺寸及位置计算:X=W+48 mil

    S=D+24 mil

            Y=P/2+1,当P<=26 mil;Y=Z+8,当P>26 mil。

  1. 对于QFN封装,由于其引脚形式完全不同,一般遵循下述原则:

PCB I/O焊盘的设计应比QFN的I/O焊端稍大一点,焊盘内侧应设计成圆形(矩形亦可)以配合焊端的形状,详细请参考图2 和表1。

典型的QFN元件I/O焊端尺寸(mm)

典型的PCB I/O焊盘设计指南(mm)

焊盘间距

焊盘宽度(b)

焊盘长度(L)

焊盘宽度(X)

外延(Tout)

内延(Tin)

0.8 

0.33 

0.6 

正常0.42

最小0.15

最小0.05

0.65 

0.28 

0.6 

正常0.37

最小0.15

最小0.05

0.5 

0.23 

0.6 

正常0.28

最小0.15

最小0.05

0.5 

0.23 

0.4 

正常0.28

最小0.15

最小0.05

0.4 

0.20 

0.6 

正常0.25

最小0.15

最小0.05

如果PCB有设计空间, I/O焊盘的外延长度(Tout)大于0.15mm,可以明显改善外侧

焊点形成,如果内延长度(Tin)大于0.05mm,则必须考虑与中央散热焊盘之间保留足够的

间隙,以免引起桥连。通常情况下,外延取0.25 mm,内延取0.05 mm。手工焊接时外延可更长。

以下是典型的例子:

  1. 焊盘制作

参考AD8056的SO8封装尺寸,W=(16+50)/2=33 mil,P= 50mil,Z=(19.2+13.8)/2=17.5 mil,故而X取80 mil,Y取25 mil。

制作的详细过程同2.1.2,参数配置界面如下图所示。

  1. 封装设计

    1. 各层的尺寸约束

除丝印层外,表贴IC的各层约束规则与2.2.1类似,这里不再赘述。

对于丝印层,表贴IC的丝印框与引脚内边间距10mil左右,线宽5mil,形状与该IC的封装息息相关,通常为带有一定标记的矩形(如切角或者打点来表示第一脚)。对于sop等两侧引脚的封装,长度边界取IC的非引脚边界即可。丝印框内靠近第一脚打点标记,丝印框外,第一脚附近打点标记,打点线宽视元件大小而定,合适即可。对于QFP和BGA封装(引脚在芯片底部的封装),一般在丝印框上切角表示第一脚的位置。

  1. 封装制作

参考AD8056的SO8封装尺寸,D=(228.4+244)/4=118.1 mil,故而S=142 mil,取140 mil。与2.2.2中重复的部分这里不再赘述。

  1. 放置焊盘

可以选择批量放置焊盘,options中设置如下图左所示,放置完后如下图右所示。

  1. 放置外形和标识

这里与2.2.2基本,最终的封装如下图所示:

  1. 通孔IC

本文档以一个DIP8封装为例来进行说明。DIP封装的尺寸如下图所示。

  1. 通孔焊盘设计

通孔焊盘设计过程与3.1节类似,区别在于对于通孔IC,一般会用一个特殊形状的通孔来表示第一脚,这里第一脚的焊盘用正方形,其他为圆形。

引脚直径d(一般的引脚并非圆柱而是矩形,此时d应该取长度)为0.46 mm,接近20 mil,故钻孔直径32 mil,焊盘直径48 mil,Anti-pad的直径为68 mil,热风焊盘的内径为52 mil,外径为68 mil,开口宽度为18 mil。命名为pad48cir32d.pad,与3.1.2节相同。

由于还需要一个正方形的焊盘,命名为pad48sq32d.pad,其设置如下图所示。

  1. 封装设计

封装设计过程与前所述基本类似。这里仅给出每一步的截图。

  1. 批量放置8个焊盘如下图左,更换掉1脚的焊盘后如下图右。更换时可使用Tools->Replace命令,其options的设置如下图中所示。

  1. 放置各层外形和标识后如下图所示。

  • 5
    点赞
  • 67
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Allegro是一款广泛使用的通用封装库,适用于开发2D游戏和多媒体应用程序。它提供了跨平台的API,支持Windows、Linux和MacOS等多种操作系统,并支持多种编程语言,如C、C++、Python和Pascal等。 使用Allegro,开发者可以方便地创建游戏图形界面、处理输入事件、播放音频和视频等多媒体操作,还可以处理鼠标、键盘、游戏手柄和触摸屏等不同的输入设备。此外,Allegro还提供了丰富的工具包,如图像处理器、字体处理器和物理引擎等,为游戏开发者提供了便捷的开发工具和函数库。 Allegro具有轻量级、快速、易用和灵活等特点,允许开发者定制自己的游戏引擎,并快速创建自己的游戏。Allegro还提供了丰富的文档和示例,方便开发者使用和学习。 总之,与其他2D游戏引擎相比,Allegro是一款更加轻量级、更加自由的游戏引擎,它提供了广泛的支持和丰富的功能,是开发2D游戏和多媒体应用程序的理想选择。 ### 回答2: Allegro通用封装库是一个免费的跨平台游戏开发库。它提供了一组易于使用的函数,可用于创建2D和3D图形,音频、输入设备、文件访问以及其他常见的游戏开发任务。Allegro是针对C和C++编程语言设计的,它可用于Windows、Mac OS X、Linux和其他常见平台的开发。 Allegro是为游戏开发者而设计的,它非常适合于开发各种类型的2D和3D游戏,包括平台游戏、射击游戏、角色扮演游戏等。它支持多种图形格式,如BMP、JPG、PNG等,并可以实时绘制2D和3D图形。此外,Allegro还具有强大的音频支持,包括WAV、OGG和MP3等常见格式和音量控制、回放等高级选项。 除了图像和音频处理,Allegro还提供了键盘、鼠标和游戏控制器的输入支持,以及文件和网络访问等功能。这使得它非常适合于开发全面的、可定制的游戏。 总之,Allegro通用封装库是一个强大的、高效的游戏开发库,它让游戏开发者能够专注于游戏的创意和设计,而不必花费大量时间和精力去解决技术细节问题。Allegro还有一个强大的社区支持,其中包括文档、教程和示例,可以帮助开发者更快地掌握其功能。 ### 回答3: Allegro 是一个广泛使用的跨平台游戏开发库,提供了丰富的图形、音频、输入和文件处理功能,同时也具有易于使用和高度可定制的特点。它使用 C/C++ 语言编写,适用于 Windows、macOS、Linux、Android 等多个平台,并支持多种编程语言的绑定。Allegro 的主要目的是为游戏开发者提供一个高效、灵活且可扩展的工具集,让他们可以专注于游戏的创作而无需担心低级细节。 Allegro 开发库支持多种图形 API、音频渲染和接收用户输入等功能。它还为开发者提供了一系列工具集,用于构建高效、流畅的游戏运行环境。这些工具包括位图、图像格式处理、鼠标键盘事件处理、音频编解码等,以及一个简单易用的物理引擎和碰撞检测系统。 总之,Allegro 是一款功能强大、易于使用的跨平台游戏开发库,它为游戏开发者提供了可靠的工具和代码库,帮助他们快速开发出高质量、流畅的游戏。无论是初学者还是经验丰富的开发者都可以轻松上手 Allegro,并创造出独具特色的游戏。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值