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,則恭喜各位硬體及軟體開發工程師開板成功!!!

★博文內容均由個人提供,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★文明上網,請理性發言。內容一周內被舉報5次,發文人進小黑屋喔~

評論