JP2012203655A - Microcomputer - Google Patents

Microcomputer Download PDF

Info

Publication number
JP2012203655A
JP2012203655A JP2011067734A JP2011067734A JP2012203655A JP 2012203655 A JP2012203655 A JP 2012203655A JP 2011067734 A JP2011067734 A JP 2011067734A JP 2011067734 A JP2011067734 A JP 2011067734A JP 2012203655 A JP2012203655 A JP 2012203655A
Authority
JP
Japan
Prior art keywords
interrupt
cpu
signal
controller
cache
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
JP2011067734A
Other languages
Japanese (ja)
Other versions
JP5549627B2 (en
Inventor
Masahiro Kamiya
政裕 神谷
Kenji Yamada
健二 山田
Toshitaka Sakai
利恭 酒井
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.)
Denso Corp
Original Assignee
Denso 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 Denso Corp filed Critical Denso Corp
Priority to JP2011067734A priority Critical patent/JP5549627B2/en
Publication of JP2012203655A publication Critical patent/JP2012203655A/en
Application granted granted Critical
Publication of JP5549627B2 publication Critical patent/JP5549627B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To provide a microcomputer capable of efficiently processing interruption.SOLUTION: When detecting occurrence of reception of data, timer interruption and continuous detection of an active level of input signals or the like to be a factor of generating interruption to a CPU 2 in an initial stage, peripheral circuits 8-10 output interruption notice signals to an interruption controller 7 beforehand, and outputs interruption signals in the stage of completion of occurrence of the event. When the interruption notice signals are inputted, the interruption controller 7 performs lookahead processing of loading an interruption vector and an interruption handler corresponding to the notice signals from a ROM 3 to an instruction cache 5.

Description

本発明は、マイクロコンピュータの割込み処理に関する。   The present invention relates to interrupt processing of a microcomputer.

マイクロコンピュータにおいて、CPUが行う割込み処理を効率的に実行させるための技術は、種々提案されている。例えば特許文献1では、キャッシュメモリからの命令フェッチに並行してプリフェッチバッファに命令をプリフェッチさせることを可能にする構成において、割込みが発生すると、CPUが割込み処理プログラムに移行するまでの間にレジスタ値の退避等を行う期間を利用して、割込み処理プログラムの先頭アドレスをセットしてプリフェッチさせる技術が開示されている。   Various techniques for efficiently executing interrupt processing performed by a CPU in a microcomputer have been proposed. For example, in Patent Document 1, in a configuration that allows a prefetch buffer to prefetch instructions in parallel with an instruction fetch from a cache memory, when an interrupt occurs, a register value before the CPU shifts to an interrupt processing program. A technique is disclosed in which a leading address of an interrupt processing program is set and prefetched using a period during which data is saved.

特許文献1の技術は、割込み処理プログラムのプリフェッチに要する時間が、CPUが割込み処理プログラムに移行するまでの期間に収まる場合は効果がある。しかし、割込み処理プログラムのサイズが大きいため、プリフェッチに要する時間が上記の移行期間に収まらない場合は、CPUの処理が停滞することになる。   The technique of Patent Document 1 is effective when the time required for prefetching the interrupt processing program falls within the period until the CPU shifts to the interrupt processing program. However, since the size of the interrupt processing program is large, if the time required for prefetch does not fall within the above transition period, the CPU processing is stagnated.

また、特許文献2では、割込みが発生した場合に、割込みハンドラ(処理プログラム)がキャッシュメモリにロードされていなければ(キャッシュミス)、割込みハンドラのロードが完了した時点でCPUに対して割込みを要求する技術が開示されている。これにより、キャッシュメモリが割込みハンドラを先読みしている間にCPUは通常処理を継続できるので、処理効率の低下を防止できるとしている。   Further, in Patent Document 2, when an interrupt occurs, if the interrupt handler (processing program) is not loaded in the cache memory (cache miss), an interrupt request is issued to the CPU when the loading of the interrupt handler is completed. Techniques to do this are disclosed. As a result, the CPU can continue normal processing while the cache memory prefetches the interrupt handler, so that it is possible to prevent a reduction in processing efficiency.

特開平8−221270号公報(図1参照)JP-A-8-212270 (see FIG. 1) 特開2001−306335号公報(図1参照)JP 2001-306335 A (see FIG. 1)

しかしながら、特許文献2の技術によればCPUの処理効率の低下は防止できるが、割込みが発生した時点からCPUが割込みハンドラの実行を開始するまでの時間,すなわち割込み応答性については、キャッシュメモリが割込みハンドラを先読みしなかった場合と全く変わらない。また、キャッシュメモリが割込みハンドラを先読みしている間に、CPUにおける通常処理の実行中にキャッシュミスが発生すると、先読みが完了するまでCPUの処理は停滞することになる。
本発明は上記事情に鑑みてなされたものであり、その目的は、割込みをより効率的に処理できるマイクロコンピュータを提供することにある。
However, according to the technique of Patent Document 2, it is possible to prevent the CPU processing efficiency from being lowered, but the time from when the interrupt occurs until the CPU starts executing the interrupt handler, that is, interrupt responsiveness, the cache memory This is the same as when the interrupt handler is not prefetched. Further, if a cache miss occurs during execution of normal processing in the CPU while the cache memory is prefetching the interrupt handler, the processing of the CPU stagnate until prefetching is completed.
The present invention has been made in view of the above circumstances, and an object of the present invention is to provide a microcomputer that can process interrupts more efficiently.

請求項1記載のマイクロコンピュータによれば、周辺回路は、CPUに対して割込みを発生させる要因となる事象の発生を初期段階で検出すると、事前に割込み予告信号を割込みコントローラに対して出力し、前記事象の発生が完了した段階で割込み信号を出力する。そして、割込みコントローラは、割込み予告信号が入力されると、当該予告信号に対応する割込みハンドラをプログラムメモリから命令キャッシュにロードさせる先読み処理を行い、その後、前記割込み予告信号に対応する割込みが発生した段階で先読み処理が完了していなければ、CPUに対して行う前記割込みの発生通知を保留する。   According to the microcomputer of claim 1, when the peripheral circuit detects the occurrence of an event that causes the CPU to generate an interrupt at an initial stage, the peripheral circuit outputs an interrupt notice signal to the interrupt controller in advance. When the occurrence of the event is completed, an interrupt signal is output. Then, when an interrupt notice signal is input, the interrupt controller performs a prefetch process for loading an interrupt handler corresponding to the notice signal from the program memory into the instruction cache, and then an interrupt corresponding to the interrupt notice signal is generated. If the prefetch process is not completed at this stage, the interrupt generation notification to the CPU is suspended.

このように構成すれば、割込みコントローラは、割込み予告信号が出力された時点から割込みハンドラを命令キャッシュにロードさせる先読み処理を開始するので、対応する割込み信号が出力されるまでの期間に先読み処理を完了させることができ、CPUは、割込み信号が出力されると直ちに割込み処理に移行して、割込みハンドラの実行を開始できる。したがって、割込みが発生した時点から、当該割込みを処理するまでの応答性を向上させることができる。また、前記予告信号に対応する割込み信号が入力された段階で先読み処理が完了していなければ、割込みコントローラがCPUに対して行う前記割込みの発生通知を保留するので、先読み処理が完了した後にCPUに割込みハンドラの実行を開始させることができ、CPUの処理効率の低下を防止できる。   With this configuration, the interrupt controller starts the prefetch process for loading the interrupt handler into the instruction cache from the time when the interrupt notice signal is output, so the prefetch process is performed until the corresponding interrupt signal is output. As soon as the interrupt signal is output, the CPU can proceed to interrupt processing and start execution of the interrupt handler. Therefore, it is possible to improve the responsiveness from the time when the interrupt occurs until the interrupt is processed. In addition, if the prefetch process is not completed when the interrupt signal corresponding to the notice signal is input, the interrupt controller holds the interrupt notification to the CPU. Can start the execution of the interrupt handler, and can prevent a reduction in the processing efficiency of the CPU.

請求項2記載のマイクロコンピュータによれば、通信機能を備えている周辺回路は、外部より送信されたデータの受信処理を開始した以降から当該受信処理を完了するまでの間に割込み予告信号を出力する。すなわち、外部よりデータの送信があれば、送信されたデータの受信が完了した時点でCPUに対して割込みを発生させることになるので、受信処理を開始した以降からその受信処理を完了するまでの間に割込み予告信号を出力すれば、割込みコントローラに割込みの発生を予告することができる。   According to the microcomputer of the second aspect, the peripheral circuit having the communication function outputs the interrupt notice signal after starting the reception processing of the data transmitted from the outside until the reception processing is completed. To do. In other words, if there is data transmission from the outside, an interrupt will be generated for the CPU when reception of the transmitted data is completed, so after the reception process is started until the reception process is completed. If an interrupt notice signal is output in the meantime, the interrupt controller can be notified of the occurrence of the interrupt.

請求項3記載のマイクロコンピュータによれば、タイマ機能を備えている周辺回路は、 タイマ割込み信号を発生させるタイミングよりも所定期間だけ遡行するタイミングで割込み予告信号を出力する。すなわち、一定周期でタイマ割込みを発生させる場合は、そのタイマのカウント値によって割込みを発生させるタイミングが決まるので、前記カウント値を参照すれば、タイマ割込み信号を発生させるタイミングよりも遡行するタイミングで割込み予告信号を出力することができる。   According to the microcomputer of the third aspect, the peripheral circuit having the timer function outputs the interrupt notice signal at a timing that goes backward by a predetermined period from the timing at which the timer interrupt signal is generated. In other words, when a timer interrupt is generated at a certain period, the timing for generating the interrupt is determined by the count value of the timer. Therefore, referring to the count value, the interrupt is performed at a timing that goes backward from the timing for generating the timer interrupt signal. A warning signal can be output.

