首页> 中国专利> 减少总存储器使用量的微电脑系统与方法

减少总存储器使用量的微电脑系统与方法

摘要

一种减少总存储器使用量的微电脑系统与方法,该微电脑系统包含有:一快闪存储器、一非易失性存储器以及一处理器。其中该快闪存储器存储有一快闪存储器驱动程序,用来控制该快闪存储器的操作以将数据写入该快闪存储器。本方法是将快闪存储器驱动程序以及存储于该快闪存储器中的相关程序事先载入至该非易失性存储器中,以避免当处理器执行该快闪存储器驱动程序以将数据写入该快闪存储器时,该处理器会从该快闪存储器中读取任何相关的程序数据。

著录项

  • 公开/公告号CN1388445A

    专利类型发明专利

  • 公开/公告日2003-01-01

    原文格式PDF

  • 申请/专利权人 明碁电通股份有限公司;

    申请/专利号CN01119549.5

  • 发明设计人 陈培超;

    申请日2001-05-29

  • 分类号G06F9/30;G06F12/06;

  • 代理机构11105 北京市柳沈律师事务所;

  • 代理人马莹

  • 地址 台湾省桃园县

  • 入库时间 2023-12-17 14:36:12

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2010-08-04

    未缴年费专利权终止 IPC(主分类):G06F9/30 授权公告日:20060104 申请日:20010529

    专利权的终止

  • 2006-01-04

    授权

    授权

  • 2004-03-03

    实质审查的生效

    实质审查的生效

  • 2003-01-01

    公开

    公开

  • 2001-09-05

    实质审查的生效

    实质审查的生效

说明书

本发明是提供一种减少总存储器使用量的微电脑系统及其方法,尤指一种可减少非易失性存储器使用量的微电脑系统及其方法。

随着集成电路科技的日益进步,已有越来越多的微电脑系统被设计出来,以辅助日常一些装置的操作,如:移动电话、空调、扫描器、路由器等。而与个人电脑系统相较之下,微电脑系统所包含的晶体管数目较少,故其耗电量小,且因其较为容易设计,所以其应用上也较个人电脑更多样化。而为了让微电脑系统的运行能符合不同使用者的需求,通常微电脑系统会被设计成允许使用者可依其需求来作个别设定,而这类允许使用者设定的微电脑系统则尚须利用一存储装置来存储使用者的各项设定。在众多可用来存储数据的装置当中,快闪存储器(flash memory)因其非易失性(nonvolatile)记忆以及运行稳定等特性,而常被用来当作这类微电脑系统的存储装置。此外,微电脑系统内的快闪存储器除了如上所述可用来存储使用者的各项设定之外,通常还可用来存储各种控制微电脑系统的作业程序,例如:开机程序、快闪存储器驱动程序等,其中快闪存储器驱动程序是用来控制数据写入快闪存储器时的各项操作。需特别说明的,快闪存储器在使用上有一项限制,那就是不能在将数据写入至快闪存储器时,同时对该快闪存储器进行数据读取的动作,因为如果同一时间对快闪存储器进行数据写入及读取动作的话,很可能造成快闪存储器的误动作,而使数据毁损。然而,因微电脑系统在执行快闪存储器驱动程序以将数据写入快闪存储器时,须于进行写入数据的动作时读取快闪存储器驱动程序的程序码来执行,故为了确保所写入的数据的正确性,熟知的微电脑系统的作法是将快闪存储器中的所有程序复制至另一存储装置存储,之后再从该存储装置读取并执行其中的快闪存储器驱动程序,以避免上述的问题。

