掌桥专利:专业的专利平台
掌桥专利
首页

处理器系统

文献发布时间:2023-06-19 12:16:29


处理器系统

技术领域

本发明涉及计算机领域,更具体地说,涉及一种处理器系统。

背景技术

目前,DRAM(Dynamic Random Access Memory,动态随机存取存储器) 技术获得巨大发展,主要应用的有同步动态随机接入存储器(SDRAM)、双倍 数据速率(DDR)SDRAM、第2代双倍数据速率(DDR2)SDRAM、第3代双倍 数据速率(DDR3)SDRAM和第4代双倍数据速率(DDR4)SDRAM等多种类型。 对于上述类型的DRAM,主要由内存控制器和DRAM晶片(即内存颗粒)构 成,CPU(central processing unit,中央处理单元)经由内存控制器向DRAM 晶片发送控制命令,包括时钟信号、命令控制信号以及地址信号等,并通过上 述控制命令控制对DRAM晶片进行数据信号的读写操作。

在计算机系统在执行程序时,由CPU执行的相关程序和数据需先放入 DRAM中,在执行程序时CPU根据当前程序指针寄存器的内容从DRAM取 出指令并执行指令,然后再取出下一条指令并执行,如此循环下去直到程序结 束指令时才停止执行。其工作过程就是不断地取指令和执行指令的过程,最后 将计算的结果放入指令指定的存储器地址中。

然而,由于DRAM的成本较高,通常其存储容量有限,因此大部分程序 存储在成本相对较低的大容量存储设备中,例如硬盘、固态硬盘等,在计算机 运行时,CPU需将大容量存储设备中的数据搬移到DRAM,以及将DRAM的 数据写入到大容量存储设备中。并且,因大容量存储设备与中央处理单元的交 互速度均大大低于中央处理单元与DRAM的交互速度,因此大大影响了计算 机系统的整体运行效率。

发明内容

本发明要解决的技术问题在于,针对上述计算机系统整体运行效率不高的 问题,提供一种处理器系统。

本发明解决上述技术问题的技术方案是,提供一种处理器系统,包括处理 器单元、内存控制单元、随机存储单元、闪存单元;所述处理器单元与所述内 存控制单元电性连接,所述内存控制单元分别与所述随机存储单元、闪存单元 电性连接,所述处理器单元通过所述内存控制单元读取所述随机存储单元中的 数据指令集,所述随机存储单元通过所述内存控制单元映射所述闪存单元。

作为本发明的进一步改进,所述内存控制单元用于根据所述处理器单元的 请求,从所述随机存储单元读取并反馈对应的指令,并在所述随机存储单元中 的数据指令集符合预设条件时,从所述闪存单元获取所述数据指令集的后续指 令集并写入到所述随机存储单元。

作为本发明的进一步改进,所述处理器单元包括第一处理器单元和第二处 理器单元,所述数据指令集包括第一指令集和第二指令集,所述预设条件包括 第一预设条件和第二预设条件,所述第一指令集为等待所述第一处理器单元处 理的指令集,所述第二指令集为等待所述第二处理器单元处理的指令集;

所述内存控制单元用于根据所述第一处理器单元和第二处理器单元的请 求,从所述随机存储单元读取并反馈对应的指令,并在所述随机存储单元中的 第一指令集符合第一预设条件时,从所述闪存单元获取所述第一指令集的后续 指令集并写入到所述随机存储单元,以及在所述随机存储单元中的第二指令集 符合第二预设条件时,从所述闪存单元获取所述第二指令集的后续指令集并写 入到所述随机存储单元。

作为本发明的进一步改进,所述第一处理器单元还用于从所述随机存储单 元读取所述第二指令集的后续指令集。

作为本发明的进一步改进,所述第一处理器单元还用于将处理之后的第一 指令集或其处理结果缓存至所述随机存储单元,所述第二处理器单元用于从所 述随机存储单元读取所述处理之后的第一指令集。

作为本发明的进一步改进,所述随机存储单元包括第一映射区和第二映射 区,所述第一映射区用于缓存所述第一指令集及其后续指令集,所述第二映射 区用于缓存所述第二指令集及其后续指令集。

