CN112543917A - 中断控制装置、中断控制方法及中断控制程序 - Google Patents

中断控制装置、中断控制方法及中断控制程序 Download PDF

Info

Publication number
CN112543917A
CN112543917A CN201880095676.XA CN201880095676A CN112543917A CN 112543917 A CN112543917 A CN 112543917A CN 201880095676 A CN201880095676 A CN 201880095676A CN 112543917 A CN112543917 A CN 112543917A
Authority
CN
China
Prior art keywords
time
interrupt
processing
unit
preparation
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.)
Withdrawn
Application number
CN201880095676.XA
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of CN112543917A publication Critical patent/CN112543917A/zh
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/368Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control
    • G06F13/372Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control using a time-dependent priority, e.g. individually loaded time counters or time slot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30032Movement instructions, e.g. MOVE, SHIFT, ROTATE, SHUFFLE
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)

Abstract

中断处理程序部(130)在中断时刻使定时器中断发生,并且执行中断准备处理。等待时间测定部(142)测定在中断准备处理完成之后直至发生开始请求(201)为止的时间作为等待时间。时刻计算部(441)根据由等待时间测定部(142)测定的等待时间来计算扣除时间,计算将从等待时间减去扣除时间得到的时间与中断准备处理的处理时间进行了相加的准备时间。时刻计算部(441)将从下次的开始请求(201)的时刻提前准备时间的时刻作为下次的中断时刻而存储到时刻存储部(442)。

Description

中断控制装置、中断控制方法及中断控制程序
技术领域
本发明涉及中断控制装置、中断控制方法及中断控制程序。
背景技术
通过周期性地进行来自控制对象装置的信息输入、运算以及向控制对象装置的信息输出这样的一连串的控制处理,实现机器的控制。因此,需要使成为开始请求的信号周期性地发生,在该开始请求的定时(timing)开始控制处理。而且,要求从该开始请求的定时起低延迟地开始控制处理。
通过利用中断处理来安装控制处理,并在开始请求的定时使中断发生,从而能够比执行中的应用更优先地开始控制处理。但是,在中断处理程序(interrupt handler)的入口进行的上下文(context)的保存这样的准备处理成为从开始请求的定时起控制处理的开始所延迟的原因。该准备处理也称为中断处理程序入口处理或者中断准备处理。
这样,在从开始请求的定时起开始中断准备处理时,控制处理的开始有可能会延迟。因此,以往提出了如下方法:测定中断准备处理所花费的时间,比开始请求提前该时间量地开始中断准备处理。
在专利文献1中,公开了如下技术:为了从开始时刻起低延迟地开始目标的处理,在从开始时刻提前中断予约时间量的时刻使定时器中断发生。
现有技术文献
专利文献1:日本特开2013-097659号公报
发明内容
在专利文献1中,为了在发生开始请求之前结束准备处理,需要事先测定准备处理的处理时间。另外,在专利文献1中,针对准备处理的处理时间以固定值来设定某种程度的余量,因此导致产生等待时间。另外,在专利文献1中,没有对该等待时间进行调节的构造。
本发明的目的在于,不用事先测定准备处理的处理时间,以尽可能紧接在开始请求之前结束准备处理的方式,调节使准备处理开始的中断时刻。
本发明所涉及的中断控制装置响应于定期地发生的开始请求而开始中断处理,其中,
所述中断控制装置具备:
时刻存储部,存储使所述中断处理的准备用的中断准备处理开始的中断时刻;
中断处理程序部,在所述中断时刻使定时器中断发生,并且执行所述中断准备处理;
等待时间测定部,测定在所述中断准备处理完成之后直至发生所述开始请求为止的时间作为等待时间;以及
时刻计算部,根据所述等待时间来计算扣除时间,并计算将从所述等待时间减去所述扣除时间得到的时间与所述中断准备处理的处理时间进行了相加的准备时间,将从下次的开始请求的时刻提前所述准备时间的时刻作为下次的中断时刻而存储到所述时刻存储部。
根据本发明所涉及的中断控制装置,时刻计算部计算将从等待时间减去扣除时间得到的时间与中断准备处理的处理时间进行了相加的准备时间,将从下次的开始请求的时刻提前所述准备时间的时刻作为下次的中断时刻。根据本发明所涉及的中断控制装置,根据等待时间而准备时间变短,能够使中断时刻接近开始请求的时刻。因此,根据本发明所涉及的中断控制装置,能够以紧接在开始请求之前结束中断准备处理的方式设定中断时刻。
附图说明
图1是实施方式1所涉及的中断控制系统以及中断控制装置的硬件结构图。
图2是实施方式1所涉及的中断控制装置的功能结构图。
图3是示出实施方式1所涉及的中断控制装置的动作的流程图。
图4是实施方式1所涉及的中断管理处理的时序图。
图5是实施方式1所涉及的中断管理处理的详细的流程图。
图6是实施方式1所涉及的定时预测处理的详细的流程图。
图7是实施方式1所涉及的控制处理的详细的流程图。
图8是与实施方式1所涉及的中断管理处理比较的时序图的例子。
图9是与实施方式1所涉及的中断管理处理比较的时序图的另一例。
图10是实施方式2所涉及的中断控制装置的功能结构图。
图11是实施方式2所涉及的中断管理处理的详细的流程图。
图12是实施方式3所涉及的中断控制系统以及中断控制装置的硬件结构图。
图13是实施方式3所涉及的中断控制装置的功能结构图。
图14是示出实施方式3所涉及的中断控制装置的核心0的动作的流程图。
图15是实施方式3所涉及的周期中断管理处理的详细的流程图。
图16是示出实施方式3所涉及的中断控制装置的核心1的动作的流程图。
(符号说明)
1:处理器;2:存储器;3:周期信号接口;4:控制对象接口;5:多核处理器;6:核心0;7:核心1;8:共享存储器;100、100a、100b:中断控制装置;110、110x、110y:OS执行部;120、120x、120y:应用处理部;130:中断处理程序部;130x:周期中断处理程序部;130y:定时器中断处理程序部;140:中断处理部;140x:周期中断处理部;140y:定时器中断处理部;141:中断管理部;141x:周期中断管理部;141y:定时器中断管理部;142:等待时间测定部;143:开始请求等待部;144:定时预测部;441:时刻计算部;442:时刻存储部;145、145x、145y:控制处理部;451:控制信息输入部;452、452x、452y:控制处理运算部;453:结果输出部;146:违反处理部;147:开始请求部;200:周期信号装置;201:开始请求;300:控制对象装置;500、500b:中断控制系统;t1:开始时刻;t2:结束时刻。
具体实施方式
以下,使用附图来说明本发明的实施方式。此外,在各图中,对相同或者相当的部分附加同一符号。在实施方式的说明中,关于相同或者相当的部分,适当省略或者简化说明。
实施方式1.
在本实施方式中,说明根据定期地发生的开始请求而开始中断处理的中断控制装置100。中断控制装置100响应于从外部周期性地输入的开始请求,开始控制处理作为中断处理。特别是,在本实施方式中,说明根据本次的定时器中断发生时的等待时间的测定值来预测下次的开始请求的事先发生的定时器中断的中断时刻的形态。此处,将中断时刻还称为中断定时。
***结构的说明***
图1是本实施方式所涉及的中断控制系统500以及中断控制装置100的硬件结构图。另外,图2是本实施方式所涉及的中断控制装置100的功能结构图。
使用图1以及图2,说明本实施方式所涉及的中断控制系统500以及中断控制装置100的结构。
中断控制系统500具备中断控制装置100、周期信号装置200以及控制对象装置300。中断控制装置100取得来自周期信号装置200的周期信号作为开始请求201,以该开始请求201为契机进行控制处理,对控制对象装置300进行控制。周期信号装置200针对中断控制装置100,周期性地输入开始请求201。另外,控制对象装置300根据与中断控制装置100之间的控制信息的输入输出而进行动作。
中断控制装置100是计算机。中断控制装置100具备处理器1,并且具备存储器2、周期信号接口3以及控制对象接口4这样的其它硬件。处理器1是单核处理器,是进行控制处理的元件。存储器2是存储控制处理所需的数据的元件。周期信号接口3是从外部的周期信号装置200取得开始请求的元件。控制对象接口4是与外部的控制对象装置300之间进行控制信息的输入输出的元件。
以下,详细地说明中断控制装置100的硬件结构。
作为其它硬件,中断控制装置100除了具备上述的硬件以外,也可以还具备辅助存储装置、输入接口、输出接口、通信装置这样的硬件。处理器1经由信号线而与其它硬件连接,控制这些其它硬件。
作为功能要素,中断控制装置100具备OS执行部110、应用处理部120、中断处理程序部130以及中断处理部140。关于中断处理部140的详细的功能要素,在后面叙述。
中断处理程序部130和中断处理部140的功能主要通过软件来实现。此外,中断处理部140之中的后述的时刻存储部442设置于存储器2。另外,控制信息输入部451以及结果输出部453也可以设置于控制对象接口4。
处理器1是执行中断控制程序的装置。中断控制程序是实现中断处理程序部130和中断处理部140的功能的程序。
处理器1是进行运算处理的IC(Integrated Circuit,集成电路)。处理器1的具体例是CPU、DSP(Digital Signal Processor,数字信号处理器)、GPU(Graphics ProcessingUnit,图形处理单元)。
存储器2是临时地存储数据的存储装置。存储器2的具体例是SRAM(Static RandomAccess Memory,静态随机存取存储器)或者DRAM(Dynamic Random Access Memory,动态随机存取存储器)。
辅助存储装置是保管数据的存储装置。辅助存储装置的具体例是HDD。另外,辅助存储装置也可以是SD(日本注册商标)存储卡、CF、NAND闪存、软盘、光盘、紧致盘(CompactDisk)、蓝光(日本注册商标)盘、DVD这样的可移动存储介质。此外,HDD是Hard Disk Drive(硬盘驱动器)的缩写。SD(日本注册商标)是Secure Digital(安全数字)的缩写。CF是Compact Flash(紧致闪存,日本注册商标)的缩写。DVD是Digital Versatile Disk(数字多功能盘)的缩写。
输入接口是与鼠标、键盘或者触摸面板这样的输入装置连接的端口。输入接口具体而言是USB(Universal Serial Bus,通用串行总线)端子。此外,输入接口也可以是与LAN(Local Area Network,局域网)连接的端口。
输出接口是显示器这样的输出设备的线缆所连接的端口。输出接口具体而言是USB端子或者HDMI(日本注册商标)(High Definition Multimedia Interface,高清晰度多媒体接口)端子。显示器具体而言是LCD(Liquid Crystal Display,液晶显示器)。
通信装置具有接收器和发射器。通信装置与LAN、因特网或者电话线路这样的通信网连接。通信装置具体而言是通信芯片或者NIC(Network Interface Card,网络接口卡)。
中断控制程序被处理器1读入并被处理器1执行。在存储器中不仅存储有中断控制程序,还存储有OS(Operating System,操作系统)。处理器1一边执行OS一边执行中断控制程序。中断控制程序以及OS也可以被存储于辅助存储装置。存储于辅助存储装置的中断控制程序以及OS被加载到存储器2并被处理器1执行。此外,中断控制程序的一部分或者全部也可以被编入到OS。
中断控制装置100也可以具备代替处理器1的多个处理器。这些多个处理器分担中断控制程序的执行。各个处理器是与处理器1同样地执行中断控制程序的装置。
由中断控制程序利用、处理或者输出的数据、信息、信号值以及变量值被存储于存储器2、辅助存储装置、或者处理器1内的寄存器或高速缓存存储器。
也可以将中断控制装置100的各部的“部”换成“处理”、“过程”或者“工序”。中断控制装置100的各部除了中断处理程序部130以外,还有后述的中断管理部141、等待时间测定部142、开始请求等待部143、定时预测部144的时刻计算部441以及控制处理部145的控制处理运算部452。即,中断控制装置100的各部是中断处理程序部130、中断管理部141、等待时间测定部142、开始请求等待部143、时刻计算部441以及控制处理运算部452。
另外,也可以将中断处理程序处理、中断管理处理、等待时间测定处理、开始请求等待处理、定时预测处理、控制处理、时刻计算处理以及控制处理运算处理的“处理”换成“程序”、“程序产品”或者“记录有程序的计算机可读取的存储介质”。
中断控制程序使计算机执行将上述各部的“部”换成“处理”、“过程”或者“工序”的各处理、各过程或者各工序。另外,中断控制方法是通过由中断控制装置100执行中断控制程序而实施的方法。
也可以将中断控制程序储存到计算机可读取的记录介质来提供。另外,中断控制程序也可以作为程序产品来提供。
***功能的概要说明***
中断控制装置100具备OS执行部110、应用处理部120、中断处理程序部130以及中断处理部140。
中断处理程序部130在中断时刻使定时器中断发生,并且执行中断准备处理。具体而言,中断处理程序部130在存储于时刻存储部442的中断时刻使定时器中断发生。中断处理程序部130使定时器中断发生,中断由应用处理部120进行的应用的执行,执行中断准备处理,执行中断处理部140的中断管理部141的功能。
中断处理部140具备中断管理部141、等待时间测定部142、开始请求等待部143、定时预测部144以及控制处理部145。中断管理部141调用等待时间测定部142、定时预测部144、控制处理部145的功能。
等待时间测定部142测定在中断准备处理完成之后直至发生开始请求201为止的时间作为等待时间。具体而言,等待时间测定部142在中断准备处理完成之后,取得当前时刻作为开始时刻,将发生了开始请求201的时刻作为结束时刻。然后,等待时间测定部142测定从开始时刻至结束时刻为止的时间作为等待时间。
开始请求等待部143等待作为开始请求201的周期信号,向等待时间测定部142传达开始请求201的发生。
定时预测部144具备时刻计算部441和时刻存储部442。
时刻计算部441根据由等待时间测定部142测定的等待时间来计算扣除时间,计算将从等待时间减去扣除时间得到的时间与中断准备处理的处理时间进行相加而得到的准备时间。然后,时刻计算部441将从下次的开始请求201的时刻提前准备时间的时刻、即比下次的开始请求的时刻提前了准备时间的时刻作为下次的中断时刻而存储到时刻存储部442。时刻计算部441将对等待时间乘以表示比例的阈值而得到的时间计算为扣除时间。阈值被存储于存储器2。具体而言,如二分之一、三分之一或者五分之三那样预先确定阈值。
时刻存储部442存储使中断处理的准备用的中断准备处理开始的中断时刻。时刻存储部442将中断处理程序部130接下来使定时器中断发生的定时设定为中断时刻。
控制处理部145具备控制信息输入部451、控制处理运算部452以及运算结果输出部453。控制信息输入部451从控制对象装置300取得控制对象信息。控制处理运算部452根据控制对象信息进行运算。运算结果输出部453将运算结果输出到控制对象装置300。
***动作的说明***
图3是示出本实施方式所涉及的中断控制装置100的动作的流程图。
在步骤S1中,由OS执行部110启动OS。
在步骤S2中,由应用处理部120执行应用程序。
在步骤S3中,中断处理程序部130在设定于时刻存储部442的中断时刻使定时器中断发生,执行中断准备处理。
在步骤S4中,中断处理部140执行中断管理处理。
在步骤S5中,中断处理程序部130执行中断处理程序出口处理。
之后,返回到由应用处理部120实施的应用程序的执行、即步骤S2。
图4是本实施方式所涉及的中断处理的时序图。在图4中,在(A1)的中断处理程序出口处理完成之后,执行(A2)的应用处理。之后,示出(A3)的中断准备处理被执行的状态。
图5是本实施方式所涉及的步骤S4的中断管理处理的详细的流程图。
在中断管理处理中,从中断管理部141调用作为中断管理处理而执行的各功能结构部。
在步骤S41中,等待时间测定部142取得当前时刻作为开始时刻。在图4的例子中,取得开始时刻t1。
在步骤S42中,开始请求等待部143执行检查是否有来自周期信号装置200的开始请求201的等待处理。如果有开始请求201,则进入到步骤S43。如果没有开始请求201,则直至有开始请求201为止重复步骤S42。
在步骤S43中,等待时间测定部142取得当前时刻作为结束时刻。在图4的例子中,取得结束时刻t2。等待时间测定部142根据开始时刻t1与结束时刻t2之差,计算等待时间Tt。
在步骤S44中,定时预测部144执行对定时器中断的定时即中断时刻tw进行预测的定时预测处理。
在步骤S45中,控制处理部145执行作为中断处理的(A4)的控制处理。
图6是本实施方式所涉及的步骤S44的定时预测处理的详细的流程图。
在步骤S441中,时刻计算部441根据由等待时间测定部142测定的等待时间Tt,计算扣除时间Ts。具体而言,时刻计算部441将对等待时间Tt乘以表示比例的阈值而得到的时间计算为扣除时间Ts。例如,时刻计算部441将对等待时间Tt乘以二分之一而得到的时间、即等待时间Tt的一半的时间计算为扣除时间Ts。此外,时刻计算部441也可以从等待时间测定部142仅取得开始时刻t1和结束时刻t2,时刻计算部441根据开始时刻t1与结束时刻t2之差来计算等待时间Tt。
在步骤S442中,时刻计算部441计算将从等待时间Tt减去扣除时间Ts得到的时间与中断准备处理的处理时间Te进行了相加的准备时间Tj。此外,也可以在准备时间Tj中预先包括取得开始时刻t1的处理时间。
在步骤S443中,时刻计算部441将从下次的开始请求的时刻tn提前准备时间Tj量的时刻tw设为下次的中断时刻。换言之,时刻计算部441将比下次的开始请求的时刻tn提前了准备时间Tj的时刻设为下次的中断时刻tw。时刻计算部441将中断时刻tw作为下次的定时器中断的中断定时而存储到时刻存储部442。
图7是本实施方式所涉及的步骤S45的控制处理的详细的流程图。
在步骤S451中,控制信息输入部451从控制对象装置300取得控制信息。
在步骤S452中,控制处理运算部452使用控制信息来执行控制处理的运算。
在步骤S453中,运算结果输出部453对控制对象装置300输出运算结果。
***本实施方式的效果的说明***
图8是用于与本实施方式所涉及的中断处理进行比较的时序图的例子。图8示出使定时器中断与开始请求同时地发生而开始控制处理的情况的时序图。在图8中,在(B1)的中断处理程序出口处理完成之后,执行(B2)的应用处理。之后,执行(B3)的中断准备处理,开始(B4)的控制处理。因此,在图8的时序图中,取决于中断准备处理的处理时间,控制处理的开始定时发生延迟。
图9是用于与本实施方式所涉及的中断处理进行比较的时序图的另一例。在图9中,示出预测定时器中断的定时并使定时器中断在比开始请求提前的时刻发生的手法。在图9中,(C1)是中断处理程序出口处理,(C2)是应用处理。在图9的手法中,事先测定中断准备处理的处理时间。然后,使定时器中断比开始请求提前对该测定时间相加等待时间α得到的时间量地发生。即,在图9的手法中,使定时器中断比开始请求提前对(C3)的中断准备处理的执行时间相加等待时间α得到的时间地发生。在图9中,在发生定时器中断时,执行(C3)的中断准备处理,在等待了等待时间α之后,执行(C4)的控制处理。然而,为了与中断准备处理的处理时间的变更对应,作为等待时间α必须确保某种程度的期间。
图4的本实施方式所涉及的中断处理的时序图。在实施方式所涉及的中断处理中,用于对下一周期的中断时刻进行设定的准备时间Tj是从上次的准备时间Tj’减去等待时间Tt的一半的值而得到的时间。因此,针对每个周期会使等待时间Tt减半,能够使准备时间Tj也针对每个周期而变短。
如以上那样,在本实施方式中,通过具备等待时间测定部和定时预测部,即便在中断准备处理的执行时间有变更的情况下也无需再次测定。而且,在图9的比较例中,需要对中断准备处理的处理时间相加等待时间α来设定定时器中断的中断时刻。但是,在本实施方式中,能够以紧接在开始请求之前进入等待状态的方式设定定时器中断的中断时刻。
另外,根据本实施方式所涉及的中断控制装置,不受事先测定的环境和执行控制处理的环境中的执行时间的差异所致的影响,而能够以尽可能紧接在开始请求之前结束准备处理的方式设定开始准备处理的定时。
***其它结构***
<变形例1>
在本实施方式中,从中断控制装置100的外部的周期信号装置向中断控制装置输入开始请求。但是,也可以并非从中断控制装置的外部输入开始请求,而是在中断控制装置内具有发出周期性的开始请求的构造。
<变形例2>
在本实施方式中,作为准备处理而说明了中断准备处理。除此以外,在所需的准备处理是从存储器加载数据这样的处理的情况下也可得到同样的效果。
<变形例3>
在本实施方式的定时预测处理中,进行针对每个周期使等待时间减半的处理,但只要针对每个周期使等待时间减少,则也可以并非是减半。另外,也可以从上次的中断定时直接减去所测定的等待时间。例如,能够通过将阈值设定为0而将扣除时间设为0,从中断定时直接减去等待时间。根据该变形例,能够期待在下一周期消除等待时间。另外,也可以将过去多次的等待时间以能够参照的方式进行保存,根据过去多次的等待时间来计算下一周期的中断定时。另外,也可以事先决定等待时间的容许时间,在等待时间收敛于该容许时间的情况下,将定时器中断的设定值设为与上次的中断定时同样的值。由此,能够在将等待时间抑制到容许时间内的基础上降低在等待时间测定开始时已经发出开始请求的可能性。
<变形例4>
在本实施方式中,中断控制装置100的各部的功能通过软件来实现。作为变形例,中断控制装置100的各部的功能也可以通过硬件来实现。此时,中断控制装置100代替处理器1而具备电子电路。
电子电路是实现中断控制装置100的各部的功能的专用的电子电路。
关于电子电路,具体而言是单一电路、复合电路、被编程的处理器、被并行编程的处理器、逻辑IC、GA、ASIC或者FPGA。GA是Gate Array(门阵列)的缩写。ASIC是ApplicationSpecific Integrated Circuit(专用集成电路)的缩写。FPGA是Field-Programmable GateArray(现场可编程门阵列)的缩写。
中断控制装置100的各部的功能既可以通过1个电子电路来实现,也可以分散到多个电子电路来实现。
作为其它的变形例,也可以是中断控制装置100的各部的一部分功能通过电子电路来实现,剩余的功能通过软件来实现。
处理器和电子电路各自也被称为处理电路系统。换言之,在中断控制装置100中,中断控制装置100的各部的功能通过处理电路系统来实现。
实施方式2.
在本实施方式中,主要说明与实施方式1不同的点。此外,有时对与实施方式1同样的结构附加同一符号,并省略其说明。
在实施方式1中,以从所测定的等待时间使下一周期的等待时间减少的方式设定中断定时。此时,有在等待时间的测定开始时已经发出开始请求的情况。将在等待时间的测定开始时已经发出开始请求的情况称为违反。在本实施方式中,中断控制装置100a具备在下一周期不会使违反发生的构造。
***动作的说明***
使用图10,说明实施方式2所涉及的中断控制装置100a的功能结构。
本实施方式的中断控制装置100a除了实施方式1的中断控制装置100的功能结构以外,还具备违反处理部146。违反处理部146具有违反检测功能以及违反时的中断时刻计算功能。违反处理部146在中断准备处理完成之后,在取得开始时刻之前判定是否发生了开始请求。违反处理部146在发生了开始请求的情况下使下次的准备时间与上次的准备时间相比增加。违反处理部146使用增加后的下次的准备时间,设定下次的中断时刻。
图11是本实施方式所涉及的中断管理处理的详细的流程图。
在步骤S46中,违反处理部146判定是否检测到违反。违反处理部146在紧接在定时器中断之后检查是否有开始请求,从而检测是否发生了违反。在未检测到违反的情况下,处理进入到步骤S41。步骤S41至步骤S45的处理与图5的步骤S41至步骤S45的处理相同。
另一方面,在检测到违反的情况下,处理进入到步骤S47。
在步骤S47以及步骤S46中,违反处理部146使设定了上次中断时刻tw时的准备时间Tj增加,使用增加后的准备时间来设定下次的中断时刻。然后,违反处理部146将下次的中断时刻存储到时刻存储部442。
***本实施方式的效果的说明***
根据本实施方式所涉及的中断控制装置,违反处理部在检测到违反时,使上次的准备时间增加,利用增加后的准备时间来设定定时器中断。因此,能够在下一周期尝试从违反的恢复。另外,一旦发生了违反的情况下在其以后的周期中不重复违反,而能够以从违反恢复的方式进行中断定时的计算。
实施方式3.
在本实施方式中,主要说明与实施方式1不同的点。此外,有时对与实施方式1同样的结构附加同一符号,并省略其说明。
在实施方式1中,以处理器1是单核处理器的情况为前提进行了说明。在本实施方式中,说明多核处理器5是具备核心0和核心1的多处理器且由核心0和核心1对控制处理进行并行处理的中断控制系统500b以及中断控制装置100b。在核心0中周期性地发生使控制处理开始的周期中断,紧接在其之后从核心0向核心1发出控制处理的开始请求201,开始并行处理。
***结构的说明***
使用图12,说明本实施方式所涉及的中断控制系统500b以及中断控制装置100b的硬件结构。
中断控制装置100b具备多核处理器5、共享存储器8、控制对象接口4。在多核处理器5中搭载作为进行控制处理的元件的核心0 6以及预测中断定时的核心1 7。共享存储器8是用于在多核之间共享控制处理所需的数据的元件。
使用图13,说明本实施方式所涉及的中断控制装置100b的功能结构。
中断控制装置100b包括核心0 6和核心1 7。
核心0具备OS执行部110x、应用处理部120x、周期中断处理程序部130x以及周期中断处理部140x。周期中断处理程序部130x在控制处理的开始的定时使周期中断发生,调用周期中断管理部141x。通过周期中断,周期性地执行控制处理。周期中断处理部140x具备周期中断管理部141x、控制处理部145x以及开始请求部147。周期中断管理部141x调用开始请求部147和控制处理部145x。开始请求部147向核心1通知控制处理的开始请求。控制处理部145x具备控制信息输入部451、控制处理运算部452x以及运算结果输出部453。控制处理运算部452x执行对核心0分配的控制处理,一边与核心1的控制处理运算部452y共享数据一边执行控制处理。
核心1具备OS执行部110y、应用处理部120y、定时器中断处理程序部130y以及定时器中断处理部140y。定时器中断管理部141y中的控制处理部145y的控制处理运算部452y执行对核心1分配的控制处理,一边与核心0的控制处理运算部452x共享数据一边执行控制处理。
***动作的说明***
图14是示出本实施方式所涉及的中断控制装置100b的核心0的动作的流程图。
步骤S10至步骤S11与图3的步骤S1至步骤S2相同。
在步骤S12中,通过周期中断处理程序部130x发生周期中断,周期中断处理程序部130x执行周期中断处理程序入口处理。
之后,在步骤S13中,周期中断管理部141x执行周期中断管理处理。
之后,在步骤S14中,通过周期中断处理程序部130x执行周期中断处理程序出口处理。
图15是本实施方式所涉及的周期中断管理处理的详细的流程图。
在周期中断管理处理中,从周期中断管理部141x调用作为周期中断管理处理而执行的各功能结构部。
在步骤S130中,开始请求部147对核心1发出开始请求。
在步骤S131中,控制处理部145x执行控制处理。
图16是示出本实施方式所涉及的中断控制装置100b的核心1的动作的流程图。
步骤S20至步骤S24与图3的步骤S1至步骤S5相同。在图16中,将中断准备处理记载为定时器中断处理程序入口处理。
***本实施方式的效果的说明***
本实施方式所涉及的中断控制装置100b具备多核处理器,该多核处理器具有对中断处理进行并行处理的两个处理器。并且,作为两个处理器中的一个处理器的核心0具备定期地输出开始请求的开始请求部。另外,作为两个处理器中的另一个处理器的核心1具备时刻存储部、定时器中断的中断处理程序部、等待时间测定部以及时刻计算部。
在本实施方式中,在包含多核处理器的中断控制装置100b中也能够得到与实施方式1同样的效果。即,能够以紧接在周期性的开始请求之前进入等待状态的方式设定定时器中断的中断时刻。
***其它结构***
与实施方式1的变形例同样地,在实施方式2、3中也能够变形。
在以上的实施方式1至3中,将中断控制装置的各部设为独立的功能块而进行了说明。但是,中断控制装置的结构也可以并非是上述实施方式那样的结构。关于中断控制装置的功能块,只要能够实现在上述实施方式中说明的功能,则可以是任意的结构。另外,中断控制装置也可以并非是1个装置而是由多个装置构成的系统。
另外,也可以将实施方式1至3中的多个部分进行组合来实施。或者,也可以实施这些实施方式中的1个部分。此外,也可以将这些实施方式整体地或者部分地以一些方式组合来实施。
即,在实施方式1至3中,能够进行各实施方式的自由的组合、或者各实施方式的任意的结构要素的变形、或者各实施方式中的任意的结构要素的省略。
此外,上述实施方式在本质上只是优选的例示,并非意图限制本发明的范围、本发明的应用物的范围以及本发明的用途的范围。上述实施方式根据需要能够进行各种变更。

Claims (8)

1.一种中断控制装置,响应于定期地发生的开始请求而开始中断处理,其中,
所述中断控制装置具备:
时刻存储部,存储使所述中断处理的准备用的中断准备处理开始的中断时刻;
中断处理程序部,在所述中断时刻使定时器中断发生,并且执行所述中断准备处理;
等待时间测定部,测定在所述中断准备处理完成之后直至发生所述开始请求为止的时间作为等待时间;以及
时刻计算部,根据由所述等待时间测定部测定的等待时间来计算扣除时间,并计算将从所述等待时间减去所述扣除时间得到的时间与所述中断准备处理的处理时间进行了相加的准备时间,将从下次的开始请求的时刻提前所述准备时间的时刻作为下次的中断时刻而存储到所述时刻存储部。
2.根据权利要求1所述的中断控制装置,其中,
所述时刻计算部计算对所述等待时间乘以表示比例的阈值而得到的时间作为所述扣除时间。
3.根据权利要求2所述的中断控制装置,其中,
所述阈值是二分之一。
4.根据权利要求1至3中的任意一项所述的中断控制装置,其中,
所述等待时间测定部在所述中断准备处理完成之后,取得当前时刻作为开始时刻,将发生所述开始请求的时刻作为结束时刻,测定从所述结束时刻至所述开始时刻为止的时间作为所述等待时间。
5.根据权利要求4所述的中断控制装置,其中,
所述中断控制装置具备违反处理部,在所述中断准备处理完成之后,在取得所述开始时刻之前所述违反处理部判定是否发生所述开始请求,在发生所述开始请求的情况下使下次的准备时间与所述准备时间相比增加。
6.根据权利要求1至5中的任意一项所述的中断控制装置,其中,
所述中断控制装置具备多核处理器,该多核处理器具备对所述中断处理进行并行处理的两个处理器,
所述两个处理器中的一个处理器具备开始请求部,该开始请求部定期地输出所述开始请求,
所述两个处理器中的另一个处理器具备所述时刻存储部、所述中断处理程序部、所述等待时间测定部以及所述时刻计算部。
7.一种中断控制方法,是响应于定期地发生的开始请求而开始中断处理的中断控制装置的中断控制方法,所述中断控制装置具备时刻存储部,该时刻存储部存储使所述中断处理的准备用的中断准备处理开始的中断时刻,其中,
中断处理程序部在所述中断时刻使定时器中断发生,并且执行所述中断准备处理,
等待时间测定部测定在所述中断准备处理完成之后直至发生所述开始请求为止的时间作为等待时间,
时刻计算部根据由所述等待时间测定部测定的等待时间来计算扣除时间,并计算将从所述等待时间减去所述扣除时间得到的时间与所述中断准备处理的处理时间进行了相加的准备时间,将从下次的开始请求的时刻提前所述准备时间的时刻作为下次的中断时刻而存储到所述时刻存储部。
8.一种中断控制程序,是响应于定期地发生的开始请求而开始中断处理的中断控制装置的中断控制程序,所述中断控制装置具备时刻存储部,该时刻存储部存储使所述中断处理的准备用的中断准备处理开始的中断时刻,其中,
所述中断控制程序使计算机执行:
中断处理程序处理,在所述中断时刻使定时器中断发生,并且执行所述中断准备处理;
等待时间测定处理,测定在所述中断准备处理完成之后直至发生所述开始请求为止的时间作为等待时间;以及
时刻计算处理,根据通过所述等待时间测定处理测定的等待时间来计算扣除时间,并计算将从所述等待时间减去所述扣除时间得到的时间与所述中断准备处理的处理时间进行了相加的准备时间,将从下次的开始请求的时刻提前所述准备时间的时刻作为下次的中断时刻而存储到所述时刻存储部。
CN201880095676.XA 2018-07-30 2018-07-30 中断控制装置、中断控制方法及中断控制程序 Withdrawn CN112543917A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2018/028502 WO2020026315A1 (ja) 2018-07-30 2018-07-30 割り込み制御装置、割り込み制御方法および割り込み制御プログラム

Publications (1)

Publication Number Publication Date
CN112543917A true CN112543917A (zh) 2021-03-23

Family

ID=69230654

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880095676.XA Withdrawn CN112543917A (zh) 2018-07-30 2018-07-30 中断控制装置、中断控制方法及中断控制程序

Country Status (5)

Country Link
US (1) US11256537B2 (zh)
JP (1) JP6797332B2 (zh)
CN (1) CN112543917A (zh)
DE (1) DE112018007778T5 (zh)
WO (1) WO2020026315A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114779878A (zh) * 2022-04-25 2022-07-22 南方电网科学研究院有限责任公司 一种电力系统仿真步长时间的计算系统及方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1178173A (ja) 1997-09-11 1999-03-23 Canon Inc 印刷制御装置および印刷制御装置の印刷制御方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
JP2001156842A (ja) 1999-11-26 2001-06-08 Mitsubishi Electric Corp 伝送システム
JP4688739B2 (ja) * 2006-05-02 2011-05-25 株式会社ソニー・コンピュータエンタテインメント 情報表示装置
US8779899B2 (en) * 2008-03-12 2014-07-15 Electronics And Telecommuncations Research Institute RFID interrogator retransmitting command depending on collision situation and control method thereof
JP5549627B2 (ja) * 2011-03-25 2014-07-16 株式会社デンソー マイクロコンピュータ
JP5829890B2 (ja) 2011-11-02 2015-12-09 ルネサスエレクトロニクス株式会社 半導体データ処理装置、タイムトリガ通信システム及び通信システム
WO2013065687A1 (ja) 2011-11-04 2013-05-10 学校法人 早稲田大学 プロセッサシステム及びアクセラレータ
JP2014191655A (ja) 2013-03-27 2014-10-06 Toyota Motor Corp マルチプロセッサ、電子制御装置、プログラム
JP6464982B2 (ja) 2015-10-07 2019-02-06 株式会社デンソー 並列化方法、並列化ツール、車載装置
JP6709086B2 (ja) * 2016-03-15 2020-06-10 株式会社日立産機システム 通信制御装置、および、通信制御方法
JP6838222B2 (ja) 2016-04-28 2021-03-03 日立Astemo株式会社 車両制御装置、及び車両システム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114779878A (zh) * 2022-04-25 2022-07-22 南方电网科学研究院有限责任公司 一种电力系统仿真步长时间的计算系统及方法
CN114779878B (zh) * 2022-04-25 2023-03-03 南方电网科学研究院有限责任公司 一种电力系统仿真步长时间的计算系统及方法

Also Published As

Publication number Publication date
US20210096906A1 (en) 2021-04-01
JPWO2020026315A1 (ja) 2020-12-17
US11256537B2 (en) 2022-02-22
DE112018007778T5 (de) 2021-05-12
JP6797332B2 (ja) 2020-12-09
WO2020026315A1 (ja) 2020-02-06

Similar Documents

Publication Publication Date Title
US9996386B2 (en) Mid-thread pre-emption with software assisted context switch
JP2008003915A (ja) 電子機器
JP2010176606A (ja) データ処理装置および画像処理装置
JPWO2017163441A1 (ja) 画像処理装置、画像処理方法、及び画像処理プログラム
US20170329730A1 (en) Method and unit for handling interrupts in a system
US10949942B2 (en) Image processing apparatus, image processing method, and image processing program
JP2006113689A (ja) バスブリッジ装置およびデータ転送方法
CN112543917A (zh) 中断控制装置、中断控制方法及中断控制程序
JP2006085428A (ja) 並列処理システム、インタコネクションネットワーク、ノード及びネットワーク制御プログラム
US9772964B2 (en) Multicore processor system, computer product, assigning method, and control method
US11106478B2 (en) Simulation device, simulation method, and computer readable medium
WO2021037124A1 (zh) 一种任务处理的方法以及任务处理装置
US20150100759A1 (en) Pipelined finite state machine
CN107678993B (zh) 电脑系统及总线仲裁方法
JP6627475B2 (ja) 処理リソース制御プログラム、処理リソース制御装置、および処理リソース制御方法
WO2019053915A1 (ja) 画像処理装置、画像処理方法、及び画像処理プログラム
JP6049961B1 (ja) Cpu監視装置
JP5505192B2 (ja) 競合試験装置
JP5376042B2 (ja) マルチコアプロセッサシステム、スレッド切り替え制御方法、およびスレッド切り替え制御プログラム
JP2015014962A (ja) 演算装置、演算方法、及びプログラム
JP6918267B2 (ja) ボトルネック検出装置及びボトルネック検出プログラム
KR101395007B1 (ko) 복수의 프로세서를 이용한 스냅샷 이미지 처리 장치 및 방법
JP5582241B2 (ja) マルチコアプロセッサシステム、マルチコアプロセッサシステムの制御方法、およびマルチコアプロセッサシステムの制御プログラム
JP2023165100A (ja) アクセラレータの制御プログラム及び制御方法、並びに、情報処理装置
CN106155953B (zh) 一种信息处理方法及电子设备

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
WW01 Invention patent application withdrawn after publication

Application publication date: 20210323

WW01 Invention patent application withdrawn after publication