存储 频道

基于虚拟存储的嵌入式存储系统的设计方法(3)

        公共代码段和操作系统的数据区特殊的对应关系(见图4),很容易通过P2端口线来指定。由单片机外部程序区访问时序(图 5)可知,PSEN的上升沿后数据总线A0~A7上开始出现指令或指令操作数,此时的地址线A15指示当前访问的是公共代码段(对应数据区高64k)还是其他程序段(对应数据区低64k),因此在PSEN上升沿锁存地址线A15,用它可以选择不同的数据存储器空间。

  


  


   3、存储系统的性能分析

   本文基于虚拟存储系统思想实现了嵌入式系统中大容量存储器的扩展。不难看出系统的扩展余地受端口线的限制。由于在同一块芯片中构造图2所示的结构,需要多使用一根端口线,因此对于8051系列使用整个P1口可以将系统的程序虚拟空间扩展至8M字节。数据存储区扩展的最大容量还与程序在编译时所被分成块的数目有关,最大可达16M字节,这在单片机嵌入式系统中已经是足够大了。

   程序在调用不同页面的函数时需要额外的
软件切换周期,频繁的页面切换会降低系统的性能,因此编译时应仔细选择函数,尽可能将相关的函数分配在同一页中。

   数据存储区切换是由
硬件实现的,页面切换并不降低系统性能。由于操作系统与用户程序数据区相互独立,对用户来说整个64k空间都是可用的,这就增加了操作系统的透明性。

   4、结论

   嵌入式系统由于它的专用性和特殊性,系统的软硬件设计都与传统的计算机系统设计方法有所不同。但进行嵌入式系统设计时仍然很有必要借鉴传统计算机系统体系结构成熟的设计方法,“量体裁衣”为我所用。作者在进行嵌入式平台设计时借鉴了传统计算机虚拟存储思想来扩展存储系统,并在实际项目中得以应用,证明这种方法是非常有效的。
0
相关文章