-
文件與使用工具
Hardware Developer’s Guide (IMX8MHDG.pdf) |
Chapter 4. Avoiding board bring-up problems |
Reference Manual (IMX8MDQLQRM.pdf) |
Chapter 6.1 System Boot |
mscale_ddr_tool _v3.30_setup.exe.zip |
DDR Stress test tool |
DRAM參數調整檔案 | |
USB Type-C 線 |
連接目標板及電腦,搭配DDR Stress test tool |
Micro USB 線 |
連接目標板及電腦提供Debug Log輸出 |
可限流電源供應器 |
提供電源並防止過電流燒毀 |
三用電表 |
檢查電源及電路短路/斷路 |
示波器 |
檢查目標板上的訊號波形 |
- 開版流程
0. PCB 板檢查:
在沒有焊接零件的PCB 裸板,先利用三用電表檢查有沒有短路或斷路的情況,特別是各組電源是否有短路?
1. 上電前目視檢查:
檢查主要零件是否有打件錯誤的情況,比如說IC、二極體、電晶體有沒有位置裝反或是旋轉的問題?
2. 上電檢查電源:
使用可限流的電源供應器,上電過程中如果超過限流則必須立即關掉電源,並檢查電源是否有短路的狀況?並檢查i.MX8M 的各組電壓是否符合Datasheet 的要求,測量電壓要在電源輸出端(PMIC)和i.MX8M 電源輸入端(越近越好,如在濾波電容上測量)兩側都要確認,以免有電壓衰退(IR-Drop)的狀況發生。建議在系統輕載及滿載時各量測⼀次,以確保電源的穩定度。
使用示波器檢查電源上電時序是否滿足Datasheet要求。
3.檢查系統時脈:
i.MX8M 需要三組時脈輸入: 25MHz/ 27MHz / 32.768KHz. 電源啟動後,震盪器會自動起振,使用示波器檢查XTALI_25M / XTALO_25M /XTALI_27M / XTALO_27M / RTC_CLK_32K768,檢查振盪器頻率時建議使用主動式探棒避免負載過大導致震盪器不容易起振。
4.檢查POR是否正確:
系統上電後,NVCC_SNVS_3V3會先給電,進而帶起PMIC MC34F4210的POWON信號通知PMIC將其他各組電源按照預設的Power On時序供給,當各組電源都準備完成之後由PMIC發出POR_B(Power On Reset)由Low變High的訊號,通知系統重置。所以可以觀察PMIC_ON及POR_B的相關時序,這樣可以釐清是CPU的問題或是PMIC的問題。
5.確認硬體相關設定:
a.Serial Downloader:
將Boot Mode[1:0]=01,讓系統進入到Serial Downloader模式,提供使用者可以透過USB連線將程式碼下載到晶片上並執行的方法。這樣的好處是讓開發者不需要購買昂貴的仿真器(ICE)就可以下載Code到目標板上
b.USB:
將i.MX8M Plus的USB1連接到電腦,會識別到一個USB 輸入裝置,其識別碼為VID_1FC9&PID012B。
由於Serial Downloader模式是執行i.MX8M內部的ROM Code,只要USB1線有接對,電腦就要可以識別到目標板。
c.連接埠
i.MX8M公板的設計是用CP2105 UART to USB IC,電腦上會看到兩個USB Serial Port,以我的電腦而言, COM11就是Cortex-A53的Debug Port,待會使用DDR Stress Test Tool選擇時要選COM11。
6.DDR Stress Test Tool:
執行DDR Stress Test Tool之前一定要先確定電腦可以認到目標板的USB及Debug Port,若是沒有正確的識別則需要檢查相關硬體線路。
選擇正確的COM埠、DDR Script、CPU、及DDR後按Download即可出現下列訊息:
如果達到這樣的情況,恭喜你已經完成60%開板了,表示目標板的CPU、USB、UART是可以正常工作的,接下來就是DRAM參數的調整。
預設的DDR Script位置在mscale_ddr_tool _v3.30\script\mx8m下,按照不同的DDR種類有相對應的ds file。若是使用跟公板不同的DRAM,則需要修改DDR Register Programming Aid(RPA) Excel檔產生ds file。
按下Calibration之後進行DRAM Training。
Training完成後可以進行壓力測試,您可以選擇Over Night Test,可以讓目標板長時間的測試看看DRAM的穩定度,目前i.MX8M不支援測試頻率的調整,只會依照ds檔案預設速度(1600MHz)測試。
經過長時間Stress Test測試OK後可以選擇ARRY並按下Gen Code,則會產生lpddr4_timing.c,軟體開發人員用這個檔案更換u-boot-imx/board/freescale/imx8mq_evk/lpddr4_timing.c並重新Build Code。
7.SD Card開機
軟體開發人員Build完Code之後可將image燒入到MicroSD Card中,並切換Boot Device到MicroSD Card開機。
若能夠從COM Port看到系統開機的Log,則恭喜各位硬體及軟體開發人員開板成功!!!
-
參考資料
評論