地址转换器和地址转换方法技术

技术编号:2857499 阅读:173 留言:0更新日期:2012-04-11 18:40
一种能够减小地址转换中的系统负载和操作系统间切换的开销的地址转换器。基于处理器所运行的多种操作系统,多个地址转换缓冲器将虚拟地址和真实地址进行分类并存储。例如,地址转换缓冲器存储对应于操作系统的虚拟地址和真实地址。根据正在运行的操作系统,地址转换控制器访问对应的地址转换缓冲器,以将虚拟地址转换成真实地址。

【技术实现步骤摘要】

本专利技术涉及,更具体地说,涉及用于将虚拟地址转换成真实地址的。
技术介绍
由于近来资源量的增加,各种系统对大的真实地址空间的需求增加了,需要更灵活和更便宜的地址转换器。对于地址转换器来说,虚拟存储器方案将程序指定的虚拟地址转换为向真实存储器显示的真实地址,该方案极大地减小了对存储空间的限制。一些采用所述虚拟存储器方案的传统的地址转换器具有根据管理员模式或用户模式而切换的地址转换缓冲器。用于管理员模式的地址转换缓冲器不需要保留进程号,因此节省了存储器资源(例如参照日本未审查专利公布号6-52058(第 - 段,图1))。现在更多的提供实时处理的系统以混合方法运行多种操作系统(OS)。
技术实现思路
本专利技术提供用于将虚拟地址转换为真实地址的地址转换器。该地址转换器包括用于基于处理器运行的多种操作系统来对所述虚拟地址和所述真实地址进行分类和存储的多个地址转换缓冲器,以及用于根据正在运行的操作系统,访问一个地址转换缓冲器来将所述虚拟地址转换为所述真实地址的地址转换控制器。而且,本专利技术提供一种用于将虚拟地址转换为真实地址的地址转换方法,其根据正在运行的操作系统,通过访问用于基于处理器运行的多种操作系统将所述虚拟地址和所述真实地址进行分类和存储的地址转换缓冲器中的一个,将所述虚拟地址转换为所述真实地址。通过下面的描述,结合通过举例的方法而图示本专利技术的优选实施例的附图,本专利技术的上述和其它特性和优点将会很明显。附图说明图1是本专利技术的地址转换器的原理图;图2根据第一实施例,示出了微处理器的硬件结构的例子;图3示出了核心的硬件结构的例子;图4示出了缓存单元的硬件结构的例子;图5示出了ITRON和Linux的存储器映射;图6示出了向OS分配地址映射寄存器(AMR)和转换参考缓冲器(Translation Look-aside Buffer,TLB);图7是根据第一实施例的存储器管理单元(MMU)的功能性方框图;图8是根据第二实施例的MMU的功能性方框图;图9解释了真实地址输出中的操作;图10是根据第三实施例的MMU的功能性方框图;图11示出了AMR的存储器映射;图12是根据第四实施例的MMU的功能性方框图;图13根据第五实施例,示出了向MMU发射的命令。具体实施例方式如在
技术介绍
的描述中所陈述的那样,因为例如由于地址缓冲器的内容可能改变而导致OS不使用相同的地址映射,所以,以混合方式运行多种OS的系统会由于算法和控制电路而出现高负载的问题。另外,由于高的系统负载,这种系统会因为在OS之间的切换中发生的长延迟而出现开销问题。出于对前面所述内容的考虑而提出本专利技术,并将提供能够减小系统负载和在OS之间切换的开销的。现在参照图1详细描述本专利技术的原理。参照该图,本专利技术的地址转换器具有地址转换缓冲器1a和1b,以及地址转换控制器2。基于处理器运行的多种操作系统,地址转换缓冲器1a和1b将虚拟地址和真实地址分类并保存。例如,地址转换缓冲器1a存储对应于操作系统OS1的虚拟地址和真实地址,而地址转换缓冲器1b存储对应于操作系统OS2的虚拟地址和真实地址。地址转换控制器2访问地址转换缓冲器1a、1b,以根据正在运行的操作系统OS1、OS2将虚拟地址转换为真实地址。例如,当处理器运行操作系统OS1时,地址转换控制器2访问地址转换缓冲器1a以进行“从虚拟到真实”的地址转换。由于当操作系统切换时不需要改变地址转换缓冲器1a和1b的内容,因此可以减小系统负载。另外,可以减小在操作系统之间切换的开销。现在将详细描述第一实施例。图2根据第一实施例,示出了微处理器的硬件结构的例子。参照该图,微处理器11是单片半导体设备,其具有核心12、同步DRAM(SDRAM)控制器13、局域总线接口14、直接存储器访问控制器(DMAC)15、总线桥16、调试支持单元(DSU)17、时钟复位电源控制(CRPC)18、定时器19、通用异步收发器(UART)20、因特网控制器(IRC)21和通用输入/输出(GPIO)22。核心12可以是算术逻辑单元(ALU)。SDRAM 23、ASIC引擎24和闪存25被连接到微处理器11。核心12包括中央处理单元(CPU)和缓存单元。核心12的CPU根据例如存储在SDRAM 23中的数据(包括程序)来控制每个单元。在控制操作中,CPU使用缓存单元来载入和存储数据。现在参照图3来详细描述核心12。参照该图,核心12包括缓存单元31、整型单元32和浮点单元33。整型单元32和浮点单元33是CPU的一部分,通过与缓存单元31交换数据来执行整型运算和浮点运算。缓存单元31具有指令缓存、地址转换单元(存储器管理单元)和数据缓存。存储器管理单元使用虚拟地址方法来控制数据的地址转换,所述数据在指令缓存或数据缓存与整型单元32或浮点单元33之间交换。注意指令缓存是用于存储指令代码的缓存,数据缓存是用于存储数据的缓存。参照图4详细描述缓存单元31。参照该图,缓存单元31具有存储器管理单元(MMU)41、指令缓存46和数据缓存47。专用寄存器(SR)48被连接到MMU 41。SR 48可以被安装在缓存单元31中,或外部附加到缓存单元31。MMU 41具有MMU控制器42、指令地址映射寄存器(IAMR)43、数据地址映射寄存器(DAMR)44和转换参考缓冲器(TLB)45。SR 48具有硬件状态寄存器(HSR)48a、指令地址映射有效寄存器(IAMVR)48b和数据地址映射有效寄存器(DAMVR)48c。IAMR 43、DAMR 44和TLB 45存储由程序指定的虚拟地址和向实际存储器显示的真实地址,两种地址相互关联。IAMR 43和DAMR 44静态存储虚拟地址和真实地址。即,一旦一个虚拟地址和一个真实地址被程序存储在IAMR 43或DAMR 44中,那么它们的对应关系就固定了。TLB 45动态存储虚拟地址和真实地址。即,当既不在缓存中也不在TLB中的新数据被另外寄存在指令缓存46或数据缓存47中时,最近最少使用的数据的虚拟地址和真实地址就从TLB 45中被取出。然后新数据的虚拟地址和真实地址被存储在TLB 45中。MMU控制器42通过访问HSR 48来控制上述存储部件。注意,IAMR 43存储对应于指令编码的虚拟地址和真实地址,DAMR44存储对应于数据的虚拟地址和真实地址。由于TLB 45动态地工作,所以它能够处理大型数据。微处理器11能够以混合方式运行多种OS以执行实时处理。例如,一般情况下Linux运行,当需要实时处理(例如产生中断)时,ITRON运行。在下面的描述中,微处理器11运行的Linux和ITRON作为OS。ITRON使用的存储区域比Linux的小得多。内核使用了Linux的存储区域的一小部分,用户应用使用了其中的一大部分。因此,MMU 41将静态的IAMR 43和DAMR 44分配给ITRON和Linux内核,将动态的TLB45分配给Linux用户应用。图5示出了对应于ITRON和Linux的存储器映射。该图示出了对应于ITRON和Linux的虚拟空间。对应于Linux的虚拟空间被分割为内核区域51和用户应用区域52。内核区域51具有Kmap区域和驱动器区域。对应于ITRON的存储空间比对应于Linux的小得多。图6示出了本文档来自技高网
...