作为本发明的进一步改进,所述随机存储单元包括第一映射区、第二映射 区、第三映射区和第四映射区,所述第一映射区用于缓存所述第一指令集,所 述第三映射区用于缓存所述第一指令集的后续指令集;所述第二映射区用于缓 存所述第二指令集,所述第四映射区用于缓存所述第二指令集的后续指令集。

作为本发明的进一步改进,所述第一映射区和所述第三映射区用于缓存所 述数据指令集时相互切换;所述第二映射区和第四映射区用于缓存所述数据指 令集时相互切换。

作为本发明的进一步改进,所述预设条件为所述随机存储单元中等待所述 多个处理器单元读取的数据指令集的数量小于预设值,或者预计所述随机存储 单元中等待读取的数据指令集在所述多个处理器中执行的时间小于预设时间。

作为本发明的进一步改进,所述内存控制单元还包括仲裁器单元,所述仲 裁器单元用于确定所述处理器单元的请求的执行顺序和/或用于确定同一数据 指令集在不同处理器单元之间的处理顺序。

作为本发明的进一步改进,所述处理器单元、随机存储单元、内存控制单 元、闪存单元集成于同一处理器芯片。

本发明的处理器模块:通过将中央处理器、专用处理器、内存控制器、闪 存芯片封装在一起,并通过内存控制器直接根据中央处理器和专用处理器正在 执行的指令集更新DRAM芯片中的内容,从而处理器无需与闪存芯片交互,使 得处理器可始终处于高效运行状态,大大提高系统的运行效率。

附图说明

图1是本发明一实施例提供的处理器模块的框图;

图2是本发明另一实施例提供的处理器模块的框图(一);

图3是本发明另一实施例提供的处理器模块的框图(二);

图4是本发明另一实施例提供的处理器模块的框图(三)。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实 施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅 仅用以解释本发明,并不用于限定本发明。

如图1所示,是本发明提供的处理器系统的框图,该处理器系统可应用于 电子设备,例如个人计算机、服务器、手机、平板等,并实现指令存储和处理。 本实施例的处理器系统包括处理器单元12、内存控制单元13、随机存储单元15 以及闪存单元16,上述处理器单元12和内存控制单元13电性连接,而内存控制 单元13则可以分别与随机存储单元15、闪存单元16电性连接,其中,处理器单 元12可以通过内存控制单元13读取随机存储单元15中的数据指令集,而随机存 储单元15则通过内存控制单元13映射所述闪存单元16。在上述处理器系统运行 过程中,通过随机存储单元15存放处理器单元12当前正在执行或即将执行的数 据指令集,而闪存单元16则用于存储需长期保存的数据指令集。

在本发明的一个实施例中,处理器单元12、随机存储单元15、内存控制单 元13、闪存单元16可集成于同一处理器芯片,采用SOC模式,该处理器芯片包 括一个统一的外部接口,并通过该外部接口安装到电路板(例如计算机系统的 主板),从而可以外部设备通信,实现信号的输入和输出操作。

在实际应用中,处理器单元12、随机存储单元15、内存控制单元13、闪存 单元16也可集成到多个芯片,例如处理器单元12集成于第一芯片,随机存储单 元15、内存控制单元13、闪存单元16集成于第二芯片,而第一芯片与第二芯片 连电性连接。上述第一芯片和第二芯片可采用系统级封装工艺封装于一体,并 提供一个统一的对外接口,从而可安装到电路板等器件上。此外,以上各单元, 还可分别集成于不同的处理器芯片、DRAM芯片、内存控制芯片、闪存芯片, 则该处理器系统可采用系统级封装工艺封装于一体,并提供一个统一的对外接 口,从而可安装到电路板等器件上。

在本发明的一个实施例中,处理器单元12可以通过通信线路与内存控制器 单元13连接,进而实现数据交互,相同的,随机存储单元15可以通过内存总线 与内存控制单元电性连接实现数据交互,类似的,闪存单元16可以通过内存总 线与内存控制单元13电性连接,实现数据交互。

