CN116244255A - Rsmc芯片、芯片多阶段启动方法以及北斗通信导航设备 - Google Patents
Rsmc芯片、芯片多阶段启动方法以及北斗通信导航设备 Download PDFInfo
- Publication number
- CN116244255A CN116244255A CN202211610426.XA CN202211610426A CN116244255A CN 116244255 A CN116244255 A CN 116244255A CN 202211610426 A CN202211610426 A CN 202211610426A CN 116244255 A CN116244255 A CN 116244255A
- Authority
- CN
- China
- Prior art keywords
- chip
- rsmc
- channel
- target program
- main processor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/35—Constructional details or hardware or software details of the signal processing chain
- G01S19/37—Hardware or software details of the signal processing chain
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B7/00—Radio transmission systems, i.e. using radiation field
- H04B7/14—Relay systems
- H04B7/15—Active relay systems
- H04B7/185—Space-based or airborne stations; Stations for satellite systems
- H04B7/1851—Systems using a satellite or space-based relay
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Radar, Positioning & Navigation (AREA)
- Computer Networks & Wireless Communication (AREA)
- Remote Sensing (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Astronomy & Astrophysics (AREA)
- Aviation & Aerospace Engineering (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请公开了一种RSMC芯片、芯片多阶段启动方法以及北斗通信导航设备,本申请属于电子信息技术领域。RSMC芯片与主处理器通过至少两个信道连接,RSMC芯片包括:非易失存储区,用于装载芯片运行启动程序;交互接口,用于与主处理器通过当前信道连接;检测单元,用于检测是否存在阶段跃迁事件;信道切换单元,用于从当前信道切换至目标信道;交互接口,用于通过目标信道将目标程序的帧片段从主处理器传输至RSMC芯片;第一随机访问存储区,用于存储目标程序;第二随机访问存储区,用于存储目标程序运行过程中产生的数据。本方案能够实现通过RSMC芯片与主处理器的多信道连接,实现在当前阶段异常的情况下自动跃迁至下一阶段以达到多阶段备份加载启动的效果。
Description
技术领域
本申请属于电子信息技术领域,具体涉及一种RSMC芯片、芯片多阶段启动方法以及北斗通信导航设备。
背景技术
随着科技水平的迅速发展,芯片已经成为工业生产中必不可少的电子元器件。
目前,在芯片设计的过程中,由于需要芯片来运行特定的程序,所以需要在芯片内部设置有非易失存储器,用于存储运行程序。典型的非易失存储器包括flash和eeprom等。典型的Soc芯片(System On Chip,芯片上***)在集成非易失存储器有以下问题:一方面是由于设置非易失存储器造成的面积增大的问题,另一方面即便通过其他手段克服了面积增大以及测试复杂耗时较长的问题,还会存在Soc芯片与主芯片之间的交互信道单一,一旦某一信道出现故障不能够实现信道的自主切换的问题。
发明内容
本申请实施例的目的是提供一种RSMC芯片、芯片多阶段启动方法以及北斗通信导航设备,能够解决因为RSMC芯片上设置非易失存储器造成的面积增大、测试时间长以及成品率低的问题,同时还能够实现通过RSMC芯片与主处理器的多信道连接,实现在当前阶段异常的情况下自动跃迁至下一阶段的效果。
第一方面,本申请实施例提供了一种RSMC芯片,所述RSMC芯片与主处理器通过至少两个信道连接,所述RSMC芯片包括:
非易失存储区,用于装载芯片运行启动程序;
交互接口,用于与主处理器通过当前信道连接,以将目标程序的帧片段从所述主处理器传输至所述RSMC芯片;
第一随机访问存储区,用于存储由当前信道传输的所述目标程序;
检测单元,用于检测是否存在阶段跃迁事件;
信道切换单元,用于基于阶段跃迁事件,从当前信道切换至目标信道;
第一随机访问存储区,用于将已经存储的目标程序的帧片段删除;
所述交互接口,用于通过所述目标信道将目标程序的帧片段从所述主处理器传输至所述RSMC芯片;
第一随机访问存储区,用于存储由目标信道传输的所述目标程序;
第二随机访问存储区,用于在所述目标程序启动后,存储所述目标程序运行过程中产生的数据。
进一步的,所述芯片运行启动程序,具体用于:
通过所述交互接口与所述主处理器交互握手协议;
若握手成功,则逐帧接收由所述主处理器发送的目标程序。
进一步的,所述芯片运行启动程序,还用于:
在逐帧接收由所述主处理器发送的目标程序之后,对所述目标程序的帧片段进行逐帧校验;
若校验成功,则将所述目标程序的帧片段存储至所述第一随机访问存储区。
进一步的,所述第一随机访问存储区,具体用于:
在所述目标程序接收完成后,启动所述目标程序。
进一步的,所述阶段跃迁事件,包括:
校验通过当前信道接收的所述目标程序的帧片段不完整的事件;
或者,
校验通过当前信道接收的所述目标程序的帧片段的顺序混乱的事件。
进一步的,所述信道切换单元,具体用于:
在存在阶段跃迁事件的情况下,从当前信道切换至目标信道,以从当前的阶段跃迁至下一阶段。
进一步的,所述信道切换单元,还用于:
执行信道切换操作后,向主处理器发出阶段跃迁通知,并通过所述目标通道重新与所述主处理器握手。
第二方面,本申请实施例提供了一种芯片多阶段启动方法,所述方法由上述方案所述的RSMC芯片执行,所述RSMC芯片与主处理器通过至少两个信道连接;所述方法包括:
若芯片上电,则启动存储在非易失存储区的芯片运行启动程序;
通过当前信道进行目标程序的帧片段传输,并将所述目标程序存储至第一随机访问存储区;
检测是否存在阶段跃迁事件;
基于阶段跃迁事件,从当前信道切换至目标信道;
将已经存储的目标程序的帧片段删除;
通过所述目标信道将目标程序的帧片段从所述主处理器传输至所述RSMC芯片;
在所述目标程序接收完成之后启动所述目标程序;在所述目标程序运行过程中若产生数据,则存储至第二随机访问存储区。
进一步的,所述至少两个信道包括SPI信道和UART信道。
第三方面,本申请实施例提供了一种北斗通信导航设备,所述北斗通信导航设备包括主处理器,以及包括与所述主处理器连接的如上述方案所述的RSMC芯片。
第四方面,本申请实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第二方面所述的方法的步骤。
在本申请实施例中,所述RSMC芯片与主处理器通过至少两个信道连接,所述RSMC芯片包括:非易失存储区,用于装载芯片运行启动程序;交互接口,用于与主处理器通过当前信道连接,以将目标程序的帧片段从所述主处理器传输至所述RSMC芯片;检测单元,用于检测是否存在阶段跃迁事件;信道切换单元,用于基于阶段跃迁事件,从当前信道切换至目标信道;所述交互接口,用于通过所述目标信道将目标程序的帧片段从所述主处理器传输至所述RSMC芯片;第一随机访问存储区,用于存储由目标信道传输的所述目标程序;第二随机访问存储区,用于在所述目标程序启动后,存储所述目标程序运行过程中产生的数据。本技术方案,可以通过将需要运行的程序放入RSMC芯片的随机访问存储区中,可以避免对RSMC芯片设置过多的程序存储区域,同时还能够实现通过RSMC芯片与主处理器的多信道连接,实现在当前阶段异常的情况下自动跃迁至下一阶段的效果。
附图说明
图1是本申请实施例一提供的RSMC芯片的结构示意图;
图2是本申请实施例二提供的RSMC芯片的结构示意图;
图3是本申请实施例二提供的RSMC芯片和主处理器的交互方式示意图;
图4是本申请实施例三提供的芯片多阶段启动方法的流程示意图;
图5是本申请实施例四提供的北斗通信导航设备的结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面结合附图对本申请具体实施例作进一步的详细描述。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的一种RSMC芯片、芯片多阶段启动方法以及北斗通信导航设备进行详细地说明。
实施例一
图1是本申请实施例一提供的RSMC芯片的结构示意图。如图1所示,具体包括:
所述RSMC芯片100与主处理器200连接,所述RSMC芯片100包括:
非易失存储区101,用于装载芯片运行启动程序;
交互接口102,用于与主处理器200通过当前信道连接,以将目标程序的帧片段从所述主处理器传输至所述RSMC芯片100;
第一随机访问存储区105,用于存储由当前信道传输的所述目标程序;
检测单元103,用于检测是否存在阶段跃迁事件;
信道切换单元104,用于基于阶段跃迁事件,从当前信道切换至目标信道;
第一随机访问存储区105,用于将已经存储的目标程序的帧片段删除;
所述交互接口102,用于通过所述目标信道将目标程序的帧片段从所述主处理器200传输至所述RSMC芯片100;
第一随机访问存储区105,用于存储由目标信道传输的所述目标程序;
第二随机访问存储区106,用于在所述目标程序启动后,存储所述目标程序运行过程中产生的数据。
首先,本方案的使用场景可以是在智能终端或者其他设备中,例如智能手机、平板电脑或者台式电脑上。可以理解的,北斗通信导航设备的运行需要依赖于核心处理器,其中可以包含北斗通信导航设备运行的主程序。核心处理器可以相当于本方案中所提及的主处理器,而RSMC芯片可以是与主处理器处于同一PCB板(Printed Circuit Board,印制电路板)上的,也可以是处于不同的PCB板上通过有线或者无线连接的。除此之外,RSMC芯片还可以是北斗通信导航设备外接的,本方案对于两者的连接方式不作限定。
本方案中,RSMC芯片内部的结构,可以包含有一个或者多个非易失存储区101。
可以理解的,本方案为了节约RSMC芯片的面积,可以尽量减少非易失存储区101的设置,而且只要在RSMC芯片内部的Soc电路包含bootrom,用以作为非易失存储区101,来存储芯片运行启动程序即可。芯片在启动后,首先运行bootrom的程序,在bootrom程序中包含由主处理器置入程序的代码。
可以理解的,此处的bootrom可以是RSMC芯片内部有预留好的rom,只读不写,RSMC芯片上电后自动运行这一块的芯片运行启动程序,所以称其为bootrom。
这块RSMC芯片运行启动程序的作用可以是从外部主处理接收目标程序的功能,相当于启动之后进入程序的接收等待状态。具体的,可以通过RSMC芯片的接收引脚以有线连接的方式进行接收,以实现对目标程序的接收和运行。
本实施例中,具体的接收速度,或者接受带宽可以根据RSMC芯片的数据传输能力来确定。
可以理解的,RSMC芯片运行启动程序运行之后,RSMC芯片100可以与主处理器200进行数据传输。具体的,可以通过RSMC芯片上设置的交互接口102来实现。其中,交互接口可以是RSMC芯片100的一个或者多个引脚所组成的,还可以是RSMC芯片通过引脚连接的外部物理接口。可以理解的,交互接口102可以用来向主处理器发送数据,也可以用来接收主处理器的数据,即同时具有收发功能。
本方案中,交互接口102可以配合bootrom进行目标程序的接收。此处,具体的接收方式可以是逐帧接收。可以理解的,逐帧接收后,可以得到目标程序的帧片段,在每一个帧片段接收成功后,可以将其存储至第一随机访问存储区105。
第一随机访问存储区105,用于存储由当前信道传输的所述目标程序。其中,可以在第一随机访问存储区105中按照区块的位置来分别对帧片段进行接收,并在接收成功后,按照顺序来读取并运行目标程序。可以理解的,在存储过程中,可以针对存储位置进行记录,例如针对当前所接收的目标程序,从顺序为0010 0000的位置开始接收,则0010 0000的位置接收完第一个帧片段之后,使用0010 0001接收第二个帧片段。
检测单元103,用于检测是否存在阶段跃迁事件。
在一种特殊的场景下,以上过程中,实时对RSMC芯片启动方式进行检测,如果出现了变化,即识别为外部尝试切换信道加载,则停止当前加载流程,改为新通道加载。
在本实施例中,可选的,所述阶段跃迁事件,包括:
校验通过当前信道接收的所述目标程序的帧片段不完整的事件;
或者,
校验通过当前信道接收的所述目标程序的帧片段的顺序混乱的事件。
可以理解的,阶段跃迁事件,可以是无法向主处理器发出帧片段的反馈信息,或者RSMC芯片的接收到的帧片段不完整,或者接收到帧片段存在乱序的现象,例如先接收到编号为0001的片段,再接收到编号为0003的片段,最后接收到编号为0002的片段,这种情况下,理应是顺序接收,但是可能是因为网络不稳定所造成的。另外,阶段跃迁事件还可以是RSMC芯片统计在当前信道传输的过程中,累计出现的异常次数超过设定阈值后触发,还可以是在当前信道传输的过程中,正常发出反馈信息的时间超过阈值后触发。
除此之外,阶段跃迁事件还可以是主处理器主动发出阶段跃迁事件。例如,当前信道传输的是A程序,在尚未完成传输时,主处理器确定需要RSMC芯片执行B程序,则可以通过触发阶段跃迁事件进行信道的切换。可以理解的,在这种情况下,信道的切换也实现了信道传输内容的切换,由此可以提高对RSMC芯片的使用灵活程度。
本方案中,所述RSMC芯片与主处理器通过至少两个信道,可以是UART、SPI等多种交互信道。因此,本方案触发阶段跃迁事件,可以是当前使用的信道,如SPI信道无法进行目标程序的帧片段的传输,例如无法通过当前使用的信道向主处理器一端发出RSMC芯片接收帧片段的反馈信息。在这种情况下,可以切换至另一种类型的通道,如切换至UART信道来进行目标程序帧片段的传输。
信道切换单元104,用于基于阶段跃迁事件,从当前信道切换至目标信道。
具体的切换方式,可以是根据信道数量和信道类型来确定的。例如信道数量可以是两个或者多个,信道可以包含有UART、SPI等多种交互信道。
UART(Universal Asynchronous Receiver/Transmitter,通用异步收发传输器),是一种异步收发传输器,是设备间进行异步通信的关键模块。UART负责处理数据总线和串行口之间的串/并、并/串转换,并规定了帧格式;通信双方只要采用相同的帧格式和波特率,就能在未共享时钟信号的情况下,仅用两根信号线(Rx和Tx)就可以完成通信过程,因此也称为异步串行通信。、SPI等多种交互信道。
SPI(Serial Peripheral Interface,串行外设接口),是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,越来越多的芯片集成了这种通信协议。
本实施例中,可选的,所述信道切换单元,具体用于:
在存在阶段跃迁事件的情况下,从当前信道切换至目标信道,以从当前的阶段跃迁至下一阶段。
本方案中,具体的,可以由一个控制引脚来进行控制,例如低电平代表SPI通道,高电平代表UART通道,甚至可以两个或者三个引脚,构成多种方式。
第一随机访问存储区105,用于将已经存储的目标程序的帧片段删除。可以理解的,在当前通道切换至目标通道后,所述目标程序是从目标通道开始传输的,并且采用的是对于目标程序的每一个帧片段重新进行传输。在这种情况下,需要将已经存储的目标程序的帧片段删除。具体的,可以根据帧片段的存储位置进行存储空间的数据抹除。结合上述示例,可以从顺序为0010 0000的位置开始根据接收到帧片段的数量,将存储的位置逐个抹除。
所述交互接口102,用于通过所述目标信道将目标程序的帧片段从所述主处理器传输至所述RSMC芯片。
本方案可以是采用与上述的存储位置重新开始对于目标程序的帧片段的存储,还可以是重新确定一个起始位置,进行逐帧数据的存储。
第一随机访问存储区105,可以采用RAM(Random Access Memory,随机访问存储器)的一个分区,或者采用一个整个的RAM来作为第一随机访问存储区105。RAM是与CPU直接交换数据的内部存储器。它可以随时读写,而且速度很快,通常作为操作***或其他正在运行中的程序的临时数据存储介质。RAM工作时可以随时从任何一个指定的地址写入或读出信息。
本方案中,第一随机访问存储区105用于存储由目标信道传输的所述目标程序。其中,目标程序即为需要RSMC芯片运行的程序。由于RSMC芯片内部不采用ROM作为程序的载体,所以RSMC芯片每次上电之后需要从主处理器获取目标程序。这样设置可以简化RSMC芯片设计的同时,还能够增加RSMC芯片的使用灵活性,例如在一种场景下,RSMC芯片需要运行程序A,在另一种场景下,RSMC芯片需要运行程序B,如果是采用ROM的设计方式,需要将程序A和程序B都烧录在RSMC芯片的ROM当中,但是如果采用RAM的存储方式,则可以避免出现此问题,即可以根据场景的不同,分别向主处理器获取程序A或者程序B的代码,以运行程序。甚至在其他场景,还可以根据需求来运行程序C或者程序D等。
第一随机访问存储区106,可以理解的,可以是与第一随机访问存储区105同属一个RAM,但是不在同一个地址,或者是与第一随机访问存储区105属于不同的RAM。第一随机访问存储区106,可以在目标程序运行过程中存储所产生的数据,用以完成目标程序执行的任务。具体可以是输入参数、输出成果数据以及目标程序的日志数据等。
在本实施例中,可选的,所述芯片运行启动程序,具体用于:
通过所述交互接口与所述主处理器交互握手协议;
若握手成功,则逐帧接收由所述主处理器发送的目标程序。
其中,交互握手协议的过程,可以是为两者后续的目标程序传输来进行对象明确的过程。例如,在交互握手协议的过程中,可以由主处理器向RSMC芯片发出身份确认信息以及状态确认信息,以了解RSMC芯片是否为能够进行目标程序写入的RSMC芯片,以及了解RSMC芯片是否已经完成上电和其他准备工作,可以接收目标程序。在RSMC芯片向主处理器响应之后,则可以确定握手成功。如果一定时间内未进行回复,则可以确定RSMC芯片未达到理想状态,不能够向RSMC芯片发送目标程序的代码内容。
本实施例中,在握手成功后,RSMC芯片可以逐帧接收由主处理器发送的目标程序。每一帧可以包括目标程序的一部分代码,例如每一帧包括目标程序的5行代码。帧与帧之间可以通过帧编号进行排序,例如帧编号为0000 0000的为第一帧,帧编号为0000 0001的为第二帧,帧编号为0000 0010的为第三帧,等等。
在上述各技术方案的基础上,可选的,所述芯片运行启动程序,还用于:
在逐帧接收由所述主处理器发送的目标程序之后,对所述目标程序的帧片段进行逐帧校验;
若校验成功,则将所述目标程序的帧片段存储至所述第一随机访问存储区。
本方案中,可以对于目标程序的帧片段进行逐帧校验。例如逐帧对帧片段的顺序以及完整性进行校验。具体的,对顺序进行校验,可以是对帧编号进行校验,可以用来校验所接收到的目标程序是否为完整的程序。另外,对完整性进行校验,可以通过读取帧片段的头数据来读取帧片段的数据长度,再确定帧片段的实际长度,进而对读取到的理论长度和实际长度进行校验。
在校验成功后,可以将目标程序的帧片段按照顺序存储至所述第一随机访问存储区的目标地址,以实现对目标程序的代码内容的顺序存储。
本方案这样设置,可以确保所保存的目标程序的帧片段是正确的,可以提高后续目标程序运行过程的稳定性,避免报错。
本实施例所提供的技术方案,通过设置RSMC芯片包括:非易失存储区,用于装载芯片运行启动程序;交互接口,用于与主处理器连接,以进行目标程序的帧片段传输;第一随机访问存储区,用于存储由目标信道传输的所述目标程序;第二随机访问存储区,用于在所述目标程序启动后,存储所述目标程序运行过程中产生的数据。本技术方案,可以通过将需要运行的程序放入RSMC芯片的随机访问存储区中,可以避免对RSMC芯片设置过多的程序存储区域,同时还能够实现通过RSMC芯片灵活的执行所需要的程序,达到提高RSMC芯片使用灵活度的效果。
实施例二
图2是本申请实施例二提供的RSMC芯片的结构示意图。如图2所示,具体包括:所述芯片运行启动程序,还用于:
在通过所述交互接口102与所述主处理器200交互握手协议之前,按照预设周期向所述主处理器200发送特定字符,供所述主处理器200根据所述特定字符和所述预设周期确定芯片身份信息。
本方案中,可以理解的,北斗通信导航设备中的具有类似功能的RSMC芯片可以不止一个。在这样的场景下,在主处理器向RSMC芯片发送目标程序之前,需要确定发送的对象是否能够运行目标程序,或者确定该RSMC芯片是否原本设计用于运行其他程序。因此,就需要在进行目标程序的发送之前,或者说进行交互握手协议之前,需要对RSMC芯片的身份信息进行确定。
本方案中,可选的,所述信道切换单元,还用于:
执行信道切换操作后,向主处理器发出阶段跃迁通知,并通过所述目标通道重新与所述主处理器握手。
本方案中,可以在重新握手过程中,根据接收到的指示标志,确定对由当前信道接收的数据做保留处理,或,做清除处理。
本方案中,对于信道的切换,是需要重新与主处理器进行握手的,以明确双方的身份,在明确双方身份无问题后,可以根据主处理器发出的指示标志,确定对于当前信道已经接收到的目标程序的部分数据,保留或者清除。例如,接收到指示标志后,若为1,则保留,若为0,则清除。
在另一个可行的方案中,也可以将对于已接收到的部分数据的处理方式,按照一定的规则来写入,例如默认都清除处理,或默认都保留处理。或者在传输的数据满足一定条件的情况下,做保留处理,例如所传输的部分数据站目标程序的50%以上,或者是目标程序的使用热度高于一定的阈值,可以做保留处理,其他情况则清除。
本实施例这样设置,可以在重新握手的过程中,确定目标程序的处理方式,可以确保对于已加载数据的有效处理,提高RSMC芯片运行的稳定性。
本方案给出了具体的确定方式,即RSMC芯片由芯片运行启动程序中设定的规则,按照预设周期,向主处理器发送特定字符。可以理解的,不同RSMC芯片的预设周期可以是不同的,特定字符也可以是不同的。在想主处理器发送之后,可以为主处理器提供周期信息和特定字符信息,供主处理器根据这两个信息中的一个或者全部来确定芯片身份信息。具体的,可以在主处理器中设置有关联表,关联表中包含芯片身份信息与预设周期的关联关系,或者包含芯片身份信息与特定字符的关联关系,或者包含芯片身份信息与预设周期和特定字符三者之间的关联关系。则主处理器接收到周期信息和/或特定字符信息之后,可以根据关联表来确定芯片身份信息,例如确定RSMC芯片ID为10-111320。
本实施例通过控制RSMC芯片按照预设周期向主处理器发送特定字符,可以便于主处理器确定芯片身份信息,以进行进一步的握手和目标程序的发送,为后续的目标程序的正常运行提供保障。
在上述各实施例的基础上,可选的,所述第一随机访问存储区105,具体用于:
在所述目标程序接收完成后,启动所述目标程序。
其中,在接收完成之后,RSMC芯片可以由bootrom跳转至第一随机访问存储区105来运行目标程序。具体的,可以根据目标程序的帧片段的起始存储位置,进行跳转。
图3是本申请实施例二提供的RSMC芯片和主处理器的交互方式示意图。如图3所示,本方案实现了一种在消费类终端上,例如手机、手表以及手环等。
北斗RSMC(regional short message communication,区域短报文通信服务)芯片程序由外部主平台置入的方案。
在RSMC芯片内部的Soc电路包含bootrom、程序RAM和数据RAM。RSMC芯片在启动后,首先运行bootrom的程序,在bootrom程序中包含由主处理器置入程序的代码。
代码的典型执行流程如下:
判定第一阶段启动方式类型,以SPI为例;
首先通过第一启动方式进行加载,即通过SPI通道进行外部镜像加载流程,包含以下步骤:
1、RSMC芯片和主平台处理器握手;
2、握手成功后,进入代码数据传输模式;
3、RSMC传输完代码数据后进行校验,校验成功后跳转程序RAM运行;
以上过程中,如果出现异常,则自动清空已有加载部分数据,改由第二启动方式进行加载,即改为UART作为通道再次执行加载流程。
将上述流程称为两个阶段(即第一启动方式和第二启动方式)备份外部加载启动方式。
进而,可以扩充为多阶段备份外部加载启动方式,即不限于两种启动方式的备份外部加载启动。
可以理解的,在上述过程中,在当前通道加载失败后,可以首先判断是否所有的通道都遍历完成,如果都遍历完成,可以直接结束流程,并在主处理器侧反馈加载失败的信息,如果没有遍历完成,则可以继续向下遍历。
具体的,在遍历的过程中,可以在首次加载时,确定信道的编号是1,并在每次重新加载时,对信道的编号加1,得到新的信道编号,在信道编号已经与信道数量一致的情况下,则确定为已经都遍历完成,且都失败,则可以反馈加载失败的信息。
将上述流程称为信道自主的外部加载启动方式。
采用外部加载的方式启动程序,存在启动方式单一的问题,即选定启动通道(如UART/SPI)后只有一次加载流程,如果该流程失败,没有第二启动方式作为鲁棒性考量。
本发明主要解决该问题,在外部加载的基础上,增加了多阶段外部加载启动方式设计,即一个阶段启动出现问题的情况下,可以自动切换至下一阶段,通过其他通道重新进行目标程序的接收和启动,从而提升了加载流程的鲁棒性。
实施例三
图4是本申请实施例三提供的芯片多阶段启动方法的流程示意图。如图4所示,具体包括:
S401,若芯片上电,则启动存储在非易失存储区的芯片运行启动程序。
S402,通过当前信道进行目标程序的帧片段传输,并将所述目标程序存储至第一随机访问存储区。
S403,检测是否存在阶段跃迁事件。
S404,基于阶段跃迁事件,从当前信道切换至目标信道。
S405,将已经存储的目标程序的帧片段删除。
S406,通过所述目标信道将目标程序的帧片段从所述主处理器传输至所述RSMC芯片。
S407,在所述目标程序接收完成之后启动所述目标程序;在所述目标程序运行过程中若产生数据,则存储至第二随机访问存储区。
在上述技术方案的基础上,可选的,所述至少两个信道包括SPI信道和UART信道
在上述技术方案的基础上,可选的,在从当前信道切换至目标信道之后,所述方法还包括:
通过所述芯片运行启动程序重新与所述主处理器握手;
根据接收到的指示标志,确定对由当前信道接收的数据做保留处理,或,做清除处理。
在上述技术方案的基础上,可选的,在启动存储在非易失存储区的芯片运行启动程序之后,所述方法还包括:
按照预设周期向所述主处理器发送特定字符,供所述主处理器根据所述特定字符和所述预设周期确定芯片身份信息。
在上述技术方案的基础上,可选的,通过交互接口与主处理器连接,以进行目标程序的帧片段传输,并将所述目标程序存储至第一随机访问存储区,包括:
通过所述交互接口与所述主处理器交互握手协议;
若握手成功,则逐帧接收由所述主处理器发送的目标程序;
对所述目标程序的帧片段进行逐帧校验;
若校验成功,则将所述目标程序的帧片段存储至所述第一随机访问存储区。
在上述技术方案的基础上,可选的,在启动所述目标程序之后,所述方法还包括:
若芯片下电,则清除所述第一随机访问存储区的目标程序,以及清除所述第二随机访问存储区存储的数据。
在本申请实施例中,所述RSMC芯片与主处理器通过至少两个信道连接,所述RSMC芯片包括:非易失存储区,用于装载芯片运行启动程序;交互接口,用于与主处理器通过当前信道连接,以将目标程序的帧片段从所述主处理器传输至所述RSMC芯片;检测单元,用于检测是否存在阶段跃迁事件;信道切换单元,用于基于阶段跃迁事件,从当前信道切换至目标信道;所述交互接口,用于通过所述目标信道将目标程序的帧片段从所述主处理器传输至所述RSMC芯片;第一随机访问存储区,用于存储由目标信道传输的所述目标程序;第二随机访问存储区,用于在所述目标程序启动后,存储所述目标程序运行过程中产生的数据。本技术方案,可以通过将需要运行的程序放入RSMC芯片的随机访问存储区中,可以避免对RSMC芯片设置过多的程序存储区域,同时还能够实现通过RSMC芯片与主处理器的多信道连接,实现在当前阶段异常的情况下自动跃迁至下一阶段的效果。
本申请实施例提供的芯片多阶段启动方法是采用上述各实施例的所提供的RSMC芯片来执行的,具有与之相应的功能和效果,为避免重复,这里不再赘述。
实施例四
图5是本申请实施例四提供的北斗通信导航设备的结构示意图。如图5所示,本申请实施例还提供一种北斗通信导航设备500,所述北斗通信导航设备包括主处理器501,以及包括与所述主处理器501连接的如上述各实施例所述的RSMC芯片502。
本实施例所提供的北斗通信导航设备,能够执行上述实施例所提供的芯片多阶段启动方法,且能达到相同的技术效果,为避免重复,这里不再赘述。
需要说明的是,本申请实施例中的北斗通信导航设备包括上述所述的移动设备和非移动设备。
实施例五
本申请实施例还提供一种可读存储介质,所述可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述芯片多阶段启动方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
其中,所述处理器为上述实施例中所述的北斗通信导航设备中的处理器。所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。
上述仅为本申请的较佳实施例及所运用的技术原理。本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行的各种明显变化、重新调整及替代均不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,而本申请的范围由权利要求的范围决定。
Claims (10)
1.一种RSMC芯片,其特征在于,所述RSMC芯片与主处理器通过至少两个信道连接,所述RSMC芯片包括:
非易失存储区,用于装载芯片运行启动程序;
交互接口,用于与主处理器通过当前信道连接,以将目标程序的帧片段从所述主处理器传输至所述RSMC芯片;
第一随机访问存储区,用于存储由当前信道传输的所述目标程序;
检测单元,用于检测是否存在阶段跃迁事件;
信道切换单元,用于基于阶段跃迁事件,从当前信道切换至目标信道;
第一随机访问存储区,用于将已经存储的目标程序的帧片段删除;
所述交互接口,用于通过所述目标信道将目标程序的帧片段从所述主处理器传输至所述RSMC芯片;
第一随机访问存储区,用于存储由目标信道传输的所述目标程序;
第二随机访问存储区,用于在所述目标程序启动后,存储所述目标程序运行过程中产生的数据。
2.根据权利要求1所述RSMC芯片,其特征在于,所述芯片运行启动程序,具体用于:
通过所述交互接口与所述主处理器交互握手协议;
若握手成功,则逐帧接收由所述主处理器发送的目标程序。
3.根据权利要求2所述RSMC芯片,其特征在于,所述芯片运行启动程序,还用于:
在逐帧接收由所述主处理器发送的目标程序之后,对所述目标程序的帧片段进行逐帧校验;
若校验成功,则将所述目标程序的帧片段存储至所述第一随机访问存储区。
4.根据权利要求1所述RSMC芯片,其特征在于,所述第一随机访问存储区,具体用于:
在所述目标程序接收完成后,启动所述目标程序。
5.根据权利要求1所述RSMC芯片,其特征在于,所述阶段跃迁事件,包括:
校验通过当前信道接收的所述目标程序的帧片段不完整的事件;
或者,
校验通过当前信道接收的所述目标程序的帧片段的顺序混乱的事件。
6.根据权利要求5所述RSMC芯片,其特征在于,所述信道切换单元,具体用于:
在存在阶段跃迁事件的情况下,从当前信道切换至目标信道,以从当前的阶段跃迁至下一阶段。
7.根据权利要求6所述RSMC芯片,其特征在于,所述信道切换单元,还用于:
执行信道切换操作后,向主处理器发出阶段跃迁通知,并通过所述目标通道重新与所述主处理器握手。
8.一种芯片多阶段启动方法,其特征在于,所述方法由如权利要求1-6中任一项所述的RSMC芯片执行,所述RSMC芯片与主处理器通过至少两个信道连接;所述方法包括:
若芯片上电,则启动存储在非易失存储区的芯片运行启动程序;
通过当前信道进行目标程序的帧片段传输,并将所述目标程序存储至第一随机访问存储区;
检测是否存在阶段跃迁事件;
基于阶段跃迁事件,从当前信道切换至目标信道;
将已经存储的目标程序的帧片段删除;
通过所述目标信道将目标程序的帧片段从所述主处理器传输至所述RSMC芯片;
在所述目标程序接收完成之后启动所述目标程序;在所述目标程序运行过程中若产生数据,则存储至第二随机访问存储区。
9.根据权利要求8所述芯片多阶段启动方法,其特征在于,所述至少两个信道包括SPI信道和UART信道。
10.一种北斗通信导航设备,其特征在于,所述北斗通信导航设备包括主处理器,以及包括与所述主处理器连接的如权利要求1-7中任一项所述的RSMC芯片。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211610426.XA CN116244255A (zh) | 2022-12-12 | 2022-12-12 | Rsmc芯片、芯片多阶段启动方法以及北斗通信导航设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211610426.XA CN116244255A (zh) | 2022-12-12 | 2022-12-12 | Rsmc芯片、芯片多阶段启动方法以及北斗通信导航设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116244255A true CN116244255A (zh) | 2023-06-09 |
Family
ID=86626674
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211610426.XA Pending CN116244255A (zh) | 2022-12-12 | 2022-12-12 | Rsmc芯片、芯片多阶段启动方法以及北斗通信导航设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116244255A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117591189A (zh) * | 2024-01-18 | 2024-02-23 | 深圳市天辰防务通信技术有限公司 | 时间优化方法、控制装置、导航处理器***及导航处理器 |
-
2022
- 2022-12-12 CN CN202211610426.XA patent/CN116244255A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117591189A (zh) * | 2024-01-18 | 2024-02-23 | 深圳市天辰防务通信技术有限公司 | 时间优化方法、控制装置、导航处理器***及导航处理器 |
CN117591189B (zh) * | 2024-01-18 | 2024-04-26 | 深圳市天辰防务通信技术有限公司 | 时间优化方法、控制装置、导航处理器***及导航处理器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104699576B (zh) | 串行通信测试装置、包括该装置的***及其方法 | |
CN107070731B (zh) | 一种主从仲裁方法及*** | |
CN101819561A (zh) | 文件下载方法及*** | |
CN116244255A (zh) | Rsmc芯片、芯片多阶段启动方法以及北斗通信导航设备 | |
EP0886410A2 (en) | Data communication method, data communication apparatus, and data communication program recording medium | |
CN116578521B (zh) | 一种单总线通信方法、装置、***及设备 | |
US20100091621A1 (en) | Storage System and Communications Method | |
CN112217610A (zh) | 数据处理方法、装置、消费机、终端及可读存储介质 | |
CN102413247A (zh) | 终端死机现场的恢复方法及装置 | |
US20030154288A1 (en) | Server-client system and data transfer method used in the same system | |
CN116244254A (zh) | Rsmc芯片、芯片信道自适应加载方法以及北斗通信导航设备 | |
CN109951255A (zh) | 一种基于tcp的数据传输方法、***、源设备、及目标设备 | |
JP2009296293A (ja) | 通信装置 | |
EP3319249A1 (en) | Transmission checking method, node, system and computer storage medium | |
CN111371799B (zh) | Mctp控制器收发数据的控制方法、装置及设备 | |
CN114401218A (zh) | 一种数据报文的旁路转发方法及装置 | |
CN114640979A (zh) | Wi-Fi信号传输的控制方法、装置、电子设备及存储介质 | |
JP2007263404A (ja) | 電気機器および電気機器における通信機能正常判定方法 | |
CN112423068A (zh) | 智能电视调试方法、装置、移动终端和可读存储介质 | |
CN113543102A (zh) | 一种蓝牙连接方法 | |
CN114895746B (zh) | 一种***时间的同步方法及装置、计算设备、存储介质 | |
CN117278345B (zh) | 应用于网络设备的节能方法及装置 | |
CN115269052A (zh) | Rsmc芯片、芯片程序的加载方法以及北斗通信导航电子设备 | |
CN115525935B (zh) | 多安全芯片的并发数据运算方法、装置、设备及存储介质 | |
WO2024140599A1 (zh) | 通信方法和通信装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |