CN111143248A - 半导体装置、半导体系统和程序 - Google Patents

半导体装置、半导体系统和程序 Download PDF

Info

Publication number
CN111143248A
CN111143248A CN201910832760.1A CN201910832760A CN111143248A CN 111143248 A CN111143248 A CN 111143248A CN 201910832760 A CN201910832760 A CN 201910832760A CN 111143248 A CN111143248 A CN 111143248A
Authority
CN
China
Prior art keywords
sub
program
signal
control device
semiconductor device
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.)
Pending
Application number
CN201910832760.1A
Other languages
English (en)
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.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics 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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Publication of CN111143248A publication Critical patent/CN111143248A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/16Protection against loss of memory contents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • 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
    • 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
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)

Abstract

本申请涉及半导体装置、半导体系统和程序。提供了一种用于在抑制未授权访问的同时保持所需功能的半导体装置等。半导体装置包括主控制装置和子控制装置。主控制装置包括:主存储器,用于存储主程序,所述主程序用于接收外部信号;以及触发信号输出电路,用于在与预置信号处理不同的异常信号处理被执行时输出触发信号。子控制装置耦合到主控制装置,并且包括用于获得触发信号的触发信号获得电路以及用于基于获得的触发信号将子程序输出到主控制装置的子程序输出电路。

Description

