加速SOC内核读取指令的方法及系统技术方案

技术编号:22237763 阅读:43 留言:0更新日期:2019-10-09 17:43
本发明专利技术公开了一种加速SOC内核读取指令的方法及系统,包括如下步骤:S1、数据预处理,指令分析单元读出Flash单元中的指令进行分析,将跳转地址及该跳转地址中存放的数据建立数据库;S2、将S1中建立的数据库存储在FLASH单元中;S3、将S2中存储于FLASH单元的数据写入指令缓存单元;S4、指令跳转时,指令控制单元将目标地址传输到FLASH单元和指令缓存单元,在Flash单元读取指令等待时将指令缓存单元的数据传输到内核,直至从FLASH单元中读到数据后指令控制单元将FLASH单元中的数据传输到内核。本发明专利技术在内核读取指令的地址发生跳转时,使得内核无需等待周期即可得到指令数据,提高了MCU的运算和处理能力。

Method and System of Accelerating the Reading Instruction of SOC Kernel

【技术实现步骤摘要】
加速SOC内核读取指令的方法及系统
本专利技术涉及一种加速SOC内核读取指令的方法及系统,属于SOC(SystemOnChip)

技术介绍
现有的SOC系统中,内核从Flash中读取指令主要分为两种方式,方式一是采用串行接口Flash,需要将指令数据复制到SRAM中,内核直接从SRAM中读取数据,由于需要提供一个大容量的SRAM存放指令数据,成本较高。方式二是采用并行接口Flash,由于并行接口FLASH的读取速率受限制,所以通过增加Flash的数据位宽并采用预取指令的方式提高内核读取指令的速度,但是如果内核读取指令的地址发生了跳转,内核需要等待若干时钟周期才能得到指令,降低了MCU的运算和处理能力。
技术实现思路
为了解决上述方式二的问题,本专利技术提供一种加速SOC内核读取指令的方法及系统,该方法及系统在内核读取指令的地址发生跳转时,使得内核无需等待周期即可得到指令数据,提高了MCU的运算和处理能力。解决上述问题的技术方案为:一种加速SOC内核读取指令的方法,包括如下步骤:S1、数据预处理,指令分析单元读出Flash单元中的指令进行分析,将跳转地址及该跳转地址中存放的数据建立数据库;S2、将S1中建立的数据库存储在FLASH单元中;S3、将S2中存储于FLASH单元的数据写入指令缓存单元;S4、指令跳转时,指令控制单元将目标地址传输到FLASH单元和指令缓存单元,在Flash单元读取指令等待时将指令缓存单元的数据传输到内核,直至从FLASH单元中读到数据后指令控制单元将FLASH单元中的数据传输到内核。进一步地,S2中,指令缓存单元包括:包括指令缓冲控制单元、CAM存储器和SRAM存储器;指令缓冲控制单元,将指令分析单元的分析结果中的地址信息保存在所述CAM存储器中,对应的指令数据信息保存在SRAM存储器中,CAM存储器中的存放的地址信息与SRAM存储器中存放的数据信息一一对应。一种加速SOC内核读取指令的系统,包括:内核、FLASH单元、指令分析单元、指令控制单元和指令缓冲单元;所述指令分析单元,用于对指令数据进行分析,获取跳转到的目标地址的首地址,并将符合条件的地址及该地址中存放的指令数据保存在指令缓冲单元中;所述指令控制单元,用于将指令分析单元的分析结果写入所述指令缓冲单元,同时所述指令控制单元对所述内核访问Flash单元的地址进行分析,当判断访问Flash单元的地址发生跳转时,所述指令控制单元将跳转的目标地址同时发送给所述指令缓冲单元和所述Flash单元。进一步地,所述指令分析单元集成在SOC芯片内部或者设于SOC芯片外部。进一步地,指令缓冲单元包括指令缓冲控制单元、CAM存储器和SRAM存储器;所述指令缓冲控制单元,用于保存所述指令分析单元分析的结果,同时负责查找指令控制单元传输过来的地址所对应的指令数据。所述指令缓冲控制单元,将所述指令分析单元的分析结果中的地址信息保存在所述CAM存储器中,对应的指令数据信息保存在所述SRAM存储器中。进一步地,所述CAM存储器中的存放的地址信息与所述SRAM存储器中存放的数据信息一一对应。进一步地,指令缓冲控制单元负责将指令控制单元发送过来的地址信息与CAM中存储的地址信息进行匹配,匹配的结果是指令数据在SRAM存储的地址信息,从而从SRAM中获取到指令数据。本专利技术的优点在于:在SOC系统中内核读取指令数据的地址发生跳转时,内核无需等待周期即可得到指令数据,提高了SOC的运算和处理能力。下面结合附图对本专利技术作进一步详细描述。附图说明图1为本专利技术结构示意图;图2为图1中模式A一较佳实施例结构示意图;图3为图1中模式B一较佳实施例结构示意图。具体实施方式为了加深对本专利技术的理解,下面将结合实施例和附图对本专利技术作进一步详述,该实施例仅用于解释本专利技术,并不构成对本专利技术保护范围的限定。如图1所示,一种加速SOC内核读取指令的方法,包括如下步骤:S1、数据预处理,指令分析单元读出Flash单元中的指令进行分析,将跳转地址及该跳转地址中存放的数据建立数据库;S2、将S1中建立的数据库存储在FLASH中;S3、将S2中存储于FLASH的数据写入指令缓存单元;S4、指令跳转时,指令控制单元将目标地址传输到FLASH单元和指令缓存单元,在Flash单元读取指令等待时将指令缓存单元的数据传输到内核,直至从FLASH单元中读到数据后指令控制单元将FLASH单元中的数据传输到内核。本专利技术装置包括:内核、FLASH单元、指令分析单元、指令控制单元和指令缓冲单元;所述指令分析单元,用于对指令数据进行分析,获取跳转到的目标地址的首地址,并将符合条件的地址及该地址中存放的指令数据保存在指令缓冲单元中。进一步地,所述指令分析单元集成在SOC芯片内部或者设于SOC芯片外部。所述指令控制单元,用于将指令分析单元的分析结果写入所述指令缓冲单元,同时所述指令控制单元对内核访问Flash单元的地址进行分析,当判断访问Flash单元的地址发生跳转时,所述指令控制单元将跳转的目标地址同时发送给所述指令缓冲单元和Flash单元,由于地址跳转时读取所述Flash单元中的数据需要等待时间,所以此时读取所述指令缓冲单元中存放的指令数据,并将该指令数据传输给所述内核,避免了所述内核等待所述Flash单元输出数据。当所述Flash单元输出指令数据后,所述指令控制单元将所述Flash单元输出的指令数据传输给所述内核。进一步地,所述指令缓冲单元包括指令缓冲控制单元、CAM存储器(ContentAccessMemory)和SRAM存储器。所述指令缓冲控制单元,用于保存所述指令分析单元分析的结果,同时负责查找指令控制单元传输过来的地址所对应的指令数据。所述指令缓冲控制单元,将所述指令分析单元的分析结果中的地址信息保存在所述CAM存储器中,对应的指令数据信息保存在所述SRAM存储器中,所述CAM存储器中的存放的地址信息与所述SRAM存储器中存放的数据信息一一对应。进一步地,所述指令缓冲控制单元将指令控制单元传输过来的地址信息传输到所述CAM存储器,所述CAM存储器将该地址信息与所述CAM存储器中存放的地址信息进行匹配,并输出该地址信息在所述CAM存储器中存放的位置地址。由于数据在所述SRAM存储器中存放的位置地址与所述CAM存储器中存放地址信息的位置地址相同,从所述SRAM存储器中读取该位置地址中存放的数据就是指令数据。将所述SRAM存储器输出的指令数据发送给所述指令控制单元,所述指令控制单元将指令数据发送给所述内核。如图2所示,实施例1:该实施例中指令分析单元在SOC芯片外部,现设定SOC内核指令数据位宽为32bit,流程如下:指令分析单元读出Flash中的指令数据进行分析,分析出跳转到的目标地址区域,获取该目标地址区域的首地址及对应地址存放的指令数据,获取该首地址加4的地址及对应地址存放的指令数据;重复上述步骤,直到获取所有满足条件的地址及地址中存放的数据,将分析结果保存在临时指令文件中;将临时指令文件和Flash指令文件中的数据通过Flash烧录装置和Flash控制单元写入Flash中指定区域;SOC芯片上电完成后,指令控制单元读取Flash中存放的临时指令数据并写入指令缓冲单元;指令缓冲控制单元将分析结本文档来自技高网...

