CN111651381A - 半导体装置与数据保护方法 - Google Patents

半导体装置与数据保护方法 Download PDF

Info

Publication number
CN111651381A
CN111651381A CN201911421462.XA CN201911421462A CN111651381A CN 111651381 A CN111651381 A CN 111651381A CN 201911421462 A CN201911421462 A CN 201911421462A CN 111651381 A CN111651381 A CN 111651381A
Authority
CN
China
Prior art keywords
processing unit
access
address
access request
debugger
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.)
Granted
Application number
CN201911421462.XA
Other languages
English (en)
Other versions
CN111651381B (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.)
Nuvoton Technology Corp
Original Assignee
Nuvoton Technology Corp
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 Nuvoton Technology Corp filed Critical Nuvoton Technology Corp
Publication of CN111651381A publication Critical patent/CN111651381A/zh
Application granted granted Critical
Publication of CN111651381B publication Critical patent/CN111651381B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/1425Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供了一种半导体装置与数据保护方法,该半导体装置包括一处理单元、一系统资源群组以及一除错验证逻辑单元。系统资源群组包括多个系统资源。系统资源包括一既定存储器,既定存储器存储多个程序代码,并且既定存储器被定义为仅能执行的存储器。除错验证逻辑单元耦接至一外部除错器,用以控制外部除错器存取系统资源的一权限。除错验证逻辑单元自外部除错器接收请求存取一系统资源的一存取请求。存取请求包括一存取位址。除错验证逻辑单元根据该处理单元目前的一操作状态与存取位址判断是否允许存取请求。当除错验证逻辑单元判断不允许存取请求时,除错验证逻辑单元忽略存取请求,或者回复一错误信息或回复一既定数据给外部除错器。

Description

半导体装置与数据保护方法
技术领域
本发明是关于一种半导体装置,特别是包含一种可可有效保护XOM区域所存储的数据内容的半导体装置。
背景技术
仅能执行的存储器(eXecute-Only-Memory,缩写为XOM)是一种固件保护技术,通过定义仅能执行的存储器区域,以保护关键程序代码。通过XOM的保护,程序存储器空间的一部分仅支援程序执行,任何装置都无法读回存储器的内容。
图1是显示一存储器空间范例。如图所示,存储器空间100配置了一个XOM区域。正常存储器区域所存储的程序代码可通过呼叫程序(function call)的方式呼叫XOM区域所存储的程序,但无法读取其程序代码,也无法看到XOM区域所存储的数据内容。换言之,XOM区域仅允许取指令(instruction fetch),不允许其他数据的读取及写入等存取行为。
对于连接一外部除错器的装置而言,虽XOM区域可防止外部除错器与此装置的处理单元对其直接进行数据读取,但不能防止攻击者使用外部除错器控制处理单元进入除错状态,并以单步(single step)执行的方式,读取指令,观察其变化。
为了解决上述问题,本发明提出一种半导体装置,其可有效保护XOM区域所存储的数据内容,并且在阻止外部除错器通过任何方式读取指令的同时,亦能维持半导体装置与外部除错器的间的连结,因而不会导致外部除错器误认为连结中断而造成除错失败或其他不良影响。
发明内容
根据本发明的一实施例,一种半导体装置,包括一处理单元、一系统资源群组以及一除错验证逻辑单元。系统资源群组包括多个系统资源。系统资源包括一既定存储器,既定存储器存储多个程序代码,并且既定存储器被定义为仅能执行的存储器。除错验证逻辑单元耦接至一外部除错器,用以控制外部除错器存取系统资源的一权限。除错验证逻辑单元自外部除错器接收请求存取一系统资源的一存取请求。存取请求包括一存取位址。除错验证逻辑单元根据该处理单元目前的一操作状态与存取位址判断是否允许存取请求。当除错验证逻辑单元判断不允许存取请求时,除错验证逻辑单元忽略存取请求,或者回复一错误信息或回复一既定数据给外部除错器。
根据本发明的另一实施例,一种数据保护方法,适用于一半导体装置,半导体装置包括一处理单元、一除错验证逻辑单元以及一系统资源群组,系统资源群组包括多个系统资源,系统资源包括被设定为仅能执行的存储器的一既定存储器,既定存储器存储多个程序代码,除错验证逻辑单元用以控制外部除错器存取等系统资源的权限,该方法包括:自外部除错器接收请求存取一系统资源的一存取请求,其中存取请求包括一存取位址;根据处理单元目前的一操作状态与存取位址判断是否允许存取请求;以及当判断不允许存取请求时,忽略存取请求,或者回复一错误信息或回复一既定数据给外部除错器。
附图说明
图1是显示一存储器空间范例。
图2是显示根据本发明的第一实施例所述的一半导体装置的范例方块图。
图3是显示根据本发明的一实施例所述的用以保护半导体装置的XOM所存储的数据的数据保护方法流程图。
图4是显示根据本发明的第二实施例所述的一半导体装置的范例方块图。
图5是显示根据本发明的第三实施例所述的一半导体装置的范例方块图。
附图标记:
50~外部除错器
100~存储器空间
200、400、500~半导体装置
210~调试访问端口装置
220、420、520~除错验证逻辑单元
230、430、530~处理单元
240~系统资源群组
250~系统汇流排
260~监测逻辑
241、242~控制暂存器
243、XOM~仅能执行的存储器
250~系统汇流排
DBG_Bus~除错汇流排
Fetching_Addr~指令存取的位址信息
JTAG~联合测试工作群组
SWD~序列除错
State_Info~状态信息
XOM_Region_Info~XOM的区域位址
具体实施方式
为让本发明的目的、特征和优点能更明显易懂,下文特举出本发明的具体实施例,并配合所附图式,作详细说明如下。目的在于说明本发明的精神而非用以限定本发明的保护范围,应理解下列实施例可经由软体、硬体、固件、或上述任意组合来实现。
如上述,虽XOM区域可防止外部除错器与处理单元对其进行数据读取,但不能防止攻击者使用外部除错器控制处理单元进入除错状态,并以单步(single step)执行的方式,读取指令,观察其变化。传统的一种解决方法为控制处理单元进入除错模式的权限。当侦测到处理单元正在执行XOM所存储的程序代码时,便不允许处理单元进入除错模式。如此一来,处理单元在执行XOM所存储的程序代码时,无法执行除错操作。然而,实现此方法的结果将造成外部除错器完全无法于处理单元执行XOM所存储的程序代码时存取系统资源,导致外部除错器误认为装置与外部除错器之间的连结中断,进而造成除错失败或其他不良影响。本发明所提出的半导体装置架构及数据保护方法可有效解决上述问题。以下将通过数个实施例详细介绍本发明所提出的半导体装置架构及数据保护方法。
图2是显示根据本发明的第一实施例所述的一半导体装置的范例方块图。根据本发明的一实施例,半导体装置200为一晶片,例如,一微处理器晶片。半导体装置200可包括一调试访问端口装置(Debug Access Port,缩写为DAP)210、一除错验证逻辑单元220、一处理单元230、一系统资源群组240以及一系统汇流排250。一外部除错器50可耦接至半导体装置200。调试访问端口装置210提供做为外部除错器50与半导体装置200的内部装置元件连接的接口。外部除错器50通过序列除错(Serial Wire Debug,缩写为SWD)或联合测试工作群组(Joint Test Action Group,缩写为JTAG)等通讯协议与调试访问端口装置210沟通。
调试访问端口装置210通过除错汇流排DBG_Bus耦接至除错验证逻辑单元220。除错汇流排DBG_Bus可为高级高效能汇流排(Advanced High performance Bus,缩写为AHB)。根据本发明的实施例,除错验证逻辑单元220用以控制外部除错器50存取半导体装置200的系统资源的权限。
根据本发明的第一实施例,除错验证逻辑单元220通过除错汇流排DBG_Bus耦接至处理单元230。处理单元230用以控制半导体装置200的运作。系统资源群组240可包括多个系统资源,所述的系统资源可以是,例如,存储器装置、控制暂存器等。如图所示,系统资源群组240可包括控制暂存器241与242,以及一被定义为仅能执行的存储器(XOM)243(既定存储器)。控制暂存器241与242可用以暂存系统参数或数据。XOM 243用以存储多个程序代码。
值得注意的是,为简洁说明,图2仅显示出与本发明相关的元件。本领域技术人员均可理解,半导体装置亦可包含一或多个未示于图2的内部元件,因此,本发明并不限于图2所示的半导体装置结构。
根据本发明的一实施例,除错验证逻辑单元220可自外部除错器50接收请求存取一系统资源的一存取请求,存取请求包括一存取位址。于接收到存取请求时,除错验证逻辑单元220会根据处理单元230目前的一操作状态与存取请求所带的存取位址判断是否允许该存取请求。
根据本发明的一实施例,系统资源群组240所包含的各个系统资源都有其对应的位址,使得半导体装置的各元件可根据对应的位址存取所需的系统资源。除错验证逻辑单元220可自处理单元230或系统资源群组240内的一存储器控制器(图未示)取得XOM 243的区域位址XOM_Region_Info。举例而言,于处理单元230执行初始化程序,以初始化半导体装置200的各元件时,可为系统资源群组240的各个系统资源设定对应的位址,并且于设定后将被设定或被定义为仅能执行的存储器的区域的位址提供给除错验证逻辑单元220。举另一例而言,系统资源群组240可包含一存储器(例如,一快闪存储器)与对应的一存储器控制器。存储器控制器可依系统需求设定或定义存储器的一特定区域为仅能执行的存储器,并且于设定后将被设定或被定义的区域的位址提供给除错验证逻辑单元220。
此外,根据本发明的一实施例,除错验证逻辑单元220可自一监测逻辑260取得处理单元230目前进行指令存取的位址信息Fetching_Addr。监测逻辑260可被设置为耦接至系统汇流排250或耦接至处理单元230与系统汇流排250之间的实体接口,用以监测处理单元230所发出的存取指令,以取得处理单元230目前进行指令存取的位址信息Fetching_Addr,并将此信息提供给除错验证逻辑单元220。
此外,根据本发明的一实施例,处理单元230亦可将处理单元230目前的一状态信息State_Info提供给除错验证逻辑单元220。举例而言,处理单元230可告知除错验证逻辑单元220目前是否操作于一除错状态。
于本发明的一实施例中,处理单元230可根据XOM 243的区域位址XOM_Region_Info、处理单元230目前进行指令存取的位址信息Fetching_Addr及/或处理单元230目前的一状态信息State_Info判断处理单元240目前的一操作状态(例如,是否正在执行XOM 243所存储的程序代码、目前是否操作于一除错状态等)。
图3是显示根据本发明的一实施例所述的用以保护半导体装置的XOM所存储的数据的数据保护方法流程图。数据保护方法的程序起始于除错验证逻辑单元220自外部除错器50接收到请求存取一系统资源的一存取请求。首先,除错验证逻辑单元220根据处理单元230目前的一操作状态判断处理单元230是否正在执行XOM所存储的程序代码(步骤S302)。举例而言,除错验证逻辑单元220可根据所得的XOM 243的区域位址XOM_Region_Info及处理单元230目前进行指令存取的位址信息Fetching_Addr判断处理单元230是否正在执行XOM 243所存储的程序代码。
若否,则表示目前XOM 243所存储的程序代码并没有被存取的风险,除错验证逻辑单元220可直接判断允许外部除错器50的存取请求(步骤S308)。
若是,除错验证逻辑单元220进一步根据所得的状态信息State_Info判断处理单元230目前是否操作于一除错状态(步骤S304)。若否,则表示目前XOM 243所存储的程序代码并没有被存取的风险,除错验证逻辑单元220可直接判断允许外部除错器50的存取请求。
若是,除错验证逻辑单元220进一步根据存取请求所带的存取位址判断此存取位址是否为被允许的位址(步骤S306)。若是,则表示目前XOM 243所存储的程序代码并没有被存取的风险,除错验证逻辑单元220可直接判断允许外部除错器50的存取请求(步骤S308)。然而,若存取请求所带的存取位址判断此存取位址为不被允许的位址,则除错验证逻辑单元220将不允许外部除错器50的存取请求(步骤S310)。
根据本发明的一实施例,半导体装置的系统设计者可事先定义一些允许外部除错器50存取的位址,例如,系统控制区块、除错控制区块、及用以记录系统控制信息(例如,系统重置、系统时钟、电源模式等控制信息)的暂存器等的位址,使得当处理单元230正在执行XOM所存储的程序代码且操作于一除错状态时,外部除错器50仍可存取必须的信息,得知目前系统的状态,因而不会影响外部除错器50的操作,且外部除错器50仍可维持与半导体装置200的连线。此外,于本发明的一些实施例中,通过设定允许外部除错器50存取的位址,亦可进一步使得系统控制区块、除错控制区块等区块中仅部分区域允许外部除错器50存取。即,若有其他区域包含了处理单元230所执行的程序代码的信息,则仍可被设定为禁止外部除错器50存取的位址。
根据本发明的第一实施例,当除错验证逻辑单元220允许外部除错器50的存取请求时,可将存取请求传送至处理单元230,由处理单元230根据此存取请求进一步控制外部除错器50存取系统资源的权限。举例而言,处理单元230或半导体装置200内部的一装置或逻辑电路可设定一除错致能旗标值DBG_EN。当除错致能旗标值DBG_EN被设起时,代表处理单元230可执行除错操作。当除错致能旗标值DBG_EN未被设起时,处理单元230无法执行除错操作,于此状态下,处理单元230会持续忽略自除错汇流排DBG_Bus所接收到的讯号,直到除错致能旗标值DBG_EN再度被设起为止。
另一方,当除错验证逻辑单元220不允许外部除错器50的存取请求时,除错验证逻辑单元220可直接忽略该存取请求,亦即,除错验证逻辑单元220并不回复该存取请求,或者,错验证逻辑单元220可回复一错误信息(例如,一汇流排错误信息)或回复一既定数据(例如,全0或全1的数据)给外部除错器50。如此一来,使得外部除错器50仍可维持与半导体装置200的连线。
图4是显示根据本发明的第二实施例所述的一半导体装置的范例方块图。半导体装置400的结构大致与半导体装置200相同,其差别在于除错验证逻辑单元420可通过除错汇流排DBG_Bus直接与系统汇流排连接。对于相同或相似的元件,其说明可参考图2的相关内容,并于此不再赘述。
于本发明的第二实施例,半导体装置400所实施的数据保护方法流程与半导体装置200相同,因此,根据本发明的第二实施例所述的数据保护方法流程图可参考图3的相关内容,并于此不再赘述。
根据本发明的第二实施例,当除错验证逻辑单元420允许外部除错器50的存取请求时,可直接根据此存取请求存取系统资源。亦即,于本发明的第二实施例中,外部除错器50的存取权限将全由除错验证逻辑单元420所控制,外部除错器50不再通过处理单元430存取系统资源。
另一方,当除错验证逻辑单元420根据图3所示的流程决定不允许外部除错器50的存取请求时,除错验证逻辑单元420可直接忽略该存取请求(即,不回复该存取请求)的外,除错验证逻辑单元420也可选择回复一错误信息(例如,一汇流排错误信息)或回复一既定数据(例如,全0或全1的数据)给外部除错器50。如此一来,使得外部除错器50仍可维持与半导体装置400的连线。
值得注意的是,为简洁说明,图4仅显示出与本发明相关的元件。本领域技术人员均可理解,半导体装置亦可包含一或多个未示于图4的内部元件,因此,本发明并不限于图4所示的半导体装置结构。
图5是显示根据本发明的第三实施例所述的一半导体装置的范例方块图。半导体装置500的结构大致与半导体装置200相同,其差别在于除错验证逻辑单元520可通过除错汇流排DBG_Bus同时拥有与处理单元530的连结及与系统汇流排的连接。对于相同或相似的元件,其说明可参考图2的相关内容,并于此不再赘述。
于本发明的第三实施例,半导体装置500所实施的数据保护方法流程与半导体装置200相同,因此,根据本发明的第三实施例所述的数据保护方法流程图可参考图3的相关内容,并于此不再赘述。
根据本发明的第三实施例,当除错验证逻辑单元520允许外部除错器50的存取请求时,可直接根据此存取请求存取系统资源,亦可将此存取请求传送至处理单元530,由处理单元530根据此存取请求进一步控制外部除错器50存取系统资源的权限。换言之,于本发明的第三实施例中,半导体装置的系统设计者可依需求弹性地设计外部除错器50存取系统资源的路径。举例而言,当处理单元530正在执行XOM所存储的程序代码,且处理单元530目前操作于除错状态时,除错验证逻辑单元520不将存取请求传送至处理单元530,如此一来,外部除错器50仅能通过除错验证逻辑单元520存取系统资源。举另一例而言,系统设计者亦可将系统设计为对于特定的存取位址,外部除错器50仅能通过除错验证逻辑单元520存取系统资源,其余存取位址则可通过处理单元530存取系统资源。
值得注意的是,为简洁说明,图5仅显示出与本发明相关的元件。本领域技术人员均可理解,半导体装置亦可包含一或多个未示于图5的内部元件,因此,本发明并不限于图4所示的半导体装置结构。
传统技术中,仅仅因为处理单元正在执行XOM所存储的程序代码,相关的控制逻辑便将除错致能旗标值DBG_EN失能(即上述的不设起除错致能旗标值DBG_EN)。如此一来,将导致外部除错器误认为装置与外部除错器之间的连结中断,进而造成除错失败或其他不良影响。不同于传统技术,于本发明的实施例中,通过除错验证逻辑单元根据处理单元目前的操作状态与外部除错器所请求的存取位址判断是否允取外部除错器的存取请求,并且于判断不允许请求时,除错验证逻辑单元可通过回复特定的信息或数据保持半导体装置与外部除错器之间的连结。如此一来,有效解决传统技术中的所存在的问题。此外,外部除错器对于系统资源的存取亦可选择地被设计为通过处理单元或除错验证逻辑单元来进行,如此一来,设计者可根据数据的重要性作弹性地设计,以进一步提高数据保护的效能。
虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可做些许更动与润饰,因此本发明的保护范围当视申请专利范围所界定者为准。