半导体装置、半导体系统和程序
相关申请的交叉引用
2018年11月2日提交的日本专利申请No.2018-207093的公开内容,包括说明书、附图和摘要,通过引用整体结合于此。
技术领域
本公开涉及半导体装置、半导体系统和程序。
背景技术
近年来,各种设备具有与外部通信的功能,例如因特网连接。与外部具有通信功能有助于软件的更新和数据的共享,但是存在由于来自第三方等的未授权访问而引起危险的问题。为此,需要具有与外部通信功能的设备和系统可以避免由未授权访问引起的危险。
例如,在半导体装置中实现称为存储器保护(或区域保护)的功能。存储器保护具有检测与访问预置地址空间不同的访问、即未授权访问的功能。半导体装置的用户可以使用对未授权访问的检测作为触发来保护其上安装有半导体装置的系统。
更具体地,当未验证存储在微控制器中的控制程序的一致性时,在例如日本未审查专利申请公开2004-348546中描述的程序切换装置执行存储在微型计算机中的另一控制程序。此外,日本未审查专利申请公开11/338783中描述的装置具有当用于监视未授权访问的亚微型计算机检测到非易失性存储器中的异常时禁止主微型计算机操作的功能。
发明内容
如果半导体装置接收到未经授权的访问,则它可能已被未授权访问篡改。也就是说,不能确保存储在半导体装置自身中的软件的可靠性。然而,在日本未审查专利申请公开11/338783中描述的设备中,如果存在对存储控制程序的存储单元的未授权访问,则存在对另一控制程序的未授权访问的可能性,因此不能说可靠性是安全的。另外,专利文献1中描述的装置在未经授权的访问之后禁止主微型计算机的操作,因此不能继续装置其后的功能。
根据本说明书的描述和附图,其他目的和新颖特征将变得显而易见。
根据一个实施例,半导体装置包括主控制装置和子控制装置。主控制装置包括:主存储器,用于存储主程序,所述主程序用于接收外部信号;以及触发信号输出电路,用于在与预置信号处理不同的异常信号处理被执行时输出触发信号。子控制装置连接到主控制装置,并且包括用于获得触发信号的触发信号获得电路以及用于基于获得的触发信号将子程序输出到主控制装置的子程序输出电路。
根据一个实施例,具有主控制装置和子控制装置的多个半导体装置可通信地彼此连接,并且多个半导体装置中的一个半导体装置基于触发信号向另一个半导体装置发送通知。
根据一个实施例,一种使计算机执行半导体装置的保护方法的程序。半导体装置的保护方法包括:触发信号输出步骤,用于在主控制装置中当信号处理不同于预置信号处理时将触发信号输出到子控制装置。另外,半导体装置的保护方法包括:子程序输出步骤,用于在子控制装置中基于触发信号将子程序输出到主控制装置。
根据上述实施例,可以提供一种半导体装置等,用于在抑制未授权访问的同时保持所需的功能。
附图说明
图1是根据第一实施例的呼吸辅助系统的图。
图2是根据第一实施例的半导体装置的示意性配置图。
图3是示出根据第一实施例的异常检测电路的具体示例的图。
图4是示出主控制装置中的异常检测电路的配置示例的图。
图5是示出第一实施例的半导体装置处理的流程图。
图6是示出根据第一实施例的呼吸辅助系统的程序重写之后的状态的图。
图7是示出根据第一实施例的半导体装置和重写装置的连接的图。
图8是用于第一实施例的修改示例的半导体装置的概要图。
图9是示出根据第二实施例的呼吸辅助装置的程序重写之后的状态的图。
图10是根据第二实施例的修改示例的半导体系统的示意性配置图。
图11是示出根据第二实施例的修改示例的半导体装置处理的流程图。
图12是根据第三实施例的半导体装置的示意配置图。
图13是示出根据第三实施例的半导体装置处理的流程图。
具体实施方式
为了清楚地解释,适当地省略和简化以下描述和附图。另外,附图中被描述为用于执行各种处理的功能块的元件在硬件方面可以被配置为CPU(中央处理单元)、存储器和其他电路,并且在软件方面可以通过被加载到存储器中的程序来实现。因此,本领域技术人员可以理解,这些功能块可以通过单独的硬件、单独的软件或其组合以各种方式实现,并且本发明不限于它们中的任何一种。在附图中,相同的元件由相同的附图标记表示,并且根据需要省略其重复描述。
参考附图,下面将描述第一实施例。图1是根据第一实施例的呼吸辅助系统的图。图1中所示的呼吸辅助系统1是用于在患者处于难以自己呼吸的状态下辅助患者的呼吸操作的装置。呼吸辅助系统1具有通信功能,并且经由网络900可通信地连接到服务器800。管理呼吸辅助系统1的管理员可以管理由服务器800获取的关于呼吸辅助系统1的状态的信息。管理员还可以使用服务器800更新呼吸辅助系统1的程序。
呼吸辅助系统1主要包括呼吸辅助装置10、传感器12、泵13、显示装置15和输入装置16。首先,将描述传感器12、泵13、显示装置15和输入装置16。
传感器12获取操作呼吸辅助系统1所需的信息,并将获取的信息提供给呼吸辅助装置10。由传感器12获取的信息包括多条信息,诸如操作状态,例如泵13的旋转速度或患者的呼吸强度。
泵13是用于辅助患者呼吸的泵装置。泵13具有入口、排气口和电机14。电机14介于入口和排气口之间,并将从入口吸入的空气输送到排气口。电机14被连接到呼吸辅助装置10并且响应于来自呼吸辅助装置10的指令而操作。
显示装置15例如是具有显示单元的显示装置,并且显示用于驱动显示单元的驱动电路。显示装置15显示例如呼吸辅助系统1的操作状态、经由传感器12获取的患者的状态等。输入装置16包括例如键盘、触摸板、开关等,并且接收来自使用呼吸辅助装置10的用户的指令。
接下来,将描述呼吸辅助装置10。呼吸辅助装置10主要包括通信装置11和半导体装置100。呼吸辅助装置10以有线或无线方式被连接到传感器12、泵13、显示装置15和输入装置16。
通信装置11是与呼吸辅助系统1的外部进行外部通信的装置。外部通信是根据被确定为处于包括通信装置11的装置或板外部的过程来发送和/或接收信息的操作,并且不包括构成该装置的输入/输出装置的通信。也就是说,通信装置11访问网络900,并且发送和接收预定数据。通信装置11与半导体装置100协作地执行外部通信。网络900例如是电话线(其是公共网络线路)或因特网线路。通信装置11和网络900可以彼此有线或无线连接。
半导体装置100控制呼吸辅助系统1的组件的操作和功能。半导体装置100主要包括主控制装置110和子控制装置120。主控制装置110是包括CPU(中央处理单元)的算术装置。主控制装置110存储主程序,并且根据主程序的处理来发送指令和接收数据到各个组件。子控制装置120是称为MPU(微控制器单元)的算术装置。子控制装置120存储作为备用程序的子程序,将子程序连接到主控制装置110,并且当达到预置条件时将子程序提供给主控制装置110。
半导体装置100例如是集成电路芯片,其中主控制装置110和子控制装置120彼此独立,并且集成电路芯片形成在单个衬底上。此外,半导体装置100可以是例如PoP(封装体叠层),其中主控制装置110和子控制装置120是独立集成电路的芯片,并且每个集成电路作为一个芯片被进一步叠置。由于主控制装置110具有实现外部通信的功能,因此可以接收如上所述的未授权访问。另一方面,优选的是,子控制装置120不具有用于控制外部通信的导线。另外,优选的是,即使在与主控制装置110的通信中,子控制装置120也不具有受未授权访问影响的导线。
接下来,参考图2,将详细描述包括在呼吸辅助装置10中的半导体装置100。图2是根据第一实施例的半导体装置的示意性配置图。主控制装置110连接到通信装置11并且控制由通信装置11执行的外部通信。主控制装置110连接到传感器12、电动机14、显示装置15和输入装置16,以适当地发送和接收信号。
作为主要组件,主控制装置110包括外部通信接口111、主存储器112、异常检测电路114、触发信号输出电路115和响应电路116。外部通信接口111是用于向通信装置11发送信号和从通信装置11接收信号的接口。
主存储器112是可重写的非易失性存储装置,例如闪存存储器、FeRAM(铁电随机存取存储器)或EPROM(可擦除可编程只读存储器)。主存储器112将主程序存储在程序存储区域113中。主程序是用于实现用于执行其中安装有半导体装置100的呼吸辅助系统1的操作的功能的程序。主程序包括使用外部通信来经由外部通信接口111发送和接收信号的功能。
异常检测电路114检测诸如来自在主控制装置110中执行的信号处理的未授权访问的异常处理,并基于该检测产生触发信号。由异常检测电路114产生的触发信号不是由软件产生的,而是由主控制装置110中的硬件设置产生的。
将参考图3描述异常检测电路的具体示例。图3是示出根据第一实施例的异常检测电路的具体示例的图。异常检测电路114从正在执行处理的区域获取与操作执行地址有关的信号,并且当正在执行处理的地址没有接收到访问许可时,输出指示正在执行异常处理的触发信号。
异常检测电路114主要包括地址空间信息寄存器114A、访问许可信息寄存器114B和比较器114C。地址空间信息寄存器114A获取与处理执行地址有关的信号,并将与获取的信号对应的地址空间有关的信号输出到比较器114C。访问许可信息寄存器114B存储是否允许对主控制装置110的每个地址空间进行访问的信息。比较器114C将关于已经进行了处理的地址所对应的地址空间的信息与关于对地址空间的访问许可的信息进行比较,并在不允许访问要访问的地址空间时输出触发信号。
例如,图3所示的异常检测电路114也称为存储器保护单元或区域保护单元。异常检测电路114监视在主控制装置110中的信号处理(例如执行指令,读取或写入)中所访问的地址。利用这样的配置,由于异常检测电路114根据正在执行处理的地址的信号输出触发信号,因此可以通过硬件(电路布线)而无需软件的干预来检测异常信号处理。
接下来,参考图4,将描述主控制装置110中的异常检测电路114的示例性配置。图4是示出主控制装置中的异常检测电路的配置示例的图。在图4中,主控制装置110包括异常检测电路114、CPU 117、输出设置寄存器118、逻辑电路119和端子T1。
如参考图3所述,当检测到异常信号处理时,异常检测电路114将触发信号提供给逻辑电路119。CPU 117是主控制装置110的运算单元,并将预定信号提供给输出设置寄存器118。这里,预定信号是当CPU 117检测到访问异常时的信号。当输出设置寄存器118从CPU117接收到预定信号时,输出设置寄存器118响应于预定信号产生触发信号,并将产生的触发信号提供给逻辑电路119。
逻辑电路119分别从异常检测电路114和输出设置寄存器118接收触发信号,并将接收到的触发信号的逻辑和发送到端子T1。利用这样的配置,主控制装置110可以直接将来自异常检测电路114的触发信号发送给端子T1并输出触发信号,或者可以通过由CPU 117生成的信号输出触发信号。应当理解,从异常检测电路114输出的触发信号可以由放大器放大,或者可以通过包括噪声滤波或二极管的保护电路而输出。
回到图2,将描述主控制装置110的配置。触发信号输出电路115将触发信号输出到子控制装置120。也就是说,触发信号输出电路115包括端子,该端子是用于从主控制装置110向子控制装置120提供触发信号的接口。
在从子控制装置120的请求电路122接收到请求信号之后,响应电路116将对请求信号的响应信号输出到子控制装置120。响应电路116还在输出响应信号之后获取从子控制装置120提供的子程序。
接下来,将描述子控制装置120。子控制装置120连接到主控制装置110,并且当主控制装置110根据预置条件检测到异常信号处理时,将子程序提供给主控制装置110。子控制装置120包括触发信号获得电路121、请求电路122、子程序输出电路123和子存储器124。
触发信号获得电路121获得从主控制装置110的触发信号输出电路115输出的触发信号。触发信号获得电路121包括端子,该端子是用于接收触发信号的接口。触发信号获得电路121还具有接收触发信号以执行中断处理和开始请求电路的处理的功能。当触发信号获得电路121从主控制装置110获得触发信号时,请求电路122输出请求主控制装置110传送子程序的请求信号。当从主控制装置110接收到响应信号时,子程序输出电路123将子程序传送到主控制装置110。
子存储器124是可重写的非易失性存储装置,例如闪存存储器,或不可重写的非易失性存储装置,例如掩模ROM(只读存储器)。子存储器124将子程序存储在程序存储区域125中。子程序是至少从主程序中删除外部通信功能的程序。也就是说,当呼吸辅助系统1执行子程序时,不执行外部通信。
接下来,图5示出了当半导体装置100检测到异常信号处理时的处理。图5是示出第一实施例的半导体装置处理的流程图。图中所示的处理称为主程序重写例程S10。当半导体装置100检测到异常信号处理时,开始主程序重写例程S10。换句话说,例如,主控制装置110经由网络900接收未授权访问,并且当异常检测电路114通过未授权访问检测到异常信号处理时,开始图5所示的处理。
首先,当异常检测电路114检测到访问异常时,主控制装置110在操作S11中将触发信号提供给子控制装置120。在接收到触发信号时,子控制装置120开始中断处理。
然后,子控制装置120将重置信号提供给主控制装置110。在从子控制装置120接收到重置信号时,主控制装置110在操作S12中停止执行主控制装置110的主程序并且重置主控制装置110。
在操作S13中,子控制装置120将主控制装置110设置为重写模式。具体地,子控制装置120将从Lo到Hi(或从Hi到Lo)的信号提供给例如主控制装置110的预定程序重写端子。结果,主控制装置110转变到程序重写模式。
接下来,子控制装置120取消主控制装置110的重置(S14)。在操作S15中,通过由子控制装置120取消重置操作,在重写模式中激活主控制装置110。
在操作S16中,子控制装置120将重写请求信号发送到主控制装置110。在操作S17中,子控制装置120将子程序发送到主控制装置110。在这种情况下,子控制装置120响应于请求信号而等待主控制装置110返回响应信号,从主控制装置110接收响应信号,并且然后转移到以下步骤。
在操作S17中,子控制装置120将子程序发送到主控制装置110。在从子控制装置120接收到子程序时,主控制装置110将子程序存储在主存储器112的程序存储区域113中。此时,主控制装置110擦除主程序并存储子程序。也就是说,程序存储区域中的程序从主程序被重写为子程序。结果,代替可能已经被未经授权的访问篡改的程序,半导体装置100将安全的子程序存储在主存储器中。
接下来,在子程序被存储在主存储器112中之后,子控制装置120在操作S18中重置主控制装置110。在操作S19中,子控制装置120取消程序重写模式并取消主控制装置110的重置。当重置被取消时,主控制装置110开始所重写的子程序的操作。
上面已经描述了半导体装置100中的程序的重写处理。在步骤S17中,可以在没有接收到响应信号的情况下执行在经过预置时间之后发送子程序的处理。
接下来,参照图6,将描述在执行上述程序重写处理之后的系统。图6是示出根据第一实施例的呼吸辅助系统的程序重写之后的状态的图。
在图6所示的呼吸辅助系统1中,主控制装置110的程序从主程序被重写为子程序。结果,呼吸辅助系统1的通信装置11的操作被停止。因此,呼吸辅助系统1处于不能经由网络900执行外部通信的状态。另外,除了外部通信之外,呼吸辅助系统1可以执行与重写程序之前相同的功能。因此,即使在从外部接收到一些未经授权的访问之后,呼吸辅助系统1也可以消除诸如软件伪造之类的风险并保持其作为呼吸辅助装置的功能。
接下来,参考图7,将描述从外部重写主控制装置110的程序的配置。图7是示出根据第一实施例的半导体装置和重写装置的连接的图。在图中,半导体装置100具有连接器100N,并且连接器100N连接到重写装置700。半导体装置100的配置通过内部布线L10至L16连接。
下面将描述半导体装置100的内部布线。内部布线L10是用于主控制装置110的布线,以将触发信号提供给子控制装置120。内部布线L11是用于执行如下通信的布线,其中主控制装置110在接收侧(Rx)并且子控制装置120在发送侧(Tx)。内部布线L12是用于执行如下通信的布线,其中主控制装置110在发送侧(Tx)并且子控制装置120在接收侧(Rx)。主控制装置110可以经由内部布线L10至L12从子控制装置120接收子程序。
内部布线L13是连接内部布线L11和连接器100N的布线。当程序从重写装置700被提供给主控制装置110时,程序等经由内部布线L13和L11从作为发送侧(Tx)的重写装置700被发送到作为接收侧(Rx)的主控制装置110。
内部布线L14是连接内部布线L12和连接器100N的布线。当程序从重写装置700提供给主控制装置110时,应答信号等经由内部布线L14和L12从发送侧(Tx)的主控制装置110被发送到接收侧(Rx)的重写装置700。
内部布线L15连接子控制装置120的GND端子和连接器100N。内部布线L16将子控制装置120的重置端子连接到连接器100N。
接下来,将描述重写装置700。重写装置700是连接到半导体装置100的装置,用于将程序重写到主控制装置110。重写装置700具有可从半导体装置100的连接器100N拆卸的连接器700N,并且连接到布线L13至L16以便可通电。
重写装置700具有连接布线L15和布线L16的布线L70。因此,当重写装置700连接到半导体装置100时,子控制装置的重置端子固定到接地端子的电位。结果,子控制装置120被重置,并且不向主控制装置110发送信号和从主控制装置110接收信号。注意,作为示例,GND端子的电位固定到GND端子,并且可以确定导线L15的电位使得至少子控制装置120的Rx端子和Tx端子处于高阻抗状态。
在子控制装置120重置之后,重写装置700经由导线L13和L14向主控制装置110发送预定信号和从主控制装置110接收预定信号,并将存储在重写装置700中的程序发送到主控制装置110。在从重写装置700接收到程序时,主控制装置110将接收的程序存储在主存储器中。利用上述配置,即使在主控制装置110的程序被重写为子程序并且不执行外部通信之后,半导体装置100也可以通过重写装置700重写存储在主控制装置110中的程序。
尽管上面已经描述了第一实施例,但是根据第一实施例的呼吸辅助系统1和包括在呼吸辅助系统1中的半导体装置100的配置不限于上述配置。例如,通信装置11的功能可以包括在半导体装置100中。代替通信装置11,呼吸辅助装置10可以包括用于接收外部信号的外部信号接收装置。外部信号接收装置是接收被输入到呼吸辅助装置10的信号并且将接收的信号提供给半导体装置100的装置,并且例如是存储器卡读取器、总线通信连接器等。当呼吸辅助装置10具有这样的配置时,包括在半导体装置100中的外部通信接口111具有接收与外部信号接收装置对应的信号的功能。当呼吸辅助装置具有这样的配置时,存储在子控制装置中的子程序具有不接受外部信号的功能,而不是不接受外部通信的功能。
在第一实施例中描述的半导体装置100不仅适用于呼吸辅助系统1,而且适用于使用通信功能的任何装置和系统。例如,根据第一实施例的半导体装置100可适用于称为IoT(物联网)的各种装置。根据第一实施例的半导体装置100可以适用于具有通信功能的移动电话、家用电器、商用装置、医疗装置等。
子控制装置120可以是具有与主控制装置110的配置相同的配置的算术装置,但是子控制装置120可以选择具有比主控制装置110的电路尺寸相对小的电路尺寸的集成电路。利用这样的配置,可以提供一种半导体装置等,其保护半导体装置免于由于未授权访问而导致的异常处理,并且在抑制成本增加的同时保持所需的功能。外部通信不限于上述示例,并且可以是并非经由公共网络线路的符合诸如Bluetooth(注册商标)、USB(通用串行总线)或Wi-Fi直连的标准的通信。
在根据第一实施例的呼吸辅助系统1中,如果主控制装置110受到通过外部通信的未授权访问的攻击,则不能保证在主控制装置110内操作的软件的可靠性。因此,在异常检测电路114检测到异常信号处理之后,执行用于通过硬件而不需要软件的介入来输出触发信号的处理。利用这样的配置,第一实施例可以可靠地向子控制装置通知由来自系统外部的攻击引起的异常。在检测到异常信号处理之后代替主程序而被存储在主控制装置110中的子程序是从主程序中删除通信功能的子程序。结果,呼吸辅助系统1可以消除经由通信被攻击的可能性,同时可靠地保持和继续原本应该起作用的功能。因此,根据第一实施例,可以提供用于在抑制未授权访问的同时保持所需功能的半导体装置等。
接下来,参考图8,将描述第一实施例的修改示例。图8是用于第一实施例的修改示例的半导体装置的概要图。图8所示的呼吸辅助系统1与图2所示的半导体装置100不同在于半导体装置101的配置。
半导体装置101包括主控制装置110、子控制装置220和存储装置130。子控制装置220与第一实施例的子控制装置120的不同之处在于,它具有存储器控制电路126而不是子存储器124。存储器控制电路126从连接到子控制装置120的存储装置130读取预定信息,并将读取的信息提供给子程序输出电路123。
存储装置130是具有程序存储区域131的存储装置,并且是不可重写的非易失性存储器。不可重写的非易失性存储器例如是PROM(可编程只读存储器)和掩模ROM。存储装置130连接到子控制装置220,并且响应于来自存储器控制电路126的请求将预定信息提供给子控制装置220。
由于存储装置130由不可重写的非易失性存储器构成,因此当半导体装置100接收到未授权的访问时,主控制装置110的主程序可以可靠地被重写为预先准备的子程序。
此外,根据第一实施例的修改示例,由于子控制装置220不包括用于存储主程序的子存储器,因此可以将其配置为相对便宜。因此,根据第一实施例的修改示例,可以提供用于在抑制未授权访问的同时保持所需功能的半导体装置等。
接下来,参考图9,将描述第二实施例。图9是示出根据第二实施例的呼吸辅助装置的程序重写之后的状态的图。根据第二实施例的呼吸辅助系统2与根据第一实施例的呼吸辅助系统1的不同之处在于,在接收到未授权访问之后由子程序实现的功能。更具体地,呼吸辅助系统2限于被重写为子程序的其中由主控制装置110预先设置通信装置的功能。
在主控制装置110检测到由于未授权访问引起的异常信号处理之后,呼吸辅助系统2从子控制装置120接收子程序,将接收的子程序存储在主控制装置110中,并且重新启动主控制装置110。子程序具有用于将通信装置11的操作固定到预先设置的后续操作的控制命令,而不是控制主程序已执行的通信装置11的功能。
首先,主控制装置110指示通信装置11向预置外部装置(例如,管理装置)发送信息,该信息表明已检测到异常信号处理。这里,由呼吸辅助系统2执行的指定模式可以是任意模式,只要其相对于接收侧预置即可。
另一方面,主控制装置110指示通信装置11不将经由网络900而来的任何信号发送到主控制装置110。结果,重写为子程序的主控制装置110不接受来自外部的信号。因此,呼吸辅助系统2可以避免来自外部的攻击。
呼吸辅助系统2还通过在检测到异常信号处理之后执行的子程序向用户指明发生了异常。例如,呼吸辅助系统2在显示装置15上进行显示以通知用户已检测到异常信号处理,并且因此未接受从外部接收的信号。
利用上述配置,与第二实施例相关的呼吸辅助系统2可以适当地向外部系统(例如,由管理员使用的服务器800)和用户通知系统异常,同时避免来自外部的未授权访问。
应当注意,通信装置11可以从如上所述的子程序生成的命令接收指示相对于外部已经发生异常的指令,但是也可以通过其他配置来实现。例如,通信装置11可以被配置为从主控制装置110接收触发信号并且响应于接收到的触发信号实现上述功能。利用这样的配置,由于呼吸辅助系统2在接收到未授权访问之后并且在重写程序之前可以表现出不接受来自外部的通信的功能,因此可以快速避免来自外部的攻击。通信装置11可以被包括在半导体装置100中,或者主控制装置110可以具有通信装置11的功能。
接下来,将说明第二实施例的修改示例。图10是根据第二实施例的修改示例的半导体系统的示意性配置图。在第二实施例的修改示例中,多个半导体装置经由网络900可通信地彼此连接。
在图10中,半导体系统20具有半导体装置100A、100B和100C。半导体装置100A-100C连接到网络900并且可通信地彼此连接。
半导体装置100A包括通信装置11A、主控制装置110A和子控制装置120A作为主要组件,并且各个组件具有与包括在参照图9描述的呼吸辅助系统2中的半导体装置100的配置和功能相同的配置和功能。然而,通信装置11A具有当通过接收未授权访问来检测异常信号处理时通知另一半导体装置100B和100C检测到异常信号处理的功能。
此外,半导体装置100A具有当另一半导体装置100B(或100C)通知另一半导体装置100B(或100C)已经检测到异常信号处理时通过接收通知来重写主控制装置110A的程序的功能。也就是说,主控制装置110A还通过从另一半导体装置接收指明已检测到异常信号处理的信号,来向子控制装置120A输出触发信号。这样的功能可以通过例如CPU 117在预定条件下产生触发信号的配置来实现,如图4所示的示例。半导体装置100B和100C分别具有与半导体装置100A相同的配置和功能。
例如,如图10所示,如果半导体装置100A经由网络900接收到未授权访问99A,如果主控制装置110通过该未授权访问检测到异常信号处理,则半导体装置100A通过通信99B通知半导体装置100B已经检测到异常信号处理。同时,半导体装置100A通过通信99C向半导体装置100C通知已检测到异常信号处理的事实。已经从半导体装置100A接收到已经检测到异常信号处理的通知的半导体装置100B通过主控制装置110B向子控制装置120B输出触发信号。结果,半导体装置100B执行将主控制装置110B的程序重写为子程序的处理。类似地,半导体装置100C执行主控制装置110C向子控制装置120C输出触发信号以将主控制装置110C的程序重写为子程序的处理。
接下来,参考图11,将描述第二实施例的修改示例处理。图11是示出根据第二实施例的修改示例的半导体装置处理的流程图。构成半导体系统20的半导体装置执行图中所示的处理。为方便起见,下面的描述将作为由半导体装置100A执行的处理,但是半导体装置100B和100C也执行相同的处理。
首先,在检测到异常信号处理之后,半导体装置100A确定要输出到子控制装置120A的异常信号处理是否是由于半导体装置100A的主控制装置110A检测到的异常信号处理造成的,即,异常是否是其自身的异常(步骤S20)。
当确定异常是自身异常时(步骤S20:是),半导体装置100A执行向另一半导体装置通知异常的事务(步骤S21)。然后,为了重写其自己的主程序,执行参考图5描述的主程序重写例程S10(例程S10)。
另一方面,当从另一半导体装置接收到异常信号处理时,半导体装置100A不判断异常信号处理是其自身的异常(步骤S20:否)。在这种情况下,半导体装置100A执行主程序重写例程,用于在不通知其他装置的情况下重写其自己的主程序(例程S10)。
如上所述,当构成半导体系统20的任何半导体装置接收到未授权访问并且检测到异常信号处理时,半导体系统20将异常信号处理通知给另一半导体装置并且重写相应半导体装置的程序。结果,不仅在已经接收到未授权访问的半导体装置中,而且在未接收到未授权访问的半导体装置中,都可以预先避免来自外部的未经授权的攻击。即,根据第二实施例的修改示例,可以提供用于在抑制整个系统的未授权访问的同时保持所需功能的半导体装置等。
接下来,将描述第三实施例。根据第三实施例的呼吸辅助系统3的结构与根据第一实施例的呼吸辅助系统的结构不同。图12是根据第三实施例的半导体装置的示意性配置图。
根据本实施例的半导体装置103与根据第一实施例的半导体装置100的不同之处在于,其在主控制装置110和子控制装置120之间具有开关17。开关17是用于允许或不允许将从主控制装置110输出的触发信号传输到子控制装置120的开关。
考虑到主控制装置110可能已经被未经授权的访问篡改,开关17优选地被配置为不受主控制装置110的软件操作的影响。也就是说,开关17例如是由机械组件的组合构成的机械开关,或者是由诸如晶体管的电气组件的组合构成的开关。在半导体装置103中,开关17处于断开状态作为初始设置,即,主控制装置110输出的触发信号未被发送到子控制装置120的状态。当用户接受将开关的状态从断开切换到接通的操作时,开关17处于将触发信号发送到子控制装置120的状态。即,即使在检测到异常信号处理时,半导体装置103也不会重写主存储器112的程序,直到用户执行开关切换操作为止。
接下来,参考图13,将描述根据第三实施例的半导体装置的处理。图13是示出根据第三实施例的半导体装置处理的流程图。首先,当半导体装置103检测到异常信号处理时,在操作S30中执行用于指明异常信号处理的处理。具体地,例如,当检测到异常信号处理时,半导体装置103在显示装置15上显示已检测到异常信号处理的事实。备选地,半导体装置103经由通信装置11向用户或管理员通知已检测到异常信令处理的事实。结果,用户等可以选择与将由主控制装置110执行的程序重写到子程序中的处理不同的处理。
接下来,在操作S31中,半导体装置103接收开关17的操作,并基于开关17是否接通来确定操作。也就是说,当用户接通开关时(步骤S31:是),半导体装置103的触发信号从主控制装置110发送到子控制装置120。结果,半导体装置103执行上述步骤S10中的主程序重写例程。在完成主程序重写例程S10之后,半导体装置103结束处理。
在状态上,当用户没有接通开关时(步骤S31:否),半导体装置103确定是否已经接受另一处理(步骤S32)。这里,另一处理是与将存储在主控制装置110中的主程序重写为存储在子控制装置120中的子程序的处理不同的处理。例如,半导体装置103可以通过参考图7描述的重写装置700重写主存储器的程序。也就是说,用户可以将重写装置700连接到半导体装置103,而不是操作开关17。备选地,代替操作开关17,用户可以执行诊断半导体装置103是否被篡改的处理。备选地,用户可以执行关闭呼吸辅助系统3而不是操作开关17的操作。当半导体装置103接收到这样的另一处理时(S32:是),图中所示的处理终止,并且处理进入另一处理。另一方面,当半导体装置103没有接受另一处理时(步骤S32:否),处理返回到步骤S31并接受开关17的操作。
如上所述,根据与第三实施例有关的处理,半导体装置103可以向用户提供机会来选择与将由主控制装置110执行的程序重写为子程序的处理不同的处理。结果,半导体装置103可以执行主程序的检查、恢复等,而无需将主控制装置110的主程序重写到子程序。也就是说,半导体装置103可以接收恢复处理等,而不删除通信功能。
上面已经描述了第三实施例。根据第三实施例,可以提供一种半导体装置等,其在检测到诸如未授权访问的异常信号处理之后保持所需功能而不固定处理,并且同时抑制由于未授权访问等引起的系统故障的发生。
而且,可以使用各种类型的非暂时性计算机可读介质来存储上述程序并将其提供给计算机。非暂时性计算机可读介质包括各种类型的有形存储介质。非暂时性计算机可读介质的示例包括磁记录介质(例如,软盘、磁带、硬盘驱动器)、磁光记录介质(例如,磁光盘)、CD-ROM(只读存储器)CD-R、CD-R/W、固态存储器(例如,掩模ROM、PROM和EPROM(可擦除PROM)、闪存ROM和RAM(随机存取存储器))。该程序还可以通过各种类型的暂时性计算机可读介质提供给计算机。暂时性计算机可读介质的示例包括电信号、光信号和电磁波。暂时性计算机可读介质可以经由有线或无线通信路径(例如电线和光纤)将程序提供给计算机。
尽管已经基于实施例具体描述了由发明人做出的发明,但是本发明不限于已经描述的实施例,并且不用说,在不脱离其主旨的情况下可以进行各种修改。也就是说,上述半导体装置可以适用于具有通信功能的各种装置。

Claims (20)

1.一种半导体装置,包括:
主控制装置,具有:
主存储器,用于存储主程序,所述主程序用于接受外部信号;
触发信号输出电路,用于在与预置信号处理不同的异常信号处理被执行时输出触发信号,以及
触发信号获得电路,被耦合到所述主控制装置,用于获得所述触发信号,以及
子控制装置,具有子程序输出电路,所述子程序输出电路用于基于获得的所述触发信号将子程序输出到所述主控制装置。
2.根据权利要求1所述的半导体装置,还包括:
外部信号获得电路,用于获得所述外部信号,所述外部信号是通过与外部进行通信的外部通信而来的。
3.根据权利要求2所述的半导体装置,
其中,所述外部信号获得电路使用公共通信网络获得通过外部通信而来的所述外部信号。
4.根据权利要求2所述的半导体装置,
其中,所述外部信号获得电路根据预定标准获得通过外部通信而来的所述外部信号。
5.根据权利要求1所述的半导体装置,
其中,包括在所述子控制装置中的所述子程序输出电路基于获得的所述触发信号,来向所述主控制装置输出不接受所述外部信号的子程序。
6.根据权利要求1所述的半导体装置,
其中,所述子控制装置还包括:请求电路,用于在所述子控制电路获得所述触发信号时输出请求信号,所述请求信号用于请求所述主控制装置传送所述子程序。
7.根据权利要求6所述的半导体装置,
其中,所述主控制装置还包括:响应电路,用于在从所述子控制装置接收到所述请求信号之后向所述子控制装置输出对所述请求信号的响应信号,并且用于在输出所述响应信号之后获得所述子程序。
8.根据权利要求7所述的半导体装置,
其中,在所述子程序输出电路从所述主控制装置接收所述响应信号时,所述子程序输出电路将所述子程序输出到所述主控制装置。
9.根据权利要求8所述的半导体装置,还包括:
用于存储所述子程序的子存储装置,
其中,所述子控制装置包括用于控制所述子存储装置、以及用于将存储在所述子存储装置中的所述子程序提供给所述子程序输出电路的存储器控制电路。
10.根据权利要求1所述的半导体装置,
其中,所述主控制装置包括异常检测电路,所述异常检测电路用于在异常信号处理被执行时改变输出电压,以及
其中,所述触发信号输出电路基于所述异常检测电路的电压变化来输出所述触发信号。
11.根据权利要求1所述的半导体装置,
其中,当获得所述子程序时,所述主控制装置将存储在所述主存储器中的主程序重写到所述子程序。
12.根据权利要求11所述的半导体装置,
其中,所述主控制装置还包括指明电路,所述指明电路用于在所述触发信号被输出时输出指明信号,所述指明信号指明已经输出了所述触发信号。
13.根据权利要求12所述的半导体装置,
其中,所述指明电路经由通信装置将所述指明信号发送到外部。
14.根据权利要求12所述的半导体装置,
其中,所述主控制装置通过从另一半导体装置接收所述指明信号来将所述触发信号输出到所述子控制装置。
15.根据权利要求12所述的半导体装置,还包括:
传输开关,用于允许所述触发信号至所述子控制装置的传输。
16.根据权利要求1所述的半导体装置,
其中,所述子控制装置包括重置端子,所述重置端子用于接收将所述子控制装置保持在非操作状态,以及
其中,所述主控制装置包括程序更新电路,所述程序更新电路用于在所述子控制装置处于非操作状态时接收存储在所述主存储器中的程序的更新。
17.根据权利要求1所述的半导体装置,还包括:
通信装置,用于执行外部通信,并且将所述外部信号提供给所述主控制装置,以及
其中,当所述主存储器的主程序被重写到所述子程序时,所述主控制装置指示所述通信装置不向所述主控制装置提供所述外部信号。
18.根据权利要求17所述的半导体装置,
其中,在所述主存储器的主程序已被重写到所述子程序时,所述主控制装置指示所述通信装置发送指明信号,所述指明信号指明所述主存储器的所述主程序已被重写到所述子程序,所述指明信号表明所述主程序已被重写到预置目的地。
19.一种半导体系统,包括可通信地彼此耦合的多个半导体装置,每个半导体装置包括:
主控制器,具有:
主存储器,用于存储主程序,所述主程序用于接收外部信号,以及
触发信号输出电路,用于在与预置信号处理不同的信号处理被执行时输出触发信号,以及
子控制器,被耦合到所述主控制器,并且具有:
触发信号获得电路,用于获得所述触发信号,以及
子程序输出电路,用于基于获得的所述触发信号来向所述主控制器输出子程序,其中,所述多个半导体装置中的一个半导体装置基于所述触发信号向另一个半导体装置发送通知。
20.一种程序,用于使计算机执行半导体装置的保护方法,所述保护方法包括:
主程序存储步骤,用于在主控制装置中存储主程序,所述主程序用于接受外部信号,
子程序存储步骤,用于在耦合到所述主控制装置的子控制装置中存储子程序,
触发信号输出步骤,用于当在所述主控制装置中执行与预置信号处理不同的信号处理时,向所述子控制装置输出触发信号;以及
子程序输出步骤,用于在所述子控制装置中基于所述触发信号将所述子程序输出到所述主控制装置。
CN201910832760.1A 2018-11-02 2019-09-04 半导体装置、半导体系统和程序 Pending CN111143248A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-207093 2018-11-02
JP2018207093A JP2020071797A (ja) 2018-11-02 2018-11-02 半導体装置、半導体システムおよびプログラム

