JP2006164119A - Data processing unit - Google Patents

Data processing unit Download PDF

Info

Publication number
JP2006164119A
JP2006164119A JP2004357830A JP2004357830A JP2006164119A JP 2006164119 A JP2006164119 A JP 2006164119A JP 2004357830 A JP2004357830 A JP 2004357830A JP 2004357830 A JP2004357830 A JP 2004357830A JP 2006164119 A JP2006164119 A JP 2006164119A
Authority
JP
Japan
Prior art keywords
bus
signal
timing
value
peripheral
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2004357830A
Other languages
Japanese (ja)
Inventor
Manabu Jo
学 城
Hiromichi Yamada
弘道 山田
Takeshi Kataoka
健 片岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Technology Corp
Original Assignee
Renesas Technology Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Renesas Technology Corp filed Critical Renesas Technology Corp
Priority to JP2004357830A priority Critical patent/JP2006164119A/en
Publication of JP2006164119A publication Critical patent/JP2006164119A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To improve performance by reducing access latency at the time of accessing a peripheral module, such as data readout, being connected to a low-speed bus, from a CPU, etc. connected to a high-speed bus. <P>SOLUTION: A data processing unit includes a CPU bus 40 for connecting a CPU 41 and a RAM 42, a peripheral bus 50 for connecting one or more peripheral modules 51, a bus bridge controller 1 connected to the respective buses for signal synchronization processing between the buses, a clock generator 30 for supplying a clock signal to each module, a set section 20 for setting a value indicating timing determined by the signal on the peripheral bus 50 and supplying the set value to the bus bridge controller 1 as a timing signal. When accessing the peripheral module 51 from the CPU 41, the bus bridge controller 1 retains data of the peripheral bus 50 at the timing according to the above timing signal, and transfers the retained data to the CPU bus 40. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、マイクロコンピュータ等のデータ処理装置に関し、特に、異なる周波数のバスが接続された構成においてバス間の信号の同期化処理を行うデータ処理装置に関する。   The present invention relates to a data processing apparatus such as a microcomputer, and more particularly to a data processing apparatus that performs a signal synchronization process between buses in a configuration in which buses of different frequencies are connected.

一般的に、コンピュータシステムにおいては階層的なバス構造を有することが多い。例えば、CPUやメモリなどのモジュールが接続される高速な第1のバス(CPUバスとも称する)の下に、周辺モジュールが接続される低速な第2のバス(周辺バスとも称する)が繋がる構成である。バスは周波数が高くなるほど配線容量や寄生容量などの電気的負荷による影響を受けやすいため、高速なCPUバスに接続されるモジュール数は限定される。そのため、それほど速度を要求しない周辺モジュールについては、CPUバスよりも低速な周辺バスに接続する構成とすることで、前記影響を回避している。また、周辺バスの周波数を低くすることで、消費電力を抑えることができる。   In general, computer systems often have a hierarchical bus structure. For example, a low-speed second bus (also referred to as a peripheral bus) to which peripheral modules are connected is connected to a high-speed first bus (also referred to as a CPU bus) to which modules such as a CPU and a memory are connected. is there. Since the bus is more susceptible to electrical loads such as wiring capacitance and parasitic capacitance as the frequency increases, the number of modules connected to the high-speed CPU bus is limited. For this reason, the peripheral modules that do not require much speed are connected to a peripheral bus that is slower than the CPU bus, thereby avoiding the influence. Moreover, power consumption can be suppressed by lowering the frequency of the peripheral bus.

例えば特許文献1記載の技術は、異なる周波数のバス間のデータ転送において非同期回路を用いることなく実現することを目的としている。また、低い周波数側のバスから高い周波数側のバスへの転送については明記されていない。
特開平6−342415号公報
For example, the technique described in Patent Document 1 is intended to realize data transfer between buses having different frequencies without using an asynchronous circuit. In addition, the transfer from the low frequency bus to the high frequency bus is not specified.
JP-A-6-342415

前記階層的なバス構造を持つコンピュータシステムにおいて、階層的なバス構造によるメリットを有する一方、階層的なバス構造により発生する問題点もある。異なる周波数のバス間での信号の転送において、データや制御信号といったバスインタフェース信号の受け渡しを行う際に、同期化処理が必要となる。バス間の信号の同期化処理(ブリッジ処理とも称する)を行うバスブリッジ制御部において、低速側から高速側のバスへとデータを転送する場合などにおけるアクセスレイテンシが長くなり、その間に高速側のバスがストール状態となってしまう。そのため、高速側のバスにおける性能が低下してしまう。   The computer system having the hierarchical bus structure has the advantages of the hierarchical bus structure, but also has a problem caused by the hierarchical bus structure. In transferring signals between buses of different frequencies, synchronization processing is required when transferring bus interface signals such as data and control signals. In a bus bridge control unit that performs signal synchronization processing (also referred to as bridge processing) between buses, the access latency when data is transferred from the low speed side to the high speed side bus becomes long, and the high speed side bus is in the meantime. Will be stalled. As a result, the performance of the high-speed bus is degraded.

従来は、CPUバスと周辺バスとの周波数差はそれほど大きくなかったため、同期化処理による性能低下はそれほど問題にはならなかった。しかしながら、最近ではCPUバスの周波数が著しく向上しているのに対し、周辺バスについてはCPUバスに比べて周波数を上げることができない状況にある。その理由は、接続されるモジュールの短期開発のために過去に設計されたモジュールを流用することが多いためや、前記低消費電力の実現のため等である。CPUバスと周辺バスとの速度差の拡大傾向により、前記同期化処理による性能低下の問題が無視できない状況になってきている。   Conventionally, since the frequency difference between the CPU bus and the peripheral bus was not so large, the performance degradation due to the synchronization processing was not so problematic. However, recently, the frequency of the CPU bus has been remarkably improved, whereas the frequency of the peripheral bus cannot be increased compared to the CPU bus. This is because a module designed in the past for short-term development of a connected module is often used, or for realizing the low power consumption. Due to the increasing tendency of the speed difference between the CPU bus and the peripheral bus, the problem of performance degradation due to the synchronization processing cannot be ignored.

本発明は以上のような問題に鑑みてなされたものであり、その目的は、異なる周波数のバスが接続され、バス間の信号の同期化処理を行うバスブリッジ制御部を有するデータ処理装置において、高速側バスのCPU等のモジュールが低速側バスの周辺モジュール等に対してデータ読み出し等のためのアクセスを行う場合におけるアクセスレイテンシを短縮して性能を向上できる技術を提供することにある。   The present invention has been made in view of the problems as described above, and its purpose is to provide a data processing apparatus having a bus bridge control unit that is connected to buses of different frequencies and performs synchronization processing of signals between the buses. An object of the present invention is to provide a technique capable of shortening access latency and improving performance when a module such as a CPU on a high-speed side bus accesses a peripheral module or the like on a low-speed side bus for reading data.

本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。前記目的を達成するために、本発明のデータ処理装置は、以下に示す技術的手段を備えることを特徴とする。   Of the inventions disclosed in the present application, the outline of typical ones will be briefly described as follows. In order to achieve the above object, a data processing apparatus according to the present invention comprises the following technical means.

本発明のデータ処理装置は、動作周波数の異なるバスが、ブリッジ処理を行うバスブリッジ制御部を介して接続される構成において、バス間の信号の同期化処理における低速側バスの信号が確定するタイミングを示す信号を前記バスブリッジ制御部に対して供給する回路部分である周辺バス信号確定タイミング設定部(設定部と略称する)を備える。   The data processing device according to the present invention has a configuration in which a signal of a low-speed bus is determined in a signal synchronization process between buses in a configuration in which buses having different operating frequencies are connected via a bus bridge control unit that performs a bridge process. A peripheral bus signal determination timing setting unit (abbreviated as a setting unit), which is a circuit part for supplying a signal indicating the above to the bus bridge control unit.

本データ処理装置は、例えば、プロセッサやプロセッサが使用するメモリ等のモジュールが接続される高速側の第1のバス(CPUバス)と、1つ以上の周辺モジュールが接続される低速側の第2のバス(周辺バス)と、前記第1と第2のバスに接続されバス間の信号の同期化処理を行うバスブリッジ制御部と、バスブリッジ制御部を含む各モジュールに対してクロック信号を供給するクロック生成部と、前記第2のバスの信号が確定するタイミングを示す値(タイミング値)が設定され、その設定値を前記同期化処理に用いるためのタイミング信号としてバスブリッジ制御部に対し供給する設定部とを有する構成である。   The data processing apparatus includes, for example, a first bus (CPU bus) on a high speed side to which a processor and a module such as a memory used by the processor are connected, and a second low speed side to which one or more peripheral modules are connected. A bus bridge (peripheral bus), a bus bridge controller connected to the first and second buses for synchronizing signals between the buses, and supplying a clock signal to each module including the bus bridge controller And a value (timing value) indicating the timing at which the signal of the second bus is determined is set, and the set value is supplied to the bus bridge control unit as a timing signal for use in the synchronization processing And a setting unit.

バスブリッジ制御部は、プロセッサが周辺モジュールへアクセスを行う場合に、前記第1と第2のバス間の信号の同期化処理で、前記タイミング信号に従ったタイミングで、前記第2のバスの信号を保持(取り込み)する。前記第2のバスの信号とは特にデータや制御信号である。   When the processor accesses the peripheral module, the bus bridge control unit synchronizes the signal between the first and second buses, and the signal of the second bus is synchronized with the timing signal. Is held (captured). The signals on the second bus are in particular data and control signals.

特に、前記第1のバス上のプロセッサが前記第2のバス上の周辺モジュールに対するデータ読み出しのアクセスを行う場合に、バスブリッジ制御部は、前記第2のバス上の周辺モジュールから読み出されたデータを、前記タイミング信号に従ったタイミングで保持し、前記第1のバスへ出力する。   In particular, when the processor on the first bus accesses data reading to the peripheral module on the second bus, the bus bridge control unit is read from the peripheral module on the second bus. Data is held at a timing according to the timing signal and output to the first bus.

なお、本明細書における用語として、前記第2のバスの「信号」とは、「データ」と「制御信号」を含む。「データ」とは、例えば周辺モジュールからの読み出しデータなどである。「制御信号」とは、「データ」以外の各種制御用信号であり、「コマンド」や「アドレス」は除く。   As a term in the present specification, the “signal” of the second bus includes “data” and “control signal”. “Data” is, for example, read data from a peripheral module. The “control signal” is various control signals other than “data”, and excludes “command” and “address”.

本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。本発明によれば、同期化処理においてシステム構成に応じた最適なタイミングで低速側のバスの信号を保持でき、高速側のバスのCPU等が低速側のバスの周辺モジュール等に対してデータ読み出し等のためのアクセスを行う場合におけるアクセスレイテンシを短縮して、性能を向上できる。   Among the inventions disclosed in the present application, effects obtained by typical ones will be briefly described as follows. According to the present invention, the low-speed bus signal can be held at the optimum timing according to the system configuration in the synchronization processing, and the high-speed bus CPU or the like reads data from the peripheral modules of the low-speed bus. For example, the access latency in the case of performing access for the purpose can be shortened and the performance can be improved.

以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一部には原則として同一符号を付し、その繰り返しの説明は省略する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. Note that components having the same function are denoted by the same reference symbols throughout the drawings for describing the embodiment, and the repetitive description thereof will be omitted.

本発明の各実施の形態のデータ処理装置では、CPUバス上のCPUがバスブリッジ制御部のブリッジ処理を介して周辺バス上の周辺モジュールへアクセスを行う際、バスブリッジ制御部は、設定部から供給されるタイミング信号に従ったタイミングで、バス間の信号の同期化処理を行う。特に、CPUバス上のCPUが周辺バス上の周辺モジュールに対するデータ読み出しのアクセスを行う際に、バスブリッジ制御部は、周辺バス上の周辺モジュールからの読み出しデータをCPUバス側へ転送する際において、前記タイミング信号に従ったタイミングで周辺バス上のデータを保持し、CPUバス側へ出力する処理を行う。   In the data processing device of each embodiment of the present invention, when the CPU on the CPU bus accesses the peripheral module on the peripheral bus via the bridge processing of the bus bridge control unit, the bus bridge control unit A signal synchronization process between the buses is performed at a timing according to the supplied timing signal. In particular, when the CPU on the CPU bus performs access to read data to the peripheral modules on the peripheral bus, the bus bridge control unit transfers the read data from the peripheral modules on the peripheral bus to the CPU bus side. Data on the peripheral bus is held at a timing according to the timing signal and output to the CPU bus side.

<前提技術>
図15に、本発明の前提となる従来技術として、異なる周波数のバスの間でデータ転送を行う、公知の一般的なデータ処理装置の構成例を示す。まず、この前提技術となるデータ処理装置について説明する。このデータ処理装置は、CPUバス40、CPU41、RAM42、周辺バス50、第1の周辺モジュール(周辺モジュール#1)51−1〜第Nの周辺モジュール(周辺モジュール#N)51−N、バスブリッジ制御部101、クロック生成部30とから構成される。CPUバス40は、周辺バス50よりも高速な周波数で動作するバスである。CPUバス40と周辺バス50では、コマンドバス(例えば4ビット)、アドレスバス(例えば32ビット)、データバスなどを区別せずにまとめて1つの線で示している。
<Prerequisite technology>
FIG. 15 shows a configuration example of a known general data processing apparatus that performs data transfer between buses having different frequencies as a prior art which is a premise of the present invention. First, a data processing apparatus as the prerequisite technology will be described. This data processing apparatus includes a CPU bus 40, a CPU 41, a RAM 42, a peripheral bus 50, a first peripheral module (peripheral module # 1) 51-1 to an Nth peripheral module (peripheral module #N) 51-N, a bus bridge. A control unit 101 and a clock generation unit 30 are included. The CPU bus 40 is a bus that operates at a higher frequency than the peripheral bus 50. In the CPU bus 40 and the peripheral bus 50, a command bus (for example, 4 bits), an address bus (for example, 32 bits), a data bus, and the like are collectively shown as one line.

CPUバス40に、プロセッサであるCPU41と、CPU41が使用する主メモリやキャッシュメモリとしてのRAM42と、バスブリッジ制御部101が接続される。周辺バス50に、第1から第NまでのN個(1つ以上)の周辺モジュール51{51−1,51−2,……,51−N}と、バスブリッジ制御部101とが接続される。クロック生成部30は、バスブリッジ制御部101を含む各モジュールに対してクロック信号を供給する。周辺モジュール51は、例えばDMA(ダイレクトメモリアクセス)コントローラやタイマーといったモジュールである。   A CPU 41 as a processor, a RAM 42 as a main memory and a cache memory used by the CPU 41, and a bus bridge control unit 101 are connected to the CPU bus 40. N (one or more) peripheral modules 51 {51-1, 51-2,..., 51-N} from 1st to Nth and the bus bridge control unit 101 are connected to the peripheral bus 50. The The clock generation unit 30 supplies a clock signal to each module including the bus bridge control unit 101. The peripheral module 51 is a module such as a DMA (direct memory access) controller or a timer.

バスブリッジ制御部101は、CPUバス40と周辺バス50との間での信号の同期化処理(ブリッジ処理)を行うもので、CPU41が周辺モジュール51に対してアクセスする場合に、CPU41に代わって周辺モジュール51へアクセスを行う。   The bus bridge control unit 101 performs signal synchronization processing (bridge processing) between the CPU bus 40 and the peripheral bus 50, and replaces the CPU 41 when the CPU 41 accesses the peripheral module 51. Access to the peripheral module 51 is performed.

次に、図16に、従来のバスブリッジ制御部101の内部構成例を示す。このバスブリッジ制御部101の構成例は、特にCPU41が周辺モジュール51に対するデータ読み出しのアクセスを行う際に係わる読み出し制御部の部分の構成を示すものであり、レジスタ11と、AND回路部14と、周辺バスコマンド発行制御部15と、周辺バスアドレス発行制御部112と、CPUバス40や周辺バス50との間で各信号を入出力する信号線とを有して構成される。   Next, FIG. 16 shows an internal configuration example of the conventional bus bridge control unit 101. This configuration example of the bus bridge control unit 101 shows a configuration of a read control unit particularly when the CPU 41 accesses data read to the peripheral module 51, and includes a register 11, an AND circuit unit 14, The peripheral bus command issuance control unit 15, the peripheral bus address issuance control unit 112, and signal lines for inputting / outputting signals between the CPU bus 40 and the peripheral bus 50 are configured.

周辺バスコマンド発行制御部15は、CPUバス40からCPUバスコマンド43を入力し、周辺バス50に対して周辺バスコマンド152を出力し、AND回路部14に対して周辺バスデータ出力期間信号(出力期間信号と略称する)151を出力する。出力期間信号151は、周辺バスデータ54の出力期間を示す信号である。   The peripheral bus command issuance control unit 15 inputs a CPU bus command 43 from the CPU bus 40, outputs a peripheral bus command 152 to the peripheral bus 50, and outputs a peripheral bus data output period signal (output) to the AND circuit unit 14. 151 (abbreviated as a period signal). The output period signal 151 is a signal indicating the output period of the peripheral bus data 54.

CPUバスコマンド43は、CPUバス40からバスブリッジ制御部101へ入力される、CPU41からのリードコマンド等のコマンドである。周辺バスコマンド152は、バスブリッジ制御部101から周辺バス50へ出力される、周辺モジュール51からの読み出し等のためのコマンドである。周辺バスデータ54は、周辺バス50からバスブリッジ制御部101へ入力される、周辺モジュール51からの読み出しデータ等のデータである。CPUバスデータ111は、バスブリッジ制御部101からCPUバス40へ出力される、周辺モジュール51からCPU41へのリードデータ等のデータである。   The CPU bus command 43 is a command such as a read command from the CPU 41 that is input from the CPU bus 40 to the bus bridge control unit 101. The peripheral bus command 152 is a command for reading from the peripheral module 51 and the like output from the bus bridge control unit 101 to the peripheral bus 50. The peripheral bus data 54 is data such as read data from the peripheral module 51 input from the peripheral bus 50 to the bus bridge control unit 101. The CPU bus data 111 is data such as read data from the peripheral module 51 to the CPU 41 output from the bus bridge control unit 101 to the CPU bus 40.

周辺バスアドレス発行制御部112は、CPUバス40からCPUバスアドレス44を入力し、周辺バス50に対して周辺バスアドレス1121を出力する。CPUバスアドレス44は、CPUバス40からバスブリッジ制御部101へ入力される、CPU41からの周辺モジュール51に対するデータ読み出しアドレス等のアドレスである。周辺バスアドレス1121は、バスブリッジ制御部101から周辺バス50へ出力される、周辺モジュール51からのデータ読み出し等のためのアドレスである。   The peripheral bus address issuance control unit 112 receives the CPU bus address 44 from the CPU bus 40 and outputs the peripheral bus address 1121 to the peripheral bus 50. The CPU bus address 44 is an address such as a data read address for the peripheral module 51 from the CPU 41 that is input from the CPU bus 40 to the bus bridge control unit 101. The peripheral bus address 1121 is an address for reading data from the peripheral module 51 and the like output from the bus bridge control unit 101 to the peripheral bus 50.

AND回路部14は、クロック生成部30からクロック同期信号32を入力し、周辺バスコマンド発行制御部15から出力期間信号151を入力して、論理積をとって、レジスタ11に対して周辺バスデータ保持イネーブル信号(イネーブル信号と略称する)141を出力する。イネーブル信号141は、レジスタ11における周辺バスデータ54の保持をイネーブル状態にする信号である。   The AND circuit unit 14 receives the clock synchronization signal 32 from the clock generation unit 30, receives the output period signal 151 from the peripheral bus command issue control unit 15, performs a logical product, and outputs peripheral bus data to the register 11. A holding enable signal (abbreviated as an enable signal) 141 is output. The enable signal 141 is a signal for enabling the holding of the peripheral bus data 54 in the register 11.

レジスタ11は、周辺バス50から周辺バスデータ54を入力し、クロック生成部30からCPUバスクロック31を入力し、AND回路部14から入力されるイネーブル信号141がイネーブル状態の時に周辺バスデータ54を保持して、CPUバス40にCPUバスデータ111として出力する。   The register 11 receives the peripheral bus data 54 from the peripheral bus 50, the CPU bus clock 31 from the clock generation unit 30, and the peripheral bus data 54 when the enable signal 141 input from the AND circuit unit 14 is enabled. The data is held and output to the CPU bus 40 as CPU bus data 111.

前記CPUバスクロック31は、CPUバス40における動作クロックである。図示していない周辺バスクロック(33)は、周辺バス50における動作クロックである。クロック同期信号32は、CPUバスクロック31と周辺バスクロック(33)とを同期させるための信号である。   The CPU bus clock 31 is an operation clock in the CPU bus 40. A peripheral bus clock (33) not shown is an operation clock in the peripheral bus 50. The clock synchronization signal 32 is a signal for synchronizing the CPU bus clock 31 and the peripheral bus clock (33).

また、図17は、前記図15及び図16で示したデータ処理装置の動作の一例をタイムチャートで示したものである。t0〜t16は、CPUバスクロック31のサイクルに対応した時間の単位を示す。本例では、CPUバスクロック31と周辺バスクロック33とのクロック比が8:1となっている場合を示している。クロック同期信号32については、周辺バスクロック33の立ち上がりタイミングに対応したt7,t15のタイミングでアサートしている。   FIG. 17 is a time chart showing an example of the operation of the data processing apparatus shown in FIGS. 15 and 16. t0 to t16 indicate units of time corresponding to the cycle of the CPU bus clock 31. In this example, the case where the clock ratio between the CPU bus clock 31 and the peripheral bus clock 33 is 8: 1 is shown. The clock synchronization signal 32 is asserted at timings t7 and t15 corresponding to the rising timing of the peripheral bus clock 33.

本例では、CPUバス40からのCPUバスコマンド43の入力に基づき周辺バスコマンド発行制御部15で発行される読み出し用の周辺バスコマンド152(図17中「R」で示す)と、周辺バスアドレス発行制御部112で発行される読み出し用の周辺バスアドレス1121(「A」で示す)とが、t0からt7の期間に出力された場合を示している。なお、CPU41からのCPUバスコマンド43とCPUバスアドレス44については図示していないが、t0よりも前にバスブリッジ制御部101に入力されている。そして、この周辺バスコマンド152に対する周辺バスデータ54(「D」で示す)が、t8からt15の期間に出力された場合を示している。この場合に、周辺バスコマンド発行制御部15から出力される出力期間信号151も、同じt8からt15の期間に出力される。   In this example, a peripheral bus command 152 for reading (indicated by “R” in FIG. 17) issued by the peripheral bus command issuance control unit 15 based on the input of the CPU bus command 43 from the CPU bus 40, and the peripheral bus address In this example, the peripheral bus address for reading 1121 (indicated by “A”) issued by the issue control unit 112 is output during the period from t0 to t7. The CPU bus command 43 and the CPU bus address 44 from the CPU 41 are not shown, but are input to the bus bridge control unit 101 before t0. The peripheral bus data 54 (indicated by “D”) corresponding to the peripheral bus command 152 is output during the period from t8 to t15. In this case, the output period signal 151 output from the peripheral bus command issuance control unit 15 is also output during the same period from t8 to t15.

そして、AND回路部14は、出力期間信号151とクロック同期信号32とのAND論理をとり、図17中に示すようにt15のタイミングでイネーブル信号141をアサートする。レジスタ11は、イネーブル信号141がアサートされたt15のタイミングで周辺バスデータ54を保持し、次のt16のタイミングでCPUバスデータ111(「D」で示す)として出力する。   The AND circuit unit 14 takes an AND logic of the output period signal 151 and the clock synchronization signal 32 and asserts the enable signal 141 at the timing t15 as shown in FIG. The register 11 holds the peripheral bus data 54 at the timing t15 when the enable signal 141 is asserted, and outputs it as CPU bus data 111 (indicated by “D”) at the next timing t16.

このようなデータ処理装置において、バスブリッジ制御部101の同期化処理では、周辺バス50のデータの内容は、クロック同期信号32のアサートよりも前に確定している。しかしながら、周辺バスデータ54がクロック同期信号32よりもかなり早いタイミングで確定する場合においても、クロック同期信号32を用いて周辺バスデータ54を保持している。すなわち、本例の場合なら、t8での周辺バスデータ54の出力開始からt8〜t14の期間だけ遅れて周辺バスデータ54が保持される。そのため、その時間分、CPUバス40へのCPUバスデータ111の転送が遅れてしまう。周辺バスデータ54の転送が完了するまでCPUバス40はストール状態となり、その結果、CPU41の性能が低下することとなる。前記ストール状態とは、周辺バス50のデータ内容が確定してから取り込んでCPUバス40に出力するまでに待ち時間が発生することを指している。   In such a data processing device, in the synchronization processing of the bus bridge control unit 101, the data content of the peripheral bus 50 is determined before the clock synchronization signal 32 is asserted. However, even when the peripheral bus data 54 is determined at a timing much earlier than the clock synchronization signal 32, the peripheral bus data 54 is held using the clock synchronization signal 32. That is, in the case of this example, the peripheral bus data 54 is held with a delay of the period from t8 to t14 from the start of output of the peripheral bus data 54 at t8. Therefore, the transfer of the CPU bus data 111 to the CPU bus 40 is delayed by that time. The CPU bus 40 is stalled until the transfer of the peripheral bus data 54 is completed, and as a result, the performance of the CPU 41 is lowered. The stalled state means that a waiting time occurs after the data content of the peripheral bus 50 is determined and taken in and output to the CPU bus 40.

(実施の形態1)
図1は、本発明の実施の形態1におけるデータ処理装置10の構成を示す。このデータ処理装置10は、CPUバス40と、CPU41と、RAM42と、周辺バス50と、第1の周辺モジュール(周辺モジュール#1)51−1〜第Nの周辺モジュール(周辺モジュール#N)51−Nと、バスブリッジ制御部1と、クロック生成部30と、周辺バス信号確定タイミング設定部(設定部)20とを有して構成される。バスブリッジ制御部1と設定部20以外の各部は、前提技術の構成と同様である。なお設定部20をバスブリッジ制御部1の外部に設けた構成として示しているが、バスブリッジ制御部1の内部に設けた構成も可能である。
(Embodiment 1)
FIG. 1 shows a configuration of a data processing apparatus 10 according to the first embodiment of the present invention. The data processing apparatus 10 includes a CPU bus 40, a CPU 41, a RAM 42, a peripheral bus 50, a first peripheral module (peripheral module # 1) 51-1 to an Nth peripheral module (peripheral module #N) 51. -N, bus bridge control unit 1, clock generation unit 30, and peripheral bus signal determination timing setting unit (setting unit) 20. Each unit other than the bus bridge control unit 1 and the setting unit 20 has the same configuration as that of the base technology. Although the setting unit 20 is shown as a configuration provided outside the bus bridge control unit 1, a configuration provided inside the bus bridge control unit 1 is also possible.

CPU41と、RAM42と、バスブリッジ制御部1は、CPUバス40に接続される。第1から第NのN個(1つ以上)の周辺モジュール51{51−1,51−2,……,51−N}と、バスブリッジ制御部1は、周辺バス50に接続される。バスブリッジ制御部1は、CPUバス40と周辺バス50とを接続し、設定部20とクロック生成部30にも接続される。クロック生成部30は、バスブリッジ制御部1、CPU41、RAM42、各周辺モジュール51に接続され、それぞれに対してクロック信号を供給する。   The CPU 41, the RAM 42, and the bus bridge control unit 1 are connected to the CPU bus 40. The first to Nth (one or more) N (one or more) peripheral modules 51 {51-1, 51-2,..., 51-N} and the bus bridge control unit 1 are connected to the peripheral bus 50. The bus bridge control unit 1 connects the CPU bus 40 and the peripheral bus 50, and is also connected to the setting unit 20 and the clock generation unit 30. The clock generation unit 30 is connected to the bus bridge control unit 1, the CPU 41, the RAM 42, and each peripheral module 51, and supplies a clock signal to each.

設定部20は、当該設定部20に対して設定される周辺バス信号確定タイミング値(タイミング値)21の信号を、バスブリッジ制御部1に対してタイミング信号として供給する。タイミング値21は、同期化処理における、周辺バス50のデータや制御信号が確定するタイミングを示す値であり、バスブリッジ制御部1が周辺バス50の信号を保持するタイミングを示している。   The setting unit 20 supplies a signal of a peripheral bus signal determination timing value (timing value) 21 set for the setting unit 20 to the bus bridge control unit 1 as a timing signal. The timing value 21 is a value indicating the timing at which the data and control signals of the peripheral bus 50 are determined in the synchronization process, and indicates the timing at which the bus bridge control unit 1 holds the signal of the peripheral bus 50.

本データ処理装置10において、CPUバス40上のCPU41が周辺バス50上の周辺モジュール51に対してアクセスを行う場合に、バスブリッジ制御部1は、CPU41がCPUバス40に出力したコマンドを取り込み、周辺バス50を経由して周辺モジュール51にアクセスを行う。バスブリッジ制御部1は、CPU41から周辺バス50側の周辺モジュール51へのアクセスにおけるバス間の信号の同期化処理において、設定部20から供給されるタイミング信号に従ったタイミングで、周辺バス50上の転送対象となる信号を内部に保持(取り込み)して、CPUバス40側へと出力する。特に、バスブリッジ制御部1は、CPU41からのリードコマンドによるデータ読み出しのための周辺モジュール51へのアクセスの際に、周辺バス50上に出力した読み出しコマンドに応じて周辺モジュール51から読み出したデータを、前記タイミング信号に従ったタイミングで保持して、CPUバス40側へと転送する。   In the data processing apparatus 10, when the CPU 41 on the CPU bus 40 accesses the peripheral module 51 on the peripheral bus 50, the bus bridge control unit 1 takes in the command output by the CPU 41 to the CPU bus 40, The peripheral module 51 is accessed via the peripheral bus 50. The bus bridge control unit 1 performs processing on the peripheral bus 50 at a timing according to the timing signal supplied from the setting unit 20 in the signal synchronization processing between the buses in the access from the CPU 41 to the peripheral module 51 on the peripheral bus 50 side. Are held (taken in) inside and output to the CPU bus 40 side. In particular, the bus bridge control unit 1 reads data read from the peripheral module 51 in accordance with the read command output on the peripheral bus 50 when accessing the peripheral module 51 for data reading by the read command from the CPU 41. The data is held at the timing according to the timing signal and transferred to the CPU bus 40 side.

設定部20は、タイミング値21が設定・保持される不揮発性メモリであるタイミング設定レジスタ25が内蔵された構成を有する。本構成は、特に設定部20に対して外部から設定を行う構成に対応している。設定部20の外部に有するCPU41などのモジュールから、タイミング設定レジスタ25に対して、タイミング値21の設定値を読み書きする。例えばCPU41は、CPUバス40や制御信号線などを介して、タイミング設定レジスタ25に対し、タイミング値21の設定値の書き込みを行う。   The setting unit 20 includes a timing setting register 25 that is a nonvolatile memory in which the timing value 21 is set and held. This configuration particularly corresponds to a configuration in which the setting unit 20 is set from the outside. The setting value of the timing value 21 is read from and written to the timing setting register 25 from a module such as the CPU 41 provided outside the setting unit 20. For example, the CPU 41 writes the set value of the timing value 21 to the timing setting register 25 via the CPU bus 40 or the control signal line.

タイミング値21は、データ処理装置10のシステム構成、すなわちCPUバス40や周辺バス50の動作周波数や周辺モジュール51の構成などによって定まる。データ処理装置10は、例えば、システム構成の変更に伴ってタイミング値21が変更される場合に、新たに定まるタイミング値21を、CPU41からタイミング設定レジスタ25に対して書き込み、設定を更新する。   The timing value 21 is determined by the system configuration of the data processing apparatus 10, that is, the operating frequency of the CPU bus 40 and the peripheral bus 50, the configuration of the peripheral module 51, and the like. For example, when the timing value 21 is changed as the system configuration is changed, the data processing apparatus 10 writes the newly determined timing value 21 from the CPU 41 to the timing setting register 25 and updates the setting.

図2(a)〜(e)は、各実施の形態における設定部20の構成と設定部20に格納されるタイミング値21の設定例を示す。(a)は実施の形態1、(b)は実施の形態2、(c)は実施の形態3、(d)は実施の形態4、(e)は実施の形態7にそれぞれ対応している。   2A to 2E show a configuration example of the setting unit 20 and setting examples of the timing value 21 stored in the setting unit 20 in each embodiment. (A) corresponds to Embodiment 1, (b) corresponds to Embodiment 2, (c) corresponds to Embodiment 3, (d) corresponds to Embodiment 4, and (e) corresponds to Embodiment 7. .

図2(a)は、実施の形態1で設定部20に内蔵されたタイミング設定レジスタ25に格納されるタイミング値21の一例を示す。実施の形態1では、周辺バス50の信号が確定する最短のタイミングが、CPUバス40のクロックサイクル数で表現される。本例では設定値が「2」となっており、これは周辺バス50におけるデータや制御信号が確定する最短のタイミングが、周辺バス50の信号の出力開始を起点とした、CPUバス40のクロックサイクル数における3クロック目であることを表している。なおこの設定値としては、バスブリッジ制御部1の内部にあるカウンタ(後述するカウンタ部12)のカウンタ値と比較するために、前記クロックサイクル数「3」から「1」を引いた「2」が設定されている。当然ながら、この設定値は周辺バス50の信号が確定しているタイミングを示す値であれば構わないため、最短の確定タイミング以外の値、すなわちそれよりも遅いタイミングの値を設定してもよい。本例の場合なら、図2(a)に示す設定値を「2」以上としてよい。この設定値の範囲は、バスブリッジ制御部1内のカウンタ(カウンタ部12)の最大カウント値によって決まる。例えば、「0」から「7」までカウント可能な3ビットのカウンタである場合は、設定可能な値は「0」から「7」までの範囲となる。   FIG. 2A shows an example of the timing value 21 stored in the timing setting register 25 built in the setting unit 20 in the first embodiment. In the first embodiment, the shortest timing at which the signal of the peripheral bus 50 is determined is expressed by the number of clock cycles of the CPU bus 40. In this example, the setting value is “2”, which is the clock of the CPU bus 40 when the shortest timing at which the data and control signals in the peripheral bus 50 are determined starts from the start of signal output of the peripheral bus 50. It represents the third clock in the number of cycles. The set value is “2” obtained by subtracting “1” from the clock cycle number “3” for comparison with the counter value of a counter (counter unit 12 described later) in the bus bridge control unit 1. Is set. As a matter of course, this set value may be a value indicating the timing at which the signal of the peripheral bus 50 is fixed, so a value other than the shortest fixed timing, that is, a value at a later timing may be set. . In the case of this example, the set value shown in FIG. 2A may be “2” or more. The range of the set value is determined by the maximum count value of the counter (counter unit 12) in the bus bridge control unit 1. For example, in the case of a 3-bit counter that can count from “0” to “7”, the settable value is in the range from “0” to “7”.

図3は、前記図1に示されるバスブリッジ制御部1の構成の一例を示す図である。本例では、バスブリッジ制御部1における、読み出し制御部の部分について示している。バスブリッジ制御部1は、レジスタ11、カウンタ部12、一致検出部13、AND回路部14、周辺バスコマンド発行制御部15、周辺バスアドレス発行制御部112、及び各信号の入出力のための信号線などを有して構成される。   FIG. 3 is a diagram showing an example of the configuration of the bus bridge control unit 1 shown in FIG. In this example, the read control unit in the bus bridge control unit 1 is shown. The bus bridge control unit 1 includes a register 11, a counter unit 12, a coincidence detection unit 13, an AND circuit unit 14, a peripheral bus command issuance control unit 15, a peripheral bus address issuance control unit 112, and signals for input / output of each signal Consists of lines and the like.

レジスタ11は、クロック生成部30から供給されるCPUバスクロック31と、AND回路部14からの周辺バスデータ保持イネーブル信号(イネーブル信号)141とをもとに、周辺バス50から入力される周辺バスデータ54を保持し、CPUバス40に対してCPUバスデータ111として出力する。   The register 11 is a peripheral bus input from the peripheral bus 50 based on the CPU bus clock 31 supplied from the clock generation unit 30 and the peripheral bus data holding enable signal (enable signal) 141 from the AND circuit unit 14. The data 54 is held and output to the CPU bus 40 as CPU bus data 111.

カウンタ部12は、CPUバスクロック31と、クロック生成部30から供給されるクロック同期信号32とを入力し、クロック同期信号32が「Lo」のときにカウントアップ、「Hi」のときにカウンタクリアして、カウンタ値121として出力する。   The counter unit 12 receives the CPU bus clock 31 and the clock synchronization signal 32 supplied from the clock generation unit 30, and counts up when the clock synchronization signal 32 is “Lo”, and clears the counter when the clock synchronization signal 32 is “Hi”. The counter value 121 is output.

一致検出部13は、カウンタ部12から入力されるカウンタ値121と、設定部20から供給されるタイミング値21とを一致比較し、その結果を一致検出値131として出力する。   The coincidence detection unit 13 compares the counter value 121 input from the counter unit 12 with the timing value 21 supplied from the setting unit 20, and outputs the result as a coincidence detection value 131.

AND回路部14は、一致検出部13から入力される一致検出値131と、周辺バスコマンド発行制御部15から入力される周辺バスデータ出力期間信号(出力期間信号)151とのAND論理をとり、その結果をイネーブル信号141として出力する。   The AND circuit unit 14 takes an AND logic of the coincidence detection value 131 input from the coincidence detection unit 13 and the peripheral bus data output period signal (output period signal) 151 input from the peripheral bus command issue control unit 15. The result is output as an enable signal 141.

周辺バスコマンド発行制御部15は、CPUバス40から入力されるCPUバスコマンド43や、周辺バス50から入力される図示しない周辺バス有効データ出力期間信号などをもとに、AND回路部14に対して出力期間信号151を、周辺バス50に対して周辺バスコマンド152を出力する。   The peripheral bus command issuance control unit 15 sends the AND circuit unit 14 to the AND circuit unit 14 based on a CPU bus command 43 input from the CPU bus 40 and a peripheral bus valid data output period signal (not shown) input from the peripheral bus 50. The output period signal 151 is output to the peripheral bus 50 and the peripheral bus command 152 is output.

周辺バスアドレス発行制御部112は、CPUバス40におけるCPUバスアドレス44をもとに、周辺バス50に対して周辺バスアドレス1121を出力する。   The peripheral bus address issue control unit 112 outputs the peripheral bus address 1121 to the peripheral bus 50 based on the CPU bus address 44 in the CPU bus 40.

本構成で、CPU41から周辺モジュール51に対するリードコマンドがCPUバスコマンド43としてCPUバス40上に発行されると、バスブリッジ制御部1の処理を介して、周辺バス50に対してデータ読み出し用のコマンドが周辺バスコマンド152として出力される。この周辺バスコマンド152に従って周辺モジュール51から読み出されたデータが、周辺バスデータ54としてバスブリッジ制御部1に入力される。設定部20からのタイミング信号に従ったバスブリッジ制御部1での同期化処理で周辺バスデータ54が保持され、CPUバス40に対してCPUバスデータ111として出力される。そしてCPU41により、CPUバスデータ111がリードデータとして取得される。   In this configuration, when a read command for the peripheral module 51 is issued as a CPU bus command 43 from the CPU 41 to the CPU bus 40, a command for reading data to the peripheral bus 50 through the processing of the bus bridge controller 1. Is output as the peripheral bus command 152. Data read from the peripheral module 51 in accordance with the peripheral bus command 152 is input to the bus bridge controller 1 as peripheral bus data 54. The peripheral bus data 54 is held by the synchronization processing in the bus bridge control unit 1 in accordance with the timing signal from the setting unit 20 and is output as the CPU bus data 111 to the CPU bus 40. The CPU 41 acquires the CPU bus data 111 as read data.

図4は、前記図3に示されるカウンタ部12の一例を示している。このカウンタ部12の構成は、CPUバス40と周辺バス50の周波数比、すなわちCPUバスクロック31と図示していない周辺バスクロック(33)のクロック比が8:1である場合に対応した例であり、「0」から「7」までカウント可能な3ビットのカウンタとなっている。このカウンタ部12では、CPUバスクロック31の周期でカウントを行い、クロック同期信号32(図4中「S」で示す)が「Lo」(=0)であればカウントアップ、「Hi」(=1)であればカウンタクリアする。このカウンタの最大カウント数は、データ処理装置10で使用されるクロック比に応じて決定される。例えば、クロック比が16:1まで使用される場合は、カウンタ部12の構成を「0」から「15」までカウント可能な4ビットのカウンタにすることで、そのすべてのタイミングに対応できる。   FIG. 4 shows an example of the counter unit 12 shown in FIG. The configuration of the counter unit 12 is an example corresponding to the case where the frequency ratio between the CPU bus 40 and the peripheral bus 50, that is, the clock ratio between the CPU bus clock 31 and the peripheral bus clock (33) (not shown) is 8: 1. Yes, it is a 3-bit counter that can count from "0" to "7". The counter unit 12 performs counting at the cycle of the CPU bus clock 31 and counts up if the clock synchronization signal 32 (indicated by “S” in FIG. 4) is “Lo” (= 0), and “Hi” (= If 1), clear the counter. The maximum count number of this counter is determined according to the clock ratio used in the data processing apparatus 10. For example, when the clock ratio is used up to 16: 1, it is possible to deal with all the timings by making the configuration of the counter unit 12 a 4-bit counter capable of counting from “0” to “15”.

図5は、前記図1〜図4で示されるバスブリッジ制御部1の動作を説明するタイムチャートの一例を示している。t0〜t16は、CPUバスクロック31のサイクルに対応した時間の単位を示す。本例では、CPUバスクロック31と周辺バスクロック33とのクロック比は8:1となっている。クロック同期信号32については、周辺バスクロック33の立ち上がりタイミングに対応したt7,t15でアサートしている。なおCPUバスコマンド43、CPUバスアドレス44などについては前提技術と同様であり、図示を省略している。   FIG. 5 shows an example of a time chart for explaining the operation of the bus bridge controller 1 shown in FIGS. t0 to t16 indicate units of time corresponding to the cycle of the CPU bus clock 31. In this example, the clock ratio between the CPU bus clock 31 and the peripheral bus clock 33 is 8: 1. The clock synchronization signal 32 is asserted at t7 and t15 corresponding to the rising timing of the peripheral bus clock 33. Note that the CPU bus command 43, the CPU bus address 44, and the like are the same as in the base technology and are not shown.

本例では、バスブリッジ制御部1での同期化処理における周辺バス50の信号の確定タイミングとして、周辺バスデータ54がCPUバスクロック31の3サイクル目で確定する場合の例を示している。すなわち、周辺バス50上の或る周辺モジュール51が出力した周辺バスデータ54において、出力開始されるt8からの最初の1,2サイクル目ではデータの内容が保証されていない不定値であり、3サイクル目以降に内容が保証された確定状態となる。この場合、この3サイクル目以降のタイミングを、タイミング値21として選択して設定可能であり、本例では特に最短の確定タイミングとなる3サイクル目がタイミング値21として設定されている。この場合、設定部20で設定されるタイミング値21、すなわちバスブリッジ制御部1に供給されるタイミング信号の値は、「2」となる。カウンタ部12は、前記図4で説明した3ビットのカウンタであり、そのカウンタ値121は、CPUバスクロック31のサイクルに対応して「0」から「7」までのカウントが繰り返されている。   In this example, the peripheral bus data 54 is determined in the third cycle of the CPU bus clock 31 as the determination timing of the signal of the peripheral bus 50 in the synchronization processing in the bus bridge control unit 1. That is, the peripheral bus data 54 output from a peripheral module 51 on the peripheral bus 50 is an indeterminate value whose data content is not guaranteed in the first and second cycles from t8 when output is started. After the cycle, the content is guaranteed. In this case, the timing after the third cycle can be selected and set as the timing value 21. In this example, the third cycle that is the shortest final timing is set as the timing value 21. In this case, the timing value 21 set by the setting unit 20, that is, the value of the timing signal supplied to the bus bridge control unit 1 is “2”. The counter unit 12 is the 3-bit counter described with reference to FIG. 4, and the counter value 121 is repeatedly counted from “0” to “7” corresponding to the cycle of the CPU bus clock 31.

また本例の場合、一致検出部13で検出される一致検出値131は、タイミング値21とカウンタ値121とが一致するt2とt10のタイミングでアサートされる。ここで、CPUバス40からのCPUバスコマンド43の入力によって周辺バスコマンド発行制御部15で発行される読み出し用の周辺バスコマンド152(図5中、「R」で示す)と、CPUバスアドレス44の入力によって周辺バスアドレス発行制御部112で発行される周辺バスアドレス1121とが、t0からt7の期間に出力され、この読み出し用の周辺バスコマンド152に応じた周辺バスデータ54が、周辺バス50で周辺モジュール51からt8からt15の期間に出力された場合を示している。この場合、周辺バスコマンド発行制御部15から発行される出力期間信号151も、同じt8からt15の期間に出力される。   In the case of this example, the coincidence detection value 131 detected by the coincidence detection unit 13 is asserted at the timings t2 and t10 when the timing value 21 and the counter value 121 coincide. Here, a peripheral bus command 152 for reading (indicated by “R” in FIG. 5) issued by the peripheral bus command issuance control unit 15 in response to the input of the CPU bus command 43 from the CPU bus 40, and the CPU bus address 44. The peripheral bus address 1121 issued by the peripheral bus address issuance control unit 112 is input during the period from t0 to t7, and the peripheral bus data 54 corresponding to the peripheral bus command 152 for reading is output from the peripheral bus 50. The case where it is output from the peripheral module 51 in the period from t8 to t15 is shown. In this case, the output period signal 151 issued from the peripheral bus command issue control unit 15 is also output during the same period from t8 to t15.

続いて、AND回路部14は、周辺バスデータ出力期間信号151と一致検出値131とのAND論理をとり、t10のタイミングでイネーブル信号141をアサートする。このt10のタイミングは、周辺バス50の信号の確定タイミングであるCPUバスクロック31の3サイクル目である。レジスタ11は、イネーブル信号141がアサートされたt10のタイミングで周辺バスデータ54を保持し、次のt11のタイミングでCPUバスデータ111(図5中、「D」で示す)としてCPUバス40へ出力する。   Subsequently, the AND circuit unit 14 performs an AND logic between the peripheral bus data output period signal 151 and the coincidence detection value 131, and asserts the enable signal 141 at a timing t10. The timing of t10 is the third cycle of the CPU bus clock 31, which is the timing for determining the signal of the peripheral bus 50. The register 11 holds the peripheral bus data 54 at the timing t10 when the enable signal 141 is asserted, and outputs it to the CPU bus 40 as the CPU bus data 111 (indicated by “D” in FIG. 5) at the next timing t11. To do.

このように、バスブリッジ制御部1の同期化処理では、設定部20からのタイミング信号に従ったタイミングで、周辺バスデータ54がレジスタ11で保持されCPUバスデータ111としてCPUバス40へ転送される。前記図17に示す構成に比べると、周辺バス50からCPUバス40への周辺バスデータ54の保持、転送のタイミングが、t16からt11へと短縮されており、その分、CPU41からの周辺モジュール51に対するアクセスの効率が向上している。   As described above, in the synchronization processing of the bus bridge control unit 1, the peripheral bus data 54 is held in the register 11 and transferred to the CPU bus 40 as the CPU bus data 111 at a timing according to the timing signal from the setting unit 20. . Compared to the configuration shown in FIG. 17, the timing of holding and transferring the peripheral bus data 54 from the peripheral bus 50 to the CPU bus 40 is shortened from t16 to t11, and the peripheral module 51 from the CPU 41 is correspondingly reduced. The efficiency of access to is improved.

なお、本例では周辺モジュール51に対するデータ読み出しのアクセスにおける同期化処理を示しているが、これに限らず、データ書き込みのアクセスなどにおいても、周辺バス50からバスブリッジ制御部1へ入力する制御信号について、前記周辺バスデータ54の場合と同様にその確定タイミングで処理を行わせることが可能である。前記バスブリッジ制御部1へ入力する制御信号は、例えばデータ書き込み可能であることをしらせる信号などである。また、本例では2つのバスが接続された構造について説明しているが、3つ以上のバスが接続される構造においても同様の処理が可能である。   In this example, the synchronization process in the data read access to the peripheral module 51 is shown. However, the present invention is not limited to this, and the control signal input from the peripheral bus 50 to the bus bridge control unit 1 is not limited to this. As in the case of the peripheral bus data 54, the processing can be performed at the determined timing. The control signal input to the bus bridge control unit 1 is, for example, a signal that indicates that data can be written. In this example, a structure in which two buses are connected is described, but the same processing can be performed in a structure in which three or more buses are connected.

(実施の形態2)
次に、実施の形態2のデータ処理装置10について説明する。実施の形態2は、前記図1に示す設定部20に内蔵されたタイミング設定レジスタ25に格納されるタイミング値21の設定値として、周辺バス50のデータが確定する最短の時間である周辺バス信号確定最短時間(最短時間と略称する)22を設定した形態である。
(Embodiment 2)
Next, the data processing apparatus 10 of Embodiment 2 is demonstrated. In the second embodiment, the peripheral bus signal which is the shortest time in which the data of the peripheral bus 50 is determined as the set value of the timing value 21 stored in the timing setting register 25 incorporated in the setting unit 20 shown in FIG. This is a form in which a fixed shortest time (abbreviated as the shortest time) 22 is set.

図2(b)は、設定部20にタイミング値21として最短時間22が設定された構成の一例を示す。この最短時間22とは、周辺バス50に繋がる1つ以上の周辺モジュール51のうち全周辺モジュール51の信号が確定する最短の時間を示している。すなわち、この最短時間22は、最も信号の確定タイミングが遅い周辺モジュール51によって決まる。本例では最短時間22の設定値が15nsである場合を示している。設定部20は、この設定値を、タイミング信号としてバスブリッジ制御部1に供給する。また実施の形態1と同様に、最短時間より大きい値を設定してもよい。   FIG. 2B shows an example of a configuration in which the shortest time 22 is set as the timing value 21 in the setting unit 20. The shortest time 22 indicates the shortest time in which signals of all peripheral modules 51 among one or more peripheral modules 51 connected to the peripheral bus 50 are determined. That is, the shortest time 22 is determined by the peripheral module 51 having the latest signal determination timing. In this example, the setting value of the shortest time 22 is 15 ns. The setting unit 20 supplies the set value to the bus bridge control unit 1 as a timing signal. As in the first embodiment, a value larger than the shortest time may be set.

図6は、前記図2(b)に示される最短時間22を設定部20に設定した構成におけるバスブリッジ制御部1の一構成例を示している。この構成内容及び動作については、前記図3で示したものと基本的に同等である。異なるのは、設定部20におけるタイミング値21が最短時間22となり、バスブリッジ制御部1の内部に周辺バス信号確定タイミング算出部(タイミング算出部と称する)16が追加されていることである。   FIG. 6 shows a configuration example of the bus bridge control unit 1 in a configuration in which the shortest time 22 shown in FIG. The contents and operation of this configuration are basically the same as those shown in FIG. The difference is that the timing value 21 in the setting unit 20 is the shortest time 22 and a peripheral bus signal determination timing calculation unit (referred to as a timing calculation unit) 16 is added inside the bus bridge control unit 1.

タイミング算出部16は、設定部20に設定され供給される最短時間22をもとに、CPUバス40の周波数に応じて、周辺バスデータ54が確定する最短のタイミングをCPUバス40のクロックサイクル数によって算出し、周辺バス信号確定タイミング算出値(タイミング算出値と称する)161として一致検出部13に出力する回路である。一致検出部13は、カウンタ値121とタイミング算出値161とを入力して一致検出する。なお、タイミング算出部16を設定部20側に設けた形態としてもよい。   Based on the shortest time 22 set and supplied to the setting unit 20, the timing calculation unit 16 determines the shortest timing at which the peripheral bus data 54 is determined according to the frequency of the CPU bus 40 and the number of clock cycles of the CPU bus 40. Is a circuit that outputs to the coincidence detector 13 as a peripheral bus signal determination timing calculation value (referred to as a timing calculation value) 161. The coincidence detection unit 13 receives the counter value 121 and the timing calculation value 161 and detects coincidence. The timing calculation unit 16 may be provided on the setting unit 20 side.

図7は、前記図6に示されるタイミング算出部16の一構成例を示している。本例では、タイミング算出部16において、対応可能なCPUバス40の周波数として、200MHz、100MHz、50MHzの3種類を有し、各周波数において最短時間22が、5ns、10ns、15nsのそれぞれに設定された場合に対応したタイミング算出値161を算出可能な構成となっている。タイミング算出値161は、CPUバスクロック31のサイクル数で表わされる。例えば、タイミング算出部16に、あらかじめこれらのタイミング算出値161が設定されている構成としてもよいし、簡単な計算式によってタイミング算出値161の算出を行う回路としてもよい。   FIG. 7 shows a configuration example of the timing calculation unit 16 shown in FIG. In this example, the timing calculation unit 16 has three types of frequencies of the CPU bus 40 that can be handled: 200 MHz, 100 MHz, and 50 MHz, and the shortest time 22 is set to 5 ns, 10 ns, and 15 ns for each frequency. The timing calculation value 161 corresponding to the case can be calculated. The timing calculation value 161 is represented by the number of cycles of the CPU bus clock 31. For example, the timing calculation unit 16 may have a configuration in which these timing calculation values 161 are set in advance, or may be a circuit that calculates the timing calculation value 161 by a simple calculation formula.

本例では、CPUバス40の周波数が200MHzの場合において、そのときのデータ転送処理で最短時間22が5nsの場合は、タイミング算出値161が「0」と算出される。すなわち、CPUバスクロック31の1サイクル目で周辺バス50の信号が確定していることを示す。同様に、最短時間22が10nsの場合にタイミング算出値161が「1」、15nsの場合に「2」となる。また、CPUバス40の周波数が100MHzで、そのときの最短時間22が5ns、10nsの場合にタイミング算出値161が「0」、15nsの場合に「1」となっている。また、CPUバス50の周波数が50MHzで、そのときの最短時間が5ns、10ns、15nsの場合に、タイミング算出値161が「0」となっている。本例に示した各値の組み合わせ以外で使用する場合は、あらかじめタイミング算出部16で必要な組み合わせを用意しておくことで対応できる。このように、実施の形態2では、CPUバス40の周波数と最短時間22に応じて、最適なデータ転送処理が可能である。   In this example, when the frequency of the CPU bus 40 is 200 MHz and the shortest time 22 is 5 ns in the data transfer process at that time, the timing calculation value 161 is calculated as “0”. That is, the signal of the peripheral bus 50 is determined in the first cycle of the CPU bus clock 31. Similarly, the timing calculation value 161 is “1” when the shortest time 22 is 10 ns, and “2” when the shortest time 22 is 15 ns. The timing calculation value 161 is “0” when the frequency of the CPU bus 40 is 100 MHz and the shortest time 22 at that time is 5 ns and 10 ns, and “1” when the frequency is 15 ns. In addition, when the frequency of the CPU bus 50 is 50 MHz and the shortest time is 5 ns, 10 ns, and 15 ns, the timing calculation value 161 is “0”. In the case of using other than the combination of values shown in this example, it can be dealt with by preparing a necessary combination in the timing calculation unit 16 in advance. As described above, in the second embodiment, optimum data transfer processing can be performed according to the frequency of the CPU bus 40 and the shortest time 22.

(実施の形態3)
次に、実施の形態3のデータ処理装置10について説明する。実施の形態3は、前記図1に示す設定部20に内蔵されたタイミング設定レジスタ25に格納されるタイミング値21の設定値として、複数の周辺モジュール51における周辺モジュール51ごとの周辺バス信号確定タイミング値を設定した形態である。
(Embodiment 3)
Next, the data processing apparatus 10 of Embodiment 3 is demonstrated. In the third embodiment, the peripheral bus signal determination timing for each peripheral module 51 in the plurality of peripheral modules 51 is set as the setting value of the timing value 21 stored in the timing setting register 25 built in the setting unit 20 shown in FIG. This is a form in which values are set.

図2(c)は、設定部20にタイミング値21として周辺モジュール51ごとのタイミング値21が設定された構成の一例を示す。周辺モジュール識別情報である周辺モジュール名に対して、対応するタイミング値21が実施の形態1と同様にCPUクロック31のサイクル数の形式で設定される。特に周辺モジュール51ごとに異なるタイミング値21となり得る。設定部20から、各周辺モジュール51に対応した複数のすべてのタイミング値21がバスブリッジ制御部1に対し供給される。本例では、タイミング設定レジスタ25で、第1の周辺モジュール51−1におけるタイミング値21の設定が「2」、第2の周辺モジュール51−2における設定値が「1」、第Nの周辺モジュール51−Nにおける設定値が「0」として、それぞれ設定されている。   FIG. 2C shows an example of a configuration in which the timing value 21 for each peripheral module 51 is set as the timing value 21 in the setting unit 20. The corresponding timing value 21 is set in the form of the number of cycles of the CPU clock 31 as in the first embodiment for the peripheral module name which is the peripheral module identification information. In particular, the timing value 21 may be different for each peripheral module 51. A plurality of timing values 21 corresponding to each peripheral module 51 are supplied from the setting unit 20 to the bus bridge control unit 1. In this example, in the timing setting register 25, the setting of the timing value 21 in the first peripheral module 51-1 is “2”, the setting value in the second peripheral module 51-2 is “1”, and the Nth peripheral module. The set value in 51-N is set as “0”.

図8は、前記図2(c)に示すように周辺モジュール51ごとにタイミング値21を設定した構成におけるバスブリッジ制御部1の一構成例を示している。構成内容及び動作については、前記図3(実施の形態1)で示したものと基本的に同等である。異なるのは、設定部20から供給されるタイミング値21が、N個存在する周辺モジュール51ごとのタイミング値#1〜#N{21−1,……,21−N}として用意され、また、バスブリッジ制御部1にタイミング選択回路部17が追加されていることである。タイミング選択回路部17は、複数のタイミング値#1〜#Nの中から、最大値、すなわち最も周辺バス50の信号の確定タイミングが遅いものを選択し、タイミング選択値171として一致検出部13へ出力する。一致検出部13は、カウンタ値121とタイミング選択値171とで一致検出する。   FIG. 8 shows a configuration example of the bus bridge controller 1 in the configuration in which the timing value 21 is set for each peripheral module 51 as shown in FIG. The contents and operation of the configuration are basically the same as those shown in FIG. 3 (Embodiment 1). The difference is that the timing value 21 supplied from the setting unit 20 is prepared as timing values # 1 to #N {21-1,..., 21-N} for each of N peripheral modules 51. The timing selection circuit unit 17 is added to the bus bridge control unit 1. The timing selection circuit unit 17 selects the maximum value, that is, the one having the latest signal determination timing of the peripheral bus 50 from among the plurality of timing values # 1 to #N, and supplies the timing selection value 171 to the coincidence detection unit 13. Output. The coincidence detection unit 13 detects coincidence between the counter value 121 and the timing selection value 171.

これにより、実施の形態3では、バスブリッジ制御部1を介した周辺モジュール51へのアクセスにおいて、最も遅いタイミングで周辺バスデータ54が確定する周辺モジュール51にあわせたタイミングでデータ転送処理を行うことができる。また、実施の形態1と同様に設定値としては最短タイミングよりも大きい値を設定してもよい。また、タイミング選択回路部17を設定部20側に設けた形態としてもよい。   Thereby, in the third embodiment, in the access to the peripheral module 51 via the bus bridge control unit 1, the data transfer process is performed at a timing according to the peripheral module 51 in which the peripheral bus data 54 is determined at the latest timing. Can do. Further, as in the first embodiment, a value larger than the shortest timing may be set as the set value. The timing selection circuit unit 17 may be provided on the setting unit 20 side.

(実施の形態4)
次に、実施の形態4のデータ処理装置10について説明する。実施の形態4は、前記図1に示す設定部20に内蔵されたタイミング設定レジスタ25に格納されるタイミング値21の設定値として、複数の周辺モジュール51における周辺モジュール51ごとの周辺バス信号確定最短時間を設定した形態である。
(Embodiment 4)
Next, the data processing apparatus 10 of Embodiment 4 is demonstrated. In the fourth embodiment, as the setting value of the timing value 21 stored in the timing setting register 25 built in the setting unit 20 shown in FIG. It is the form which set time.

図2(d)は、設定部20にタイミング値21として周辺モジュール51ごとの最短時間22が設定された構成の一例を示す。タイミング設定レジスタ25で、周辺モジュール名に対して、対応する最短時間22が実施の形態2と同様の形式で設定される。特に周辺モジュール51ごとに異なる最短時間22となり得る。設定部20から、各周辺モジュール51に対応した複数のすべての最短時間22の信号がバスブリッジ制御部1に対し供給される。本例では、タイミング設定レジスタ25で、第1の周辺モジュール51−1における最短時間22が「20」、第2の周辺モジュール51−2における最短時間22が「15」、第Nの周辺モジュール51−Nの最短時間22が「5」として、それぞれ設定されている。   FIG. 2D shows an example of a configuration in which the setting unit 20 is set with the shortest time 22 for each peripheral module 51 as the timing value 21. In the timing setting register 25, the corresponding shortest time 22 is set for the peripheral module name in the same format as in the second embodiment. In particular, the shortest time 22 may be different for each peripheral module 51. From the setting unit 20, a plurality of signals of the shortest time 22 corresponding to the peripheral modules 51 are supplied to the bus bridge control unit 1. In this example, in the timing setting register 25, the shortest time 22 in the first peripheral module 51-1 is “20”, the shortest time 22 in the second peripheral module 51-2 is “15”, and the Nth peripheral module 51 The minimum time 22 of −N is set as “5”.

実施の形態4におけるバスブリッジ制御部1は、構成内容及び動作については、前記図6(実施の形態2)で示したものと基本的に同等である。異なるのは、供給される最短時間22の信号が、N個存在する周辺モジュール51ごとに最短時間#1〜#Nの各信号として用意され、また、バスブリッジ制御部1に最短時間選択回路部が追加されることである。最短時間選択回路部は、複数の最短時間22の信号の中から、最大値、すなわち最も周辺バス50の信号の確定タイミングが遅いものを選択し、これを最短時間選択値としてタイミング算出部16へ出力する。タイミング算出部16は、最短時間選択値をもとに、前記図6の場合と同様に、タイミング算出値161を出力する。   The bus bridge control unit 1 according to the fourth embodiment is basically the same as that shown in FIG. 6 (second embodiment) in terms of configuration and operation. The difference is that the supplied signal of the shortest time 22 is prepared as each signal of the shortest time # 1 to #N for each of the N peripheral modules 51, and the shortest time selection circuit unit is provided in the bus bridge control unit 1. Is to be added. The shortest time selection circuit unit selects the maximum value, that is, the signal with the slowest determination timing of the signal of the peripheral bus 50 from the plurality of signals of the shortest time 22, and uses this as the shortest time selection value to the timing calculation unit 16. Output. The timing calculation unit 16 outputs a timing calculation value 161 based on the shortest time selection value as in the case of FIG.

これにより、実施の形態4では、バスブリッジ制御部1を介した周辺モジュール51へのアクセスにおいて、最も遅いタイミングで周辺バスデータ54が確定する周辺モジュール51にあわせてデータ転送処理を行うことができる。また、前記最短時間選択回路部を設定部20側に設けた形態としてもよい。   Thereby, in the fourth embodiment, in the access to the peripheral module 51 via the bus bridge control unit 1, the data transfer processing can be performed in accordance with the peripheral module 51 in which the peripheral bus data 54 is determined at the latest timing. . The shortest time selection circuit unit may be provided on the setting unit 20 side.

(実施の形態5)
次に、実施の形態5のデータ処理装置10について説明する。実施の形態5は、前記図1に示す設定部20に内蔵されたタイミング設定レジスタ25に格納されるタイミング値21の設定値として、複数の周辺モジュール51における周辺モジュール51ごとの周辺バス信号確定タイミング値を設定し、バスブリッジ制御部1でアクセス先の周辺モジュール51に応じたタイミング値を選択して処理を行う形態である。
(Embodiment 5)
Next, the data processing apparatus 10 of Embodiment 5 is demonstrated. In the fifth embodiment, the peripheral bus signal determination timing for each peripheral module 51 in the plurality of peripheral modules 51 is set as the setting value of the timing value 21 stored in the timing setting register 25 built in the setting unit 20 shown in FIG. In this embodiment, a value is set, and the bus bridge controller 1 selects a timing value according to the peripheral module 51 to be accessed and performs processing.

実施の形態5におけるバスブリッジ制御部1の構成は、構成内容及び動作については、前記図8(実施の形態3)で示したものと基本的に同等である。異なるのは、複数のタイミング値#1〜#N{21−1,……,21−N}からタイミング値を選択するセレクタがタイミング選択回路部17の代わりに設けられ、周辺バスコマンド発行制御部15から出力されるアクセス先判別信号をもとに、そのときのデータ転送処理に対応するタイミング値21を前記セレクタで選択して、その選択信号をタイミング選択値として一致検出部13に出力することである。前記アクセス先判別信号は、例えば周辺モジュール識別情報を含む信号である。また、周辺バスアドレス発行制御部112に入力されるCPUバスアドレス44などから、アクセス先判別信号を発行可能である。   The configuration of the bus bridge control unit 1 in the fifth embodiment is basically the same as that shown in FIG. 8 (third embodiment) in terms of configuration and operation. The difference is that a selector for selecting a timing value from a plurality of timing values # 1 to #N {21-1,..., 21-N} is provided instead of the timing selection circuit unit 17, and a peripheral bus command issue control unit 15 selects a timing value 21 corresponding to the data transfer processing at that time based on the access destination determination signal output from the selector 15 and outputs the selection signal as a timing selection value to the coincidence detector 13. It is. The access destination determination signal is a signal including peripheral module identification information, for example. An access destination determination signal can be issued from the CPU bus address 44 or the like input to the peripheral bus address issue control unit 112.

これにより、実施の形態5では、バスブリッジ制御部1を介した周辺モジュール51へのアクセスにおいて、アクセス先の周辺モジュール51に応じた最短のタイミングでデータ転送処理を行うことができる。また、周辺モジュール51のグループごとのタイミング値21を設定する場合も同様である。   Thereby, in the fifth embodiment, in the access to the peripheral module 51 via the bus bridge control unit 1, the data transfer process can be performed at the shortest timing according to the peripheral module 51 of the access destination. The same applies when the timing value 21 for each group of the peripheral modules 51 is set.

(実施の形態6)
次に、実施の形態6のデータ処理装置10について説明する。実施の形態6は、前記図1に示す設定部20に内蔵されたタイミング設定レジスタ25に格納されるタイミング値21の設定値として、複数の周辺モジュール51における周辺モジュール51ごとの周辺バス信号確定最短時間を設定し、バスブリッジ制御部1でアクセス先の周辺モジュール51に応じた最短時間を選択して処理を行う形態である。
(Embodiment 6)
Next, the data processing apparatus 10 of Embodiment 6 is demonstrated. In the sixth embodiment, as the set value of the timing value 21 stored in the timing setting register 25 built in the setting unit 20 shown in FIG. In this mode, the time is set, and the bus bridge control unit 1 selects and processes the shortest time according to the peripheral module 51 to be accessed.

実施の形態6におけるバスブリッジ制御部1の構成は、構成内容及び動作については、前記実施の形態5で示したものと基本的に同等である。異なるのは、複数の最短時間#1〜#Nの信号を選択するセレクタが設けられ、周辺バスアドレス発行制御部112から出力されるアクセス先判別信号をもとに、データ転送処理に対応する最短時間22を前記セレクタで選択して、その選択信号を最短時間選択値としてタイミング算出部16に出力することである。   The configuration of the bus bridge control unit 1 in the sixth embodiment is basically the same as that shown in the fifth embodiment in terms of configuration contents and operation. The difference is that a selector for selecting a plurality of signals of the shortest time # 1 to #N is provided, and the shortest time corresponding to the data transfer processing is based on the access destination determination signal output from the peripheral bus address issue control unit 112. The time 22 is selected by the selector, and the selection signal is output to the timing calculation unit 16 as the shortest time selection value.

これにより、実施の形態6では、バスブリッジ制御部1を介した周辺モジュール51へのアクセスにおいて、アクセス先の周辺モジュール51に応じて最短のタイミングでデータ転送処理を行うことができる。   As a result, in the sixth embodiment, in the access to the peripheral module 51 via the bus bridge control unit 1, the data transfer process can be performed at the shortest timing according to the peripheral module 51 of the access destination.

(実施の形態7)
次に、実施の形態7のデータ処理装置10について説明する。実施の形態7は、前記図1に示す設定部20に内蔵されたタイミング設定レジスタ25に格納されるタイミング値21の設定値として、CPUバス40と周辺バス50との周波数比(クロック比)を設定した形態である。
(Embodiment 7)
Next, the data processing apparatus 10 of Embodiment 7 is demonstrated. In the seventh embodiment, the frequency ratio (clock ratio) between the CPU bus 40 and the peripheral bus 50 is set as the set value of the timing value 21 stored in the timing setting register 25 built in the setting unit 20 shown in FIG. It is a set form.

図2(e)は、設定部20にタイミング値21としてクロック比が設定された構成の一例を示す。タイミング設定レジスタ25で、データ処理装置10のシステム構成に対応して、CPUバスクロック31と周辺バスクロック33とのクロック比を示す値が設定される。本例ではクロック比の設定が8:1となっている。なお実際の設定値としては、比を表わす「8」などの値を設定してもよい。設定部20から、設定されているクロック比に対応したクロック比信号が、バスブリッジ制御部1に対し供給される。   FIG. 2E shows an example of a configuration in which the clock ratio is set as the timing value 21 in the setting unit 20. In the timing setting register 25, a value indicating the clock ratio between the CPU bus clock 31 and the peripheral bus clock 33 is set corresponding to the system configuration of the data processing apparatus 10. In this example, the clock ratio setting is 8: 1. As an actual set value, a value such as “8” representing the ratio may be set. A clock ratio signal corresponding to the set clock ratio is supplied from the setting unit 20 to the bus bridge control unit 1.

実施の形態7におけるバスブリッジ制御部1の構成は、構成内容及び動作については、前記図6(実施の形態2)で示したものと基本的に同等である。異なるのは、設定部20から供給される信号がクロック比信号となり、タイミング算出部16は、設定部20から供給されるクロック比信号をもとに、CPUバス40の周波数に応じて、周辺バス50のデータが確定する最短のタイミングを、CPUバスクロック31のサイクル数の形で算出し、タイミング算出値161として一致検出部13に出力することである。   The configuration of the bus bridge control unit 1 according to the seventh embodiment is basically the same as that shown in FIG. 6 (second embodiment) in terms of configuration contents and operation. The difference is that the signal supplied from the setting unit 20 becomes a clock ratio signal, and the timing calculation unit 16 determines the peripheral bus according to the frequency of the CPU bus 40 based on the clock ratio signal supplied from the setting unit 20. The shortest timing at which 50 data are determined is calculated in the form of the number of cycles of the CPU bus clock 31 and is output to the coincidence detection unit 13 as a timing calculation value 161.

図9は、実施の形態7におけるタイミング算出部16の一構成例を示している。タイミング算出部16で、CPUバス40と周辺バス50とのクロック比が、8:1から1:1までのそれぞれに設定された場合に応じたタイミング算出値161を算出できるようになっている。本例では、クロック比が8:1から3:1までの場合ではタイミング算出値161が「2」、2:1の場合は「1」、1:1の場合は「0」と算出される。また、データ処理装置10でこのようなクロック比以外を使用する場合は、あらかじめタイミング算出部16でその使用されるクロック比に対応するタイミング値を用意しておくことで対応できる。   FIG. 9 shows a configuration example of the timing calculation unit 16 in the seventh embodiment. The timing calculation unit 16 can calculate the timing calculation value 161 corresponding to the case where the clock ratio between the CPU bus 40 and the peripheral bus 50 is set to 8: 1 to 1: 1, respectively. In this example, the timing calculation value 161 is “2” when the clock ratio is 8: 1 to 3: 1, “1” when it is 2: 1, and “0” when it is 1: 1. . Further, when the data processing apparatus 10 uses a clock ratio other than such a clock ratio, it can be coped with by preparing a timing value corresponding to the clock ratio used in the timing calculation section 16 in advance.

このように、実施の形態7では、CPUバス40と周辺バス50のクロック比の状態に応じて、最適なデータ転送処理が可能である。また、タイミング算出部16を設定部20側に設けた形態としてもよい。またタイミング算出部16の構成は、前記図7の場合と同様に、あらかじめ各タイミング算出値161が設定されている構成としてもよいし、簡単な計算式によってタイミング算出値161の算出を行う回路としてもよい。   As described above, in the seventh embodiment, optimum data transfer processing can be performed according to the state of the clock ratio between the CPU bus 40 and the peripheral bus 50. The timing calculation unit 16 may be provided on the setting unit 20 side. Further, the configuration of the timing calculation unit 16 may be a configuration in which each timing calculation value 161 is set in advance as in the case of FIG. 7 or a circuit that calculates the timing calculation value 161 by a simple calculation formula. Also good.

(実施の形態8)
次に、実施の形態8のデータ処理装置10について説明する。実施の形態8は、前記図1に示す設定部20に設定されるタイミング値21及び設定部20からバスブリッジ制御部1に供給するタイミング信号を、各周辺モジュール51から出力されるタイミング値52をもとに生成する形態である。
(Embodiment 8)
Next, the data processing apparatus 10 of Embodiment 8 is demonstrated. In the eighth embodiment, the timing value 21 set in the setting unit 20 shown in FIG. 1 and the timing signal supplied from the setting unit 20 to the bus bridge control unit 1 and the timing value 52 output from each peripheral module 51 are used. This is the form that is originally generated.

図10は、実施の形態8のデータ処理装置10の構成を示す。構成内容及び動作については、前記図1(実施の形態1)で示したものと基本的に同等である。異なるのは、第1から第Nの周辺モジュール{51−1,……,51−N}からそれぞれタイミング値52{52−1,……,52−N}の信号が設定部20に対して供給され、設定部20がこれらタイミング値52をもとにバスブリッジ制御部1に対し供給するタイミング信号を生成して供給することである。各周辺モジュール51は、自モジュールから周辺バス50へ出力するデータが確定するタイミングを示す値を、タイミング値52として設定部20に対して供給する。各周辺モジュール51から出力されるタイミング値52の内容は、実施の形態1におけるタイミング値21、すなわちCPUバス40のクロックサイクル数で表わされる形式や、実施の形態2における最短時間22で表わされる形式などと同様である。   FIG. 10 shows a configuration of the data processing apparatus 10 according to the eighth embodiment. The contents and operation of the configuration are basically the same as those shown in FIG. 1 (Embodiment 1). The difference is that signals of timing values 52 {52-1,..., 52-N} from the first to Nth peripheral modules {51-1,. The setting unit 20 generates and supplies a timing signal to be supplied to the bus bridge control unit 1 based on these timing values 52. Each peripheral module 51 supplies a value indicating the timing at which data to be output from its own module to the peripheral bus 50 is determined to the setting unit 20 as a timing value 52. The contents of the timing value 52 output from each peripheral module 51 are the timing value 21 in the first embodiment, that is, the format represented by the number of clock cycles of the CPU bus 40 or the format represented by the shortest time 22 in the second embodiment. And so on.

設定部20は、例えば、各周辺モジュール51からのタイミング値52をそのままタイミング信号としてバスブリッジ制御部1に供給する。あるいは、設定部20は、各タイミング値52をタイミング設定レジスタ25に格納し、格納されている各タイミング値52をもとにバスブリッジ制御部1に供給するタイミング信号を生成する。また、例えば、周辺モジュール51は、自モジュールにおけるタイミング値52の設定値を格納するレジスタを内部に有し、このレジスタからタイミング値52を出力する。バスブリッジ制御部1は、タイミング信号の形式に応じて、実施の形態1〜6に示すような構成を有し、設定部20からのタイミング信号を用いて同様に同期化処理を行う。   For example, the setting unit 20 supplies the timing value 52 from each peripheral module 51 as it is to the bus bridge control unit 1 as a timing signal. Alternatively, the setting unit 20 stores each timing value 52 in the timing setting register 25 and generates a timing signal to be supplied to the bus bridge control unit 1 based on each stored timing value 52. Further, for example, the peripheral module 51 has an internal register for storing the set value of the timing value 52 in the own module, and outputs the timing value 52 from this register. The bus bridge control unit 1 has the configuration shown in the first to sixth embodiments according to the format of the timing signal, and similarly performs the synchronization process using the timing signal from the setting unit 20.

(実施の形態9)
次に、実施の形態9のデータ処理装置10について説明する。実施の形態9は、前記図1に示す設定部20に設定されるタイミング値21の設定を、データ処理装置10の稼動中に動的に書き換えた場合においても、バスブリッジ制御部1でのタイミング値21の適用を適切なタイミングで行うことによってデータ転送処理を正常に実行可能とした形態である。
(Embodiment 9)
Next, the data processing apparatus 10 according to the ninth embodiment will be described. In the ninth embodiment, even when the setting of the timing value 21 set in the setting unit 20 shown in FIG. 1 is dynamically rewritten while the data processing device 10 is operating, the timing in the bus bridge control unit 1 This is a mode in which the data transfer process can be normally executed by applying the value 21 at an appropriate timing.

図11は、実施の形態9におけるバスブリッジ制御部1の一構成例を示している。構成内容及び動作については、前記図3(実施の形態1)で示したものと基本的に同等である。異なるのは、設定部20からタイミング値21を入力して保持するレジスタ110と、このレジスタ110のデータ保持タイミングを指示する信号である周辺バス信号確定タイミング更新指示信号(更新指示信号と称する)34が追加されていることである。更新指示信号34は、クロック生成部30から供給され、レジスタ110のデータ保持をイネーブル状態にする。レジスタ110は、タイミング値21とCPUバスクロック31とを入力し、更新指示信号34に従ってタイミング値21を保持し、周辺バス信号確定タイミング更新信号(更新信号と称する)1101として一致検出部13に出力する。一致検出部13は、カウンタ値121と更新信号1101を入力して一致検出する。データ処理装置10の稼動中にクロック比を変更した場合などにおいても、更新指示信号34により、バスブリッジ制御部1で有効となるタイミング値21を更新して正常なデータ転送処理が可能である。   FIG. 11 shows a configuration example of the bus bridge controller 1 in the ninth embodiment. The contents and operation of the configuration are basically the same as those shown in FIG. 3 (Embodiment 1). The difference is that the register 110 receives and holds the timing value 21 from the setting unit 20, and the peripheral bus signal determination timing update instruction signal (referred to as an update instruction signal) 34, which is a signal for instructing the data holding timing of the register 110. Is added. The update instruction signal 34 is supplied from the clock generation unit 30 and enables data retention in the register 110. The register 110 receives the timing value 21 and the CPU bus clock 31, holds the timing value 21 in accordance with the update instruction signal 34, and outputs it to the coincidence detection unit 13 as a peripheral bus signal determination timing update signal (referred to as an update signal) 1101. To do. The coincidence detection unit 13 receives the counter value 121 and the update signal 1101 and detects coincidence. Even when the clock ratio is changed while the data processing apparatus 10 is operating, the timing value 21 that is valid in the bus bridge control unit 1 can be updated by the update instruction signal 34, and normal data transfer processing can be performed.

図12は、前記図11で示すバスブリッジ制御部1の動作を説明するタイムチャートの一例を示している。データ処理装置10で、稼動中に、CPUバスクロック31と周辺バスクロック33のいずれか一方または双方が動的に変更される。本例では、CPUバスクロック31と周辺バスクロック33とのクロック比が8:1から2:1へ動的に変更された場合の動作を示す。t0〜t7までの期間はクロック比が8:1の状態であり、t8のタイミングでCPUバスクロック31の変更によりクロック比が2:1へ変更される場合である。この場合、クロック比の変更に伴って周辺バスデータ確定タイミングも変更する必要がある。変更前におけるタイミング値21の設定が「2」であるとする。クロック比の変更に伴って、t1のタイミングで、設定部20に設定されるタイミング値21を「2」から「1」へと書き換えたものとする。この場合、その後にクロック生成部30からクロック同期信号32と同タイミングであるt7のタイミングで、更新指示信号34がアサートされる。そして、レジスタ110で、更新指示信号34に従ってタイミング値21が保持され、更新信号1101として一致検出部13に出力される。一致検出部13は、更新信号1101とカウンタ値121とを比較して一致検出値131を出力する。従って、図12中に示すように、クロック比が8:1の状態では、書き換え直後のタイミング値21(「1」)が示すt1のタイミング(2サイクル目)ではなく、書き換え前のタイミング値21(「2」)が示すt2のタイミング(3サイクル目)で、一致検出値131がアサートされることとなる。そして一致検出値131に従ってレジスタ11で周辺バスデータ(「D1」で示す)54が保持され、t3のタイミングでCPUバスデータ(「D1」で示す)111として出力される。一方、クロック比が2:1の状態では、更新信号1101によって、書き換え後のタイミング値21(「1」)が示すt9のタイミング(2サイクル目)で、一致検出値131がアサートされる。そして一致検出値131に従ってレジスタ11で周辺バスデータ(「D2」で示す)54が保持され、t10のタイミングでCPUバスデータ(「D2」で示す)111として出力される。   FIG. 12 shows an example of a time chart for explaining the operation of the bus bridge controller 1 shown in FIG. During operation, one or both of the CPU bus clock 31 and the peripheral bus clock 33 are dynamically changed. In this example, an operation when the clock ratio between the CPU bus clock 31 and the peripheral bus clock 33 is dynamically changed from 8: 1 to 2: 1 is shown. The period from t0 to t7 is a state where the clock ratio is 8: 1, and the clock ratio is changed to 2: 1 by changing the CPU bus clock 31 at the timing of t8. In this case, it is necessary to change the peripheral bus data determination timing with the change of the clock ratio. It is assumed that the setting of the timing value 21 before the change is “2”. It is assumed that the timing value 21 set in the setting unit 20 is rewritten from “2” to “1” at the timing of t1 with the change of the clock ratio. In this case, after that, the update instruction signal 34 is asserted from the clock generation unit 30 at the timing t7 which is the same timing as the clock synchronization signal 32. Then, the register 110 holds the timing value 21 in accordance with the update instruction signal 34 and outputs it to the coincidence detection unit 13 as the update signal 1101. The coincidence detection unit 13 compares the update signal 1101 with the counter value 121 and outputs a coincidence detection value 131. Accordingly, as shown in FIG. 12, when the clock ratio is 8: 1, the timing value 21 before rewriting is not the timing t2 (second cycle) indicated by the timing value 21 immediately after rewriting ("1"). The coincidence detection value 131 is asserted at the timing (second cycle) indicated by (2). The peripheral bus data (indicated by “D1”) 54 is held in the register 11 in accordance with the coincidence detection value 131, and is output as CPU bus data (indicated by “D1”) 111 at the timing t3. On the other hand, in a state where the clock ratio is 2: 1, the coincidence detection value 131 is asserted by the update signal 1101 at the timing (second cycle) t9 indicated by the rewritten timing value 21 (“1”). Then, the peripheral bus data (indicated by “D2”) 54 is held in the register 11 in accordance with the coincidence detection value 131, and is output as CPU bus data (indicated by “D2”) 111 at the timing of t10.

このように、実施の形態9では、データ処理装置10の稼動中におけるクロック比の変更などに応じてタイミング値21の設定を動的に書き換えた場合においても、更新指示信号34に従ってバスブリッジ制御部1で適用(反映)するタイミング値すなわち前記更新信号1101を更新することにより、データ転送処理を適切なタイミングで実行できる。   As described above, in the ninth embodiment, even when the setting of the timing value 21 is dynamically rewritten according to a change in the clock ratio during the operation of the data processing device 10, the bus bridge control unit according to the update instruction signal 34. By updating the timing value applied (reflected) at 1, that is, the update signal 1101, the data transfer process can be executed at an appropriate timing.

(実施の形態10)
次に、実施の形態10のデータ処理装置10について説明する。実施の形態10は、前記図1に示す構成において、ハードウェアリセット直後で設定部20のタイミング値21の設定値が不定状態である場合においても、クロック同期信号32を用いることによってデータ転送処理を正常に実行可能とした形態である。
(Embodiment 10)
Next, the data processing apparatus 10 according to the tenth embodiment will be described. The tenth embodiment uses the clock synchronization signal 32 to perform data transfer processing even when the setting value of the timing value 21 of the setting unit 20 is in an indefinite state immediately after hardware reset in the configuration shown in FIG. This is a form that can be normally executed.

図13は、実施の形態10におけるバスブリッジ制御部1の一構成例を示している。構成内容及び動作については、前記図3で示したものと基本的に同等である。異なるのは、クロック生成部30から供給される周辺バス信号確定タイミング設定完了信号(設定完了信号と称する)210をもとに、一致検出部13から出力される一致検出値131とクロック同期信号32とのどちらか一方を選択するセレクタ19が追加されていることである。このセレクタ19から出力される選択信号191がAND回路部14に入力される。設定完了信号210は、設定部20のタイミング値21の設定が正しく完了していることを示す信号である。本例ではクロック生成部30から設定完了信号210を出力するが、他のモジュールから出力する形態としてもよい。   FIG. 13 shows a configuration example of the bus bridge controller 1 in the tenth embodiment. The contents and operation of the configuration are basically the same as those shown in FIG. The difference is that based on a peripheral bus signal determination timing setting completion signal (referred to as setting completion signal) 210 supplied from the clock generation unit 30, the coincidence detection value 131 and the clock synchronization signal 32 output from the coincidence detection unit 13 are different. That is, a selector 19 for selecting one of the above is added. A selection signal 191 output from the selector 19 is input to the AND circuit unit 14. The setting completion signal 210 is a signal indicating that the setting of the timing value 21 of the setting unit 20 is correctly completed. In this example, the setting completion signal 210 is output from the clock generation unit 30, but it may be output from another module.

図14は、前記図13で示されるバスブリッジ制御部1の動作を説明するタイムチャートの一例を示している。本例では、データ処理装置10におけるハードウェアリセット直後であるために、まだ設定部20におけるタイミング値21が不定状態である場合の動作を示す。t0からt7までの期間ではタイミング値21が不定状態であり、t8のタイミングから正常なタイミング値21である「2」が保証されている状態となるものとする。この場合、設定部20からの正しいタイミング値21の供給と同時に設定完了信号210がアサートされる。   FIG. 14 shows an example of a time chart for explaining the operation of the bus bridge controller 1 shown in FIG. In this example, since it is immediately after a hardware reset in the data processing apparatus 10, an operation when the timing value 21 in the setting unit 20 is still in an indefinite state is shown. It is assumed that the timing value 21 is indefinite in the period from t0 to t7, and the normal timing value 21 “2” is guaranteed from the timing t8. In this case, the setting completion signal 210 is asserted simultaneously with the supply of the correct timing value 21 from the setting unit 20.

設定完了信号210がアサートされる前にアクセスが発生したとする。例えば、周辺モジュール51に対するデータ読み出しのためのアクセスで、「D1」で示す周辺バスデータ54が出力され、次の同様のアクセスで、「D2」で示す周辺バスデータ54が出力されている。この場合、最初のアクセスでは、タイミング値21が不定状態なので、遅いタイミングであるクロック同期信号32を用いたt7のタイミングで周辺バスデータ54の転送を行う。すなわち、セレクタ19では、設定完了信号210がアサートされていない状態ではクロック同期信号32を選択する。一方、設定完了信号210のアサート後のアクセスでは、セレクタ19でタイミング値21を選択して用いて、t10のタイミング(3サイクル目)で周辺バスデータ54の転送を行う。このように、実施の形態10では、データ処理装置10におけるハードウェアリセット直後で設定部20の設定値が不定状態となる場合であっても、クロック同期信号32を用いて正常にデータ転送処理を行うことができる。   Assume that an access occurs before the setting completion signal 210 is asserted. For example, the peripheral bus data 54 indicated by “D1” is output in the access for reading data to the peripheral module 51, and the peripheral bus data 54 indicated by “D2” is output in the next similar access. In this case, since the timing value 21 is in an indefinite state in the first access, the peripheral bus data 54 is transferred at the timing t7 using the clock synchronization signal 32 which is a late timing. That is, the selector 19 selects the clock synchronization signal 32 when the setting completion signal 210 is not asserted. On the other hand, in the access after the setting completion signal 210 is asserted, the peripheral bus data 54 is transferred at the timing t10 (third cycle) using the timing value 21 selected by the selector 19. As described above, in the tenth embodiment, even if the setting value of the setting unit 20 is in an indefinite state immediately after the hardware reset in the data processing device 10, the data transfer process is normally performed using the clock synchronization signal 32. It can be carried out.

以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることは言うまでもない。   As mentioned above, the invention made by the present inventor has been specifically described based on the embodiment. However, the present invention is not limited to the embodiment, and various modifications can be made without departing from the scope of the invention. Needless to say.

本発明は、異なる周波数のバス間での信号の同期化処理を行うマイクロコンピュータ等のコンピュータシステム全般に利用可能である。   The present invention is applicable to all computer systems such as a microcomputer that performs signal synchronization processing between buses of different frequencies.

本発明の実施の形態1におけるデータ処理装置の全体構成の一例を示す図である。It is a figure which shows an example of the whole structure of the data processor in Embodiment 1 of this invention. (a)〜(e)は、本発明の各実施の形態におけるデータ処理装置での設定部の構成と、設定部のタイミング設定レジスタに格納される設定値の一例を示す図である。(A)-(e) is a figure which shows an example of the setting value stored in the timing setting register | resistor of a structure of the setting part in the data processor in each embodiment of this invention, and a setting part. 本発明の実施の形態1におけるデータ処理装置でのバスブリッジ制御部の構成を示す図である。It is a figure which shows the structure of the bus bridge control part in the data processor in Embodiment 1 of this invention. 本発明の実施の形態1におけるデータ処理装置でのバスブリッジ制御部内のカウンタ部の構成を示す図である。It is a figure which shows the structure of the counter part in the bus bridge control part in the data processor in Embodiment 1 of this invention. 本発明の実施の形態1におけるデータ処理装置でのバスブリッジ制御部を中心としたデータ転送処理の一例を示すタイムチャートである。It is a time chart which shows an example of the data transfer process centering on the bus bridge control part in the data processor in Embodiment 1 of this invention. 本発明の実施の形態2におけるデータ処理装置でのバスブリッジ制御部の構成を示す図である。It is a figure which shows the structure of the bus bridge control part in the data processor in Embodiment 2 of this invention. 本発明の実施の形態2におけるデータ処理装置でのバスブリッジ制御部内のタイミング算出部の構成を示す図である。It is a figure which shows the structure of the timing calculation part in the bus bridge control part in the data processor in Embodiment 2 of this invention. 本発明の実施の形態3におけるデータ処理装置でのバスブリッジ制御部の構成を示す図である。It is a figure which shows the structure of the bus bridge control part in the data processor in Embodiment 3 of this invention. 本発明の実施の形態7におけるデータ処理装置でのバスブリッジ制御部内のタイミング算出部の構成を示す図である。It is a figure which shows the structure of the timing calculation part in the bus bridge control part in the data processor in Embodiment 7 of this invention. 本発明の実施の形態8におけるデータ処理装置の全体構成の一例を示す図である。It is a figure which shows an example of the whole structure of the data processor in Embodiment 8 of this invention. 本発明の実施の形態9におけるデータ処理装置でのバスブリッジ制御部の構成を示す図である。It is a figure which shows the structure of the bus bridge control part in the data processor in Embodiment 9 of this invention. 本発明の実施の形態9におけるデータ処理装置でのバスブリッジ制御部を中心としたデータ転送処理の一例を示すタイムチャートである。It is a time chart which shows an example of the data transfer process centering on the bus bridge control part in the data processor in Embodiment 9 of this invention. 本発明の実施の形態10におけるデータ処理装置でのバスブリッジ制御部の構成を示す図である。It is a figure which shows the structure of the bus bridge control part in the data processor in Embodiment 10 of this invention. 本発明の実施の形態10におけるデータ処理装置でのバスブリッジ制御部を中心としたデータ転送処理の一例を示すタイムチャートである。It is a time chart which shows an example of the data transfer process centering on the bus bridge control part in the data processor in Embodiment 10 of this invention. 本発明の前提技術となるデータ処理装置でのバスブリッジ制御部の全体構成を示す図である。It is a figure which shows the whole structure of the bus-bridge control part in the data processor used as the premise technique of this invention. 本発明の前提技術となるデータ処理装置でのバスブリッジ制御部の構成を示す図である。It is a figure which shows the structure of the bus bridge control part in the data processing apparatus used as the premise technique of this invention. 本発明の前提技術となるデータ処理装置でのバスブリッジ制御部を中心としたデータ転送処理の一例を示すタイムチャートである。It is a time chart which shows an example of the data transfer process centering on the bus bridge control part in the data processing apparatus used as the premise technique of this invention.

符号の説明Explanation of symbols

1,101…バスブリッジ制御部、10…データ処理装置、11…レジスタ、12…カウンタ部、13…一致検出部、14…AND回路部、15…周辺バスコマンド発行制御部、16…周辺バス信号確定タイミング算出部、17…タイミング選択回路部、20…周辺バス信号確定タイミング設定部、21,21−1,21−2,21−N…周辺バス信号確定タイミング値、22…周辺バス信号確定最短時間、25…タイミング設定レジスタ、30…クロック生成部、31…CPUバスクロック、32…クロック同期信号、33…周辺バスクロック、34…周辺バス信号確定タイミング更新指示信号、40…CPUバス、41…CPU、42…RAM、43…CPUバスコマンド、44…CPUバスアドレス、50…周辺バス、51,51−1,51−2,51−3…周辺モジュール、52,52−1,52−2,52−3…タイミング値、54…周辺バスデータ、110…レジスタ、111…CPUバスデータ、112…周辺バスアドレス発行制御部、121…カウンタ値、131…一致検出値、141…周辺バスデータ保持イネーブル信号、151…周辺バスデータ出力期間信号、152…周辺バスコマンド、161…周辺バス信号確定タイミング算出値、171…タイミング選択値、210…周辺バス信号確定タイミング設定完了信号、1101…周辺バス信号確定タイミング更新信号、1121…周辺バスアドレス。   DESCRIPTION OF SYMBOLS 1,101 ... Bus bridge control part, 10 ... Data processing apparatus, 11 ... Register, 12 ... Counter part, 13 ... Match detection part, 14 ... AND circuit part, 15 ... Peripheral bus command issue control part, 16 ... Peripheral bus signal Determining timing calculation unit, 17 ... Timing selection circuit unit, 20 ... Peripheral bus signal determination timing setting unit, 21, 21-1, 21-2, 21-N ... Peripheral bus signal determination timing value, 22 ... Peripheral bus signal determination shortest Time, 25 ... Timing setting register, 30 ... Clock generation unit, 31 ... CPU bus clock, 32 ... Clock synchronization signal, 33 ... Peripheral bus clock, 34 ... Peripheral bus signal determination timing update instruction signal, 40 ... CPU bus, 41 ... CPU, 42 ... RAM, 43 ... CPU bus command, 44 ... CPU bus address, 50 ... peripheral bus, 51, 51-1 51-2, 51-3 ... peripheral module, 52, 52-1, 52-2, 52-3 ... timing value, 54 ... peripheral bus data, 110 ... register, 111 ... CPU bus data, 112 ... peripheral bus address issue Control unit 121... Counter value 131. Match detection value 141. Peripheral bus data retention enable signal 151. Peripheral bus data output period signal 152. Peripheral bus command 161 161 Peripheral bus signal determination timing calculation value 171. Timing selection value, 210... Peripheral bus signal determination timing setting completion signal, 1101... Peripheral bus signal determination timing update signal, 1121.

Claims (19)

プロセッサと、前記プロセッサが使用するメモリとが接続される第1のバスと、
1つ以上の周辺モジュールが接続され、前記第1のバスより低速な第2のバスと、
前記第1と第2のバスに接続され、その間で信号の同期化処理を行うバスブリッジ制御部と、
前記第1と第2のバスに接続される各モジュールに対してクロック信号を供給するクロック生成部とを有するデータ処理装置であって、
前記第2のバスの信号が確定するタイミングを示す値が設定されその設定値の信号を前記バスブリッジ制御部に対して供給する設定部を有し、
前記プロセッサが前記周辺モジュールへアクセスを行う場合に、前記バスブリッジ制御部は、前記同期化処理において、前記設定部から供給される信号に従ったタイミングで前記第2のバスの信号を保持することを特徴とするデータ処理装置。
A first bus to which a processor and a memory used by the processor are connected;
A second bus connected to one or more peripheral modules and slower than the first bus;
A bus bridge controller connected to the first and second buses and performing a signal synchronization process therebetween;
A data processing device having a clock generator for supplying a clock signal to each module connected to the first and second buses;
A setting unit that sets a value indicating a timing at which the signal of the second bus is determined and supplies a signal of the setting value to the bus bridge control unit;
When the processor accesses the peripheral module, the bus bridge control unit holds the signal of the second bus at the timing according to the signal supplied from the setting unit in the synchronization processing. A data processing apparatus.
プロセッサと、前記プロセッサが使用するメモリとが接続される第1のバスと、
1つ以上の周辺モジュールが接続され、前記第1のバスより低速な第2のバスと、
前記第1と第2のバスに接続され、その間で信号の同期化処理を行うバスブリッジ制御部と、
前記第1と第2のバスに接続される各モジュールに対してクロック信号を供給するクロック生成部とを有するデータ処理装置であって、
前記第2のバスの信号が確定するタイミングを示す値が設定されその設定値の信号を前記バスブリッジ制御部に対して供給する設定部を有し、
前記プロセッサが前記周辺モジュールへデータ読み出しのためのアクセスを行う場合に、前記バスブリッジ制御部は、前記第1のバスからのコマンドとアドレスの入力をもとに前記データ読み出しのためのコマンドとアドレスを前記第2のバスへ出力し、これに応じて前記周辺モジュールから読み出されるデータを、前記設定部から供給される信号に従ったタイミングで保持し、前記第1のバスへ出力することを特徴とするデータ処理装置。
A first bus to which a processor and a memory used by the processor are connected;
A second bus connected to one or more peripheral modules and slower than the first bus;
A bus bridge controller connected to the first and second buses and performing a signal synchronization process therebetween;
A data processing device having a clock generator for supplying a clock signal to each module connected to the first and second buses;
A setting unit that sets a value indicating a timing at which the signal of the second bus is determined and supplies a signal of the setting value to the bus bridge control unit;
When the processor accesses the peripheral module for data reading, the bus bridge control unit uses the command and address for reading the data based on the command and address input from the first bus. Is output to the second bus, and the data read from the peripheral module is held at a timing according to a signal supplied from the setting unit, and output to the first bus. A data processing device.
請求項2記載のデータ処理装置において、
前記タイミングを示す値は、前記第2のバスの信号の出力における前記第1のバスのクロックサイクル数で表わされ、前記設定部に格納されていることを特徴とするデータ処理装置。
The data processing apparatus according to claim 2, wherein
The value indicating the timing is represented by the number of clock cycles of the first bus in the output of the signal of the second bus, and is stored in the setting unit.
請求項2記載のデータ処理装置において、
前記タイミングを示す値は、前記第2のバスの信号の出力における時間で表わされ、前記設定部に格納されていることを特徴とするデータ処理装置。
The data processing apparatus according to claim 2, wherein
The value indicating the timing is represented by a time in the output of the signal of the second bus and is stored in the setting unit.
請求項2記載のデータ処理装置において、
前記タイミングを示す値は、前記第1のバスと第2のバスとのクロック比で表わされ、前記設定部に格納されていることを特徴とするデータ処理装置。
The data processing apparatus according to claim 2, wherein
The value indicating the timing is represented by a clock ratio between the first bus and the second bus, and is stored in the setting unit.
請求項2記載のデータ処理装置において、
前記設定部は、不揮発性メモリを有し、
前記不揮発性メモリに、前記タイミングを示す値が格納されていることを特徴とするデータ処理装置。
The data processing apparatus according to claim 2, wherein
The setting unit has a nonvolatile memory,
A data processing apparatus, wherein a value indicating the timing is stored in the nonvolatile memory.
請求項6記載のデータ処理装置において、
前記プロセッサによって前記設定部の前記不揮発性メモリに対する前記タイミングを示す値の書き込みや読み出しが行われることを特徴とするデータ処理装置。
The data processing apparatus according to claim 6, wherein
A data processing apparatus, wherein a value indicating the timing is written to or read from the nonvolatile memory of the setting unit by the processor.
請求項2記載のデータ処理装置において、
前記設定部は、前記タイミングを示す値として前記周辺モジュールの数によらない1種類の値が設定され、この1種類の値の信号を前記バスブリッジ制御部に対して供給し、
前記バスブリッジ制御部は、すべての前記周辺モジュールに対するアクセスにおける同期化処理において、前記1種類の値を共通に使用することを特徴とするデータ処理装置。
The data processing apparatus according to claim 2, wherein
The setting unit sets one type of value not depending on the number of the peripheral modules as a value indicating the timing, and supplies a signal of the one type to the bus bridge control unit,
The data processing apparatus according to claim 1, wherein the bus bridge control unit uses the one type of value in common in a synchronization process in access to all the peripheral modules.
請求項2記載のデータ処理装置において、
前記設定部は、前記タイミングを示す値として前記周辺モジュールごとの値が設定され、これら1つ以上の値の信号を前記バスブリッジ制御部に対して供給し、
前記バスブリッジ制御部は、前記周辺モジュールに対するアクセスにおける同期化処理で、前記1つ以上の値の信号から最も前記第2のバスの信号が確定するタイミングが遅いものを選択して使用することを特徴とするデータ処理装置。
The data processing apparatus according to claim 2, wherein
The setting unit sets a value for each peripheral module as a value indicating the timing, and supplies a signal having one or more values to the bus bridge control unit.
The bus bridge control unit selects and uses one of the one or more value signals that has the latest timing for determining the signal of the second bus in the synchronization processing for accessing the peripheral module. Characteristic data processing device.
請求項2記載のデータ処理装置において、
前記設定部は、前記タイミングを示す値として前記周辺モジュールごとの値が設定され、これら1つ以上の値の信号を前記バスブリッジ制御部に対して供給し、
前記バスブリッジ制御部は、前記周辺モジュールに対するアクセスにおける同期化処理で、前記1つ以上の値の信号からアクセス先の周辺モジュールに応じたものを選択して使用することを特徴とするデータ処理装置。
The data processing apparatus according to claim 2, wherein
The setting unit sets a value for each peripheral module as a value indicating the timing, and supplies a signal having one or more values to the bus bridge control unit.
The bus bridge control unit selects and uses a signal corresponding to a peripheral module to be accessed from the one or more value signals in a synchronization process in accessing the peripheral module. .
請求項2記載のデータ処理装置において、
前記周辺モジュールは、自モジュールにおける前記第2のバスの信号が確定するタイミングを示す値の信号を前記設定部に対して供給し、
前記設定部は、前記周辺モジュールから供給される信号から前記バスブリッジ制御部に対して供給する信号を生成して供給することを特徴とするデータ処理装置。
The data processing apparatus according to claim 2, wherein
The peripheral module supplies a signal having a value indicating a timing at which the signal of the second bus in the module is determined to the setting unit,
The data processing apparatus, wherein the setting unit generates and supplies a signal to be supplied to the bus bridge control unit from a signal supplied from the peripheral module.
請求項11記載のデータ処理装置において、
前記周辺モジュールから供給される信号は、その値が前記第2のバスの信号の出力における前記第1のバスのクロックサイクル数で表わされることを特徴とするデータ処理装置。
The data processing apparatus according to claim 11, wherein
The data processing apparatus according to claim 1, wherein the value of the signal supplied from the peripheral module is represented by the number of clock cycles of the first bus in the output of the signal of the second bus.
請求項11記載のデータ処理装置において、
前記周辺モジュールから供給される信号は、その値が前記第2のバスの信号の出力における時間で表わされることを特徴とするデータ処理装置。
The data processing apparatus according to claim 11, wherein
The data processing apparatus according to claim 1, wherein the signal supplied from the peripheral module has a value represented by a time in the output of the signal of the second bus.
請求項11記載のデータ処理装置において、
前記設定部は、前記周辺モジュールから供給される信号をもとに、1種類の値の信号を前記バスブリッジ制御部に供給し、
前記バスブリッジ制御部は、すべての前記周辺モジュールに対するアクセスにおける同期化処理において、前記1種類の値を共通に使用することを特徴とするデータ処理装置。
The data processing apparatus according to claim 11, wherein
The setting unit supplies a signal of one type of value to the bus bridge control unit based on a signal supplied from the peripheral module,
The data processing apparatus according to claim 1, wherein the bus bridge control unit uses the one type of value in common in a synchronization process in access to all the peripheral modules.
請求項11記載のデータ処理装置において、
前記設定部は、前記周辺モジュールから供給される信号をもとに、前記タイミングを示す値として前記周辺モジュールごとの値が設定され、これら1つ以上の値の信号を前記バスブリッジ制御部に対して供給し、
前記バスブリッジ制御部は、前記周辺モジュールに対するアクセスにおける同期化処理で、前記1つ以上の値の信号から最も前記第2のバスの信号が確定するタイミングが遅いものを選択して使用することを特徴とするデータ処理装置。
The data processing apparatus according to claim 11, wherein
The setting unit sets a value for each of the peripheral modules as a value indicating the timing based on a signal supplied from the peripheral module, and sends a signal having one or more values to the bus bridge control unit. And supply
The bus bridge control unit selects and uses one of the one or more value signals that has the latest timing for determining the signal of the second bus in the synchronization processing for accessing the peripheral module. Characteristic data processing device.
請求項11記載のデータ処理装置において、
前記設定部は、前記周辺モジュールから供給される信号をもとに、前記タイミングを示す値として前記周辺モジュールごとの値が設定され、これら1つ以上の値の信号を前記バスブリッジ制御部に対して供給し、
前記バスブリッジ制御部は、前記周辺モジュールに対するアクセスにおける同期化処理で、前記1つ以上の値の信号からアクセス先の周辺モジュールに応じたものを選択して使用することを特徴とするデータ処理装置。
The data processing apparatus according to claim 11, wherein
The setting unit sets a value for each of the peripheral modules as a value indicating the timing based on a signal supplied from the peripheral module, and sends a signal having one or more values to the bus bridge control unit. And supply
The bus bridge control unit selects and uses a signal corresponding to a peripheral module to be accessed from the one or more value signals in a synchronization process in accessing the peripheral module. .
請求項2記載のデータ処理装置において、
システム構成の変更に伴って、前記設定部に設定される前記タイミングを示す値の設定を稼動中に書き換える手段を有し、
前記バスブリッジ制御部は、前記クロック生成部から供給される更新指示信号に従ったタイミングで、前記設定部から供給される信号の適用を更新して前記同期化処理に使用することを特徴とするデータ処理装置。
The data processing apparatus according to claim 2, wherein
Along with a change in the system configuration, there is means for rewriting the setting of the value indicating the timing set in the setting unit during operation,
The bus bridge control unit updates application of a signal supplied from the setting unit at a timing according to an update instruction signal supplied from the clock generation unit and uses the updated application of the signal supplied from the setting unit. Data processing device.
請求項2記載のデータ処理装置において、
リセットの直後に前記設定部における設定値が不定状態となる場合に、
前記バスブリッジ制御部は、前記同期化処理で、前記クロック生成部から供給される設定完了信号に従って、
前記設定が未完了状態では、前記リセットの期間中に確定するクロック同期信号を、前記第2のバスの信号が確定するタイミングを示す信号として使用し、
前記設定が完了状態では、前記設定部から供給される信号を使用することを特徴とするデータ処理装置。
The data processing apparatus according to claim 2, wherein
When the setting value in the setting unit becomes indefinite immediately after resetting,
The bus bridge control unit, in the synchronization process, according to a setting completion signal supplied from the clock generation unit,
In the state where the setting is incomplete, a clock synchronization signal determined during the reset period is used as a signal indicating a timing at which the signal of the second bus is determined;
A data processing apparatus using a signal supplied from the setting unit when the setting is completed.
プロセッサと、前記プロセッサが使用するメモリとが接続される第1のバスと、
1つ以上の周辺モジュールが接続され、前記第1のバスより低速な第2のバスと、
前記第1と第2のバスに接続され、その間で信号の同期化処理を行うバスブリッジ制御部と、
前記第1と第2のバスに接続される各モジュールに対してクロック信号を供給するクロック生成部とを有するデータ処理装置であって、
前記第2のバスの信号が確定するタイミングを示す値が設定されその設定値の信号を前記バスブリッジ制御部に対して供給する設定部を有し、
前記バスブリッジ制御部は、前記第1のバスのコマンドを入力して前記第2のバスへのコマンドを発行し、前記第2のバスのデータの出力期間を示す信号を出力するコマンド発行制御部と、前記第1のバスのアドレスを入力して前記第2のバスへのアドレスを発行するアドレス発行制御部と、前記クロック生成部からの第1のバスのクロックとクロック同期信号を入力してカウントするカウンタ部と、前記カウンタ部のカウント値と前記設定部から供給される信号を入力して一致検出する一致検出部と、前記一致検出部の出力値と前記出力期間を示す信号とを入力して論理積をとる論理積回路部と、前記第2のバスのデータと前記第1のバスのクロックを入力して、前記論理積回路部から信号がアサートされるタイミングで前記第2のバスのデータを保持し、前記第1のバスへ出力するレジスタとを有する構成であり、
前記プロセッサが前記周辺モジュールへアクセスを行う場合に、前記バスブリッジ制御部は、前記同期化処理において、前記設定部から供給される信号に従ったタイミングで前記第2のバスの信号を保持することを特徴とするデータ処理装置。
A first bus to which a processor and a memory used by the processor are connected;
A second bus connected to one or more peripheral modules and slower than the first bus;
A bus bridge controller connected to the first and second buses and performing a signal synchronization process therebetween;
A data processing device having a clock generator for supplying a clock signal to each module connected to the first and second buses;
A setting unit that sets a value indicating a timing at which the signal of the second bus is determined and supplies a signal of the setting value to the bus bridge control unit;
The bus bridge control unit inputs a command of the first bus, issues a command to the second bus, and outputs a signal indicating a data output period of the second bus An address issuance control unit that inputs an address of the first bus and issues an address to the second bus, and inputs a clock and a clock synchronization signal of the first bus from the clock generation unit. A counter unit for counting, a coincidence detecting unit for detecting coincidence by inputting a count value of the counter unit and a signal supplied from the setting unit, and an output value of the coincidence detecting unit and a signal indicating the output period are input. And the second bus at a timing at which a signal is asserted from the AND circuit unit by inputting the data of the second bus and the clock of the first bus. of Holds over data, a configuration and a register output to the first bus,
When the processor accesses the peripheral module, the bus bridge control unit holds the signal of the second bus at the timing according to the signal supplied from the setting unit in the synchronization processing. A data processing apparatus.
JP2004357830A 2004-12-10 2004-12-10 Data processing unit Pending JP2006164119A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004357830A JP2006164119A (en) 2004-12-10 2004-12-10 Data processing unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004357830A JP2006164119A (en) 2004-12-10 2004-12-10 Data processing unit

Publications (1)

Publication Number Publication Date
JP2006164119A true JP2006164119A (en) 2006-06-22

Family

ID=36666046

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004357830A Pending JP2006164119A (en) 2004-12-10 2004-12-10 Data processing unit

Country Status (1)

Country Link
JP (1) JP2006164119A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8582709B2 (en) 2009-11-26 2013-11-12 Samsung Electronics Co., Ltd. Bandwidth synchronization circuit and bandwidth synchronization method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8582709B2 (en) 2009-11-26 2013-11-12 Samsung Electronics Co., Ltd. Bandwidth synchronization circuit and bandwidth synchronization method

Similar Documents

Publication Publication Date Title
US5918072A (en) System for controlling variable length PCI burst data using a dummy final data phase and adjusting the burst length during transaction
JP2002539527A (en) Microprocessing device with programmable wait state
US20040210702A1 (en) Capturing read data
US20110040902A1 (en) Compensation engine for training double data rate delays
JP2009163758A (en) Data transfer between differently clocked busses
US20130346686A1 (en) Memory access alignment in a double data rate (&#39;ddr&#39;) system
US7454589B2 (en) Data buffer circuit, interface circuit and control method therefor
JP2006113689A (en) Bus bridge device and data transfer method
JPH0271344A (en) Micro-computer-system
US5590316A (en) Clock doubler and smooth transfer circuit
JP5801158B2 (en) RAM storage device
US9747246B2 (en) Electronic device for communicating between a microcontroller unit (MCU) and a host processor and related methods
US5754825A (en) Lower address line prediction and substitution
KR100826496B1 (en) Semiconductor integrated circuit device and operating method thereof
JP3824122B2 (en) DMA device
JP3061106B2 (en) Bus bridge and computer system having the same
JP2006164119A (en) Data processing unit
JP2006164070A5 (en)
JP2624388B2 (en) DMA device
JPH03144990A (en) Memory device
US20020188771A1 (en) Direct memory access controller for carrying out data transfer by determining whether or not burst access can be utilized in an external bus and access control method thereof
KR960016402B1 (en) Cache data high speed transferring apparatus
JP2005063351A (en) Device and method for transferring data
JP4007122B2 (en) Bus signal processing apparatus and method, and data processing apparatus
JP2009223424A (en) Memory control circuit

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070205

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090501

A131 Notification of reasons for refusal

Effective date: 20090526

Free format text: JAPANESE INTERMEDIATE CODE: A131

A521 Written amendment

Effective date: 20090724

Free format text: JAPANESE INTERMEDIATE CODE: A523

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100119