在本发明的一个实施例中,闪存单元16具体可采用存储容量相对较大、成 本相对较低、数据存取速度相对较慢的NAND存储芯片等,其可在断电状态下 保存数据;随机存储单元15具体可采用存储容量相对较小、成本相对较高、数 据存取速度相对较快的DDR、DDR2、DDR3、DDR4、DDR5或相变存储器等 存储芯片等,即随机存储单元15的数据存储容量小于闪存单元16的数据存储容 量。考虑到成本因素,随机存储单元15最好采用在断电时无法保留存储的数据 的存储芯片。

通过内存控制单元13将存储容量较大、成本较低的闪存单元16的存储数据 映射到存储容量较小、成本较高的随机存储单元15,并且上述映射操作不占用 处理器单元12的时钟周期,以及处理器单元12与随机存储单元15之间的内存总 线,可在随机存储单元15的存储容量较小的情况下实现数据的高速处理,使得 处理器单元12可始终处于高效运行状态,大大提高计算机系统等电子设备的运 行效率。

在本发明的一个实施例中,内存控制单元13可根据处理器单元12的请求, 从随机存储单元15读取并反馈对应的数据指令,即内存控制单元13在接收到处 理器单元12的读写请求时,从随机存储单元15获取与读写请求对应的数据指令 并将该读写请求对应的数据指令通过内存总线发送给处理器单元12,以及将处 理器单元12的执行结果写入到随机存储单元15。上述操作过程与现有的处理器 与内存储器(例如DRAM)的数据交互过程相同,在此不再赘述。

此外,内存控制单元13可通过以下方式实现随机存储单元15与闪存单元16 之间的映射:在随机存储单元15中的数据指令集符合预设条件时,内存控制单 元13从闪存单元16获取数据指令集的后续指令集并写入到随机存储单元15。具 体地,上述预设条件可以为(即内存控制单元13可按以下方式映射闪存单元16 中的内容到随机存储单元15):当随机存储单元15中等待处理器单元12读取的 指令集的数量小于预设值,或者预计随机存储单元15中等待读取的指令集在处 理器单元12中执行的时间小于预设时间时,内存控制单元13从闪存单元16中获 取指令集的后续指令集,并将该指令集的后续指令集更新存储到随机存储单元15。从而随机存储单元15中的数据指令可及时更新,从而不会影响处理器单元12的指令执行。

由于内存控制单元13可直接根据处理器单元12正在执行的指令集预测其 所需执行的后续指令集,并根据预测结果更新随机存储单元15中的内容,从而 处理器单元12无需与闪存单元16交互,且不会占用内存总线。即对处理器单元 12而言,上述内存控制单元13的操作是透明的,随机存储单元15的数据搬移操 作无需处理器单元12参与,不用分配时间管理,处理器单元12仅将随机存储单 元15和闪存单元16当成一块超大的DRAM使用,且资料持久自动固化。从而使 得处理器单元12可始终处于高效运行状态,适用于云计算等对运算资源要求较 高的领域,可大大提高系统的运行效率。

结合图2所示,在本发明的一个实施例中,处理器单元12包括第一处理器 单元121和第二处理器单元122。上述第一处理器单元121和第二处理器单元122 可以为不同类型的处理器,例如第一处理器单元121为主处理器,例如可以为 包括多个核心的嵌入式处理器等,第二处理器单元122则可为辅助处理器,例 如可以为图形处理器、神经网络处理器或其他类似处理器。相应地,随机存储 单元15中的数据指令集包括第一指令集和第二指令集,其中第一指令集为等待 第一处理器单元121处理的指令集,第二指令集为等待第二处理器单元122处理 的指令集。预设条件则包括第一预设条件和第二预设条件。

内存控制单元13分别根据第一处理器单元121和第二处理器单元122的请 求,从随机存储单元15读取并反馈对应的数据指令,并在随机存储单元15中的 第一指令集符合第一预设条件时,从闪存单元16获取第一指令集的后续指令集 并写入到随机存储单元15,以及在随机存储单元中的第二指令集符合第二预设 条件时,从闪存单元16获取第二指令集的后续指令集并写入到随机存储单元 15。

