1.一种基于基板管理控制器的BIOS闪存数据读写系统,包括ARM处理器,BIOS控制器,其特征在于:ARM处理器与先入先出堆栈模块连接,先入先出堆栈模块与BIOS控制器连接,BIOS控制器与BIOS闪存连接,
所述的先入先出堆栈模块包括:
命令寄存器,用于存放ARM处理器发出的命令;
地址寄存器,用于存放对BIOS闪存进行操作的起始地址;
长度寄存器,用于存放对BIOS闪存进行操作的具体字节数;
写入数据寄存器,用于存放待写入BIOS闪存的具体数据;
读取数据寄存器,用于存放从BIOS闪存读取的具体数据。
2.根据权利要求1所述的基于基板管理控制器的BIOS闪存数据读写系统,其特征是:所述的BIOS控制器与BIOS闪存通过SPI接口连接。
3.根据权利要求1或2所述的基于基板管理控制器的BIOS闪存数据读写系统,其特征是:ARM处理器与先入先出堆栈模块通过AMBA总线连接。
4.一种基于基板管理控制器的BIOS闪存数据读写方法,其特征在于包括如下步骤:
1)启动BIOS控制器;
2)ARM处理器把操作命令、地址、长度发送到先入先出堆栈模块;
3)BIOS控制器读取先入先出堆栈模块的命令,判断是对BIOS闪存的具体操作,确定是擦除、写入或者读取,并获取操作BIOS闪存的起始地址和操作BIOS闪存的数据长度;如果是写入,则进入步骤4),如果是擦除或者读取则进入步骤5)
4)BIOS控制器读取先入先出堆栈模块中的待写入BIOS闪存的具体数据,然后进入步骤5);
5)BIOS控制器把从先入先出堆栈模块获取的命令、起始地址和数据长度转换成按bit位方式发送到BIOS闪存,如果是读取操作则进入步骤6);如果是擦除或者写入操作, BIOS控制器进行延时等待BIOS闪存操作完成,然后进入步骤8);
6)BIOS控制器把读取的BIOS闪存数据由bit位转换为字节的格式,发送回先入先出堆栈模块;
7)ARM处理器从先入先出堆栈模块取回数据;
8)操作结束。