扩展启动芯片的系统和方法.pdf

上传人:g**** 文档编号:1035512 上传时间:2018-03-27 格式:PDF 页数:14 大小:530.58KB
返回 下载 相关 举报
摘要
申请专利号:

CN200910105829.7

申请日:

2009.02.26

公开号:

CN101493777A

公开日:

2009.07.29

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效|||公开

IPC分类号:

G06F9/445; G06F13/38

主分类号:

G06F9/445

申请人:

中兴通讯股份有限公司

发明人:

欧 洋; 李弘博

地址:

518057广东省深圳市南山区高新技术产业园科技南路中兴通讯大厦A座6层

优先权:

专利代理机构:

深圳市永杰专利商标事务所

代理人:

曹建军

PDF下载: PDF下载
内容摘要

本发明公开了一种扩展启动芯片的系统和方法。本发明扩展启动芯片的系统包括处理器、集成电路和级联的芯片,所述处理器与所述集成电路相连接,所述集成电路与所述级联的芯片相连接,所述级联的芯片由单一芯片级联而成,所述处理器用于向所述集成电路发送命令序列和数据序列,所述集成电路用于接收所述命令序列和数据序列,并将所述命令序列和数据序列拆分为适合所述单一芯片接收的位数的数据,再将拆分后的数据发送到所述级联的芯片,所述处理器还用于对完整的原始命令按照适合单一芯片接收的位数进行复制,得到所述的命令序列,从而实现了采用芯片级联方式后能够对单一芯片进行控制的目的。

权利要求书

1、  一种扩展启动芯片的系统,其包括处理器、集成电路和级联的芯片,所述处理器与所述集成电路相连接,所述集成电路与所述级联的芯片相连接,所述级联的芯片由单一芯片级联而成,所述处理器用于向所述集成电路发送命令序列和数据序列,所述集成电路用于接收所述命令序列和数据序列,并将所述命令序列和数据序列拆分为适合所述单一芯片接收的位数的数据,再将拆分后的数据发送到所述级联的芯片,其特征在于,所述处理器还用于对完整的原始命令按照适合所述单一芯片接收的位数进行复制,得到所述的命令序列。

2、
  根据权利要求1所述的扩展启动芯片的系统,其特征在于,所述处理器还用于对所述完整的原始命令的偏移地址的偏移量,完成从所述处理器端读写位数到所述集成电路端读写位数的转换,得到对应的所述集成电路端的偏移地址的偏移量。

3、
  根据权利要求2所述的扩展启动芯片的系统,其特征在于,所述处理器还用于对所述完整的原始命令的偏移地址的偏移量完成所述处理器端32位读写方式到所述集成电路端16读写方式的转换,在所述集成电路端偏移量对应所述处理器端偏移量的一半并取整的值。

4、
  根据权利要求1所述的扩展启动芯片的系统,其特征在于,所述处理器还用于对完整的原始数据按照奇数位和偶数位进行划分,分成适合所述集成电路接收位数一半的奇数位数据和偶数位数据,再将所述奇数位数据和偶数位数据组成,得到所述数据序列。

5、
  一种扩展启动芯片的方法,其特征在于,包括以下步骤:
完成单一芯片的级联;
处理器对完整的原始命令按照适合所述单一芯片接收的位数进行复制,得到所述的命令序列,并将所述命令序列发送到集成电路,再发送数据序列到所述集成电路;
所述集成电路依次接收所述命令序列和数据序列,并依次对将所述命令序列和数据序列进行拆分,拆分为适合所述单一芯片接收的位数的数据,再将拆分后的数据依次发送到所述级联的芯片。

6、
  根据权利要求5所述的扩展启动芯片的方法,其特征在于,在将所述命令序列发送到集成电路之前,所述处理器还对所述完整的原始命令的偏移地址的偏移量,完成从所述处理器端读写位数到所述集成电路端读写位数的转换,得到对应的所述集成电路端的偏移地址的偏移量。

7、
  根据权利要求5所述的扩展启动芯片的方法,其特征在于,在发送数据序列到所述集成电路之前,所述处理器对完整的原始数据按照奇数位和偶数位进行划分,分成适合所述集成电路接收位数一半的奇数位数据和偶数位数据,再将所述奇数位数据和偶数位数据组成,得到所述数据序列。

