本发明专利技术针对当指令码流比较密集时,存储器中指令地址转换器(ITLB)向联合地址转换器(JTLB)发出更新请求,从而降低访问存储器速度的问题,公开了一种配置存储器空间的方法。该方法通过配置联合地址转换器(JTLB)和指令地址转换器(ITLB)所占的空间比例,在不增加硬件的情况下,可灵活增加ITLB的存储空间,减小指令请求响应的时间,从而加快了存储器访问的速度,提高了CPU的性能。
【技术实现步骤摘要】
本专利技术涉及一种配置CPU中的存储器空间的方法,更具体地说是涉及一种配置RISC CPU中的存储器的空间的方法。
技术介绍
存储器是计算机系统的核心组成部分,CPU运行需要的指令与数据都是存放在存储器中,同时程序运行过程中产生的新的数据也需要写回存储器。如何能够及时准确地将CPU需要的数据与指令从存储器中读出或者写入就是存储器管理需要做的工作。程序设计人员总是希望存储器的速度尽可能地快,以便与处理器的速度相匹配。一方面,经过几十年的发展,存储器的工艺实现技术有了突飞猛进的发展,高速、大容量、低价格的存储器以惊人的速度被生产出来。尽管如此,存储技术的发展证明单一工艺存储器件很难同时满足容量、价格、速度三方面的性能要求。事实上,容量与速度、速度与价格、容量与价格的性能要求是相互有矛盾的,很难同时满足,而且存储器速度的改进始终跟不上CPU速度的提高。另一方面,在CPU指令中存储器访问的指令占据比较大的比率。存储器本身的速度慢,再加上访问存储器的频繁,如果不采取一种好的管理方法势必影响CPU的整体性能。可以说访问存储器的时间长短已经成为影响处理器性能的主要因素,是影响处理器信息吞吐量的瓶颈。存储器空间的管理最基本的两种方法是分页管理和虚实地址映射。分页管理就是把实际的物理地址分成几部分,每一部分称为一个页,将存储器分页后,可以先找到相应的页,再从该页中找到实际的地址,与从整个大的存储区域中寻找地址相比能节省较多的时间。使用虚地址到物理地址的映射也是大多数存储器管理机制采用的方法。即在程序中不用考虑指令数据在存储器中的实际物理地址,可以使用自己的虚拟地址,在程序运行时通过存储器管理将此虚拟地址通过一定的算法映射成物理地址。这样便于程序的移植,节省程序员的工作量。在实际实现中,具体分页的方法有所不同,但主要取决于存储器的容量和处理器本身的寻址能力。至于虚拟地址到物理地址的映射机制也主要使用一个页面寄存器,里面存放了实际物理地址的高几位地址,然后将虚拟地址作为物理地址的低位,这样便组成一个完整的物理地址。这样做无论在算法和电路上都比较简单,也能获得一定的效果。采用以上两种方法存储器的访问速度虽然会有所提高,但是效果不是很明显。因为存储器进行分页管理后,每次查找也比较麻烦;其次,每条指令还是需要实际去访问存储器。提高MMU速度的关键是尽量降低存储器的访问时间和次数。在地址转换过程中,MMU把CPU发出的64b有效地址转换成40b虚拟地址,然后再转换成32b物理地址。有效地址空间分为段(256M)或块(128k~256M),段内再进一步细分为4kB的页。对于每个块或页,由操作系统产生地址描述符(GVD项);在块或页被访问时,MMU利用这些描述符产生物理地址,保护信息及其他控制信息作为输出。TLB是地址转换器。由32个数据单元组成,每个数据单元分别映射一对奇偶页,页的大小有4K,16K,64K,256K,1M,4M,或16M不等,例如当页设置为4K,且系统为64位时,取送64位虚拟地址的12至39位,依次访问TLB的每个数据单元,当检测一致时,读出20位作为基址,再加上12位偏移地址,翻译出实际地址。TLB的虚拟地址既包括指令又包括数据,可分为联合地址转换器(JTLB)和指令地址转换器(ITLB)两种,指令和数据的响应速度,也能直接影响存储器的访问速度。
技术实现思路
本专利技术是针对当指令码流比较密集时,存储器中指令地址转换器(ITLB)向联合地址转换器(JTLB)发出更新请求,从而降低访问存储器速度的问题,公开了一种配置存储器空间的方法。一种实现可配置RISC CPU中的存储器空间的方法,该方法包括配置存储器中联合地址转换器(JTLB)和指令地址转换器(ITLB)的空间结构,在联合地址转换器中提供N个存储空间单元,由软件分配给指令地址转换器;根据指令码流的密集程度,采取不同的存储器空间结构存放指令及数据,其中指令地址转换器通过软件配置为2+2n个单元的存储器空间,联合地址转换器通过软件配置为32-n个单元的存储器空间。上述方法中大写字母N为0~3的整数,小写字母n为0~N的整数,这种可配置结构中联合地址转换器(JTLB)和指令地址转换器(ITLB)的存储空间配置最多有n+1种分配结构。使用本专利技术所述方法该处理器不需要另外增加额外的存储器空间,可根据指令码流的密集程度,采取不同的存储器空间结构,减少指令地址转换器出现TLB Miss的异常,以及向联合地址转换器请求更新的次数,从而提高了存储器的访问速度,实现了联合地址转换器和指令地址转换器的空间动态分配。该方法包括如下的具体步骤步骤1传统的联合地址转换器有32个单元的存储空间,指令地址转换器有2个单元的存储空间,在这种结构基础上,将联合地址转换器的N个存储单元在硬件上设计成可选择的,即可以作为指令地址转换器使用,也可以作为联合地址转换器使用;步骤2在步骤1将联合地址转换器的N个存储单元在硬件上设计成可选择的后,根据软件所编写的指令的密集程度,由软件分配联合地址转换器的n个存储单元给指令地址转换器,则指令地址转换器增加2n个存储单元,存放的指令增加,处理器发出的指令的虚拟地址会送到此2+2n个单元中寻找相同的指令;步骤3当指令地址转换器中检测到相同的指令时,进行虚拟地址到物理地址的转换;若没有检测到时,则出现TLB Miss的异常,指令地址转换器会自动请求到联合地址转换器检测,由于此时指令地址转换器的空间增加,则出现TLBmiss的几率减少,指令地址转换器向联合地址转换器请求的次数也会相应减少,提高了ITLB的命中率。上述步骤中所述的由软件分配联合地址转换器的存储单元,其特征在于软件通过调整数据选择器MUX1,MUX2及MUX3的控制字,来选择合适的联合地址转换器的存储单元的配置方式。上述步骤中所述的当指令地址转换器中检测到相同的指令时,进行虚拟地址到物理地址的转换,虚拟地址由三部分组成,高位是地址空间标志符,以及虚拟的页码,低位是偏移地址。虚拟地址到物理地址的转换,其方法是虚拟地址的高位和TLB相应单元中的地址空间标志符和虚拟页码作比较,如果是匹配的,则该单元中的页帧数作为实际物理地址的高位,而低位直接是虚拟地址的低位偏移地址,从而构成所要的物理地址。具体的映射方法还有很多种,这里不一一举例。本专利技术的意义在于采用分立的指令/数据存储器管理方式,根据指令码流的复杂程度,选择不同的存储器空间配置,使指令地址转换器里检测到指令的命中率更高,减少存储器访问时间,从而提高了微处理器的性能。显然,如果不考虑硬件的因素,缓存越大越好,但硬件是不能不考虑的,本专利技术公开的方法的优点是在不增加硬件的基础上提高了存储器的访问速度,从而提高了微处理器的性能。附图说明现在将结合附图更详细的描述本专利技术所述的方法图1是TLB地址转换的流程图;图2是虚拟地址到物理地址的一种转换方法示意图;图3是传统的存储器管理中JTLB和ITLB的配置方法示意图;图4-1及图4-2是本专利技术所涉及的存储器管理中JTLB和ITLB的几种配置方式示意图;图5是以N=3为例说明可配置的JTLB和ITLB的硬件结构。具体实施例方式本专利技术所描述的方法是根据指令码流的密集程度来选择存储器空间的配置方式。如果当前的指令码流比本文档来自技高网...
【技术保护点】
一种实现可配置RISCCPU中的存储器空间的方法,该方法包括如下的步骤:配置存储器中联合地址转换器(JTLB)和指令地址转换器(ITLB)的空间结构,在联合地址转换器中提供N个存储空间单元,由软件分配给指令地址转换器;根 据指令码流的密集程度,采取不同的存储器空间结构存放指令及数据,其中指令地址转换器通过软件配置为2+2n个单元的存储器空间,联合地址转换器通过软件配置为32-n个单元的存储器空间。
【技术特征摘要】
1.一种实现可配置RISC CPU中的存储器空间的方法,该方法包括如下的步骤配置存储器中联合地址转换器(JTLB)和指令地址转换器(ITLB)的空间结构,在联合地址转换器中提供N个存储空间单元,由软件分配给指令地址转换器;根据指令码流的密集程度,采取不同的存储器空间结构存放指令及数据,其中指令地址转换器通过软件配置为2+2n个单元的存储器空间,联合地址转换器通过软件配置为32-n个单元的存储器空间。2.根据权利要求1中所述的一种实现可配置RISC CPU中的存储器空间的方法,其特征在于该方法包括如下的具体步骤步骤1传统的联合地址转换器有32个单元的存储空间,指令地址转换器有2个单元的存储空间,在这种结构基础上,将联合地址转换器的N个存储单元在硬件上设计成可选择的,即可以作为指令地址转换器使用,也可以作为联合地址转换器使用;步骤2在步骤1将联合地址转换器的N个存储单元在硬件上设计成可选择的后,根据软件所编写的指令的密集程度,由软件分配联合地址转换器的n个存储单元给指令地址转换器,则指令地址转换器增加2n个存储单元,存放的指令增加,处理器发出的指令的虚拟地址会送到此2+2n个单元中寻找相同的指令;步骤3当指令地址转换器中检测到相同的指令时,进行虚拟地址到物理地址的转换;若没有检测到时,则出现T...
【专利技术属性】
技术研发人员:常军锋,刘俊秀,王雅君,阿拉德尔图,王一利,徐卫国,周显文,石岭,刘云,
申请(专利权)人:深圳艾科创新微电子有限公司,
类型:发明
国别省市:94[中国|深圳]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。