請求項4記載のマイクロコンピュータによれば、入力信号レベルがアクティブの状態をm回以上連続して検出すると前記信号がアクティブになったと判定して割込み信号を発生させる周辺回路は、前記入力信号のアクティブレベルがn(<m)回以上連続した段階で割込み予告信号を出力する。一般に、上記のように構成される周辺回路は、入力信号のレベルがノイズの影響を受ける可能性があるため、その影響を排除する目的でアクティブの状態を連続してm回以上検出するようにしている。したがって、アクティブレベルがn(<m)回以上連続した段階でも、その後に入力信号がアクティブと判定される蓋然性は高いと言えるので、その時点で割込み予告信号を出力すれば、割込みコントローラに割込みの発生を予告することができる。   According to another aspect of the microcomputer of the present invention, the peripheral circuit that determines that the signal has become active and generates an interrupt signal when the active state of the input signal level is continuously detected m times or more is generated. An interrupt notice signal is output when the active level continues for n (<m) times or more. In general, in the peripheral circuit configured as described above, the level of the input signal may be affected by noise. Therefore, in order to eliminate the influence, the active state is continuously detected more than m times. ing. Therefore, even if the active level continues for n (<m) times or more, it can be said that there is a high probability that the input signal will be determined to be active after that. If an interrupt notice signal is output at that time, an interrupt will be sent to the interrupt controller. The occurrence can be foretold.

請求項5記載のマイクロコンピュータによれば、割込みコントローラは、先読み処理の実行中に優先度が高い割込みの予告信号が入力されると、実行中の先読み処理を中止して、前記優先度が高い割込みに対応する割込みハンドラの先読み処理を開始する。したがって、CPUが先に処理する予定の割込みに対応するハンドラを、先に命令キャッシュにロードすることができる。   According to the microcomputer of claim 5, when a high-priority interrupt notification signal is input during execution of the prefetch process, the interrupt controller stops the prefetch process being executed and the priority is high. Start prefetch processing of the interrupt handler corresponding to the interrupt. Therefore, the handler corresponding to the interrupt scheduled to be processed first by the CPU can be loaded into the instruction cache first.

請求項6記載のマイクロコンピュータによれば、割込みコントローラは、周辺回路が割込みを発生させるとCPUに対して行う割込みの発生通知を保留して、当該割込みに対応する割込みハンドラをプログラムメモリから命令キャッシュにロードさせる先読み処理を行う。そして、キャッシュコントローラは、先読み処理の実行中にCPUからのアクセスにキャッシュミスが発生すると、その時点でCPUが割込み許可状態であれば先読み処理を優先して実行し、割込み禁止状態であれば先読み処理を中止して、CPUがフェッチしようとする命令を命令キャッシュにロードさせる。   According to another aspect of the microcomputer of the present invention, when the peripheral circuit generates an interrupt, the interrupt controller suspends the interrupt generation notification to the CPU, and the interrupt handler corresponding to the interrupt is transferred from the program memory to the instruction cache. Performs prefetch processing to be loaded. When a cache miss occurs in the access from the CPU during execution of the prefetch process, the cache controller preferentially executes the prefetch process if the CPU is in the interrupt enabled state at that time, and prefetches if the CPU is in the interrupt disabled state. The processing is stopped and the instruction to be fetched by the CPU is loaded into the instruction cache.

すなわち、先読み処理の実行中にキャッシュミスが発生しても、CPUが割込み許可状態であれば先読み処理を優先することで、CPUに割込み処理を早期に実行させることができる。また、CPUが割込み禁止状態であれば、割込みの処理が直ちに開始されることはないので、CPUがフェッチしようとする命令を先に命令キャッシュにロードさせて、現在実行中の処理を優先させる。したがって、CPU側の割込みへの対応状態に応じて処理効率を向上させることができる。   That is, even if a cache miss occurs during execution of the prefetch process, if the CPU is in the interrupt enabled state, the CPU can cause the CPU to execute the interrupt process early by giving priority to the prefetch process. If the CPU is in the interrupt disabled state, the interrupt processing is not started immediately, so that the instruction to be fetched by the CPU is first loaded into the instruction cache, and the currently executing process is given priority. Therefore, the processing efficiency can be improved according to the state of correspondence to the interrupt on the CPU side.

請求項7記載のマイクロコンピュータによれば、キャッシュコントローラは、先読み処理を優先して実行する際には、割込みコントローラに対して直ちに先読み処理の完了を通知し、割込みコントローラは、当該通知がなされるとCPUに対して割込みの発生通知を行うので、CPUを直ちに割込み処理に移行させることができる。   According to the microcomputer of claim 7, when the cache controller preferentially executes the prefetch process, the cache controller immediately notifies the interrupt controller of the completion of the prefetch process, and the interrupt controller is notified. Since the interrupt notification is sent to the CPU, the CPU can immediately shift to the interrupt processing.

請求項8記載のマイクロコンピュータによれば、割込みコントローラは、先読み処理の実行中に、より優先度が高い割込みが発生すると前記先読み処理を中止して、優先度が高い割込みに対応する割込みハンドラの先読み処理を開始する。したがって、割込みの優先度に対応して割込みハンドラの先読みを行うことができる。   According to the microcomputer of claim 8, the interrupt controller stops the prefetching process when an interrupt having a higher priority occurs during execution of the prefetching process, and sets an interrupt handler corresponding to the interrupt having a high priority. Start prefetch processing. Therefore, prefetching of the interrupt handler can be performed corresponding to the priority of the interrupt.

第1実施例であり、マイクロコンピュータの構成を示す機能ブロック図Functional block diagram showing the configuration of the microcomputer according to the first embodiment 割込みコントローラの内部構成を示す機能ブロック図でFunctional block diagram showing the internal configuration of the interrupt controller 命令キャッシュの内部構成を示す機能ブロック図Functional block diagram showing the internal structure of the instruction cache 周辺回路が通信機能を備える場合の構成例を示す図The figure which shows the structural example in case a peripheral circuit is provided with a communication function 動作タイミングチャートOperation timing chart 周辺回路がタイマ機能を備える場合の構成例を示す図The figure which shows the structural example in case a peripheral circuit is provided with a timer function 図5相当図Figure equivalent to FIG. 周辺回路がインプットキャプチャ機能を備える場合の構成例を示す図The figure which shows the structural example in case a peripheral circuit is provided with an input capture function 図5相当図Figure equivalent to FIG. 各構成間における処理の流れを示すフロー(シーケンス)図Flow (sequence) diagram showing the flow of processing between components (a)は従来構成の場合、(b)は実施例構成の場合の図10のフローに対応するタイミングチャートFIG. 10A is a timing chart corresponding to the flow of FIG. 10 in the case of the conventional configuration, and FIG. 第2実施例の動作を示すタイミングチャートTiming chart showing the operation of the second embodiment 図10の一部相当図Partial equivalent diagram of FIG. 第3実施例であり、(a)は従来構成の場合、(b)は実施例構成の場合の動作を示すタイミングチャート(その1)This is a third embodiment, where (a) shows the operation in the case of the conventional configuration, and (b) shows a timing chart showing the operation in the case of the configuration of the embodiment (part 1). 同タイミングチャート(その2)Same timing chart (Part 2)

(第1実施例)
以下、第1実施例について図1ないし図11を参照して説明する。図1は、マイクロコンピュータの構成を示す機能ブロック図である。マイクロコンピュータ1は、CPU2,プログラムメモリであるROM3,RAM4,命令キャッシュ5,データキャッシュ6,割込みコントローラ7,周辺回路8〜10などで構成されている。CPU2,命令キャッシュ5,ROM3の間は専用のバスで接続されており、RAM4,データキャッシュ6,割込みコントローラ7,周辺回路8〜10はシステムバス(汎用バス)11に接続されている。CPU2は、システムバス11に接続されているRAM4や周辺回路8〜10に対しては、データキャッシュ6を介してアクセスする。
(First embodiment)
The first embodiment will be described below with reference to FIGS. FIG. 1 is a functional block diagram showing the configuration of the microcomputer. The microcomputer 1 is composed of a CPU 2, a ROM 3, RAM 4, which is a program memory, an instruction cache 5, a data cache 6, an interrupt controller 7, peripheral circuits 8 to 10, and the like. The CPU 2, the instruction cache 5, and the ROM 3 are connected by a dedicated bus, and the RAM 4, the data cache 6, the interrupt controller 7, and the peripheral circuits 8 to 10 are connected to a system bus (general-purpose bus) 11. The CPU 2 accesses the RAM 4 and the peripheral circuits 8 to 10 connected to the system bus 11 via the data cache 6.

周辺回路8〜10は、割込みコントローラ7に対して割込み信号を出力すると共に、その割込み信号を出力する時点よりも以前に、後述する割込み予告信号を出力する。割込みコントローラ7は、CPU2に対して割込み要求信号と、その割込み要求の番号を通知する信号(割込み要求番号通知)とを出力し、CPU2は、割込みコントローラ7に対して割込み要求受理信号を出力する。また、割込みコントローラ7は、命令キャッシュ5に対して上記割込要求番号通知を、割込み処理先読み要求として出力する。そして、命令キャッシュ5は、割込みコントローラ7に対して先読み完了通知,又は先読み中止通知を出力する。   The peripheral circuits 8 to 10 output an interrupt signal to the interrupt controller 7 and output an interrupt notice signal described later before the time when the interrupt signal is output. The interrupt controller 7 outputs an interrupt request signal and a signal for notifying the interrupt request number (interrupt request number notification) to the CPU 2, and the CPU 2 outputs an interrupt request acceptance signal to the interrupt controller 7. . The interrupt controller 7 outputs the interrupt request number notification to the instruction cache 5 as an interrupt processing prefetch request. Then, the instruction cache 5 outputs a prefetch completion notification or a prefetch stop notification to the interrupt controller 7.

図2は、割込みコントローラ7の内部構成を示す機能ブロック図である。優先順位指定レジスタ12には、CPU2により各割込み要求番号に対する優先順位が書き込まれて指定され、指定された優先順位データは優先順位判定部13,14に出力される。優先順位判定部13,14には、それぞれ周辺回路8〜9からの割込み信号,割込み予告信号が入力される。そして、優先順位判定部13,14は、複数の割込み信号,割込み予告信号が同時に入力された場合には、それらと各信号について優先順位指定レジスタ12より与えられる優先順位データとを比較し、優先順位が高く設定されている方の割込み信号,割込み予告信号を選択して出力する。   FIG. 2 is a functional block diagram showing the internal configuration of the interrupt controller 7. In the priority specification register 12, the CPU 2 writes and specifies the priority for each interrupt request number, and the specified priority data is output to the priority determination units 13 and 14. An interrupt signal and an interrupt notice signal from the peripheral circuits 8 to 9 are input to the priority determination units 13 and 14, respectively. Then, when a plurality of interrupt signals and interrupt notice signals are input simultaneously, the priority determination units 13 and 14 compare them with the priority data provided from the priority specification register 12 for each signal, Select and output the interrupt signal or interrupt notice signal that has the higher priority.

優先順位判定部14を介して出力される割込み予告信号は、先読み制御部15に入力され、優先順位判定部13を介して出力される割込み信号は、先読み制御部15,先読み完了制御部16,割込み要求制御部17に入力されている。先読み制御部15は、入力される割込み予告信号に応じた割込み要求番号を、割込み処理先読み要求として出力する。先読み完了制御部16は、先読み完了通知が入力されると、その時点で先読み制御部15が出力している割込み処理先読み要求をリセットさせる。割込み要求制御部17は、入力される割込み信号に応じた割込み要求番号を、割込み要求として出力し、割込み要求受理信号が入力されると、その時点で出力している割込み要求をリセットする。   The interrupt notice signal output via the priority determination unit 14 is input to the prefetch control unit 15, and the interrupt signal output via the priority determination unit 13 includes the prefetch control unit 15, the prefetch completion control unit 16, Input to the interrupt request control unit 17. The prefetch control unit 15 outputs an interrupt request number corresponding to the input interrupt notice signal as an interrupt processing prefetch request. When the prefetch completion notification is input, the prefetch completion control unit 16 resets the interrupt processing prefetch request output by the prefetch control unit 15 at that time. The interrupt request control unit 17 outputs an interrupt request number corresponding to the input interrupt signal as an interrupt request. When an interrupt request acceptance signal is input, the interrupt request output at that time is reset.

図3は、命令キャッシュ5の内部構成を示す機能ブロック図である。命令キャッシュ5は、複数のウェイ(ライン)で構成されるキャッシュメモリ18を備えており、入力されるアドレスは、制御回路(キャッシュコントローラ,ハードウェアロジックで構成される)19を介してROM3側に出力され、キャッシュメモリ18及びキャッシュタグ比較部20にも入力されている。キャッシュメモリ19には、ROM3より読み出された命令(命令のデータ)が書き込まれる。キャッシュタグ比較部20は、入力されたアドレス上位側をキャッシュメモリ18の各ウェイに付されているタグと比較して、ウェイの1つを選択するためのマルチプレクサ21に選択信号を出力する。マルチプレクサ21により選択されたウェイの命令は、CPU2に出力される。   FIG. 3 is a functional block diagram showing the internal configuration of the instruction cache 5. The instruction cache 5 includes a cache memory 18 configured by a plurality of ways (lines), and an input address is input to the ROM 3 side via a control circuit (configured by a cache controller and hardware logic) 19. The data is output and input to the cache memory 18 and the cache tag comparison unit 20. In the cache memory 19, an instruction (instruction data) read from the ROM 3 is written. The cache tag comparison unit 20 compares the input higher address side with the tag attached to each way of the cache memory 18 and outputs a selection signal to the multiplexer 21 for selecting one of the ways. The instruction of the way selected by the multiplexer 21 is output to the CPU 2.

割込みコントローラ7より与えられる割込み要求番号はベクタアドレス生成回路22に入力され、ベクタアドレス生成回路22は、割込み要求番号に応じて、CPU2を割込みハンドラの先頭アドレスに分岐させる命令が格納されているベクタアドレスを制御回路19及びハンドラアドレス生成部23に出力する。ハンドラアドレス生成部23は、入力されるベクタアドレスに対応する割込みハンドラのアドレスを生成し、制御回路19に出力する。また、ハンドラアドレス生成部23には、ROM3より読み出されてキャッシュメモリ18に書き込まれる命令が入力されており、ベクタアドレスにより読み出される分岐命令に含まれている分岐先アドレスを抽出することでハンドラアドレスを生成する。制御回路19には、その他、CPU2からの割込み許可状態信号と、割込みコントローラ7からの割込み処理先読み要求とが入力されている。また、制御回路19は、割込みコントローラ7に対して先読み完了通知,先読み中止通知を出力する。   The interrupt request number given from the interrupt controller 7 is input to the vector address generation circuit 22, and the vector address generation circuit 22 stores a vector in which an instruction for branching the CPU 2 to the start address of the interrupt handler is stored according to the interrupt request number. The address is output to the control circuit 19 and the handler address generator 23. The handler address generation unit 23 generates an interrupt handler address corresponding to the input vector address and outputs it to the control circuit 19. The handler address generation unit 23 receives an instruction read from the ROM 3 and written to the cache memory 18, and the handler address generator 23 extracts the branch destination address included in the branch instruction read by the vector address. Generate an address. In addition, an interrupt permission state signal from the CPU 2 and an interrupt processing prefetch request from the interrupt controller 7 are input to the control circuit 19. Further, the control circuit 19 outputs a prefetch completion notice and a prefetch stop notice to the interrupt controller 7.

本実施例におけるマイクロコンピュータ1の動作概要としては、周辺回路8〜9は、発生した割込み要因に応じて、一般的に割込み信号が出力されるタイミングよりも以前の段階で割込み予告信号を出力するように構成されている。すると、割込みコントローラ7が、対応する割込み処理を行うためのベクタ並びにハンドラを、ROM3より命令キャッシュ5にロードさせる先読み処理を行うようになっている。そこで次に、割込み予告信号を出力する周辺回路8〜10の具体構成例について、図4ないし図9を参照して説明する。   As an outline of the operation of the microcomputer 1 in this embodiment, the peripheral circuits 8 to 9 generally output an interrupt notice signal at a stage earlier than the timing at which the interrupt signal is output, according to the generated interrupt factor. It is configured as follows. Then, the interrupt controller 7 performs a prefetch process for loading the vector and handler for performing the corresponding interrupt process from the ROM 3 to the instruction cache 5. Next, a specific configuration example of the peripheral circuits 8 to 10 that output the interrupt notice signal will be described with reference to FIGS.

図4は、周辺回路8が通信機能を備える場合の構成例であり、(a)はUART(Universal Asynchronous Receiver Transmitter),(b)はCAN(Controller Area Network)に対応している。尚、一般的な通信機能に関する説明は省略し、本発明の要旨に係る部分のみ説明する。図4(a)に示す周辺回路8Aについては、受信データに含まれるスタート/ストップビットの検出に伴う制御や、パリティビットの検出に伴う制御を行う制御回路24が、割込み予告信号並びに割込み信号を出力する。また、図4(b)に示す周辺回路8Bについては、受信データ(メッセージ)を複数のメッセージバッファの何れに格納するかを判定したり、ACK(アクノリッジ)制御やCRC(Cyclic Redundancy Check)制御を行う制御回路25が、割込み予告信号並びに割込み信号を出力する。尚、通信機能については、UARTやCANに限ることなく、その他の通信プロトコルであっても良い。   FIG. 4 shows a configuration example when the peripheral circuit 8 has a communication function. FIG. 4A corresponds to a UART (Universal Asynchronous Receiver Transmitter), and FIG. 4B corresponds to a CAN (Controller Area Network). In addition, the description regarding a general communication function is abbreviate | omitted, and only the part based on the summary of this invention is demonstrated. For the peripheral circuit 8A shown in FIG. 4A, the control circuit 24 that performs control associated with detection of the start / stop bit included in the received data and control associated with detection of the parity bit outputs the interrupt notice signal and the interrupt signal. Output. For the peripheral circuit 8B shown in FIG. 4B, it is determined in which of the plurality of message buffers received data (message) is stored, ACK (acknowledge) control and CRC (Cyclic Redundancy Check) control are performed. The control circuit 25 to perform outputs an interrupt notice signal and an interrupt signal. The communication function is not limited to UART or CAN, but may be other communication protocols.

図5(a),(b)は、図4(a),(b)の構成に対応して割込み予告信号を出力するタイミングの一例を示している。図5(a)に示すUARTの場合、通信バス上にスタートビットが出力されるとデータの送信が開始され、続いて8ビットのデータがシリアルに送信される。そして、パリティビット(P)に続いてストップビットが出力されると送信が終了する。一般的に、このようなデータを受信した場合の割込み信号は、ストップビットが出力された後に出力される。本実施例では、周辺回路8Aは、スタートビットを受信した(これが、割込みを発生させる要因となる事象の発生を、初期段階で検出することに相当する)以降から、ストップビットが出力される以前のタイミングで割込み予告信号を出力する。   FIGS. 5A and 5B show an example of the timing at which an interrupt notice signal is output corresponding to the configuration of FIGS. 4A and 4B. In the case of the UART shown in FIG. 5A, data transmission is started when a start bit is output on the communication bus, and then 8-bit data is transmitted serially. When the stop bit is output following the parity bit (P), the transmission is completed. In general, an interrupt signal when such data is received is output after a stop bit is output. In this embodiment, the peripheral circuit 8A receives the start bit (this corresponds to detecting the occurrence of an event that causes an interrupt at an initial stage) and before the stop bit is output. An interrupt notice signal is output at the timing.

ここで、割込み予告信号を出力してから割込み信号を出力するまでに、どれ位の時間を確保できるかを具体数値で計算してみる。ボーレートが10Kbpsであるとして、割込み予告信号をパリティビット(P)の受信後に出力することを想定する。この場合、先読み処理を行うための余裕時間は1ビットの送信期間に相当する100μsとなるが、CPU2の動作クロック周波数が50MHzであるとすれば、5000サイクル(周期)の間隔がある。したがって、命令キャッシュ5に例えば数100バイト程度の割込みハンドラを先読みするのに十分な時間が確保できる。また、データD7の受信後や、スタートビットの受信後に割込み予告信号を出力することも可能であり、その場合は更に余裕を確保できる。   Here, a specific numerical value is used to calculate how much time can be secured from the output of the interrupt notice signal to the output of the interrupt signal. Assuming that the baud rate is 10 Kbps, the interrupt notice signal is output after receiving the parity bit (P). In this case, the margin time for performing the prefetch process is 100 μs corresponding to a 1-bit transmission period, but if the operation clock frequency of the CPU 2 is 50 MHz, there is an interval of 5000 cycles (periods). Therefore, sufficient time can be secured in the instruction cache 5 for prefetching an interrupt handler of about several hundred bytes, for example. It is also possible to output an interrupt notice signal after receiving the data D7 or after receiving the start bit. In this case, a further margin can be secured.

また、図5(b)に示すCANの場合、通信バス上にSOF(Start Of Frame)が出力されるとデータの送信が開始され、続いてIDやデータ,CRC,ACK等がシリアルに送信される。そして、EOF(End Of Frame)が出力されると送信が終了し、続くIFS(Inter Frame Space)で周辺回路8B内部のデータ転送が開始される。一般には、このよう受信形態の場合の割込み信号は、内部のデータ転送が終了した後に出力される。本実施例では、周辺回路8Bは、例えばDLC(Data Length Code)を受信した以降から、EOFが出力される以前のタイミングで割込み予告信号を出力する。   In the case of the CAN shown in FIG. 5B, data transmission is started when SOF (Start Of Frame) is output on the communication bus, and then ID, data, CRC, ACK, etc. are serially transmitted. The Then, when EOF (End Of Frame) is output, transmission ends, and data transfer in the peripheral circuit 8B is started in the subsequent IFS (Inter Frame Space). In general, the interrupt signal in the reception mode is output after the internal data transfer is completed. In this embodiment, the peripheral circuit 8B outputs an interrupt notice signal at a timing after receiving, for example, DLC (Data Length Code) and before outputting EOF.

ここで、図5(a)の場合と同様に、割込み予告信号を出力してから割込み信号を出力するまでどれ位の時間を確保できるかを計算してみる。ボーレートが500Kbpsであるとして、割込み予告信号をACKの受信後に出力することを想定すると余裕時間は20μsとなり、1000サイクル(周期)の間隔がある。したがって、この場合も割込みハンドラを先読みするのに十分な時間が確保できる。また、DLCの受信後やデータの受信中または受信後,CRCの受信後等に割込み予告信号を出力することも可能であり、その場合は更に余裕を確保できる。例えば、DLCによって受信データの長さが解るので、第何バイトのデータの受信後などを設定することもできる。   Here, as in the case of FIG. 5A, it is calculated how much time can be secured from the output of the interrupt notice signal to the output of the interrupt signal. Assuming that the baud rate is 500 Kbps and the interrupt notice signal is output after receiving ACK, the margin time is 20 μs, and there is an interval of 1000 cycles (periods). Therefore, in this case, sufficient time can be secured for prefetching the interrupt handler. It is also possible to output an interrupt notice signal after receiving DLC, during or after receiving data, after receiving CRC, etc. In this case, a further margin can be secured. For example, since the length of the received data is determined by DLC, it is possible to set the number of bytes after receiving the data.

尚、例えばCRCチェックにより受信がエラーとなった場合は、CPU2に受信エラーを通知するための割込みを発生させる。この場合、命令キャッシュ5及び割込みコントローラ7のステータスはリセットされ、CPU2は、受信エラーに対応した処理を行う。   For example, if a reception error occurs due to a CRC check, an interrupt for notifying the CPU 2 of the reception error is generated. In this case, the statuses of the instruction cache 5 and the interrupt controller 7 are reset, and the CPU 2 performs processing corresponding to the reception error.

また、図6は、周辺回路9がタイマ機能を備える場合の構成例であり、図7は動作タイミングチャートである。これについても周知の構成部分は説明を省略する。ダウンカウンタ26のカウント値がゼロ(全ビット0)になるとタイマ割込み信号を出力するので、カウント値がゼロになる以前の段階で(例えばカウント値が0x00F;下位4ビットがオール1)割込み予告信号を出力する。この場合も確保可能な時間を計算すると、カウンタクロックの周期が0.5μsであれば、カウント値が0x00Fで8μsとなり400サイクルの間隔がある。したがって、この場合も割込みハンドラを先読みするのに十分な時間が確保できる。また、カウント値が0x00Fより大きな値で割込み予告信号を出力することも可能である。   FIG. 6 is a configuration example when the peripheral circuit 9 has a timer function, and FIG. 7 is an operation timing chart. Also for this, description of well-known components is omitted. Since the timer interrupt signal is output when the count value of the down counter 26 becomes zero (all bits 0), an interrupt notice signal is output before the count value becomes zero (for example, the count value is 0x00F; the lower 4 bits are all 1). Is output. In this case as well, when the time that can be secured is calculated, if the counter clock cycle is 0.5 μs, the count value is 8 μs at 0x00F, and there is an interval of 400 cycles. Therefore, in this case, sufficient time can be secured for prefetching the interrupt handler. It is also possible to output an interrupt notice signal with a count value greater than 0x00F.

図8は周辺回路10がインプットキャプチャ機能を備える場合の構成例であり、図9は動作タイミングチャートである。外部入力端子の信号がアクティブ(例えばハイ)になったことを、サンプリングクロックの4周期分連続して検出すると(図中の丸数字1〜4;4度一致;m=4)、前記信号がアクティブになったと判定して割込み信号を出力する。一般に、このように構成される周辺回路10は、入力信号のレベルがノイズの影響を受ける可能性があるため、その影響を排除する目的でアクティブの状態を連続して複数回検出するようにしている。そして、割込み予告信号は、2周期分連続して検出した段階で(2度一致;n=2)出力する。この場合も確保可能な時間を計算すると、カウンタクロックの周期が1μsであれば2μsとなり、100サイクルの間隔がある。したがって、この場合も割込みハンドラを先読みするのに十分な時間が確保できる。   FIG. 8 shows a configuration example when the peripheral circuit 10 has an input capture function, and FIG. 9 is an operation timing chart. When it is detected that the signal of the external input terminal becomes active (for example, high) continuously for four cycles of the sampling clock (circle numerals 1 to 4 in the figure; coincidence four times; m = 4), the signal is An interrupt signal is output when it is determined that it has become active. In general, the peripheral circuit 10 configured in this manner may detect the active state a plurality of times continuously in order to eliminate the influence of the input signal level because the level of the input signal may be affected by the noise. Yes. Then, the interrupt notice signal is output when it is detected continuously for two cycles (twice coincidence; n = 2). Also in this case, when the time that can be secured is calculated, if the period of the counter clock is 1 μs, it becomes 2 μs, and there is an interval of 100 cycles. Therefore, in this case, sufficient time can be secured for prefetching the interrupt handler.

例えば、ROM3より命令キャッシュ5にデータを転送するバスサイズが64ビットであり、割込みハンドラの容量が256バイトであればデータ転送回数は32回となるので、1回の転送に3サイクルを要しても2μsの間に転送が可能である。また、データを転送バスサイズが128ビットであればデータ転送回数は1/2となるので、割込みハンドラの実際の容量等に応じて、動作クロック周波数等も併せて適宜調整すれば良い。   For example, if the bus size for transferring data from the ROM 3 to the instruction cache 5 is 64 bits and the capacity of the interrupt handler is 256 bytes, the number of times of data transfer is 32, so 3 cycles are required for one transfer. Even in this case, transfer is possible in 2 μs. If the data transfer bus size is 128 bits, the number of data transfers is halved. Therefore, the operation clock frequency and the like may be adjusted as appropriate according to the actual capacity of the interrupt handler.

次に、本実施例の作用について図10及び図11を参照して説明する。図10は、CPU2,命令キャッシュ5,割込みコントローラ7,周辺回路8〜10の間における処理の流れを示すフロー(シーケンス)図である。CPU2が、割込み処理以外の通常処理を実行している場合に、周辺回路8〜10の何れか1つ以上が割込み予告信号を出力すると(S1)、割込みコントローラ7は、その割込み予告信号に応じた割込み要求番号を命令キャッシュ5に出力する(S2)。ここで、複数の割込み予告信号が同時に入力された場合は、前述のように優先順位が高い方の割込み要求番号を出力する。   Next, the effect | action of a present Example is demonstrated with reference to FIG.10 and FIG.11. FIG. 10 is a flow (sequence) diagram showing the flow of processing among the CPU 2, instruction cache 5, interrupt controller 7, and peripheral circuits 8-10. When the CPU 2 is executing normal processing other than interrupt processing, if any one or more of the peripheral circuits 8 to 10 outputs an interrupt notice signal (S1), the interrupt controller 7 responds to the interrupt notice signal. The interrupt request number is output to the instruction cache 5 (S2). Here, when a plurality of interrupt notice signals are input simultaneously, the interrupt request number with the higher priority is output as described above.

命令キャッシュ5は、入力された割込み要求番号に応じたベクタアドレスを生成してROM3に出力し、制御回路19が対応する分岐命令をキャッシュメモリ18にロードさせる(S3)。続いて、ベクタアドレスに対応した割込みハンドラのアドレスをROM3に出力し、割込みハンドラをキャッシュメモリ18にロードさせる(S4)。これらS3,S4が「先読み処理」に対応する。そして、先読み処理が完了すると、先読み完了通知を割込みコントローラ7に出力し(S5)、割込みコントローラは上記通知を受理する(S6)。そして、対応する周辺回路より割込み信号が出力されるまで待機状態となる。   The instruction cache 5 generates a vector address corresponding to the input interrupt request number and outputs it to the ROM 3, and the control circuit 19 loads the corresponding branch instruction into the cache memory 18 (S3). Subsequently, the address of the interrupt handler corresponding to the vector address is output to the ROM 3, and the interrupt handler is loaded into the cache memory 18 (S4). These S3 and S4 correspond to the “prefetching process”. When the prefetch process is completed, a prefetch completion notice is output to the interrupt controller 7 (S5), and the interrupt controller accepts the notice (S6). And it will be in a standby state until an interrupt signal is output from the corresponding peripheral circuit.

割込み予告信号を出力した周辺回路が割込み信号を出力すると(S7)、割込みコントローラ7は、対応する割込みハンドラの先読みが完了していることを条件に、その割込み信号に応じた割込み要求(割込みの発生通知)をCPU2に出力する(S8)。すなわち、割込み信号が入力された段階で上記の先読みが完了していなければ、割込みコントローラ7はCPU2に対する割込み要求の出力を保留することになる。またこの場合も、複数の割込み信号が同時に入力された場合は、前述のように優先順位が高い方の割込み信号を出力する。CPU2は、割込みの受付を許可している場合は、前記割込み信号を受理したことを通知する信号を割込みコントローラ7に出力する(S9)。そして、割込みハンドラを実行するための準備(プログラムカウンタ値やフラグ値の退避等)をする移行状態となる。   When the peripheral circuit that has output the interrupt notice signal outputs an interrupt signal (S7), the interrupt controller 7 sets the interrupt request (interrupt request) according to the interrupt signal on the condition that the prefetching of the corresponding interrupt handler has been completed. The occurrence notification) is output to the CPU 2 (S8). That is, if the prefetching is not completed at the stage when the interrupt signal is input, the interrupt controller 7 suspends the output of the interrupt request to the CPU 2. Also in this case, when a plurality of interrupt signals are input simultaneously, the interrupt signal having the higher priority is output as described above. If the CPU 2 permits acceptance of the interrupt, the CPU 2 outputs a signal notifying that the interrupt signal has been accepted to the interrupt controller 7 (S9). Then, a transition is made to prepare for executing the interrupt handler (saving the program counter value, flag value, etc.).

割込みコントローラ7は、CPU2からの割込み受理通知が入力されると、対応する割込み要求番号をCPU2に出力する(S10)。すると、CPU2は、前記割込み要求番号に応じたベクタアドレスを出力して命令キャッシュ5にアクセスし(S11)、ヒットするので命令キャッシュ5より割込みベクタである分岐命令が読み出される(S12)。ここで、S11からCPU2は割込み処理の実行状態となる。CPU2は、読み出した分岐命令を実行することで、対応する割込みハンドラの先頭アドレスを出力して命令キャッシュ5にアクセスする(S13)。すると、命令キャッシュ5より割込みハンドラの命令が読み出されて(S14)、CPU2は、読み出した命令を実行する(S15)。   When the interrupt acceptance notification from the CPU 2 is input, the interrupt controller 7 outputs a corresponding interrupt request number to the CPU 2 (S10). Then, the CPU 2 outputs a vector address corresponding to the interrupt request number, accesses the instruction cache 5 (S11), and hits, so that a branch instruction which is an interrupt vector is read from the instruction cache 5 (S12). Here, from S11, the CPU 2 enters an interrupt processing execution state. By executing the read branch instruction, the CPU 2 outputs the start address of the corresponding interrupt handler and accesses the instruction cache 5 (S13). Then, the instruction of the interrupt handler is read from the instruction cache 5 (S14), and the CPU 2 executes the read instruction (S15).

図11(b)は、図10に示す処理をタイミングチャートで表わしたもので、横軸に示す数字は、目安としてCPU2に割込み信号(図10におけるS8;割込みコントローラ7がCPU2に出力する「割込み要求出力」に対応)が出力された時点を基準とするサイクル数である。尚、上述した周辺回路8〜10の説明で挙げた具体数値例との関連はない。また図11(a)は、比較のため一般的な従来構成の場合を示す。
図11(b)において、割込み予告信号が15サイクル前に出力されると、その時点から(割込みコントローラ7の事前処理(S2)も含む)命令キャッシュ5による割込みベクタ,割込みハンドラの先読み処理が開始される。そして、先読み処理が完了すると、割込みコントローラ7はCPU2に割込み要求を出力し、CPU2は割込み移行処理を開始する。その後に続くハッチング部分はベクタ命令の実行期間であり、それに続く異なるハッチング部分が割込みハンドラの実行期間を示している。
FIG. 11B shows the processing shown in FIG. 10 in a timing chart. The numbers shown on the horizontal axis indicate, as a guideline, an interrupt signal (S8 in FIG. 10; “interrupt that the interrupt controller 7 outputs to the CPU 2”). This corresponds to the number of cycles based on the point in time when “request output” is output. It is not related to the specific numerical examples given in the description of the peripheral circuits 8 to 10 described above. FIG. 11A shows a case of a general conventional configuration for comparison.
In FIG. 11B, when the interrupt notice signal is output 15 cycles before, the prefetch processing of the interrupt vector and the interrupt handler by the instruction cache 5 starts from that point (including the preprocessing (S2) of the interrupt controller 7). Is done. When the prefetch process is completed, the interrupt controller 7 outputs an interrupt request to the CPU 2, and the CPU 2 starts an interrupt transition process. The subsequent hatched part is the execution period of the vector instruction, and the different hatched part following it indicates the execution period of the interrupt handler.

これに対して、図11(a)に示す従来構成の場合は、割込み信号が出力されると、その時点から命令キャッシュへの割込みベクタ及び割込みハンドラの読み込みが開始されるため、CPUは割込み処理の実行待ち状態となる。そして、命令キャッシュへの読み込みが完了した時点でCPUは割込み処理に移行するので、その間にCPUの処理は停滞することになる。   On the other hand, in the case of the conventional configuration shown in FIG. 11 (a), when an interrupt signal is output, reading of the interrupt vector and interrupt handler into the instruction cache starts from that point, so that the CPU performs interrupt processing. Waiting to be executed. Then, since the CPU shifts to interrupt processing when reading into the instruction cache is completed, the CPU processing is stagnated during that time.

以上のように本実施例によれば、周辺回路8〜10は、CPU2に対して割込みを発生させる要因となるデータの受信やタイマ割込み,入力信号のアクティブレベルの連続検出等の発生を初期段階で検出すると、事前に割込み予告信号を割込みコントローラ7に出力し、前記事象の発生が完了した段階で割込み信号を出力する。そして、割込みコントローラ7は、割込み予告信号が入力されると、当該予告信号に対応する割込みベクタ及び割込みハンドラを、ROM3から命令キャッシュ5にロードさせる先読み処理を行う。   As described above, according to the present embodiment, the peripheral circuits 8 to 10 receive the data that causes the CPU 2 to generate an interrupt, the timer interrupt, the continuous detection of the active level of the input signal, and the like in the initial stage. Is detected in advance, an interrupt notice signal is output to the interrupt controller 7 in advance, and an interrupt signal is output when the occurrence of the event is completed. Then, when an interrupt notice signal is input, the interrupt controller 7 performs a prefetch process for loading an interrupt vector and an interrupt handler corresponding to the notice signal from the ROM 3 to the instruction cache 5.

したがって、対応する割込み信号が出力されるまでの期間に命令キャッシュ5への先読み処理を完了させることができ、CPU2は、割込みコントローラ7より割込み要求が入力されると、直ちに割込み処理に移行して割込みハンドラの実行を開始でき、割込みが発生した時点から、当該割込みを処理するまでの応答性を向上させることができる。また、割込みコントローラ7は、前記予告信号に対応する割込み信号が入力された段階で先読み処理が完了していなければ、CPU2に対して行う割込みの発生通知を保留するので、先読み処理が完了した後にCPU2に割込みハンドラの実行を開始させることができ、処理効率の低下を防止できる。   Therefore, the prefetch processing to the instruction cache 5 can be completed during the period until the corresponding interrupt signal is output, and when the interrupt request is input from the interrupt controller 7, the CPU 2 immediately proceeds to interrupt processing. The execution of the interrupt handler can be started, and the responsiveness from when the interrupt occurs until the interrupt is processed can be improved. Further, if the prefetch process is not completed at the stage when the interrupt signal corresponding to the notice signal is input, the interrupt controller 7 suspends the interrupt generation notification to be performed to the CPU 2, so that the prefetch process is completed. It is possible to cause the CPU 2 to start execution of the interrupt handler, and to prevent a reduction in processing efficiency.

また、周辺回路8が通信機能を備える場合は、外部より送信されたデータの受信処理を開始した以降から当該受信処理を完了するまでの間に割込み予告信号を出力する。すなわち、外部よりデータの送信があれば、送信されたデータの受信が完了した時点でCPU2に対して割込みを発生させることになるので、受信処理を開始した以降からその受信処理を完了するまでの間に割込み予告信号を出力すれば、割込みコントローラ7に割込みの発生を予告することができる。   When the peripheral circuit 8 has a communication function, an interrupt notice signal is output after the reception process of data transmitted from the outside is started until the reception process is completed. In other words, if there is data transmission from the outside, an interruption is generated for the CPU 2 when the reception of the transmitted data is completed, so that the reception process is completed after the reception process is started. If an interrupt notice signal is output in the meantime, the interrupt controller 7 can be notified of the occurrence of the interrupt.