Claims (10)

1.一种半导体装置,其特征在于,包括:
一处理单元;
一系统资源群组,包括多个系统资源,其中该多个系统资源包括一既定存储器,该既定存储器存储多个程序代码,并且该既定存储器被定义为仅能执行的存储器;以及
一除错验证逻辑单元,耦接至一外部除错器,用以控制该外部除错器存取该多个系统资源的一权限;
其中该除错验证逻辑单元自该外部除错器接收请求存取一系统资源的一存取请求,该存取请求包括一存取位址,并且该除错验证逻辑单元根据该处理单元目前的一操作状态与该存取位址判断是否允许该存取请求;并且
其中当该除错验证逻辑单元判断不允许该存取请求时,该除错验证逻辑单元忽略该存取请求,或者回复一错误信息或回复一既定数据给该外部除错器。
2.如权利要求1所述的半导体装置,其特征在于,该除错验证逻辑单元取得该处理单元目前进行指令存取的位址信息,当该除错验证逻辑单元根据该处理单元目前进行指令存取的位址信息判断该处理单元并非正在执行该既定存储器所存储的该多个程序代码时,该除错验证逻辑单元允许该存取请求。
3.如权利要求1所述的半导体装置,其特征在于,该除错验证逻辑单元取得该处理单元目前进行指令存取的位址信息以及该处理单元目前的一状态信息,当该除错验证逻辑单元根据该处理单元目前进行指令存取的位址信息判断该处理单元正在执行该既定存储器所存储的该多个程序代码,且该除错验证逻辑单元根据该处理单元的该状态信息判断该处理单元目前并未操作于一除错状态时,该除错验证逻辑单元允许该存取请求。
4.如权利要求1所述的半导体装置,其特征在于,该除错验证逻辑单元取得该处理单元目前进行指令存取的位址信息以及该处理单元目前的一状态信息,当该除错验证逻辑单元根据该处理单元目前进行指令存取的位址信息判断该处理单元正在执行该既定存储器所存储的该多个程序代码,且该除错验证逻辑单元根据该处理单元的该状态信息判断该处理单元目前操作于一除错状态,该除错验证逻辑单元进一步判断该存取位址是否为被允许的位址,当该存取位址为被允许的位址时,该除错验证逻辑单元允许该存取请求。
5.如权利要求4所述的半导体装置,其特征在于,当该存取位址为不被允许的位址时,该除错验证逻辑单元不允许该存取请求。
6.一种数据保护方法,其特征在于,适用于一半导体装置,该半导体装置包括一处理单元、一除错验证逻辑单元以及一系统资源群组,该系统资源群组包括多个系统资源,该多个系统资源包括被设定为仅能执行的存储器的一既定存储器,该既定存储器存储多个程序代码,该除错验证逻辑单元用以控制一外部除错器存取该多个系统资源的权限,该方法包括:
自该外部除错器接收请求存取一系统资源的一存取请求,其中该存取请求包括一存取位址;
根据该处理单元目前的一操作状态与该存取位址判断是否允许该存取请求;以及
当判断不允许该存取请求时,忽略该存取请求,或者回复一错误信息或回复一既定数据给该外部除错器。
7.如权利要求6所述的数据保护方法,其特征在于,更包括:
取得该处理单元目前进行指令存取的位址信息,并且其中根据该处理单元目前的该操作状态与该存取位址判断是否允许该存取请求的步骤更包括:
根据该处理单元目前进行指令存取的位址信息判断该处理单元是否正在执行该既定存储器所存储的该多个程序代码;以及
当判断该处理单元并非正在执行该既定存储器所存储的该多个程序代码时,允许该外部除错器的该存取请求。
8.如权利要求6所述的数据保护方法,其特征在于,更包括:
取得该处理单元目前进行指令存取的位址信息以及该处理单元目前的一状态信息,并且其中根据该处理单元目前的该操作状态与该存取位址判断是否允许该存取请求的步骤更包括:
根据该处理单元目前进行指令存取的位址信息判断该处理单元是否正在执行该既定存储器所存储的该多个程序代码;
当判断该处理单元正在执行该既定存储器所存储的该多个程序代码时,进一步根据该处理单元的该状态信息判断该处理单元目前是否操作于一除错状态;以及
当判断该处理单元目前并未操作于该除错状态时,允许该外部除错器的该存取请求。
9.如权利要求6所述的数据保护方法,其特征在于,更包括:
取得该处理单元目前进行指令存取的位址信息以及该处理单元目前的一状态信息,并且其中根据该处理单元目前的该操作状态与该存取位址判断是否允许该存取请求的步骤更包括:
根据该处理单元目前进行指令存取的位址信息判断该处理单元是否正在执行该既定存储器所存储的该多个程序代码;
当判断该处理单元正在执行该既定存储器所存储的该多个程序代码时,进一步根据该处理单元的该状态信息判断该处理单元目前是否操作于一除错状态;
当判断该处理单元目前操作于该除错状态时,进一步判断该存取位址是否为被允许的位址;以及
当该存取位址为被允许的位址时,允许该外部除错器的该存取请求。
10.如权利要求9所述的数据保护方法,其特征在于,当该存取位址为不被允许的位址,不允许该外部除错器的该存取请求。
CN201911421462.XA 2019-03-04 2019-12-31 半导体装置与数据保护方法 Active CN111651381B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
TW108106977 2019-03-04
TW108106977A TWI682400B (zh) 2019-03-04 2019-03-04 半導體裝置與資料保護方法

