入门概述
一、PC的硬件组成
Device | Description |
---|---|
Disk | 编译和链接.c file,generate .out file然后通过BUS放到Main Memary中 |
Main Memary | 存放从Disk取出来的Data |
IO/Bridge | CPU从Main Memary中取数据的bridge |
CU | Fetch,decode和execute |
Register | CPU从memary中取出data放到register,ALU运算完后将结果放回register |
ALU | 算数和逻辑运算 |
二、Soc(又称paltform)的硬件组成
Device | Description |
---|---|
Hart | CU+Register+ALU = CPU即处理器 |
DRAM | 内存,掉电不保存 |
ROM | 类似hard disk,掉电不消失 |
三、系统引导过程
四、引导程序
假设有*8个Hart(CPU),则每一个hart都需要经过以下的引导程序,但是可以通过程序控制其他Hart在上电后进行空转;
五、For ESS chip
ESS chip 有一个带有4个单独芯片悬着的SRAM总线,以来支持4 memory banks as below(Bank 0 ~ Bank 3).
RAM(Random Access Memory )随机存取存储器,主要作用是存储代码和数据供CPU 需要时调用。
SRAM 是“static RAM(静态随机存储器)”的简称,数据存入其中后,掉电后亦不会丢失。
以实际应用为目的,bank 0总是mapped为DRAM,而bank 3则被用于ROM。Bank 1 和 2 是空的,可用于通用内存映射 I/O 扩展。
Ps:C函数访问的是SRAM总线上的地址。
if it is not Non-cacheable, it will like below:
Bank Cacheable Non-cacheable
3 0xc000000 0x1c000000
2 0x8000000 0x18000000
1 0x4000000 0x14000000
DRAM 0x2000000 0x12000000
0 0x0000000 0x10000000