170 likes | 522 Views
BIOS 启动介绍. 夏启超 07/12/2011. 主要内容. BIOS 基本功能 PMON 启动过程 启动相关考虑. BIOS 基本功能. 初始化处理器状态 设置系统中断 初始化内存、 cache 初始化基本输入输出设备 (串口 / 键盘,显示器、网络、硬盘等). BIOS 特点. 掉电仍保存 上电即执行 启动后隐退. 常见的 BIOS. 通用处理器上的 BIOS X86 (phonix, award, 百傲 ) 嵌入式上的 BIOS (arm ) (vivi,u-boot,core-boot,core-boot )
E N D
BIOS启动介绍 夏启超 07/12/2011
主要内容 • BIOS基本功能 • PMON启动过程 • 启动相关考虑
BIOS基本功能 • 初始化处理器状态 • 设置系统中断 • 初始化内存、cache • 初始化基本输入输出设备 (串口/键盘,显示器、网络、硬盘等)
BIOS特点 • 掉电仍保存 • 上电即执行 • 启动后隐退
常见的BIOS • 通用处理器上的BIOS • X86 (phonix, award,百傲) • 嵌入式上的BIOS (arm) • (vivi,u-boot,core-boot,core-boot) • 大型服务器上的BIOS • 龙芯处理器的BIOS : PMON
X86的BIOS自检 1.启动初始化程序,系统自检 2.跳到0xFFFF0处执行固化程序
PMON启动条件 • 需要满足的条件: • 满足上电时序 • 固定取指地址 3. 执行固化程序
上电时序 电源电压上电时序关系 3a780e主板Reset电路
时钟初始化 • 龙芯3A的初始化包括:Core时钟域、DDR2/3时钟域、HT相关时钟域和PCI时钟域 • SYSRESETn为低时,下列信号必须有效: SYSCLK,MEMCLK,HTCLK,差分时钟ht0_clkp/ht0_clkn,差分时钟ht1_clkp/ht1_clkn,PCI_CLK和CLKSEL必须稳定。当SYSRESETn变高后,处理器内部的复位逻辑开始初始化芯片。SYSRESETn应至少保持一个时钟周期内有效,以保证复位逻辑能可靠采样。
固定取值地址 • 上电后PC即为0xbfc00000 • 地址映射到umapped/uncached的区域
PMON引导过程 CPU Reset Entry Initial North Bridge Jump over the beginning of rom Initial South Bridge Initial Serial Device Assembly C Initial VGA Card Initial Memory Other PCI Device Initail tlb&cache Initial Shell Initail C environment Wait Command Copy codes from Rom to Ram Starto.S的工作,Rom中执行
异常向量表 异常类型 进入点 SR(BEV)=0 SR(BEV)=1 程序地址 物理地址 程序地址 物理地址 Reset(启动) NMI(不可屏蔽中断) 0xBFC0 0000 0x1FC0 0000 TLB替换(32位) 0x8000 0000 0x0 0xBFC0 0200 0x1FC0 0200 XTLB替换(64位) 0x8000 0080 0x80 0xBFC0 0280 0x1FC0 0280 Cache错 0xA000 0000 0x100 0xBFC0 0300 0x1FC0 0300 普通中断 0x8000 0180 0x180 0xBFC0 0380 0x1FC0 0380