请参考图1,图1为熟知微电脑系统(microcomputer)10的功能方块图。微电脑系统10是明棋电通公司(Acer Communications & Multimedia Inc.)于该公司型号为FCD E320/E321的网络数据设备中所采用,其包含有一处理器(centra1 processing unit,CPU)12用来控制微电脑系统10的操作,一第一芯片(chip)16其内形成有一快闪存储器24,一地址总线(addressbus)18用来传递存储器地址信号,以及一数据总线(data bus)22用来传递存储于快闪存储器26及存储器24的数据。其中,快闪存储器26内存储有一系统程序28用来控制微电脑系统10的操作,一数据文件36用来存储微电脑系统10的相关设定数据,以及一快闪存储器驱动程序32用来控制快闪存储器26的操作以使数据得以写到数据文件36内。另外,存储器24是一非易失性存储器(volatile memory),例如动态随机存取存储器(DRAM),处理器12可将数据暂存于存储器24内。

当微电脑系统10启动后,处理器12会将快闪存储器26中所存储的系统程序28以及快闪存储器驱动程序32载入至存储器24中存储。请参考图2,图2为图1存储器24及快闪存储器26的存储器地址及区域分配图。如图2所示,快闪存储器2 6是对应至存储器地址区域0×80000~0×FFFFF,而存储器24则对应至存储器地址区域0×00000~0×7FFFF。其中,快闪存储器驱动程序32存储于快闪存储器26的存储器地址区域0×80400~0×8FFFF中,系统程序28存储于快闪存储器26的存储器地址区域0×90000~0×F7FFF中,而数据文件36则存储于快闪存储器26的存储器地址区域0×7F800~0×7FAFF之中。当微电脑系统10开始运行时,处理器12会将快闪存储器26中所有的程序(如:系统程序28及快闪存储器驱动程序32等)载入至存储器24里。如图2所示,处理器12会将系统程序28载入至存储器24的存储器地址区域0×10000~0×78000中,并将快闪存储器驱动程序32载入至存储器24的存储器地址区域0×00400~0×0FFFF中存储,而当处理器12欲执行相关程序码时,皆会由存储器24相对的存储器区域来读取。故当处理器12执行快闪存储器驱动程序32以将数据写入快闪存储器26的数据文件36时,处理器12是由存储器地址区域0×00400~0×0FFFF中读取快闪存储器驱动程序32的程序码来执行,因此,微电脑系统10即不需于数据写入至数据文件36时从快闪存储器26来读取快闪存储器驱动程序32的程序码,进而可确保将数据写入至快闪存储器26时的正确性。然而,因处理器12是将快闪存储器26中所有的程序码皆载入至存储器24中存储,故当快闪存储器26中的程序码过多时,微电脑系统10将因而相对地须具有较大的总存储器容量(total memory capacity)。

因此本发明的主要目的即在于提供一种可减少微电脑系统总存储器容量的方法,以解决上述的问题。

该微电脑系统包含有:一快闪存储器、一非易失性存储器以及一处理器。该方法是将存储于该快闪存储器中、但会于快闪存储器数据写入时影响其数据写入正确性的相关程序载入至该非易失性存储器中,并使该处理器于读取这些相关程序的程序码时由该非易失性存储器中读取,以避免当处理器执行该快闪存储器驱动程序以将数据写入该快闪存储器时,该处理器会从该快闪存储器中读取任何相关的程序数据。

图1为熟知微电脑系统的功能方块图。

图2为图1存储器及快闪存储器的存储器地址及区域分配图。

图3为本发明微电脑系统的功能方块图。

图4为图3存储器及快闪存储器的存储器地址及区域分配图。

请参考图3,图3为本发明微电脑系统100的功能方块图。微电脑系统100包含有一处理器112用来控制微电脑系统100的操作,一第一芯片116其内形成有一快闪存储器126,一第二芯片114其内形成有一存储器124,一地址总线118用来传递存储器地址信号,以及一数据总线122用来传递存储于快闪存储器126及存储器124的数据。其中,快闪存储器126内存储有一系统程序128用来控制微电脑系统100操作,一数据文件136用来存储微电脑系统100相关的设定数据,以及一快闪存储器驱动程序132用来控制快闪存储器126操作以将数据写入数据文件136内。系统程序128包含有一系统函数库(system library)138,其包含有各种公用程序,系统程序128及快闪存储器驱动程序132需要以呼叫的方式来执行系统函数库138的部分公用程序。另外,存储器124是一非易失性存储器,例如动态随机存取存储器(DRAM),处理器112可将数据暂存于存储器124内。

