?? pcb設計基礎知識.htm
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0044)http://www.21ele.com/article_view.asp?id=470 -->
<HTML><HEAD><TITLE>華程電子 - 專題文章(PCB設計)</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312"><LINK
href="PCB設計基礎知識.files/edxsky_skin_1.css" type=text/css rel=stylesheet>
<SCRIPT language=javascript src="PCB設計基礎知識.files/edxsky_config.js"></SCRIPT>
<SCRIPT language=javascript>
<!--Power by edxsky.com
var lmenu_true=true;
var stamp_num=2;
var now_time='2004-09-20 18:33:43';
var login_username='xiaobing';
var login_mode='user';
var user_ip='218.61.13.219';
var user_sys='Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)';
var m_channel='article';
var m_nsort='';
var action='';
var tit='專題文章(PCB設計)';
var tit_fir='技術文欄';
var web_counter='67310';
var web_max_online='59';
var web_max_tim='2004-8-6 15:08:47';
var web_start_tim='2003年6月';
var web_new_num='7';
var web_num_topic='658';
var web_num_data='2359';
var web_num_reg='25317';
var web_new_username='sdwb26';
var web_online_num=7;
var num_rs=0;
var pro_edition='';
var exec_tim='';
var login_message=0;
var time_now=new Date();
var time_start=time_now.getTime();
-->
</SCRIPT>
<SCRIPT language=javascript src="PCB設計基礎知識.files/edxsky_functions.js"></SCRIPT>
<SCRIPT language=javascript src="PCB設計基礎知識.files/mouse_on_title.js"></SCRIPT>
<SCRIPT language=javascript src="PCB設計基礎知識.files/edxsky_menu.js"></SCRIPT>
<SCRIPT language=javascript src="PCB設計基礎知識.files/edxsky_common.js"></SCRIPT>
<SCRIPT language=javascript>
<!--Power by edxsky.com
web_head(3,'article');
web_left(3);
var cid=27;sid=130;cname="";sname="";
-->
</SCRIPT>
<SCRIPT language=javascript src="PCB設計基礎知識.files/edxsky_article.js"></SCRIPT>
<SCRIPT language=javascript src="PCB設計基礎知識.files/data_sort_art.js"></SCRIPT>
<SCRIPT language=javascript src="PCB設計基礎知識.files/sort_type_article.js"></SCRIPT>
<SCRIPT language=javascript>
<!--Power by edxsky.com
article_view1(470,'PCB設計基礎知識','2004年05月06日','','');
-->
</SCRIPT>
<META content="MSHTML 6.00.2800.1106" name=GENERATOR></HEAD>
<BODY><FONT class=htd id=font_word
style="FONT-SIZE: 14px; FONT-FAMILY: 宋體, Verdana, Arial, Helvetica, sans-serif">印刷電路板(Printed circuit board,PCB)幾乎會出現在每一種電子設備當中。如果在某樣設備中有電子零件,那么它們也都是鑲在大小各異的PCB上。除了固定各種小零件外,PCB的主要功能是提供上頭各項零件的相互電氣連接。隨著電子設備越來越復雜,需要的零件越來越多,PCB上頭的線路與零件也越來越密集了。 標準的PCB長得就像這樣。裸板(上頭沒有零件)也常被稱為「印刷線路板Printed Wiring Board(PWB)」。 <BR>板子本身的基板是由絕緣隔熱、并不易彎曲的材質所制作成。在表面可以看到的細小線路材料是銅箔,原本銅箔是覆蓋在整個板子上的,而在制造過程中部份被蝕刻處理掉,留下來的部份就變成網狀的細小線路了。這些線路被稱作導線(conductor pattern)或稱布線,并用來提供PCB上零件的電路連接。<BR>為了將零件固定在PCB上面,我們將它們的接腳直接焊在布線上。在最基本的PCB(單面板)上,零件都集中在其中一面,導線則都集中在另一面。這么一來我們就需要在板子上打洞,這樣接腳才能穿過板子到另一面,所以零件的接腳是焊在另一面上的。因為如此,PCB的正反面分別被稱為零件面(Component Side)與焊接面(Solder Side)。 <BR>如果PCB上頭有某些零件,需要在制作完成后也可以拿掉或裝回去,那么該零件安裝時會用到插座(Socket)。由于插座是直接焊在板子上的,零件可以任意的拆裝。下面看到的是ZIF(Zero Insertion Force,零撥插力式)插座,它可以讓零件(這里指的是CPU)可以輕松插進插座,也可以拆下來。插座旁的固定桿,可以在您插進零件后將其固定。 <BR>如果要將兩塊PCB相互連結,一般我們都會用到俗稱「金手指」的邊接頭(edge connector)。金手指上包含了許多裸露的銅墊,這些銅墊事實上也是PCB布線的一部份。通常連接時,我們將其中一片PCB上的金手指插進另一片PCB上合適的插槽上(一般叫做擴充槽Slot)。在計算機中,像是顯示卡,聲卡或是其它類似的界面卡,都是借著金手指來與主機板連接的。 <BR>PCB上的綠色或是棕色,是阻焊漆(solder mask)的顏色。這層是絕緣的防護層,可以保護銅線,也可以防止零件被焊到不正確的地方。在阻焊層上另外會印刷上一層絲網印刷面(silk screen)。通常在這上面會印上文字與符號(大多是白色的),以標示出各零件在板子上的位置。絲網印刷面也被稱作圖標面(legend)。 <BR>單面板(Single-Sided Boards) <BR>我們剛剛提到過,在最基本的PCB上,零件集中在其中一面,導線則集中在另一面上。因為導線只出現在其中一面,所以我們就稱這種PCB叫作單面板(Single-sided)。因為單面板在設計線路上有許多嚴格的限制(因為只有一面,布線間不能交叉而必須繞獨自的路徑),所以只有早期的電路才使用這類的板子。 <BR>雙面板(Double-Sided Boards) <BR>這種電路板的兩面都有布線。不過要用上兩面的導線,必須要在兩面間有適當的電路連接才行。這種電路間的「橋梁」叫做導孔(via)。導孔是在PCB上,充滿或涂上金屬的小洞,它可以與兩面的導線相連接。因為雙面板的面積比單面板大了一倍,而且因為布線可以互相交錯(可以繞到另一面),它更適合用在比單面板更復雜的電路上。 <BR>多層板(Multi-Layer Boards) <BR><BR>為了增加可以布線的面積,多層板用上了更多單或雙面的布線板。多層板使用數片雙面板,并在每層板間放進一層絕緣層后黏牢(壓合)。板子的層數就代表了有幾層獨立的布線層,通常層數都是偶數,并且包含最外側的兩層。大部分的主機板都是4到8層的結構,不過技術上可以做到近100層的PCB板。大型的超級計算機大多使用相當多層的主機板,不過因為這類計算機已經可以用許多普通計算機的集群代替,超多層板已經漸漸不被使用了。因為PCB中的各層都緊密的結合,一般不太容易看出實際數目,不過如果您仔細觀察主機板,也許可以看出來。 <BR><BR>我們剛剛提到的導孔(via),如果應用在雙面板上,那么一定都是打穿整個板子。不過在多層板當中,如果您只想連接其中一些線路,那么導孔可能會浪費一些其它層的線路空間。埋孔(Buried vias)和盲孔(Blind vias)技術可以避免這個問題,因為它們只穿透其中幾層。盲孔是將幾層內部PCB與表面PCB連接,不須穿透整個板子。埋孔則只連接內部的PCB,所以光是從表面是看不出來的。 <BR><BR>在多層板PCB中,整層都直接連接上地線與電源。所以我們將各層分類為信號層(Signal),電源層(Power)或是地線層(Ground)。如果PCB上的零件需要不同的電源供應,通常這類PCB會有兩層以上的電源與電線層。 <BR>零件封裝技術 <BR><BR>插入式封裝技術(Through Hole Technology) <BR><BR>將零件安置在板子的一面,并將接腳焊在另一面上,這種技術稱為「插入式(Through Hole Technology,THT)」封裝。這種零件會需要占用大量的空間,并且要為每只接腳鉆一個洞。所以它們的接腳其實占掉兩面的空間,而且焊點也比較大。但另一方面,THT零件和SMT(Surface Mounted Technology,表面黏著式)零件比起來,與PCB連接的構造比較好,關于這點我們稍后再談。像是排線的插座,和類似的界面都需要能耐壓力,所以通常它們都是THT封裝。 <BR>表面黏貼式封裝技術(Surface Mounted Technology) <BR><BR>使用表面黏貼式封裝(Surface Mounted Technology,SMT)的零件,接腳是焊在與零件同一面。這種技術不用為每個接腳的焊接,而都在PCB上鉆洞。 <BR>表面黏貼式的零件,甚至還能在兩面都焊上。 <BR>SMT也比THT的零件要小。和使用THT零件的PCB比起來,使用SMT技術的PCB板上零件要密集很多。SMT封裝零件也比THT的要便宜。所以現今的PCB上大部分都是SMT,自然不足為奇。 <BR><BR>因為焊點和零件的接腳非常的小,要用人工焊接實在非常難。不過如果考慮到目前的組裝都是全自動的話,這個問題只會出現在修復零件的時候吧。 <BR><BR>設計流程 <BR><BR>在PCB的設計中,其實在正式布線前,還要經過很漫長的步驟,以下就是主要設計的流程: <BR><BR>系統規格 <BR><BR>首先要先規劃出該電子設備的各項系統規格。包含了系統功能,成本限制,大小,運作情形等等。 <BR><BR>系統功能區塊圖 <BR><BR>接下來必須要制作出系統的功能方塊圖。方塊間的關系也必須要標示出來。 <BR><BR>將系統分割幾個PCB <BR><BR>將系統分割數個PCB的話,不僅在尺寸上可以縮小,也可以讓系統具有升級與交換零件的能力。系統功能方塊圖就提供了我們分割的依據。像是計算機就可以分成主機板、顯示卡、聲卡、軟盤驅動器和電源等等。 <BR><BR>決定使用封裝方法,和各PCB的大小 <BR><BR>當各PCB使用的技術和電路數量都決定好了,接下來就是決定板子的大小了。如果設計的過大,那么封裝技術就要改變,或是重新作分割的動作。在選擇技術時,也要將線路圖的品質與速度都考量進去。 <BR><BR>繪出所有PCB的電路概圖 <BR><BR>概圖中要表示出各零件間的相互連接細節。所有系統中的PCB都必須要描出來,現今大多采用CAD(計算機輔助設計,Computer Aided Design)的方式。下面就是使用CircuitMakerTM設計的范例。 <BR>PCB的電路概圖 <BR><BR>初步設計的仿真運作 <BR><BR>為了確保設計出來的電路圖可以正常運作,這必須先用計算機軟件來仿真一次。這類軟件可以讀取設計圖,并且用許多方式顯示電路運作的情況。這比起實際做出一塊樣本PCB,然后用手動測量要來的有效率多了。 <BR><BR>將零件放上PCB <BR><BR>零件放置的方式,是根據它們之間如何相連來決定的。它們必須以最有效率的方式與路徑相連接。所謂有效率的布線,就是牽線越短并且通過層數越少(這也同時減少導孔的數目)越好,不過在真正布線時,我們會再提到這個問題。下面是總線在PCB上布線的樣子。為了讓各零件都能夠擁有完美的配線,放置的位置是很重要的。 <BR>測試布線可能性,與高速下的正確運作 <BR><BR>現今的部份計算機軟件,可以檢查各零件擺設的位置是否可以正確連接,或是檢查在高速運作下,這樣是否可以正確運作。這項步驟稱為安排零件,不過我們不會太深入研究這些。如果電路設計有問題,在實地導出線路前,還可以重新安排零件的位置。 <BR><BR>導出PCB上線路 <BR><BR>在概圖中的連接,現在將會實地作成布線的樣子。這項步驟通常都是全自動的,不過一般來說還是需要手動更改某些部份。下面是2層板的導線模板。紅色和藍色的線條,分別代表PCB的零件層與焊接層。白色的文字與四方形代表的是網版印刷面的各項標示。紅色的點和圓圈代表鉆洞與導孔。最右方我們可以看到PCB上的焊接面有金手指。這個PCB的最終構圖通常稱為工作底片(Artwork)。 <BR><BR>每一次的設計,都必須要符合一套規定,像是線路間的最小保留空隙,最小線路寬度,和其它類似的實際限制等。這些規定依照電路的速度,傳送信號的強弱,電路對耗電與噪聲的敏感度,以及材質品質與制造設備等因素而有不同。如果電流強度上升,那導線的粗細也必須要增加。為了減少PCB的成本,在減少層數的同時,也必須要注意這些規定是否仍舊符合。如果需要超過2層的構造的話,那么通常會使用到電源層以及地線層,來避免信號層上的傳送信號受到影響,并且可以當作信號層的防護罩。 <BR><BR>導線后電路測試 <BR><BR>為了確定線路在導線后能夠正常運作,它必須要通過最后檢測。這項檢測也可以檢查是否有不正確的連接,并且所有聯機都照著概圖走。 <BR>建立制作檔案 <BR><BR>因為目前有許多設計PCB的CAD工具,制造廠商必須有符合標準的檔案,才能制造板子。標準規格有好幾種,不過最常用的是Gerber files規格。一組Gerber files包括各信號、電源以及地線層的平面圖,阻焊層與網板印刷面的平面圖,以及鉆孔與取放等指定檔案。 <BR><BR>電磁兼容問題 <BR><BR>沒有照EMC(電磁兼容)規格設計的電子設備,很可能會散發出電磁能量,并且干擾附近的電器。EMC對電磁干擾(EMI),電磁場(EMF)和射頻干擾(RFI)等都規定了最大的限制。這項規定可以確保該電器與附近其它電器的正常運作。EMC對一項設備,散射或傳導到另一設備的能量有嚴格的限制,并且設計時要減少對外來EMF、EMI、RFI等的磁化率。換言之,這項規定的目的就是要防止電磁能量進入或由裝置散發出。這其實是一項很難解決的問題,一般大多會使用電源和地線層,或是將PCB放進金屬盒子當中以解決這些問題。電源和地線層可以防止信號層受干擾,金屬盒的效用也差不多。對這些問題我們就不過于深入了。 <BR><BR>電路的最大速度得看如何照EMC規定做了。內部的EMI,像是導體間的電流耗損,會隨著頻率上升而增強。如果兩者之間的的電流差距過大,那么一定要拉長兩者間的距離。這也告訴我們如何避免高壓,以及讓電路的電流消耗降到最低。布線的延遲率也很重要,所以長度自然越短越好。所以布線良好的小PCB,會比大PCB更適合在高速下運作。 <BR>制造流程 <BR><BR>PCB的制造過程由玻璃環氧樹脂(Glass Epoxy)或類似材質制成的「基板」開始<BR>影像(成形/導線制作) <BR><BR>制作的第一步是建立出零件間聯機的布線。我們采用負片轉?。⊿ubtractive transfer)方式將工作底片表現在金屬導體上。這項技巧是將整個表面鋪上一層薄薄的銅箔,并且把多余的部份給消除。追加式轉?。ˋdditive Pattern transfer)是另一種比較少人使用的方式,這是只在需要的地方敷上銅線的方法,不過我們在這里就不多談了。 <BR><BR>如果制作的是雙面板,那么PCB的基板兩面都會鋪上銅箔,如果制作的是多層板,接下來的步驟則會將這些板子黏在一起。 <BR><BR>接下來的流程圖,介紹了導線如何焊在基板上。 <BR><BR>正光阻劑(positive photoresist)是由感光劑制成的,它在照明下會溶解(負光阻劑則是如果沒有經過照明就會分解)。有很多方式可以處理銅表面的光阻劑,不過最普遍的方式,是將它加熱,并在含有光阻劑的表面上滾動(稱作干膜光阻劑)。它也可以用液態的方式噴在上頭,不過干膜式提供比較高的分辨率,也可以制作出比較細的導線。 <BR><BR>遮光罩只是一個制造中PCB層的模板。在PCB板上的光阻劑經過UV光曝光之前,覆蓋在上面的遮光罩可以防止部份區域的光阻劑不被曝光(假設用的是正光阻劑)。這些被光阻劑蓋住的地方,將會變成布線。 <BR><BR>在光阻劑顯影之后,要蝕刻的其它的裸銅部份。蝕刻過程可以將板子浸到蝕刻溶劑中,或是將溶劑噴在板子上。一般用作蝕刻溶劑的有,氯化鐵(Ferric Chloride),堿性氨(Alkaline Ammonia),硫酸加過氧化氫(Sulfuric Acid + Hydrogen Peroxide),和氯化銅(Cupric Chloride)等。蝕刻結束后將剩下的光阻劑去除掉。這稱作脫膜(Stripping)程序。<BR>鉆孔與電鍍 <BR><BR>如果制作的是多層PCB板,并且里頭包含埋孔或是盲孔的話,每一層板子在黏合前必須要先鉆孔與電鍍。如果不經過這個步驟,那么就沒辦法互相連接了。 <BR><BR>在根據鉆孔需求由機器設備鉆孔之后,孔璧里頭必須經過電鍍(鍍通孔技術,Plated-Through-Hole technology,PTH)。在孔璧內部作金屬處理后,可以讓內部的各層線路能夠彼此連接。在開始電鍍之前,必須先清掉孔內的雜物。這是因為樹脂環氧物在加熱后會產生一些化學變化,而它會覆蓋住內部PCB層,所以要先清掉。清除與電鍍動作都會在化學制程中完成。 <BR><BR>多層PCB壓合 <BR><BR>各單片層必須要壓合才能制造出多層板。壓合動作包括在各層間加入絕緣層,以及將彼此黏牢等。如果有透過好幾層的導孔,那么每層都必須要重復處理。多層板的外側兩面上的布線,則通常在多層板壓合后才處理。 <BR><BR>處理阻焊層、網版印刷面和金手指部份電鍍 <BR><BR>接下來將阻焊漆覆蓋在最外層的布線上,這樣一來布線就不會接觸到電鍍部份外了。網版印刷面則印在其上,以標示各零件的位置,它不能夠覆蓋在任何布線或是金手指上,不然可能會減低可焊性或是電流連接的穩定性。金手指部份通常會鍍上金,這樣在插入擴充槽時,才能確保高品質的電流連接。 <BR><BR>測試 <BR><BR>測試PCB是否有短路或是斷路的狀況,可以使用光學或電子方式測試。光學方式采用掃描以找出各層的缺陷,電子測試則通常用飛針探測儀(Flying-Probe)來檢查所有連接。電子測試在尋找短路或斷路比較準確,不過光學測試可以更容易偵測到導體間不正確空隙的問題。 <BR><BR>零件安裝與焊接 <BR><BR>最后一項步驟就是安裝與焊接各零件了。無論是THT與SMT零件都利用機器設備來安裝放置在PCB上。 <BR><BR>THT零件通常都用叫做波峰焊接(Wave Soldering)的方式來焊接。這可以讓所有零件一次焊接上PCB。首先將接腳切割到靠近板子,并且稍微彎曲以讓零件能夠固定。接著將PCB移到助溶劑的水波上,讓底部接觸到助溶劑,這樣可以將底部金屬上的氧化物給除去。在加熱PCB后,這次則移到融化的焊料上,在和底部接觸后焊接就完成了。 <BR><BR>自動焊接SMT零件的方式則稱為再流回焊接(Over Reflow Soldering)。里頭含有助溶劑與焊料的糊狀焊接物,在零件安裝在PCB上后先處理一次,經過PCB加熱后再處理一次。待PCB冷卻之后焊接就完成了,接下來就是準備進行PCB的最終測試了<BR>節省制造成本的方法 <BR><BR>為了讓PCB的成本能夠越低越好,有許多因素必須要列入考量: <BR><BR>板子的大小自然是個重點。板子越小成本就越低。部份的PCB尺寸已經成為標準,只要照著尺寸作那么成本就自然會下降。CustomPCB網站上有一些關于標準尺寸的信息。 <BR>使用SMT會比THT來得省錢,因為PCB上的零件會更密集(也會比較小)。 <BR>另一方面,如果板子上的零件很密集,那么布線也必須更細,使用的設備也相對的要更高階。同時使用的材質也要更高級,在導線設計上也必須要更小心,以免造成耗電等會對電路造成影響的問題。這些問題帶來的成本,可比縮小PCB尺寸所節省的還要多。 <BR>層數越多成本越高,不過層數少的PCB通常會造成大小的增加。 <BR>鉆孔需要時間,所以導孔越少越好。 <BR>埋孔比貫穿所有層的導孔要貴。因為埋孔必須要在接合前就先鉆好洞。 <BR>板子上孔的大小是依照零件接腳的直徑來決定。如果板子上有不同類型接腳的零件,那么因為機器不能使用同一個鉆頭鉆所有的洞,相對的比較耗時間,也代表制造成本相對提升。 <BR>使用飛針式探測方式的電子測試,通常比光學方式貴。一般來說光學測試已經足夠保證PCB上沒有任何錯誤。 <BR>總而言之,廠商在設備上下的工夫也是越來越復雜了。了解PCB的制造過程是很有用的,因為當我們在比較主機板時,相同效能的板子成本可能不同,穩定性也各異,這也讓我們得以比較各廠商的能力。 <BR><BR>好的工程師可以光看主機板設計,就知道設計品質的好壞。您也許自認沒那么強,不過下次您拿到主機板或是顯示卡時,不妨先鑒賞一下PCB設計之美吧!</FONT>
<SCRIPT language=javascript>
<!--Power by edxsky.com
article_view2(470,'PCB設計基礎知識',491,'21ele',469,'怎樣做一塊好的PCB板',471,'利用手機模塊實現短消息');
article_bar_top('文章分類',0);
sort_type('article_list.asp?',0,0);
article_bar_end('',0);
article_bar_top('文章評論',0);
-->
</SCRIPT>
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR>
<TD class=bg_tds height=20> → <A
onclick="document.all.review_word.style.display=document.all.review_word.style.display=='none'?'':'none';return false;"
href="javsscript:;"><B>評論內容</B> (點擊查看)</A> 共<FONT
class=red>9</FONT>條評論,每頁顯示<FONT class=red>20</FONT>條評論 <A
onclick="javascript:open_win('review.asp?action=list&rsort=art&re_id=470','review_list',500,400,'no');"
href="javascript:;">瀏覽所有評論</A></TD></TR>
<TR id=review_word>
<TD class=bg_td align=middle>
<TABLE class=table borderColor=#808080 cellSpacing=1 cellPadding=2
border=0>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -