System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及计算机开发领域,尤其涉及一种嵌入式控制器的外设芯片的固件存取方法及系统。
技术介绍
1、bios(basic input/output system,基本输入输出系统)是计算机硬件与操作系统之间的一个接口,它负责在计算机开机时初始化硬件设备和加载操作系统。ec(embeddedcontroller,嵌入式控制器)固件通常指的是嵌入式控制器的固件程序。嵌入式控制器(ec)是负责笔记本电脑等设备的电源管理、散热控制、键盘和快捷键功能等的硬件ic。
2、请参阅图1,在个人计算机设计bios固件和ec固件存放方案中,常见的设计方法为soc(system on a chip,系统级集成芯片)和ec共享spi rom(serial peripheralinterface read-only memory,串行外设接口只读存储器),这样只要升级bios固件,即可连同ec固件一起升级。在ec需要访问spi rom时,可以先将#rsmrst信号拉低,将soc停止工作,防止ec在访问spi rom时soc也访问spi rom从而导致通讯冲突异常,然后即可通过spi总线从spi rom将ec固件更新到ec内部flash存储单元中。
3、请参阅图2,有其他需要烧录的ec外设芯片的固件时,为了简化固件工厂烧录流程,传统的做法是将这些ec外设芯片的固件编译和链接后再封装到ec固件中,这样ec从bios spi rom读取ec固件存放到ec内部flash存储单元的同时,也会同时读取ec外设芯片的固件。当ec外设芯片上电后,e
技术实现思路
1、本申请目的在于提供一种嵌入式控制器的外设芯片的固件存取方法及计算机固件存取系统,可以解决ec芯片的flash存储空间不足的问题,有利于充分利用存储器空间,降低了计算机开发的成本。
2、为了实现上述目的,本申请提供了一种嵌入式控制器的外设芯片的固件存取方法,包括:
3、将嵌入式控制器固件和外设芯片固件分别编译链接后再独立封装到基本输入输出系统固件并存储至固件存储器;
4、嵌入式控制器芯片判断需要给其外设芯片发送对应的所述外设芯片固件时,执行抓取和发送流程,所述抓取和发送流程用于从所述固件存储器中抓取对应的所述外设芯片固件并将抓取到的所述外设芯片固件发送至对应的所述外设芯片。
5、可选地,所述从所述固件存储器中抓取对应的所述外设芯片固件并将抓取到的所述外设芯片固件发送至对应的所述外设芯片包括:
6、判断所述固件存储器中待抓取的外设固件数据的实际大小是否大于或大于等于预设值,所述预设值等于所述嵌入式控制器芯片内缓冲存取区的大小;
7、若是,则抓取所述预设值大小的外设固件数据存放至所述缓冲存储区;
8、若否,则抓取所述实际大小的外设固件数据存放至所述缓冲存储区;
9、将所述缓冲存储区的外设固件数据发送至所述外设芯片。
10、可选地,所述将所述缓冲存储区的固件数据发送至所述外设芯片之后,所述方法还包括:
11、判断已发送的外设固件数据的大小是否等于所述外设芯片固件的实际大小;
12、若否,则重复执行所述抓取和发送流程,直至所述已发送的外设固件数据的大小等于所述外设芯片固件的实际大小。
13、可选地,所述方法还包括:
14、所述嵌入式控制器芯片判断将所述缓冲存储区的外设固件数据发送至所述外设芯片的过程是否出错;
15、若是,则判断已出错次数是否小于或小于等于预设次数;
16、若是,则重新判断是否需要给所述外设芯片发送对应的所述外设芯片固件。
17、可选地,从所述嵌入式控制器芯片的静态随机存取存储器中规划出所述缓冲存储区。
18、可选地,所述嵌入式控制器芯片通过spi协议从所述固件存储器中抓取对应的所述外设芯片固件。
19、可选地,所述嵌入式控制器芯片通过i2c协议将抓取到的所述外设芯片固件发送至对应的所述外设芯片。
20、可选地,所述固件存储器为spi rom,所述嵌入式控制器芯片和系统级集成芯片共享所述固件存储器。
21、可选地,在进入所述抓取和发送流程之前,所述嵌入式控制器芯片控制与所述固件存储器连接的系统级集成芯片停止工作。
22、为了实现上述目的,本申请还提供了一种计算机固件存取系统,包括系统级集成芯片、固件存储器、嵌入式控制器芯片和至少一个外设芯片,所述系统级集成芯片和所述嵌入式控制器芯片分别与所述固件存储器连接,所述外设芯片与所述嵌入式控制器芯片连接;
23、所述固件存储器中存放有基本输入输出系统固件、嵌入式控制器固件和外设芯片固件,所述嵌入式控制器固件和所述外设芯片固件分别编译链接后再独立封装到所述基本输入输出系统固件;
24、所述嵌入式控制器芯片被配置为执行:
25、在判断需要给所述外设芯片发送对应的所述外设芯片固件时,从所述固件存储器中抓取对应的所述外设芯片固件并将抓取到的所述外设芯片固件发送至对应的所述外设芯片。
26、本申请中,通过将嵌入式控制器固件和外设芯片固件分别编译链接再独立封装到基本输入输出系统固件中,最终存储于所述固件存储器中,使嵌入式控制器芯片在读取嵌入式控制器固件时无需同时读取外设芯片固件,且可以根据需要直接从固件存储器中进行外设芯片固件读取,并将外设芯片固件发送到相应的外设芯片中。通过将嵌入式控制器固件和外设芯片固件分开存放,分别进行嵌入式控制器固件和外设芯片固件的读取,解决了嵌入式控制器芯片的flash存储空间不足的问题,且将外设芯片固件存放于固件存储器中,有利于充分利用固件存储器的空间,无需换用大内存的嵌入式芯片固件芯片,避免了计算机开发成本的增加。
本文档来自技高网...【技术保护点】
1.一种嵌入式控制器的外设芯片的固件存取方法,其特征在于,包括:
2.如权利要求1所述的固件存取方法,其特征在于,所述从所述固件存储器中抓取对应的所述外设芯片固件并将抓取到的所述外设芯片固件发送至对应的所述外设芯片包括:
3.如权利要求2所述的固件存取方法,其特征在于,所述将所述缓冲存储区的固件数据发送至所述外设芯片之后,所述方法还包括:
4.如权利要求2或3所述的固件存取方法,其特征在于,还包括:
5.如权利要求2所述的固件存取方法,其特征在于,从所述嵌入式控制器芯片的静态随机存取存储器中规划出所述缓冲存储区。
6.如权利要求1所述的固件存取方法,其特征在于,所述嵌入式控制器芯片通过SPI协议从所述固件存储器中抓取对应的所述外设芯片固件。
7.如权利要求1所述的固件存取方法,其特征在于,所述嵌入式控制器芯片通过I2C协议将抓取到的所述外设芯片固件发送至对应的所述外设芯片。
8.如权利要求1所述的固件存取方法,其特征在于,所述固件存储器为SPI ROM,所述嵌入式控制器芯片和系统级集成芯片共享所述
9.如权利要求1所述的固件存取方法,其特征在于,还包括:
10.一种计算机固件存取系统,其特征在于,包括系统级集成芯片、固件存储器、嵌入式控制器芯片和至少一个外设芯片,所述系统级集成芯片和所述嵌入式控制器芯片分别与所述固件存储器连接,所述外设芯片与所述嵌入式控制器芯片连接;
...【技术特征摘要】
1.一种嵌入式控制器的外设芯片的固件存取方法,其特征在于,包括:
2.如权利要求1所述的固件存取方法,其特征在于,所述从所述固件存储器中抓取对应的所述外设芯片固件并将抓取到的所述外设芯片固件发送至对应的所述外设芯片包括:
3.如权利要求2所述的固件存取方法,其特征在于,所述将所述缓冲存储区的固件数据发送至所述外设芯片之后,所述方法还包括:
4.如权利要求2或3所述的固件存取方法,其特征在于,还包括:
5.如权利要求2所述的固件存取方法,其特征在于,从所述嵌入式控制器芯片的静态随机存取存储器中规划出所述缓冲存储区。
6.如权利要求1所述的固件存取方法,其特征在于,所述嵌入式控制器芯片通过s...
【专利技术属性】
技术研发人员:李为里,
申请(专利权)人:南昌华勤电子科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。