微电脑系统100可用来控制一网络数据设备(未显示)的操作,当该网络数据设备开机时,处理器112会将快闪存储器126中所存储的快闪存储器驱动程序132载入至存储器124中存储。请参考图4。图4为图3存储器124及快闪存储器126的存储器地址及区域分配图。如图4所示,快闪存储器126是对应至存储器地址区域0×80000~0×FFFFF,而存储器124则对应至存储器地址区域0×00000~0×7FFFF。其中,快闪存储器驱动程序132存储于快闪存储器126的存储器地址区域0×80400~0×8FFFF中,系统程序128存储于快闪存储器126的存储器地址区域0×90000~0×F7FFF中,而数据文件136则存储于快闪存储器126的存储器地址区域0×F8000~0×FAFFF之中。当微电脑系统100开始运行时,处理器112会将快闪存储器驱动程序132载入至存储器124的存储器地址区域0×00400~0×0FFFF中存储,因此当处理器112执行快闪存储器驱动程序132以将数据写入数据文件136时,处理器112即可从存储器地址区域0×00400~0×0FFFF中读取快闪存储器驱动程序132的程序码来执行,而如此一来,微电脑系统100即不需于数据文件136数据写入时从快闪存储器126来读取快闪存储器驱动程序132的程序码,进而可确保将数据写入至数据文件136时的正确性。另外,因处理器112于执行快闪存储器驱动程序132时,快闪存储器驱动程序132会呼叫一些系统程序128的函数,而为避免因呼叫快闪存储器126内的系统程序128的函数而造成于进行快闪存储器126数据写入动作时发生误写数据的情况,故处理器112会将包含有系统程序128的公用程序的系统函数库138载入至存储器124的存储器地址区域0×10000~0×17FFF中存储。当快闪存储器驱动程序132呼叫系统程序132的函数时,即可由存储于存储器地址区域0×10000~0×17FFF中的系统函数库138取得相关的函数,而如此一来即可以避免发生数据误写的情况。与熟知微电脑系统10不同的是,微电脑系统100的处理器112于执行系统程序128以控制微电脑系统100的操作时,是由快闪存储器126的存储器地址区域0×A0000~0×F7FFF中读取相关程序数据。因此,比较于熟知的微电脑系统10将所有的系统程序28的程序码载入至存储器24存储,本发明的微电脑系统100只会将系统程序128中部分会于数据写进快闪存储器126时被处理器112所读取的程序码(如:系统函数库138)载入至存储器124存储,因此微电脑系统100即可在与微电脑系统10具有相同功能的前提下,使用数据存储空间较存储器24小的存储器124,如此一来即可达到减少微电脑系统100总存储器容量的目的。

由上述可知,根据本发明用以减少微电脑系统100的总存储器容量的方法,一般而言包含以下步骤;

(A)当微电脑系统100启动后,将快闪存储器驱动程序132以及系统函

   数库138载入至存储器124中存储;

(B)当处理器110欲将数据写入快闪存储器126中的数据文件136时,

   使处理器122从存储器124中读取快闪存储器驱动程序132,以执

   行快闪存储器驱动程序132;

(C)当快闪存储器驱动程序132呼叫系统函数库138时,使快闪存储器

   驱动程序132呼叫存储于存储器124中的系统函数库138;以及

(D)当处理器110执行系统程序128时,使处理器110从快闪存储器

   126中读取系统程序128。