また、周辺回路9がタイマ機能を備えている場合は、 タイマ割込み信号を発生させるタイミングよりも所定期間だけ遡行するタイミングで割込み予告信号を出力する。すなわち、ダウンカウンタ26のカウント値によって割込みを発生させるタイミングが決まるので、前記カウント値を参照すれば、タイマ割込み信号を発生させるタイミングよりも遡行するタイミングで割込み予告信号を出力することができる。   Further, when the peripheral circuit 9 has a timer function, the interrupt notice signal is output at a timing that goes back a predetermined period from the timing at which the timer interrupt signal is generated. That is, since the timing at which an interrupt is generated is determined by the count value of the down counter 26, by referring to the count value, it is possible to output an interrupt notice signal at a timing going backward from the timing at which a timer interrupt signal is generated.

また、周辺回路10が、入力信号レベルがアクティブの状態を4回連続して検出すると前記信号がアクティブになったと判定して割込み信号を発生させるインプットキャプチャ機能を備える場合は、前記入力信号のアクティブレベルが2回連続した段階で割込み予告信号を出力する。すなわち、アクティブレベルが2回連続した段階でも、その後に入力信号がアクティブと判定される蓋然性は高いと言えるので、その時点で割込み予告信号を出力すれば、割込みコントローラ7に割込みの発生を予告することができる。   When the peripheral circuit 10 has an input capture function for determining that the signal has become active when an input signal level is detected to be active four times in succession and generating an interrupt signal, the peripheral circuit 10 An interrupt notice signal is output when the level continues twice. That is, even if the active level is continued twice, it can be said that there is a high probability that the input signal is subsequently determined to be active. Therefore, if an interrupt notice signal is output at that time, the interrupt controller 7 is notified of the occurrence of the interrupt. be able to.

(第2実施例)
図12及び図13は第2実施例であり、第1実施例と同一部分には同一符号を付して説明を省略し、以下異なる部分について説明する。第2実施例の構成は基本的に第1実施例と同様であり、命令キャッシュ5が割込みハンドラの先読みを実行している途中で、より優先度が高い割込みが発生した場合の処理を示す。図12は、その処理を示すタイミングチャートであり、図13は図10の一部相当図である。
(Second embodiment)
12 and 13 show a second embodiment. The same parts as those in the first embodiment are denoted by the same reference numerals, and the description thereof is omitted. Hereinafter, different parts will be described. The configuration of the second embodiment is basically the same as that of the first embodiment, and shows processing when an interrupt having a higher priority occurs while the instruction cache 5 is executing prefetching of an interrupt handler. FIG. 12 is a timing chart showing the processing, and FIG. 13 is a partial equivalent diagram of FIG.

2つの周辺回路(1),(2)があり、周辺回路(1)からの割込みの方が優先度が高く設定されている。最初に、周辺回路(2)が割込み予告信号を出力すると(S1a)、割込みコントローラ7は、第1実施例と同様に先読み要求を出力し(S2a)、命令キャッシュ5は、対応する割込みベクタ及び割込みハンドラの先読み処理を開始する(S3a,S4a)。尚、第2実施例では、割込みコントローラ7が命令キャッシュ5に出力する先読み要求と、命令キャッシュ5が割込みコントローラに返す応答通知の内容(データ値)を明示している。   There are two peripheral circuits (1) and (2), and an interrupt from the peripheral circuit (1) has a higher priority. First, when the peripheral circuit (2) outputs an interrupt notice signal (S1a), the interrupt controller 7 outputs a prefetch request as in the first embodiment (S2a), and the instruction cache 5 stores the corresponding interrupt vector and The prefetching process of the interrupt handler is started (S3a, S4a). In the second embodiment, the prefetch request output from the interrupt controller 7 to the instruction cache 5 and the content (data value) of the response notification returned from the instruction cache 5 to the interrupt controller are clearly shown.

図12に示すように、先読み要求は8ビットのデータで構成され、第7,第6ビットは動作指示を示し(00:指示無/01:先読み開始/11:先読み中止)、第5〜第0ビットは割込み番号を示す。割込み番号は値が小さいほど優先度が高く設定されている。また、応答通知は2ビットのデータで構成され、第1,第0ビットで動作結果を示す(00:動作停止中/01:先読み中/10:正常終了/11:強制終了)。したがって、S2aにおいて出力される先読み要求のデータ値は、0x42となる。   As shown in FIG. 12, the prefetch request is composed of 8-bit data, and the seventh and sixth bits indicate an operation instruction (00: no instruction / 01: prefetch start / 11: prefetch stop). The 0 bit indicates an interrupt number. The lower the interrupt number, the higher the priority. The response notification is composed of 2-bit data, and the first and 0th bits indicate the operation result (00: operation stopped / 01: prefetching / 10: normal end / 11: forced end). Therefore, the data value of the prefetch request output in S2a is 0x42.

命令キャッシュ5が上記先読み要求に応じた先読み処理の実行中に、周辺回路(1)が割込み予告信号を出力すると(S1b)、割込みコントローラ7は命令キャッシュ5に対して先読み中止を指示する(S2b;0xC2)。すると、命令キャッシュ5は、その時点で先読み処理を終了し、その旨を割込みコントローラ7に通知する(S16;0x3)。   If the peripheral circuit (1) outputs an interrupt notice signal while the instruction cache 5 is executing the prefetch process in response to the prefetch request (S1b), the interrupt controller 7 instructs the instruction cache 5 to stop prefetching (S2b). ; 0xC2). Then, the instruction cache 5 ends the prefetching process at that time, and notifies the interrupt controller 7 to that effect (S16; 0x3).

割込みコントローラ7は、上記通知を受理すると、周辺回路(1)の割込み予告信号に対応する先読み要求を出力し(S2c;0x41)、割込みコントローラ7は、前記要求に対応する先読みを開始する(S3b,S4b)。そして、先読みを完了すると先読み完了通知を出力し(S5b;0x2)、割込みコントローラ7は前記通知を受理する(S6b)。以降は、第1実施例と同様に処理が行われる。   Upon receiving the notification, the interrupt controller 7 outputs a prefetch request corresponding to the interrupt notice signal of the peripheral circuit (1) (S2c; 0x41), and the interrupt controller 7 starts prefetching corresponding to the request (S3b). , S4b). When prefetching is completed, a prefetch completion notification is output (S5b; 0x2), and the interrupt controller 7 receives the notification (S6b). Thereafter, processing is performed in the same manner as in the first embodiment.

以上のように第2実施例によれば、割込みコントローラ7は、先読み処理の実行中に優先度が高い割込みの予告信号が入力されると、実行中の先読み処理を中止させて、前記優先度が高い割込みに対応する割込みハンドラの先読み処理を開始する。したがって、CPU2が先に処理する予定の割込みに対応するハンドラを、先に命令キャッシュ5にロードすることができる。   As described above, according to the second embodiment, the interrupt controller 7 suspends the prefetching process being executed and inputs the priority when the interrupt notification signal having a high priority is inputted during the prefetching process. The prefetch processing of the interrupt handler corresponding to the interrupt with high is started. Therefore, the handler corresponding to the interrupt scheduled to be processed first by the CPU 2 can be loaded into the instruction cache 5 first.

(第3実施例)
図14及び図15は第3実施例であり、第1実施例と異なる部分について説明する。第3実施例は、命令キャッシュ5が割込み処理に関する先読みを実行している途中で、CPU2からのアクセスでキャッシュミスが発生した場合に、両者の競合を調整する制御に関する。尚、この場合の先読み処理は、第1,第2実施例のように周辺回路8〜10が割込み予告信号を出力する構成を前提としても良いし、割込み予告信号を出力しない構成に適用しても良い。
(Third embodiment)
FIGS. 14 and 15 show a third embodiment, and different parts from the first embodiment will be described. The third embodiment relates to control for adjusting the conflict between the two when a cache miss occurs due to an access from the CPU 2 while the instruction cache 5 is executing prefetching regarding interrupt processing. The prefetching process in this case may be premised on a configuration in which the peripheral circuits 8 to 10 output an interrupt notice signal as in the first and second embodiments, or applied to a configuration in which no interrupt notice signal is output. Also good.

図14は、上記の競合状態でCPU2が割込みの受付を許可している場合であり、(a)は一般的な従来構成である。但し、比較のため、命令キャッシュが先読みを開始するタイミングは第3実施例の構成と同じであるとする。従来構成では、命令キャッシュが割込み処理に関する先読みを行っている途中でCPUからのアクセスにキャッシュミスが発生しても先読み処理が完了するまで継続するので、その間CPUの処理は待機状態となる。そして、先読み処理が完了すると割込みコントローラに完了通知を行い、割込みコントローラがCPUに対して割込み要求を与えるので、CPUはその時点から割込み処理への移行を開始する。   FIG. 14 shows a case where the CPU 2 permits the acceptance of an interrupt in the above-described conflict state, and (a) shows a general conventional configuration. However, for comparison, it is assumed that the timing at which the instruction cache starts prefetching is the same as that of the third embodiment. In the conventional configuration, even if a cache miss occurs in the access from the CPU while the instruction cache is prefetching the interrupt process, the prefetch process is continued until the prefetch process is completed. When the prefetch process is completed, the interrupt controller is notified of completion, and the interrupt controller gives an interrupt request to the CPU, so that the CPU starts the transition to the interrupt process from that point.