Publications (1)

Publication Number Publication Date
CN111143248A true CN111143248A (zh) 2020-05-12

Family

ID=70458116

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910832760.1A Pending CN111143248A (zh) 2018-11-02 2019-09-04 半导体装置、半导体系统和程序

Country Status (3)

Country Link
US (1) US11599631B2 (zh)
JP (1) JP2020071797A (zh)
CN (1) CN111143248A (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7411467B2 (ja) * 2020-03-19 2024-01-11 株式会社デンソーテン 電子制御装置及びプログラム書き換え制御方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11338783A (ja) 1998-05-21 1999-12-10 Canon Inc マイクロコンピュータ装置およびマイクロコンピュータ装置を備えた光学機器
JP2004348546A (ja) 2003-05-23 2004-12-09 Canon Finetech Inc 制御プログラム切替え装置及びその方法
JP5609810B2 (ja) * 2011-07-29 2014-10-22 ブラザー工業株式会社 電子機器、画像形成装置
JP2017071187A (ja) * 2015-10-09 2017-04-13 キヤノン株式会社 節電モードを有する装置、該装置の制御方法及びプログラム。

Also Published As

Publication number Publication date
US20200143048A1 (en) 2020-05-07
US11599631B2 (en) 2023-03-07
JP2020071797A (ja) 2020-05-07

Similar Documents

Publication Publication Date Title
US9990325B2 (en) Universal serial bus (USB) filter hub malicious code prevention system
TWI386828B (zh) 周邊裝置鎖定機制
US20060150255A1 (en) Manipulation-protected microcontroller system
US10387260B2 (en) Reboot system and reboot method
US20190034620A1 (en) System shipment lock
CN111143248A (zh) 半导体装置、半导体系统和程序
CN114329496A (zh) 操作系统的可信启动方法和电子设备
US10108469B2 (en) Microcomputer and microcomputer system
CN115314416A (zh) 网卡状态自动检测方法、装置、电子设备及存储介质
US20210073397A1 (en) Computing device and method for operating same
US10289851B2 (en) Semiconductor device and access restriction method
WO2015188511A1 (zh) NAND Flash操作处理方法、装置及逻辑器件
JP6972437B2 (ja) 電子制御ユニット及びプログラム
US20140344916A1 (en) Method for operating a communication module, and communication module
TW201305842A (zh) 在儲存裝置上即時監控檔案系統以維護安全的方法與裝置
US11921599B2 (en) Control method and electronic device
EP3477468B1 (en) Method and system for binding chassis and components
JP2013050839A (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
US11461490B1 (en) Systems, methods, and devices for conditionally allowing processes to alter data on a storage device
TWI415001B (zh) 具有鑑別功能之嵌入式系統及嵌入式系統之鑑別方法
CN111726270B (zh) 存储器系统及控制系统
JP6992975B2 (ja) 情報転送装置、情報転送方法及び情報転送プログラム
EP3667533A1 (en) Method for securing a system in case of an undesired power-loss
CN110555322B (zh) 连接设备限制系统
JP2010277143A (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