《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于MPC7448的高端PowerPC常見問題解決方法
基于MPC7448的高端PowerPC常見問題解決方法
來源:微型機與應用2013年第9期
楊勁松
(中國電子科技集團公司第五十二研究所,浙江 杭州 310012)
摘要: 簡單介紹了MPC7448微處理器的分類及應用。以本公司某型號為例,闡述了以MPC7448處理器為核心的最小系統原理、架構,著重介紹了該產品在調試和維修過程中可能遇到的問題及解決方法,希望在對以MPC7448為處理器的主控板產品的調試和維修有借鑒作用。
Abstract:
Key words :

摘  要: 簡單介紹了MPC7448微處理器的分類及應用。以本公司某型號為例,闡述了以MPC7448處理器為核心的最小系統原理、架構,著重介紹了該產品在調試和維修過程中可能遇到的問題及解決方法,希望在對以MPC7448為處理器的主控板產品的調試和維修有借鑒作用。
關鍵詞: MPC7448;最小系統;PowerPC

     MPC7448系列是飛思卡爾(Freescale)PowerPC主處理器中目前已量產的最高端系列產品,秉承了以往的PowerPC系統高穩(wěn)定、高可靠、低功耗的特點,其主頻范圍為1 GHz~1.7 GHz,極大地提高了基于PowerPC的嵌入式處理器的性能;同時有效地管理功率并改進AltiVec吞吐量,帶有1 MB的L2高速緩存,使每瓦特功率獲得最佳的性能[1]。MPC7448最小系統在國外研究較早,幾乎與MPC7448樣片同步進行。目前,以MPC7448為處理器的系統已應用到高端通信、軍事及工控領域,如軟交換系統、無線基站控制器、雷達測控、聲納、火炮控制、電子對抗及氣象預測等。
     在對系統運算處理能力要求較高而希望功耗在比較理想范圍內的高端應用場合,可以讓兩個或者兩個以上的處理器以多處理器的方式協同工作。多處理器系統有不同的實現方式,總體上可以分為對稱多處理器系統和不對稱多處理器系統。對稱多處理器系統SMP的特點是運行同一個操作系統,多個處理器共享地址空間,各處理器對軟件透明,由操作系統進行資源分配以及負荷分擔。不對稱多處理器系統AMP的特點是各個處理器可以運行相同的或不同的操作系統,各操作系統相對獨立,靜態(tài)負荷分擔[2]。
1 系統方案架構
    針對不同的應用,以MPC7448為處理器的各種系統架構基本類似,如圖1所示。其系統架構通過橋片來擴展總線及輸入輸出設備,系統的存儲器通過在北橋芯片Tis109上配置1 GB的板載DDR2 SDRAM作為整個系統的主要動態(tài)存儲單元,為軟件提供運行空間;系統還配置了兩片(可選)128 MB的Flash用作BOOT ROM及存放軟件。

2 常見問題概述
    以下所列問題均以本公司某型號單MPC7448處理器的PowerPC產品為例。由于篇幅有限,這里只能列出在生產調試維修過程中出現頻率較高、具有一定典型性的幾個問題。下列所述問題并不包括此類MPC7448主控板在調試維修過程中所出現的全部問題。調試維修過程中系統平臺連接關系圖如圖2所示。
2.1 NVRAM損壞
     故障現象:NVRAM讀寫異常。
     處理過程:此類問題可以利用JTAG仿真器,通過以下步驟來判斷NVRAM的好壞:
     (1)打開CodeWarrior IDE軟件,在DEBUG目錄中點擊connect選項,待初始化文件7448_CETC52_init.cfg編譯完成;
     (2)選擇DATA目錄下的View Memory選項,在彈出的窗口中address地址一欄里輸入0xEF000000,對NVRAM內的32 KB(0xEF000000~0xEF007FFF)空間數據進行讀寫測試;
     (3)雙擊對應地址中的數據對其進行修改,如果鍵入的數據與顯示的數據不同,則重點檢查U13、U14是否短路、虛焊或者損壞。若鍵入數據正確,則右鍵選擇Refresh選項,刷新數據。如果發(fā)現數據刷新后發(fā)生變化,而且其他地址中的數據同時發(fā)生變化,則可判斷NVRAM虛焊或損壞。
2.2 MPC7448或Tsi109損壞
    故障現象:MPC7448或Tsi109無法正常連接。
    處理過程:此類問題可以利用JTAG仿真器,通過如下步驟來判斷MPC7448或Tsi109好壞。
    (1)關閉電源,將USB-TAP一端接至PC,一端接控制板XS1(XS1的第1腳靠近接插件XS2),打開電源;
    (2)在PC上打開CodeWarrior IDE v8.8,在File菜單中新建Empty Project,打開Edit→XX Project Setting(XX為工程名)界面,在Target Setting中選擇Linker為EPPC Linux GNU Linker,點擊Apply,RemoteDebugging中Connection為CodeWarrior USB TAP,在EPPC Debugger中選擇7448處理器,配置初始化文件7448_CETC52_init.cfg,再點擊Apply。在Debug目錄中點擊connect選項,連接MPC7448,在詢問是否配置初始化文件時,選擇“Yes”。連接成功后,會跳出Connected界面,可以看到指令地址指向0xFFF00100。若連接失敗,未出現詢問對話框,則可能是MPC7448出現問題。若出現對話框并選擇“Yes”后配置文件下載速度很慢、下載失敗或下載后顯示CPU無法停止等信息,則是MPC7448或Tsi109出現問題。
2.3 PCI設備無法被識別
    故障現象:PCI設備無法被識別。
    處理過程:這里的PCI設備包括通過橋芯片總線引出的轉33 MHz PCI設備、PMC 64 bit×66 MHz插槽、PCI BUS 32 bit×33 MHz等設備。常見的問題如:所有PCI均無法識別,或某些PCI總線設備正常而其他PCI設備不正常(常見設備有USB口、PCI設備、PMC載板等)。
    總結:此問題如果是所有PCI設備均無法識別,說明Tsi109橋片工作可能出現了問題;如果是某些PCI總線設備正常而其他PCI設備不正常,這時可以圍繞某個或某些不正常PCI總線設備來確定。在處理過程中存在如芯片PCI2050BIGHK焊接存在虛焊、短路或者本身橋芯片有問題,或接口接插件本身問題等情況,這時首先可以排除PCI2050BIGHK橋芯片周圍排阻焊接問題,再根據原理圖量其周圍排阻值和正常板卡對比值是否存在誤差,如果有部分管腳阻值偏差比較大,基本確定為橋問題。在對植球BGA封裝的芯片重新植球或者更換時,要特別注意焊接工藝流程,如果板卡和芯片焊接前沒有根據其元件特性除濕,輕則可能會造成芯片損壞,嚴重可能會導致印制板焊腳脫落,直至整塊板卡報廢發(fā)生。
2.4 串口無法打印信息
    故障現象:串口無法打印信息。
    處理過程:此類問題應該說比較嚴重,出錯的位置應該在MPC7448端,而出錯的數據可能剛好在BGA的最外圍,理論上重新回焊一遍就可以生成焊盤,不需要焊下重新植球。此時連接JATG仿真器,如果軟件連接正常則說明MPC7448故障可能性比較小,可能是Tis109橋芯片出問題了,不是虛焊的問題,這時直接更換Tis109橋芯即可。
2.5 部分Flash地址無法擦寫
    故障現象:部分Flash地址無法擦寫。
處理過程:此類問題在調試時可能發(fā)生,在Flash擦寫時,Flash的0xf2000000~0xf2ffffff地址無法擦寫,其他地址空間正常。這時可以通過對軟件作相應修改或者直接更換Flash來解決。如果發(fā)現全部為壞塊,則應該直接更換處理。
3 舉例
    為了更進步說明調試及排故過程注意事項,下面著重舉一例(實際工作調試中發(fā)現的問題)加以說明。
故障現象:在對Flash燒寫內核程序時,發(fā)現“內存校驗不成功”。
處理過程:通過最小系統排除法的方式來初步分析與判斷故障出現的范圍,以達到快速定位并分析解決的目的。首先,根據調試平臺確定除待調板卡外其他調試工裝及使用應用軟件、仿真器、目標代碼文件等是否正常;然后,測量其電源對地內阻測試是否正常,如發(fā)現對地內阻有異常現象或短路時(此時切記不能加電,以免帶來不可挽回的后果),應該了解其原理先排除故障點,再進行下步操作,此類問題相對較為簡單,在這里就不加以說明;此時加電再測量其常備電壓和各關鍵點電壓是否均正常。本例中,利用CodeWarrior IDE軟件測試Flash、NVRAM以及內存時,發(fā)現內存高位地址有問題。
    根據原理架構,造成內存無法校驗的問題定位為Tis109橋芯片或者為內存本身問題。通過讀取內存地址判斷與分析,發(fā)現僅高2位有問題,進一步定為內存U35與Tis109橋芯片處問題。由于此塊MPC7448共計有8片內存,每片用到8 bit數據線,共計64 bit數據總線,為了進一步判斷是Tis109橋芯片還是內存問題,可以斷開用于連接U35內存的RP117和RP118兩個排阻,分別給于兩個排阻靠近Tis109橋芯片一個1.8 V的高電平,為了避免電壓有可能帶來的損壞,可串入兩個1 k?贅左右的電阻(此步驗證結果如果全為F,則說明Tis109芯片沒有問題,反之此Tis109芯片有問題)。此時連接USB仿真器,使用CodeWarrior IDE軟件測試內存,發(fā)現高位均為FF,證明Tis109橋芯片為正常,這時進一步定位到U35問題。為了驗證是U35芯片本身問題還是焊接問題,可以對U35重新人工植球后重新焊接,如果正常為焊接問題。通過上述驗證發(fā)現故障現象相同,故對U35進行了更換新的芯片處理。處理后再通過使用CodeWarrior IDE軟件測試內存,發(fā)現高位均為FF,此時再去校驗內存通過。通過此例可以看出在了解其架構的基礎上,再從大到小的定位過程。
    就生產過程中遇到的問題而言,除了器件本身失效的問題,還有一些如工藝過程導致的問題以及外部因素及焊接上的問題。由于本板卡成本相對比較高,需要調試維修人員及使用人員在各個環(huán)節(jié)都要加以注意和保護。
參考文獻
[1] 秦東明,朱大勇,張新麗,等.基于MPC7447A單板計算機系統設計[J].微計算機信息,2008(29):43-46.
[2] 張大波,吳迪,郝軍,等.嵌入式系統原理、設計與應用[M].北京:機械工業(yè)出版社,2004.

此內容為AET網站原創(chuàng),未經授權禁止轉載。