JP4249741B2 - Bus system and information processing system including bus system - Google Patents
Bus system and information processing system including bus system Download PDFInfo
- Publication number
- JP4249741B2 JP4249741B2 JP2005321093A JP2005321093A JP4249741B2 JP 4249741 B2 JP4249741 B2 JP 4249741B2 JP 2005321093 A JP2005321093 A JP 2005321093A JP 2005321093 A JP2005321093 A JP 2005321093A JP 4249741 B2 JP4249741 B2 JP 4249741B2
- Authority
- JP
- Japan
- Prior art keywords
- bus
- signal
- data
- bit
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 230000010365 information processing Effects 0.000 title claims description 19
- 238000006243 chemical reaction Methods 0.000 claims description 164
- 230000004044 response Effects 0.000 claims description 48
- 238000012545 processing Methods 0.000 claims description 24
- 239000004065 semiconductor Substances 0.000 claims description 6
- 230000004913 activation Effects 0.000 claims description 3
- 239000000758 substrate Substances 0.000 claims description 2
- 244000309464 bull Species 0.000 claims 1
- 238000012546 transfer Methods 0.000 description 142
- 239000000872 buffer Substances 0.000 description 82
- 230000005540 biological transmission Effects 0.000 description 31
- 238000010586 diagram Methods 0.000 description 31
- 238000000034 method Methods 0.000 description 23
- 230000008569 process Effects 0.000 description 14
- 101000741965 Homo sapiens Inactive tyrosine-protein kinase PRAG1 Proteins 0.000 description 9
- 102100038659 Inactive tyrosine-protein kinase PRAG1 Human genes 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 238000013461 design Methods 0.000 description 5
- 239000000284 extract Substances 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 101100465000 Mus musculus Prag1 gene Proteins 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
Images
Landscapes
- Bus Control (AREA)
Description
この発明は、バスシステム及びバスシステムを含む情報処理システムに関し、特に、ビット幅の異なる複数のバス間において、制御コマンド線を共通化するとともに、ビット幅を変換しながら相互にデータ転送を行うデータ変換ユニットを備えた、バスシステム及びバスシステムを含む情報処理システムに関する。 The present invention relates to a bus system and an information processing system including the bus system, and in particular, data for sharing a control command line between a plurality of buses having different bit widths and transferring data to each other while converting the bit widths. The present invention relates to a bus system including a conversion unit and an information processing system including the bus system.
近年、設計資産(Intellectual Property :IP)コアとして、以前に開発された回路ブロックを接続してLSIを設計することによって、LSIの設計期間と開発費用を低減する手法が注目されている。このような各回路ブロックは、それぞれ独立して開発されたものであることが多いため、各ブロック間には、バス幅や入出力インタフェースの違いが存在する。したがって、各ブロック間を接続するためには、バス幅、入出力インタフェースの違いを吸収する技術が必要となる。このような、インタフェースの違いを吸収するインタフェース回路として、例えば、特開2000−311132号公報に記載されるブリッジ回路が用いられている。
ブリッジ回路を用いたバス接続回路は、図39に示されるように、64ビットデータ線及び制御コマンド線を含む第1のバス1001と、32ビットデータ線及び制御コマンド線を含む第2のバス1002と、バス1001とバス1002の間に接続されたバスブリッジ回路1003と、第1のバス1001に接続された64ビットのデータ線を有するバスマスタユニット1004,1005及び64ビットのデータ線を有するバススレーブユニット1006,1007と、第2のバス1002に接続された32ビットのデータ線を有するバスマスタユニット1008,1009及び32ビットのデータ線を有するバススレーブユニット1010,1011と、第1のバス1001側の調停回路1012と、第2のバス1002側の調停回路1013とを備えている。
As shown in FIG. 39, the bus connection circuit using the bridge circuit includes a first bus 1001 including a 64-bit data line and a control command line, and a second bus 1002 including a 32-bit data line and a control command line. A
以下、図39を参照して、従来のバス接続回路の動作を説明する。なお、データ転送方式には、コマンド転送とデータ転送とを連続して行なうノンスプリット転送と、コマンド転送とデータ転送とを不連続に行うスプリット転送とがあるが、ここでは、スプリット転送の場合について説明する。 The operation of the conventional bus connection circuit will be described below with reference to FIG. Data transfer methods include non-split transfer in which command transfer and data transfer are continuously performed, and split transfer in which command transfer and data transfer are discontinuously performed. explain.
バスマスタユニット1004は、CPU等の外部マスタユニット(図示しない)から出力されたリードコマンド、アドレスを受け取ると、第1のバス1001のバス権を得るために、調停リクエスト信号を調停回路1012に出力する。調停回路1012は、調停を行った後、調停グラント信号を出力することによってバスマスタユニット1004に第1のバス1001のバス権を与える。バス権を得たバスマスタユニット1004は、リードコマンド、アドレス、デバイスID(接続された各マスターにそれぞれに固有に割り当てられた番号)を制御コマンド線を介して第1のバス1001に出力し、第1のバス1001のバス権を開放する。
When the
バスブリッジ回路1003は、第1のバス1001に出力されたリードコマンド、アドレス、デバイスIDを受け取り、アドレスからバススレーブユニット1011に対するリードコマンドであることを検出する。バスブリッジ回路1003は、バススレーブユニット1011が第2のバス1002に接続されているため、第2のバス1002のバス権を得るため、調停回路1013に対して調停リクエスト信号を出力する。調停回路1013は、調停を行った後、調停グラント信号を出力することによって、バスブリッジ回路1003に第2のバス1002のバス権を与える。バス権を得たバスブリッジ回路1003は、リードコマンド、アドレス、デバイスIDを第2のバス1002に出力し、第2のバス1002のバス権を開放する。
The
バススレーブユニット1011は、アドレスが自分を示していることを検出し、リードコマンドを受け取り、バススレーブユニット1011に接続された外部スレーブユニット(図示しない)にリードコマンドを転送する。リードコマンドを受け取った外部スレーブユニットは、リードコマンドに基づいて処理を行ない、リードデータをバススレーブユニット1011に出力する。リードデータを受け取ったバススレーブユニット1011は、第2のバス1002のバス権を得るため、調停回路1013に調停リクエスト信号を出力する。調停回路1013は、調停を行った後、調停グラント信号を出力することによってバススレーブユニット1011に第2のバス1002のバス権を与える。
The
バス権を得たバススレーブユニット1011は、リードデータ及びデバイスIDを第2のバス1002に出力し、第2のバス1002のバス権を開放する。バスブリッジ回路1003は、第2のバス1002に出力されたデバイスIDからバスマスタユニット1004に出力されたデータであることを検出し、調停回路1012に調停リクエスト信号を出力し、調停回路1012は、調停を行い、調停グラント信号を出力することによってバスブリッジ回路に第1のバス1001のバス権を与える。
The
バス権を得たバスブリッジ回路1003は、受け取った32ビット幅のリードデータを64ビット幅のデータに変換して、デバイスIDと共に第1のバスに出力し、第1のバス1001のバス権を開放する。バスマスタユニット1004は、第1のバス1001上のデバイスIDが自分のデバイスIDと一致するため、第1のバス1001上のリードデータを取りこみ、取り込んだデータを外部マスタユニットに出力する。このようにして、リードコマンドに基づくノンスプリット転送が実行される。
The
ライトコマンドに基づくスプリット転送の場合には、以下のとおり動作する。バスマスタユニット1004は、第1のバス1001のバス権を確保した後、ライトコマンド、アドレス、ライトデータを第1のバスに出力し、第1のバス1001のバス権を開放する。64ビットのライトデータを受け取ったバスブリッジ回路1003は、アドレスに基づいて、第2のバス1002のバス権を確保した後、64ビットのライトデータを32ビットのライトデータに変換し、ライトコマンド、アドレスと共に第2のバス1002に出力し、第2のバス1002のバス権を開放する。バススレーブユニット1011は、ライトコマンド、ライトデータを受け取り、外部スレーブユニットに転送する。外部スレーブユニットは、ライトコマンドに基づいて、ライトデータの書き込み動作を行なう。
In the case of split transfer based on the write command, the operation is as follows. After securing the bus right of the first bus 1001, the
ノンスプリット転送の場合には、バススレーブユニット1006、1007、1010、1011は、バス権を確保する必要が無いため、図39において、各バススレーブユニットと調停回路1012、1013との間の調停リクエスト線及び調停グラント線は存在しないものとして説明する。
In the case of non-split transfer, the
リードコマンドに基づくノンスプリット転送の場合は、バスマスタユニット1004による第1のバス1001のバス権の開放がバススレーブユニット1011からのリードデータを受け取るまで行なわず、また、バスブリッジ回路1003による第2のバス1002のバス権の開放がバススレーブユニットからのリードデータを受け取るまで行なわれない。また、ライトコマンドに基づくノンスプリット転送は、バスマスタユニット1004がライトデータ、ライトコマンド、アドレスを第1のバス1001に出力した後、第1のバス権を開放しない以外は、スプリット転送とほぼ同一のため説明を省略する。
In the case of the non-split transfer based on the read command, the
このように、バス権の獲得の回数、すなわち調停回路による調停が必要となる回数は、リードコマンド実行時のスプリット転送が4回、ノンスプリット転送では2回、ライトコマンド実行時は、両転送とも2回となる。通常、1回の調停動作には、およそ少なくとも4クロックを必要とするため、調停動作のために8〜16クロックが必要になる。 As described above, the number of times of acquiring the bus right, that is, the number of times that arbitration is required by the arbitration circuit, is 4 split transfers when executing a read command, 2 times when performing non-split transfer, and both when transferring a write command. 2 times. Usually, at least 4 clocks are required for one arbitration operation, so 8 to 16 clocks are required for the arbitration operation.
このように、従来のバス接続回路では、バスブリッジ回路において、バスとバスの間に跨がるデータ転送を行うための調停回数が多いので調停動作に必要な時間が長いため、バスの性能が低下する。さらに、ライトコマンド実行時には、バスマスタユニットは、スレーブ側へのライトデータ転送終了前に、第1のバスのバス権を開放してバスサイクルを終了してしまうので、エラー発生時には送信したライトデータが喪失してしまう危険性がある。したがって、転送エラーが発生した時には、バスマスタユニットへ転送エラーの通知を行なうための回路が余分に必要となる。 As described above, in the conventional bus connection circuit, the bus bridge circuit has a large number of arbitrations for performing data transfer between the buses, so the time required for the arbitration operation is long. descend. Furthermore, when the write command is executed, the bus master unit releases the bus right of the first bus and finishes the bus cycle before the write data transfer to the slave side is completed. There is a risk of loss. Therefore, when a transfer error occurs, an extra circuit for notifying the bus master unit of the transfer error is required.
また、バスマスタユニットへ転送エラーの通知を行なうためには、バスブリッジ回路が第1のバスのバス権を調停回路による調停を経て獲得した後に行なう必要があり、転送エラーが起きたときには更に調停の回数が増加することになり、バスのスループットが悪化する。なお、第1のバスのバス権を開放しなければ、エラー発生時にライトデータを喪失することは無くなるが、バスサイクルが終了するまで第1のバスが占有されるため、バスの使用効率が低下する。 Further, in order to notify the transfer error to the bus master unit, it is necessary that the bus bridge circuit acquires the bus right of the first bus through arbitration by the arbitration circuit, and further arbitration occurs when a transfer error occurs. The number of times increases, and the throughput of the bus deteriorates. If the right of the first bus is not released, write data will not be lost when an error occurs, but the first bus will be occupied until the bus cycle is completed, so the bus usage efficiency will be reduced. To do.
また、従来のバス接続回路では、バスブリッジ回路1003が、第1のバスと第2のバスにおける、バスマスタユニットとバススレーブユニットとに対応するバス制御回路をそれぞれ搭載している必要がある。したがって、上述した従来のバス制御回路では、バスブリッジ回路は、第1のバスに対するバスマスタ制御回路、第2のバスに対するバスマスタ制御回路、第1のバスに対するバススレーブ制御回路及び第2のバスに対するバススレーブ制御回路の計4個を必要とする。このように、バスブリッジ回路の回路規模は、バスブリッジ回路に接続されるバスの本数に対応して増加する。
In the conventional bus connection circuit, the
この発明は、上述の事情に鑑みてなされたものであって、リードアクセスとライトアクセスにおける、バス接続のためのクロックサイクル数が少なく、かつ、転送エラー時におけるデータ喪失の危険性がなく、さらに回路構成上、ハードウェア量が少なくて済む、バス接続回路、このバス接続回路を用いた情報処理システム及びバス接続回路の結線情報を記憶した記憶媒体を提
供することを目的としている。
The present invention has been made in view of the above-described circumstances, and there are few clock cycles for bus connection in read access and write access, and there is no risk of data loss at the time of a transfer error. An object of the present invention is to provide a bus connection circuit, an information processing system using the bus connection circuit, and a storage medium storing connection information of the bus connection circuit, which requires a small amount of hardware in terms of circuit configuration.
上記課題を解決するため、バスシステムにかかる第1の発明は、ビット幅が異なるデータ線を有する複数のバスの制御コマンド線を共通接続する共通制御コマンドバスと、前記ビット幅の異なるデータ線が接続され、これらデータ線の間でビット幅の変換を行うデータ変換回路とを備え、ビット幅が異なるデータ線を有する複数のバス間において同一のバスサイクルで相互にビット幅の変換を行えるように構成したことを特徴とする。 In order to solve the above problems, a first invention according to a bus system includes a common control command bus for commonly connecting control command lines of a plurality of buses having data lines having different bit widths, and a data line having the different bit widths. And a data conversion circuit for converting the bit width between these data lines, so that the bit width can be mutually converted in the same bus cycle between a plurality of buses having data lines having different bit widths. It is characterized by comprising.
また、バスシステムにかかる第2の発明は、第1の制御コマンド線と第1のビット幅のデータ線とを介して第1のインタフェース手段と接続された第1のバスと、第2の制御コマンド線と第2のビット幅のデータ線とを介して第2のインタフェース手段と接続された第2のバスと、前記第1及び第2の制御コマンド線を共通接続し、共通のコマンド情報を伝達する共通制御コマンドバスと、前記第1及び第2のデータ線が接続されそれぞれのデータ線のビット幅の相互の変換を行うデータ変換回路と、第1及び第2のインタフェース手段からの調停リクエストに応じて前記第1及び第2のバスのバス権の調停を行う調停回路とを設けたことを特徴とする。 According to a second aspect of the present invention, there is provided a first bus connected to the first interface means via a first control command line and a first bit width data line, and a second control. The second bus connected to the second interface means via the command line and the data line of the second bit width is connected in common to the first and second control command lines, and the common command information is A common control command bus to be transmitted, a data conversion circuit for connecting the first and second data lines and converting the bit widths of the respective data lines, and an arbitration request from the first and second interface means And an arbitration circuit for arbitrating the bus rights of the first and second buses.
また、バスシステムにかかる第3発明は、第1のライト制御コマンド線及び第1のビット幅のライトデータ線を介して第1のインタフェース手段に接続された第1のライトバスと、第1のリード制御コマンド線及び前記第1のビット幅のリードデータ線を介して前記第1のインタフェース手段に接続された第1のリードバスと、第2のライト制御コマンド線及び第2のビット幅
のライトデータ線を介して第2のインタフェース手段に接続された第2のライトバスと、第2のリード制御コマンド線及び前記第2のビット幅のリードデータ線を介して前記第2のインタフェース手段に接続された第2のリードバスと、前記第1のライト制御コマンド線と前記第2のライト制御コマンド線とを共通に接続する第1の共通制御コマンドバスと、前記第1のリード制御コマンド線と前記第2のリード制御コマンド線とを共通に接続する第2の共通制御コマンドバスと、前記第1のライトバスと前記第2のライトバスとが接続され、これらライトバス間でのビット幅の変換を行なうライトデータ変換回路と、前記第1のリードバスと前記第2のリードバスとが接続され、これらリードバス間でビット幅の変換を行なうリードデータ変換回路と、前記第1または第2のインタフェースからの要求に応答して前記第1及び第2のライトバスのバス権の調停を行なう第1の調停回路と、前記第1または第2のインタフェースからの要求に応答して前記第1及び前記第2のリードバスのバス権の調停を行う第2の調停回路とを有することを特徴とする。
According to a third aspect of the present invention, there is provided a first write bus connected to the first interface means via the first write control command line and the write data line having the first bit width, A first read bus connected to the first interface means via a read control command line and a read data line of the first bit width; a second write control command line and a write of a second bit width; A second write bus connected to the second interface means via the data line, and a second read control command line and a read data line having the second bit width connected to the second interface means. A second read bus, a first common control command bus for commonly connecting the first write control command line and the second write control command line, and the first A second common control command bus that commonly connects the read control command line and the second read control command line, and the first write bus and the second write bus, and the write bus A write data conversion circuit that performs bit width conversion between the first read bus and the second read bus, and a read data conversion circuit that performs bit width conversion between the read buses, In response to a request from the first or second interface, a first arbitration circuit that arbitrates the bus right of the first and second write buses, and a request from the first or second interface And a second arbitration circuit that performs arbitration of the bus right of the first and second read buses in response.
また、バスシステムにかかる第4の発明は、制御コマンド線とデータ線とを介してマスタ側のインタフェース手段とスレーブ側のインタフェース手段とを接続するそれぞれビット幅を異にするn本のバスと、前記n本のバスの制御コマンド線をそれぞれ共通接続する共通制御コマンドバスと、前記n本のバスのデータ線がそれぞれ接続され、ビット幅が異なるデータ線間でのビット幅の変換を行なうデータ変換回路と、前記n本のバスに対する調停を同時に行う調停回路とを備えることを特徴とする。 According to a fourth aspect of the bus system, n buses having different bit widths for connecting the master side interface means and the slave side interface means via the control command line and the data line, Data conversion for performing bit width conversion between data lines having different bit widths, each of which is connected to a common control command bus for commonly connecting the control command lines of the n buses and the data lines of the n buses. A circuit; and an arbitration circuit that performs arbitration for the n buses simultaneously.
また、バスシステムにかかる第5の発明は、第1のビット幅のデータ線を有する第1のバスと、前記第1のバスに接続された第1のユニットと、第2のビット幅のデータ線を有する第2のバスと、前記第1のバスに接続された第2のユニットと、前記第1のユニットから前記第2のユニットに対してコマンドが出力された際に前記第1のバスと第2のバスの調停を同時に行う調停回路と、前記第1のバスと前記第2のバスとの間で第1のビットと第2のビットとの変換動作を行なう変換回路と、前記第1のバスと前記第2のバスとを接続する共通制御コマンドバスとを備えることを特徴とする。 According to a fifth aspect of the present invention, there is provided a first bus having a data line having a first bit width, a first unit connected to the first bus, and data having a second bit width. A second bus having a line, a second unit connected to the first bus, and the first bus when a command is output from the first unit to the second unit. And an arbitration circuit that performs arbitration of the second bus at the same time, a conversion circuit that performs a conversion operation between a first bit and a second bit between the first bus and the second bus, And a common control command bus for connecting the first bus and the second bus.
バスシステムにかかる第1乃至第5の発明では、共通制御コマンドバスと、データ変換回路とを備えることによって、データ線のビット幅が異なるバス間において、少ないクロックサイクルでデータのリード、ライトを実行することができる。 In the first to fifth aspects of the bus system, the common control command bus and the data conversion circuit are provided, so that data is read and written with a small number of clock cycles between buses having different data line bit widths. can do.
また、バス接続回路にかかる第6の発明は、第1のデータビット幅を有する第1のユニットから出力される第1の出力信号及び第1のイネーブル信号と、前記第1のデータビット幅を有する第2のユニットから出力される第2の出力信号及び第2のイネーブル信号とを受け前記第1または第2のイネーブル信号がアクティブになったことに応答して前記第1または第2の出力信号を選択出力する第1の選択回路と、前記第1のデータビット幅とは異なる第2のデータビット幅の第3のユニットから出力される第3の出力信号及び第3のイネーブル信号であって、変換ユニットを介して供給される前記第3の出力信号及び前記第3のイネーブル信号と前記第1の選択回路の出力と前記第1及び第2のイネーブル信号に基づく信号とを受け、前記第1または第2のイネーブル信号がアクティブの時は前記第1の選択回路の出力を前記第1及び第2のユニットに供給し、前記第3のイネーブル信号がアクティブの時には前記第3の出力信号を前記第1及び第2のユニットに供給する第2の選択回路とを備えることを特徴とする。 According to a sixth aspect of the bus connection circuit, the first output signal and the first enable signal output from the first unit having the first data bit width, and the first data bit width are set. Receiving the second output signal and the second enable signal output from the second unit having the first or second output in response to the activation of the first or second enable signal. A first selection circuit that selectively outputs a signal, and a third output signal and a third enable signal output from a third unit having a second data bit width different from the first data bit width. Receiving the third output signal and the third enable signal supplied via the conversion unit, the output of the first selection circuit, and the signal based on the first and second enable signals, When the first or second enable signal is active, the output of the first selection circuit is supplied to the first and second units, and when the third enable signal is active, the third output signal is supplied. And a second selection circuit for supplying the first and second units.
また、バス接続回路にかかる第7の発明は、第1のデータビット幅の第1のバスマスタユニットから出力される第1の出力信号及び第1のイネーブル信号と、前記第1のデータビット幅の第2のバスマスタユニットから出力される第2の出力信号及び第2のイネーブル信号とを受け、前記第1または第2のイネーブル信号がアクティブになったことに応答して前記第1または第2の出力信号を選択出力する第1の選択回路と、前記第1のデータビット幅とは異なる第2のデータビット幅の第3のバスマスタユニットから出力される第3の出力信号及び第3のイネーブル信号であって、変換ユニットを介して供給された前記第3の出力信号及び前記第3のイネーブル信号と前記第1の選択回路の出力と前記第1及び第2のイネーブル信号に基づく信号とを受け、前記
第1または第2のイネーブル信号がアクティブの時は前記第1の選択回路の出力を前記第1のデータビット幅のバススレーブユニットに対して供給し、前記第3のイネーブル信号がアクティブの時には前記第3の出力信号を前記バススレーブユニットに対して供給する第2の選択回路を備えることを特徴とする。
According to a seventh aspect of the bus connection circuit, the first output signal and the first enable signal output from the first bus master unit having the first data bit width, and the first data bit width. Receiving the second output signal and the second enable signal output from the second bus master unit, and in response to the first or second enable signal becoming active, the first or second A first selection circuit that selectively outputs an output signal, and a third output signal and a third enable signal output from a third bus master unit having a second data bit width different from the first data bit width And based on the third output signal, the third enable signal, the output of the first selection circuit, and the first and second enable signals supplied via the conversion unit. When the first or second enable signal is active, the output of the first selection circuit is supplied to the bus slave unit having the first data bit width and the third enable signal is received. A second selection circuit is provided that supplies the third output signal to the bus slave unit when a signal is active.
また、バス接続回路にかかる第8の発明は、第1のデータビット幅の第1のバススレーブユニットから出力される第1の出力信号及び第1のイネーブル信号と、前記第1のデータビット幅の第2のバススレーブユニットから出力される第2の出力信号及び第2のイネーブル信号とを受け、前記第1または第2のイネーブル信号がアクティブになったことに応答して前記第1または第2の出力信号を選択出力する第1の選択回路と、前記第1のデータビット幅とは異なる第2のデータビット幅の第3のバスマスタユニットから出力される第3の出力信号及び第3のイネーブル信号であって、変換ユニットを介して供給された前記第3の出力信号及び前記第3のイネーブル信号と前記第1の選択回路の出力と前記第1及び第2のイネーブル信号に基づく信号とを受け、
前記第1または第2のイネーブル信号がアクティブの時は前記第1の選択回路の出力を前記第1のデータビット幅のバスマスタユニットに対して供給し、前記第3のイネーブル信号がアクティブの時には前記第3の出力信号を前記バスマスタユニットに対して供給する第2の選択回路とを備えることを特徴とする。
An eighth invention according to the bus connection circuit includes a first output signal and a first enable signal output from a first bus slave unit having a first data bit width, and the first data bit width. Receiving the second output signal and the second enable signal output from the second bus slave unit of the first bus, and in response to the first or second enable signal becoming active, A first selection circuit that selectively outputs two output signals, a third output signal output from a third bus master unit having a second data bit width different from the first data bit width, and a third output signal An enable signal, which is supplied to the third output signal, the third enable signal, the output of the first selection circuit, and the first and second enable signals supplied via the conversion unit. It receives the signal that brute,
When the first or second enable signal is active, the output of the first selection circuit is supplied to the bus master unit having the first data bit width, and when the third enable signal is active, And a second selection circuit for supplying a third output signal to the bus master unit.
バス接続回路にかかる第6乃至第8の発明では、選択回路を用いてバスを容易に構成することができる。また、第1乃至第5のバス接続回路を含んで、情報処理システムを組むことができるため、高速動作が可能となる。 In the sixth to eighth aspects of the bus connection circuit, the bus can be easily configured using the selection circuit. In addition, since the information processing system can be assembled including the first to fifth bus connection circuits, high-speed operation is possible.
本発明のバス制御回路、バスシステムでは、第1に異なるビット幅のデータ線を有する複数のバス間におけるバス権獲得時の調停動作の回数を減少させることができるため、バスの使用効率を向上させることができると共に、バスマスタユニットとバススレーブユニットとの間で高速にアクセスを行なうことが可能となる。第2に、2種類の異なるバス幅のバスを接続する場合に限らず、3種類以上の異なるバス幅のバスを接続する場合にも適用することができるため、バスの拡張性に優れている。 In the bus control circuit and the bus system of the present invention, first, the number of arbitration operations when acquiring the bus right between a plurality of buses having data lines having different bit widths can be reduced, so that the bus use efficiency is improved. And high speed access between the bus master unit and the bus slave unit. Secondly, the present invention is not limited to connecting two types of buses having different bus widths, and can be applied to connecting three or more types of buses having different bus widths. .
第3に、データ転送エラー発生時にも、第1のバスと第2のバスを接続する共通制御コマンドバスがあるので、送信先から送信元へデータ転送エラー発生を通知することができる。最後に、複数のバスマスタユニット及びスレーブユニットを対して共通の制御回路にて制御することができるため、回路構成を簡単にすることができ、必要なハードウェア量を少なくすることができる。 Third, even when a data transfer error occurs, since there is a common control command bus that connects the first bus and the second bus, the transmission destination can be notified of the occurrence of the data transfer error. Finally, since a plurality of bus master units and slave units can be controlled by a common control circuit, the circuit configuration can be simplified and the required amount of hardware can be reduced.
以下、代表的な本発明の実施の形態について、図1を用いて説明する。本発明の実施の形態は、バス1とバス2との間に設けられたデータ変換ユニットと、バス1の制御コマンド線とバス2の制御コマンド線とを接続する共通コマンドバス50と、バス1及びバス2に接続されたバスマスタユニット及びバススレーブユニットに対して共通に設けられた調停回路とを有して構成される。以下、実施例を用いて詳細に説明を行なう。
Hereinafter, a typical embodiment of the present invention will be described with reference to FIG. The embodiment of the present invention includes a data conversion unit provided between the
◇第1実施例
図1は、本発明の第1実施例であるバスシステムの構成を示すブロック図、図2は、本実施例のバスシステムの共通制御コマンドバスを含むシステム構成を示す図、図3は、本実施例におけるバスマスタユニットの構成を示す図、図4は、本実施例におけるデータ変換ユニットの構成を示す図、図5は、本実施例におけるバススレーブユニットの構成を示す図、図6は、本実施例における、32ビットのバスマスタユニットから64ビットのバススレーブユニットへのリードアクセス時のデータ転送動作を示すタイミングチャート、図7は、本実施例における、64ビットのバスマスタユニットから、32ビットのバススレーブユニットに対するリードアクセス時のデータ転送動作を示すタイミングチャート、図8は、本実施例における、64ビットのバスマスタユニットから32ビットのバススレーブユニットへのライトアクセス時のデータ転送動作を示すタイミングチャート、図9は、本実施例における、32ビットのバスマスタユニットから64ビットのバススレーブユニットへのライトアクセス時のデータ転送動作を示すタイミングチャートである。
FIG. 1 is a block diagram showing a configuration of a bus system according to a first embodiment of the present invention, and FIG. 2 is a diagram showing a system configuration including a common control command bus of the bus system of the present embodiment. 3 is a diagram showing the configuration of the bus master unit in this embodiment, FIG. 4 is a diagram showing the configuration of the data conversion unit in this embodiment, and FIG. 5 is a diagram showing the configuration of the bus slave unit in this embodiment. FIG. 6 is a timing chart showing a data transfer operation at the time of read access from a 32-bit bus master unit to a 64-bit bus slave unit in this embodiment, and FIG. 7 is a timing chart of the 64-bit bus master unit in this embodiment. FIG. 8 is a timing chart showing a data transfer operation during read access to a 32-bit bus slave unit. FIG. 9 is a timing chart showing a data transfer operation at the time of write access from a 64-bit bus master unit to a 32-bit bus slave unit, and FIG. 9 shows from the 32-bit bus master unit to the 64-bit bus slave unit in this embodiment. 6 is a timing chart showing a data transfer operation during write access.
本実施例のバスシステム(バス接続回路)は、図1に示すように、制御コマンド線及び64ビットデータ線とに接続されたバス1と、制御コマンド線及び32ビットデータ線とに接続されたバス2と、データ変換ユニット3と、バス1とバス2の制御コマンド線を接続する共通制御コマンドバス50、バス1に制御コマンド線及び64ビットデータ線を介して接続されたバスマスタユニット4,5及びバススレーブユニット6,7と、バス2に制御コマンド線及び32ビットデータ線を介して接続されたバスマスタユニット8,9及びバススレーブユニット10,11と、バスマスタユニット4、5、8、9及びバススレーブユニット6、7、10、11に接続された調停回路12とを備えている。
As shown in FIG. 1, the bus system (bus connection circuit) of this embodiment is connected to a
なお、本実施例においては、リードデータを転送するリードバスと、コマンドとライトデータを転送するライトバスとが共通であって、データ幅が64ビットのバスとデータ幅が32ビットのバスとの間を接続するバス接続回路について説明する。なお、本実施例では、リードアクセス時、スプリット転送を行うものとして説明する。 In this embodiment, a read bus for transferring read data and a write bus for transferring commands and write data are common, and a bus having a data width of 64 bits and a bus having a data width of 32 bits are used. A bus connection circuit for connecting between them will be described. In this embodiment, it is assumed that split transfer is performed during read access.
ここで、バスマスタユニットは、外部マスタユニットとバスとの間のインタフェースユニットを示す。外部マスタユニットは、コマンドを発行する機能を有するユニットであり、例えば、中央演算処理装置(CPU)や、メモリに対するデータのDMA(Direct Memory Access)転送を制御するDMAコントローラ等が該当する。図1では、外部マスタユニットとして、CPU114、64ビットDMAコントローラ(マスター)115、32ビットPCIブリッジ(マスター)118、32ビットDMAコントローラ内蔵イーサネット(登録商標)(マスター)119を示している。
Here, the bus master unit indicates an interface unit between the external master unit and the bus. The external master unit is a unit having a function of issuing a command, and corresponds to, for example, a central processing unit (CPU), a DMA controller for controlling DMA (Direct Memory Access) transfer of data to a memory, and the like. In FIG. 1, a
また、バススレーブユニットは、外部スレーブユニットとバスとの間のインタフェースユニットを示す。外部スレーブユニットは、外部マスタユニットによって発行されたコマンドを受けて処理を行うユニットであり、例えば、入出力回路(I/O)や、メモリ等が該当する。図1では、外部スレーブユニットとして、メモリ116、64ビットDMAコントローラ(スレーブ)117、32ビットPCIブリッジ(スレーブ)120、32ビットDMAコントローラ内蔵イーサネット(スレーブ)121を示している。
The bus slave unit indicates an interface unit between the external slave unit and the bus. The external slave unit is a unit that performs processing in response to a command issued by the external master unit, and corresponds to, for example, an input / output circuit (I / O) or a memory. FIG. 1 shows a
バス1は、64ビット幅のデータを送受するための64ビットデータ線と、制御コマンドを送受するための制御コマンド線とから構成され、バス2は、32ビット幅のデータを送受するための32ビットデータ線と、制御コマンドを送受するための制御コマンド線とから構成されている。バス1の制御コマンド線と、バス2の制御コマンド線とは、共通制御コマンドバス50を介して接続されている。データ変換ユニット3は、バス1とバス2との間で、64ビット幅のデータと32ビット幅のデータとの間のビット幅の変換を行い、例えば32ビットを64ビットに変換し、又は64ビットを32ビットに変換する。
The
バスマスタユニット4,5は、制御コマンド線と64ビットデータ線とを介してバス1に接続され、バスマスタユニット8,9は、制御コマンド線と32ビットデータ線とを介してバス2に接続されている。それぞれのバスマスタユニットは、外部マスタユニットとバス1又はバス2との間のインタフェースをとる。バススレーブユニット6,7は、制御コマンド線と64ビットデータ線とを介してバス1に接続され、バススレーブユニット10,11は、制御コマンド線と32ビットデータ線とを介してバス2に接続されている。それぞれのバススレーブユニットは、バス1又はバス2と外部スレーブユニットとの間のインタフェースをとる。
The
調停回路12は、各バスマスタユニット又はバススレーブユニットから出力される調停リクエスト信号に応じて、バス1とバス2におけるバス権の調停を行い、バス権が確立したとき、調停グラント信号によって、要求元のバスマスタユニット又はバススレーブユニットに対して、バス権獲得を通知する。
The
以下、本発明の基本的な動作フローを簡単に説明する。外部マスタユニットがリードコマンドを実行する場合は以下の通りである。CPU114が、32ビットPCIブリッジ(スレーブ)120に対するリードコマンドをバスマスタユニット4に出力する。バスマスタユニット4は、調停回路12に対して調停リクエストを行い、バス1及びバス2のバス権を獲得する。バス権を獲得したバスマスタユニット4は、リードコマンドをバス1に対して出力し、バス1上のリードコマンドは共通コマンドバス50を介してバス2に伝達される。リードコマンドをバス2を介して受け取ったバススレーブユニット10は、32ビットPCIブリッジ120に対してリードコマンドを伝達する。
The basic operation flow of the present invention will be briefly described below. When the external master unit executes a read command, it is as follows. The
32ビットPCIブリッジ120はリードコマンドに基づいてデータをバススレーブユニット10に出力し、バススレーブユニット10は、受け取ったデータをCPU114に送るためにバス2に出力する。バス2上のデータが32ビットのデータであり受け取り側のCPU114は64ビットのデータ幅を有するため、データ変換ユニット3は、32ビットのデータから64ビットのデータに変換を行ない、変換後のデータをバス1に出力する。バス1を介して変換後のデータを受け取ったバスマスタユニット4は、当該データをCPU114に伝達する。
The 32-
外部マスタユニットがライトコマンドを実行する場合の動作は以下の通りである。CPU114は、32ビットPCIブリッジ(スレーブ)に対するライトコマンド、ライトデータをバスマスタユニット4に出力する。バスマスタユニット4は、調停回路12に対して調停リクエストを行ない、バス1及びバス2のバス権を得る。バス権を得たバスマスタユニット4は、ライトコマンド、ライトデータをバス1に出力する。ライトコマンドは共通制御バス50を介してバス2の伝達され、ライトデータは、データ変換ユニット3によって64ビットデータから32ビットデータに変換されバス2に伝達される。バススレーブユニット10は、バス2を介してライトデータ、ライトコマンドを受け取り、これらを32ビットPCIブリッジに伝達する。
The operation when the external master unit executes a write command is as follows. The
次に、図1のバス接続回路の信号線について図2を使って詳細に説明する。図中、(1) 〜(13)は、以下に示す各制御コマンド線及び共通制御コマンドバスの各信号線を表す。 Next, the signal lines of the bus connection circuit of FIG. 1 will be described in detail with reference to FIG. In the figure, (1) to (13) represent the following control command lines and signal lines of the common control command bus.
バス1の制御コマンド線は、(1):Frame64、(2):Master、(3):Address、(4):CMD、(5):DID、(7):Dvalid64、(8):ACK、(9):NACK、(10):Devselを伝達する。バス1の64ビットデータ線は、(6):Data64を伝達する。バス2の制御コマンド線は、(11):Frame32、(2):Master、(3):Address、(4):CMD、(5):DID、(13):Dvalid32、(8):ACK、(9):NACK、(10):Devselを伝達する。バス2の32ビットデータ線は、(12):Data32を伝達する。共通制御コマンドバス50は、バス1及びバス2との間で(2):Master、(3):Address、(4):CMD、(5):DID、(8):ACK、(9):NACK、(10):Devselを伝達する。
The control command lines of the
ここで、Frame64は、64ビット幅のバスの占有を示す情報、Masterは、バスマスタユニットからバススレーブユニットへの転送であることを示す情報、Addressは、バススレーブユニットを特定するためのアドレスデータ、Cmdは、コマンドの種類を示すコマンドデータ、DIDデータは、バスマスタユニットを特定するためのデバイスIDであり、Data64は、バス1内の64ビットデータ線上の転送データ、Dvalid64は、データ線上の転送データの有効な期間を示す情報、ACKは、選択されたユニットが要求された動作を実行することが可能になったことを示す情報、NACKは、選択されたユニットが要求された動作を実行することができないことを示す情報、Devselは、外部スレーブユニットが選択された状態であることを示す情報、Frame32は、32ビット幅のバスの占有を示す情報、Data32は、バス2内の32ビットデータ線上の転送データ、Dvalid32は、32ビットデータ線上の転送データの有効な期間を示す情報をそれぞれ示している。
Here,
ただし、DIDデータは、バスマスタユニット毎にユニークな値であるとする。また、DIDデータはバスマスタの外部から与えられるもであっても、バスマスタ内のレジスタに保持されているものでも良い。 However, it is assumed that the DID data is a unique value for each bus master unit. The DID data may be given from outside the bus master or may be held in a register in the bus master.
図2に示されたシステム構成図は、バス構造がマルチプレクサ型の場合を示しているが、3ステートバッファ型の場合には、ACK信号を32ビットの場合と64ビットの場合とで区別する必要がある以外は同様のため説明を省略する。以下、本実施例の動作をタイミングチャート及び各構成ブロックの説明を交えながら説明する。 The system configuration diagram shown in FIG. 2 shows a case where the bus structure is a multiplexer type, but in the case of a three-state buffer type, it is necessary to distinguish between an ACK signal of 32 bits and a case of 64 bits. The explanation is omitted because it is the same except there is. Hereinafter, the operation of the present embodiment will be described with reference to a timing chart and descriptions of each component block.
本発明の第1の実施例において、バスマスタユニット9に接続された32ビットのデータ幅を持つCPU30から、バススレーブユニット6に接続された64ビットのデータ幅を持つ外部スレーブユニット40に対してコマンドが出力された場合の、バスシステムについて、図2、図3、図4、図5及び図6を参照しながら説明する。なお、バス上のデータは、スプリット転送
によって制御されるものとする。
In the first embodiment of the present invention, a command is sent from the
まず、バスマスタユニット4、5、8、9、データ変換ユニット3、バススレーブユニット6、7、10、11の構成について説明する。バスマスタユニット4、5、8、9は、図3に示されるように、バスアドレスバッファ31A、バスコマンドバッファ31B、バスライトデータバッファ32、バスリードデータバッファ33、バスマスタ制御回路34、マルチプレクサ35A、35B、35C、36、DID比較回路37、及びタイミング制御回路38から構成されている。
First, the configuration of the
データ変換ユニット3は、図4に示されるように、データバッファ21、タイミング制御部22、及びマルチプレクサ23、24、25、26から構成されている。バススレーブユニット6、7、10、11は、図5に示されるように、バスコマンドバッファ41A、41B、41C、バスライトデータバッファ42、バスリードデータバッファ43、バススレーブ制御回路44、マルチプレクサ45、アドレス比較回路46及びタイミング制御回路47から構成されている。
As shown in FIG. 4, the
次に、図2のブロック図において、CPU30からメモリ40に対してリードコマンドが出力された場合の各ユニットの内部動作について図6のタイミングチャートを参照しながら詳述する。なお、外部マスタユニットとしてのCPU30は、バスマスタユニット9に対して、バススレーブユニット6に接続された外部スレーブユニットとしてのメモリ40を指定するためのアドレスデータADD、メモリ40に対してライトコマンドやリードコマンドを送るためのコマンドデータCMD、コマンドデータCMDがライトコマンドを含む場合にはライトコマンドによってメモリ40に書き込まれるべきライトデータ及びこれらデータの転送をバスマスタユニット9に対して要求する転送リクエスト信号Mreqを出力する。ただし、コマンドデータCMDは、図12に示すように、リードアクセスであるか、又はライトアクセスであるかを示すビット、一度に転送するデータ量を、バイトで示したサイズを含んでいるものとする。
Next, in the block diagram of FIG. 2, the internal operation of each unit when a read command is output from the
CPU30は、アドレスADD、リードコマンドを示すコマンドデータCMD及び転送リクエスト信号Mreqをバスマスタユニット9に出力する。CPU30から出力されたアドレスADD及びコマンドデータCMDは、バスマスタユニット9のバスアドレスバッファ31A及びバスコマンドバッファ31Bにそれぞれ保持され、転送リクエスト信号Mreqを受け取ったタイミング制御回路38は、転送開始信号をバスマスタ制御回路34に出力する。(ここまでのタイミングは、図示していない。)
The
転送開始信号を受け取ったバスマスタ制御回路34は、バス権を得るために調停リクエスト信号Mreqを調停回路12に出力する。調停回路12は、受け取った調停リクエスト信号Mareqに応答して調停を行ない、Frame32信号がインアクティブになっていることを確認した後(図6のFrame32信号上の丸で示している)、調停グラント信号Magrnt信号を出力してバス1及びバス2に対するバス権をバスマスタユニット9に与える。なお、調停回路12の調停動作については、一般的に良く知られているため、説明を省略する。調停グラント信号Magrntを受け取ったバスマスタ制御回路34は、アクティブなFrame32信号及びMaster信号をバス制御線に出力し、読み出し選択信号を出力する。
The bus
マルチプレクサ35A、35B、35C及び36は、読み出し選択信号に応答してDIDデータ、アドレスデータADD、コマンドデータCMDをバスDID線、バスアドレス線、バスコマンド線にそれぞれ出力する。なお、DIDはバスマスタユニット9の外部から供給されているものとする。バス2に出力されたアドレスデータADD、コマンドデータCMD、DIDデータ、アクティブ状態のMaster信号は、共通制御コマンドバス50を介してバス1に伝達される。バス1とバス2との間に接続された図2のデータ変換ユニット3は、タイミング制御部22によって、バス2のFrame32信号をFrame64信号としてバス1に出力する。このFrame32信号とFrame64信号とによって、バス2及びバス1の占有を同時に行なうことができる。すなわち、調停回路12による一度の調停によって、バス幅の異なるバス1及びバス2の占有を行なうことが可能となる。
The
バス1に接続された図5のバススレーブユニット6は、バス1上のアドレスデータADDが、マップアドレス線によって示されているアドレスの範囲に入っているかどうかをアドレス比較器46にて比較する。アドレス比較器46は、アドレスデータADDがマップアドレス線によって示されるアドレスの範囲内に入っている場合には、バススレーブ制御回路44に一致信号を出力すると共にデバイスが選択されたことを示すDevsel信号としてバス制御線に出力する。バススレーブ制御回路44は、一致信号に応答して書き込み許可信号を出力する。バススレーブ制御回路44は、一致信号に応答してメモリ40がコマンドデータCMDにより要求された処理を実行できるかどうかを状態信号によって判断し、実行可能な状態であればAck信号、実行できない状態であればNack信号を出力する。ここでは、スレーブ制御回路44は、メモリ40がコマンドを実行可能であるとしてAck信号を出力している。
The
Ack信号は、64ビット制御コマンド線内のバス制御線及びバス2を介してデータ変換ユニット3のタイミング制御部22に供給され、32ビット制御コマンド線内のバス制御線及びバス1を介してバスマスタユニット9のバスマスタ制御回路34に供給される。ここでは、スプリット転送の場合を想定しているため、バスマスタ制御回路34は、入力されたAck信号に応答してFrame32信号をインアクティブにすると共にタイミング制御回路38に完了信号を供給する。完了信号を受け取ったタイミング制御回路38は、CPU30に完了信号MCmdAckを出力する。このとき、Frame32がインアクティブになったことに応答してFrame64信号もインアクティブとされる。このようにして、バス1及びバス2を占有から開放する。
The Ack signal is supplied to the
バススレーブユニット6のバススレーブ制御回路44は、Devsel信号及びAck信号を出力すると共に転送開始信号をタイミング制御回路47に対して出力する。また、バススレーブ制御回路44から出力された書き込み許可信号に応答してバスコマンドバッファ41A〜Cに書き込まれたコマンドデータ、アドレスデータ及びDIDデータは、タイミング制御回路47が転送開始信号に応答して出力する転送リクエスト信号と共にメモリ40に供給される。コマンドデータ(リードコマンド)がメモリ40に供給され、メモリ40内でのリードデータの準備がととのった場合には、メモリ40は、リードデータをバスリードデータバッファ43に供給すると共に完了信号をタイミング制御回路47に出力する。タイミング制御回路47は、完了信号に応答してリードデータ転送開始信号をバススレーブ制御回路44に出力する。
The bus slave control circuit 44 of the
リードデータ転送開始信号を受け取ったバススレーブ制御回路44は、バスの占有権を得るために、調停リクエスト信号Sareqを調停回路12に対して出力する。調停回路12は、調停リクエスト信号Sareqに応答して調停を行い、調停グラント信号Sagrnt信号を出力する。バススレーブ制御回路は、調停グラント信号Sagrnt信号に応答して、バス1の占有を示すアクティブなFrame64信号を出力する。バス1上のFrame64信号は、バスマスタユニット9が出力したFrame32信号と同様に、データ変換ユニット3のタイミング制御部22を介してバス2のFrame32信号となる。また、バススレーブ制御回路44は、Frame64信号と共に、コマンドデータCMD、マスタを特定するためのDIDデータを出力する。
The bus slave control circuit 44 that has received the read data transfer start signal outputs an arbitration request signal Sareq to the
コマンドデータとDIDデータとは、バス1から共通制御コマンドバスを介してバス2に送られる。バス2に接続されたバスマスタ制御回路34は、Master信号がインアクティブとなっているとき比較信号を出力し、DID比較回路37は、比較信号によって活性化される。したがって、DID比較回路37によって、バス1のバスDID線上のDIDデータと、バスマスタユニットのDIDの値とが比較される。DID比較回路37が一致信号を出力した場合には、バスマスタ制御回路34は、Ack信号をバス1のバス制御線に出力する。
Command data and DID data are sent from the
バス制御線上のAck信号を共通制御コマンドバス及びバス2を介して受け取ったバススレーブ制御回路44は、読み出し許可信号を出力すると共に、64ビットデータ線上のデータが有効であることを示すDvalid64信号をアクティブにする。マルチプレクサ45は、読み出し許可信号に応答してバスリードデータバッファ43に書き込まれたリードデータRD0〜RD3を順次64ビットのバスリードデータ線に出力する。
The bus slave control circuit 44 that has received the Ack signal on the bus control line via the common control command bus and the
データ変換ユニット3は、64ビット幅のリードデータRD0〜RD3をバス1の64ビットデータ線を介して受け取り、マルチプレクサ23及び24を介して64ビット幅のデータバッファに書きこむ。このとき、64ビットのリードデータは、マルチプレクサ23と24に対応して上位32ビットのリードデータと下位32ビットのリードデータとに分けられ、タイミング制御部からの書き込み選択信号によってデータバッファ21に書きこまれる。書き込まれた64ビットのリードデータは、タイミング制御部22からの32ビット出力選択信号に対応して32ビットのリードデータとして順次読み出される。このときタイミング制御部22は、32ビットの出力選択信号を出力すると共に32ビットのデータRD0〜RD7が有効であることを示すDvalid32をアクティブにする。
The
ここで、タイミング制御部22は、Frame信号及びAck信号がどちらのバスから送られてきたのかに対応してビット変換の制御を行なっているものとする。すなわち、タイミング制御部22が、Frame32信号を受け取り、64ビット制御コマンド線からAck信号を受け取った場合は、32ビットから64ビットへ、逆に、Frame64信号を受け取り32ビット制御コマンド線からAck信号を受け取った場合には64ビットから32ビットへ変換するように制御を行なう。なお、タイミング制御部22が、同一の方向からFrame信号及びAck信号を受け取った場合は、マスタ側とスレーブ側が同じデータ幅を有していることを示しているため、データ変換ユニット3は変換を行なわない。このように、変換が不要なときには、データ変換ユニット3が動作させないことによって、消費電力を低減することができる。
Here, it is assumed that the
バススレーブ制御回路44は、リードデータの出力が終了したことに応答してDvalid64信号をインアクティブにすると共にFrame64をインアクティブにする。ただし、本実施例では、データの個数が予め分かっているため、バス1の使用効率を向上させるためにDvalid64信号よりも1クロック早くFrame64をインアクティブにしている。バスマスタ制御回路34は、DID比較回路37が一致信号を出力し、Dvalid32信号がアクティブとなっているため、バスリードデータバッファ33に書きこみ許可信号を出力する。書きこみ許可信号に応答して、バスリードデータバッファ33は、バス2のバスリードデータ線上の32ビットリードデータを順次取りこみ、リードデータとしてCPU30に供給する。
In response to the end of the output of the read data, the bus slave control circuit 44 inactivates the Dvalid64 signal and inactivates the
データ変換ユニット3のタイミング制御部22は、データの個数に応じた期間だけDvalid32信号をアクティブにすると共に、最後のデータに対応してFrame32信号をインアクティブにする。ただし、本実施例では、バス2の使用効率を向上させるためにDvalid32信号よりも1クロック早くFrame32をインアクティブにしている。このようにして、32ビットのデータ幅を有するCPU30から64ビットのデータ幅を有するメモリ40に対するリードコマンドが実行される。
The
次に、バスマスタユニット4に接続された64ビットのデータ幅を有する外部マスタユニットからバススレーブユニット10に接続された32ビットのデータ幅を有する外部スレーブユニットに対するリードコマンドが実行された場合について、図7を参照して説明する。外部マスタユニットが64ビットのデータ幅を有するバスマスタユニット4に対して、アドレスデータADD、コマンドデータCMD及び転送リクエスト信号Mreqを出力してから、32ビットのデータ幅を有するバススレーブユニット10がバスマスタユニット4に対してCMD、DIDを送りバスマスタユニット4がAck信号を出力する動作については、図6に記載されたタイミングと実質的に同一のため説明を省略する。
Next, when a read command is executed from an external master unit having a 64-bit data width connected to the
バスマスタユニット4からバス1上に出力されたAck信号を共通制御コマンドバス及びバス2を介して受け取ったバススレーブ制御回路44は、読み出し許可信号を出力すると共に、データが有効であることを示すDvalid32信号をアクティブにする。マルチプレクサ45は、読み出し許可信号に応答してバスリードデータバッファ43に書き込まれたリードデータRD0〜RD7を順次32ビットのバスリードデータ線に出力する。
The bus slave control circuit 44 that has received the Ack signal output from the
データ変換ユニット3は、32ビット幅のリードデータRD0〜RD7を32ビットデータ線を介して受け取り、マルチプレクサ23及び24を介してデータバッファ21に書きこむ。このとき、32ビットのリードデータは、マルチプレクサ23と24が、タイミング制御部22からの書きこみ選択信号に応答して交互にアクティブにされるため、データバッファ21の上位32ビットと下位32ビットに交互に書きこまれる(データバッファの上位ビットと下位ビットのどちらから順に書き込むかは設計に応じて変更可能である)。書き込まれた32ビットのリードデータは、タイミング制御部22からの64ビット出力選択信号に対応して64ビットのリードデータとして読み出される。このときタイミング制御部22は、32ビットのリードデータRD0〜RD7の半分以上を受信したことに応答して、すなわちRD3を受信したことに応答して、64ビットの出力選択信号を出力すると共に64ビットのデータRD0〜RD3が有効であることを示すDvalid64信号をアクティブにする。
The
バススレーブ制御回路44は、リードデータの出力が終了したことに応答してDvalid32信号をインアクティブにすると共にFrame32信号をインアクティブにする。ただし、本実施例では、データの個数が予め分かっているため、バス1の使用効率を向上させるためにDvalid64信号よりも1クロック早くFrame64をインアクティブにしている。バスマスタ制御回路34は、DID比較回路37が一致信号を出力し、Dvalid64信号がアクティブとなっているため、バスリードデータバッファ33に書きこみ許可信号を出力する。書きこみ許可信号に応答して、バスリードデータバッファ33は、バス2のバスリードデータ線上の64ビットリードデータを順次取りこみ、リードデータとしてCPU30に供給する。
In response to the end of the output of the read data, the bus slave control circuit 44 inactivates the Dvalid32 signal and inactivates the Frame32 signal. However, in this embodiment, since the number of data is known in advance, the
データ変換ユニット3のタイミング制御部22は、データの個数に応じた期間だけDvalid64信号をアクティブにすると共に、最後のデータに対応してFrame64信号をインアクティブにする。ただし、本実施例では、バス1の使用効率を向上させるためにDvalid64信号よりも1クロック早くFrame64をインアクティブにしている。このようにして、64ビットのデータ幅を有する外部マスタユニットから32ビットのデータ幅を有する外部スレーブユニットに対するリードコマンドが実行される。
The
次に、バスマスタユニット4に接続された64ビットのデータ幅を有する外部マスタユニット(図示しない)からバススレーブユニット10に接続された32ビットのデータ幅を有する外部スレーブユニット(図示しない)に対するライトコマンドが実行された場合について、図8を参照して説明する。
Next, a write command from an external master unit (not shown) having a data width of 64 bits connected to the
ライトコマンドが実行される場合には、外部マスタユニットからバスマスタユニット4に対してライトデータData64、アドレスデータADD、コマンドデータCMDが送られてくる。このとき、バスマスタユニット4がアドレスデータADD、コマンドデータCMD、DIDデータをバススレーブユニット10に対して出力し、バススレーブユニット10がDevsel及びAck信号を返してくるまでの動作については、リードコマンドを実行した図6及び図7のタイミングと実質的に同一のため説明を省略する。したがって、バススレーブユニット10がAck信号を返してきたところから説明を行う。
When a write command is executed, write
バスマスタユニット4のバスマスタ制御回路34は、バススレーブユニット10が出力したAck信号を、バス制御線を介して受け取ると、マルチプレクサ36に対して読み出し選択信号を出力する。マルチプレクサ36は、読み出し選択信号に応答して、バスライトデータバッファ32に保持された64ビットのライトデータWD0〜WD3をバスライトデータ線に出力すると共に、これらのデータが有効であることを示すDvalid64信号を64ビットデータバリッド線に出力する。また、バスマスタ制御回路34は、データの転送が終了したことに応答してFrame64信号及びMaster信号をインアクティブにする。ただし、本例では、バス1の使用効率を向上させるためにDvalid64信号よりも1クロック早くFrame64及びMaster信号をインアクティブにしている。
When the bus
ライトデータWD0〜WD3及びDvalid64信号は、バス1を介してデータ変換ユニット3に供給される。64ビットのライトデータWD0〜WD3は、64ビットデータ線を介してマルチプレクサ23、24に供給され、タイミング制御部22の書き込み選択信号に応答してデータバッファ21に書き込まれる。この書きこみ動作は、リードコマンドを実行して64ビットのデータがデータバッファに書きこまれる場合と同様にタイミング制御部22及びマルチプレクサ23、24によって実行される。さらに、タイミング制御部22は、データバッファ21に書き込まれたライトデータWD0〜WD3をバス2に出力するため、Dvalid64信号に応答して32ビット出力選択信号をマルチプレクサ26に対して出力して32ビットデータ線に32ビットのライトデータWD0〜WD7を順次出力すると共に、Dvalid32信号を32ビットデータバリッド信号線に出力する。
The write data WD0 to WD3 and the Dvalid64 signal are supplied to the
バススレーブユニット10のバススレーブ制御回路44は、アドレスデータADDにより自分が選択されていることが分かっているので、Dvalid32信号に応答してバスライトデータバッファ42に対して書き込み許可信号及び転送開始信号を出力する。バスライトデータバッファ42は、書き込み許可信号に応答してバスライトデータ線上のライトデータWD0〜WD7を保持する。バススレーブ制御回路44は、ライトデータWD0〜WD7を全て受け取ったことに応答してDvalid32信号及びFrame32信号をインアクティブにする。ただし、本実施例では、バス2の使用効率を向上させるためにDvalid32信号よりも1クロック早くFrame32をインアクティブにしている。
Since it is known that the bus slave control circuit 44 of the
一方、転送開始信号を受け取ったタイミング制御回路47は、外部スレーブユニットに対して転送リクエストを出力する。外部スレーブユニットは、転送リクエストに応答して、コマンドデータCMD、アドレスデータADD、DIDデータ及びライトデータWD0〜WD7を受け取り、コマンドデータCMDに基づいて書き込みを実行する。このようにして、64ビットのデータ幅を有する外部マスタユニットから32ビットのデータ幅を有する外部スレーブユニットへのライトコマンドが実行される。
On the other hand, the
上述した64ビットのデータ幅を有する外部マスタユニットから32ビットのデータ幅を有する外部スレーブユニットへのライトコマンドが実行される場合とは逆に、32ビットのデータ幅を有する外部マスタユニットから64ビットのデータ幅を有する外部スレーブユニットへのライトコマンドが実行された場合は、図9に示すように、バスマスタユニットから32ビット幅のライトデータWD0〜WD7の半分以上を受け取るまで64ビット幅のライトデータWD0〜WD3の出力及びDvalid64の出力を待つこと及びデータの変換が逆になるようにデータ変換ユニット3のタイミング制御部22が制御することを除いては、上述のライトコマンドが実行される場合と同様のため、説明を省略する。また、データの変換の仕方についても、上述したリードコマンドを実行した場合において説明済みのため、説明を省略する。
In contrast to the case where the write command is executed from the external master unit having the data width of 64 bits to the external slave unit having the data width of 32 bits, 64 bits from the external master unit having the data width of 32 bits is executed. When a write command to an external slave unit having a data width of 64 bits is executed, as shown in FIG. 9, 64-bit write data is received until more than half of 32-bit write data WD0 to WD7 is received from the bus master unit. The above-described write command is executed except that the output of WD0 to WD3 and the output of Dvalid64 are waited and the
このように、本実施例のバス接続回路では、リードデータバスとライトデータバスが共通の場合であって、スプリット転送を行う際に、バス間を越える際のバス権の調停が不要で、データの変換だけを行えばよいため、リードアクセス及びライトアクセスにおけるクロックサイクル数を少なくすることができる。 As described above, in the bus connection circuit of this embodiment, the read data bus and the write data bus are common, and when split transfer is performed, arbitration of the bus right between buses is unnecessary, and the data Therefore, the number of clock cycles in read access and write access can be reduced.
また、送信元(例えばCPU)は、送信先(例えばメモリ)からのAck信号を受け取ったことに応答して、送信元が接続されているバスのバス権を開放する。したがって、送信元から送信先へのデータ転送は、同一バスサイクル内に行われる。そのため、データ転送エラー発生時にも、バスサイクルが終了するまでは送信元でデータが保存されているためデータの喪失を生じることがない。なお、送信先へのデータ転送エラーが発生した場合には、バス1とバス2間に共通制御コマンドバスを介して、送信先がNACK信号を送出することによって、送信元へのデータ転送エラー発生を通知することができる。
Further, in response to receiving the Ack signal from the transmission destination (for example, memory), the transmission source (for example, CPU) releases the bus right of the bus to which the transmission source is connected. Therefore, data transfer from the transmission source to the transmission destination is performed within the same bus cycle. For this reason, even when a data transfer error occurs, data is not lost because data is stored at the transmission source until the bus cycle is completed. When a data transfer error to the transmission destination occurs, a data transfer error to the transmission source occurs when the transmission destination sends a NACK signal between the
さらに、データ変換が必要な条件を抽出してデータの変換を行うハードウェアのみを用意すればよく、制御コマンド等を完全に解析する必要はないため、回路構成が簡単になり、必要なハードウェア量を少なくすることができる。また、この例のバス制御回路では、バス権の調停回数が少いため遅延が少なくなる。したがって、バスを占有している期間が短くなり、その結果、バスのスループットを向上できるようになる。なお、DID比較回路がバスマスタユニットに含まれているものを記載したが、バスマスタユニットの外部に独立して設けても良い。 Furthermore, it is only necessary to prepare the hardware that performs data conversion by extracting the conditions that require data conversion, and it is not necessary to analyze the control commands completely, so the circuit configuration is simplified and the necessary hardware is The amount can be reduced. In the bus control circuit of this example, the delay is reduced because the number of bus arbitrations is small. Therefore, the period of occupying the bus is shortened, and as a result, the throughput of the bus can be improved. Although the DID comparison circuit is included in the bus master unit, it may be provided outside the bus master unit.
以上、第1の実施例においては、スプリット転送を行なう場合について説明したが、以下、ノンスプリット転送を行なう場合について説明する。 As described above, in the first embodiment, the case of performing split transfer has been described. Hereinafter, the case of performing non-split transfer will be described.
◇第2実施例
図10は、本発明の第2実施例であるバスシステムの構成を示すブロック図、図11は、本実施例における、32ビットバスマスタから64ビットスレーブユニットへのリードアクセス時のデータ転送動作を示すタイミングチャート、図12は、本実施例におけるコマンドの概要を示す図である。
Second Embodiment FIG. 10 is a block diagram showing the configuration of a bus system according to the second embodiment of the present invention, and FIG. 11 shows a read access from a 32-bit bus master to a 64-bit slave unit in this embodiment. FIG. 12 is a timing chart showing the data transfer operation. FIG. 12 is a diagram showing an outline of commands in this embodiment.
本発明の第2の実施例として、ノンスプリット転送を行なう場合のバスシステムを、図10を用いて説明する。ノンスプリット転送では、バスマスタユニットからコマンドが出力されてからバススレーブユニットが処理を行ないバスマスタユニットにデータを返すまでバスを占有するため、バスマスタユニットはDIDデータを必要とせず、また、バススレーブユニットは、調停動作を必要としない。したがって、第2の実施例のバススレーブユニット及び調停回路は、これらの間を接続するための調停リクエスト線、調停グラント線を有していない点で、第1の実施例と異なる。第1の実施例と同一の構成要素については、同一の番号を使用し説明を省略する。 As a second embodiment of the present invention, a bus system for non-split transfer will be described with reference to FIG. In non-split transfer, the bus master unit occupies the bus until the bus slave unit performs processing and returns data to the bus master unit after the command is output from the bus master unit, so the bus master unit does not require DID data. No arbitration is required. Therefore, the bus slave unit and the arbitration circuit of the second embodiment are different from those of the first embodiment in that they do not have an arbitration request line and an arbitration grant line for connecting them. Constituent elements that are the same as those in the first embodiment are denoted by the same reference numerals and description thereof is omitted.
以下、バスマスタユニット8に接続された32ビットのデータ幅を有する外部マスタユニットがバススレーブユニット6Aに接続された64ビットのデータ幅を有する外部スレーブユニットに対してリードコマンドを出力した場合の動作について、図10、図11を参照しながら説明する。なお、外部マスタユニットが32ビットのデータ幅を有するバスマスタユニットに対して、アドレスデータADD、コマンドデータCMD及び転送リクエスト信号Mreqを出力してから、64ビットのデータ幅を有するバススレーブユニット6Aがバスマスタユニット8に対してDevsel信号及びAck信号を出力するまでの動作については、図6のタイミングと実質的に同一のため説明を省略する。また、図10のバススレーブユニットは、図5のバススレーブユニットにおいて、バスDIDバッファ41Cおよびバススレーブ制御回路44が調停回路12に対してバス権獲得に関する動作を行なわない以外は、実質的に同一のため図5を参照して説明する。
Hereinafter, an operation when an external master unit having a 32-bit data width connected to the
バススレーブユニット6Aのバススレーブ制御回路44は、Devsel信号及びAck信号と共に転送開始信号を出力する。外部スレーブユニットは、転送開始信号、アドレスデータADD及びコマンドデータCMDに応答して処理を実行し、リードデータRD0〜RD3をバススレーブユニット6Aに出力する。リードデータRD0〜RD3を受け取ったバススレーブユニット6Aは、バス2内のバスリードデータ線を介してリードデータRD0〜RD3をデータ変換ユニット3に出力すると共にバス制御線にDvalid64信号を出力する。また、バススレーブユニット6Aは、リードデータの出力が完了するとDvalid64信号をインアクティブにする。
The bus slave control circuit 44 of the
データ変換ユニット3は、Dvalid64信号とリードデータRD0〜RD3を受け取り、Dvalid64信号に応答してDvalid32信号を出力すると共に、64ビットのリードデータRD0〜RD3を32ビットのリードデータRD0〜RDに変換して出力する。このときデータ変換ユニット3のタイミング制御部22は、32ビットのリードデータRD0〜RD7の出力が終了したことに応答してDvalid32信号をインアクティブにする。32ビットのリードデータRD0〜RD7を受け取ったバスマスタユニット8のバスマスタ制御回路34は、リードデータRD0〜RD7の受け取りが終了したことに応答してFrame信号をインアクティブにし、バス1を開放する。ただし、本実施例では、データのサイズが予め分かっているため、受け取りが終了する1クロック前にFrame信号をインアクティブにし、バスを開放している。
The
なお、それぞれのユニット内の動作については、スプリット転送固有の動作を除いて、第1の実施例で説明したスプリット転送によるリードコマンド実行時の説明と同様である。このようにノンスプリット転送をバス幅の異なるバス間で実行する場合、二つのバスに対して一つの調停回路を設け、双方のバス権を一度のバスマスタユニットからの調停リクエストによって得ることができる。 The operation in each unit is the same as the description at the time of executing the read command by the split transfer described in the first embodiment except for the operation unique to the split transfer. When non-split transfer is executed between buses having different bus widths as described above, one arbitration circuit is provided for two buses, and both bus rights can be obtained by a single arbitration request from the bus master unit.
このように、本実施例のバス接続回路では、リードデータバスとライトデータバスが共通の場合であって、ノンスプリット転送を行う際に、バス間を越える際のバス権の調停が不要で、データの変換だけを行えばよいため、リードアクセス及びライトアクセスにおけるクロックサイクル数を少なくすることができる。本実施例でも、データ転送エラー発生時に送信元でデータの喪失が生じないとともに、送信元へのデータ転送エラー発生通知が可能なことは、第1実施例の場合と同様である。 Thus, in the bus connection circuit of the present embodiment, the read data bus and the write data bus are common, and when performing non-split transfer, arbitration of the bus right when crossing between buses is unnecessary, Since only data conversion needs to be performed, the number of clock cycles in read access and write access can be reduced. In this embodiment as well, data loss does not occur at the transmission source when a data transfer error occurs, and a data transfer error occurrence notification to the transmission source is possible as in the case of the first embodiment.
さらに、従来技術のバスマスタ制御回路やバススレーブ制御回路におけるような、コマンド制御信号の細部にわたる制御が不要で、データ変換が必要な条件を抽出してデータの変換を行うハードウェアのみを用意すればよいので、回路構成が簡単になり、必要なハードウェア量を少なくすることができる。この例のバス接続回路は、スプリット転送方式の場合と比較して、スレーブ側のハードウェア量は少ないが、バスを占有する期間が長くなるため、第1の実施例に比べてスループットは低下する。しかしながら、従来例のようにバスブリッジ回路を用いたノンスプリット転送の場合と比べれば、スループットが向上する。 Furthermore, it is not necessary to control the command control signal in detail as in the conventional bus master control circuit and bus slave control circuit, and only hardware that extracts the conditions that require data conversion and performs data conversion is prepared. Since it is good, the circuit configuration is simplified, and the amount of necessary hardware can be reduced. The bus connection circuit of this example has a smaller amount of hardware on the slave side than the split transfer method, but the period of occupying the bus becomes longer, so the throughput is lower than that of the first embodiment. . However, the throughput is improved as compared with the case of non-split transfer using a bus bridge circuit as in the conventional example.
◇フローチャートの説明図13は、本実施例のバス接続回路における、バス権の調停からバス使用までの処理の流れを示すフローチャート、図14は、本実施例のバスシステムにおける、スプリット転送時のデータ変換ユニットの処理手順を説明するフローチャート、図15は、本実施例のバスシステムにおける、スプリット転送時のデータ変換ユニットの処理手順を説明するフローチャート、図16は、本実施例のバスシステムにおける、バス権の調停動作を含む、バスマスタユニットの処理を示すフローチャート、図17は、本実施例のバスシステムにおける、バス権の調停動作を含む、バスマスタユニットの処理を示すフローチャート、図18は、本実施例のバスシステムにおける、バス権の調停動作を含む、バススレーブユニットの処理を示すフローチャート、図19は、本実施例のバスシステムにおける、バス権の調停動作を含む、バススレーブユニットの処理を示すフローチャートである。 ◇ Explanation of Flowchart FIG. 13 is a flowchart showing a flow of processing from bus right arbitration to bus use in the bus connection circuit of this embodiment, and FIG. 14 is data at the time of split transfer in the bus system of this embodiment. FIG. 15 is a flowchart for explaining the processing procedure of the data conversion unit at the time of split transfer in the bus system of the present embodiment. FIG. 16 is a flowchart for explaining the processing procedure of the conversion unit. FIG. 17 is a flowchart showing the processing of the bus master unit including the bus arbitration operation in the bus system according to the present embodiment. FIG. 18 is the flowchart showing the processing of the bus master unit including the arbitration operation of the right. Of bus slave units, including bus arbitration Flowchart showing a sense, FIG. 19, in the bus system of the present embodiment includes an arbitration operation of the bus right is a flowchart showing the processing of the bus slave units.
次に、図13に示すフローチャートを参照して、この例のバス接続回路における、バス権の調停からバス使用までの処理の流れを説明する。図2のシステム構成図に示されるように、調停回路12からすべてのバスマスタユニットとバススレーブユニットに調停リクエスト線と調停グラント線とが接続されている。調停リクエスト線は、バスマスタユニットが転送開始したいときに使用する。調停グラント線は、バス権の調停が成立したとき調停回路が出力するものであって、複数の調停グラント線のうちいずれか一つだけがアクティブにされる。調停リクエスト線が同時に複数、アクティブにされている場合には、優先度を考慮して調停を行い、従って、いずれか一つのバスマスタユニットに対する調停グラント線のみがアクティブにされる。
Next, with reference to the flowchart shown in FIG. 13, the flow of processing from arbitration of the bus right to use of the bus in the bus connection circuit of this example will be described. As shown in the system configuration diagram of FIG. 2, an arbitration request line and an arbitration grant line are connected from the
いま、外部回路(外部マスターユニット)から転送要求が発生して、バスマスタ制御回路(バスマスターユニット)に転送開始信号が出力されると(ステップS11)、当該バスマスタ制御回路に接続されている調停グラント線がアクティブ状態か否かをみる(ステップS12)。調停グラント線がアクティブ状態でないときは、調停リクエスト線をアクティブにして(ステップS13)、対応する調停グラント線がアクティブ状態になるのを待つ。 When a transfer request is generated from an external circuit (external master unit) and a transfer start signal is output to the bus master control circuit (bus master unit) (step S11), the arbitration grant connected to the bus master control circuit It is checked whether or not the line is in an active state (step S12). When the arbitration grant line is not in the active state, the arbitration request line is activated (step S13) and waits for the corresponding arbitration grant line to be in the active state.
調停グラント線がアクティブ状態になったときは、バス上において、バスフレーム信号(Frame64又はFrame32)がアクティブ状態か否かをみて(ステップS14)、アクティブ状態のときはバスが使用中なので、バスフレーム信号がインアクティブ状態になるまで待つ(ステップS15)。バスフレーム信号がアクティブ状態でなくなったときは、バスが利用可能なので転送を開始し(ステップS16)、転送終了時、バス権をインアクティブにして、バスフレーム信号をインアクティブにすることによってバスを開放して(ステップS17)、初期状態に戻る。
When the arbitration grant line becomes active, it is checked whether the bus frame signal (
次に、図14及び図15に示すフローチャートを参照して、図1のバス接続回路における、スプリット転送時のデータ変換ユニット3の処理手順を説明する。
Next, the processing procedure of the
(1) 32ビットのバスマスタユニットから、64ビットのバススレーブユニットに対するリードアクセス時
調停結果、バス権が付与された状態で、バスマスタユニットから32ビット側のバスに出力されるFrame32がアクティブにされていたとき(ステップS111)、バスマスタユニットからバススレーブユニットへの転送であって(ステップS112)、リードアクセスのときは(ステップS113)、リードコマンド伝送ではデータ変換ユニットはデータを処理する必要がないため、Frame32をインアクティブにして、そのバスサイクルが終了するまで待つ(ステップS110)。
(1) Frame32 output from the bus master unit to the 32-bit bus is activated in the state where the bus right is granted as a result of arbitration during read access from the 32-bit bus master unit to the 64-bit bus slave unit. (Step S111), it is a transfer from the bus master unit to the bus slave unit (Step S112), and at the time of read access (Step S113), the data conversion unit does not need to process data in the read command transmission. Frame 32 is made inactive and waits until the bus cycle is completed (step S110).
バススレーブユニットでリードデータの準備ができたことによって、バススレーブユニットから64ビット側のバスに出力されるFrame64がアクティブにされると(ステップS101)、バススレーブユニットからリードデータの有効期間を示すDvalid64がアクティブにされるまで待ち(ステップS105)、Dvalid64がアクティブになっている間、バススレーブユニットからData64を受信する(ステップS106)。
When
そして、バススレーブユニットから64ビットのデータを受信しながら、32ビット側のバスへのDvalid32をアクティブにし、受信したData64を半分づつData32として32ビット側のバスに出力する(ステップS107)。その後、バススレーブユニットからのデータ転送が終了し、64ビット側のバスでFrame64がインアクティブにされても、32ビット側のバスではFrame32をアクティブにし続け(ステップS108)、最後に、バススレーブユニットから受信したデータがなくなったら、Frame32をインアクティブにして、バスサイクルを終了する(ステップS109)。
Then, while receiving 64-bit data from the bus slave unit, Dvalid 32 to the 32-bit bus is activated, and the received
(2) 64ビットのバスマスタユニットから、32ビットのバススレーブユニットに対するリードアクセス時
調停結果、バス権が付与された状態で、バスマスタユニットから64ビット側のバスに出力されるFrame64がアクティブにされていた場合には(ステップS101)、バスマスタユニットからバススレーブユニットへの転送であって(ステップS102)、リードアクセスのときは(ステップS103)、データ変換ユニットはデータを処理する必要がないので、Frame64をインアクティブにして、そのバスサイクルが終了するまで待つ(ステップS110)。
(2) Frame64 output from the bus master unit to the 64-bit bus is activated in the state where the bus right is granted as a result of arbitration during read access from the 64-bit bus master unit to the 32-bit bus slave unit. If this is the case (step S101), it is a transfer from the bus master unit to the bus slave unit (step S102), and in the case of read access (step S103), the data conversion unit does not need to process data, so
バススレーブユニットでリードデータの準備ができたことによって、バススレーブユニットから32ビット側のバスに出力されるFrame32がアクティブにされると(ステップS111)、バススレーブユニットからのリードデータの有効期間を示すDvalid32がアクティブにされるまで待ち(ステップS115)、Dvalid32がアクティブになっている間、バススレーブユニットからData32を受信する(ステップS116)。 When Frame 32 output from the bus slave unit to the 32-bit bus is activated (step S111) because the read data is ready in the bus slave unit, the valid period of the read data from the bus slave unit is increased. Wait until the Dvalid 32 shown is activated (step S115), and receive the Data32 from the bus slave unit while the Dvalid32 is active (step S116).
そして、転送サイズの半分以上のデータを受信するまで待って(ステップS117)、64ビット側のバスへのDvalid64をアクティブにし、Data32のデータを2回分結合して、Data64として64ビット側のバスに出力する(ステップS118)。この際、2回分のデータのどちらを64ビットデータの上位にするかは、64ビットのデータの上位と下位のどちらを高いアドレスに数えるかという、システムによって定まるアドレッシングモードに依存する。その後、バススレーブユニットからのデータ転送が終了し、32ビット側のバスでFrame32がインアクティブにされても、64ビット側のバスではFrame64をアクティブにし続け(ステップS119)、最後に、バススレーブユニットから受信したデータがなくなったら、Frame64をインアクティブにして、バスサイクルを終了する(ステップS120)。
Then, it waits until data of half or more of the transfer size is received (step S117), activates Dvalid64 to the 64-bit side bus, combines Data32 data twice, and sends it as Data64 to the 64-bit side bus. Output (step S118). At this time, which of the two times of data is higher in the 64-bit data depends on the addressing mode determined by the system, which is the higher or lower of the 64-bit data counted as a higher address. Thereafter, even if the data transfer from the bus slave unit is completed and Frame 32 is made inactive on the 32-bit bus,
(3) 32ビットのバスマスタユニットから、64ビットのバススレーブユニットに対するライトアクセス時
調停結果、バス権が付与された状態で、バスマスタユニットから32ビット側のバスにおいてFrame32がアクティブにされていたとき(ステップS111)、バスマスタユニットからバススレーブユニットへの転送であって(ステップS112)、リードアクセスでないときは(ステップS113)、64ビット側のバススレーブユニットから出力されるDevselがアクティブにされ、かつ64ビット側のACKがアクティブのときは(ステップS114)、データ変換ユニットは、バスマスタユニットから出力されるDvalid32がアクティブになるのを待つ(ステップS115)。
(3) Frame32 is activated on the 32-bit side bus from the bus master unit in the state where the bus right is granted as a result of arbitration during write access from the 32-bit bus master unit to the 64-bit bus slave unit ( In step S111), when the transfer is from the bus master unit to the bus slave unit (step S112) and not a read access (step S113), Devsel output from the 64-bit bus slave unit is activated, and 64 When the bit side ACK is active (step S114), the data conversion unit waits for the Dvalid32 output from the bus master unit to become active (step S115).
そして、Dvalid32がアクティブになっている間、データ変換ユニットは、バスマスタユニットからData32を受信して(ステップS116)、転送サイズの半分以上のデータを受信するまで待つ(ステップS117)。その後、64ビット側のバスにおいてDvalid64をアクティブにし、Data32のデータを2回分結合して、Data64としてバススレーブユニットへ出力する(ステップS118)。そして、32ビット側のバスにおいてFrame32がインアクティブにされても、64ビット側のバスではFrame64をアクティブにし続け(ステップS119)、最後に、受信したデータがなくなったら、Frame64をインアクティブにして、バスサイクルを終了する(ステップS120)。
Then, while Dvalid32 is active, the data conversion unit receives Data32 from the bus master unit (step S116) and waits until data of more than half the transfer size is received (step S117). Thereafter,
(4) 64ビットのバスマスタユニットから、32ビットのバススレーブユニットに対するライトアクセス時調停結果、バス権が付与された状態で、バスマスタユニットから64ビット側のバスに出力されるFrame64がアクティブにされていたとき(ステップS101)、バスマスタユニットからバススレーブユニットへの転送であって(ステップS102)、リードアクセスでないときは(ステップS103)、32ビット側のバススレーブユニットから出力されるDevselがアクティブになっていて、32ビット側のACKがアクティブのときは(ステップS104)、データ変換ユニットは、バスマスタユニットから出力されるDvalid64がアクティブになるのを待つ(ステップS105)。
(4) Frame64 output from the bus master unit to the 64-bit bus is activated in the state where the bus right is granted as a result of arbitration during write access from the 64-bit bus master unit to the 32-bit bus slave unit. When it is a transfer from the bus master unit to the bus slave unit (step S102) and not a read access (step S103), Devsel output from the 32-bit bus slave unit becomes active. When the 32-bit ACK is active (step S104), the data conversion unit waits for the
そして、Dvalid64がアクティブになっている間、データ変換ユニットは、バスマスタユニットからData64を受信して(ステップS106)、32ビット側のバスへ出力されるDvalid32をアクティブにし、Data64のデータを半分づつData32としてバススレーブユニットへ出力する(ステップS107)。その後、64ビット側のバスで出力されるFrame64がインアクティブにされても、32ビット側のバスではFrame32をアクティブにし続け(ステップS108)、最後に、受信したデータがなくなったら、Frame32をインアクティブにして、バスサイクルを終了する(ステップS109)。
While Dvalid64 is active, the data conversion unit receives Data64 from the bus master unit (step S106), activates Dvalid32 output to the 32-bit side bus, and divides the data of Data64 by half. To the bus slave unit (step S107). After that, even if
次に、図16乃至図19のフローチャートを参照して、図1のバス接続回路における、バス権の調停を含むバスマスタユニットとバススレーブユニットの処理の流れを説明する。なお、これらのフローチャートは、スプリット転送動作時の処理を示している。 Next, the flow of processing of the bus master unit and the bus slave unit including arbitration of the bus right in the bus connection circuit of FIG. 1 will be described with reference to the flowcharts of FIGS. Note that these flowcharts show processing during split transfer operation.
図16,図17は、バス権の調停動作を含む、バスマスタユニットの処理を示すフローチャートである。
(1) バスマスタユニットのコマンドとライトデータの転送動作
外部マスタユニットから転送要求が発生したとき、コマンドやアドレスを受信するとともに、ライトアクセスの場合はライトデータも受信して、それぞれバッファに格納する(ステップS201)。次に、バスマスタ制御回路に転送開始信号が出力されると(ステップS202)、バスマスタ制御回路は、調停回路へバス権の調停を要求してバス権を獲得し、バスが未使用状態になったら、バスコマンドを出力する(ステップS203)。
16 and 17 are flowcharts showing the processing of the bus master unit including the bus right arbitration operation.
(1) Bus master unit command and write data transfer operation When a transfer request is generated from the external master unit, the command and address are received, and in the case of write access, the write data is also received and stored in the buffer ( Step S201). Next, when a transfer start signal is output to the bus master control circuit (step S202), the bus master control circuit requests arbitration of the bus right from the arbitration circuit to acquire the bus right, and the bus becomes unused. The bus command is output (step S203).
そして、バススレーブユニットからDevselが返送されたか否かをみて(ステップS204)、返送されなければバスエラーなので、処理を終了して初期状態に戻る(ステップS205)。一方、Devselが返送されたときは、データの送信許可を示すACKが返送されたか否かをみて(ステップS206)、返送されなければバスエラーなので、処理を終了して初期状態に戻る(ステップS205)。 Then, it is checked whether Devsel is returned from the bus slave unit (step S204). If it is not returned, it is a bus error, so the processing is terminated and the process returns to the initial state (step S205). On the other hand, when Devsel is returned, it is checked whether or not an ACK indicating permission to transmit data has been returned (step S206). If not returned, a bus error has occurred, so the processing is terminated and the initial state is restored (step S205). ).
ACKが返送されたときは、ライトアクセスか否かをみて(ステップS207)、ライトアクセスでないときはバスサイクルが完了したので、バスを開放して初期状態に戻る(ステップS208)。ライトアクセスであったときは、ライトデータをバスに出力し(ステップS209)、転送要求を行った外部マスタユニットに転送の完了信号を出力して(ステップS210)、バスサイクルが完了したのでバスを開放して初期状態に戻る(ステップS208)。 When ACK is returned, it is checked whether or not the access is a write access (step S207). When the access is not a write access, the bus cycle is completed, and the bus is released to return to the initial state (step S208). If it is a write access, the write data is output to the bus (step S209), a transfer completion signal is output to the external master unit that has made the transfer request (step S210), and the bus cycle is completed. Open and return to the initial state (step S208).
(2) バスマスタユニットのリードデータの受信動作
また、リードアクセスの場合は、バス上のバススレーブユニットが発行したアクセスにおいて、DIDが当該バスマスタユニットのDIDと同一のときは(ステップS211)、バス上のリードデータを受信して、要求元の外部マスタユニットにリードデータを渡したのち(ステップS212)、外部マスタユニットに転送の完了信号を出力して(ステップS213)、初期状態に戻る(ステップS214)
(2) Receiving operation of read data of the bus master unit In the case of read access, when the DID is the same as the DID of the bus master unit in the access issued by the bus slave unit on the bus (step S211), After the read data is received and passed to the requesting external master unit (step S212), a transfer completion signal is output to the external master unit (step S213), and the initial state is restored (step S214). )
図18,図19は、バス権の調停動作を含む、バススレーブユニットの処理を示すフローチャートである。
(1) バススレーブユニットのコマンドとライトデータの受信動作
バス上における、バスマスタユニットが発行したアクセスにおいて、アドレスが当該バススレーブユニットのアドレス範囲に該当したとき(ステップS301)、バススレーブユニットはバス上のコマンドを受信して、バスにDevselを出力する(ステップS302)。
FIG. 18 and FIG. 19 are flowcharts showing the processing of the bus slave unit including the bus right arbitration operation.
(1) Bus slave unit command and write data reception operation When an address falls within the address range of the bus slave unit in an access issued by the bus master unit on the bus (step S301), the bus slave unit is on the bus. Is received and Devsel is output to the bus (step S302).
そして、コマンドを受信可能か否かをみて(ステップS303)、受信可能でないときは、バス上に送信不可を示すNACKを出力して、初期状態に戻る(ステップS304)。一方、コマンドが受信可能であったときは、受け付け可能なコマンドか否かをみて(ステップS305)、受け付け可能なコマンドでないときは、バス上にNACKを出力して、初期状態に戻る(ステップS304)。受け付け可能なコマンドであったときは、バス上に送信許可を示すACKを出力し(ステップS306)、ライトデータを出力すべき外部スレーブユニットに転送リクエスト信号を出力して、当該コマンド,アドレス,DID等を転送する(ステップS307)。 Then, it is checked whether or not the command can be received (step S303). If the command is not received, a NACK indicating that transmission is impossible is output on the bus and the process returns to the initial state (step S304). On the other hand, when the command can be received, it is checked whether or not the command is acceptable (step S305). When the command is not acceptable, NACK is output on the bus and the initial state is returned (step S304). ). If the command is acceptable, ACK indicating transmission permission is output on the bus (step S306), a transfer request signal is output to the external slave unit to which write data is to be output, and the command, address, DID is output. Etc. are transferred (step S307).
次に、ライトアクセスか否かをみて(ステップS308)、ライトアクセスでないときは、初期状態に戻り(ステップS309)、ライトアクセスであったときは、ライトデータを受信して(ステップS310)外部スレーブユニットに転送し、転送終了したとき、外部スレーブユニットへ転送の完了信号を出力して(ステップS311)、初期状態に戻る(ステップS312)。 Next, it is checked whether or not it is a write access (step S308). If it is not a write access, it returns to the initial state (step S309). If it is a write access, the write data is received (step S310). When the data is transferred to the unit and the transfer is completed, a transfer completion signal is output to the external slave unit (step S311), and the process returns to the initial state (step S312).
(2) バススレーブユニットのリードデータ転送動作
外部スレーブユニットからリードデータの転送要求が発生して、コマンド,DIDを受信したとき(ステップS313)、バススレーブ制御回路に転送開始信号が出力される(ステップS314)。バススレーブ制御回路は調停回路にバス権を要求してバス権を獲得し、バスが未使用状態になったら、DID,コマンド,リードデータを出力するとともに(ステップS315)、外部スレーブユニットに対しては、転送の完了信号を出力して(ステップS316)、初期状態に戻る(ステップS317)。
(2) Read data transfer operation of the bus slave unit When a read data transfer request is generated from the external slave unit and a command and DID are received (step S313), a transfer start signal is output to the bus slave control circuit ( Step S314). The bus slave control circuit requests the bus right from the arbitration circuit and acquires the bus right. When the bus becomes unused, the bus slave control circuit outputs a DID, a command, and read data (step S315), and also to the external slave unit. Outputs a transfer completion signal (step S316) and returns to the initial state (step S317).
◇バスの結線に関する説明図20は、マルチプレクサを用いたバスの構成を示す図、図21は、バスマスタユニットとバススレーブユニットがともに出力する信号を伝達する場合におけるマルチプレクサ形式のバスの構成を説明する図、図22は、バスマスタユニットのみが出力する信号を伝達する場合におけるマルチプレクサ形式のバスの構成を説明する図、図23は、バススレーブユニットのみが出力する信号を伝達する場合におけるマルチプレクサ形式のバスの構成を説明する図、図24は、3ステートバッファを用いたバスの構成を示す図、図25は、バスマスタユニットとバススレーブユニットがともに信号を出力する場合における3ステートバッファ形式のバスの構成を説明する図、図26は、バスマスタユニットのみが信号を出力する場合における3ステートバッファ形式のバスの構成を説明する図、図27は、バススレーブユニットのみが信号を出力する場合における3ステートバッファ形式のバスの構成を説明する図である。 FIG. 20 is a diagram illustrating a bus configuration using a multiplexer, and FIG. 21 illustrates a multiplexer-type bus configuration when transmitting signals output from both the bus master unit and the bus slave unit. FIG. 22 is a diagram for explaining a configuration of a multiplexer-type bus when a signal output only from the bus master unit is transmitted, and FIG. 23 is a multiplexer-type bus when a signal output only from the bus slave unit is transmitted. FIG. 24 is a diagram illustrating the configuration of a bus using a three-state buffer, and FIG. 25 is a configuration of a three-state buffer bus when both the bus master unit and the bus slave unit output signals. FIG. 26 is a diagram for explaining only the bus master unit. FIG, 27 illustrating the third bus state buffer format structure in the case of force is a diagram illustrating a third bus state buffer format structure in the case where only the bus slave unit outputs a signal.
次に、図1に示されたバス接続回路におけるバス構成の例として、マルチプレクサを用いたバスの場合について説明する。図1のバス接続回路における、マルチプレクサを用いたバスは、図20に示されるように、データ変換ユニット3と、64ビットのバスマスタユニット4,5と、64ビットのバススレーブユニット6,7と、32ビットのバスマスタユニット8,9と、32ビットのバススレーブユニット10,11との間で、マルチプレクサ51〜54を介してバス1を形成し、マルチプレクサ55〜58を介してバス2を形成した構成を有している。
Next, the case of a bus using a multiplexer will be described as an example of the bus configuration in the bus connection circuit shown in FIG. As shown in FIG. 20, the bus using the multiplexer in the bus connection circuit of FIG. 1 includes a
マルチプレクサ51は、バスマスタユニット4,5からの64ビット幅の信号を切り替えて、マルチプレクサ54とデータ変換ユニット3に接続する。マルチプレクサ52は、マルチプレクサ53とデータ変換ユニット3からの64ビット幅の信号を切り替えて、バスマスタユニット4,5に接続する。マルチプレクサ53は、バススレーブユニット6,7からの64ビット幅の信号を切り替えて、マルチプレクサ52とデータ変換ユニット3に接続する。マルチプレクサ54は、マルチプレクサ51とデータ変換ユニット3からの64ビット幅の信号を切り替えて、バススレーブユニット6,7に接続する。
The
マルチプレクサ55は、バススレーブユニット8,9からの32ビット幅の信号を切り替えて、マルチプレクサ58とデータ変換ユニット3に接続する。マルチプレクサ56は、マルチプレクサ57とデータ変換ユニット3からの32ビット幅の信号を切り替えて、バスマスタユニット8,9に接続する。マルチプレクサ57は、バススレーブユニット10,11からの32ビット幅の信号を切り替えて、マルチプレクサ56とデータ変換ユニット3に接続する。マルチプレクサ58は、マルチプレクサ55とデータ変換ユニット3からの32ビット幅の信号を切り替えて、バススレーブユニット10,11に接続する。
The multiplexer 55 switches the 32-bit width signal from the
図20中に示された各信号は、すべてバスマスタユニット又はバススレーブユニットのいずれかのみが出力する信号として、省略して示されている。以下、図21乃至図23を参照して、バスマスタユニット/バススレーブユニットの両方、又はバスマスタユニットのみ、又はバススレーブユニットのみが信号を出力する場合のマルチプレクサの具体的構成について説明する。なお、バス1及びバス2は、これら3種類のマルチプレクサ構造の組み合わせによって構成されているものとする。
All the signals shown in FIG. 20 are omitted as signals output from either the bus master unit or the bus slave unit. The specific configuration of the multiplexer when both the bus master unit / bus slave unit, only the bus master unit, or only the bus slave unit outputs signals will be described below with reference to FIGS. Note that the
バス1において、バスマスタユニットとバススレーブユニットが共通に出力する信号、例えばFrame信号を伝達する場合のバスの構成を、図21を用いて説明する。このような信号を伝達するためのバス1101は、マルチプレクサX1、X2及びオア回路O1によって構成することができる。なお、図20のマルチプレクサ51及び53は、マルチプレクサX1に、マルチプレクサ52及び54はマルチプレクサX2に対応する。以下、動作について説明する。
With reference to FIG. 21, a description will be given of the configuration of the bus in the case where a signal that is commonly output by the bus master unit and the bus slave unit, for example, a Frame signal, is transmitted. The bus 1101 for transmitting such a signal can be configured by multiplexers X1 and X2 and an OR circuit O1. Note that the
バスマスタユニットM1、M2、バススレーブユニットS1、S2は、調停回路からのグラント信号に応答してフレーム信号としてFrame64_O信号を出力する場合、同時にイネーブル信号(Frame64_OE信号)を出力する。ここでFrame64_OE信号は、対応するFrame64_O信号が有効になる期間を示す信号である。これによって、4:1のマルチプレクサX1は、有効になったいずれかのFrame64_O信号のみを選択して出力する。このFrame64_O信号は、フレーム信号の入力を示すFrame64_I信号としてデータ変換ユニットに接続される。 When the bus master units M1 and M2 and the bus slave units S1 and S2 output the Frame 64_O signal as a frame signal in response to the grant signal from the arbitration circuit, they simultaneously output an enable signal (Frame 64_OE signal). Here, the Frame 64_OE signal is a signal indicating a period during which the corresponding Frame 64_O signal is valid. As a result, the 4: 1 multiplexer X1 selects and outputs only one of the valid Frame 64_O signals. This Frame 64_O signal is connected to the data conversion unit as a Frame 64_I signal indicating the input of the frame signal.
さらに、バス1101の外部からフレーム信号が供給される場合(例えばデータ変換ユニットからフレーム信号が供給される場合)には、2:1のマルチプレクサX2において、Frame64_OE信号がアクティブHIの場合、オア回路O1でバスマスタユニットM1、M2とバススレーブユニットS1、S2のFrame64_OE信号のオアをとった信号と、データ変換ユニットからのFrame64_OE信号とによって、マルチプレクサX1で選択されたFrame64_O信号と、データ変換ユニットからのFrame64_O信号とを選択して、選択されたFrame64_O信号をフレーム信号の入力を示すFrame64_I信号として、バスマスタユニットM1,M2、バススレーブユニットS1,S2に共通に接続する。 Further, when a frame signal is supplied from the outside of the bus 1101 (for example, when a frame signal is supplied from the data conversion unit), in the 2: 1 multiplexer X2, if the Frame64_OE signal is active HI, the OR circuit O1 The frame 64_O signal selected by the multiplexer X1 and the frame 64_O selected from the data conversion unit by the signal obtained by taking the OR of the frame 64_OE signal of the bus master units M1 and M2 and the bus slave units S1 and S2 and the frame 64_OE signal from the data conversion unit. The selected frame 64_O signal as a frame 64_I signal indicating the input of the frame signal and commonly connected to the bus master units M1 and M2 and the bus slave units S1 and S2. That.
従って、バスマスタユニットM1,M2、バススレーブユニットS1,S2、データ変換ユニットのいずれかがFrame64_O信号を出力したときは、フレーム信号の入力を示すFrame64_I信号として、すべてのバスマスタユニット/バススレーブユニットの入力端子及びデータ変換ユニットに接続される。 Therefore, when any of the bus master units M1 and M2, the bus slave units S1 and S2, and the data conversion unit outputs the Frame 64_O signal, the input of all the bus master units / bus slave units is performed as the Frame 64_I signal indicating the input of the frame signal. Connected to terminal and data conversion unit.
バス1において、バスマスタユニットのみが出力する信号、例えばアドレス信号を伝達する場合のバスの構成を、図22を用いて説明する。このような信号を伝達するバス1102は、マルチプレクサX3、X4、及びオア回路O2とから構成される。以下動作について説明する。例えば、バスマスタユニットM1,M2がそれぞれ、アドレス信号としてAddr_O信号を出力する場合、それぞれ同時にその有効期間を示すAddr_OE信号を出力する。これによって、2:1のマルチプレクサX3は有効になったいずれかのAddr_O信号のみを選択して出力する。選択されたAddr_O信号は、オア回路O2においてバスマスタユニットM1,M2のAddr_OE信号のオアをとった信号とともに、共通制御コマンドバスに出力される。
With reference to FIG. 22, a description will be given of the configuration of the bus in the case of transmitting a signal output from only the bus master unit, for example, an address signal, in the
さらに、バス1102の外部からAddr_O及びAddr_OEが供給される場合(バス2側のバスマスタユニットから供給される場合)2:1のマルチプレクサX4において、オア回路O2でバスマスタユニットM1,M2のAddr_OE信号のオアをとった信号と、共通制御コマンドバスからのAddr_OE信号とによって、マルチプレクサX3で選択されたAddr_O信号と、共通制御コマンドバスからのAddr_O信号とを選択して、選択されたAddr_O信号をアドレスの入力を示すAddr_I信号として、バススレーブユニットS1、S2に共通に接続する。
Further, when Addr_O and Addr_OE are supplied from the outside of the bus 1102 (when supplied from the bus master unit on the
従って、バスマスタユニットM1、M2と、共通制御コマンドバスのいずれかがAddr_O信号を出力したときは、アドレス信号の入力を示すAddr_I信号として、すべてのバススレーブユニットの入力端子及び共通制御コマンドバスに接続される。 Therefore, when any of the bus master units M1 and M2 and the common control command bus outputs the Addr_O signal, it is connected to the input terminals of all the bus slave units and the common control command bus as the Addr_I signal indicating the input of the address signal. Is done.
次に、バス1において、バススレーブユニットのみが出力する信号、例えばAck信号を伝達する場合のバスの構成を、図23を用いて説明する。このような信号を伝達するバス1103は、マルチプレクサX5、X6、及びオア回路O3とから構成される。以下動作について説明する。例えば、バススレーブユニットS1,S2がそれぞれ、送信許可信号としてACK_O信号を出力する場合、それぞれ同時にその有効期間を示すACK_OE信号を出力する。これによって、2:1のマルチプレクサX5は有効になったいずれかのACK_O信号のみを選択して出力する。選択されたACK_O信号は、オア回路O3においてバススレーブユニットS1、S2のACK_OE信号のオアをとった信号とともに共通制御コマンドバスに出力され、さらに、ACKの入力を示すACK_I信号としてデータ変換ユニットに接続される。
Next, the configuration of the bus in the case where the
さらに、バス1103の外部からAck_O、Ack_OEが供給される場合(バス2から供給される場合)には、2:1のマルチプレクサX6において、オア回路O3でバススレーブユニットS1、S2のACK_OE信号のオアをとった信号と、共通制御コマンドバスからのACK_OE信号とによって、マルチプレクサX3で選択されたACK_O信号と、共通制御コマンドバスからのACK_O信号とを選択して、選択された信号をACKの入力を示すACK_I信号として、バスマスタユニットM1、M2に共通に接続する。 Further, when Ack_O and Ack_OE are supplied from the outside of the bus 1103 (when supplied from the bus 2), in the 2: 1 multiplexer X6, the OR circuit O3 performs an OR of the ACK_OE signal of the bus slave units S1 and S2. The ACK_OE signal selected by the multiplexer X3 and the ACK_O signal from the common control command bus are selected based on the signal obtained from the common control command bus and the ACK_OE signal from the common control command bus. As the ACK_I signal shown, it is commonly connected to the bus master units M1 and M2.
従って、バススレーブユニットS1,S2と、共通制御コマンドバスのいずれかがACK_O信号を出力したときは、ACK信号の入力を示すACK_I信号として、すべてのバスマスタユニットの入力端子及び共通制御コマンドバスに接続される。 Therefore, when either of the bus slave units S1 and S2 and the common control command bus outputs the ACK_O signal, it is connected to the input terminals of all the bus master units and the common control command bus as the ACK_I signal indicating the input of the ACK signal. Is done.
マルチプレクサによるバス構成は、マルチプレクサで区切られたデータ転送経路となる配線のみを制御すればよく、3ステートバッファによるバス構成のように、長い配線を一括で制御する必要がないため、配線容量を少なくすることができ、従って高い周波数で動作できることと、信号がすべて単方向であるため、信号を増幅するためのリピータ(駆動バッファ:不図示)を挿入しやすいという利点がある。また、データ変換ユニットにとっての利点は、32ビット側の信号線と64ビット側の信号線とが同一にならないことである。そのため、例えば同じ送信許可を示すACK信号であったとしても、32ビット側の信号と64ビット側の信号とが、データ変換ユニットにとっては別の信号になるため、データ変換ユニットでこれらを区別することができる。 The bus configuration by the multiplexer only needs to control the wiring that becomes the data transfer path delimited by the multiplexer, and it is not necessary to control long wires collectively as in the bus configuration by the three-state buffer, so the wiring capacity is reduced. Therefore, there is an advantage that a repeater (driving buffer: not shown) for amplifying the signal can be easily inserted because the signal can be operated at a high frequency and all the signals are unidirectional. An advantage for the data conversion unit is that the 32-bit side signal line and the 64-bit side signal line are not the same. For this reason, even if the ACK signals indicate the same transmission permission, for example, the 32-bit side signal and the 64-bit side signal are different signals for the data conversion unit. be able to.
なお、図1のバス接続回路においては、バス構成として、マルチプレクサを用いる代わりに3ステートバッファを用いることもできるので、以下においては、この場合のバス構成について説明する。 In the bus connection circuit of FIG. 1, a 3-state buffer can be used as a bus configuration instead of a multiplexer. In the following, the bus configuration in this case will be described.
3ステートバッファを用いたバスは、図24に示されるように、データ変換ユニット3と、64ビットのバスマスタユニット4,5と、64ビットのバススレーブユニット6,7と、32ビットのバスマスタユニット8,9と、32ビットのバススレーブユニット10,11との間で、3ステートバッファ61〜68を介してバス1を形成し、3ステートバッファ69〜76を介してバス2を形成した概略構成を有している
As shown in FIG. 24, the bus using the 3-state buffer includes a
3ステートバッファ61は、バスマスタユニット4によってオンに制御されたとき、64ビットのバスマスタユニット4の出力をバス1に接続し、バッファ62は、バス1からの入力をバスマスタユニット4に接続する。3ステートバッファ63と、バッファ64と、64ビットのバスマスタユニット5との関係も同様である。3ステートバッファ65は、バススレーブユニット6によってオンに制御されたとき、64ビットのバススレーブユニット6の出力をバス1に接続し、バッファ66バス1からの入力をバススレーブユニット6に出力する。3ステートバッファ67,68と、64ビットのバススレーブユニット7との関係も同様である。
When the 3-
3ステートバッファ69は、バスマスタユニット8によってオンに制御されたとき、32ビットのバスマスタユニット8の出力をバス2に接続し、バッファ70は、バス2からの入力をバスマスタユニット8に接続する。3ステートバッファ71と、バッファ72と、32ビットのバスマスタユニット9との関係も同様である。3ステートバッファ73は、バススレーブユニット10オンに制御されたとき、32ビットのバススレーブユニット10の出力をバス2に接続し、バッファ76は、バス2からの入力をバススレーブユニット10に出力する。3ステートバッファ75,76と、32ビットのバススレーブユニット11との関係も同様である。
When the 3-
図24においては、信号線は、すべてのバスマスタユニットとバススレーブユニットが入出力する信号として表示されているが、実際には、入力だけの信号や出力だけの信号の場合も存在する。以下、図25乃至図26を参照して、バスマスタユニット/バススレーブユニットの両方、又はバスマスタユニットのみ、又はバススレーブユニットのみが信号を出力する場合のバスの具体的構成について説明する。 In FIG. 24, the signal lines are displayed as signals that are input / output by all bus master units and bus slave units. However, in reality, there are cases in which signals are only input or output only. The specific configuration of the bus in the case where both the bus master unit / bus slave unit, only the bus master unit, or only the bus slave unit outputs signals will be described below with reference to FIGS.
図25において、マルチプレクサによって構成されたバスと同様に、バスマスタユニットとバススレーブユニットがともに出力する信号、例えばFrame信号を伝達するためのバスの構成について説明する。 In FIG. 25, the configuration of the bus for transmitting signals output from both the bus master unit and the bus slave unit, for example, the Frame signal, as in the bus configured by the multiplexer, will be described.
このようなバス1201は、3ステートバッファB11,B12,B13,B14,B15及びバッファB21、B22、B23、B24,B25から構成される。バスマスタユニットM11,M12、バススレーブユニットS11,S12、及びデータ変換ユニットは、Frame64_O信号と同時にFrame64_OE信号を出力する。3ステートバッファB11,B12,B13,B14,B15は、Frame64_OE信号が有効になった場合のみ、対応するユニットからのFrame64_O信号を出力する。 Such a bus 1201 includes three-state buffers B11, B12, B13, B14, and B15 and buffers B21, B22, B23, B24, and B25. The bus master units M11 and M12, the bus slave units S11 and S12, and the data conversion unit output the Frame64_OE signal simultaneously with the Frame64_O signal. The 3-state buffers B11, B12, B13, B14, and B15 output the Frame64_O signal from the corresponding unit only when the Frame64_OE signal becomes valid.
このFrame64信号は、それぞれバッファB21,B22,B23,B24,B25を経て、フレーム出力の入力を示すFrame64_I信号として、共通にバスマスタユニットM11,M12、バススレーブユニットS11,S12、及びデータ変換ユニットに接続される。従って、バスマスタユニットM1,M2、バススレーブユニットS1,S2、及びデータ変換ユニットのいずれかがFrame64_O信号を出力したときは、フレーム信号の入力を示すFrame64_I信号として、すべてのバスマスタユニット/バススレーブユニット及びデータ変換ユニットの入力端子に接続される。
The
図26において、バスマスタユニットのみが出力する信号、例えばアドレス信号を伝達するバスの構成を説明する。このような信号を伝達するバス1202は、3ステートバッファB31〜B34によって構成される。バスマスタユニットM11,M12は、それぞれ、アドレス信号としてAddr_O信号とAddr_OE信号とを出力する。3ステートバッファB31,B32は、Addr_OE信号が有効になった場合のみ、対応するユニットからのAddr_O信号を出力する。 In FIG. 26, a configuration of a bus for transmitting a signal output only by the bus master unit, for example, an address signal will be described. The bus 1202 for transmitting such a signal is composed of 3-state buffers B31 to B34. Each of the bus master units M11 and M12 outputs an Addr_O signal and an Addr_OE signal as address signals. The 3-state buffers B31 and B32 output the Addr_O signal from the corresponding unit only when the Addr_OE signal becomes valid.
このAddr信号はバッファB33,B34を経て、アドレスの入力を示すAddr_I信号としてバススレーブユニットS11,S12に出力されるとともに、共通制御コマンドバスにも出力される。従って、バスマスタユニットM1,M2のいずれかがAddr_O信号を出力したときは、アドレスを指示するAddr信号が、すべてのバススレーブユニットの入力端子に接続されるとともに共通制御コマンドバスにも出力される。 The Addr signal is output to the bus slave units S11 and S12 through the buffers B33 and B34 as an Addr_I signal indicating an address input, and also to the common control command bus. Therefore, when either of the bus master units M1 and M2 outputs the Addr_O signal, the Addr signal indicating the address is connected to the input terminals of all the bus slave units and also output to the common control command bus.
図27においては、バススレーブユニットのみが出力する信号、例えばAck信号を伝達するバスの構成を説明している。このような信号を伝達するバス1203は、バッファ41、42、45及び3ステートバッファB43,B44とから構成される。
FIG. 27 illustrates a configuration of a bus that transmits a signal output only by the bus slave unit, for example, an Ack signal. The bus 1203 for transmitting such a signal includes
バススレーブユニットS11,S12は、送信許可を示すACK64_O信号とACK64_OE信号を出力する。これによって、3ステートバッファB43,B44は、ACK64_OE信号が有効になった場合のみ、対応するユニットからのACK64_O信号を出力する。このACK64信号は、バッファB41,B42を経てACKの入力を示すACK64_I信号として、バスマスタユニットM11,M12に出力されるとともに、バッファB45を経てデータ変換ユニットにも出力される。従って、バススレーブユニットS11,S12のいずれかがACK64_O信号を出力したときは、送信許可を示すACK64信号が、すべてのバスマスタユニットとデータ変換ユニットの入力端子に接続される。 The bus slave units S11 and S12 output an ACK64_O signal and an ACK64_OE signal indicating transmission permission. Thus, the 3-state buffers B43 and B44 output the ACK64_O signal from the corresponding unit only when the ACK64_OE signal becomes valid. The ACK64 signal is output to the bus master units M11 and M12 as the ACK64_I signal indicating the input of ACK through the buffers B41 and B42, and is also output to the data conversion unit through the buffer B45. Therefore, when any of the bus slave units S11 and S12 outputs the ACK64_O signal, the ACK64 signal indicating transmission permission is connected to the input terminals of all the bus master units and the data conversion units.
3ステートバッファによるバス構成では、配線の信号方向が双方向であるためリピータの挿入が困難であるとともに、データ転送経路の配線に接続された3ステートバッファの容量が加算されるため配線容量が大きくなり、そのため、動作周波数が一般的に低い。3ステートバッファ形式の場合のデータ変換ユニットにとっての特徴は、32ビット側の信号と64ビット側の信号とが区別できないことである。例えばACK信号が32ビット側と64ビット側とで共通であった場合、マルチプレクサによるバスと違って、例えば32ビット側が出力しても、それが64ビット側にも出力されるため、ACK信号が32ビット側で出力されたか、又は64ビット側で出力されたかを区別することができない。従って、32ビット側のACK信号と64ビット側のACK信号とを区別できるようにすることが必要になる。このように区別して扱う必要のある信号は、3ステートバッファによるバス構成では、制御コマンド信号として、共通化することができない。 In a bus configuration with a three-state buffer, it is difficult to insert a repeater because the signal direction of the wiring is bidirectional, and the capacitance of the three-state buffer connected to the wiring of the data transfer path is added, resulting in a large wiring capacity. Therefore, the operating frequency is generally low. A characteristic for the data conversion unit in the case of the 3-state buffer format is that a 32-bit side signal and a 64-bit side signal cannot be distinguished. For example, if the ACK signal is common to the 32-bit side and the 64-bit side, even if the 32-bit side outputs, for example, unlike the bus by the multiplexer, the ACK signal is also output to the 64-bit side. It cannot be distinguished whether it was output on the 32-bit side or on the 64-bit side. Therefore, it is necessary to distinguish between the 32-bit ACK signal and the 64-bit ACK signal. Such a signal that needs to be handled separately cannot be shared as a control command signal in a bus configuration with a three-state buffer.
◇第3実施例
図28は、本発明の第3実施例であるバスシステムの構成を示すブロック図、図29は、本実施例のバスシステムの共通制御コマンドバスを含むシステム構成を示す図、図30は、本実施例において、32ビットのバスマスタユニットから64ビットのバススレーブユニットに対して、リードアクセス後にライトアクセスを行ったときのデータ転送動作を示すタイミングチャートである。以下、第3実施例においては、リードバスとライトバスとが別個であって、かつ、スプリット転送の場合のバスシステムについて説明する。
FIG. 28 is a block diagram showing a configuration of a bus system according to a third embodiment of the present invention. FIG. 29 is a diagram showing a system configuration including a common control command bus of the bus system of this embodiment. FIG. 30 is a timing chart showing a data transfer operation when a write access is performed after a read access to a 64-bit bus slave unit from a 32-bit bus master unit in this embodiment. Hereinafter, in the third embodiment, a bus system in which the read bus and the write bus are separate and in the case of split transfer will be described.
この例のバスシステムは、図28に示すように、第1のライトバス1Wと、第1のリードバス1Rと、第2のライトバス2Wと、第2のリードバス2Rとに対して、ライトデータ変換ユニット3Wと、リードデータ変換ユニット3Rと、第1のライトバス1Wと第1のリードバス1Rに接続されたバスマスタユニット4,5及びバススレーブユニット6,7と、第2のライトバス2Wと第2のリードバス2Rに接続されたバスマスタユニット8,9及びバススレーブユニット10,11と、調停回路12A,12Bとを備えた概略構成を有している。
In the bus system of this example, as shown in FIG. 28, a write to a
第1のライトバス1Wは、64ビットのデータ幅を有し、第2のライトバス2Wは、32ビットのデータ幅を有しているとともに、ライト制御コマンドバスを介して、相互に各種ライト制御コマンドを転送できるようになっている。ライトデータ変換ユニット3Wは、第1のライトバス1Wと第2のライトバス2Wとの間に接続されていて、64ビット幅のデータと32ビット幅のデータとの間の相互のビット幅の変換を行う。第1のリードバス1Rは、64ビットのデータ幅を有し、第2のリードバス2Rは、32ビットのデータ幅を有しているとともに、リード制御コマンドバスを介して、相互に各種リード制御コマンドを転送できるようになっている。リードデータ変換ユニット3Rは、第1のリードバス1Rと第2のリードバス2Rとの間に接続されていて、64ビット幅のデータと32ビット幅のデータとの間の相互のビット幅変換を行う。
The
バスマスタユニット4,5は、ライト制御コマンド線と64ビットライトデータ線とによって第1のライトバス1Wに接続され、リード制御コマンド線と64ビットリードデータ線とによって第1のリードバス1Rに接続されていて、それぞれタイミングを調整して、CPUやDMAコントローラ等の外部マスタユニットと第1のライトバス1W又は第1のリードバス1Rとの間で、コマンドとライトデータ又はリードデータのインタフェースをとる機能を有している。バススレーブユニット6,7は、ライト制御コマンド線と64ビットライトデータ線とによって第1のライトバス1Wに接続され、リード制御コマンド線と64ビットリードデータ線とによって第1のリードバス1Rに接続されていて、それぞれタイミングを調整して、第1のライトバス1W又は第1のリードバス1RとI/Oやメモリ等の外部スレーブユニットとの間で、コマンドとライトデータ又はリードデータのインタフェースをとる機能を有している。
The
バスマスタユニット8,9は、ライト制御コマンド線と32ビットライトデータ線とによって第2のライトバス2Wに接続され、リード制御コマンド線と32ビットリードデータ線とによって第2のリードバス2Rに接続されていて、それぞれタイミングを調整して、CPUやDMAコントローラ等の外部マスタユニットと第2のライトバス2W又は第2のリードバス2Rとの間で、コマンドとライトデータ又はリードデータのインタフェースをとる機能を有している。バススレーブユニット10,11は、ライト制御コマンド線と32ビットライトデータ線とによって第2のライトバス2Wに接続され、リード制御コマンド線と32ビットリードデータ線とによって第2のリードバス2Rに接続されていて、それぞれタイミングを調整して、第2のライトバス2W又は第2のリードバス2RとI/Oやメモリ等の外部スレーブユニットとの間で、コマンドとライトデータ又はリードデータのインタフェースをとる機能を有している。
The
調停回路12Aは、各バスマスタユニット4,5及8,9との間で、調停リクエスト信号に応じて、第1のライトバス1Wと第2のライトバス2Wとにおけるバス権の調停を行って、バス権が確立したとき、調停グラント信号によって、要求元のバスマスタユニットに対して、バス権獲得を通知する機能を有している。調停回路12Bは、各バススレーブユニット6,7及10,11との間で、調停リクエスト信号に応じて、第1のリードバス1Rと第2のリードバス2Rとにおけるバス権の調停を行って、バス権が確立したとき、調停グラント信号によって、要求元のバススレーブユニットに対して、バス権獲得を通知する機能を有している。
The
この例のバス接続回路におけるバス構成として、マルチプレクサ形式のバス又は3ステートバッファ形式のバスを使用できる点は、図5乃至図8又は図22乃至図25に示された第1実施例の場合と同様である。この例のバス接続回路における、バス権の調停からバス使用までの処理の流れは、図11に示された第1実施例の場合と同様である。また、この例のバス接続回路における、リードアクセス時又はライトアクセス時の、ライトデータ変換ユニット3W又はリードデータ変換ユニット3Rの処理手順は、図12及び図13に示された第1実施例の場合とほぼ同様であるが、リードアクセスとライトアクセスの動作を、それぞれ独立に実行できる点において、第1実施例の場合とは異なっている。
As a bus configuration in the bus connection circuit of this example, a multiplexer type bus or a three-state buffer type bus can be used as in the case of the first embodiment shown in FIG. 5 to FIG. 8 or FIG. 22 to FIG. It is the same. In the bus connection circuit of this example, the processing flow from bus right arbitration to bus use is the same as in the first embodiment shown in FIG. The processing procedure of the write
この例のバス接続回路の、共通制御コマンドバスを含むシステム構成は、図29に示すようになる。図29においては、図28におけると同じものを同じ番号で示し、(1) 〜(21)によって、各制御コマンド線及び各共通制御コマンドバスの信号を表していて、(1) はWFrame64,(2) はAddress,(3) はCmd,(4) はDID,(5) はWData64,(6) はWDvalid64,(7) はACK,(8) はNACK,(9) はDevsel,(10)はRFrame64,(11)はRCmd,(12)はRDID,(13)はRACK,(14)はRData64,(15)はRDvalid64,(16)はWFrame32,(17)はWData32,(18)はWDvalid32,(19)はRFrame32,(20)はRData32,(21)はRDvalid32をそれぞれ表している。これらのうち、ライトアクセスにおけるものはWを付して表し、リードアクセスにおけるものはRを付して表している。
The system configuration including the common control command bus of the bus connection circuit of this example is as shown in FIG. In FIG. 29, the same components as those in FIG. 28 are denoted by the same numbers, and (1) to (21) represent the signals of each control command line and each common control command bus, and (1) represents
図29に示されたシステム構成において用いられている各種コマンドは、図10に示されたものとほぼ同様の内容を有している。ただし、第1実施例の場合と比較して、一部のコントロール信号(例えばMaster)を欠いている。また、リードデータバスとライトデータバスが別個の場合は、バスが共通の場合と比較して、リードデータ転送時に、リードデータ転送用のFrame信号,Data信号,Dvalid信号,Cmd信号,及びDID信号が必要になる点が異なっている。 Various commands used in the system configuration shown in FIG. 29 have almost the same contents as those shown in FIG. However, as compared with the case of the first embodiment, some control signals (for example, Master) are missing. Also, when the read data bus and the write data bus are separate, compared to the case where the buses are common, the read data transfer Frame signal, Data signal, Dvalid signal, Cmd signal, and DID signal during read data transfer Is different in that it is necessary.
ここで、WFrame64はライトアクセスによる64ビット幅のバスの占有を示す情報、Addressは、バススレーブユニットを特定するための情報、Cmdはコマンド情報、DIDは、バスマスタユニットを特定するための情報、WData64は、ライトアクセスによる64ビット幅のバス上の転送データ、WDvalid64は、ライトアクセスにおいて64ビット幅のバス上のデータが有効な期間を示す情報、ACKは、選択されたユニットが要求された動作可能になったことを示す情報、NACKは、選択されたユニットが要求された動作可能な状態でないことを示す情報、Devselは、ユニットが選択された状態であることを示す情報、RFrame64は、リードアクセスによる64ビット幅のバスの占有を示す情報、RCmdは、リードアクセスにおけるコマンド情報、RDIDはリードアクセスにおいてバスマスタユニットを特定するための情報、RACKは、リードアクセスにおいて選択されたユニットが要求された動作可能になったことを示す情報、RData64は、リードアクセスによる64ビット幅のバス上の転送データ、RDvalid64は、リードアクセスにおいて64ビット幅のバス上のデータが有効な期間を示す情報をそれぞれ示している。
Here, WFrame64 is information indicating occupation of a 64-bit bus by write access, Address is information for specifying a bus slave unit, Cmd is command information, DID is information for specifying a bus master unit, and WData64 Is the transfer data on the 64-bit width bus by write access, WDvalid64 is the information indicating the valid period of the data on the 64-bit width bus in write access, ACK is the operation requested by the selected unit NACK is information indicating that the selected unit is not in the requested operable state, Devsel is information indicating that the unit is selected, and
また、WFrame32はライトアクセスによる32ビット幅のバスの占有を示す情報、WData32は、ライトアクセスによる32ビット幅のバス上の転送データを示す情報、WDvalid32は、ライトアクセスにおいて32ビット幅のバス上のデータが有効な期間を示す情報、RFrame32は、リードアクセスによる32ビット幅のバスの占有を示す情報、RData32は、リードアクセスによる32ビット幅のバス上の転送データ、RDvalid32は、リードアクセスにおいて32ビット幅のバス上のデータが有効な期間を示す情報をそれぞれ示している。 Also, WFframe32 is information indicating occupation of a 32-bit bus by write access, WData32 is information indicating transfer data on a 32-bit bus by write access, and WDvalid32 is information on a 32-bit bus by write access. Information indicating the period during which data is valid, RFframe32 is information indicating occupation of a 32-bit bus by read access, RData32 is transfer data on a 32-bit bus by read access, and RDvalid32 is 32 bits in read access Each of the pieces of information indicates a period during which data on the width bus is valid.
次に、図28乃至図30を参照して、この例のバス接続回路において、スプリット転送によってリードデータのやりとりを行うとともに、ライトデータのやりとりを同時に行ったときの動作例を、32ビットのバスマスタユニットから64ビットのバススレーブユニットに対して、リードアクセスを行ったのちにライトアクセスを行った場合について説明する。なお、図30のタイミングチャートにおいては、調停動作の詳細については省略して示されている。 Next, referring to FIG. 28 to FIG. 30, in the bus connection circuit of this example, read data is exchanged by split transfer, and an operation example when write data is exchanged at the same time is shown as a 32-bit bus master. A case will be described in which a write access is performed after performing a read access to a 64-bit bus slave unit from the unit. In the timing chart of FIG. 30, the details of the arbitration operation are omitted.
最初、バスマスタユニットからの調停リクエストに応じて、ライトバス1W,2Wに対するバス権の調停が行われ、その結果、バス権が付与されたとき、バスマスタユニットから32ビット側のライトバス2WにおいてWFrame32がアクティブにされる。さらにライトデータ変換ユニット3Wから64ビット側のライトバス1WにおいてWFrame64がアクティブにされる。これと同時に、バスマスタユニットから、コマンドとして、バススレーブユニットを特定するAddressと、データサイズ等を示すCmdと、バスマスタユニットを特定するDIDが出力される。これによって、指定されたバススレーブユニットはDevselを返し、さらに、Cmdの指示を了承したことを示すACKを64ビット側のライトバス1Wに出力する。その後、バスマスタユニットは、一旦、WFrame32をインアクティブにし、これによって、WFrame64もインアクティブにされる。
First, in response to an arbitration request from the bus master unit, arbitration of the bus right for the
次に、バススレーブユニットでは、リードデータの準備ができたとき、調停リクエストを行うことによって、リードバス1R,2Rに対するバス権の調停が行われ、その結果、バス権が付与されたとき、64ビット側のリードバス1RにおいてRFrame64をアクティブにし、これによって、リードデータ変換ユニット3Rから32ビット側のリードバス2RにおいてRFrame32がアクティブにされる。これと同時に、バススレーブユニットから、コマンドとして、データサイズ等を示すRCmdと、バスマスタユニットを特定するRDIDが出力される。これによって、バススレーブユニットは、64ビット側のリードバス1RにおいてRDvalid64をアクティブにして、RData64を出力する。RData64の出力終了時、バススレーブユニットは、RDvalid64をインアクティブにするとともに、RFrame64をインアクティブにする。なおこの際、バスマスタユニットからのACKは必要ないものとする。
Next, in the bus slave unit, when read data is ready, the arbitration request is made to arbitrate the bus right for the
リードデータ変換ユニット3Rでは、RData64を受信すると、32ビット側のリードバス2RにおいてRDvalid32をアクティブにし、受信したRData64をRData32に変換して、バスマスタユニットへ送る。送信終了時、リードデータ変換ユニット3RはRDvalid32をインアクティブにし、さらに、RFrame32をインアクティブにする。
When the
一方、再びバスマスタユニットからの調停リクエストに応じて、ライトバス1W,2Wに対するバス権の調停が行われ、その結果、バス権が付与されたとき、バスマスタユニットから32ビット側のライトバス2WにおいてWFrame32がアクティブにされ、さらにライトデータ変換ユニット3Wから64ビット側のライトバス1WにおいてWFrame64がアクティブにされる。これと同時に、バスマスタユニットから、コマンドとして、Addressと、Cmdと、DIDが出力される。これによって、指定されたバススレーブユニットはDevselを返すとともに、Cmdの指示を了承したことを示すACKを64ビット側のライトバス1Wに出力する。
On the other hand, in response to the arbitration request from the bus master unit again, arbitration of the bus right for the
次に、バスマスタユニットは、32ビット側のライトバス2Wに出力されるWDvalid32をアクティブにして,WData32を出力し、終了したときWDvalid32をインアクティブにして、WFrame32をインアクティブにする。ライトデータ変換ユニット3Wは、WData32を受信したとき、これをWData64に変換し、64ビット側のライトバス1WにおいてWDvalid64をアクティブにして、WData64をバススレーブユニットに出力し、終了したとき、WDvalid64をインアクティブにするとともに、WFrame64をインアクティブにする。
Next, the bus master unit activates WDvalid 32 output to the
64ビットのバスマスタユニットから32ビットのバススレーブユニットに対するスプリット転送のリードアクセスとライトアクセスも、図18乃至図21に示された第1実施例の場合の各動作の組み合わせとして、同様に行うことができる。 The split transfer read access and write access from the 64-bit bus master unit to the 32-bit bus slave unit can be performed in the same manner as combinations of operations in the first embodiment shown in FIGS. it can.
このように、この例のバス接続回路では、リードデータバスとライトデータバスが別個の場合に、スプリット転送のリードアクセスとライトアクセスとをそれぞれ別個に行うことができるとともに、この際、リードアクセス及びライトアクセスにおけるクロックサイクル数を少なくすることができる。この際、データ転送エラー発生時に送信元でデータの喪失が生じないとともに、送信元へのデータ転送エラー発生通知が可能なことは、第1実施例の場合と同様である。 As described above, in the bus connection circuit of this example, when the read data bus and the write data bus are separate, the split transfer read access and write access can be performed separately. The number of clock cycles in write access can be reduced. At this time, data loss does not occur at the transmission source when a data transfer error occurs, and a data transfer error occurrence notification to the transmission source is possible as in the case of the first embodiment.
さらに、従来技術のバスマスタ制御回路やバススレーブ制御回路におけるような、コマンド制御信号の細部にわたる制御が不要で、データ変換が必要な条件を抽出してデータの変換を行うハードウェアのみを用意すればよいので、回路構成が簡単になり、必要なハードウェア量を少なくすることができる。また、この例のバス制御回路では、バス調停回数が少なく、従って遅延が少ないため、バスを占有している期間が短くなり、その結果、バスのスループットを向上できるようになる。 Furthermore, it is not necessary to control the command control signal in detail as in the conventional bus master control circuit and bus slave control circuit, and only hardware that extracts the conditions that require data conversion and performs data conversion is prepared. Since it is good, the circuit configuration is simplified, and the amount of necessary hardware can be reduced. In the bus control circuit of this example, the number of bus arbitrations is small, and therefore the delay is small. Therefore, the period of occupying the bus is shortened, and as a result, the bus throughput can be improved.
◇第4実施例
図31は、本発明の第4実施例である、2個のデータ変換ユニットを使用して、2段階にバス幅の変換を行う場合のバスシステムの構成を示すブロック図である。以下、第4実施例として、リードデータバスとライトデータバスが共通な、それぞれ異なるバス幅を有する3種類のバスを相互に接続する際に、2個のデータ変換ユニットを使用して、2段階にバス幅の変換を行う場合のバスシステムについて説明する。
FIG. 31 is a block diagram showing the configuration of a bus system in the case of performing bus width conversion in two stages using two data conversion units according to a fourth embodiment of the present invention. is there. Hereinafter, as a fourth embodiment, two data conversion units are used to connect two types of buses to each other when three types of buses having different bus widths and having a common read data bus and write data bus are used. Next, the bus system when the bus width is converted will be described.
この例のバスシステムは、図31に示すように、第1のバス101と、第2のバス102と、第3のバス103とに対して、第1のバス101に接続された128ビットのバスマスタユニット104と、第1のバス101に接続された128ビットのバススレーブユニット105と、第2のバス102に接続された64ビットのバスマスタユニット106と、第2のバス102に接続された64ビットのバススレーブユニット107と、第3のバス103に接続された32ビットのバスマスタユニット108と、第3のバス103に接続された32ビットのバススレーブユニット109と、第1のデータ変換ユニット110と、第2のデータ変換ユニット111と、調停回路112とを備えた概略構成を有している。
As shown in FIG. 31, the bus system of this example has a 128-bit connection connected to the first bus 101 with respect to the first bus 101, the
第1のバス101は、128ビットのデータ幅を有し、第2のバス102は64ビットのデータ幅を有し、第3のバス103は、32ビットのデータ幅を有しているとともに、第1のバス101と第2のバス102間、及び第2のバス102と第3のバス103間において、それぞれ共通制御コマンドバスを介して、アドレスバスとコントロールバスの信号を相互に転送できるようになっている。バスマスタユニット104は、128ビットの外部マスタユニット(不図示)と第1のバス101との間で、コマンドとリードデータ,ライトデータのインタフェースをとり、バススレーブユニット105は、128ビットの外部スレーブユニット(不図示)と第1のバス101との間で、コマンドとリードデータ,ライトデータのインタフェースをとる。
The first bus 101 has a data width of 128 bits, the
バスマスタユニット106は、64ビットの外部マスタユニット(不図示)と第2のバス102との間で、コマンドとリードデータ,ライトデータのインタフェースをとり、バススレーブユニット107は、64ビットの外部スレーブユニット(不図示)と第2のバス102との間で、コマンドとリードデータ,ライトデータのインタフェースをとる。バスマスタユニット108は、32ビットの外部マスタユニット(不図示)と第3のバス103との間で、コマンドとリードデータ,ライトデータのインタフェースをとり、バススレーブユニット109は、32ビットの外部スレーブユニット(不図示)と第3のバス103との間で、コマンドとリードデータ,ライトデータのインタフェースをとる。
A
第1のデータ変換ユニット110は、第1のバス101と第2のバス102との間で、128ビット幅のデータと64ビット幅のデータとの間の相互のビット幅の変換を行い、第2のデータ変換ユニット111は、第2のバス102と第3のバス103との間で、64ビット幅のデータと32ビット幅のデータとの間の相互のビット幅の変換を行う。調停回路112は、バスマスタユニット104、バススレーブユニット105,バスマスタユニット106,バススレーブユニット107,バスマスタユニット108,バススレーブユニット109からのそれぞれの調停リクエスト信号に応じて、第1のバス101,第2のバス102,第3のバス103におけるバス権の調停を行って、バス権を得たバスマスタユニット又はバススレーブユニットに対して調停グラント信号を出力する。
The first
図31に示されたバス接続回路における、第1のバス101と第2のバス102間におけるバスの接続、又は第2のバス102と第3のバス103間におけるバスの接続は、上述した第1実施例の場合と同様にして行われる。また、第1のバス101と第3のバス103間におけるバスの接続は、第1のバス101と第2のバス102間におけるバスの接続と、第2のバス102と第3のバス103間におけるバスの接続とを順次行うことによって、相互に行うことができる。従って、図31に示されたバス接続回路によれば、128ビット幅のバスと、64ビット幅のバスと、32ビット幅のバスとの、3種類の異なるビット幅のバス間を相互に接続することができる。
The bus connection between the first bus 101 and the
このように、この例のバス接続回路によれば、2個のデータ変換ユニットを使用して2段階にバス幅の変換を行うことによって、リードデータバスとライトデータバスが共通な、3種類のそれぞれ異なるバス幅を有するバスを相互に接続してスプリット転送のリードアクセスとライトアクセスとを行うことができるとともに、この際、バス間を越える際の調停が不要で、データの変換だけを行えばよいため、リードアクセス及びライトアクセスにおけるクロックサイクル数を少なくすることができる。従って、送信元から送信先へのデータ転送を同一バスサイクル内に行うことができるので、データ転送エラー発生時に送信元でデータの喪失が生じないとともに、送信元へのデータ転送エラー発生通知が可能なことは、第1実施例の場合と同様である。 In this way, according to the bus connection circuit of this example, the bus width conversion is performed in two stages using two data conversion units, so that three types of common read data bus and write data bus can be obtained. Buses with different bus widths can be connected to each other to perform split transfer read access and write access, and at this time, arbitration when crossing between buses is unnecessary, and only data conversion is performed. Therefore, the number of clock cycles in read access and write access can be reduced. Therefore, data transfer from the transmission source to the transmission destination can be performed within the same bus cycle, so that no data loss occurs at the transmission source when a data transfer error occurs, and a data transfer error notification to the transmission source is possible. This is the same as in the first embodiment.
さらに、従来技術のバスマスタ制御回路やバススレーブ制御回路におけるような、コマンド制御信号の細部にわたる制御が不要で、データ変換が必要な条件を抽出してデータの変換を行うハードウェアのみを用意すればよいので、回路構成が簡単になり、必要なハードウェア量を少なくすることができる。また、この例のバス制御回路では、バス調停回数が少なく、従って遅延が少ないため、バスを占有している期間が短くなり、その結果、バスのスループットを向上できるようになる。 Furthermore, it is not necessary to control the command control signal in detail as in the conventional bus master control circuit and bus slave control circuit, and only hardware that extracts the conditions that require data conversion and performs data conversion is prepared. Since it is good, the circuit configuration is simplified, and the amount of necessary hardware can be reduced. In the bus control circuit of this example, the number of bus arbitrations is small, and therefore the delay is small. Therefore, the period of occupying the bus is shortened, and as a result, the bus throughput can be improved.
◇第5実施例
図32は、本発明の第5実施例である、1個のデータ変換ユニットを使用して、3種類の異なるビット幅のバスを接続する場合のバスシステムの構成を示すブロック図、図33は、本実施例のバスシステムにおけるデータ変換ユニットの構成例を示すブロック図、図34は、本実施例のバスシステムにおいて、バスマスタユニットとバススレーブユニットがともに出力する信号を伝達する場合におけるバス構成を説明する図、図35は、本実施例のバスシステムにおいて、バスマスタユニットのみが出力する信号を伝達する場合におけるのバス構成を説明する図、図36は、本実施例のバスシステムにおいて、バススレーブユニット側のみが出力する信号を伝達する場合におけるバスの構成を説明する図である。以下、第5実施例として、それぞれ異なるバス幅を有する3種類のバスを接続する際に、1個のデータ変換ユニットを使用して、相互にバス幅の変換を行う場合のバスシステムについて説明する。
FIG. 32 is a block diagram showing a configuration of a bus system in the case where three types of buses having different bit widths are connected using one data conversion unit according to a fifth embodiment of the present invention. FIG. 33 is a block diagram showing a configuration example of the data conversion unit in the bus system of the present embodiment, and FIG. 34 transmits signals output from both the bus master unit and the bus slave unit in the bus system of the present embodiment. FIG. 35 is a diagram for explaining the bus configuration in this case, FIG. 35 is a diagram for explaining the bus configuration in the case of transmitting a signal output only by the bus master unit in the bus system of this embodiment, and FIG. It is a figure explaining the structure of a bus | bath in the case of transmitting the signal which only a bus slave unit side outputs in a system. In the following, as a fifth embodiment, a bus system will be described in which one data conversion unit is used to mutually convert bus widths when three types of buses having different bus widths are connected. .
この例のバスシステムは、図32に示すように、第1のバス201と、第2のバス202と、第3のバス203とに対して、第1のバス201に接続された128ビットのバスマスタユニット204と、第1のバス201に接続された128ビットのバススレーブユニット205と、第2のバス202に接続された64ビットのバスマスタユニット206と、第2のバス202に接続された64ビットのバススレーブユニット207と、第3のバス203に接続された32ビットのバスマスタユニット208と、第3のバス203に接続された32ビットのバススレーブユニット209と、データ変換ユニット210と、調停回路211とを備えた概略構成を有している。
As shown in FIG. 32, the bus system of this example has a 128-bit connection connected to the
第1のバス201は128ビットのデータ幅を有し、第2のバス202は64ビットのデータ幅を有し、第3のバス203は32ビットのデータ幅を有しているとともに、第1のバス201と第2のバス202間、第2のバス202と第3のバス203間、及び第1のバス201と第3のバス203間において、それぞれ共通制御コマンドバスを介して、アドレスバスとコントロールバスの信号を相互に転送できるようになっている。バスマスタユニット204は、128ビットの外部マスタユニット(不図示)と第1のバス201との間で、コマンドとリードデータ,ライトデータのインタフェースをとり、バススレーブユニット205は、128ビットの外部スレーブユニット(不図示)と第1のバス201との間で、コマンドとリードデータ,ライトデータのインタフェースをとる。
The
バスマスタユニット206は、64ビットの外部マスタユニット(不図示)と第2のバス202との間で、コマンドとリードデータ,ライトデータのインタフェースをとり、バススレーブユニット207は、64ビットの外部スレーブユニット(不図示)と第2のバス202との間で、コマンドとリードデータ,ライトデータのインタフェースをとる。バスマスタユニット208は、32ビットの外部マスタユニット(不図示)と第3のバス103との間で、コマンドとリードデータ,ライトデータのインタフェースをとり、バススレーブユニット209は、32ビットの外部スレーブユニット(不図示)と第3のバス203との間で、コマンドとリードデータ,ライトデータのインタフェースをとる。
A
データ変換ユニット210は、第1のバス201と第2のバス202と第3のバス203との間で、128ビット幅のデータと64ビット幅のデータと32ビット幅のデータとの間の相互のビット幅の変換を行う。調停回路211は、バスマスタユニット204、バススレーブユニット205,バスマスタユニット206,バススレーブユニット207,バスマスタユニット208,バススレーブユニット209からのそれぞれの調停リクエスト信号に応じて、第1のバス201,第2のバス202,第3のバス203におけるバス権の調停を行って、バス権を得たバスマスタユニット又はバススレーブユニットに対して調停グラント信号を出力する。
The
図33は、図32のバス接続回路におけるデータ変換ユニットの構成例を示したものである。このデータ変換ユニット210は、図33に示すように、データバッファ211と、タイミング制御部212と、マルチプレクサ213,214,215,216,217,218,219とから概略構成されている。
FIG. 33 shows a configuration example of the data conversion unit in the bus connection circuit of FIG. As shown in FIG. 33, the
データバッファ211は、例えば128ビット幅のデータと、64ビット幅のデータと、32ビット幅のデータとの間の相互のビット幅の変換を行うFIFOメモリからなっている。すなわち、データバッファ211は、128ビット幅のデータを書き込んで、64ビットずつ2回に分けて読み出すことによって、64ビット幅のデータへの変換を行い、又は32ビットずつ4回に分けて読み出すことによって、32ビット幅のデータへの変換を行うとともに、また、64ビット幅のデータを書き込んで、32ビットずつ2回に分けて読み出すことによって、32ビット幅のデータへの変換を行う。
The
さらに、逆に、32ビット幅のデータを上位から下位へ向かって、又は下位から上位へ向かって、2回に分けて書き込んだものを結合して読み出すことによって64ビット幅のデータへの変換を行うとともに、また、32ビット幅のデータを上位から下位へ向かって、又は下位から上位へ向かって、4回に分けて書き込んだものを結合して読み出すことによって、又は、64ビット幅のデータを上位から下位へ向かって、又は下位から上位へ向かって、2回に分けて書き込んだものを結合して読み出すことによって、それぞれ128ビット幅のデータへの変換を行う。 Further, conversely, conversion of data of 32 bits width from the upper order to the lower order or from the lower order to the upper order is performed by combining and reading data written in two times to convert the data into 64-bit width data. In addition, by combining and reading 32-bit width data from the upper order to the lower order, or from the lower order to the upper order, and writing the data divided into four times, or the 64-bit width data The data written in two portions is combined and read from the upper order to the lower order or from the lower order to the upper order, thereby converting the data into 128-bit width data.
タイミング制御部212は、128ビット制御コマンド信号又は64ビット制御コマンド信号又は32ビット制御コマンド信号に応じて、128ビットデータの書き込み時、書込選択信号によって、マルチプレクサ213,214,215,216を制御して、128ビットデータ線のデータをデータバッファ211に入力し、64ビットデータの書き込み時、書込選択信号によってマルチプレクサ213,214又は215,216を制御して、64ビットデータ線のデータをデータバッファ211に入力し、32ビットデータの書き込み時、書込選択信号によってマルチプレクサ213,214,215,216のいずれかを制御して、32ビットデータ線のデータをデータバッファ21に入力するように制御するとともに、128ビットデータの読み出し時、128ビット出力選択信号によって、マルチプレクサ217を制御して、128ビットデータを128ビットデータ線に出力し、64ビットデータの読み出し時、64ビット出力選択信号によってマルチプレクサ218を制御して、64ビットデータを64ビットデータ線に出力し、32ビットデータの読み出し時、32ビット出力選択信号によってマルチプレクサ219を制御して、32ビットデータを32ビットデータ線に出力するように制御する。
The
さらにタイミング制御部212は、128ビットデータ信号の出力時、128ビットデータが有効な期間を示す128ビットデータバリッド信号と、128ビットデータ線がアクティブになったことを示す128ビットフレーム信号を出力し、64ビットデータ信号の出力時、64ビットデータが有効な期間を示す64ビットデータバリッド信号と、64ビットデータ線がアクティブになったことを示す64ビットフレーム信号を出力し、32ビットデータ信号の出力時、32ビットデータが有効な期間を示す32ビットデータバリッド信号と、32ビットデータ線スがアクティブになったことを示す32ビットフレーム信号を出力する。
Further, when outputting the 128-bit data signal, the
図34は、図32に示されたバス接続回路において、バス203を構成する複数のバスの内、バスマスタユニットとバススレーブの双方から出力される信号、例えばフレーム信号を伝達するバスの構成を示すものである。このような信号を伝達するためのバス1301は、マルチプレクサX17,X18,X19、オア回路O15、O16によって構成される。
FIG. 34 shows a configuration of a bus that transmits signals output from both the bus master unit and the bus slave, for example, a frame signal, among a plurality of buses constituting the
4:1マルチプレクサX17は、マスターユニットM21,M22及びスレーブユニットS21,S22からFrame32_O、及びFrame32_OEを受け取り、Frame32_OEに基づいてFrame32_O信号を選択・出力する。2:1マルチプレクサX19は、バス1301の外部(バス201またはバス202からのフレーム信号)からのフレーム信号を選択・出力する。2:1マルチプレクサX18は、マルチプレクサX17の出力及びマルチプレクサX19の出力のいずれかを、オア回路O15及びオア回路O16の出力に基づいてマスターユニットM21,M22及びスレーブユニットS21,S22に供給する。
The 4: 1 multiplexer X17 receives Frame32_O and Frame32_OE from the master units M21 and M22 and the slave units S21 and S22, and selects and outputs the Frame32_O signal based on the Frame32_OE. The 2: 1 multiplexer X19 selects and outputs a frame signal from the outside of the bus 1301 (a frame signal from the
図35は、図32に示されたバス接続回路において、バス203を構成する複数のバスの内、バスマスタユニットからのみ出力される信号、例えばアドレス信号を伝達するバスの構成を示すものである。このような信号を伝達するためのバス1302は、マルチプレクサX11,X12,X13,及びオア回路O11、O12によって構成されている。
FIG. 35 shows a configuration of a bus for transmitting a signal output only from the bus master unit, for example, an address signal, among a plurality of buses constituting the
例えば、32ビットのバスマスタユニットM21,M22が、アドレス信号としてAddr32_O信号と、その有効を示すAddr32_OE信号とを出力する。これによって、マルチプレクサX11は有効になったいずれかのAddr32_O信号のみを選択して出力する。このAddr32_O信号は、オア回路O11においてバスマスタユニットM21,M22からのAddr32_OE信号のオアをとった信号とともに、共通制御コマンドバスに出力される。 For example, the 32-bit bus master units M21 and M22 output an Addr32_O signal as an address signal and an Addr32_OE signal indicating its validity. As a result, the multiplexer X11 selects and outputs only one of the enabled Addr32_O signals. The Addr32_O signal is output to the common control command bus together with the signal obtained by taking the Addr32_OE signal from the bus master units M21 and M22 in the OR circuit O11.
さらに、マルチプレクサX13において、128ビットバスからのAddr128_O信号と64ビットバスからのAddr64_O信号とを、128ビットバスからのAddr128_OE信号と64ビットバスからのAddr64_OE信号とによって選択した信号と、マルチプレクサX11で選択されたAddr32_O信号とを、マルチプレクサX12において、オア回路O11からの信号と、オア回路O12において128ビットバスからのAddr128_OE信号と64ビットバスからのAddr64_OE信号とのオアをとった信号とによって選択して、選択された信号をアドレスの入力を示すAddr_I信号として、32ビットのバススレーブユニットS21,S22に共通に接続する。 Further, the multiplexer X13 selects the Addr128_O signal from the 128-bit bus and the Addr64_O signal from the 64-bit bus, the signal selected by the Addr128_OE signal from the 128-bit bus and the Addr64_OE signal from the 64-bit bus, and the multiplexer X11. In the multiplexer X12, the signal Addr32_O is selected by the signal from the OR circuit O11 and the signal obtained by ORing the Addr128_OE signal from the 128-bit bus and the Addr64_OE signal from the 64-bit bus in the OR circuit O12. The selected signal is commonly connected to the 32-bit bus slave units S21 and S22 as an Addr_I signal indicating an address input.
さらに、このような接続を、64ビットバスマスタユニットと128ビットバスマスタユニット及び32ビットバスマスタユニット間と、128ビットバスマスタユニットと32ビットバスマスタユニット及び64ビットバスマスタユニット間とにおいて行うことによって、32ビット幅のバスと64ビット幅のバスと128ビット幅のバスとの間において、制御コマンドを共通化することができる。 Furthermore, by making such a connection between a 64-bit bus master unit and a 128-bit bus master unit and a 32-bit bus master unit, and between a 128-bit bus master unit, a 32-bit bus master unit and a 64-bit bus master unit, Control commands can be shared among a bus, a 64-bit bus, and a 128-bit bus.
図36は、図32に示されたバス接続回路において、バス203を構成する複数のバスの内、バススレーブユニットのみから出力される信号、例えばAck信号を伝達するバスの構成を示すものである。このような信号を伝達するためのバス1303は、マルチプレクサX14,X15,X16及びオア回路O13,O14から構成されている。
FIG. 36 shows a configuration of a bus that transmits a signal output from only a bus slave unit, for example, an Ack signal, among a plurality of buses constituting the
例えば、32ビットのバススレーブユニットS21,S22がそれぞれ、送信許可を示すACK32_O信号を出力する場合、それぞれ同時にその有効を示すACK32_OE信号を出力する。これによって、マルチプレクサX14は有効になったいずれかのACK32_O信号のみを選択して出力する。このACK32_O信号は、オア回路O13においてバススレーブユニットS21,S22からのACK32_OE信号のオアをとった信号とともに、共通制御コマンドバスに出力される。 For example, when each of the 32-bit bus slave units S21 and S22 outputs an ACK32_O signal indicating transmission permission, each outputs an ACK32_OE signal indicating its validity. As a result, the multiplexer X14 selects and outputs only one of the valid ACK32_O signals. The ACK32_O signal is output to the common control command bus together with a signal obtained by taking the ACK32_OE signal from the bus slave units S21 and S22 in the OR circuit O13.
さらに、マルチプレクサX16において、128ビットバスからのACK128_O信号と64ビットバスからのACK64_O信号とを、128ビットバスからのACK128_OE信号と64ビットバスからのACK64_OE信号とによって選択した信号と、マルチプレクサX14で選択されたACK32_O信号とを、マルチプレクサX15において、オア回路O13からの信号と、オア回路O14において128ビットバスからのACK128_OE信号と64ビットバスからのACK64_OE信号とのオアをとった信号とによって選択して、選択された信号をACKの入力を示すACK_I信号として、バスマスタユニットM21,M22に共通に接続する。 Further, in the multiplexer X16, the ACK128_O signal from the 128-bit bus and the ACK64_O signal from the 64-bit bus are selected by the multiplexer X14 and the signal selected by the ACK128_OE signal from the 128-bit bus and the ACK64_OE signal from the 64-bit bus. The received ACK32_O signal is selected in the multiplexer X15 by the signal from the OR circuit O13 and the OR circuit O14 which is ORed with the ACK128_OE signal from the 128-bit bus and the ACK64_OE signal from the 64-bit bus. The selected signal is commonly connected to the bus master units M21 and M22 as an ACK_I signal indicating the input of ACK.
さらに、このような接続を、64ビットバスマスタユニットと128ビットバスマスタユニット及び32ビットバスマスタユニット間と、128ビットバスマスタユニットと32ビットバスマスタユニット及び64ビットバスマスタユニット間とにおいて行うことによって、32ビット幅のバスと64ビット幅のバスと128ビット幅のバスとの間において、制御コマンドを共通化することができる。 Furthermore, by making such a connection between a 64-bit bus master unit and a 128-bit bus master unit and a 32-bit bus master unit, and between a 128-bit bus master unit, a 32-bit bus master unit and a 64-bit bus master unit, Control commands can be shared among a bus, a 64-bit bus, and a 128-bit bus.
このように、この例のバス接続回路によれば、1個のデータ変換ユニットを使用して相互にバス幅の変換を行うことによって、リードデータバスとライトデータバスが共通な、3種類のそれぞれ異なるバス幅を有するバスを相互に接続してスプリット転送のリードアクセスとライトアクセスとを行うことができるとともに、この際、バス間を越える際のバス権の調停が不要で、データの変換だけを行えばよいため、リードアクセス及びライトアクセスにおけるクロックサイクル数を少なくすることができる。従って、送信元から送信先へのデータ転送を、同一バスサイクル内に行うことができるので、データ転送エラー発生時にも、データの喪失が生じることがないとともに、送信先から送信元へデータ転送エラー発生を通知することができることは、第1実施例の場合と同様である。 As described above, according to the bus connection circuit of this example, by using the single data conversion unit to mutually convert the bus width, each of the three types of common read data bus and write data bus is provided. Buses with different bus widths can be connected to each other to perform split transfer read access and write access. At this time, no bus arbitration is required between buses, and only data conversion is performed. Therefore, the number of clock cycles in read access and write access can be reduced. Therefore, since data transfer from the transmission source to the transmission destination can be performed within the same bus cycle, no data loss occurs even when a data transfer error occurs, and a data transfer error from the transmission destination to the transmission source. The occurrence can be notified as in the case of the first embodiment.
さらに、従来技術のバスマスタ制御回路やバススレーブ制御回路におけるような、コマンド制御信号の細部にわたる制御が不要で、データ変換が必要な条件を抽出してデータの変換を行うハードウェアのみを用意すればよいので、回路構成が簡単になり、必要なハードウェア量を少なくすることができる。また、この例のバス制御回路では、バス調停回数が少なく、従って遅延が少ないため、バスを占有している期間が短くなり、その結果、バスのスループットを向上できるようになる。 Furthermore, it is not necessary to control the command control signal in detail as in the conventional bus master control circuit and bus slave control circuit, and only hardware that extracts the conditions that require data conversion and performs data conversion is prepared. Since it is good, the circuit configuration is simplified, and the amount of necessary hardware can be reduced. In the bus control circuit of this example, the number of bus arbitrations is small, and therefore the delay is small. Therefore, the period of occupying the bus is shortened, and as a result, the bus throughput can be improved.
◇適用例
次に、上述して来た本発明のバスシステムを適用した情報処理システム、及び本発明のバスシステムを適用したチップを含む情報処理システムの例について、図37,図38を参照して簡単に説明する。各実施例と同一の参照番号を用いた構成要素については、既に説明しているため、説明を省略する。
Application Example Next, an example of an information processing system to which the above-described bus system of the present invention is applied and an information processing system including a chip to which the bus system of the present invention is applied will be described with reference to FIGS. And explain briefly. Since the components using the same reference numbers as those of the embodiments have already been described, the description thereof will be omitted.
図37は、本発明のバス変換ユニットを適用した情報処理システムの例を示したものである。本発明のバス変換ユニット370は、バス1、バス2、データ変換ユニット3、バスマスタユニット4、5、8、9、バススレーブユニット6、7、10、11、調停回路12、共通制御コマンドバス372、制御コマンド変換回路371とによって構成されている。なお、調停回路と、バスマスタユニット、バススレーブユニットとの間の線は省略している。このバス変換ユニット370に、外部マスタユニット301、302、303、304、外部スレーブユニット401、402、403、404が接続されて情報処理システムを構成している。
FIG. 37 shows an example of an information processing system to which the bus conversion unit of the present invention is applied. The bus conversion unit 370 of the present invention includes a
ここで、バス1とバス2との制御コマンド線上のコマンドのフォーマットが異なっている場合には、共通制御コマンドバス372の間に制御コマンド変換回路371を挟み、制御コマンド変換回路371によってコマンドのフォーマットの違いを吸収することができる。また、バス変換ユニット370を一つのマクロとして考えると、外部マスタユニット及び外部スレーブユニットは、バスマスタユニット及びバススレーブユニットとのインタフェースのみを考えれば良く、その内部の回路構成を意識する必要は無い。
When the command formats on the control command lines of the
また、図37に記載した情報処理システムをワンチップ上に構成しても良い。このように、情報処理システムをワンチップ上に構成した場合には、以下のような情報処理システムも構築可能である。情報処理システムの一例として、チップ380、外部バス382、外部メモリ383及びチップ384から構成されるものを図38に示す。 Further, the information processing system described in FIG. 37 may be configured on one chip. Thus, when the information processing system is configured on one chip, the following information processing system can be constructed. As an example of the information processing system, a configuration including a chip 380, an external bus 382, an external memory 383, and a chip 384 is shown in FIG.
バス変換ユニット370を含むチップ380は、バス変換ユニット370内のバススレーブユニットと接続されるI/Oインタフェース381を備える。(図38において、外部スレーブユニット401がI/Oインタフェース381に置き換わったものと考える。)I/Oインタフェース381は、外部バス382を介して外部メモリ383及び別のチップ384と接続されている。
The chip 380 including the bus conversion unit 370 includes an I / O interface 381 connected to a bus slave unit in the bus conversion unit 370. (In FIG. 38, it is considered that the
本例では、バス変換ユニット370に接続されたバスマスタユニットは、バススレーブユニット6を介して外部メモリ383及びチップ384にアクセスをすることが可能となる。このとき、バス変換ユニット370は、レイテンシが小さいため、高速に外部メモリ383及び外部スレーブユニットとしてチップ384にアクセスをすることが可能となる。また、バススレーブユニット6の代わりに、バスマスタユニットを用いることによってチップの外部に設けられた外部マスタユニットと接続することも可能となる。例えば、チップ384を外部マスタユニットとして、チップ380上のメモリにアクセスすることも可能となる。このとき、チップ384は、バス変換ユニットのレイテンシが小さいため高速にチップ380上のメモリにアクセスすることが可能となる。
In this example, the bus master unit connected to the bus conversion unit 370 can access the external memory 383 and the chip 384 via the
以上、この発明の実施例を図面により詳述してきたが、具体的な構成はこの実施例に限られたものではなく、この発明の要旨を逸脱しない範囲の設計の変更等があってもこの発明に含まれる。例えば、この発明の実施例にて、OR回路を用いて構成された論理はアクティブHIであることが前提である。アクティブLOWである場合には、AND回路を用いて構成することもできる。なお、実施例において、バススレーブユニットがアドレス比較回路を内蔵したものを記載したが、アドレス比較回路はバススレーブユニットの外部に設けてもよい。 The embodiment of the present invention has been described in detail with reference to the drawings. However, the specific configuration is not limited to this embodiment, and even if there is a design change or the like without departing from the gist of the present invention. Included in the invention. For example, in the embodiment of the present invention, it is assumed that the logic configured using the OR circuit is active HI. In the case of active LOW, an AND circuit can be used. In the embodiment, the bus slave unit including the address comparison circuit is described. However, the address comparison circuit may be provided outside the bus slave unit.
また、実施例では、タイミング制御部22が、スレーブからのリードデータ転送に、Frame信号及びAck信号がどちらのバスから送られてきたのかに対応してビット変換の制御を行なっているものを示したが、Ack信号を出力するマスタが必ずデータを受け取ることができる状態であるとする場合には、マスタ側からのAck信号は不要となる。しかしながら、タイミング制御部22はAck信号が無くなるとビット変換の方向が分からなくなるため、常にビット変換を行なうこととなる。この場合、Ack信号を待たなくて良くなるため高速になるが、消費電力が大きくなる。逆に、マスタ側がAck信号を出力する場合には、Ack信号を待つ分だけ低速になるが、ビット変換が不要な場合には消費電力を低減することができる。
Further, in the embodiment, the
また、実施例では、2つ又は3つの異なるビット幅のバスの間におけるデータ転送のバスについて述べたが、本発明はこれに限るものでなく、2以上の異なるビット幅のバスの間におけるビット幅の変換時にも適用することができる。また、本発明は、異なる制御用コマンドを定義されているバス間を接続する場合にも、制御用コマンドの変換回路を共通制御コマンドバスに接続することによって適用することができる。 In the embodiments, the data transfer bus between two or three different bit width buses has been described. However, the present invention is not limited to this, and the bit between two or more different bit width buses is not limited thereto. It can also be applied during width conversion. The present invention can also be applied by connecting a control command conversion circuit to a common control command bus when connecting buses in which different control commands are defined.
また、本実施例では、バスシステムに関する回路の構成を具体的に例示してきたが、このバスシステムおよびバスシステムを含んだチップ380に関して、この回路構造を表現した電子データを生成し、コンピュータ装置で読み取り自在なソフトウェアとして情報記憶媒体に格納することも可能である(図示せず)。さらに、バスシステムおよびバスシステムを含んだチップ380の動作をコンピュータ処理装置にシミュレートさせるコンピュータプログラムをC言語などのプログラミング言語やVerilog−HDLなどのハードウェア記述言語などで記述して情報記憶媒体に格納することも可能であり(図示せず)、このコンピュータプログラムや上述の電子データが情報記憶媒体に格納されているコンピュータ装置を形成することも可能である。 Further, in this embodiment, the circuit configuration relating to the bus system has been specifically exemplified, but electronic data representing this circuit structure is generated for the bus system and the chip 380 including the bus system, and the computer apparatus is used. It can also be stored in an information storage medium as readable software (not shown). Further, a computer program that causes the computer processing device to simulate the operation of the bus system and the chip 380 including the bus system is described in a programming language such as C language, a hardware description language such as Verilog-HDL, and the like on an information storage medium. It is also possible to store (not shown), and it is also possible to form a computer device in which this computer program and the above-mentioned electronic data are stored in an information storage medium.
本発明でいう回路構造の電子データとは、その回路構造の論理構造を特定できるソフトウェアであれば良く、例えば、動作記述データ、RTL(Register Transfer Level)データ、ゲートレベルデータ、トランジスタレベルデータ、等からなる回路装置のネットリストなどとすることが可能である。また、本発明でいう情報記憶媒体とは、コンピュータ装置に各種処理を実行させるためのコンピュータプログラムが事前に格納されたハードウェアであれば良く、例えば、コンピュータ装置に固定されているROM(Read OnlyMemory)およびHDD(Hard Disc Drive)、コンピュータ装置に交換自在に装填されるCD(Compact Disc)−ROM、およびFD(Flexible Disc−Cartridge)、等で実施することが可能である。 The electronic data of the circuit structure referred to in the present invention may be software that can specify the logical structure of the circuit structure. For example, operation description data, RTL (Register Transfer Level) data, gate level data, transistor level data, etc. It is possible to make a net list of circuit devices consisting of The information storage medium referred to in the present invention may be hardware in which a computer program for causing a computer device to execute various processes is stored in advance. For example, a ROM (Read Only Memory) fixed to the computer device. ), HDD (Hard Disc Drive), CD (Compact Disc) -ROM, FD (Flexible Disc-Cartridge), and the like that are exchangeably loaded into the computer apparatus.
本発明を適用したLSIは、種々の異なる実システムに適用することが可能である。この際の利点としては、
1. 本発明を適用した実システムでは、本発明のバス変換ユニットの特有の効果である低レイテンシアクセスに基づいて、チップ外へのアクセスの場合も、レイテンシ(クロックサイクル数)を小さくすることができる。
2. バスマスタユニット及びバススレーブユニットデータ間のインタフェースのみを行えばよく、データの転送先の状況を考慮して設計を行う必要がないので、LSIを将来、より大きいビット幅のバスで置き換えても、そのチップを、同一システム内で使用し続けることができる。
An LSI to which the present invention is applied can be applied to various different real systems. As an advantage in this case,
1. In the actual system to which the present invention is applied, the latency (number of clock cycles) can be reduced even in the case of access to the outside of the chip, based on the low latency access which is a unique effect of the bus conversion unit of the present invention.
2. Only the interface between the bus master unit and bus slave unit data needs to be performed, and there is no need to design in consideration of the situation of the data transfer destination, so even if the LSI is replaced with a bus of a larger bit width in the future, The chip can continue to be used in the same system.
さらに、本発明のバス接続回路を備えることによって、ビット幅の異なる複数のバスのデータによって任意の情報処理を行う情報処理システムを構成することができる。また、本発明のバス接続回路又は上記の情報処理システムは、半導体基板上に集積回路として形成することが可能であり、これらの回路・システム情報を電子データとして記憶媒体に記録することもできる。 Furthermore, by providing the bus connection circuit of the present invention, it is possible to configure an information processing system that performs arbitrary information processing using data of a plurality of buses having different bit widths. Also, the bus connection circuit of the present invention or the information processing system described above can be formed as an integrated circuit on a semiconductor substrate, and these circuit / system information can be recorded as electronic data in a storage medium.
1,1W,1R バス
2,2W,2R バス
3,3W,3R データ変換ユニット(データ変換手段)
4 バスマスタユニット(マスタ側のインタフェース手段)
5 バスマスタユニット(マスタ側のインタフェース手段)
6,6A バススレーブユニット(スレーブ側のインタフェース手段)
7,7A バススレーブユニット(スレーブ側のインタフェース手段)
8 バスマスタユニット(マスタ側のインタフェース手段)
9 バスマスタユニット(マスタ側のインタフェース手段)
10,10A バススレーブユニット(スレーブ側のインタフェース手段)
11,11A バススレーブユニット(スレーブ側のインタフェース手段)
12,12A,12B 調停回路(調停手段)
50 共通制御コマンドバス
101,102,103,201,202,203 バス
104,106,108,204,206,208 バスマスタユニット(マスタ側のインタフェース手段)
105,107,109,205,207,209 バススレーブユニット(スレーブ側のインタフェース手段)
110,111,210 データ変換ユニット(データ変換手段)
112,211 調停回路(調停手段)
1, 1W,
4 Bus master unit (master side interface means)
5 Bus master unit (interface on the master side)
6,6A bus slave unit (interface means on the slave side)
7,7A Bus slave unit (slave side interface means)
8 Bus master unit (master side interface means)
9 Bus master unit (master side interface means)
10, 10A bus slave unit (interface means on the slave side)
11, 11A Bus slave unit (interface means on the slave side)
12, 12A, 12B Arbitration circuit (arbitration means)
50 Common
105, 107, 109, 205, 207, 209 Bus slave unit (interface means on the slave side)
110, 111, 210 Data conversion unit (data conversion means)
112, 211 arbitration circuit (arbitration means)
Claims (12)
前記第1のデータビット幅とは異なる第2のデータビット幅の第3のユニットから出力される第3の出力信号及び第3のイネーブル信号であって、変換ユニットを介して供給される前記第3の出力信号及び前記第3のイネーブル信号と前記第1の選択回路の出力と前記第1及び第2のイネーブル信号に基づく信号とを受け、前記第1または第2のイネーブル信号がアクティブの時は前記第1の選択回路の出力を前記第1及び第2のユニットに供給し、前記第3のイネーブル信号がアクティブの時には前記第3の出力信号を前記第1及び第2のユニットに供給する第2の選択回路とを備えることを特徴とするバス接続回路。 A first output signal and a first enable signal output from a first unit having a first data bit width, and a second output output from a second unit having the first data bit width A first selection circuit that receives the signal and the second enable signal and selectively outputs the first or second output signal in response to the first or second enable signal becoming active;
A third output signal and a third enable signal output from a third unit having a second data bit width different from the first data bit width, the first output signal being supplied via a conversion unit. 3 output signal, the third enable signal, the output of the first selection circuit, and a signal based on the first and second enable signals, and the first or second enable signal is active Supplies the output of the first selection circuit to the first and second units, and supplies the third output signal to the first and second units when the third enable signal is active. A bus connection circuit comprising: a second selection circuit.
前記第1のデータビット幅とは異なる第2のデータビット幅の第3のバスマスタユニットから出力される第3の出力信号及び第3のイネーブル信号であって、変換ユニットを介して供給された前記第3の出力信号及び前記第3のイネーブル信号と前記第1の選択回路の出力と前記第1及び第2のイネーブル信号に基づく信号とを受け、前記第1または第2のイネーブル信号がアクティブの時は前記第1の選択回路の出力を前記第1のデータビット幅のバスマスタユニットに対して供給し、前記第3のイネーブル信号がアクティブの時には前記第3の出力信号を前記バスマスタユニットに対して供給する第2の選択回路とを備えることを特徴とするバス接続回路。 The first output signal and the first enable signal output from the first bus slave unit having the first data bit width, and the second output signal output from the second bus slave unit having the first data bit width. The first selection circuit receives the output signal and the second enable signal and selectively outputs the first or second output signal in response to the activation of the first or second enable signal. When,
A third output signal and a third enable signal output from a third bus master unit having a second data bit width different from the first data bit width, and supplied via a conversion unit; In response to a third output signal, the third enable signal, an output of the first selection circuit, and a signal based on the first and second enable signals, the first or second enable signal is active. When the output of the first selection circuit is supplied to the bus master unit having the first data bit width, the third output signal is supplied to the bus master unit when the third enable signal is active. And a second selection circuit for supplying the bus connection circuit.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2005321093A JP4249741B2 (en) | 2005-11-04 | 2005-11-04 | Bus system and information processing system including bus system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2005321093A JP4249741B2 (en) | 2005-11-04 | 2005-11-04 | Bus system and information processing system including bus system |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2002100573A Division JP4198376B2 (en) | 2002-04-02 | 2002-04-02 | Bus system and information processing system including bus system |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2006085732A JP2006085732A (en) | 2006-03-30 |
| JP4249741B2 true JP4249741B2 (en) | 2009-04-08 |
Family
ID=36164116
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2005321093A Expired - Fee Related JP4249741B2 (en) | 2005-11-04 | 2005-11-04 | Bus system and information processing system including bus system |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4249741B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2015001986A (en) * | 2013-06-13 | 2015-01-05 | 富士通株式会社 | Data transfer device, buffering circuit, and buffering method |
Family Cites Families (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| AU636739B2 (en) * | 1990-06-29 | 1993-05-06 | Digital Equipment Corporation | High speed bus system |
| JPH04246757A (en) * | 1991-02-01 | 1992-09-02 | Nec Corp | High speed bus transfer system |
| JPH064465A (en) * | 1992-06-24 | 1994-01-14 | Fujitsu Ltd | Common bus control method |
| JPH09153009A (en) * | 1995-12-01 | 1997-06-10 | Hitachi Ltd | Hierarchical bus arbitration method |
| JP3521166B2 (en) * | 1996-02-14 | 2004-04-19 | 松下電器産業株式会社 | Computer system and arbitration method thereof |
| JPH1021186A (en) * | 1996-06-28 | 1998-01-23 | Toshiba Corp | Computer system and bus controller |
| JP3247076B2 (en) * | 1996-10-24 | 2002-01-15 | 株式会社メルコ | SCSI-IDE bus conversion adapter |
| JP4164786B2 (en) * | 1999-06-18 | 2008-10-15 | 富士通株式会社 | Method for avoiding bus contention in processor system |
| JP2001014270A (en) * | 1999-07-01 | 2001-01-19 | Matsushita Electric Ind Co Ltd | Data transfer method, data transfer device and use system thereof |
-
2005
- 2005-11-04 JP JP2005321093A patent/JP4249741B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2006085732A (en) | 2006-03-30 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4198376B2 (en) | Bus system and information processing system including bus system | |
| JP4785112B2 (en) | Bus system for linking a subsystem including multiple masters to a bus based on an open core protocol | |
| US7380045B2 (en) | Protocol conversion and arbitration circuit, system having the same, and method for converting and arbitrating signals | |
| JP2004171209A (en) | Shared memory data transfer device | |
| Ahmed et al. | Design and implementation of a direct memory access controller for embedded applications | |
| JP2014041618A (en) | Use of completer knowledge of memory region ordering requirements to modify transaction attributes | |
| JP6819684B2 (en) | Bus control circuit, semiconductor integrated circuit, circuit board, information processing device and bus control method | |
| CN105988968A (en) | Semiconductor device | |
| KR100814904B1 (en) | On-Chip Communication architecture | |
| US8359419B2 (en) | System LSI having plural buses | |
| JP4902640B2 (en) | Integrated circuit and integrated circuit system | |
| JP2004118252A (en) | Semiconductor data processing equipment | |
| JP2002149591A (en) | Method and device for optimizing bus in processor local bus system | |
| US20030236941A1 (en) | Data processor | |
| JP4249741B2 (en) | Bus system and information processing system including bus system | |
| US20070156937A1 (en) | Data transfer in multiprocessor system | |
| JP2007048280A (en) | Integrated circuit device and method for bus monitoring | |
| JP2006293927A (en) | Direct memory access control device and system LSI including direct memory access control device | |
| US7987437B2 (en) | Structure for piggybacking multiple data tenures on a single data bus grant to achieve higher bus utilization | |
| JP2006119724A (en) | CPU system, bus bridge, control method thereof, and computer system | |
| US20100153610A1 (en) | Bus arbiter and bus system | |
| JP2006285872A (en) | Multi CPU system | |
| JP2006031227A (en) | Computer system using dma transfer | |
| JP2003085125A (en) | Memory controller and memory control method | |
| KR20050067324A (en) | Interface device between master/slave devices and method thereof |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20070703 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20081224 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090115 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120123 Year of fee payment: 3 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120123 Year of fee payment: 3 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120123 Year of fee payment: 3 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130123 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130123 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140123 Year of fee payment: 5 |
|
| LAPS | Cancellation because of no payment of annual fees |