CN105988400A - 微控制器单元 - Google Patents

微控制器单元 Download PDF

Info

Publication number
CN105988400A
CN105988400A CN201510944562.6A CN201510944562A CN105988400A CN 105988400 A CN105988400 A CN 105988400A CN 201510944562 A CN201510944562 A CN 201510944562A CN 105988400 A CN105988400 A CN 105988400A
Authority
CN
China
Prior art keywords
arithmetic processing
processor
processing unit
event signal
data
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
CN201510944562.6A
Other languages
English (en)
Other versions
CN105988400B (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.)
Sanken Electric Co Ltd
Original Assignee
Sanken Electric Co Ltd
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 Sanken Electric Co Ltd filed Critical Sanken Electric Co Ltd
Publication of CN105988400A publication Critical patent/CN105988400A/zh
Application granted granted Critical
Publication of CN105988400B publication Critical patent/CN105988400B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3243Power saving in microcontroller unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25257Microcontroller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Automation & Control Theory (AREA)
  • Advance Control (AREA)

Abstract

一种微控制器单元,该微控制器单元包括:第一算术处理单元,该第一算术处理单元能够访问数据总线;第二算术处理单元,该第二算术处理单元包括能够访问数据总线的处理器,以及存储器,并且在连接至数据总线的外围电路之间执行数据传输处理;第一仲裁电路,该第一仲裁电路嵌入在第二算术处理单元中并且仲裁对数据总线的访问;和第二仲裁电路,该第二仲裁电路嵌入在第二算术处理单元中并且仲裁对存储器的访问,其中存储器存储与从外围电路发送的事件信号相关联的算术处理序列,并且,响应于事件信号的输入,处理器执行对应于该事件信号的算术处理序列。

Description

