簡而言之,HAB Toolkit是Freescale提供的用于把代碼下載到SDRAM中運行或是燒寫到Flash的工具軟件。下面以i.MX21處理器為例,講講HAB的工作原理。
MX21帶著一個內部ROM,出廠時在其中內置了一段叫做Bootstrap的程序。板子上電后,通過檢查BOOT[3:0]的設置決定啟動位置:
Bootstrap只負責初始化板子上的 UART和USB接口,所以在下載代碼之前,要通過meminit.txt這個文件來設置內存控制器。
Flash Loader提供將RAM 中的代碼燒寫到flash 的功能, 所以當板子更換了 flash,就必須重寫此文件,并包裝成bin格式的文件后給HAB Toolkit 使用。
總結HAB燒寫流程如下:
設置跳線---上電---Bootstrap運行---meminit.txt---Flash Loader和Image都下載到RAM中---Flash Loader把Image燒寫到Flash