Publications (2)

Publication Number Publication Date
CN111651381A true CN111651381A (zh) 2020-09-11
CN111651381B CN111651381B (zh) 2023-11-17

Family

ID=69942370

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911421462.XA Active CN111651381B (zh) 2019-03-04 2019-12-31 半导体装置与数据保护方法

Country Status (2)

Country Link
CN (1) CN111651381B (zh)
TW (1) TWI682400B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020073400A1 (en) * 2000-07-26 2002-06-13 Michael Beuten Method for monitoring a program execution using a debug logic
CN1547215A (zh) * 2003-10-31 2004-11-17 ��ʢ���ӹɷ����޹�˾ 可进行除错与更新的只读存储器电路及方法
CN1737767A (zh) * 2005-01-14 2006-02-22 威盛电子股份有限公司 芯片电子硬件上具有中止执行能力的除错支援单元及方法
CN102609320A (zh) * 2011-01-18 2012-07-25 威盛电子股份有限公司 微处理器与于微处理器中配置除错逻辑的方法
US20140006692A1 (en) * 2012-06-27 2014-01-02 Nordic Semiconductor Asa Memory protection
US20170213039A1 (en) * 2016-01-22 2017-07-27 The University Of North Carolina At Chapel Hill Methods, systems, and computer readable media for preventing code reuse attacks
US20170337139A1 (en) * 2016-05-19 2017-11-23 Narf Industries, LLC System and method for probabilistic defense against remote exploitation of memory

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9665373B2 (en) * 2015-06-26 2017-05-30 Intel Corporation Protecting confidential data with transactional processing in execute-only memory
US11227056B2 (en) * 2015-08-18 2022-01-18 The Trustees Of Columbia University In The City Of New York Inhibiting memory disclosure attacks using destructive code reads

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020073400A1 (en) * 2000-07-26 2002-06-13 Michael Beuten Method for monitoring a program execution using a debug logic
CN1547215A (zh) * 2003-10-31 2004-11-17 ��ʢ���ӹɷ����޹�˾ 可进行除错与更新的只读存储器电路及方法
CN1737767A (zh) * 2005-01-14 2006-02-22 威盛电子股份有限公司 芯片电子硬件上具有中止执行能力的除错支援单元及方法
CN102609320A (zh) * 2011-01-18 2012-07-25 威盛电子股份有限公司 微处理器与于微处理器中配置除错逻辑的方法
US20140006692A1 (en) * 2012-06-27 2014-01-02 Nordic Semiconductor Asa Memory protection
US20170213039A1 (en) * 2016-01-22 2017-07-27 The University Of North Carolina At Chapel Hill Methods, systems, and computer readable media for preventing code reuse attacks
US20170337139A1 (en) * 2016-05-19 2017-11-23 Narf Industries, LLC System and method for probabilistic defense against remote exploitation of memory