微控制器单元
技术领域
本发明涉及用于控制电源转换器的微控制器单元。
背景技术
在用于其中认为诸如全数字电源控制和马达控制的实时属性重要的电源转换应用的MCU(微控制器单元)中,例如来自A/D转换器的转换端事件、来自比较器的逆变检测事件和来自PWM(脉宽调制)计时器的计时事件被分别输出,并且有必要在没有延迟的情况下执行应响应于每个事件执行的处理。
下文中,虽然将尤其与数字电源控制相关联地公开该技术,但是因为反馈控制的本质不变,所以在包括马达控制的任何其它电力控制的情况下,以相同的方式精确地应用该公开内容。
在日本专利申请公开No.2013-25590中,已经公开了独立地操作DMAC(直接存储器存取控制器)和CPU(中央处理单元)的MCU。
在该MCU中,如果A/D转换器结束转换,则DMAC将来自A/D转换器的转换结果寄存器的数据传输至DSP(数字信号处理器)的数据寄存器,并且启动DSP的算术处理序列。如果DSP的算术处理序列结束,则DMAC将算术处理序列的结果数据传输至PWM计时器的占空比设置寄存器(duty setting register)。如果例如应用这一系列的处理,则能够执行数字电源中的线性控制(使用数字滤波器进行相位补偿)而无需CPU的介入。
发明内容
嵌入在用于电源电路的低成本MCU中的DSP通常专用于执行数字滤波器处理并且不能执行条件确定。在完整数字电源控制中,宏观上需要根据负载状态的控制模式切换,并且微观上需要偏共振(off-resonance)检测等,然后在这两种情况下,需要某些种类的条件确定。
由于仅通过DSP不能执行这种条件确定处理,所以需要CPU的介入。然而,如果由于经济原因采用低成本CPU,则由于较差的指令执行性能和较差的中断确认性能(指令执行状态保存/恢复处理的长度)而导致整个系统的性能被降低。
同时,能够在DSP上执行指令增强使得DSP能够像CPU一样执行条件确定。然而,这导致用于访问LSI(大规模集成)中的内部总线的机构的增加、根据指令增强的指令长度的增加、指令存储器的容量的增大等,并因此芯片面积增大。
鉴于上述情况提出了本公开,并且本公开的目的是提供能够执行控制电源转换器所必要的条件确定处理等而无需CPU的介入并且不增大芯片面积的微控制器单元。
附图说明
图1是例示微控制器单元(MCU)1的构造的图,其是本发明的实施方式并且用于控制电源电路。
图2是例示在图1中示出的MCU 1的EPU 20的内部的详细构造的图。
图3是例示在用于EPU的算术处理序列中使用的指令的示例的图。
图4是用于解释在处理器21执行包括事件等待指令的算术处理序列的情况下的操作的时序图。
图5是用于解释在处理器21执行包括计时器指令的算术处理序列的情况下的操作的时序图。
具体实施方式
下文将参照附图描述实施方式。
图1是例示微控制器单元(MCU)1的构造的图,其是本发明的实施方式并且用于控制电源电路。
MCU 1包括作为第一算术处理单元的CPU 10、包括用作存储器的XRAM(扩展随机存取存储器)22和下文要描述的处理器21的EPU(事件处理单元)20、用作非易失性存储器的闪存40、执行闪存40的数据读取控制的闪存控制器30、总线控制器50、总线控制器60、在诸如A/D转换器、比较器、DSP、和控制电源电路所必要的PWM计时器的外围电路中的处理中使用的寄存器70(在图1的示例中,示出了三个寄存器)、用作数据总线的XDATA(Xtention DATA)BUS、和用作数据总线的SFR(特殊功能寄存器)BUS。这里,数据总线的数量是两个。但是,数据总线的数量可以是一个。
CPU 10能够访问数据总线(SFR BUS和XDATA BUS),并且执行整个MCU 1的系统处理。EPU 20能够像CPU 10一样访问数据总线(SFR BUS和XDATA BUS),并且执行连接至数据总线的外围电路之间的数据传输处理。
SFR BUS连接至总线控制器50和外围电路的寄存器70。
XDATA BUS连接至总线控制器60、外围电路的寄存器70、包括在EPU 20中的处理器21和闪存控制器30。
在图1中,将XDATA BUS与闪存控制器30相连的总线被示出为总线flx,并且将XDATA BUS与EPU 20的处理器21相连的总线被示出为总线epuxs。
CPU 10连接至用于与总线控制器50相连的总线cpus、用于与总线控制器60相连的总线cpux和用于与闪存控制器30相连的总线cpuf。CPU 10的示例是8051结构。
闪存40存储CPU 10的算术处理序列(程序)和该程序所涉及的各种数据。CPU10经由闪存控制器30读取存储在闪存40中的程序,并且执行该程序,并且从闪存40读取程序中所必要的各种数据并且使用该数据。
EPU 20连接至用于访问总线控制器50的总线epus和用于访问总线控制器60的总线epux。
图2是例示在图1中示出的MCU 1的EPU 20的内部的详细构造的图。
EPU 20包括处理器21、XRAM 22、16个上下文保持单元(context holding units)S0至S15、仲裁电路23、24和25。
仲裁电路23连接在总线cpus和总线epus之间。该仲裁电路23还通过内部总线S连接至处理器21。
CPU 10能够经由总线cpus、仲裁电路23和总线epus访问SFR BUS。另外,处理器21能够经由内部总线S、仲裁电路23和总线epus访问SFR BUS。
仲裁电路23赋予CPU 10对SFR BUS的访问权限和处理器21对SFR BUS的访问权限优先级,并且仲裁CPU 10和处理器21对SFR BUS的访问,以使得处理器21能够优先于CPU 10而访问SFR BUS。
仲裁电路24连接在总线cpux和总线epuxs之间。该仲裁电路24还通过内部总线X连接至处理器21。
CPU 10能够经由总线cpux、仲裁电路24和总线epux访问XDATA BUS。另外,处理器21能够经由内部总线X、仲裁电路24和总线epux访问XDATA BUS。
仲裁电路24赋予CPU 10对XDATA BUS的访问权限和处理器21对XDATA BUS的访问权限优先级,并且仲裁CPU 10和处理器21对XDATA BUS的访问,以使得处理器21能够优于CPU 10而访问XDATA BUS。仲裁电路23和仲裁电路24形成第一仲裁电路。
仲裁电路25连接在总线epux和XRAM 22之间。该仲裁电路25还通过内部总线M连接至处理器21。
CPU 10能够经由总线cpux、仲裁电路24、总线epux和仲裁电路25访问XRAM22。另外,处理器21能够经由内部总线M和仲裁电路25访问XRAM 22。
仲裁电路25赋予CPU 10对XRAM 22的访问权限和处理器21对XRAM 22的访问权限优先级,并且仲裁CPU 10和处理器21对XRAM 22的访问,以使得处理器21能够优于CPU 10而访问XRAM 22。仲裁电路25构成第二仲裁电路。
16个事件信号(EVI[0]至EVI[15])被输入至处理器21。虽然没有示出,但是任何一个事件信号都选自从包括在MCU 1中的多个外围设备生成的作为数据传输请求信号的多个事件信号,并且被输入至事件信号EVI[0]至EVI[15]所分别输入的端子。针对上述的选择器电路设置在EPU 20外。
XRAM 22存储由能够被处理器21解码的指令字符串组成的用于EPU的算术处理序列,和被该用于EPU的算术处理序列所引用的用于EPU的数据。XRAM 22存储分别对应于输入至处理器21的16个事件信号的用于EPU的算术处理序列。分别对应于16个事件信号的用于EPU的算术处理序列从开始地址被存储,该开始地址分别对应于XRAM 22中的算数处理序列。另外,由处理器21执行的对应于任何一个事件信号的基于算术处理序列的处理流被称为线程。
如上所述,XRAM 22还能从CPU 10被访问。在MCU 1中,CPU 10使用XRAM22作为工作存储器(用于临时存储将要由存储在闪存40中的程序涉及的数据的区域)。
上下文保持单元S0至S15与存储在XRAM 22中的16个算术处理序列相对应地设置。
上下文是执行算术处理序列所必要的信息(诸如程序计数器的值、条件标志的值、计时器的值和数据存储寄存器的内容)。上下文保持单元S0至S15中的每一个都是用于存储执行与上下文保持单元中的每一个相对应的算术处理序列所必要的一种信息的硬件资源(具体地,由触发器(flip-flop)配置的寄存器)。
上下文保持单元S0至S15的配置包括通用CPU的程序员模块。在图2所示出的示例中,上下文保持单元S0至S15中的每一个配置用于存储数据的两个通用寄存器Rn和Rm(16位长)、程序计数器PC(9位长)、进位标志C(1位)、条件标志T(1位)、倒计时器TIME(12位长)和计时器的预定标器PS(4位长)。
如上所述,上下文保持单元S0至S15通过硬件保持上下文,而不保持在EPU 20的XRAM 22上。如果上下文被置于XRAM 22上,则根据不同线程之间的转换的上下文切换花时间来经由总线执行读取或写入,并且消耗大量电力。同时,如果由硬件保持上下文,则存在诸如能够在时间零点进行上下文切换以及减小电力消耗的优点。
作为给算术处理序列分配优先级的方法,存在以下第一方法至第三方法。但是,分配方法不限于此。
第一方法是当事件信号具有较小的编号时将较高优先级分配给相对应的算术处理序列的方法。
第二方法是以轮询策略分配优先级的方法。这是其中相对于已经停止执行的算术处理序列的优先级在停止时间后被设置为最低,由此优先级被循环(circulated)至算术处理序列的方法。另选地,第二方法也可以是其中不仅在执行停止时而且在执行一个指令时以轮询策略循环优先级的方法。
第三方法是第一方法和第二方法的组合,并且能够选择优先级固定的算术处理序列和优先级以轮询策略循环的算术处理序列,并且能够以固定的方式或交替的方式选择优先级固定的一组算术处理序列和优先级以轮询策略循环的一组算术处理序列中的优先级。
包括在存储区域中的XRAM 22的一部分是数据能够被CPU 10和EPU 20中的每一个读取和写入的区域,并且XRAM 22的其它部分是数据只能被CPU 10读取和写入的区域。因此,由于在MCU 1中包括多个具有大面积开销(overhead)的RAM宏变得没有必要,所以能够防止MCU 1的面积变大。另外,能够从CPU 10执行区域的数据的初始化。
(XRAM初始化)
用于EPU的算术处理序列和用于EPU的数据预先存储在闪存40中。在MCU 1启动时,CPU 10从闪存40读取用于EPU的算术处理序列和用于EPU的数据,并且将它们写入到XRAM 22中,由此执行初始化存储在XRAM 22中的用于EPU的算术处理序列和用于EPU的数据的处理。
(上下文初始化)
在MCU 1中,由于处理器21经由总线epuxs连接至XDATA BUS,所以CPU 10经由XDATA BUS和总线epuxs访问处理器21并且执行初始化上下文保持单元S0至S15的内容的处理。
(由CPU 10启动EPU 20)
在MCU 1启动的初始状态中,每一个线程都被停止,并且处理器21变成基于算术处理序列的线程以及事件信号的接收被停止的状态。为了解除该状态,在MCU 1启动时,CPU 10经由XDATA BUS和总线epuxs访问处理器21并且执行控制使得处理器21开始执行16个序列的必要的算术处理序列并且变成针对与每个算术处理序列相对应的事件信号的输入等待状态。因此,各个线程暂时被激活,但是各个线程根据包括在各个线程的算术处理序列中的指令依次变成事件输入等待状态,并且执行其中通过输入事件信号来启动每一个线程的正常操作。
在上述配置中,即使处理器变成输入事件信号的等待状态,如果没有真正执行事件信号的输入,则不启动任何线程。出于这个原因,例如,用于自启动的寄存器被嵌入在处理器21中。由于该寄存器的各个位分别对应于16个事件信号并且特定的位被设置,所以能够强制生成对应于该位的事件信号。
CPU 10经由总线epuxs设置该寄存器的任意位,由此同时生成事件信号并且将事件信号输入至处理器21。因此,即使通过硬件执行事件信号的输入,也能够通过软件激活线程。
处理器21还能够经由总线epuxs访问上述寄存器。因此,处理器21可以通过设置该寄存器的任意位同时生成针对不同算术处理序列的事件信号。
接下来,将描述存储在XRAM 22中的用于EPU的算术处理序列的各个指令的特定示例。例如,用于EPU的算术处理序列具有16位的固定长度,并且具有如RISC(精简指令集结构)的加载/存储型结构。
图3是例示在用于EPU的算术处理序列中使用的指令的示例的图。在图3中,用“EVTWAIT#EVT”表示的事件等待指令是用于停止正被执行的线程直到输入由EVT字段表示的事件信号为止的指令。
图4是用于解释在处理器21执行包括事件等待指令的算术处理序列的情况下的操作的时序图。在图4中,线程0是基于包括事件等待指令的算术处理序列的线程。另外,当相对应的事件信号的编号变得更小时,每个算术处理序列都具有更高的优先级。在图4中,首先假设,基于所有算术处理序列的线程在事件等待状态下停止。
如果输入事件信号EVI[2],则处理器21启动基于与事件信号EVI[2]相对应的算术处理序列的线程2。此后,如果输入事件信号EVI[0],则处理器21临时停止线程2并且启动基于与事件信号EVI[0]相对应的算术处理序列的线程0。
在线程0的过程中输入事件信号EVI[1]。然而,与事件信号EVI[1]相对应的算术处理序列的优先级低于与事件信号EVI[0]相对应的算术处理序列的优先级。因此,处理器21不执行与事件信号EVI[1]相对应的算术处理序列。
在输入事件信号EVI[1]之后,如果处理器21在线程0的过程中执行事件等待指令(这里,用于等待输入事件信号EVI[15]的指令),则处理器21停止线程0并且启动具有下一个最高优先级的线程1。
然后,在启动线程1之后,如果输入事件信号EVI[15],则处理器21停止线程1并且重新启动线程0。根据就在结束线程0之前正被执行的指令,处理器21输出事件输出信号EVO[0],并随后,当线程0变成事件输入等待状态并且被停止时,处理器启动具有下一个最高优先级的线程1。然后,根据就在结束线程1之前正被执行的指令,处理器21输出事件输出信号EVO[1],并随后,当线程1变成事件输入等待状态并且被停止时,处理器重新启动停止的线程2。
另外,在该公开示例中,从用于线程启动的事件输入信号EVI选择通过事件等待指令接收的事件信号。另选地,可以从与用于激活各个线程的EVI信号完全不同并且存在于MCU 1中的信号中选择通过事件等待指令接收的事件信号。
在期望使用多个A/D转换结果执行处理的情况下使用该事件等待指令。
在图5中,用“TIMWAIT#TIME”表示的指令是用于停止基于正被执行的算术处理序列的线程并且如果从停止该线程经过了由TIME字段表示的预定时间,则重新启动该线程的指令。
图5是用于解释在处理器21执行包括计时器指令的算术处理序列的情况下的操作的时序图。在图5中,线程0是基于包括计时器指令的算术处理序列的线程。另外,当相对应的事件信号的编号变得更小时,每个算术处理序列都具有更高的优先级。在图5中,首先假设,每个线程在事件等待状态下停止。
如果输入事件信号EVI[2],则处理器21启动基于与事件信号EVI[2]相对应的算术处理序列的线程2。此后,如果输入事件信号EVI[0],则处理器21临时停止线程2并且启动基于与事件信号EVI[0]相对应的算术处理序列的线程0。
在线程0的过程中输入事件信号EVI[1]。然而,与事件信号EVI[1]相对应的算术处理序列的优先级低于与事件信号EVI[0]相对应的算术处理序列的优先级。因此,处理器21不执行与事件信号EVI[1]相对应的算术处理序列。
在输入事件信号EVI[1]之后,如果处理器21在线程0的过程中执行计时器指令,则处理器21停止线程0并且启动具有下一个最高优先级的线程1。同时,处理器21在上下文S0的计时计数器TIME中加载由指令字段TIME表示的时间。然后,将计数器TIME减去事先被初始化的预定标器PS生成的时钟。
如果计数器TIME变成0,则处理器21停止线程1并且重新启动线程0。根据就在线程0结束之前正被执行的指令的指导,处理器21输出事件输出信号EVO[0],并随后,当线程0变成事件输入等待状态并且被停止时,处理器重新启动具有下一最高优先级的线程1。然后,根据就在停止线程1之前正被执行的指令的指导,处理器21输出事件输出信号EVO[1],并且处理器在停止线程1之后重新启动停止的线程2。
根据该计时器指令,在执行具有处理时间的裕度(margin)的序列的过程中,能够执行其它序列。因此,能够有效地执行多个线程。
在图3中,用“EVTIN#EVT”表示的事件状态输入指令是用于改变条件标志T的寄存器值的指令,如果输入指定的事件信号,则该条件标志T在正被执行的算术处理序列中被使用。根据该指令,通过从外部输入的事件信号,条件分支是可能的。因此,能够实现包括复杂的确定的处理。
在图3中,用“EVTOUT#EVT”表示的事件状态输入指令是用于向外围电路输出由指令的EVT字段表示的任意事件输出信号EVO[n]的指令。根据该指令,通过使用事件结束信号能够执行A/D转换器激活、计时器同步、PWM计时器同步等。
通过图3的MOVS指令执行对SFR BUS的访问。由于SFR BUS的地址空间被设置为8位,因此访问目的地地址由指令字段直接指定。
通过图3的MOVX指令执行对XDATA BUS的访问。由于XDATA BUS的地址空间被设置为16位,因此通过将指令字段中的OFFSET添加至硬件上下文的通用寄存器Rn和Rm来获取访问目的地地址。
通过图3的MOVM指令执行对XRAM 22的区域EPU_M的访问。由于区域EPU_M的地址空间被设置为9位,因此访问目的地地址由指令字段直接指定。
示例(3)示出了捕获A/D转换结果16次、计算他们的平均值以及将该平均值写入外围电路(诸如DSP)的操作。
根据上述说明,为了通过EPU 20启动多个线程,CPU 10初始化XRAM 22的区域EPU_M的数据或初始化上下文保持单元S0至S15。作为其变型,在启动MCU 1时,EPU 20的处理器21可以初始化XRAM 22的区域EPU_M的数据或初始化上下文保持单元S0至S15。下文将描述该变型。
为了激活用于电源电路的MCU 1,需要用于生成低电压的辅助电源,利用该低电压,MCU 1能够通过高输入电压操作。由于辅助电源在MCU 1启动时从高电压生成低电压,所以,如果在启动MCU 1时的电流消耗大,则由辅助电源消耗的电力增加,并且因此难以形成辅助电源。
因此,期望使得在MCU 1启动时的电流消耗尽可能小。然而,如果MCU 1被启动并且CPU 10操作以连续地开始访问闪存40,则电力消耗增加。同时,如果MCU 1被启动并且作为数字电源开始控制操作,则用于MCU 1的电力能够从正被MCU 1控制的数字电源系统生成的电压被接收。
在从MCU 1启动到MCU 1作为数字电源开始操作的时段内,不需要非常高精度的数字电源控制,因此足够执行控制以使得获得对于MCU 1所必要的电源电压。也就是说,在该时段内,只需要能够根据简单的反馈控制执行数字电源操作。
因此,DSP可以经由EPU 20通过A/D转换器被激活,并且在DSP计算结束时用于经由EPU 20将占空比值(duty value)传递至PWM的线程(例如,线程0)可以被简化和执行,而无需CPU 10的介入。如果EPU 20率先执行该简化的线程0,则在不消耗CPU 10和闪存40的电力的情况下,即只通过辅助电源的情况下,能够进行操作。
将具体描述变型的操作。
如果通过辅助电源启动MCU 1,则EPU 20的处理器21经由XDATA BUS从总线epuxs访问闪存40(其可以是设置在MCU 1内的MASK ROM或由逻辑元件配置的ROM),并且从闪存40获得用于EPU的算术处理序列和在用于EPU的算术处理序列中所必要的各种数据,并且将它们写入XRAM 22。
接下来,基于写在XRAM 22中的算术处理序列中的一个算术处理序列的线程(这里,线程0)被启动。从MCU 1启动至该时刻的序列由包括在EPU 20中的硬件自动处理。处理器21开始执行与线程0相对应的用于EPU的算术处理序列,由此开始电源系统的电压生成。如果有必要,在线程0的过程中,能够激活其它线程。
这里,为了初始化XRAM 22,处理器21临时地访问闪存40。但是,由于访问时间短,所以无所谓。当通过来自辅助电源的电压供给,根据线程0进行简单的数字电源控制,并且MCU 1控制的电源系统的输出电压稳定时,CPU 10启动来自闪存40的程序并且开始执行原始系统处理,以将MCU 1的电源从辅助电源切换至来自电源系统的电源。
如上所述,根据该变型,在数字电源的系统启动期间,能够防止由辅助电源消耗的电力的增加。
虽然已经通过具体实施方式描述了本公开,但是不言而喻,上述实施方式是示例,并且在不偏离本公开范围的情况下能够被修改和实施。
例如,虽然已经描述了EPU 20根据硬件上下文切换来切换线程,但是可以通过软件执行线程切换。另外,虽然已经描述了XRAM 22被用作CPU 10的工作存储器,但是CPU 10的工作存储器可以单独地设置在MCU 1中。通过将XRAM 22用作CPU10的工作存储器,能够降低存储器成本。
如上所述,在本说明书中,公开了以下条款。
公开的微控制器单元是用于控制电源转换器的微控制器单元,该微控制器单元包括:第一算术处理单元,所述第一算术处理单元执行系统处理并且能够访问数据总线;第二算术处理单元,所述第二算术处理单元包括能够访问所述数据总线的处理器和存储器并且执行连接至所述数据总线的外围电路之间的数据传输处理;第一仲裁电路,所述第一仲裁电路嵌入在所述第二算术处理单元中并且仲裁所述第一算术处理单元和所述处理器对所述数据总线的访问;以及第二仲裁电路,所述第二仲裁电路嵌入在所述第二算术处理单元中并且仲裁所述第二算术处理单元和所述处理器对所述存储器的访问,其中,所述存储器存储分别与从连接至所述数据总线的外围电路发送的多个事件信号相关联的算术处理序列,并且其中,响应于所述多个事件信号中的任何一个事件信号的输入,所述处理器执行对应于该事件信号的算术处理序列。
在公开的微控制器单元中,所述第一算术处理单元将所述存储器用作工作存储器。
在公开的微控制器单元中,所述第一算术处理单元执行初始化存储在所述存储器中的所述算术处理序列的处理。
在公开的微控制器单元中,能够经由所述第一仲裁电路和所述数据总线从所述第一算术处理单元和所述处理器中的一个访问所述处理器。
在公开的微控制器单元中,能够经由所述第一仲裁电路和所述数据总线从所述第一算术处理单元访问所述处理器,并且所述处理器的初始状态是其中停止接收线程和所述事件信号的输入的状态,并且其中,所述第一算术处理单元在所述第一算术处理单元的启动时执行控制以使所述处理器开始执行所述算术处理序列并且变成针对与所述算术处理序列相对应的所述事件信号的输入等待状态。
在公开的微控制器单元中,所述第二算术处理单元包括能够生成事件信号的用于自激活的寄存器,并且其中,所述第一算术处理单元和所述处理器中的一个经由所述第一仲裁电路和所述数据总线将数据写入所述寄存器,由此所述事件信号被强制生成并且使所述处理器开始执行所述算术处理序列。
公开的微控制器单元还包括非易失性存储器,所述非易失性存储器存储所述算术处理序列,其中,所述处理器能够经由所述数据总线访问所述非易失性存储器,并且在启动时,从所述非易失性存储器读取所述算术处理序列,将读取的算术处理序列存储在所述存储器中,并然后使所述处理器开始执行所述算术处理序列。。
在公开的微控制器单元中,能够经由所述第一仲裁电路和所述数据总线从所述第一算术处理单元访问所述处理器,其中,所述第二算术处理单元包括多个上下文保持单元,所述多个上下文保持单元由寄存器配置以根据所述事件信号保持执行所述算术处理序列所需要的上下文,并且其中,所述第一算术处理单元经由所述第一仲裁电路和所述数据总线执行初始化所述处理器的所述上下文保持单元的处理。
在公开的微控制器单元中,所述第二算术处理单元包括多个上下文保持单元,所述多个上下文保持单元由寄存器配置以根据所述事件信号保持用于执行所述算术处理序列的上下文,其中,所述上下文保持单元包括寄存器以保持条件标志,并且其中,当输入指定的事件信号时,所述指令包括事件状态输入指令以改变要在正被执行的算术处理序列中使用的所述条件标志的值。
在公开的微控制器单元中,所述指令包括事件等待指令以在基于算术处理序列的线程的过程中停止该线程并且当在停止所述线程之后输入特定的事件信号时重新启动所述线程。
在公开的微控制器单元中,所述指令包括计时器指令以在基于算术处理序列的线程的过程中停止该线程并且当从停止所述线程开始经过预定的时间时重新启动所述线程。
在公开的微控制器单元中,所述指令包括事件输出指令以将事件输出信号输出至所述第二算术处理单元之外。
在公开的微控制器单元中,向对应于所述事件信号的算术处理序列分配优先级,并且其中,根据对应于输入事件信号静态地或动态地限定的所述算术处理序列的优先级和算术处理序列的执行状态,所述处理器优先执行具有较高优先级的算术处理序列。

Claims (9)

1.一种用于控制电源转换器的微控制器单元,该微控制器单元包括:
第一算术处理单元,所述第一算术处理单元执行系统处理并且能够访问数据总线;
第二算术处理单元,所述第二算术处理单元包括能够访问所述数据总线的处理器和存储器并且执行连接至所述数据总线的外围电路之间的数据传输处理;
第一仲裁电路,所述第一仲裁电路嵌入在所述第二算术处理单元中并且仲裁所述第一算术处理单元和所述处理器对所述数据总线的访问;以及
第二仲裁电路,所述第二仲裁电路嵌入在所述第二算术处理单元中并且仲裁所述第二算术处理单元和所述处理器对所述存储器的访问,
其中,所述存储器存储分别与从连接至所述数据总线的所述外围电路发送的多个事件信号相关联的算术处理序列,并且
其中,响应于所述多个事件信号中的任何一个事件信号的输入,所述处理器执行对应于该事件信号的所述算术处理序列。
2.根据权利要求1所述的微控制器单元,
其中,所述第一算术处理单元将所述存储器用作工作存储器。
3.根据权利要求2所述的微控制器单元,
其中,所述第一算术处理单元执行初始化存储在所述存储器中的所述算术处理序列的处理。
4.根据权利要求1所述的微控制器单元,
其中,能够经由所述第一仲裁电路和所述数据总线从所述第一算术处理单元和所述处理器中的一个访问所述处理器。
5.根据权利要求4所述的微控制器单元,
其中,能够经由所述第一仲裁电路和所述数据总线从所述第一算术处理单元访问所述处理器,并且所述处理器的初始状态是其中停止接收线程和所述事件信号的输入的状态,并且
其中,所述第一算术处理单元在所述第一算术处理单元的启动时执行控制以使所述处理器开始执行所述算术处理序列并且变成针对与所述算术处理序列相对应的所述事件信号的输入等待状态。
6.根据权利要求4所述的微控制器单元,
其中,所述第二算术处理单元包括能够生成事件信号的用于自激活的寄存器,并且
其中,所述第一算术处理单元和所述处理器中的一个经由所述第一仲裁电路和所述数据总线将数据写入所述寄存器,由此,所述事件信号被强制生成并且使所述处理器开始执行所述算术处理序列。
7.根据权利要求6所述的微控制器单元,该微控制器单元还包括:
非易失性存储器,所述非易失性存储器存储所述算术处理序列,
其中,所述处理器能够经由所述数据总线访问所述非易失性存储器,并且在启动时,从所述非易失性存储器读取所述算术处理序列,将所读取的算术处理序列存储在所述存储器中,并然后使所述处理器开始执行所述算术处理序列。
8.根据权利要求4所述的微控制器单元,
其中,能够经由所述第一仲裁电路和所述数据总线从所述第一算术处理单元访问所述处理器,
其中,所述第二算术处理单元包括多个上下文保持单元,所述多个上下文保持单元由寄存器配置以根据所述事件信号保持执行所述算术处理序列所需要的上下文,并且
其中,所述第一算术处理单元经由所述第一仲裁电路和所述数据总线执行初始化所述处理器的所述上下文保持单元的处理。
9.根据权利要求1所述的微控制器单元,
其中,所述第二算术处理单元包括多个上下文保持单元,所述多个上下文保持单元由寄存器配置以根据所述事件信号保持用于执行所述算术处理序列的上下文,
其中,所述上下文保持单元包括寄存器以保持条件标志,并且
其中,当输入指定的事件信号时,所述指令包括事件状态输入指令以改变要在正被执行的所述算术处理序列中使用的所述条件标志的值。
CN201510944562.6A 2015-03-20 2015-12-16 微控制器单元 Active CN105988400B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/663,975 US10571993B2 (en) 2015-03-20 2015-03-20 Micro controller unit
US14/663,975 2015-03-20

Publications (2)

Publication Number Publication Date
CN105988400A true CN105988400A (zh) 2016-10-05
CN105988400B CN105988400B (zh) 2020-06-30

Family

ID=56925088

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510944562.6A Active CN105988400B (zh) 2015-03-20 2015-12-16 微控制器单元

Country Status (2)

Country Link
US (1) US10571993B2 (zh)
CN (1) CN105988400B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110637289A (zh) * 2017-05-18 2019-12-31 凌力尔特科技控股有限责任公司 协调事件排序
CN111033438A (zh) * 2017-09-06 2020-04-17 株式会社半导体能源研究所 运算装置及电子设备

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10571993B2 (en) * 2015-03-20 2020-02-25 Sanken Electric Co., Ltd. Micro controller unit
CN107315604A (zh) * 2017-06-08 2017-11-03 贵州电网有限责任公司 一种unix系统数据库及应用程序自启动方法
CN113778210B (zh) * 2021-08-20 2023-03-10 江苏嘉擎信息技术有限公司 一种基于mcu的acpi管理方法、系统及设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5293586A (en) * 1988-09-30 1994-03-08 Hitachi, Ltd. Data processing system for development of outline fonts
CN1677556A (zh) * 2004-03-15 2005-10-05 恩益禧电子股份有限公司 部分双端口存储器和使用它的电子设备
WO2011031175A1 (en) * 2009-09-14 2011-03-17 Akademia Gorniczo-Hutnicza Im. Stanislawa Staszica Method of power control in microprocessor structures and a power control system in microprocessor structures
CN102890626A (zh) * 2011-07-21 2013-01-23 株式会社日立超Lsi系统 运算处理装置和微计算机

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7162615B1 (en) * 2000-06-12 2007-01-09 Mips Technologies, Inc. Data transfer bus communication using single request to perform command and return data to destination indicated in context to allow thread context switch
JP4447977B2 (ja) * 2004-06-30 2010-04-07 富士通マイクロエレクトロニクス株式会社 セキュアプロセッサ、およびセキュアプロセッサ用プログラム。
CN107368285B (zh) * 2006-11-14 2020-10-09 英特尔公司 多线程架构
US8471751B2 (en) * 2011-06-30 2013-06-25 Intel Corporation Two-stage analog-to-digital converter using SAR and TDC
EP2885708A4 (en) * 2012-08-20 2016-11-09 D Kevin Cameron ASSIGNMENT OF TREATMENT RESOURCE
US9569612B2 (en) * 2013-03-14 2017-02-14 Daniel Shawcross Wilkerson Hard object: lightweight hardware enforcement of encapsulation, unforgeability, and transactionality
US20150207988A1 (en) * 2014-01-23 2015-07-23 Nvidia Corporation Interactive panoramic photography based on combined visual and inertial orientation tracking
US9524257B2 (en) * 2014-06-27 2016-12-20 International Business Machines Corporation Transactional execution enabled supervisor call interruption while in TX mode
JP6372250B2 (ja) * 2014-08-25 2018-08-15 サンケン電気株式会社 演算処理装置
US10571993B2 (en) * 2015-03-20 2020-02-25 Sanken Electric Co., Ltd. Micro controller unit

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5293586A (en) * 1988-09-30 1994-03-08 Hitachi, Ltd. Data processing system for development of outline fonts
CN1677556A (zh) * 2004-03-15 2005-10-05 恩益禧电子股份有限公司 部分双端口存储器和使用它的电子设备
WO2011031175A1 (en) * 2009-09-14 2011-03-17 Akademia Gorniczo-Hutnicza Im. Stanislawa Staszica Method of power control in microprocessor structures and a power control system in microprocessor structures
CN102890626A (zh) * 2011-07-21 2013-01-23 株式会社日立超Lsi系统 运算处理装置和微计算机

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110637289A (zh) * 2017-05-18 2019-12-31 凌力尔特科技控股有限责任公司 协调事件排序
CN111033438A (zh) * 2017-09-06 2020-04-17 株式会社半导体能源研究所 运算装置及电子设备
CN111033438B (zh) * 2017-09-06 2023-12-05 株式会社半导体能源研究所 运算装置及电子设备
US11868877B2 (en) 2017-09-06 2024-01-09 Semiconductor Energy Laboratory Co., Ltd. Arithmetic device and electronic device

Also Published As

Publication number Publication date
CN105988400B (zh) 2020-06-30
US10571993B2 (en) 2020-02-25
US20160274647A1 (en) 2016-09-22

Similar Documents

Publication Publication Date Title
CN105988400A (zh) 微控制器单元
CN102414672B (zh) 具有可编程异常处理等待时间的数字处理器及用于处理处理器中的异常的方法
EP2159689A1 (en) Instruction execution controller and instruction execution control method
US10657039B2 (en) Control device for a motor vehicle
US9298253B2 (en) Accelerating the microprocessor core wakeup by predictively executing a subset of the power-up sequence
JPH0922318A (ja) プロセッサ及びその制御方法
JPH06139189A (ja) 共有バス調停機構
KR0136019B1 (ko) 정보 처리 장치
US9665466B2 (en) Debug architecture for multithreaded processors
JP2007219581A (ja) メモリコントローラおよびこれを搭載する電子機器
KR20170127421A (ko) 다수의 독립적인 마이크로컨트롤러들을 구비한 로우-핀 마이크로컨트롤러 디바이스
CN116301294B (zh) 一种系统芯片低功耗实现方法、系统芯片、车机及设备
US5504869A (en) High speed processing system capable of executing strings of instructions in order without waiting completion of previous memory access instruction
TW201638771A (zh) 具有多個獨立微控制器之微控制器裝置
CN105867294B (zh) Plc中顺序控制方法与系统
US6167529A (en) Instruction dependent clock scheme
CN103197954A (zh) 信息处理装置和控制信息处理装置的方法
JP2011170619A (ja) マルチスレッド処理装置
US7945718B2 (en) Microcontroller waveform generation
US5487157A (en) Microprogrammed microcomputer with high-speed interrupt for DRAM refresh
US20070038817A1 (en) Memory access control in a multiprocessor system
JP2008176518A (ja) マイクロコンピュータ
CN113778640A (zh) 任务执行方法、装置、电子设备及存储介质
KR20190018434A (ko) 계산 유닛 작동 방법
US20060036812A1 (en) Prefetching in a data processing system

Legal Events

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