JP3215934B2 - Microprocessor development support equipment - Google Patents
Microprocessor development support equipmentInfo
- Publication number
- JP3215934B2 JP3215934B2 JP30879393A JP30879393A JP3215934B2 JP 3215934 B2 JP3215934 B2 JP 3215934B2 JP 30879393 A JP30879393 A JP 30879393A JP 30879393 A JP30879393 A JP 30879393A JP 3215934 B2 JP3215934 B2 JP 3215934B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- address
- bus
- microprocessor
- signal
- 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.)
- Expired - Fee Related
Links
Landscapes
- Microcomputers (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Description
【0001】[0001]
【産業上の利用分野】本発明は、エミュレーション装置
等のマイクロプロセッサ開発支援装置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a microprocessor development support device such as an emulation device.
【0002】[0002]
【従来の技術】マイクロプロセッサの各端子をモニタし
て解析するマイクロプロセッサ開発支援装置において、
対象となるマイクロプロセッサがそのデータバスよりも
ビット幅が大きなデータを扱える場合や、データバスを
分割された時間で使用して一つのデータを扱える場合
に、この最終的に扱われたデータを開発支援装置がモニ
タすることは容易でない。2. Description of the Related Art In a microprocessor development support apparatus for monitoring and analyzing each terminal of a microprocessor,
If the target microprocessor can handle data whose bit width is larger than the data bus, or if the data bus can handle one data by using the divided time, develop this finally handled data It is not easy for a support device to monitor.
【0003】例えば、16ビットデータバスで32ビッ
トデータが扱われる場合には、マイクロプロセッサは特
定のアドレスに16ビットデータをアクセスし、次に
“2”を加算したアドレスに残りの16ビットデータを
アクセスする。この動作に対して、開発支援装置がマイ
クロプロセッサにブレークを発生する場合、最初のアド
レスと+2されたアドレスにそれぞれイベント(イベン
トは、開発支援装置がモニタしているバスの一致条件)
を設定し、これら2つのイベントが連続して発生した場
合に(シーケンシャルイベント)ブレークが発生するよ
うにしていた。For example, when 32-bit data is handled on a 16-bit data bus, a microprocessor accesses 16-bit data to a specific address, and then transfers the remaining 16-bit data to an address obtained by adding "2". to access. In contrast to this operation, when the development support device causes a break in the microprocessor, an event is stored in the first address and the address +2 is added (the event is a matching condition of the bus monitored by the development support device).
Is set so that a break occurs when these two events occur consecutively (sequential event).
【0004】なお、前記のブレークとは、開発支援装置
のオペレータがマイクロプロセッサの任意の動作、一般
的には特定アドレスのアクセスに対して、マイクロプロ
セッサの処理を中断させて、開発支援装置からマイクロ
プロセッサを制御可能なモニタ状態とすることをいう。
そして、マイクロプロセッサのバスをモニタして条件が
一致した場合に開発支援装置がマイクロプロセッサに割
り込みを発生させてマイクロプロセッサの処理を開発支
援装置に対しての処理に変更することで実現している。
オペレータは、このモニタ状態でマイクロプロセッサの
内部状態を解析する。[0004] The above-mentioned break means that the operator of the development support apparatus interrupts the processing of the microprocessor for an arbitrary operation of the microprocessor, in general, the access of a specific address, and the development support apparatus sends the break to the microcontroller. This means that the processor is placed in a controllable monitor state.
This is realized by monitoring the bus of the microprocessor and when the conditions match, the development support apparatus generates an interrupt in the microprocessor and changes the processing of the microprocessor to the processing for the development support apparatus. .
The operator analyzes the internal state of the microprocessor in the monitor state.
【0005】[0005]
【発明が解決しようとする課題】しかしながら、上記従
来のマイクロプロセッサ開発支援装置では、イベント検
出回路が二つ必要となり、ハードウェアが増大する。ま
た、アクセスされたデータが特定の一つの値である場合
は、図24に示すように、それぞれのイベントでデータ
の一致条件を設定すればよいが、図25に示すように、
データの範囲条件の場合には、イベントをどのように組
み合わせても設定できない。However, in the above-mentioned conventional microprocessor development support device, two event detection circuits are required, and hardware is increased. When the accessed data is one specific value, the data matching condition may be set for each event as shown in FIG. 24, but as shown in FIG.
In the case of the data range condition, the event cannot be set in any combination.
【0006】本発明は、上記の事情に鑑み、データバス
幅よりも大きなビット幅のデータを複数のバスサイクル
に分割して外部へアクセス可能なマイクロプロセッサに
対してイベント検出回路を複数設けずにイベント検出が
行えるマイクロプロセッサ開発支援装置を提供すること
を目的とする。SUMMARY OF THE INVENTION In view of the above circumstances, the present invention provides a microprocessor which divides data having a bit width larger than the data bus width into a plurality of bus cycles and can access the outside without providing a plurality of event detection circuits. An object of the present invention is to provide a microprocessor development support device capable of detecting an event.
【0007】[0007]
【課題を解決するための手段】本発明のマイクロプロセ
ッサ開発支援装置は、データバス幅よりも大きなビット
幅のデータを複数のバスサイクルに分割して外部へアク
セス可能なマイクロプロセッサに用いられるマイクロプ
ロセッサ開発支援装置において、前記データバス幅より
も大きなビット幅のデータを格納しこれをイベント検出
回路に出力するデータ蓄積手段と、バスステート中の特
定の信号の現在値が前回値と異なるときには現在値を蓄
積しこれをイベント検出回路に出力する一方、現在値が
前回値と一致するときには前回値を保持しこれをイベン
ト検出回路に出力するとともに、上記異同の結果を制御
手段に出力するステート蓄積コンパレート手段と、前回
アドレスと現在アドレスとの差がマイクロプロセッサの
アクセスできる最大バイト数以上であるときには現在ア
ドレスを蓄積しこれをイベント検出回路に出力する一
方、前回アドレスと現在アドレスとの差が最大バイト数
未満であるときには前回アドレスを保持しこれをイベン
ト検出回路に出力するとともに、上記結果を制御手段に
出力するアドレス蓄積コンパレート手段と、入力された
上記結果が、ステート一致でアドレスの差が最大値未満
であるときに、同一バスサイクルと判定し、前記ステー
ト蓄積コンパレート手段とアドレス蓄積コンパレート手
段には前回値保持を指令するとともに、データ蓄積手段
には前回データおよび現在データの双方を格納するよう
に指令する制御手段と、を備えたことを特徴とする。SUMMARY OF THE INVENTION A microprocessor development support apparatus according to the present invention is a microprocessor used for a microprocessor which is capable of dividing data having a bit width larger than a data bus width into a plurality of bus cycles and accessing the outside. In the development support device, data storage means for storing data having a bit width larger than the data bus width and outputting the same to an event detection circuit, and a current value when a current value of a specific signal in a bus state is different from a previous value. And outputs the same to the event detection circuit. On the other hand, when the current value matches the previous value, the previous value is held and output to the event detection circuit, and the same result is output to the control means. Rate means and the difference between the previous address and the current address is the maximum that the microprocessor can access. When the number of bytes is equal to or more than the number of bytes, the current address is accumulated and output to the event detection circuit. On the other hand, when the difference between the previous address and the current address is less than the maximum number of bytes, the previous address is held and output to the event detection circuit. An address storage comparator for outputting the result to the control unit; and determining that the input result is the same bus cycle when the difference between the addresses is less than the maximum value due to state match, and Control means for instructing the rate means and the address storage comparator means to retain the previous value and for instructing the data storage means to store both the previous data and the current data.
【0008】また、データバス幅よりも大きなビット幅
のデータを複数のバスサイクルに分割して外部へアクセ
ス可能なマイクロプロセッサに用いられるマイクロプロ
セッサ開発支援装置において、前記データバス幅よりも
大きなビット幅のデータを格納しこれをイベント検出回
路に出力するデータ蓄積手段と、バスステート中の特定
の信号の現在値が前回値と異なるときには現在値を蓄積
しこれをイベント検出回路に出力する一方、現在値が前
回値と一致するときには前回値を保持しこれをイベント
検出回路に出力するとともに、上記異同の結果を制御手
段に出力するステート蓄積コンパレート手段と、マイク
ロプロセッサが出力するデータバスサイズ要求信号、周
辺応答サイズ信号、及びデータバスのビット幅を2のべ
き乗で表すアドレス下位ビットによって実際にアクセス
されたバイト数を検出する手段と、上記のバイト数を累
積して前回アドレスに加算した値と現在アドレスとが不
一致のときに現在アドレスを蓄積しこれをイベント検出
回路に出力する一方、一致するときには前回アドレスを
保持しこれをイベント検出回路に出力するとともに、一
致不一致の結果を制御手段に出力するアドレス蓄積コン
パレート手段と、入力された上記結果が、ステート一致
でアドレス一致であるときに、同一バスサイクルと判定
し、ステート蓄積コンパレート手段とアドレス蓄積コン
パレート手段には前回値保持を指令するとともに、デー
タ蓄積手段には前回データおよび現在データの双方を格
納するように指令する制御手段と、を備えたことを特徴
としている。Further, in a microprocessor development support apparatus used for a microprocessor which can divide data having a bit width larger than a data bus width into a plurality of bus cycles and can access the same externally, a bit width larger than the data bus width is provided. Data storage means for storing the data of the specified signal in the bus state and outputting the current value to the event detection circuit when the current value of the specific signal in the bus state is different from the previous value. When the value matches the previous value, the previous value is held and output to the event detection circuit, and the above-mentioned result is output to the control means. The state accumulation comparator means, and the data bus size request signal output from the microprocessor. , The peripheral response size signal, and the address representing the bit width of the data bus as a power of two. Means for detecting the number of bytes actually accessed by the lower bits, and accumulating the number of bytes and accumulating the current address when the value added to the previous address does not match the current address, and storing this in the event detection circuit. On the other hand, if they match, the previous address is held and output to the event detection circuit, and the result of the mismatch is output to the control means. When they match, it is determined that the bus cycle is the same, the state storage comparator means and the address storage comparator means are instructed to hold the previous value, and the data storage means stores both the previous data and the current data. And control means for instructing
【0009】また、上記第2の構成において、マイクロ
プロセッサが扱える最大のバイト数に関する情報を格納
する手段を備えるとともに、制御手段は、累積されたア
クセスのバイト数が上記最大のバイト数を越えた場合に
は、同一バスサイクルと判定しないように構成されてい
てもよい。In the above-mentioned second configuration, the apparatus further comprises means for storing information relating to the maximum number of bytes that can be handled by the microprocessor, and the control means sets the accumulated number of bytes of the access exceeding the maximum number of bytes. In such a case, the configuration may be such that the same bus cycle is not determined.
【0010】また、上記第2又は第3の構成において、
データ蓄積手段は、データバスのビット幅を分割して使
用できるマイクロプロセッサに対応して当該分割された
ビット幅単位でデータの蓄積及び更新ができる蓄積部を
有して構成されるとともに、周辺応答サイズ信号に基づ
きデータバスのどの位置のデータを前記データ蓄積手段
のどの蓄積部に格納するのかを示す選択信号を生成する
とともに累積されたアクセスのバイト数によりどの蓄積
部を更新するかを示す更新信号を生成してこれら信号を
データ蓄積手段に出力するデータ蓄積制御手段を備えて
いてもよい。[0010] In the second or third configuration,
The data storage means includes a storage unit capable of storing and updating data in units of the divided bit width corresponding to a microprocessor capable of dividing and using the bit width of the data bus. Based on the size signal, a selection signal indicating which data of the data bus is to be stored in which storage unit of the data storage unit is generated, and an update indicating which storage unit is to be updated based on the accumulated number of access bytes. Data storage control means for generating signals and outputting these signals to the data storage means may be provided.
【0011】また、上記第4の構成において、データ蓄
積制御手段は、下位データを下位アドレスに配置する第
1の方式に対応した選択および更新パターンと、下位デ
ータを上位アドレスに配置する第2の方式に対応した選
択および更新パターンとをデータ蓄積手段に生成させる
ことが可能であり、配置方式識別信号に基づいて第1の
パターンと第2のパターンを切り替えるように構成され
ていてもよい。[0011] In the fourth configuration, the data storage control means may select and update a pattern corresponding to the first method of locating lower data at a lower address, and a second pattern allocating lower data at a higher address. It is possible to cause the data storage means to generate a selection and update pattern corresponding to the system, and may be configured to switch between the first pattern and the second pattern based on the arrangement system identification signal.
【0012】また、上記第1乃至5のいずれかの構成に
おいて、マイクロプロセッサ以外の装置がマイクロプロ
セッサのバスを利用したことを示す信号を出力する手段
を備えるとともに、制御手段は、上記信号が出力された
バスサイクルでアクセスされたバイト数を“0”にする
とともに、ステートの不一致およびアドレスの不一致又
は最大値比較結果を無視するように構成され、データ蓄
積手段は、上記信号が出力されたバスサイクルではデー
タの更新を行わないように構成されていてもよい。In any one of the first to fifth configurations, the apparatus further includes means for outputting a signal indicating that a device other than the microprocessor has used the bus of the microprocessor, and the control means includes means for outputting the signal. The number of bytes accessed in the set bus cycle is set to "0", and the state mismatch and the address mismatch or the maximum value comparison result are ignored. It may be configured that the data is not updated in the cycle.
【0013】[0013]
【作用】第1の構成によれば、前回に対する今回のバス
ステートの特定の信号の変化およびアドレスの変化とに
基づいて同一バスサイクルか否かを判断し、同一バスサ
イクルと判断したときにデータ蓄積手段に保持した前回
データおよび現在データの双方をイベント検出回路に出
力するようにしたので、分割されたバスサイクルは一つ
のバスサイクルと等価に扱われることになり、イベント
検出回路を一つとすることが可能となる。According to the first configuration, it is determined whether or not the bus cycle is the same based on a change in a specific signal and an address in the current bus state with respect to the previous time. Since both the previous data and the current data held in the storage means are output to the event detection circuit, the divided bus cycle is treated equivalent to one bus cycle, and the event detection circuit is set to one. It becomes possible.
【0014】第2の構成によれば、上記第1の構成にお
ける欠点を解消できる。第1の構成では、例えば、別の
データアクセスで同じアドレスをアクセスしたとき、前
回ステートと一致していれば同一バスサイクルと判断し
てしまうため、正確にバスサイクルの区切りを判定する
ことができなくなるが、本構成では、実際にアクセスさ
れたサイズをアドレスに加算することで連続するバスサ
イクルを検出するため、正確にバスサイクルの区切りの
判定を行うことができる。According to the second configuration, the disadvantages of the first configuration can be eliminated. In the first configuration, for example, when the same address is accessed by another data access, if the state matches the previous state, it is determined that the same bus cycle is present. Therefore, it is possible to accurately determine the delimitation of the bus cycle. In this configuration, however, in the present configuration, successive bus cycles are detected by adding the actually accessed size to the address, so that it is possible to accurately determine the delimitation of the bus cycle.
【0015】第3の構成によれば、上記第2の構成にお
ける欠点を解消できる。第2の構成では、例えば、アク
セスサイズどおりにアドレスが加算されていくようなバ
スサイクルが連続した場合には、バスサイクルの区切り
が判定できなくなるが、本構成では、マイクロプロセッ
サが扱える最大のバイト数に関する情報を格納する手段
を備えるとともに、累積されたアクセスのバイト数が上
記最大のバイト数を越えた場合には、たとえステート一
致でアドレス一致の結果が得られたとしても、同一バス
サイクルと判定しないため、バスサイクルの区切りを正
確に判断することができる。According to the third configuration, the disadvantage of the second configuration can be eliminated. In the second configuration, for example, when a bus cycle in which addresses are added according to the access size continues, it is not possible to determine the delimitation of the bus cycle. However, in this configuration, the maximum byte that can be handled by the microprocessor is Means for storing information about the number, and when the accumulated number of bytes of the access exceeds the maximum number of bytes, even if a state match results in an address match, the same bus cycle is used. Since the determination is not made, the break of the bus cycle can be accurately determined.
【0016】第4の構成によれば、分割されたビット幅
単位でデータの蓄積及び更新ができるように構成したの
で、1回にアクセスするデータバスのビット幅を更に分
割して使用するようなアクセス方法にも対応できる。According to the fourth configuration, since data can be stored and updated in divided bit width units, the bit width of the data bus accessed at one time can be further divided and used. It can also handle access methods.
【0017】第5の構成によれば、下位データを下位ア
ドレスに配置する第1の方式に対応した選択および更新
パターンと、下位データを上位アドレスに配置する第2
の方式に対応した選択および更新パターンとを配置方式
識別信号に基づいて切り替えるようにしたので、上記両
方式のマイクロプロセッサに対応できる。According to the fifth configuration, a selection and update pattern corresponding to the first method of arranging lower data at a lower address, and a second pattern of arranging lower data at an upper address.
Since the selection and update patterns corresponding to the above-mentioned method are switched based on the arrangement method identification signal, both types of microprocessors can be supported.
【0018】第6の構成によれば、マイクロプロセッサ
以外の装置がマイクロプロセッサのバスを利用したこと
を示す信号が出力されたバスサイクルでアクセスされた
バイト数を“0”にするとともに、ステートの不一致お
よびアドレスの不一致を無視し、上記信号が出力された
バスサイクルではデータの更新を行わないようにしたの
で、例えば、ダイレクトメモリアクセス等があった場合
でも正確にバスサイクルの区切りを判定することができ
る。According to the sixth configuration, the number of bytes accessed in the bus cycle in which a signal indicating that a device other than the microprocessor has used the bus of the microprocessor is set to "0", and the state of the state is changed. Since the mismatch and the address mismatch are ignored and the data is not updated in the bus cycle in which the above signal is output, it is necessary to accurately determine a bus cycle delimiter even in the case of direct memory access or the like. Can be.
【0019】[0019]
(実施例1)以下、本発明をその実施例を示す図に基づ
いて説明する。(Embodiment 1) Hereinafter, the present invention will be described with reference to the drawings showing the embodiment.
【0020】図1は、本発明に係るマイクロプロセッサ
開発支援装置を示すブロック図である。この開発支援装
置は、バスステート蓄積コンパレートブロック1と、ア
ドレス蓄積コンパレートブロック2と、データ蓄積ブロ
ック3とを備え、これらブロック1〜3は、コントロー
ラ4により制御される。そして、マイクロプロセッサ
(図示せず)からの各信号(バスステート、アドレス、
サイズ、及びデータ)は、上記のブロック1〜3及びコ
ントローラ4を経て一つのイベント検出回路5に出力さ
れるようになっている。FIG. 1 is a block diagram showing a microprocessor development support device according to the present invention. This development support device includes a bus state storage comparator block 1, an address storage comparator block 2, and a data storage block 3, and these blocks 1 to 3 are controlled by a controller 4. Then, each signal (bus state, address,
The size and data are output to one event detection circuit 5 via the above-described blocks 1 to 3 and the controller 4.
【0021】図2は、上記各ブロックの具体的構成を示
したブロック図である。FIG. 2 is a block diagram showing a specific configuration of each of the above blocks.
【0022】バスステート蓄積コンパレートブロック1
は、マルチプレクサ1aと、レジスタ1bと、ビットコ
ンパレータ1cと、マスクレジスタ1dとを備える。Bus state storage comparator block 1
Includes a multiplexer 1a, a register 1b, a bit comparator 1c, and a mask register 1d.
【0023】マルチプレクサ1aのB端子には、MPU
ステートが、A端子には、レジスタ1bの出力が、S端
子には、コントローラ4からセレクト信号(NEW)が
それぞれ入力されるようになっている。The MPU is connected to the B terminal of the multiplexer 1a.
The state is such that the output of the register 1b is input to the A terminal, and the select signal (NEW) is input from the controller 4 to the S terminal.
【0024】MPUステートは、リード/ライトを示す
RWB(“1”:リード,“0”:ライト)、プログラ
ムフェッチかデータアクセスかを示すPDB(“1”:
プログラム、“0”:データ)、そのバスサイクルでア
クセスすべきデータサイズを示すSIZE(“1”:1
6ビット、“0”:8ビット)、以上の出力信号とその
アドレスでアクセスされる周辺装置のデータバスサイズ
を示すSACK(“1”:16ビット、“0”:8ビッ
ト)から成る。The MPU state includes RWB (“1”: read, “0”: write) indicating read / write, and PDB (“1”: “1”:
Program, “0”: data, SIZE (“1”: 1) indicating the data size to be accessed in the bus cycle
6 bits, "0": 8 bits), and the above output signal and SACK ("1": 16 bits, "0": 8 bits) indicating the data bus size of the peripheral device accessed by the address.
【0025】また、レジスタ1bにはマルチプレクサ1
aの出力(MPUステート)が保持され、この保持した
値をビットコンパレータ1cに出力するとともに、ステ
ート出力としてイベント検出回路5に出力するようにな
っている。A multiplexer 1 is provided in the register 1b.
The output of (a) (MPU state) is held, and the held value is output to the bit comparator 1c and to the event detection circuit 5 as a state output.
【0026】ビットコンパレータ1cは、現在のバスサ
イクルにおけるMPUステートと、前記レジスタ1bか
らの前回のバスサイクルにおけるMPUステートとの一
致を判断し、その判断結果をコントラーラ4に出力する
ようになっている。なお、ビットコンパレータ1cは、
マスクレジスタ1dにて指定されたビットのみの一致を
判断するようになっている。The bit comparator 1c determines whether the MPU state in the current bus cycle matches the MPU state in the previous bus cycle from the register 1b, and outputs the determination result to the controller 4. . Note that the bit comparator 1c
It is determined that only the bits specified by the mask register 1d match.
【0027】アドレス蓄積コンパレートブロック2は、
マルチプレクサ2aと、レジスタ2bと、コンパレータ
2cとを備える。The address storage comparator block 2 comprises:
It includes a multiplexer 2a, a register 2b, and a comparator 2c.
【0028】マルチプレクサ2aのB端子にはMPUア
ドレスが入力され、A端子にはレジスタ2bの出力が入
力されるようになっている。また、マルチプレクサ2a
のS端子には、コントローラ4からセレクト信号が入力
される。The MPU address is input to the B terminal of the multiplexer 2a, and the output of the register 2b is input to the A terminal. The multiplexer 2a
A select signal from the controller 4 is input to the S terminal of the controller 4.
【0029】レジスタ2bはマルチプレクサ2aの出力
(MPUアドレス)を保持し、この保持した値をコンパ
レータ2c及びマルチプレクサ2aのA端子に出力する
とともに、アドレス出力としてイベント検出回路5に出
力する。The register 2b holds the output (MPU address) of the multiplexer 2a, outputs the held value to the comparator 2c and the A terminal of the multiplexer 2a, and outputs the value to the event detection circuit 5 as an address output.
【0030】コンパレータ2cは、現在のバスサイクル
におけるMPUアドレスと、前記レジスタ2bからの前
回バスサイクルにおけるMPUアドレスとの比較を行
い、その結果をコントローラ4に出力するようになって
いる。アドレスの比較は、大小比較となり、現在のアド
レスの値から前回の値を引いた値が対象プロセッサのア
クセスできる最大バイト数(32ビット=4バイトの場
合は“4”)未満であれば同一のバスサイクルと判断さ
れる。The comparator 2c compares the MPU address in the current bus cycle with the MPU address in the previous bus cycle from the register 2b, and outputs the result to the controller 4. The address comparison is a magnitude comparison. If the value obtained by subtracting the previous value from the current address value is less than the maximum number of bytes accessible by the target processor ("4" when 32 bits = 4 bytes), the same value is obtained. It is determined as a bus cycle.
【0031】データ蓄積ブロック3は、H側レジスタ3
aとL側レジスタ3bとを備える。これらレジスタ3
a,3bには、MPUデータが保持され、これがデータ
出力としてイベント検出回路に出力されるようになって
いる。また、各レジスタは、コントローラ4の指令によ
ってデータ保持と新たなデータ蓄積とが制御されるよう
になっている。The data storage block 3 includes an H-side register 3
a and an L-side register 3b. These registers 3
MPU data is held in a and 3b, and this is output to the event detection circuit as a data output. In each register, data holding and new data accumulation are controlled by a command from the controller 4.
【0032】上記の構成において、マイクロプロセッサ
のMPUステートはマルチプレクサ1aを通ってレジス
タ1bに格納される。それと同時に、MPUアドレスは
マルチプレクサ2aを通ってレジスタ2bに格納され、
MPUデータはレジスタ3a,3bに格納される。In the above configuration, the MPU state of the microprocessor is stored in the register 1b through the multiplexer 1a. At the same time, the MPU address is stored in the register 2b through the multiplexer 2a,
MPU data is stored in registers 3a and 3b.
【0033】次のバスサイクルでは、ビットコンパレー
タ1cにおいてMPUステートは前回格納された値と比
較される。マスクレジスタ1dで指定されたビットが全
て一致した場合は、前回と同一のバスサイクル、つま
り、一つのデータが分割されてアクセスされていると判
断することになる。In the next bus cycle, the bit comparator 1c compares the MPU state with the previously stored value. When all the bits specified by the mask register 1d match, it is determined that the same bus cycle as the previous time, that is, one data is divided and accessed.
【0034】また、コンパレータ2cにおいて、MPU
アドレスも前回格納された値と比較される。この比較に
おいて、前述したように、現在のアドレスの値から前回
の値を引いた値が対象プロセッサのアクセスできる最大
バイト数(32ビット=4バイトの場合は“4”)未満
であれば同一のバスサイクルと判断される。In the comparator 2c, the MPU
The address is also compared with the previously stored value. In this comparison, as described above, if the value obtained by subtracting the previous value from the current address value is less than the maximum number of bytes accessible by the target processor ("4" when 32 bits = 4 bytes), the same value is obtained. It is determined as a bus cycle.
【0035】そして、コントローラ4では、MPUステ
ートおよびMPUアドレスに基づき共に同一バスサイク
ルと判断された場合は、レジスタ2bに格納されている
アドレス値との差により、レジスタ3a,3bにデータ
バスのデータを格納させる。また、この場合、コントロ
ーラ4は、マルチプレクサ1a,2aに対して、A側が
選択されようにセレクト信号を出力する。従って、MP
Uステートは、マルチプレクサ1aでA側が選択されて
いることにより、前回値がレジスタ1bにおいて保持さ
れ、MPUアドレスはマルチプレクサ2aで同じくA側
が選択されていることにより、前回値がレジスタ2bに
おいて保持される。When the controller 4 determines that the bus cycle is the same based on the MPU state and the MPU address, the data on the data bus is stored in the registers 3a and 3b due to the difference from the address value stored in the register 2b. Is stored. In this case, the controller 4 outputs a select signal to the multiplexers 1a and 2a so that the A side is selected. Therefore, MP
In the U state, the previous value is held in the register 1b when the multiplexer A selects the A side, and the previous value is held in the register 2b when the A side is selected in the multiplexer 2a. .
【0036】一方、同一バスサイクルと判断されなかっ
た場合は、コントローラ4は、マルチプレクサ1a,2
aに対して、B側が選択されようにセレクト信号を出力
することになる。従って、MPUステートは、マルチプ
レクサ1aでB側が選択されていることにより、現在値
がレジスタ1bにおいて格納され、MPUアドレスはマ
ルチプレクサ2aで同じくB側が選択されていることに
より、現在値がレジスタ2bにおいて格納される。ま
た、MPUデータは、レジスタ3a,3b(H,L)の
双方に格納される。On the other hand, if it is not determined that the bus cycle is the same, the controller 4 controls the multiplexers 1a and 2a.
In response to a, a select signal is output so that the B side is selected. Accordingly, in the MPU state, the current value is stored in the register 1b when the multiplexer B selects the side B, and the current value is stored in the register 2b when the multiplexer B selects the side B in the multiplexer 2a. Is done. The MPU data is stored in both the registers 3a and 3b (H, L).
【0037】図3には、上記のごとく処理された場合の
MPUステート格納状態やMPUデータ格納状態等を例
示している。この例では、サイクル5で2000番地か
ら“12345678h”の32ビットデータリード、
サイクル8で3000番地から“87654321h”
の32ビットデータリード、サイクル10で3004番
地へ“9abcdef0”の32ビットデータライトが
イベント検出回路5へ供給されることになる。FIG. 3 illustrates an MPU state storage state, an MPU data storage state, and the like when the processing is performed as described above. In this example, in cycle 5, a 32-bit data read from address 2,000 to “12345678h”
In cycle 8 from address 3000 "876654321h"
, And a 32-bit data write “9abcdef0” is supplied to the event detection circuit 5 to the address 3004 in cycle 10.
【0038】即ち、MPUバスステート、MPUアドレ
ス、及びMPUデータをレジスタ1b,2b,3a,3
bに各々格納し、それらの一致条件等を判断し、コント
ローラ4にて同一バスサイクルと判断された場合にはM
PUデータ蓄積用のレジスタ3a,3bの格納内容を同
一のバスサイクルにおける32ビット幅の一つのデータ
として扱い、これをイベント検出回路5へと供給する。
このように、分割されたバスサイクルを一つのバスサイ
クルと等価に扱うことを可能としたので、イベント検出
回路5は一つでよいことになる。なお、データが範囲指
定である場合でも同様である。That is, the MPU bus state, the MPU address, and the MPU data are stored in the registers 1b, 2b, 3a, 3
b, and the matching conditions are determined. If the controller 4 determines that the bus cycle is the same, M
The contents stored in the registers 3a and 3b for storing PU data are treated as one 32-bit data in the same bus cycle, and supplied to the event detection circuit 5.
As described above, the divided bus cycle can be treated as equivalent to one bus cycle, so that only one event detection circuit 5 is required. The same applies to the case where the data is a range specification.
【0039】ただし、上記の構成においては、別のデー
タアクセスで同じアドレスをアクセスしたときには、サ
イクルの区切りを判断できないという欠点(欠点1)が
生じる。また、1回にアクセスするデータバスのビット
と幅を更に分割して使用するようなアクセス方法には対
処できない(欠点2)。However, in the above configuration, when the same address is accessed by another data access, there is a disadvantage (defect 1) that a cycle break cannot be determined. Further, it is not possible to cope with an access method in which the bits and the width of the data bus to be accessed at one time are further divided and used (defect 2).
【0040】例えば、図4に示すように、サイクル5に
おいて別のデータアクセスで2002番地をアクセスし
ているが、これは上記の装置では、サイクル3の200
0番地アクセスと同一バスサイクルと判定されてしま
う。また、サイクル7,8,9では、3001番地より
“ba876543h”をアクセスしているが、これに
も対応できない。For example, as shown in FIG. 4, address 2002 is accessed by another data access in cycle 5, but this is performed in the above-described apparatus.
This is determined to be the same bus cycle as the address 0 access. In cycles 7, 8, and 9, "ba876543h" is accessed from address 3001, but this is not supported.
【0041】(実施例2)以下、上記の欠点1及び欠点
2を解消できる実施例について説明する。なお、上記の
実施例1と同一の機能を有する部材には同一の符号を付
記して説明を省略する。(Embodiment 2) An embodiment capable of solving the above-mentioned disadvantages 1 and 2 will be described below. Note that members having the same functions as those in the first embodiment are denoted by the same reference numerals, and description thereof will be omitted.
【0042】図5に本実施例の開発支援装置を示し、図
6にコントローラ4の加算値生成部を示す。FIG. 5 shows a development support apparatus according to the present embodiment, and FIG. 6 shows an addition value generator of the controller 4.
【0043】コントローラ4は、上記の加算値生成部に
おいて、MPU要求サイズ(SIZE)と、周辺応答サ
イズ(SACK)と、アドレス下位2ビットとをアクセ
スサイズ検出部4aに入力する。アクセスサイズ検出部
4aは、上記の各信号に基づいて現バスサイクルが何バ
イトアクセスしているかを検出する。また、このアクセ
スデータサイズ(以下、アクセスサイズという)は、レ
ジスタ4a、アダー回路4c、レジスタ4dによって、
同一バスサイクルの間累積され、同一バスサイクルの最
初のアクセスアドレスから何バイトまでアクセスが進ん
だかが保持されるようになっている。The controller 4 inputs the MPU request size (SIZE), the peripheral response size (SACK), and the lower two bits of the address to the access size detection unit 4a in the addition value generation unit. The access size detector 4a detects how many bytes are accessed by the current bus cycle based on the above signals. The access data size (hereinafter referred to as access size) is determined by the register 4a, the adder circuit 4c, and the register 4d.
Accumulation is performed during the same bus cycle, and how many bytes have been accessed from the first access address of the same bus cycle is retained.
【0044】アドレス蓄積コンパレートブロック2に
は、実施例1のコンパレータ2cの代わりにアダー回路
2dおよびビットコンパレータ2eが設けられている。
アダー回路2dは、レジスタ2bに格納されている前回
アドレスに、コントローラ4の前記アダー回路4cから
出力される加算値(アクセスサイズ)を加算する。そし
て、ビットコンパレータ2eは、上記加算値が次のバス
サイクルのアドレスと一致しているか否かを比較するよ
うになっている。The address storage comparator block 2 is provided with an adder circuit 2d and a bit comparator 2e instead of the comparator 2c of the first embodiment.
The adder circuit 2d adds an addition value (access size) output from the adder circuit 4c of the controller 4 to the previous address stored in the register 2b. Then, the bit comparator 2e compares whether or not the added value matches the address of the next bus cycle.
【0045】即ち、実施例1では、現在のアドレスの値
から前回の値を引いた値が対象プロセッサのアクセスで
きる最大バイト数未満か否かで同一バスサイクルか否か
を判断したが、実施例2では、MPU要求サイズ(SI
ZE)等から、同一バスサイクルであるためのアドレス
を割り出し、これと次のバスサイクルのアドレスとが一
致するときに同一バスサイクルであると判断するように
したので、前述の図4に示したサイクル5において20
02番地をアクセスするときには、同一サイクルとして
割り出されるアドレスは2004番地となり、両者は一
致しないため、サイクル5がサイクル3の2000番地
アクセスと同一バスサイクルと判定されてしまう(欠点
1)のが防止されることになる。That is, in the first embodiment, whether or not the same bus cycle is determined based on whether the value obtained by subtracting the previous value from the current address value is less than the maximum number of bytes accessible by the target processor. 2, the MPU request size (SI
ZE) or the like, an address for the same bus cycle is determined, and when this address matches the address of the next bus cycle, the address is determined to be the same bus cycle. 20 in cycle 5
When address 02 is accessed, the address determined as the same cycle is address 2004, and they do not match. Therefore, it is prevented that cycle 5 is determined to be the same bus cycle as access to address 2000 in cycle 3 (defect 1). Will be done.
【0046】なお、上記図6に示した構成のコントロー
ラ4では、アクセスサイズ通りにアドレスが加算されて
いくようなバスサイクルが連続した場合には、バスサイ
クルの区切りが判定できなくなる。In the controller 4 having the configuration shown in FIG. 6, if the bus cycle in which the addresses are added according to the access size continues, it is impossible to determine the break of the bus cycle.
【0047】このため、図7に示すように、マイクロプ
ロセッサが1回にアクセスできる最大のバイト数を最大
値レジスタ4eに格納し、この最大バイト数とアクセス
サイズとをコンパレータ4fで比較することにより最大
値を越えた時点をバスサイクルの区切りと判定すること
ができる。なお、OR回路4gは、コンパレータ4fの
出力とアドレス,ステート不一致信号とに基づいて区切
り信号(New)を各ブロック等に出力するものであ
る。Therefore, as shown in FIG. 7, the maximum number of bytes that can be accessed by the microprocessor at one time is stored in the maximum value register 4e, and the maximum number of bytes and the access size are compared by the comparator 4f. The point in time when the maximum value is exceeded can be determined as a break of the bus cycle. The OR circuit 4g outputs a delimiter signal (New) to each block or the like based on the output of the comparator 4f and the address and state mismatch signals.
【0048】図8には、図7の構成を具体化した回路図
を示している。図中のA0,A1はMPUアドレスの下
位2ビット、LTは最大アクセスレジスタの設定信号、
RESBは初期化信号、C0,C1はアドレス用加算
値、C2はイベント用サイズ信号、Newはバスサイク
ル区切り信号(各ブロックのマルチプレクサへのセレク
ト信号)である。FIG. 8 is a circuit diagram that embodies the configuration of FIG. In the figure, A0 and A1 are the lower 2 bits of the MPU address, LT is the setting signal of the maximum access register,
RESB is an initialization signal, C0 and C1 are address addition values, C2 is an event size signal, and New is a bus cycle delimiter signal (select signal to the multiplexer of each block).
【0049】また、図9に示すように、MPU要求サイ
ズはSIZE1,0の信号の組み合わせにより、周辺応
答サイズはSACK1,0の信号の組み合わせにより、
最大アクセスサイズはDI1,0の信号の組み合わせに
より各々表されるようになっている。As shown in FIG. 9, the MPU request size is determined by a combination of SIZE1,0 signals, and the peripheral response size is determined by a combination of SACK1,0 signals.
The maximum access size is represented by a combination of signals DI1 and DI0.
【0050】次に、欠点2の解消に関する構成について
説明する。Next, a configuration for eliminating the defect 2 will be described.
【0051】データ蓄積ブロック(以下、データ蓄積エ
ンディアン変換ブロックという)3は、1バイト(8ビ
ット)ごとのデータ格納制御を行うようになっている。
図では、32ビットデータバスのデータを8ビットずつ
(HH,HL,LH,LL)、4つのレジスタ3h〜3
k(HH,HL,LH,LL)に格納するようにしてい
る。即ち、マルチプレクサ3cによって32ビットデー
タ中のどの8ビットをレジスタ3h〜3kのどれに格納
するかを選択するとともに、マルチプレクサ3d〜3g
(HH,HL,LH,LL)がコントローラ4からの信
号によって、各レジスタ3h〜3kの値を保持させるか
或いはマルチプレクサ3cからの現在のデータバスの値
に変更させるかを制御する。The data storage block (hereinafter referred to as a data storage endian conversion block) 3 controls data storage for each byte (8 bits).
In the figure, the data of the 32-bit data bus is divided into eight bits (HH, HL, LH, LL), and four registers 3h to 3h.
k (HH, HL, LH, LL). That is, the multiplexer 3c selects which 8 bits of the 32-bit data are stored in which of the registers 3h to 3k, and also selects the multiplexers 3d to 3g.
(HH, HL, LH, LL) controls whether a signal from the controller 4 holds the value of each of the registers 3h to 3k or changes the value to the current data bus value from the multiplexer 3c.
【0052】上記のマルチプレクサ3cは、32ビット
データバスの8ビットごとのデータ(HH,HL,L
H,LL)をレジスタ3h〜3k(HH,HL,LH,
LL)のどこに格納するかを、MPUアドレスの下位2
ビット(A0,A1)によって決定するようになってい
る。The multiplexer 3c stores data (HH, HL, L) in units of 8 bits of a 32-bit data bus.
H, LL) in registers 3h-3k (HH, HL, LH,
LL) is stored in the lower 2 bits of the MPU address.
It is determined by the bits (A0, A1).
【0053】即ち、図10に示すように、例えば、A1
=0,A0=1であれば、レジスタ3h(HH)に8ビ
ットデータHL(HLはデータ16〜23)を、レジス
タ3i(HL)に8ビットデータLH(LHはデータ8
〜15)を、レジスタ3j(LH)に8ビットデータL
L(LLはデータ0〜7)を、レジスタ3k(LL)に
8ビットデータHH(HHはデータ24〜31)を、そ
れぞれ格納させるように切り替わる。That is, for example, as shown in FIG.
= 0, A0 = 1, the register 3h (HH) stores 8-bit data HL (HL is data 16 to 23), and the register 3i (HL) stores 8-bit data LH (LH is data 8).
To 15) are stored in the register 3j (LH) by the 8-bit data L.
Switching is performed so that L (LL is data 0 to 7) and 8-bit data HH (HH is data 24 to 31) are stored in the register 3k (LL).
【0054】具体的には、マルチプレクサ3cは、図1
1に示すように、各データ用のレジスタごとの4つのマ
ルチプレクサにより構成されており、図中のSB0〜S
B3及びSA2,SA3の選択信号によって制御され
る。なお、SB0〜SB3及びSA2,SA3は、後述
のデータ蓄積制御手段4mにより生成される。More specifically, the multiplexer 3c has the configuration shown in FIG.
As shown in FIG. 1, each of the data registers is constituted by four multiplexers.
It is controlled by the selection signals of B3 and SA2, SA3. Note that SB0 to SB3 and SA2 and SA3 are generated by a data accumulation control unit 4m described later.
【0055】また、マルチプレクサ3g〜3eの選択
は、アクセスサイズ(加算値)により決定され、図12
のような組み合わせとなる。図中のC1,C0はアクセ
スサイズ(加算値)であり、このC1,C0およびNE
W信号に基づき、データ蓄積制御手段4mによりマルチ
プレクサ3d〜3g選択用のNEW0〜NEW2信号が
生成される。The selection of the multiplexers 3g to 3e is determined by the access size (addition value).
It becomes a combination like C1 and C0 in the figure are access sizes (addition values), and C1, C0 and NE
Based on the W signal, the data accumulation control means 4m generates NEW0-NEW2 signals for selecting the multiplexers 3d-3g.
【0056】図13は、コントローラ4に組み込まれた
データ蓄積制御手段4mを示す回路図である。なお、図
において、A0,A1は現マイクロプロセッサアドレス
下位2ビット、OA0,OA1はレジスタ2bに格納さ
れているアドレス下位2ビット、NEWは区切り信号、
NEW0はマルチプレクサ3g(LL)選択信号、NE
W1はマルチプレクサ3f(LH)選択信号、NEW2
はマルチプレクサ3e(HL)選択信号である。また、
マルチプレクサ3d(HH)は常に変更が選択されてい
る。FIG. 13 is a circuit diagram showing the data storage control means 4m incorporated in the controller 4. In the figure, A0 and A1 are the lower 2 bits of the current microprocessor address, OA0 and OA1 are the lower 2 bits of the address stored in the register 2b, NEW is a delimiter signal,
NEW0 is a multiplexer 3g (LL) selection signal, NE
W1 is a multiplexer 3f (LH) selection signal, NEW2
Is a multiplexer 3e (HL) selection signal. Also,
The multiplexer 3d (HH) is always selected to be changed.
【0057】SACK0,1は周辺応答サイズであり、
各データレジスタ3h〜3kの選択は、図14に示すよ
うに、周辺デバイスのサイズ(SACK0,1)によっ
て変更されるようになっている。SACK0,1 are peripheral response sizes,
The selection of each of the data registers 3h to 3k is changed according to the size (SACK0, 1) of the peripheral device as shown in FIG.
【0058】以上の構成によれば、図15に示すよう
に、サイクル7,8,9において、3001番地より
“ba876543h”をアクセスすることに対応する
ことができる。According to the above configuration, as shown in FIG. 15, it is possible to cope with accessing "ba876543h" from address 3001 in cycles 7, 8, and 9.
【0059】即ち、サイクル7では、SIZEが“0”
(SIZE0=SIZE、SIZE1=0)であるので
図9によりMPU要求サイズは8ビットとなり、SAC
Kが“1”(SACK0=SACK、SACK1=0)
であるので同図により周辺応答サイズは16ビットとな
る。また、SACKが“1”であり、A1=0,A0=
1であるので、図10により、レジスタ3h〜3kは、
LL,LH,LL,LH,となり、直前サイクル6にお
いてはC1=1,C0=0であるが、NEWが“1”な
ので、レジスタ3h〜3kは、それぞれ、更新,更新,
更新,更新,となる。従って、レジスタ3h〜3kの内
容は、データが“4321”なので、21,43,2
1,43となる。That is, in cycle 7, SIZE becomes "0".
(SIZE0 = SIZE, SIZE1 = 0), the MPU request size is 8 bits according to FIG.
K is "1" (SACK0 = SACK, SACK1 = 0)
Therefore, the peripheral response size is 16 bits according to FIG. Also, SACK is “1” and A1 = 0, A0 =
As shown in FIG. 10, the registers 3h to 3k are:
LL, LH, LL, LH, and C1 = 1 and C0 = 0 in the immediately preceding cycle 6. However, since NEW is “1”, the registers 3h to 3k are updated, updated,
Update, update. Therefore, the contents of the registers 3h to 3k are 21, 43, 2 because the data is "4321".
1,43.
【0060】サイクル8では、同様に、レジスタ3h〜
3kは、LL,LH,LL,LH,となり、直前サイク
ル7においては、C1=0,C0=1であり、また、N
EWは“0”なので、図12により、レジスタ3h〜3
kは、それぞれ、更新,更新,更新,なし,となる。従
って、レジスタ3h〜3kの内容は、データが“876
5”なので、65,87,65,43となる。In cycle 8, similarly, registers 3h to 3h
3k becomes LL, LH, LL, LH, and in the immediately preceding cycle 7, C1 = 0, C0 = 1, and N
Since the EW is “0”, the registers 3h to 3h are shown in FIG.
k is updated, updated, updated, and none, respectively. Therefore, the contents of the registers 3h to 3k are "876
Since it is 5 ", it becomes 65, 87, 65, 43.
【0061】サイクル9では、同様に、レジスタ3h〜
3kは、LL,LH,LL,LH,となり、直前サイク
ル8においては、C1=1,C0=1であり、また、N
EWは“0”なので、図12により、レジスタ3h〜3
kは、更新,なし,なし,なし,となる。従って、レジ
スタ3h〜3kの内容は、データが“dcba”である
ので、ba,87,65,43となる。In cycle 9, similarly, registers 3h to 3h
3k becomes LL, LH, LL, LH, and in the immediately preceding cycle 8, C1 = 1 and C0 = 1, and N
Since the EW is “0”, the registers 3h to 3h are shown in FIG.
k is updated, none, none, none. Therefore, the contents of the registers 3h to 3k are ba, 87, 65, and 43 because the data is "dcba".
【0062】図16(a)は、メモリ上の下位アドレス
に下位バイトデータを置くリトルエンディアン方式を説
明するための図である。上記実施例は、このリトルエン
ディアン方式のマイクロプロセッサに対応した構成とな
っている。従って、同図(b)に示すように、上位アド
レスに下位バイトデータを置くビッグエンディアン方式
にはこのままでは対応できない。FIG. 16A is a diagram for explaining a little endian system in which lower byte data is placed at a lower address on a memory. The above embodiment has a configuration corresponding to this little endian microprocessor. Therefore, as shown in FIG. 2B, the big endian system in which the lower byte data is placed at the upper address cannot be used as it is.
【0063】(実施例3) 以下、リトルエンディアン方式とビッグエンディアン方
式の両方に対応できる実施例について説明する。(Embodiment 3) An embodiment that can support both the little endian system and the big endian system will be described below.
【0064】図17は、ビッグエンディアン方式に対応
するためのレジスタ3h〜3kの選択内容を示してい
る。また、図18は、同じくビックエンディアン方式に
対応するためのレジスタ3h〜3kの更新の有無を示し
ている。FIG. 17 shows the selection contents of the registers 3h to 3k corresponding to the big endian system. FIG. 18 also shows whether or not the registers 3h to 3k are updated to support the big endian system.
【0065】図19には、そのためのコントローラ4に
データ蓄積制御手段4mの回路構成を示している。この
回路構成は、図13の回路構成にマルチプレクサ機能部
分40,41を付加した構成となっている。そして、こ
れらマルチプレクサ機能部分40,41を配置方式識別
信号であるBIG(ビッグエンディアン時に“H”レベ
ルとなる信号)にて制御し、これによってマルチプレク
サ3d〜3g(HH,HL,LH,LL)の選択パター
ンを変更している。FIG. 19 shows the circuit configuration of the data storage control means 4m in the controller 4 for that purpose. This circuit configuration is configured by adding multiplexer function parts 40 and 41 to the circuit configuration of FIG. Then, these multiplexer function parts 40 and 41 are controlled by a BIG (signal which becomes "H" level at the time of big endian) which is an arrangement method identification signal, whereby the multiplexers 3d to 3g (HH, HL, LH, LL) are controlled. The selection pattern has been changed.
【0066】これにより、リトルエンディアン方式とビ
ッグエンディアン方式の両方のマイクロプロセッサに対
応することができる。Thus, the little endian system and the video
Both end-end type microprocessors can be supported.
【0067】マイクロプロセッサのバスサイクルには、
マイクロプロセッサが使用し制御を行っている通常のバ
スサイクル以外に、周辺デバイスがマイクロプロセッサ
のバスを使用し、制御するバスサイクルがある。これに
は、ダイレクトメモリアクセス(DMA)等があり、マ
イクロプロセッサが使用しているバスサイクルと無関係
に発生する。図20では、サイクル4でDMAのバスサ
イクルになっているが、以上に説明した構成では、アド
レス及びステータスの変化により、サイクル3,4,5
はそれぞれ別のバスサイクルであると判定されてしま
う。The microprocessor bus cycle includes:
In addition to the normal bus cycle used and controlled by the microprocessor, there are bus cycles in which peripheral devices use and control the bus of the microprocessor. This includes direct memory access (DMA) and the like, which occurs regardless of the bus cycle used by the microprocessor. In FIG. 20, although the DMA bus cycle is performed in cycle 4, in the configuration described above, the change in the address and status causes the cycles 3, 4, 5 to occur.
Are determined to be different bus cycles.
【0068】(実施例4)以下、上記DMA等のバスサ
イクルが挿入された場合でも、正確にバスサイクルの判
定が行える実施例について説明する。(Embodiment 4) An embodiment in which a bus cycle can be accurately determined even when a bus cycle such as the DMA is inserted will be described below.
【0069】図21に本実施例に係るコントローラ4の
ブロック図を示す。また、図22に上記コントローラ4
の回路図を示す。このコントローラ4は、図7のコント
ローラ4に、ゲート回路4i,4jを付加した構成とな
っている。ゲート回路4iの一方の入力部にはアクセス
サイズ検出回路4aの出力が入力され、他方の入力部に
は比較禁止信号(DISCMP)が入力される。そし
て、そのゲート出力をレジスタ4bに出力するようにな
っている。FIG. 21 is a block diagram of the controller 4 according to this embodiment. Further, FIG.
FIG. This controller 4 has a configuration in which gate circuits 4i and 4j are added to the controller 4 of FIG. The output of the access size detection circuit 4a is input to one input of the gate circuit 4i, and the comparison inhibit signal (DISCMP) is input to the other input. Then, the gate output is output to the register 4b.
【0070】また、ゲート回路4jの一方の入力部には
アドレス,ステート不一致信号が入力され、他方の入力
部には上記比較禁止信号が入力されている。そして、そ
のゲート出力をOR回路4gの一方の入力部に出力する
ようになっている。The address and state mismatch signal is input to one input of the gate circuit 4j, and the above-mentioned comparison inhibit signal is input to the other input. The gate output is output to one input of the OR circuit 4g.
【0071】比較禁止信号は、マイクロプロセッサ以外
のDMA等のバスサイクルが検出されたときに“H”レ
ベルとなる。このとき、アクセスサイズは強制的に
“0”になり、また、アドレス,ステートの不一致が無
視されることになる。これにより、DMAサイクルが無
視された形でバスサイクルが判定される。[0071] Comparative inhibit signal becomes "H" level when the bus cycle of DMA or the like other than the microprocessor is detected. At this time, the access size is forcibly set to "0", and the mismatch between the address and the state is ignored. As a result, the bus cycle is determined in such a manner that the DMA cycle is ignored.
【0072】また、図23は、本実施例に係るデータ蓄
積制御手段4mを示した回路図である。このデータ蓄積
制御手段4mは、前記の比較禁止信号(DISCMP)
によって動作する更新禁止回路42を備えており、DM
Aサイクルでは、各レジスタ3h〜3kの更新がされな
いようにNEW0〜NEW3の各信号を生成するように
なっている。FIG. 23 is a circuit diagram showing the data storage control means 4m according to this embodiment. This data accumulation control means 4m is provided with the above-mentioned comparison inhibit signal (DISCMP)
And an update prohibition circuit 42 operated by
In the A-cycle, signals NEW0 to NEW3 are generated so that the registers 3h to 3k are not updated.
【0073】このように、DMA等のバスサイクルは無
視するように構成したので、このDMA等のアクセスが
あった場合でも正確にバスサイクルの区切りを判定する
ことができる。As described above, the bus cycle of the DMA or the like is configured to be ignored. Therefore, even when the access of the DMA or the like is made, the break of the bus cycle can be accurately determined.
【0074】[0074]
【発明の効果】以上のように、第1の構成により、分割
されたバスサイクルは一つのバスサイクルと等価に扱わ
れ、一つのイベント検出回路で処理できるようにしたの
で、ハードウェアが簡略化される。また、第2の構成に
より、別のデータアクセスで同じアドレスをアクセスし
たときに同一バスサイクルと判断してしまうのを防止し
て正確にバスサイクルの区切りを判定することができ
る。また、第3の構成により、アクセスサイズどおりに
アドレスが加算されていくようなバスサイクルが連続し
た場合でも正確にバスサイクルの区切りが判定できる。
また、第4の構成により、1回にアクセスするデータバ
スのビット幅を更に分割して使用するようなアクセス方
法にも対応できる。また、第5の構成により、下位デー
タを下位アドレスに配置する第1の方式および下位デー
タを上位アドレスに配置する第2の方式の両方のマイク
ロプロセッサに対応できる。また、第6の構成により、
例えば、ダイレクトメモリアクセス等があった場合でも
正確にバスサイクルの区切りを判定できるという効果を
奏する。As described above, according to the first configuration, the divided bus cycle is treated equivalently to one bus cycle and can be processed by one event detection circuit, so that the hardware is simplified. Is done. Further, with the second configuration, it is possible to prevent the determination of the same bus cycle when accessing the same address by another data access, and to accurately determine the delimitation of the bus cycle. Further, according to the third configuration, even when bus cycles in which addresses are added according to the access size continue, it is possible to accurately determine the delimitation of the bus cycle.
Further, the fourth configuration can cope with an access method in which the bit width of the data bus accessed at one time is further divided and used. Further, the fifth configuration can support both the microprocessor of the first system in which the lower data is arranged at the lower address and the microprocessor of the second system in which the lower data is arranged at the upper address. Further, according to the sixth configuration,
For example, there is an effect that a break of a bus cycle can be accurately determined even when direct memory access or the like is performed.
【図1】本発明のマイクロプロセッサ開発支援装置の概
要を示すブロック図である。FIG. 1 is a block diagram showing an outline of a microprocessor development support device of the present invention.
【図2】実施例1に係るマイクロプロセッサ開発支援装
置の構成を示すブロック図である。FIG. 2 is a block diagram illustrating a configuration of a microprocessor development support device according to the first embodiment.
【図3】図2の構成によって処理されたMPUステート
格納状態やMPUデータ格納状態等を示す信号関係図で
ある。FIG. 3 is a signal relation diagram showing an MPU state storage state, an MPU data storage state, and the like processed by the configuration of FIG. 2;
【図4】図2の構成による欠点を例示する信号関係図で
ある。FIG. 4 is a signal relation diagram illustrating a defect due to the configuration of FIG. 2;
【図5】実施例2に係るマイクロプロセッサ開発支援装
置の構成を示すブロック図である。FIG. 5 is a block diagram illustrating a configuration of a microprocessor development support device according to a second embodiment;
【図6】図5のコントローラにおける加算値生成部を示
すブロック図である。FIG. 6 is a block diagram showing an addition value generator in the controller of FIG. 5;
【図7】図5のコントローラにおける加算値生成部にお
ける他の例を示すブロック図である。FIG. 7 is a block diagram illustrating another example of an addition value generation unit in the controller of FIG. 5;
【図8】図7の具体的構成を示す回路図である。FIG. 8 is a circuit diagram showing a specific configuration of FIG. 7;
【図9】図8の回路図に記載の信号名とMPU要求サイ
ズ等との関係を示す信号関係図である。FIG. 9 is a signal relation diagram showing a relation between a signal name described in the circuit diagram of FIG. 8 and an MPU request size and the like.
【図10】図13の回路図に記載のA0,A1信号とレ
ジスタ選択との関係を示す信号関係図である。FIG. 10 is a signal relationship diagram showing a relationship between A0 and A1 signals and register selection described in the circuit diagram of FIG. 13;
【図11】図5のデータ蓄積ブロックの第3マルチプレ
クサを構成している4個のマルチプレクサと、図13の
回路図に記載のSA2,3信号およびSB0〜3信号と
の関係を示す説明図である。11 is an explanatory diagram showing a relationship between four multiplexers constituting a third multiplexer of the data storage block of FIG. 5, and signals SA2, 3 and signals SB0 to SB3 shown in the circuit diagram of FIG. 13; is there.
【図12】図13の回路図に記載のC0,C1信号とレ
ジスタ更新の有無との関係を示す信号関係図である。12 is a signal relation diagram showing a relation between C0 and C1 signals described in the circuit diagram of FIG. 13 and whether or not a register is updated;
【図13】データ蓄積制御手段を示す回路図である。FIG. 13 is a circuit diagram showing data accumulation control means.
【図14】図13の回路図に記載のA0,A1信号およ
びSACK0,1とレジスタ選択との関係を示す信号関
係図である。14 is a signal relation diagram showing a relation between A0, A1 signals and SACK0, 1 and register selection described in the circuit diagram of FIG. 13;
【図15】図5乃至図15による実施例2の構成によっ
て処理されたMPUステート格納状態やMPUデータ格
納状態等を示す信号関係図である。FIG. 15 is a signal relation diagram showing an MPU state storage state, an MPU data storage state, and the like processed by the configuration of the second embodiment shown in FIGS. 5 to 15;
【図16】同図(a)はリトルエンディアン方式を示す
説明図であり、同図(b)はビッグエンディアン方式を
示す説明図である。FIG. 16A is an explanatory diagram showing a little endian system, and FIG. 16B is an explanatory diagram showing a big endian system.
【図17】実施例3を示すものであって、ビッグエンデ
ィアン方式時における図19の回路図に記載のA0,A
1信号およびSACK0,1とレジスタ選択との関係を
示す信号関係図である。FIG. 17 is a view showing a third embodiment and showing a big end.
A0 according to the circuit diagram of FIG. 19 when Ian scheme, A
FIG. 3 is a signal relation diagram showing a relation between one signal and SACK0,1 and register selection.
【図18】実施例3を示すものであって、ビッグエンデ
ィアン方式時における図19の回路図に記載のC0,C
1信号とレジスタ更新の有無との関係を示す信号関係図
である。FIG. 18 is a view showing a third embodiment and showing a big end.
C0 according to the circuit diagram of FIG. 19 when Ian method, C
FIG. 9 is a signal relation diagram showing a relation between one signal and whether or not a register is updated;
【図19】実施例3のマイクロプロセッサ開発支援装置
におけるデータ蓄積制御手段を示す回路図である。FIG. 19 is a circuit diagram showing data accumulation control means in the microprocessor development support device of the third embodiment.
【図20】同一バスサイクル中にDMAが入った状態に
おけるMPUステータス等を示す信号関係図である。FIG. 20 is a signal relation diagram showing an MPU status and the like in a state where a DMA is entered during the same bus cycle.
【図21】実施例4のマイクロプロセッサ開発支援装置
におけるコントローラの加算値生成部等を示すブロック
図である。FIG. 21 is a block diagram illustrating an addition value generation unit and the like of a controller in a microprocessor development support device according to a fourth embodiment.
【図22】図21のコントローラの具体的構成を示す回
路図である。FIG. 22 is a circuit diagram showing a specific configuration of the controller of FIG. 21.
【図23】実施例4のマイクロプロセッサ開発支援装置
におけるデータ蓄積制御手段を示す回路図である。FIG. 23 is a circuit diagram showing data accumulation control means in the microprocessor development support device of the fourth embodiment.
【図24】従来例を示すものであって、イベント1,2
とアドレスとデータとの関係を示す信号関係図である。FIG. 24 shows a conventional example, and includes events 1 and 2.
FIG. 4 is a signal relation diagram showing a relation between data, address, and data.
【図25】従来例を示すものであて、データ範囲指定に
おけるイベント1,2とアドレスとデータとの関係を示
す信号関係図である。FIG. 25 shows a conventional example, and is a signal relation diagram showing a relation between events 1 and 2, addresses and data in data range specification.
1 バスステート蓄積コンパレートブロック 1a 第1マルチプレクサ 1b レジスタ 1c ビットコンパレータ 2 アドレス蓄積コンパレートブロック 2a 第2マルチプレクサ 2b レジスタ 2c コントローラ 3 データ蓄積(データ蓄積エンディアン変換)ブ
ロック 3a レジスタ(H) 3b レジスタ(L) 3c 第3マルチプレクサ 3d〜3g マルチプレクサ(HH,HL,LH,L
L) 4 コントローラ 4a アクセスサイズ検出手段4a 4e 最大値レジスタ 4m データ蓄積制御手段Reference Signs List 1 bus state storage comparator block 1a first multiplexer 1b register 1c bit comparator 2 address storage comparator block 2a second multiplexer 2b register 2c controller 3 data storage (data storage endian conversion) block 3a register (H) 3b register (L) 3c Third multiplexer 3d to 3g multiplexer (HH, HL, LH, L
L) 4 controller 4a access size detecting means 4a 4e maximum value register 4m data accumulation controlling means
Claims (6)
ータを複数のバスサイクルに分割して外部へアクセス可
能なマイクロプロセッサに用いられるマイクロプロセッ
サ開発支援装置において、 前記データバス幅よりも大きなビット幅のデータを格納
しこれをイベント検出回路に出力するデータ蓄積手段
と、 バスステート中の特定の信号の現在値が前回値と異なる
ときには現在値を蓄積しこれをイベント検出回路に出力
する一方、現在値が前回値と一致するときには前回値を
保持しこれをイベント検出回路に出力するとともに、上
記異同の結果を制御手段に出力するステート蓄積コンパ
レート手段と、 前回アドレスと現在アドレスとの差がマイクロプロセッ
サのアクセスできる最大バイト数以上であるときには現
在アドレスを蓄積しこれをイベント検出回路に出力する
一方、前回アドレスと現在アドレスとの差が最大バイト
数未満であるときには前回アドレスを保持しこれをイベ
ント検出回路に出力するとともに、上記結果を制御手段
に出力するアドレス蓄積コンパレート手段と、 入力された上記結果が、ステート一致でアドレスの差が
最大値未満であるときに、同一バスサイクルと判定し、
前記ステート蓄積コンパレート手段とアドレス蓄積コン
パレート手段には前回値保持を指令するとともに、デー
タ蓄積手段には前回データおよび現在データの双方を格
納するように指令する制御手段と、 を備えたことを特徴とするマイクロプロセッサ開発支援
装置。1. A microprocessor development support device used for a microprocessor which is capable of dividing data having a bit width larger than a data bus width into a plurality of bus cycles and accessing the data externally, wherein the bit width larger than the data bus width A data storage means for storing the data of the specified signal in the bus state and outputting the current value to the event detection circuit when the current value of the specific signal in the bus state is different from the previous value. When the value coincides with the previous value, the previous value is held and output to the event detection circuit, and the above-mentioned difference result is output to the control means. If the number of bytes that can be accessed by the processor is more than the maximum, the current address is stored and When the difference between the previous address and the current address is smaller than the maximum number of bytes, the previous address is held and output to the event detection circuit, and the result is output to the control means. Rate means, when the input result is a state match and the address difference is less than the maximum value, it is determined that the bus cycle is the same,
Control means for instructing the state accumulation comparator means and the address accumulation comparator means to retain the previous value, and instructing the data accumulation means to store both the previous data and the current data. Characteristic microprocessor development support device.
ータを複数のバスサイクルに分割して外部へアクセス可
能なマイクロプロセッサに用いられるマイクロプロセッ
サ開発支援装置において、 前記データバス幅よりも大きなビット幅のデータを格納
しこれをイベント検出回路に出力するデータ蓄積手段
と、 バスステート中の特定の信号の現在値が前回値と異なる
ときには現在値を蓄積しこれをイベント検出回路に出力
する一方、現在値が前回値と一致するときには前回値を
保持しこれをイベント検出回路に出力するとともに、上
記異同の結果を制御手段に出力するステート蓄積コンパ
レート手段と、 マイクロプロセッサが出力するデータバスサイズ要求信
号、周辺応答サイズ信号、及びデータバスのビット幅を
2のべき乗で表すアドレス下位ビットによって実際にア
クセスされたバイト数を検出する手段と、 上記のバイト数を累積して前回アドレスに加算した値と
現在アドレスとが不一致のときに現在アドレスを蓄積し
これをイベント検出回路に出力する一方、一致するとき
には前回アドレスを保持しこれをイベント検出回路に出
力するとともに、一致不一致の結果を制御手段に出力す
るアドレス蓄積コンパレート手段と、 入力された上記結果が、ステート一致でアドレス一致で
あるときに、同一バスサイクルと判定し、ステート蓄積
コンパレート手段とアドレス蓄積コンパレート手段には
前回値保持を指令するとともに、データ蓄積手段には前
回データおよび現在データの双方を格納するように指令
する制御手段と、 を備えたことを特徴とするマイクロプロセッサ開発支援
装置。2. A microprocessor development support device used for a microprocessor which is capable of dividing data having a bit width larger than a data bus width into a plurality of bus cycles and accessing the data externally, wherein the bit width larger than the data bus width Data storage means for storing the data of the specified signal in the bus state and outputting the current value to the event detection circuit when the current value of the specific signal in the bus state is different from the previous value. When the value coincides with the previous value, the previous value is held and output to the event detection circuit, and the above-mentioned result is output to the control means. The state accumulation comparator means, and the data bus size request signal output by the microprocessor. , The peripheral response size signal, and the address under which the bit width of the data bus is expressed by a power of 2 Means for detecting the number of bytes actually accessed by the order bit, and accumulating the above number of bytes and accumulating the current address when the value added to the previous address does not match the current address, and storing this in the event detection circuit. On the other hand, when the address matches, the address is stored and output to the event detection circuit when the previous address is held, and the result of the mismatch is output to the control means. When they match, it is determined that the bus cycle is the same, the state storage comparator means and the address storage comparator means are instructed to hold the previous value, and the data storage means stores both the previous data and the current data. And a control means for instructing the microprocessor development support device. .
ト数に関する情報を格納する手段を備えるとともに、 制御手段は、累積されたアクセスのバイト数が上記最大
のバイト数を越えた場合には、同一バスサイクルと判定
しないように構成されていることを特徴とする請求項2
に記載のマイクロプロセッサ開発支援装置。And means for storing information relating to the maximum number of bytes that can be handled by the microprocessor. The control means, when the accumulated number of bytes of the access exceeds the maximum number of bytes, controls the same bus cycle. 3. The apparatus according to claim 2, wherein the determination is not made.
2. The microprocessor development support device according to 1.
幅を分割して使用できるマイクロプロセッサに対応して
当該分割されたビット幅単位でデータの蓄積及び更新が
できる蓄積部を有して構成されるとともに、 周辺応答サイズ信号に基づきデータバスのどの位置のデ
ータを前記データ蓄積手段のどの蓄積部に格納するのか
を示す選択信号を生成するとともに累積されたアクセス
のバイト数によりどの蓄積部を更新するかを示す更新信
号を生成してこれら信号をデータ蓄積手段に出力するデ
ータ蓄積制御手段を備えたことを特徴とする請求項2又
は3に記載のマイクロプロセッサ開発支援装置。4. The data storage means includes a storage unit capable of storing and updating data in units of the divided bit width corresponding to a microprocessor which can use the data bus by dividing the bit width. In addition, a selection signal indicating which data on the data bus is to be stored in which storage unit of the data storage unit is generated based on the peripheral response size signal, and which storage unit is updated with the accumulated number of access bytes. 4. The microprocessor development support device according to claim 2, further comprising a data accumulation control unit that generates an update signal indicating whether the operation is to be performed and outputs these signals to the data accumulation unit.
位アドレスに配置する第1の方式に対応した選択および
更新パターンと、下位データを上位アドレスに配置する
第2の方式に対応した選択および更新パターンとをデー
タ蓄積手段に生成させることが可能であり、配置方式識
別信号に基づいて第1のパターンと第2のパターンを切
り替えるように構成されていることを特徴とする請求項
4に記載のマイクロプロセッサ開発支援装置。5. A data accumulation control unit comprising: a selection and update pattern corresponding to a first method for locating lower data at a lower address; and a selection and update pattern corresponding to a second method for allocating lower data at an upper address. 5. The data storage device according to claim 4, wherein the data storage means can generate the pattern and switch between the first pattern and the second pattern based on the arrangement mode identification signal. Microprocessor development support device.
ロプロセッサのバスを利用したことを示す信号を出力す
る手段を備えるとともに、 制御手段は、上記信号が出力されたバスサイクルでアク
セスされたバイト数を“0”にするとともに、ステート
の不一致およびアドレスの不一致を無視するように構成
され、 データ蓄積手段は、上記信号が出力されたバスサイクル
ではデータの更新を行わないように構成されていること
を特徴とする請求項1乃至5のいずれかに記載のマイク
ロプロセッサ開発支援装置。6. A device for outputting a signal indicating that a device other than the microprocessor has used the bus of the microprocessor, and the control unit determines the number of bytes accessed in the bus cycle in which the signal was output. 0 "and ignores state mismatch and address mismatch, and the data storage means is configured not to update data in the bus cycle in which the signal is output. The microprocessor development support device according to any one of claims 1 to 5, wherein
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP30879393A JP3215934B2 (en) | 1993-12-09 | 1993-12-09 | Microprocessor development support equipment |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP30879393A JP3215934B2 (en) | 1993-12-09 | 1993-12-09 | Microprocessor development support equipment |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH07160528A JPH07160528A (en) | 1995-06-23 |
| JP3215934B2 true JP3215934B2 (en) | 2001-10-09 |
Family
ID=17985385
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP30879393A Expired - Fee Related JP3215934B2 (en) | 1993-12-09 | 1993-12-09 | Microprocessor development support equipment |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3215934B2 (en) |
-
1993
- 1993-12-09 JP JP30879393A patent/JP3215934B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JPH07160528A (en) | 1995-06-23 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0644292A (en) | Vector processor | |
| US5287471A (en) | Data transfer controller using direct memory access method | |
| JP3215934B2 (en) | Microprocessor development support equipment | |
| JP3446653B2 (en) | Data transfer device | |
| JP2636088B2 (en) | Information processing device | |
| EP0410382A2 (en) | Data transfer controller using direct memory access method | |
| JP2000099452A (en) | DMA controller | |
| JPH0962613A (en) | Data transfer device | |
| JP2924643B2 (en) | Digital signal processing method and apparatus | |
| JP2972557B2 (en) | Data transfer control device and control method | |
| JPH02171843A (en) | Interface device | |
| JPH03294951A (en) | High speed data transfer system in personal computer system | |
| JPH0637339Y2 (en) | Waveform storage | |
| JP3695078B2 (en) | Programmable controller with pulse output instructions | |
| US5497481A (en) | Microcomputer computer system having plural programmable timers and preventing memory access operations from interfering with timer start requests | |
| JPH01243136A (en) | Logic simulation system | |
| JPH0645261Y2 (en) | Logic analyzer | |
| KR100197907B1 (en) | Input-output interfacing system | |
| JPH11102208A (en) | Sequence processing method and sequence controller used therefor | |
| JPS60193062A (en) | Microprocessor | |
| JPH0347536B2 (en) | ||
| JPH07319753A (en) | Multiplex system for bus cycle | |
| JPH05120205A (en) | Processor system with address conversion device for dma transfer and dma transfer method | |
| JPH02245959A (en) | Data transfer system of input/output controller | |
| JPH08137747A (en) | Internal register circuit |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080803 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080803 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090803 Year of fee payment: 8 |
|
| LAPS | Cancellation because of no payment of annual fees |