Also Published As

Publication number Publication date
TWI682400B (zh) 2020-01-11
TW202034342A (zh) 2020-09-16
CN111651381B (zh) 2023-11-17

Similar Documents

Publication Publication Date Title
EP3287800B1 (en) Jtag debug apparatus and jtag debug method
US8156317B2 (en) Integrated circuit with secure boot from a debug access port and method therefor
US11675526B2 (en) Memory-access control
US10102155B2 (en) Method and device of information protection for micro control unit chip
US8176281B2 (en) Controlling access to an embedded memory of a microcontroller
US20080016415A1 (en) Evaluation system and method
US7337366B2 (en) Microcomputer, a method for protecting memory and a method for performing debugging
KR100607023B1 (ko) 프로그램 처리 장치
JP2014193690A (ja) 車両用制御装置
US20050223296A1 (en) Microcomputer capable of monitoring internal memory
US10592644B2 (en) Information protection method and device based on a plurality of sub-areas for MCU chip
CN111651381B (zh) 半导体装置与数据保护方法
US20020174278A1 (en) Information processing apparatus and method of controlling an access level
KR20030055150A (ko) 마이크로프로세서 및 마이크로프로세서의 처리 방법
US6948095B2 (en) Methods and apparatus for dynamically loading a file on a target computer system
CN109190383B (zh) 访问指令的处理方法、装置及设备
CN112948241B (zh) 应用程序的反调试方法、装置、电子设备及存储介质
JPS6074059A (ja) 記憶装置アクセス制御方式
KR101244684B1 (ko) 에러검출이 가능한 마이크로 컴퓨팅 장치 및 그의 에러검출방법
JP2004038464A (ja) デバッグ機能内蔵マイクロコンピュータ
US7194401B2 (en) Configuration for in-circuit emulation of a program-controlled unit
US6327649B1 (en) Apparatus for developing internal ROM code using a ROM bus external interface
JP2001282568A (ja) 不正アクセス検出回路及びそれを有するインサーキットエミュレータ並びに不正アクセス検出方法
JP2003223339A (ja) インサーキットエミュレータ
JPH11212945A (ja) マイクロコンピュータおよびそのメモリ

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant