###### tags: `TSC` `Linux` NXP i.MX8M Mini 開板流程 (Board Bring Up) ===================================== 世平集團代理`NXP的i.MX 8M Mini`應用處理器適用於高效能、低功耗的嵌入式系統,經過硬體人員縝密的設計電路圖、佈線後,第一個面臨的關卡就是洗板及打件回來後的開板,如果開板失敗將造成目標板(Target Board)變磚了。對於嵌入式系統來說,開板是一個重要的時刻。所以今天跟大家分享一下開板流程及相關注意事項。 - **文件與使用工具** **** # 開板流程 ## **0\. PCB 板檢查:** 在沒有焊接零件的PCB 裸板,先利用三用電表檢查有沒有短路或斷路的情況,特別是各組電源是否有短路? ## **1\. 上電前目視檢查:** 檢查主要零件是否有打件錯誤的情況,比如說IC、二極體、電晶體有沒有位置裝反或是旋轉的問題? ## **2\. 上電檢查電源:** 使用可限流的電源供應器,上電過程中如果超過限流則必須立即關掉電源,並檢查電源是否有短路的狀況?並檢查i.MX8M Mini 的各組電壓是否符合Datasheet 的要求,測量電壓要在電源輸出端(PMIC)和i.MX8M Mini 電源輸入端(越近越好,如在濾波電容上測量)兩側都要確認,以免有電壓衰退(IR-Drop)的狀況發生。建議在系統輕載及滿載時各量測⼀次,以確保電源的穩定度。  使用示波器檢查電源上電時序是否滿足Datasheet 要求。  ## **3.檢查系統時脈:** 電源啟動後,24MHz震盪器會自動起振,使用示波器檢查24M\_XTALI 及24M\_XTALO,檢查振盪器頻率時建議使用主動式探棒避免負載過大導致24MHz震盪器不容易起振。i.MX8M Mini上的32.768KHz是使用PMIC的CLK\_32K\_OUT輸出,可以一併檢查。 ## **4.檢查POR是否正確:** 系統上電後,PMIC預設會先提供NVCC\_SNVS\_1P8及VDD\_SNVS\_0P8兩組電源,i.MX8M Mini有SNVS電源之後會發PMIC\_ON\_REQ通知PMIC將其他各組電源按照預設的Power On時序供給,當各組電源都準備完成之後由PMIC發出POR_B(Power On Reset)由Low變High的訊號,通知系統重置。所以可以觀察PMIC\_ON\_REQ及POR_B的相關時序,這樣可以釐清是CPU的問題或是PMIC的問題。 ## **5.確認硬體相關設定:** - a.Serial Downloader: 將Boot Mode\[1:0\]=01,讓系統進入到Serial Downloader模式,提供使用者可以透過USB連線將程式碼下載到晶片上並執行的方法。這樣的好處是讓開發者不需要購買昂貴的仿真器(ICE)就可以下載Code到目標板上。  - b.USB: 將i.MX8M Mini的USB1連接到電腦,會識別到一個USB 輸入裝置,其識別碼為VID_1FC9&PID0134。  由於Serial Downloader模式是執行i.MX8M Mini內部的ROM Code,只要USB1線有接對,電腦就要可以識別到目標板。要特別注意由於ROM Code預設就是USB1,接到USB2是不會有反應的。若還是有問題則需要仔細檢查USB相關線路。 - c.連接埠: i.MX8M Mini公板的設計是用FT2232D UART to USB IC,電腦上會看到兩個USB Serial Port,其中一個是Cortex-M4的Debug Port,另一個是Cortex-A53的Debug Port,大部分電腦會預設較高的COM Port會給Cortex-A53使用,以我的電腦而言,COM12就是Cortex-A53的Debug Port,待會使用DDR Stress Test Tool選擇時要選COM12。  ## 6.DDR Stress Test Tool: 執行DDR Stress Test Tool之前一定要先確定電腦可識別到目標板的USB及Debug Port,若是沒有正確的識別則需要檢查相關硬體線路。選擇正確的COM埠、DDR Script、CPU、及DDR(符合目標板的DDR種類)後按Download即可出現下列訊息:  如果達到這樣的情況,恭喜你已經完成60%開板了,表示目標板的CPU、USB、UART是可以正常工作的,接下來就是DRAM參數的調整。 預設的DDR Script位置在mscale\_ddr\_tool_v3.10\\script\\mx8mm下,按照不同的DDR種類有相對應的ds file。若是使用跟公板不同的DRAM,則需要修改DDR Register Programming Aid(RPA) Excel檔產生ds file。 按下Calibration之後進行DRAM Training。  當Training完成後可以進行壓力測試,您可以選擇Over Night Test,其目的是測試目標板DRAM的穩定度,目前i.MX8M Mini不支援測試頻率的調整,只會依照ds檔案預設速度(1500MHz)測試。  經過長時間Stress Test測試OK後可以選擇ARRY並按下Gen Code,則會產生lpddr4\_timing.c,軟體開發人員用這個檔案更換U-Boot BSP路徑中的/board/freescale/imx8mm\_evk/lpddr4_timing.c並重新Build imge。  ## **7. SD Card開機:** 軟體開發人員Build完Code之後可將image燒入到MicroSD Card中,並切換Boot Device到MicroSD Card開機。   若能夠從COM Port看到系統開機的Log,則恭喜各位硬體及軟體開發工程師開板成功!!! ## 參考資料 NXP官網: [https://www.nxp.com/products/processors-and-microcontrollers/arm-processors/i-mx-applications-processors/i-mx-8-processors/i-mx-8m-mini-arm-cortex-a53-cortex-m4-audio-voice-video:i.MX8MMINI?tab=Documentation_Tab](https://www.nxp.com/products/processors-and-microcontrollers/arm-processors/i-mx-applications-processors/i-mx-8-processors/i-mx-8m-mini-arm-cortex-a53-cortex-m4-audio-voice-video:i.MX8MMINI?tab=Documentation_Tab) NXP論壇: [https://community.nxp.com/docs/DOC-340179](https://community.nxp.com/docs/DOC-340179) Source: https://www.wpgdadatong.com/tw/profile?uid=62743&type=blogPost&timeSort=2&title=blogPost
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up