本发明涉及一种控制系统,具体是一种mcu芯片中的存储复用控制系统。
背景技术:
在使用一次可编程的nvm存储器的mcu芯片中,用户程序只能被烧写一次,当用户程序需要更新时,只能废弃已使用的mcu芯片。
技术实现要素:
本发明的目的在于提供一种mcu芯片中的存储复用控制系统,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:
一种mcu芯片中的存储复用控制系统,mcu芯片内部包括mcu内核core、芯片配置控制单元config、nvm存储器和nvm存储器地址映射单元map_ctrl,所述nvm存储器有2种访问模式,分别是一般模式以及分页复用模式,当mcu芯片工作于一般模式时,mcu芯片中的nvm存储器中不存在分页复用,整个nvm存储空间都用来存储用户程序以及数据,当芯片被应用到不需要对程序进行升级的应用场合时,用户能够使用芯片的一般模式,从而能够使用到nvm存储器中所有的存储空间;当mcu芯片工作于分页复用模式时,整个nvm存储空间分为2片区域:nvm存储器公共区nvm_com以及nvm存储器分页区nvm_page,nvm存储器公共区nvm_com用于存储用户应用中不需要更新的程序及数据,nvm存储器分页区nvm_page用于存储用户应用中将来可能会更新的程序及数据,nvm存储器分页区分页4个子页,用户能够根据需要将不同的配置值烧写于mcu芯片中的芯片配置控制单元config,当mcu芯片工作于分页复用模式时,将会根据芯片配置控制单元config中的配置值选择nvm存储器分页区中某一子页,在需要时,读出此子页中指令码,执行相应的操作,芯片配置控制单元config负责保存对mcu芯片的全局性配置控制信息。
作为本发明进一步的方案:所述nvm存储器有2种访问模式能够由用户通过配置芯片配置控制单元config中的模式选择控制信号pen来进行选择。
作为本发明进一步的方案:当pen为0时nvm存储器工作于一般模式;当pen为1时nvm存储器工作于分页复用模式。
作为本发明再进一步的方案:当用户选择芯片的工作模式为nvm存储器分页复用模式时,还需要配置分页选择信号psel。
与现有技术相比,本发明的有益效果是:本发明当应用程序需要升级时,只需要将更新的程序烧写至一次可编程型的nvm存储器的其它分页存储区,而不需要替换原来的芯片,从而降低了用户的产品开发成本,提高产品的竞争力。
附图说明
图1为mcu芯片中的存储复用控制系统的原理框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,本发明实施例中,一种mcu芯片中的存储复用控制系统,mcu芯片内部包括mcu内核core、芯片配置控制单元config、nvm存储器和nvm存储器地址映射单元map_ctrl。
nvm存储器用于存储用户的程序,mcu内核core在工作时,需要从nvm存储器中读回指令码,然后根据指令码执行相应的操作。在本方案中,mcu芯片中的nvm存储器有2种访问模式,分别是一般模式以及分页复用模式。当mcu芯片工作于一般模式时,mcu芯片中的nvm存储器中不存在分页复用,整个nvm存储空间都用来存储用户程序以及数据。当芯片被应用到不需要对程序进行升级的应用场合时,用户可以使用芯片的一般模式,从而可以使用到nvm存储器中所有的存储空间,不会浪费nvm存储器中宝贵的存储空间。
当mcu芯片工作于分页复用模式时,整个nvm存储空间分为2片区域:nvm存储器公共区nvm_com以及nvm存储器分页区nvm_page。nvm存储器公共区nvm_com用于存储用户应用中不需要更新的程序及数据。nvm存储器分页区nvm_page用于存储用户应用中将来可能会更新的程序及数据。nvm存储器分页区分页4个子页,用户可以根据需要将不同的配置值烧写于mcu芯片中的芯片配置控制单元config。当mcu芯片工作于分页复用模式时,将会根据芯片配置控制单元config中的配置值选择nvm存储器分页区中某一子页,在需要时,读出此子页中指令码,执行相应的操作。芯片配置控制单元config负责保存对mcu芯片的全局性配置控制信息。在本方案中,nvm存储器有2种访问模式可以由用户通过配置芯片配置控制单元config中的模式选择控制信号pen来进行选择。当pen为0时nvm存储器工作于一般模式;当pen为1时nvm存储器工作于分页复用模式。当用户选择芯片的工作模式为nvm存储器分页复用模式时,还需要配置分页选择信号psel。mcu芯片将根据分页选择信号psel的值,选择相应的分页存储区(由nvm_p0~nvm_p7共8个子分页组成)。mcu内核发出读nvm存储器请求(read),同时将对应的初始请求地址adr0输入至nvm存储地址映射单元。nvm存储器地址映射单元map_ctrl负责对mcu内核的初始请求地址进行译码。当nvm存储器地址映射单元map_ctrl检测到模式选择控制信号pen为低电平状态时,将直接将初始请求地址adr0直接作为映射请求地址addr_map输出至nvm存储器。当nvm存储器地址映射单元map_ctrl检测到模式选择控制信号psel为高电平状态时,将根据分页选择控制信号page_sel对初始请求地址adr0进行译码,译码后得到的映射请求地址,将与被选择的nvm存储器分页区的物理地址相对应。nvm存储器检测到read信号有效后,将根据射请求地址addr_map,将存储于其内的对应地址单元的值通过数据信号data_out返回至mcu内核,mcu内核再根据返回的数据进行相应的操作。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。