【技术保护点】
1.一种加速SOC内核读取指令的方法,其特征在于,包括如下步骤:S1、数据预处理,指令分析单元读出Flash单元中的指令进行分析,将跳转地址及该跳转地址中存放的数据建立数据库;S2、将S1中建立的数据库存储在FLASH单元中;S3、将S2中存储于FLASH单元的数据写入指令缓存单元;S4、指令跳转时,指令控制单元将目标地址传输到FLASH单元和指令缓存单元,在Flash单元读取指令等待时将指令缓存单元的数据传输到内核,直至从FLASH单元中读到数据后指令控制单元将FLASH单元中的数据传输到内核。

【技术特征摘要】
1.一种加速SOC内核读取指令的方法,其特征在于,包括如下步骤:S1、数据预处理,指令分析单元读出Flash单元中的指令进行分析,将跳转地址及该跳转地址中存放的数据建立数据库;S2、将S1中建立的数据库存储在FLASH单元中;S3、将S2中存储于FLASH单元的数据写入指令缓存单元;S4、指令跳转时,指令控制单元将目标地址传输到FLASH单元和指令缓存单元,在Flash单元读取指令等待时将指令缓存单元的数据传输到内核,直至从FLASH单元中读到数据后指令控制单元将FLASH单元中的数据传输到内核。2.根据权利要求1所述的方法,其特征在于,S2中,指令缓存单元包括:包括指令缓冲控制单元、CAM存储器和SRAM存储器;指令缓冲控制单元,将指令分析单元的分析结果中的地址信息保存在所述CAM存储器中,对应的指令数据信息保存在SRAM存储器中,CAM存储器中的存放的地址信息与SRAM存储器中存放的数据信息一一对应。3.一种加速SOC内核读取指令的系统,其特征在于,包括:内核、FLASH单元、指令分析单元、指令控制单元和指令缓冲单元;所述指令分析单元...

【专利技术属性】
技术研发人员:韩春
申请(专利权)人:江苏沁恒股份有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1