其中,第一预设条件具体可以为:当随机存储单元15中等待第一处理器单 元121读取的第一指令集的数量小于预设值,或者预计随机存储单元15中等待 读取的第一指令集在第一处理器单元121中执行的时间小于预设时间;第二预 设条件具体可以为:当随机存储单元15中等待第二处理器单元122读取的第二 指令集的数量小于预设值,或者预计随机存储单元15中等待读取的第二指令集 在第二处理器单元122中执行的时间小于预设时间。上述预设值和预设时间可 根据随机存储单元15的存储容量、第一处理器单元121、第二处理器单元122 的主频等调整。

在本发明的一个实施例中,所述第一处理器单元121还可以用于从所述随 机存储单元15中读取所述第二指令集的后续指令集。既在随机存储单元15中缓 存的所有指令集都可以被第一处理单元121或者第二处理单元121等不同的处 理器单元所读取,进而尽快数据指令集在多个处理器单元之间的处理速度,减 少相同数据指令集从闪存单元16搬运至随机存储单元15的频率,进而加速多个 处理器单元处理相同或者类似数据指令集的速度。

在本发明的一个实施例中,所述第一处理器单元121还用于将处理之后的 第一指令集或其处理结果缓存至所述随机存储单元15,所述第二处理器单元 122用于从所述随机存储单元15读取所述处理之后的第一指令集。在第一处理 器单元121读取并处理完第一指令集之后,第一处理器单元121还负责将处理后 的第一指令集或其处理结果缓存至随机存储单元15,此时,位于随机存储单元 15中的第一处理器单元121处理之后的第一指令集或其处理结果还可以被第二 处理器122读取并进行二次处理。在该实施例中,同一个数据指令集在被一个 处理器单元处理之后,还可将其或其处理结果缓存至随机存储单元,其他处理 器还可以继续读取并处理该指令集或其处理结果,在这种情况下,通过内存控 制单元可以不断的从闪存单元将数据指令集搬运至随机存储单元,而该数据指 令集还可以按照处理顺序被不同处理单元进行处理,之后再存储至闪存单元, 很大程度上提高了数据指令集的处理速度及效率,减少了数据指令集的搬运次 数,提高处理器的处理效率。

结合图4所示,在本发明的一个实施例中,随机存储单元15包括第一映射 区151和第二映射区152,该第一映射区151和第二映射区152均为随机存储单元 15中的一段存储空间,其中第一映射区151用于缓存第一指令集及其后续指令 集,第二映射区152用于缓存第二指令集及其后续指令集。即第一映射区151 供第一处理器单元121使用,第二映射区152供第二处理器单元122使用。

第一映射区151和第二映射区152中的第一指令集和第二指令集分别与闪 存单元16中的某一段指令程序对应,即第一映射区151和第二映射区152相当于 闪存单元16的两个“窗口”,第一处理器单元121和第二处理器单元122分别可 通过该两个“窗口”获取闪存单元16中存储的指令程序。而“窗口”中展示的 内容,则通过内存控制单元13控制。

具体地,内存控制单元13在第一映射区151中的第一指令集符合第一预设 条件时,从闪存单元16获取第一指令集的后续指令集并写入到第一映射区151, 以及在第二映射区152中的第二指令集符合第二预设条件时,从闪存单元16获 取第二指令集的后续指令集并写入到第二映射区152。

在本发明的另一实施例中,随机存储单元15包括第一映射区、第二映射区、 第三映射区和第四映射区,其中第一映射区用于缓存第一指令集,第三映射区 用于缓存所述第一指令集的后续指令集;第二映射区用于缓存第二指令集,第 四映射区用于缓存所述第二指令集的后续指令集。通过该方式,使得建立映射 的过程与处理器单元读取指令的过程相分离,使得建立映射的过程不影响处理 器单元的指令执行操作,进一步提高处理器单元的执行指令的效率。