一方、図14(b)に示す第3実施例の場合、命令キャッシュ5の制御回路19は、キャッシュミスの発生を認識すると、その時点で割込みコントローラ7に「先読み完了」を通知するが、先読み処理はそのまま継続する。割込みコントローラ7は、「先読み完了通知」を受理すると、割込み信号の入力があった時点でCPU2に割込み要求を出力するので、CPU2は、その時点から割込み処理に移行することになる。   On the other hand, in the case of the third embodiment shown in FIG. 14B, when the control circuit 19 of the instruction cache 5 recognizes the occurrence of a cache miss, it notifies the interrupt controller 7 of “prefetch completion” at that time. Processing continues. When the interrupt controller 7 receives the “prefetch completion notification”, it outputs an interrupt request to the CPU 2 when an interrupt signal is input, and the CPU 2 shifts to interrupt processing from that point.

また、図15は、図14と同じ競合状態でCPU2が割込みの受付を禁止している場合である。(a)に示す従来構成では、CPUからのアクセスにキャッシュミスが発生しても図14と同様に先読み処理を継続し、先読み処理が完了すると完了通知を行う。続いて、通常処理においてミスが発生して命令のロードを開始し、そのロードが完了するとCPUが待機させていた通常処理を再開する。   FIG. 15 shows a case where the CPU 2 prohibits acceptance of an interrupt in the same contention state as FIG. In the conventional configuration shown in (a), even if a cache miss occurs in the access from the CPU, the prefetch process is continued in the same manner as in FIG. 14, and a completion notification is given when the prefetch process is completed. Subsequently, an error occurs in the normal process to start loading an instruction. When the load is completed, the normal process that the CPU has been waiting for is resumed.

図15(b)に示す第3実施例の場合、命令キャッシュ5の制御回路19は、キャッシュミスの発生を認識すると、その時点で先読み処理を中止させて割込みコントローラ7に「先読み中止」を通知する。そして、直ちに通常処理においてキャッシュミスが発生した命令のロードを開始し、そのロードが完了するとCPU2が待機させていた通常処理を再開する。したがって、CPU2が割込みの受付を禁止していることで不要な割込み処理に関する先読みを即時中止し、通常処理のロードを開始するので、その分だけCPU2が待機状態となる期間を削減できる。   In the case of the third embodiment shown in FIG. 15B, when the control circuit 19 of the instruction cache 5 recognizes the occurrence of a cache miss, it stops the prefetch process at that time and notifies the interrupt controller 7 of “prefetch stop”. To do. Then, the load of the instruction in which a cache miss has occurred in the normal process is started immediately, and when the load is completed, the normal process that the CPU 2 has been waiting for is resumed. Therefore, since the CPU 2 prohibits the acceptance of interrupts, prefetching regarding unnecessary interrupt processing is immediately stopped and the loading of the normal processing is started, so that the period during which the CPU 2 is in a standby state can be reduced accordingly.

以上のように第3実施例によれば、割込みコントローラ7は、周辺回路8〜10が割込みを発生させるとCPU2に対して行う割込みの発生通知を保留して、当該割込みに対応する割込みハンドラをROM3から命令キャッシュ5にロードさせる先読み処理を行う。そして、命令キャッシュ5の制御回路19は、先読み処理の実行中にCPU2からのアクセスにキャッシュミスが発生すると、その時点でCPU2が割込み許可状態であれば先読み処理を優先して実行し、割込み禁止状態であれば先読み処理を中止して、CPU2がフェッチしようとする命令を命令キャッシュ5にロードさせる。   As described above, according to the third embodiment, when the peripheral circuit 8 to 10 generates an interrupt, the interrupt controller 7 suspends the interrupt generation notification to the CPU 2 and sets an interrupt handler corresponding to the interrupt. A prefetching process for loading the instruction cache 5 from the ROM 3 is performed. Then, if a cache miss occurs in the access from the CPU 2 during execution of the prefetch process, the control circuit 19 of the instruction cache 5 preferentially executes the prefetch process if the CPU 2 is in the interrupt enabled state at that time and prohibits interrupts. If it is in the state, the prefetch process is stopped and the instruction to be fetched by the CPU 2 is loaded into the instruction cache 5.

すなわち、CPU2が割込み許可状態であれば先読み処理を優先することで、CPU2に割込み処理を早期に実行させることができる。また、CPU2が割込み禁止状態であれば、割込みの処理が直ちに開始されることはないので、CPU2がフェッチしようとする命令を命令キャッシュ5にロードさせて、現在実行中の通常処理を優先させる。したがって、CPU2側の割込みへの対応状態に応じて処理効率を向上させることができる。
そして、制御回路19は、先読み処理を優先して実行する際には、割込みコントローラ7に対して直ちに先読み処理の完了を通知し、割込みコントローラは7、当該通知がなされるとCPU2に対して割込みの発生通知を行うので、CPU2を直ちに割込み処理に移行させることができる。
That is, if the CPU 2 is in the interrupt enabled state, the prefetching process is prioritized so that the CPU 2 can execute the interrupt process early. Further, if the CPU 2 is in the interrupt disabled state, the interrupt processing is not started immediately, so that the instruction to be fetched by the CPU 2 is loaded into the instruction cache 5 to give priority to the normal processing currently being executed. Therefore, the processing efficiency can be improved according to the state of correspondence to the interrupt on the CPU 2 side.
When the control circuit 19 preferentially executes the prefetch process, the control circuit 19 immediately notifies the interrupt controller 7 of the completion of the prefetch process, and the interrupt controller 7 interrupts the CPU 2 when the notification is made. Therefore, the CPU 2 can immediately shift to interrupt processing.

本発明は、上記し、又は図面に記載した実施例にのみ限定されるものではなく、以下のような変型又は拡張が可能である。
例えば割込みハンドラの先頭アドレスが固定であれば、割込みベクタに関しては先読み処理を行う必要はなく、例えば割込み要求番号が与えられると、CPUがその割込み要求番号に応じた割込みハンドラを直ちに出力するように構成しても良い。
割込みコントローラは、CPUが割込み処理に移行するまでの期間分だけ、割込み信号を早めに出力しても良い。
周辺回路の機能は、実施例に示したものに限ることなく、マイクロコンピュータの仕様として必要とされるものであればどのような機能でも良い。また、周辺回路の数も、個別の設計に応じて適宜決定すれば良い。
The present invention is not limited to the embodiments described above or shown in the drawings, and can be modified or expanded as follows.
For example, if the start address of an interrupt handler is fixed, there is no need to perform prefetch processing for the interrupt vector. For example, when an interrupt request number is given, the CPU immediately outputs an interrupt handler corresponding to the interrupt request number. It may be configured.
The interrupt controller may output the interrupt signal early for the period until the CPU shifts to interrupt processing.
The function of the peripheral circuit is not limited to that shown in the embodiment, and any function may be used as long as it is required as a specification of the microcomputer. Further, the number of peripheral circuits may be determined as appropriate according to individual design.

プログラムメモリは、書き換え可能なフラッシュメモリ等であっても良い。
第3実施例の構成に、第2実施例の構成を組み合わせても良い。
命令キャッシュ5において、キャッシュメモリ18にアドレス管理情報のフラグ格納領域を設け、先読みが完了した段階でフラグをセットし、CPU2がアクセスして読み出した(ヒットした)アドレスのフラグをリセットして、命令の上書きを可能にしても良い。これにより、CPU2が割込みの受付を禁止していることで割込み要求が保留された場合に、先読みした命令が上書きされることを防止し、キャッシュミスの発生を回避できる。
通常処理の命令を先読みするキャッシュメモリと、割込み処理に関する命令を先読み処理するキャッシュメモリとが、例えばウェイ(ライン)が異なるように切り分けても良い。これにより、通常処理を実行している途中に割込み処理に関する先読み処理を行った場合に、通常処理の命令を上書きすることを回避できる。
The program memory may be a rewritable flash memory or the like.
The configuration of the second embodiment may be combined with the configuration of the third embodiment.
In the instruction cache 5, an address management information flag storage area is provided in the cache memory 18, the flag is set when prefetching is completed, and the flag of the address accessed and read (hit) by the CPU 2 is reset. May be overwritten. Thereby, when the interrupt request is suspended because the CPU 2 prohibits the acceptance of the interrupt, it is possible to prevent the prefetched instruction from being overwritten and to prevent the occurrence of a cache miss.
The cache memory that prefetches instructions for normal processing and the cache memory that prefetches instructions for interrupt processing may be separated so that, for example, ways (lines) are different. As a result, it is possible to avoid overwriting an instruction for normal processing when prefetch processing related to interrupt processing is performed during normal processing.

図面中、1はマイクロコンピュータ、2はCPU、3はROM(プログラムメモリ)、5は命令キャッシュ、7は割込みコントローラ、8〜10は周辺回路、19は制御回路(キャッシュコントローラ)を示す。   In the drawings, 1 is a microcomputer, 2 is a CPU, 3 is a ROM (program memory), 5 is an instruction cache, 7 is an interrupt controller, 8 to 10 are peripheral circuits, and 19 is a control circuit (cache controller).

Claims (8)

CPUと、
このCPUに対する割込みを発生させる1つ以上の周辺回路と、
前記周辺回路が発生させた割込みを制御して、前記CPUに処理させる割込みコントローラと、
前記割込みを前記CPUが処理するための割込みハンドラが記憶されるプログラムメモリと、
前記プログラムメモリの一部がロードされる命令キャッシュとを備え、
前記周辺回路は、前記CPUに対して割込みを発生させる要因となる事象の発生を初期段階で検出すると割込み予告信号を前記割込みコントローラに対して出力し、前記事象の発生が完了した段階で割込み信号を出力し、
前記割込みコントローラは、前記割込み予告信号が入力されると、当該予告信号に対応する割込みハンドラを、前記プログラムメモリから前記命令キャッシュにロードさせる先読み処理を行い、その後、前記割込み予告信号に対応する割込み信号が入力された段階で前記先読み処理が完了していなければ、前記CPUに対して行う前記割込みの発生通知を保留することを特徴とするマイクロコンピュータ。
CPU,
One or more peripheral circuits that generate an interrupt to the CPU;
An interrupt controller for controlling the interrupt generated by the peripheral circuit and causing the CPU to process the interrupt;
A program memory for storing an interrupt handler for the CPU to process the interrupt;
An instruction cache into which a part of the program memory is loaded,
When the peripheral circuit detects an occurrence of an event that causes an interrupt to the CPU at an initial stage, the peripheral circuit outputs an interrupt notice signal to the interrupt controller, and interrupts when the occurrence of the event is completed. Output signal,
When the interrupt notice signal is input, the interrupt controller performs a prefetch process for loading an interrupt handler corresponding to the notice signal from the program memory into the instruction cache, and then interrupts corresponding to the interrupt notice signal. If the prefetching process is not completed at the stage when the signal is input, the microcomputer interrupts the interrupt generation notification to the CPU.
前記周辺回路は、通信機能を備えており、
外部より送信されたデータの受信処理を開始した以降から当該受信処理を完了するまでの間に、前記割込み予告信号を出力することを特徴とする請求項1記載のマイクロコンピュータ。
The peripheral circuit has a communication function,
2. The microcomputer according to claim 1, wherein the interrupt notice signal is output after the reception process of data transmitted from the outside is started until the reception process is completed.
前記周辺回路は、タイマ機能を備えており、
タイマ割込み信号を発生させるタイミングよりも所定期間だけ遡行するタイミングで、前記割込み予告信号を出力することを特徴とする請求項1又は2記載のマイクロコンピュータ。
The peripheral circuit has a timer function,
3. The microcomputer according to claim 1, wherein the interrupt notice signal is output at a timing that is retroactive by a predetermined period from a timing at which the timer interrupt signal is generated.
前記周辺回路は、入力される信号のレベルがアクティブとなっていることを、m回以上連続して検出すると、前記信号がアクティブになったことを要因として割込み信号を発生させ、
前記入力信号のアクティブレベルがn(<m;n,mは自然数)回以上連続した段階で、前記割込み予告信号を出力することを特徴とする請求項1ないし3の何れかに記載のマイクロコンピュータ。
When the peripheral circuit continuously detects that the level of the input signal is active m times or more, it generates an interrupt signal due to the fact that the signal is active,
4. The microcomputer according to claim 1, wherein the interrupt notice signal is output when the active level of the input signal continues n times (<m; n and m are natural numbers) or more times. .
前記割込みコントローラは、前記先読み処理の実行中に、より優先度が高い割込みの予告信号が入力されると、前記先読み処理を中止して、前記優先度が高い割込みに対応する割込みハンドラの先読み処理を開始することを特徴とする請求項1ないし4の何れかに記載のマイクロコンピュータ。   The interrupt controller stops the prefetching process and inputs a prefetching process of an interrupt handler corresponding to the interrupt having a high priority when an interrupt notification signal having a higher priority is input during execution of the prefetching process. 5. The microcomputer according to claim 1, wherein the microcomputer is started. CPUと、
このCPUに対する割込みを発生させる1つ以上の周辺回路と、
前記周辺回路が発生させた割込みを制御して、前記CPUに処理させる割込みコントローラと、
前記割込みを前記CPUが処理するための割込みハンドラが記憶されるプログラムメモリと、
前記プログラムメモリの一部がロードされるキャッシュメモリと、このキャッシュメモリに対する書き込み及び読み出しを制御するキャッシュコントローラとで構成される命令キャッシュとを備え、
前記割込みコントローラは、前記周辺回路が割込みを発生させると前記CPUに対して行う前記割込みの発生通知を保留して、当該割込みに対応する割込みハンドラを前記プログラムメモリから前記命令キャッシュにロードさせる先読み処理を行い、
前記キャッシュコントローラは、前記先読み処理の実行中に、前記CPUからのアクセスにキャッシュミスが発生すると、その時点で前記CPUが割込み許可状態であった場合は前記先読み処理を優先して実行し、前記CPUが割込み禁止状態であった場合は、前記先読み処理を中止して、前記CPUがフェッチしようとする命令を、前記プログラムメモリから前記命令キャッシュにロードさせることを特徴とするマイクロコンピュータ。
CPU,
One or more peripheral circuits that generate an interrupt to the CPU;
An interrupt controller for controlling the interrupt generated by the peripheral circuit and causing the CPU to process the interrupt;
A program memory for storing an interrupt handler for the CPU to process the interrupt;
A cache memory in which a part of the program memory is loaded, and an instruction cache including a cache controller that controls writing and reading to the cache memory;
When the peripheral circuit generates an interrupt, the interrupt controller holds the interrupt generation notification to the CPU and loads an interrupt handler corresponding to the interrupt from the program memory to the instruction cache. And
When a cache miss occurs during access from the CPU during execution of the prefetch process, the cache controller preferentially executes the prefetch process if the CPU is in an interrupt enabled state at that time, When the CPU is in an interrupt disabled state, the prefetching process is stopped, and an instruction to be fetched by the CPU is loaded from the program memory into the instruction cache.
前記キャッシュコントローラは、前記先読み処理を優先して実行する際には、前記割込みコントローラに対して直ちに先読み処理の完了を通知し、
前記割込みコントローラは、先読み処理の完了が通知されると、前記CPUに対して前記割込みの発生通知を行うことを特徴とする請求項6記載のマイクロコンピュータ。
When the cache controller preferentially executes the prefetch process, the cache controller immediately notifies the interrupt controller of the completion of the prefetch process,
7. The microcomputer according to claim 6, wherein when the completion of the prefetch process is notified, the interrupt controller notifies the CPU of the occurrence of the interrupt.
前記割込みコントローラは、前記先読み処理の実行中に、より優先度が高い割込みが発生すると前記先読み処理を中止して、前記優先度が高い割込みに対応する割込みハンドラの先読み処理を開始することを特徴とする請求項6又は7記載のマイクロコンピュータ。   The interrupt controller stops the prefetch process when an interrupt with a higher priority occurs during execution of the prefetch process, and starts the prefetch process of the interrupt handler corresponding to the interrupt with the higher priority. The microcomputer according to claim 6 or 7.
JP2011067734A 2011-03-25 2011-03-25 Microcomputer Expired - Fee Related JP5549627B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011067734A JP5549627B2 (en) 2011-03-25 2011-03-25 Microcomputer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011067734A JP5549627B2 (en) 2011-03-25 2011-03-25 Microcomputer

Publications (2)

Publication Number Publication Date
JP2012203655A true JP2012203655A (en) 2012-10-22
JP5549627B2 JP5549627B2 (en) 2014-07-16

Family

ID=47184603

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011067734A Expired - Fee Related JP5549627B2 (en) 2011-03-25 2011-03-25 Microcomputer

Country Status (1)

Country Link
JP (1) JP5549627B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015032265A (en) * 2013-08-06 2015-02-16 株式会社デンソー Electronic controller
WO2020026315A1 (en) * 2018-07-30 2020-02-06 三菱電機株式会社 Interrupt control device, interrupt control method, and interrupt control program

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08202469A (en) * 1995-01-30 1996-08-09 Fujitsu Ltd Microcontroller unit equipped with universal asychronous transmitting and receiving circuit
JP2001056781A (en) * 1999-08-19 2001-02-27 Sharp Corp Information processor
JP2001306335A (en) * 2000-04-27 2001-11-02 Sony Corp Computer

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08202469A (en) * 1995-01-30 1996-08-09 Fujitsu Ltd Microcontroller unit equipped with universal asychronous transmitting and receiving circuit
JP2001056781A (en) * 1999-08-19 2001-02-27 Sharp Corp Information processor
JP2001306335A (en) * 2000-04-27 2001-11-02 Sony Corp Computer

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015032265A (en) * 2013-08-06 2015-02-16 株式会社デンソー Electronic controller
WO2020026315A1 (en) * 2018-07-30 2020-02-06 三菱電機株式会社 Interrupt control device, interrupt control method, and interrupt control program
JPWO2020026315A1 (en) * 2018-07-30 2020-12-17 三菱電機株式会社 Interrupt controller, interrupt control method and interrupt control program

Also Published As

Publication number Publication date
JP5549627B2 (en) 2014-07-16

Similar Documents

Publication Publication Date Title
EP1421490B1 (en) Methods and apparatus for improving throughput of cache-based embedded processors by switching tasks in response to a cache miss
WO2018040494A1 (en) Method and device for extending processor instruction set
US10365979B2 (en) Lockstepped CPU selection based on failure status
JP2007241918A (en) Processor device
JP2011513843A (en) System and method for data transfer in an execution device
EP3757771A1 (en) Methods, apparatuses, and media for processing loop instruction set
CN105765541A (en) Control device for a motor vehicle
JP5142868B2 (en) Cache memory control circuit and processor
US5193159A (en) Microprocessor system
US9400655B2 (en) Technique for freeing renamed registers
JP5549627B2 (en) Microcomputer
US8601488B2 (en) Controlling the task switch timing of a multitask system
EP2940575A1 (en) Controller circuits, data interface blocks, and methods for transferring data
US20080209277A1 (en) Computer system and memory system
US7603489B2 (en) Direct memory access controller including first and second transfer setting registers
WO2015085891A1 (en) Method, device and system for establishing processor cache checkpoint
US20020169930A1 (en) Memory access control system, method thereof and host bridge
JP2006221606A (en) Data processor
CN110727463B (en) Zero-level instruction circular buffer prefetching method and device based on dynamic credit
JPH07262032A (en) Information processor
JP3476314B2 (en) Microprocessor
US7124277B2 (en) Method and apparatus for a trace cache trace-end predictor
JP2927751B2 (en) Information processing apparatus, information processing method, and scheduling apparatus
JP5362856B2 (en) Error generation instruction circuit, storage device, information processing apparatus, and error generation instruction circuit control method
JPH08272732A (en) Method and device for data transfer

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130423

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140212

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140218

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140402

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140422

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140505

R151 Written notification of patent or utility model registration

Ref document number: 5549627

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees