ARM-7设计报告

  • 格式:doc
  • 大小:938.00 KB
  • 文档页数:17

ARM-7核心板一、设计任务在周立功的Magic ARM2200-S实验箱上,实验箱的主体部分是用户板,由一些直接用于实验的单元电路构成的,比如数码管、按键、蜂鸣器等;而实验箱的核心部分却在另一块小的电路板上,这就是我们现在要开发的ARM-7核心板,它是主要由ARM-7芯片、存储器芯片、接插件和一些辅助电路构成。

ARM-7芯片也像其他单片机一样,内部包含一些存储器,不过只是芯片内部存储器还不够的,还需要在芯片的外围扩充一些。

所以我们的核心板主要就是ARM-7芯片和存储器芯片构成的。

ARM-7芯片所用的型号是LPC2200FET144,存储器NOR FLASH芯片的型号为SST39VF160,存储器PSRAM芯片的型号为MT45W4MW16,存储器NAND FLASH芯片的型号为K9F2808U0C二、原理设计1、功能模块ARM-7芯片LPC2200FET144的P2口(P2.0~P2.31),同时也是与存储器连接时的数据口(D0~D31);P3口的低24位(P3.0~P3.23),同时也是与存储器连接时的地址线(A0~A23);P3.27还作为“写”存储器的控制信号(WE、低电平有效);P1.1还作为“读”存储器的控制信号(OE、低电平有效);P3.31~P3.28还作为指示32位数据线上哪些字节有效的BLS0~BLS3(低电平有效)信号线;LPC2200FET144芯片把外部存储器划分成4个区块Bank0~Bank3,在访问某一个区块的存储单元时,有对应的CSn(低电平有效)引脚输出低电平,而P1.0还作为CS0,P3.26~P3.24还作为CS1~CS3。

为了进行调试和下载,LPC2200FET144芯片安排以下几个引脚连接JTAG接口:RTCK (P1.26)、TDO(P1.27)、TDI(P1.28)、TCK(P1.29)、TMS(P1.30)、TRST(P3.1)。

2、主要模块工作原理图1 ARM-7核心板的总线接口和GPIO端口三、 PCB板设计1.PCB板规划1)绘制核心板的边框ARM-7核心板的外形如下图所示:如图6-19所示,ARM-7核心板总体形状近似一个正方形,在左边有两个定位孔;右边放置“金手指”,右边的缺口正是金手指上所需要的;在上下两边,各有一个半圆形缺口,用于辅助定位。

我们把ARM-7核心板图纸的幅面尺寸定为14000×8000,并以板的右下角为坐标原点,而把整个图纸的左下角的坐标设为:(-4000,-2500)。

下面我们开始绘制PCB板的板框,根据图2上的尺寸,我们首先采用绘制多边形的方式画出板框的初稿,如下图所示:图3采用绘制多边形方式画出的板框在图3中,三个缺口处,都是直线和直角形式,并不是圆弧,我们将采用倒圆弧角的方式,使其变成半圆状态,如下图所示:图4 倒角后的板框2)放置定位孔接着我们放置定位孔,回到创建ARM-7核心板的环境中,点击“Place→Manually…”菜单项,弹出如下对话框:图5 放置定位孔在图5中,首先选择要放置元件的类别为“Mechanical symbol”,然后选择我们在前面创建的定位孔“mtg130”,就可以把它放置到PCB板上了。

显然定位孔的位置一旦放好了,在后面的设计过程中就不应该移动它了,为了避免误操作,我们要把它固定住:用鼠标右键点击定位孔,在弹出的菜单中选择“Fix”,它就被固定住了。

对于其它元器件,只要确定它的位置不需要再移动了,也可以用上述办法将其固定住。

定位孔放置完成后板框如下图所示:图6 放置定位孔后的板框2.主要元器件封装2.1.制作“金手指”元件封装我们要制作的“金手指”共有144个焊盘(或称“引脚”),其奇数焊盘都在顶层、偶数焊盘都在底层。

“金手指”当中有一个缺口,将“金手指”分成两部分:焊盘编号1~60为前半部分,焊盘编号61~144为后半部分;缺口处相邻两焊盘的中心距为177mil,其余处两个相邻焊盘的中心距是32mil。

打开“PCB Edit”软件,新建“edge_144”元件封装。

根据初步计算,我们把图纸的宽度定为3000mil,高度定为1500mil,图纸中心为原点。

首先放置顶层前半部分的焊盘,点击“Layout→Pins”菜单项后,在“Options”窗口中,选择焊盘为“smd20rec150t”,其余按照下图设置:图7 放置顶层前半部分焊盘时的“Options”窗口设置设置“Options”窗口后,在命令窗口输入“x -1209 -150”,于是就放置了顶层前半部分的30个焊盘。

我们接着放置顶层后半部分的42个焊盘,在“Options”窗口中,按照下图设置:图8 放置顶层后半部分焊盘时的“Options”窗口设置在命令窗口输入“x -104 -150”,于是就放置了顶层后半部分的42个焊盘。

我们接着放置底层前半部分的30个焊盘,首先选择焊盘为“smd20rec150b”,在“Options”窗口中,按照下图设置:图9 放置底层前半部分焊盘时的“Options”窗口设置在命令窗口输入“x -1209 -150”,于是就放置了底层前半部分的30个焊盘。

我们接着放置底层后半部分的42个焊盘,在“Options”窗口中,按照下图设置:图10 放置底层后半部分焊盘时的“Options”窗口设置焊盘放置结束后,再进行外框、占地区域、参考编号的设置,这些部分与常规的元件类似,就不多说了。