特别地,上述第一映射区和第三映射区的其中一个作为主映射区,另一个 作为备映射区,其中主映射区存储有第一处理器单元121当前正在执行和即将 执行的数据指令,内存控制单元13将主映射区中的第一指令集的后续指令集存 储到备映射区,且在满足条件时,主映射区和备映射区互换,即第一映射区和 第三映射区的主备状态相互切换。例如,第一映射区和第三映射区可根据第一 处理器单元121执行的跳转指令(即主映射区中的跳转指令)切换主映射区和 备映射区。例如,当第一映射区为主映射区时,第一处理器单元121按照程序 计数器(Program Counter)所指定的程序位址,通过内存控制单元13从第一映 射区获取数据指令。在正常情况下,程序计数器每执行完一个数据指令,自动 将原位址+1,作为下一数据指令的程序位址,从而第一处理器单元121按照更 新后的程序位址从第一映射区获取下一数据指令;若第一处理器单元121执行 的数据指令为跳转指令时,程序计数器按照跳转值n将原位址+n或-n,作为下 一数据指令的程序位址,第一处理器单元121按照更新后的程序位址从第一映 射区获取下一数据指令;当程序计数器所指定的程序位址位于第三映射区(即 备映射区)时,则主映射区和备映射区完成切换。类似地,第二映射区和第四 映射区的其中一个作为主映射区,另一个作为备映射区用于缓存所述数据指令集时相互切换。

结合图3、图4所示,在本发明的一个实施例中,内部总线14还可包括仲裁 器单元141,该仲裁器单元141用于确定处理器单元12的请求的执行顺序。具体 地,在仲裁器单元141同时接收到多个来自处理器单元12的请求时,仲裁器单 元141可判定这些请求的优先级,并先响应优先级较高的请求,即提前向处理 器单元12返回优先级较高的请求对应的数据指令,从而可在不影响主程序执行 的同时,实现程序的并行处理。当处理器系统中有多个处理器单元时,例如: 第一处理器单元121、第二处理器单元122等,内部总线14的仲裁器单元141还 用于确定来自不同处理器单元的请求的优先级,并先响应优先级较高的请求,即提前向处理器单元12返回优先级较高的请求对应的数据指令,从而可在不影 响主程序执行的同时,实现程序的并行处理。在某些实施方式中,该仲裁器单 元141还可以用于协调或确定同一数据指令集在不同处理器单元之间的处理顺 序,例如:根据数据的处理顺序,先由第一处理器单元对该数据进行处理,然 后将处理之后的数据缓存至随机存储单元15,之后第二处理器单元读取该处理 之后的数据指令集再进行二次处理,进而提高数据的处理效率。在该种方式中, 如存在更多个处理器单元,还可根据数据指令集的类型分别由各个不同功能的 处理器单元进行数据的处理。

本发明还提供一种处理器系统,包括处理器芯片、DRAM芯片、内存控制 芯片、闪存芯片和内部总线,上述处理器芯片通过内部总线连接DRAM芯片, DRAM芯片通过内存控制芯片映射闪存芯片;且内存控制芯片用于根据处理器 芯片的请求,从DRAM芯片读取并反馈对应的指令,并在DRAM芯片中的数据 指令集符合预设条件时,从闪存芯片获取所述数据指令集的后续指令集并写入 到所述DRAM芯片,处理器芯片、DRAM芯片、内存控制芯片、闪存芯片及内 部总线采用系统级封装工艺封装于一体,并提供一个统一的对外接口,从而可 安装到电路板等器件上。

本实施例中的处理器系统与上述图1-4对应实施例中的处理器系统属于同 一构思,其具体实现过程详细见对应的实施例,且图1-4实施例中的技术特征 在本实施例中均对应适用,这里不再赘述。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示 例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来 实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用 和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现 所描述的功能,但是这种实现不应认为超出本申请的范围。

上面结合附图对本发明实施例作了详细说明,但是本发明不限于上述实施 例,在所属技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发 明宗旨的前提下作出各种变化。此外,在不冲突的情况下,本发明的实施例及 实施例中的特征可以相互组合。

相关技术
  • 用于多处理器系统中的处理器代用品以及使用该处理器代用品的多处理器系统
  • 多处理器系统、多处理器系统用管理装置、以及记录有多处理器系统用管理程序的计算机可读的记录介质
技术分类

06120113238749