请再参考图3及图4,当处理器112执行系统程序128前,处理器112会藉由地址总线118传送相关的地址信号至快闪存储器126,以从快闪存储器地址区域0×A0000~0×F7FFF读取系统程序128,而当快闪存储器126接收到相关的地址信号后即会经由数据总线122传送系统程序128的程序码至处理器112。同理,当处理器112执行快闪存储器驱动程序132前,处理器112藉由地址总线118传送相关的地址信号至存储器124,以从存储器地址区域0×00400~0×0FFFF读取快闪存储器驱动程序132,当存储器124接收到相关的地址信号后即会经由数据总线122传送快闪存储器驱动程序132的码式码至该处理器。

另外,如图3所示,系统程序128另包含一业界称为“看门狗(watchdog)”的监控程序134。当处理器112执行系统程序128时,处理器112会周期性地执行监控程序134,以确定其所执行的系统程序128是否正确。而因监控程序134是周期性地经由处理器112所执行,故处理器112相对的会周期性地读取监控程序134,而为了避免处理器112于执行快闪存储器驱动程序132以将数据写入快闪存储器126时,会从快闪存储器126读取监控程序134,因此当微电脑系统100开启后,处理器112须将监控程序134从快闪存储器126复制到存储器124的存储器地址区域0×18000~0×1FFFF,之后再由存储器地址区域0×18000~0×1FFFF中读取监控程序134来执行。

在此需特别说明的,上述的各项程序皆是经由一编译器(compiler)编译后产生,在编译器产生各项程序之前,程序设计人员须事先对各项程序作连结(link)及定位(locate)的处理,以使微电脑系统100开机时,处理器112会将快闪存储器驱动程序132、系统函数库138及监控程序134载入至存储器124相对的存储器地址区域,并且使处理器112于执行相关程序时,可经由事先规划好的存储器地址区域读取到相关的程序码。另外,编译器除了可分别产生快闪存储器驱动程序132及系统函数库138外,编译器亦可将快闪存储器驱动程序132与其所有将会呼叫到的函数编译在一起,而如此一来,快闪存储器驱动程序132即可不须从系统函数库138呼叫相关的函数,而处理器112亦不须事先将系统函数库138载入至存储器124存储。

另外,为了让使用者操作方便,微电脑系统100可设计成可让使用者存储不同的设定值,以符合其在不同环境操作时的需要,而为达到这样的目的,则需将数据文件136分成多个区段来存储使用者的不同设定值。如图4所示,数据文件136可区分为多个数据区段142、144、146,其中每一数据区段可存储一组使用者的设定值,而每一组设定值则分别对应于不同的使用者操作模式。使用者可事先将其最常用的几组设定值存储于数据区段142、144、146中,当需切换微电脑系统10的操作模式时,处理器112再从数据区段142、144、146中读取相关的设定值即可。此外需特别说明的,大部分的快闪存储器包含有多个存储器区段(sectors),而快闪存储器是以存储器区段为单位来进行数据写入的动作,当有数据要写进一记忆区段时,该记忆区段所存储的数据会先遭到完全的抹除(erase),之后改变后的数据才会写进该记忆区段中。然而微电脑系统100的每一组使用者的设定值其数据量通常不会太大,因此若微电脑系统100所使用的快闪存储器126其每一存储器区段的存储空间较所欲写入的数据量大很多的话,不但会造成微电脑系统100于存储数据时所需花费的时间较长,且会造成可存储存储器空间的浪费。因此,在设计微电脑系统100时通常会选用存储器区段存储空间较小的快闪存储器,如SST公司(Silicon Storage Technology,Inc)所生产的型号SST28SF040A/SST28VF040A的快闪存储器。

比较于熟知微电脑系统未经规划而将快闪存储器中所有程序码载入至存储器中,以避免误写数据至快闪存储器的方式,本发明仅将快闪存储器中会影响快闪存储器数据写入动作的相关程序载入存储器,因此利用本发明的方法,即可设计出存储器容量较小但功能与熟知微电脑系统相同的微电脑系统。

以上所述仅为本发明的较佳实施例,凡依本发明权利要求范围所做的均等变化与修饰,皆应属本发明专利的涵盖范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号