【技术保护点】
一种用于将虚拟地址转换为真实地址的地址转换器,包括:多个地址转换缓冲器,用于基于处理器运行的多种操作系统来对所述虚拟地址和所述真实地址进行分类和存储;以及地址转换控制器,用于根据所述多种操作系统中的正在运行的操作系统,通过访问所述多个地址转换缓冲器来将所述虚拟地址转换为所述真实地址。

【技术特征摘要】
JP 2004-6-2 164586/20041.一种用于将虚拟地址转换为真实地址的地址转换器,包括多个地址转换缓冲器,用于基于处理器运行的多种操作系统来对所述虚拟地址和所述真实地址进行分类和存储;以及地址转换控制器,用于根据所述多种操作系统中的正在运行的操作系统,通过访问所述多个地址转换缓冲器来将所述虚拟地址转换为所述真实地址。2.如权利要求1所述的地址转换器,其中,对应于所述多种操作系统提供所述多个地址转换缓冲器,为对应的所述多种操作系统存储所述虚拟地址和所述真实地址。3.如权利要求1所述的地址转换器,其中,所述多个所述地址转换缓冲器被一个地址转换缓冲器代替,所述一个地址转换缓冲器用于与多个标识相关联地存储所述虚拟地址和所述真实地址,所述标识的每一个都表明虚拟地址和真实地址属于所述多种操作系统中的哪一种。4.如权利要求3所述的地址转换器,还包括用于为所述多种操作系统之一存储所述虚拟地址和所述真实地址的单个地址转换缓冲器。5.如权利要求4所述的地址转换器,其中,组相联缓冲器被用作所述地址转换缓冲器和所述单个地址转换缓冲器中的一个,全相联缓冲器被用作所述地址转换缓冲器和所述单个地址转换缓冲器中的另外一个。6.如权利要求5所述的地址转换器,其中,当最近最少使用的数据从所述组相联缓冲器中被取出时,所述最近最少使用的数据被保存在所述全相联缓冲器中。7.如权利要求3所述的地址转换器,其中所述地址转换缓冲器具有对应于动态条目和对应于静态条目的区域。8.如权利要求1所述的地址转换器,其中,所述地址转换控制器响应于程序命令执行地址转换,以将虚拟地址转换为真实地址,而不考虑所述处理器正在运行的所述操作系统。9.如权利要求8所述的地址转换器,其中,所述地址转换控制器响应于所述程序命令,使用页内偏移位向所述处理器返回关于地址转换的状态信息。10.一种用于将虚拟地址转换为真实地址的地址转换方法,包括根据处理器运行的多种操作系统中正在运行的操作系统,通过访问用于基于所述多种操作系统而将所述虚拟地址和所述真实地址进行分类和存储的地址转换缓冲器,将所述虚拟地址转换为所述真实地...

【专利技术属性】
技术研发人员:高桥清刚池敦
申请(专利权)人:富士通微电子株式会社
类型:发明
国别省市:JP[日本]

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

1