CN100426264C - 存取一存储器的方法与相关的微处理器系统 - Google Patents

存取一存储器的方法与相关的微处理器系统 Download PDF

Info

Publication number
CN100426264C
CN100426264C CNB2005101128982A CN200510112898A CN100426264C CN 100426264 C CN100426264 C CN 100426264C CN B2005101128982 A CNB2005101128982 A CN B2005101128982A CN 200510112898 A CN200510112898 A CN 200510112898A CN 100426264 C CN100426264 C CN 100426264C
Authority
CN
China
Prior art keywords
logical address
address data
data
storer
microprocessor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB2005101128982A
Other languages
English (en)
Other versions
CN1952913A (zh
Inventor
吴元丁
陈炳盛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MediaTek Inc
Original Assignee
MediaTek Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by MediaTek Inc filed Critical MediaTek Inc
Priority to CNB2005101128982A priority Critical patent/CN100426264C/zh
Publication of CN1952913A publication Critical patent/CN1952913A/zh
Application granted granted Critical
Publication of CN100426264C publication Critical patent/CN100426264C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明提供一种存取一存储器的方法及相关的微处理器系统。该方法用于在存取该存储器时保护一存储器区段不被误存取或误变更,该方法包含有以下步骤:利用一微处理器产生一第一逻辑地址数据;利用一地址转换装置依据一控制信号,选择性地输出所述第一逻辑地址数据或者一第二逻辑地址数据,以作为一实体地址数据;以及依据所述实体地址数据存取该存储器;其中所述第二逻辑地址数据为所述第一逻辑地址数据经过运算后所得的结果。本发明通过使用一地址转换装置更改微处理器地址译码方式的设定值,使欲保护的系统激活码区段,在系统于正常动作模式时,不属于微处理器的地址空间,故绝无被误执行、误存取、误抹除或误写入(更新)的可能。

Description

存取一存储器的方法与相关的微处理器系统
技术领域
本发明涉及一种存取一存储器的方法及相关装置,尤指一种用于在存取所述存储器时,保护一存储器区段不被误存取或误变更的方法及相关装置。
背景技术
微处理器与存储器等电子元件在现今信息化世界中占有极为重要的角色,并已被广泛的应用在各种不同领域的电子产品上。以DVD Player及个人计算机用的CD-ROM、CD-RW、DVD-ROM光驱等电子产品为例,其运作方式皆是以一微处理器执行一储存于非挥发性(Non-Volatile)存储器(如FLASH、ROM)上的程序代码(Program Code),并配合特殊设计的应用集成电路(ApplicationSpecific Integrated Circuit,ASIC)来处理储存于一挥发性(Volatile)存储器(如DRAM、SRAM)上的一般数据。
微处理器是以执行程序代码(Program Code)来维持系统的运作,而储存于该非挥发性存储器上的程序代码又称为韧体(Firmware)。许多应用产品的韧体基于功能增加、改良或除错之故,可能需要不定期更新,此更新的动作通称为韧体更新(Firmware Update)。
韧体更新时最大的风险是当进行韧体更新动作时,可能因断电或不当操作等原因而造成更新动作失败。而韧体更新动作失败有可能造成系统无法正常运作,甚至也无法通过再次进行韧体更新的动作以恢复系统正常功能。为防止上述情形发生,现有技术中更新韧体时多使用一种通称为「系统激活码防护」(Boot Code Protection)的方法来解决。系统激活码(Boot Code)为韧体程序代码的一部分,每次系统激活(Power on)或重开机(Reboot)后,韧体码当中最先被执行的一段程序代码便是系统激活码。现有技术将储存系统激活码部分的存储器区段设定为写保护状态,使系统激活码不会在韧体更新过程当中遭到变更。如此一来,即使韧体更新失败,系统仍可通过执行系统激活码的方式重新激活,而不至于发生无法再次进行韧体更新动作的情形。上述用以保护系统激活码区段的方法为现有技术所熟知,以下仅简单描述其运作方式。
请参考图1。图1为一现有微处理器系统200的示意图。如图1所示,微处理器系统200包括:一微处理器10;一非挥发性存储器30(如FLASH),通过一地址总线20耦接于微处理器10,非挥发性存储器30包含有一系统激活码区段32、一普通韧体码区段34以及多个接脚36、37、38,其中系统激活码区段32用于储存系统激活码,普通韧体码区段34用于储存其它韧体程序代码,接脚36、37、38用以开启或关闭系统激活码区段32的写保护功能。微处理器10用于执行非挥发性存储器30当中储存的数据。
当进行韧体更新动作时,微处理器10通过地址总线20传送一组地址数据至非挥发性存储器30,以告知非挥发性存储器30该组地址所对应的数据将被微处理器10进行存取的动作。此时若系统激活区段32没有写保护保护,微处理器可对非挥发性存储器30内任何地址的数据(包含系统激活码区段32与普通韧体码区段34)进行完整的存取动作。若当微处理器10对非挥发性存储器30当中的数据进行更新的动作时,发生了断电或不当操作使得韧体更新动作失败,为使系统恢复正常运作,使用者必须重新开机以再次进行韧体更新动作。然而,由于系统激活码区段32内的数据可能已被改变而变得不完整或不正确,因此可能发生系统无法激活的情形。若系统无法激活,则当然也就无法重新进行韧体更新的动作。
因此,一般进行韧体更新时,都有一段韧体程序代码在韧体更新过程当中受到保护而不会被改变,用以确保更新失败时,能通过执行该段韧体程序代码(即所谓系统激活码)重新激活系统,以再次进行韧体更新动作。该系统激活码储存于非挥发性存储器30的系统激活码区段32当中。通常在现有技术中有两种方式可开启系统激活码区段32的锁定(Lock)功能。第一种方式是设定非挥发性存储器30中几个特定接脚的电位准,而所述特定的接脚的位置与电位准设定方式,需视不同的非挥发性存储器规格而定。例如,如图1所示,非挥发性存储器30具有多个接脚,其中当接脚36及接脚37设为高电位准,而接脚38设为超高电位准(一般常用为12.5V)时,表示开启非挥发性存储器30中系统激活码区段32的锁定功能。而当接脚36及接脚37皆设为低电位准,而接脚38设为超高电位准时,则表示关闭系统激活码区段32的锁定功能。一但系统激活码区段32的数据被锁定,相当于系统激活码区段32内的数据具写保护保护,此时微处理器10虽可完整存取普通韧体码区段34当中的内容,但对系统激活码区段32内的数据仅能进行读取的动作,而无法进行写入与删除的动作。由于该段系统激活码在韧体更新的过程当中不会被变更,故微处理器10只需更新普通韧体码区段34当中的数据,便能完成韧体更新的动作。若当微处理器10于更新普通韧体码区段34中的数据时,发生了断电或不当操作使得韧体更新动作失败,由于系统激活码区段32内的数据并未被变更,故可重新激活系统,再次执行系统激活码区段32内所储存的系统激活码,使得系统得以重新运作,以再次进行韧体更新的动作。
另一种方式是利用程序指令以控制非挥发性存储器30开启或关闭系统激活码区段32的锁定功能。通常现有技术的方式是于几个连续的总线周期(BusProgram Cycle)中,依序传送特定的地址与数值的组合至非挥发性存储器30。若所述地址与数值的组合符合一预设的内容与顺序,则依其预设协议,开启或关闭系统激活码区段32的锁定功能。其中需要使用的连续总线周期的数目,以及每一个总线周期中所需传送的特定地址与数值的组合为何,则需视各存储器厂商对非挥发性存储器30的规格而定。举例来说,假设图1微处理器系统200中,非挥发性存储器30其大小为512Kbyte,其寻址范围从00000H到7FFFFH,其中系统激活码区段32大小为16Kbyte,其地址范围从00000H至03FFFH,普通韧体码区段34的地址范围从04000H至7FFFFH。若于四个连续的总线周期中,依序传送5555H/AAH、2AAAH/55H、5555H/BBH、以及3C000H/01H的地址/数值组合至非挥发性存储器30,则非挥发性存储器30会开启系统激活码区段32的锁定功能。若于四个连续的总线周期中,依序传送5555H/AAH、2AAAH/55H、5555H/BBH、以及3C000H/00H的地址/数值组合至非挥发性存储器30,则非挥发性存储器30会关闭系统激活码区段32的锁定功能。因此,通过在连续的总线周期中,依序传送特定的地址与数值的组合,即可控制非挥发性存储器30的开启或关闭系统激活码区段32锁定功能。
如前所述,现有方法的重点在于利用非挥发性存储器30的存储器区段锁定功能,以保护一特定的存储器区段(即系统激活码区段),使其内容只能被读取或执行但不可以被抹除或更新。在韧体更新动作完成后,不论更新动作成功或失败,在系统重新运作时一律先执行储存于该特定的存储器区段的中的系统激活码。如此一来,当韧体更新动作失败时,还可通过执行储存于该特定存储器区段的程序代码,以检查并维持系统的基本运作,而得以再行补救措施。然而现有技术中,此种保护特定的存储器区段的方法存在以下缺点:
(1)必需使用一可支持此功能的特殊非挥发性存储器,方可使一特定存储器区段进入写保护状态而受到保护,限制了硬件设计时的自由度。
(2)所述特定存储器区段的保护功能的开启及关闭方法,随不同存储器厂商的设计规格而异,增加了系统设计上的复杂性与成本。
(3)保护的存储器区段大小,为一固定大小,且随不同存储器厂商的设计规格而异,不能依实际使用情况弹性调整。
(4)所述特定的存储器区段在系统正常运作模式时,仍可被微处理器所读取,故仍然有被误执行、误存取、误抹除或误写入(更新)的可能性。
发明内容
本发明的目的在于提供一种存取存储器的方法,用于在存取所述存储器时保护一存储器区段不被误存取或误变更。
本发明提供一种存取一存储器的方法,用于在存取所述存储器时保护一存储器区段不被误存取或误变更,所述方法包括以下步骤:
(a)利用一微处理器产生一第一逻辑地址数据,以指定所述存储器中的一数据地址;
(b)利用一地址转换装置依据一控制信号,选择性地输出所述第一逻辑地址数据或者一第二逻辑地址数据,以作为一实体地址数据,所述第二逻辑地址数据指定所述存储器中的另一数据地址;
(c)依据所述实体地址数据存取所述存储器;
其中,所述第二逻辑地址数据为所述第一逻辑地址数据经过运算后所得的结果,且所述第一逻辑地址数据与所述第二逻辑地址数据之一所指定的数据地址不属于所述存储器区段。
所述步骤(b)中还包括:所述地址转换装置根据一设定值,对所述第一逻辑地址数据加以运算,以产生所述第二逻辑地址数据。
所述设定值为所述存储器区段的一特性值。
所述设定值储存于一缓存器中。
所述地址转换装置还包括一运算单元;而步骤(b)中还包括使用所述运算单元,根据所述设定值对所述第一逻辑地址数据加以运算,以产生所述第二逻辑地址数据。
所述地址转换装置还包括一多任务器;而步骤(b)中还包括利用该多任务器依据所述控制信号,对所述第一逻辑地址单元与第二逻辑地址单元进行多任务处理,以选择输出所述第一逻辑地址数据或是第二逻辑地址数据。
本发明还提供一种微处理器系统,用于存取一存储器,所述微处理器系统包括:
一微处理器,用于提供一第一逻辑地址数据,以指定所述存储器中的一数据地址;
一存储器,包括一第一存储器区段及一第二存储器区段;
一地址转换装置,耦接于所述微处理器与存储器之间,用于根据一控制信号选择性地输出所述第一逻辑地址数据或者一第二逻辑地址数据,以作为一实体地址数据,所述第二逻辑地址数据指定所述存储器中的另一数据地址;
其中,所述第二逻辑地址数据为所述第一逻辑地址数据经过运算后所得的结果,而所述微处理器所存取的所述存储器数据,为所述实体地址数据对应于所述第一存储器区段或所述第二存储器区段的内容。
所述存储器为一非挥发性存储器。
所述地址转换装置根据一设定值对所述第一逻辑地址数据进行运算,而产生所述第二逻辑地址数据。
所述设定值为所述第一存储器区段的一特性值。
所述地址转换装置还包括一运算单元,用于根据所述设定值对所述第一逻辑地址数据进行运算,以产生所述第二逻辑地址数据。
所述地址转换装置还包括一缓存器,用于储存所述设定值。
所述地址转换装置还包括一多任务器,用于依据所述控制信号对所述第一逻辑地址单元与第二逻辑地址单元进行多任务处理,选择性输出所述第一逻辑地址数据或是所述第二逻辑地址数据。
本发明通过使用一地址转换装置更改微处理器地址译码方式的设定值,使欲保护的系统激活码区段,在系统于正常动作模式时,不属于微处理器的地址空间,故绝无被误执行、误存取、误抹除或误写入(更新)的可能。
本发明的优点在于使用的非挥发性存储器不需具备支持「系统激活码防护」的功能,也不需要复杂的非挥发性存储器控制方式。
本发明的另一优点在于通过更改地址转换装置的设定值,即可弹性调整欲保护的存储器区段大小。
附图说明
图1为现有技术的一微处理器系统的示意图;
图2为本发明的微处理器系统的一实施例的示意图;
图3为本发明存取一存储器的方法的流程图。
图式的符号说明
10、40微处理器            52缓存器
20、42、44地址总线        54运算单元
30、60存储器              56控制器
32、62系统激活码区段      58多任务器
34、64普通韧体码区段      200现有微处理器系统
36、37、38存储器接脚      400本发明的微处理器系统
50地址转换装置
具体实施方式
在计算机科学上,所有可以被微处理器存取的可寻址(Addressable)单元的组合称为地址空间(Address Space)。地址空间以其特性又可区分为记忆空间(Memory Space)与输出入空间(I/O Space)。而不存在于地址空间的记忆单元或输出入单元便无法被微处理器存取。根据地址空间的特性,本发明提出一种通过修改微处理器的地址译码方式,使系统激活码区段可视需要而存在或不存在于微处理器的地址空间,以达到保护系统激活码区段的目的。
请参考图2。图2为本发明的微处理器系统400的一实施例示意图。微处理器系统400包括一微处理器40;一地址转换装置50,通过一第一地址总线42耦接于微处理器40,用于处理微处理器40所输出的一第一逻辑地址数据,并产生一实体地址数据;一非挥发性存储器60,包括一系统激活码区段62及一普通韧体码区段64,非挥发性存储器60通过一第二地址总线44耦接于地址转换装置50,用于接收地址转换装置50所产生的所述实体地址数据。非挥发性存储器60根据所接收到的实体地址进行数据寻址,将对应地址上的数据备便,以供微处理器40进行存取。
于本发明的一较佳实施例中,地址转换装置50包括一缓存器(Register)52,用于储存一设定值,该设定值为系统激活码区段62的一特性值(例如地址空间大小);一运算单元54,耦接于缓存器52及第一地址总线42,用于根据所述设定值处理所述第一逻辑地址数据以产生一第二逻辑地址数据;一控制器56,用于提供一控制信号;一多任务器58,具有一第一输入端、一第二输入端、一选择端及一输出端,所述第一输入端耦接于运算单元54的输出端,所述第二输入端耦接于第一地址总线42,所述选择端耦接于控制器56,用于接收控制器56产生的一控制信号,所述输出端耦接于第二地址总线44,用于通过第二地址总线44输出所述实体地址数据至非挥发性存储器60。
请参考图3。图3为本发明存取一存储器的方法的流程图,所述方法的步骤如下:
步骤100:开始。
步骤102:利用一微处理器产生一第一逻辑地址数据。
步骤104:利用一地址转换装置依据一控制信号,选择性地输出所述第一逻辑地址数据或者一第二逻辑地址数据,以作为一实体地址数据。
步骤106:依据所述实体地址数据存取所述存储器。
步骤108:结束。
为说明图3中本发明存取一存储器的方法,请再参考图2。假设图2的微处理器系统400中,非挥发性存储器60大小为512Kbyte,其寻址范围从00000H至7FFFFH,其中系统激活码区段62的大小为16Kbyte,地址从00000H至03FFFH;而普通韧体码区段64的大小为496Kbyte,地址从04000H至7FFFFH。
于本发明的一较佳实施例中,微处理器40在步骤102中产生所述第一逻辑地址数据(假设为00000H),用以指定非挥发性存储器60中的一数据地址,并通过第一地址总线42将所述第一逻辑地址数据传输至运算单元54及多任务器58的所述第二输入端,接着进行步骤104。
为说明上的方便,以下另假设于本实施例中,储存于缓存器52中的所述设定值为系统激活码区段62的大小04000H。
于步骤104中,地址转换装置50中的运算单元54于本实施例中为一加法器。运算单元54会根据所述设定值(04000H)对所接收到的第一逻辑地址数据(00000H)进行加法运算,而运算后所得的结果即为所述第二逻辑地址数据(04000H)。接着所述第二逻辑地址数据会被传送至多任务器58的所述第一输入端。由多任务器58根据所述选择端所接收到由控制器56传送过来的所述控制信号,对所述第一逻辑地址数据与所述第二逻辑地址数据进行多任务处理。若所述控制信号为一致能(Enable)信号,则多任务器58会选择输出所述第二逻辑地址数据,以作为所述实体地址数据,此时所述实体地址数据为04000H。接下来于步骤106中,非挥发性存储器60根据所述实体地址数据(04000H)进行数据寻址,将储存于地址04000H(属于普通韧体码区段64)中的数据备便,以供微处理器40进行存取。
相反地,若多任务器58于步骤104中所接收到的所述控制信号为一非致能(Disable)信号,则多任务器58会选择输出所述第一逻辑地址数据(00000H),以作为所述实体地址数据,此时所述实体地址数据为00000H。接下来于步骤106中,非挥发性存储器60便根据所述实体地址数据(00000H)进行数据寻址,将储存于地址00000H(属于系统激活码区段62)中的数据备便,供微处理器40进行存取。
如上所述,只要控制器56发出一致能信号,多任务器58所输出的所述实体地址数据便与原先的所述第一逻辑地址数据不同。另一方面,当控制器56发出一非致能信号时,则多任务器58所输出的所述实体地址数据便会与原先的所述第一逻辑地址数据相同。换句话说,当控制器56发出一致能信号时,便相当于开启地址转换装置50进行转换微处理器40所发出的所述第一逻辑地址的功能。
因此,通过改变控制器56发出的所述控制信号,便能开启或关闭地址转换装置50的功能。而且,一旦开启了地址转换装置50,则系统激活码区段62便等同不存在于微处理器40所能存取的地址空间。这是因为所述第一逻辑地址数据会被地址转换装置50平移,且平移的量恰等于系统激活码区段62的大小。所以微处理器40便无法对系统激活码区段62当中的内容进行存取,当然也就不能对系统激活码区段62内的数据进行删除或更新的动作。由此可知,只要开启了地址转换装置50,便能确保系统激活区段62的内容不会被误存取、误抹除或误更新。
此外,虽然上述对本发明的一实施例的说明当中,假设非挥发性存储器60的系统激活码区段62的大小为16Kbyte,但通常在实际应用时,需储存于其内的系统激活码(Boot Code)的大小不一定刚好是16byte。例如,假设实际需储存于系统激活码区段62当中的韧体码(即系统激活码),其大小为12Kbyte。为了提升非挥发性存储器60的使用效率,系统激活码区段62应释出没有使用的空间(大小为4Kbyte),以让普通韧体码区段64能有更大的容量储存其它韧体码。为了缩减系统激活码区段62的大小,于图3的实施例当中,地址转换装置50仅需改变缓存器52当中所储存的所述设定值,便能达到减少受保护的存储器区段大小的目的,以释出多余的存储器空间供储存其它韧体码之用。
如前所述,假设实际需使用到的系统激活码的大小为12Kbyte,表示系统激活码区段62只需要有12Kbyte的大小,则此时可更改缓存器52中的所述设定值为03000H(系统激活码区段62的大小为03000H)。于步骤102当中,微处理器40产生所述第一逻辑地址数据,假设其仍为00000H,通过第一地址总线42将所述第一逻辑地址数据传输至运算单元54及多任务器58的所述第二输入端,接着进行步骤104。
于步骤104中,地址转换装置50中的运算单元54,会根据所述新的设定值(03000H)对所接收到的所述第一逻辑地址数据(00000H)进行加法运算,而运算后所得的结果即为所述第二逻辑地址数据(03000H)。接着所述第二逻辑地址数据会被传送至多任务器58的所述第一输入端。由多任务器58根据控制器56提供的所述控制信号,对所述第一逻辑地址数据与所述第二逻辑地址数据进行多任务处理。若所述控制信号为一致能信号(表示开启地址转换装置50的地址转换功能),则多任务器58会选择输出所述第二逻辑地址数据(03000H),以作为所述实体地址数据,此时所述实体地址数据为03000H。接下来于步骤106中,非挥发性存储器60根据所述实体地址数据(03000H)进行数据寻址,将储存于地址03000H中的数据备便,以供微处理器40进行存取。
请注意,地址03000H原先属于系统激活码区段62的范围,但此时虽然已开启地址转换装置50,微处理器40依然可对非挥发性存储器60中储存于地址03000H的数据进行存取。这表示非挥发性存储器60的地址03000H属于微处理器40的地址空间。以此类推,在此情况下,即使开启地址转换装置50,非挥发性存储器60当中从地址03000H到地址03FFFH的区段,都是属于微处理器40的地址空间。
如此一来,在开启地址转换装置50的情况下,不属于微处理器40的地址空间的系统激活码区段62,其地址区间变成从00000H到02FFFH,而大小变成只有12Kbyte。此时,系统激活码区段62原先16Kbyte中的最后4Kbyte,已被释出并纳入普通韧体码区段64当中。同理,若系统激活码的实际大小为20Kbyte,只要将所述设定值改成20Kbyte,本发明便可提供一大小为20Kbyte受保护的系统激活码区段62。
如前所述,现有技术当中系统激活码区段62的大小,受限于存储器厂商的设计,不能依实际系统激活码大小弹性调整。然而,本发明通过改变缓存器52当中的所述设定值,便能达成弹性调整非挥发性存储器60当中所欲保护的系统激活码区段62大小的目的。
接下来,以图3所示的微处理器系统400为例,进一步说明本发明存取一存储器的方法在不同情况下的应用方式:
当电源激活或重置时,为使微处理器40能执行储存于系统激活码区段62中的系统激活码,以激活系统的正常运作。故关闭地址转换装置50,使系统激活码区段62存在于微处理器40的地址空间。
当微处理器40将执行至一般韧体码时,此时微处理器40已执行完毕系统激活码,成功激活系统。为了避免接下来微处理器40存取其它储存于普通韧体码区段64当中的韧体码,以操控系统的正常运作时,意外地发生误存取、误抹除或误变更系统激活码区段62内容的情形。通常微处理器40会执行一预设于系统激活码最末段的指令,命令控制器56输出一致能信号,以开启地址转换装置50。如前所述,此时系统激活码区段62并不存在于微处理器40的地址空间。因此,储存于系统激活码区段62当中的系统激活码,不可能被微处理器40所存取,当然也就不可能会发生被误抹除或误变更的情形。
当需要进行系统激活码区段62的存取、抹除或更新动作时(如韧体更新),为使微处理器40能将更新用的系统激活码,写入至系统激活码区段62,以取代旧的系统激活码,故关闭地址转换装置50。如前所述,此时系统激活码区段62与普通韧体码区段64,两者皆存在于微处理器40的地址空间。因此,微处理器40可对系统激活码区段62的内容进行读取、写入与抹除的动作,以完成韧体更新的需要。
请注意,在前面说明本发明存取存储器的方法的实施例中,储存于缓存器52中的所述设定值,为系统激活码区段62的大小。所述设定值并不限定为系统激活码区段62的大小。其也可以系统激活码区段62的终点地址为设定值。当欲保护的系统激活码区段62位为非挥发性存储器60的最末一区段时,所述设定值也可设为系统激活码区段62的起始地址。只要所述设定值能实现本发明存取一存储器的方法,均属于本发明所涵盖的范围。
同理,于本发明的一较佳实施例中,运算单元54对所述第一逻辑地址数据进行的运算,为一加法器的功能,此仅为举例说明的方便。本发明并不限定运算单元54为一加法器。运算单元54视需要而定,也可为一减法器等等的运算电路。例如,当欲保护的系统激活码区段62位于非挥发性存储器60的最末一区段时,运算单元54便可根据系统激活码区段62的起始地址,对所述第一逻辑地址数据进行减法运算。只要能达到本发明的目的的运算单元,均属于于本发明的范围。
总结以上说明,本发明的方法有以下技术特征:(1)本发明的微处理器系统当中所使用的非挥发性存储器,不需具备系统激活码区段的锁定功能。当然,本发明也适用于有支持系统激活码区段锁定功能的特殊非挥发性存储器。(2)本发明的微处理器系统使用一地址转换装置,以达到保护所述非挥发性存储器当中的一特定存储器区段的目的。(3)本发明通过修改所述地址转换装置的一设定值,可弹性调整欲保护的特定存储器区段的大小。
以上实施例仅用于说明本发明,而非用于限定本发明。

Claims (11)

1. 一种存取一存储器的方法,用于在存取所述存储器时保护一存储器区段不被误存取或误变更,其特征在于,所述方法包括以下步骤:
(a)利用一微处理器产生一第一逻辑地址数据,以指定所述存储器中的一数据地址;
(b)利用一地址转换装置依据一控制信号,选择性地输出所述第一逻辑地址数据或者一第二逻辑地址数据,以作为一实体地址数据,所述第二逻辑地址数据指定所述存储器中的另一数据地址;
(c)依据所述实体地址数据存取所述存储器;
其中,所述第二逻辑地址数据为所述第一逻辑地址数据经过运算后所得的结果,且所述第一逻辑地址数据与所述第二逻辑地址数据之一所指定的数据地址不属于所述存储器区段。
2. 如权利要求1所述的存取一存储器的方法,其特征在于,所述步骤(b)中还包括:所述地址转换装置根据一设定值,对所述第一逻辑地址数据加以运算,以产生所述第二逻辑地址数据,其中所述设定值为所述存储器区段的特性值。
3. 如权利要求2所述的存取一存储器的方法,其特征在于,所述设定值储存于一缓存器中。
4. 如权利要求2所述的存取一存储器的方法,其特征在于,所述地址转换装置还包括一运算单元;而步骤(b)中还包括使用所述运算单元,根据所述设定值对所述第一逻辑地址数据加以运算,以产生所述第二逻辑地址数据。
5. 如权利要求2所述的存取一存储器的方法,其特征在于,所述地址转换装置还包括一多任务器;而步骤(b)中还包括利用该多任务器依据所述控制信号,对所述第一逻辑地址单元与第二逻辑地址单元进行多任务处理,以选择输出所述第一逻辑地址数据或是第二逻辑地址数据。
6. 一种微处理器系统,用于存取一存储器,其特征在于,所述微处理器系统包括:
一微处理器,用于提供一第一逻辑地址数据,以指定所述存储器中的一数据地址;
一存储器,包括一第一存储器区段及一第二存储器区段;
一地址转换装置,耦接于所述微处理器与存储器之间,用于根据一控制信号选择性地输出所述第一逻辑地址数据或者一第二逻辑地址数据,以作为一实体地址数据,所述第二逻辑地址数据指定所述存储器中的另一数据地址;
其中,所述第二逻辑地址数据为所述第一逻辑地址数据经过运算后所得的结果,而所述微处理器所存取的所述存储器数据,为所述实体地址数据对应于所述第一存储器区段或所述第二存储器区段的内容。
7. 如权利要求6所述的微处理器系统,其特征在于,所述存储器为一非挥发性存储器。
8. 如权利要求6所述的微处理器系统,其特征在于,所述地址转换装置根据一设定值对所述第一逻辑地址数据进行运算,而产生所述第二逻辑地址数据;所述设定值为所述第一存储器区段的一特性值。
9. 如权利要求8所述的微处理器系统,其特征在于,所述地址转换装置还包括一运算单元,用于根据所述设定值对所述第一逻辑地址数据进行运算,以产生所述第二逻辑地址数据。
10. 如权利要求8所述的微处理器系统,其特征在于,所述地址转换装置还包括一缓存器,用于储存所述设定值。
11. 如权利要求8所述的微处理器系统,其特征在于,所述地址转换装置还包括一多任务器,用于依据所述控制信号对所述第一逻辑地址单元与第二逻辑地址单元进行多任务处理,选择性输出所述第一逻辑地址数据或是所述第二逻辑地址数据。
CNB2005101128982A 2005-10-19 2005-10-19 存取一存储器的方法与相关的微处理器系统 Expired - Fee Related CN100426264C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005101128982A CN100426264C (zh) 2005-10-19 2005-10-19 存取一存储器的方法与相关的微处理器系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005101128982A CN100426264C (zh) 2005-10-19 2005-10-19 存取一存储器的方法与相关的微处理器系统

Publications (2)

Publication Number Publication Date
CN1952913A CN1952913A (zh) 2007-04-25
CN100426264C true CN100426264C (zh) 2008-10-15

Family

ID=38059261

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005101128982A Expired - Fee Related CN100426264C (zh) 2005-10-19 2005-10-19 存取一存储器的方法与相关的微处理器系统

Country Status (1)

Country Link
CN (1) CN100426264C (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI502400B (zh) * 2014-07-30 2015-10-01 Elan Microelectronics Corp 微處理器及其資料保密方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN87103748A (zh) * 1986-05-23 1987-12-09 株式会社日立制作所 使用地址变换的数据处理系统
US5623636A (en) * 1993-11-09 1997-04-22 Motorola Inc. Data processing system and method for providing memory access protection using transparent translation registers and default attribute bits

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN87103748A (zh) * 1986-05-23 1987-12-09 株式会社日立制作所 使用地址变换的数据处理系统
US5623636A (en) * 1993-11-09 1997-04-22 Motorola Inc. Data processing system and method for providing memory access protection using transparent translation registers and default attribute bits

Also Published As

Publication number Publication date
CN1952913A (zh) 2007-04-25

Similar Documents

Publication Publication Date Title
US9940045B2 (en) Address mapping table recovery upon power failure
JP4868216B2 (ja) ファームウェア更新回路およびファームウェア更新方法
CN101369453B (zh) 闪存存储器设备和控制闪存存储器设备的方法
CN100377120C (zh) 非易失性存储器装置的控制方法
JP3892851B2 (ja) メモリカード及び半導体装置
KR100622349B1 (ko) 불량 블록 관리 기능을 가지는 플레시 메모리 장치 및플레시 메모리 장치의 불량 블록 관리 방법.
US7814264B2 (en) Memory card, semiconductor device, and method of controlling semiconductor memory
US8812776B2 (en) Data writing method, and memory controller and memory storage device using the same
US8386905B2 (en) Error correcting method, and memory controller and memory storage system using the same
EP1403771A1 (en) Non-volatile memory control method
US6459624B1 (en) Memory structure capable of preventing data loss therein and method for protecting the same
US9383929B2 (en) Data storing method and memory controller and memory storage device using the same
US7657697B2 (en) Method of controlling a semiconductor memory device applied to a memory card
JP2008533574A (ja) セクタ単位での消去の可能な半導体メモリ手段の第1のセクタへの再書き込み方法および装置
CN110688247A (zh) 数据存储装置、数据存储装置操作方法及固件提供服务器
JP6789788B2 (ja) メモリ装置、コントローラ、ホスト装置、データ処理システム、制御プログラム、メモリ装置の動作方法及びホスト装置の動作方法
CN103678162A (zh) 系统数据储存方法、存储器控制器与存储器储存装置
CN100426264C (zh) 存取一存储器的方法与相关的微处理器系统
US20100077131A1 (en) Updating control information in non-volatile memory to control selection of content
JP2008027326A (ja) システムコントローラ、該システムコントローラを有するフラッシュメモリシステム、フラッシュメモリモジュールの制御方法
EP3783490A1 (en) Operating method of memory controller and storage device
US20050055530A1 (en) Method and apparatus for protecting a specific memory section
CN102591738A (zh) 数据管理方法、存储器控制器与嵌入式存储器储存装置
CN113495673A (zh) 读写方法及存储器装置
JP2006139341A (ja) 不揮発性メモリシステム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20081015

Termination date: 20161019

CF01 Termination of patent right due to non-payment of annual fee