说明书

扩展启动芯片的系统和方法
技术领域
本发明涉及数据通信领域,尤其涉及一种在网络通信设备中扩展启动芯片的系统和方法。
背景技术
在网络通信设备中,通常需要使用一套启动加载程序即Bootloader来完成系统的启动加载任务。BootLoader是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们可以初始化单板上的硬件设备,比如内存、硬盘、网络交换芯片以及各种硬件接口,从而将系统的软硬件环境带到一个合适的状态,同时向开发人员和用户提供一个简单的交互环境,以便最终加载操作系统内核。
Bootloader需要烧录在Bootrom芯片中。当设备上电后,CPU会从Bootrom芯片中读取Bootloader到缓存和内存中,再运行Bootloader完成启动加载动作。
随着网络通信技术的不断发展,设备支持的硬件越来越多,要实现的功能也不断丰富。这就造成了Bootloader的大小不断增加,有可能超过单一Bootrom芯片的容量。
目前,通过芯片级联的方式来解决此问题。多片芯片的级联实际上等同于为一块容量大的芯片,实现了容量上的扩充。
然而,此种方式却无法实现对单一芯片的控制。
按照此种方式,级联的芯片接收集成电路(ComplexProgrammable Logic Device,CPLD)发送来的命令序列时,命令序列会被分散发送到每个芯片。单一芯片收到的只是命令序列的碎片,从而无法识别。
请参阅图1,其是现有技术CPLD向级联芯片发送命令序列示意图。
由于Bootrom0和Bootrom1通常采用8位的读写方式,CPLD通常采用16位的读写方式,CPLD会将16位完整命令序列拆分后再发送给级联的Bootrom0和Bootrom1。
CPLD将16位完整命令序列拆分为8位CMD0和8位CMD1,再将拆分后的命令序列分别发送到级联的Bootrom0和Bootrom1。Bootrom0接收到8位CMD0,Bootrom18位CMD1。按照此种方式,单一Bootrom0或Bootrom1无法收到完整的命令序列,从而无法实现对单一Bootrom0或Bootrom1进行控制的目的。
发明内容
为解决采用芯片级联方式后无法实现对单一芯片的控制的问题,有必要提供一种采用芯片级联方式后能够对单一芯片进行控制的扩展启动芯片的系统。
此外,还有必要提供一种上述的扩展启动芯片的方法。
本发明扩展启动芯片的系统包括处理器、集成电路和级联的芯片,所述处理器与所述集成电路相连接,所述集成电路与所述级联的芯片相连接,所述级联的芯片由单一芯片级联而成,所述处理器用于向所述集成电路发送命令序列和数据序列,所述集成电路用于接收所述命令序列和数据序列,并将所述命令序列和数据序列拆分为适合所述单一芯片接收的位数的数据,再将拆分后的数据发送到所述级联的芯片,所述处理器还用于对完整的原始命令按照适合单一芯片接收的位数进行复制,得到所述的命令序列。
在上述系统中,所述处理器还用于对所述完整的原始命令的偏移地址的偏移量,完成从所述处理器端读写位数到所述集成电路端读写位数的转换,得到对应的所述集成电路端的偏移地址的偏移量。
在上述系统中,所述处理器还用于对所述完整的原始命令的偏移地址的偏移量完成所述处理器端32位读写方式到所述集成电路端16读写方式的转换,在所述集成电路端偏移量对应所述处理器端偏移量的一半并取整的值。
在上述系统中,所述处理器还用于对完整的原始数据按照奇数位和偶数位进行划分,分成适合所述集成电路接收位数一半的奇数位数据和偶数位数据,再将所述奇数位数据和偶数位数据组成,得到所述数据序列。
本发明扩展启动芯片的方法包括以下步骤:
完成单一芯片的级联;
处理器对完整的原始命令按照适合所述单一芯片接收的位数进行复制,得到所述的命令序列,并将所述命令序列发送到集成电路,再发送数据序列到所述集成电路;
所述集成电路依次接收所述命令序列和数据序列,并依次对将所述命令序列和数据序列进行拆分,拆分为适合所述单一芯片接收的位数的数据,再将拆分后的数据依次发送到所述级联的芯片。
在上述方法中,在将所述命令序列发送到集成电路之前,所述处理器还对所述完整的原始命令的偏移地址的偏移量,完成从所述处理器端读写位数到所述集成电路端读写位数的转换,得到对应的所述集成电路端的偏移地址的偏移量。
在上述方法中,在发送数据序列到所述集成电路之前,所述处理器对完整的原始数据按照奇数位和偶数位进行划分,分成适合所述集成电路接收位数一半的奇数位数据和偶数位数据,再将所述奇数位数据和偶数位数据组成,得到所述数据序列。
与现有技术相比较,本发明扩展启动芯片的系统和方法通过处理器对完整的原始命令按照适合单一芯片接收的位数进行复制,得到命令序列,集成电路接收所述命令序列,并将所述命令序列拆分为适合所述单一芯片接收的位数的数据,再将拆分后的数据发送到所述级联的芯片,使得级联中的单一芯片分别接收到完整的原始命令,从而实现了采用芯片级联方式后能够对单一芯片进行控制的目的。
在结合附图阅读本发明实施方式的详细描述后,本发明的特点和优点将变得更加清楚。
附图说明
图1是现有技术CPLD向级联芯片发送命令序列示意图;
图2是本发明扩展启动芯片的系统模块示意图;
图3是本发明扩展启动芯片的方法流程图;
图4是CPU端的偏移量与CPLD端的偏移量对应关系示意图;
图5是CPU对完整的原始命令加倍示意图;
图6是CPU对完整的原始数据按照奇数位和偶数位进行划分示意图。
具体实施方式
下面结合附图对本发明扩展启动芯片的系统和方法进行说明。
请参阅图2,其是本发明扩展启动芯片的系统模块示意图。
本发明扩展启动芯片的系统包括:处理器(Central Process Unit,CPU)、CPLD、芯片Bootrom0和芯片Bootrom1。其中,CPU采用32位读写方式,CPLD采用16位的读写方式,Bootrom0和Bootrom1采用8位的读写方式。并且,CPU与CPLD相连接,CPLD分别与Bootrom0和Bootrom1相连接,Bootrom0和Bootrom1相级联。
CPU用于向CPLD发送命令序列和数据序列。并且,在发送命令序列时,完成对命令序列偏移地址加倍和对命令序列加倍的操作;在发送数据序列时,完成对数据序列偏移地址加倍和将数据序列按照奇数位和偶数位分成8位奇数位和8位偶数位的两个字节,再发送到CPLD的操作。
CPLD用于接收CPU发送的命令序列和数据序列。并且,CPLD接收命令序列和数据序列时,将命令序列和数据序列拆分为适合Bootrom0和Bootrom1接收的位数的数据,再传送到级联的Bootrom0和Bootrom1。
Bootrom0和Bootrom1用于接收CPLD发送的命令序列和数据序列。
请参阅图3,其是本发明扩展启动芯片的方法流程图。
本发明扩展启动芯片的方法包括如下步骤:
步骤S11、完成Bootrom0和Bootrom1的级联;
步骤S12、CPU向CPLD发送命令序列;
首先,CPU对完整的原始命令偏移地址加倍。由于CPU采用32位读写方式,CPLD采用16位的读写方式,CPU向CPLD发送命令序列,需要通过总线复用和转换,完成CPU端32位读写方式到CPLD端16位读写方式的转变。在CPU端原32位的偏移地址需要加倍才能与CPLD匹配。
请参阅图4,其是CPU端的偏移量与CPLD端的偏移量对应关系示意图。
左边数字是CPLD端16位读写方式时的偏移量,右边数字是CPU端32位读写方式时的偏移量。由于一个32位数据相当于两个16位数据合并在一起,所以,CPU端32位偏移量是16位偏移量的一半再取整。在CPLD端偏移量N对应CPU端偏移量|N/2|。|N/2|表示N的一半再取整。
其次,CPU对完整的原始命令加倍。对完整的原始命令进行每8位复制,组成一个16位的数据,即为命令序列,并将该命令序列发送给CPLD。该命令序列包含的信息包括识别芯片的类型、使芯片进入读/写模式。
请参阅图5,其是CPU对完整的原始命令加倍示意图。
完整的原始命令由8位CMD0和8位CMD1组成。对完整的原始命令进行复制后,得到两个8位CMD0和两个8位CMD1。两个8位CMD0组成一个16位的命令序列,两个8位CMD1组成一个16位的命令序列。CPU再将得到的命令序列发送到CPLD。
步骤S13、CPLD接收所述命令序列,并将所述命令序列拆分为适合Bootrom接收的位数的数据,再传送到Bootrom0和Bootrom1;
CPLD接收两个8位CMD0组成的16位的命令序列和两个8位CMD1组成的16位的命令序列,根据Bootrom采用8位的读写方式,将两个8位CMD0组成的16位的命令序列和两个8位CMD1组成的16位的命令序列拆分为两个8位CMD0和两个8位CMD1,并且先分别向Bootrom0和Bootrom1传送8位CMD0,再分别向Bootrom0和Bootrom1传送8位CMD1。Bootrom0接收到8位CMD0和8位CMD1,Bootrom1也接收到8位CMD0和8位CMD1,从而,Bootrom0和Bootrom1分别接收到完整的原始命令。
步骤S14、CPU向CPLD发送数据序列;
首先,CPU对完整的原始数据偏移地址加倍。由于CPU采用32位读写方式,CPLD采用16位的读写方式,CPU向CPLD发送数据序列,需要通过总线复用和转换,完成CPU32位读写方式到CPLD16位读写方式的转变。在CPU端原32位的偏移地址需要加倍才能与CPLD匹配。对完整的原始数据偏移地址加倍类似于前述对完整的原始命令偏移地址加倍。
其次,CPU对完整的原始数据按照奇数位和偶数位进行划分。
请参阅图6,其是CPU对完整的原始数据按照奇数位和偶数位进行划分示意图。
CPU将完整的原始数据按照奇数位和偶数位,分成8位奇数位和8位偶数位的两个字节,并将两字节组成一个16位的数据序列发送给CPLD。
步骤S15、CPLD接收所述数据序列,并将所述数据序列拆分为适合Bootrom0和Bootrom1接收的位数的数据,再传送到Bootrom0和Bootrom1。
CPLD接收16位的数据序列,根据Bootrom采用8位的读写方式,将16位的数据序列拆分为两个8位数据序列,分别为8位奇数位和8位偶数位的两个字节,并将拆分后的数据序列传送到Bootrom0和Bootrom1。Bootrom0接收到8位奇数位的字节,Bootrom1接收到8位偶数位的字节,从而,Bootrom0和Bootrom1级联成一整片Bootrom接收到完整的数据序列。
与现有技术相比较,本发明扩展启动芯片的系统和方法通过CPU对完整的原始命令进行每8位复制,组成一个16位的命令序列发送给CPLD,CPLD接收复制后的命令序列,并将所述命令序列拆分为适合Bootrom接收的位数的数据,再传送到Bootrom0和Bootrom1,使得级联中的单一芯片Bootrom0和Bootrom1分别接收到完整的原始命令,从而实现了采用芯片级联方式后能够对单一芯片进行控制的目的。
以上仅为本发明的优选实施案例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

扩展启动芯片的系统和方法.pdf_第1页
第1页 / 共14页
扩展启动芯片的系统和方法.pdf_第2页
第2页 / 共14页
扩展启动芯片的系统和方法.pdf_第3页
第3页 / 共14页
点击查看更多>>
资源描述

《扩展启动芯片的系统和方法.pdf》由会员分享,可在线阅读,更多相关《扩展启动芯片的系统和方法.pdf(14页珍藏版)》请在专利查询网上搜索。

本发明公开了一种扩展启动芯片的系统和方法。本发明扩展启动芯片的系统包括处理器、集成电路和级联的芯片,所述处理器与所述集成电路相连接,所述集成电路与所述级联的芯片相连接,所述级联的芯片由单一芯片级联而成,所述处理器用于向所述集成电路发送命令序列和数据序列,所述集成电路用于接收所述命令序列和数据序列,并将所述命令序列和数据序列拆分为适合所述单一芯片接收的位数的数据,再将拆分后的数据发送到所述级联的芯片。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1