可以。
添加思路:cpu core初始化,記憶體管理子系統(mmu),硬體時鐘系統,早期調試列印機制,異常中斷子系統,時間子系統(timer),序列槽驅動。
具體方式:
1 cpu core初始化
cpu core的初始化主要指cpu的工作模式,通用寄存器初始化,cache初始化,異常入口初始化,mmu初始化等。也就是cpu core内部各個單元子產品的初始化。
2 記憶體管理子系統
kernel是運作在動态存儲器(DRAM DDR),首先保證動态存儲器的穩定運作,動态存儲器的初始化一般是放在bootloader中,或者在我們的調試工具腳本中去配置DDR參數,實作DDR的穩定讀寫運作。
3 硬體時鐘系統
最小的soc片上系統應該有CPU,時鐘,複位電路和一塊存儲器構成,缺一不可。
4 早期調試列印機制
在dram和寄存器讀寫正常後,接下來首要任務是實作kernel早期的調試列印,這是調試kernel所必須的。
5 異常 中斷子系統
timer和uart要正常工作,異常(ppc核内有timer,作為一種單獨的異常來處理) 中斷是必須要正常工作起來。
6 時間子系統
kernel下時間子系統實作計時和定時功能,主要是根據一個外部timer或者核内timer(PPC提供核内timer)來實作。
7 序列槽驅動
最後實作序列槽驅動就完成了移植kernel的最後一步了。序列槽驅動實作這裡不細說了。
取消
評論