最后的元件封装如下图所示:图11 “金手指”封装完成图在图11中,请注意在顶层和底层都要放置占地区域。

另外为了标识清晰,在顶层1号、143号焊盘处,用顶层丝印层添加“1”和“143”文本;在底层2号、144号焊盘处,用底层丝印层添加“2”和“144”文本,同时还要对底层的文本进行“磁镜像”操作(点击文本后,用点击鼠标右键,在弹出的菜单中选择“Mirror Geometry”)。

2.2 BGA封装的制作2.2.2BGA封装简介BGA封装的芯片,是大规模的芯片近年来的流行趋势,因为诸如FPGA、微处理器等芯片的管脚数越来越大,常常需要500~600条之多,即使采用四面都是密集管脚的QFP封装形式,也非常困难。

为了能安排下这么多管脚,导致芯片的尺寸变大,芯片的成品率下降。

BGA封装能够很好地解决上述,它不像其它芯片封装形式那样,只在芯片的边沿处布有引脚,BGA封装在芯片整个底面都布置上引脚,比如LPC2220FET144芯片就有采用BGA封装形式的,如下图所示:图12 TFBGA144封装尺寸图图12是一个144管脚的BGA封装芯片的结构图。

如图所示,BGA封装的芯片在其底面上,密布了众多管脚,而每个管脚是一个个小的锡球。

由于管脚由“线分布”变成了“面分布”,所以同样尺寸的芯片就可以安排更多的管脚,芯片的价格也就更低。

同样是144脚的芯片,如果采用TQFP封装形式,其占用的面积大概是BGA封装形式芯片的4倍。

虽然BGA封装的芯片有着上述的优点,但是因为管脚的密度很高,就给PCB板的设计带来不小的难度,通常包含BGA封装芯片的PCB板总是采用多层PCB板。

2.2.3 制作BGA封装的焊盘下面我们就开始制作BGA封装的焊盘,BAG封装的焊盘制作比较简单,仅仅需要一个圆形的单层焊盘,这个圆形焊盘的直径一般比锡球直径略小,我们选择0.4mm。

该焊盘的名称命名为:“smd16cir”(表示直径为16mil的圆形表层焊盘)。

由于制作表层焊盘比较简单,就不过多地介绍了。

2.3 制作BGA封装下面我们使用向导的方式创建BGA封装,打开“PCB Edit”软件,点击“File→New…”在弹出的对话框中按照下图方式,进入向导方式创建元件封装:图13 采用向导方式创建TFBGA144封装1单击“OK”按键后,在新出现的对话框中按照下图设置,选择“PGA/BGA”选项:图14 采用向导向导方式创建TFBGA144封装2点击“Next”按键后,在新的对话框中,首先点击“Load Template”(选择默认的模板),然后点击“Next”。

图15 采用向导向导方式创建TFBGA144封装3在图15中点击“Next”后,在新出现的对话框中,设置所用的单位和参考编号前缀。

我们采用毫米为单位,参考编号以“U”为前缀,如下图所示:图16 采用向导向导方式创建TFBGA144封装4在图16中,点击“Next”后,在新的对话框中设置焊盘的排列方式,根据芯片资料上管脚的排列方式,进行如下设置:图17 采用向导向导方式创建TFBGA144封装4在图17中,完成设置后点击“Next”按键,新出现的对话框,它是设置焊盘编号的排列顺序的。

由于其默认值与芯片资料的当顺序完全一致,所以不必进行设置,直接点击“Next”按键,在新出现的对话框中,设置管脚间距和元件的尺寸,我们根据芯片资料,按照下图方式进行设置:图18 采用向导向导方式创建TFBGA144封装4在图184中,点击“Next”按键后,出现新的对话框,在该对话框中,选择焊盘,我们选择“smd16cir”,以下的设置都比较简单,就不多述了,最后创建的TFBGA144封装的元件封装,如下图所示:图19 TFBGA144封装完成图同样,在ARM-7核心板电路中,NOR FLASH芯片SST39VF160和PSRAM芯片MT54W4MW16也是采用BGA封装的,请同学们自行查找资料并完成芯片封装的设计。

3、元器件的布局3.1 电源层、地层的分割在ARM-7核心板上,有两个地线网络:数字地和模拟地,其中数字地的网络名为“Gnd”,模拟地的网络名为“Agnd”。

在前面我们已经在“Gnd”层建立了“Gnd”网络的Shape,它的范围是整个板的区域。

我们直接在“Gnd”层建立另一个连接“Agnd”网络Shape,就可以实现“Gnd”平面层的分割。

点击“Shape→Polygon”,然后在“Options”小窗口中按下图进行设置:图20 建立新“Shape”的设置接着我们在PCB板上绘制多边形,这个多边形应该将所有“Agnd”网络的焊盘都包括进去,而不要包含“Gnd”网络的焊盘,也不要让“Gnd”网络的焊盘形成“孤岛”。

绘制多边形之后,就自动地将“Gnd”层进行了分割图21 地层的分割图22 电源层的分割在图21中创建了“Agnd”网络的Shape,它与“Gnd”网络的Shape之间的距离为15mil,这是我们前面在间距规则中所设置的。

另外我们还应该在“Vcc”层创建连接“Vdd1.8”、“A vdd3.3”、“A vdd1.8”网络的三个Shape。

如果希望修改已经画出的Shape,可以点击“Shape→Edit Boundary”菜单项,然后直接用鼠标在要修改之处重新划线。