JP2009080609A - 半導体装置、バスインターコネクトおよびバスインターコネクトのデータ転送方法 - Google Patents

半導体装置、バスインターコネクトおよびバスインターコネクトのデータ転送方法 Download PDF

Info

Publication number
JP2009080609A
JP2009080609A JP2007248653A JP2007248653A JP2009080609A JP 2009080609 A JP2009080609 A JP 2009080609A JP 2007248653 A JP2007248653 A JP 2007248653A JP 2007248653 A JP2007248653 A JP 2007248653A JP 2009080609 A JP2009080609 A JP 2009080609A
Authority
JP
Japan
Prior art keywords
slave
circuit
data transfer
signal
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2007248653A
Other languages
English (en)
Inventor
祐二 ▲樽▼井
Yuji Tarui
Seiichi Hasegawa
清一 長谷川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Semiconductor Ltd
Original Assignee
Fujitsu Semiconductor Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Semiconductor Ltd filed Critical Fujitsu Semiconductor Ltd
Priority to JP2007248653A priority Critical patent/JP2009080609A/ja
Publication of JP2009080609A publication Critical patent/JP2009080609A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Bus Control (AREA)

Abstract

【課題】転送速度の向上を図る。また、装置の小型化を図る。
【解決手段】半導体装置1が備えるバスインターコネクト2は、スレーブ間接続回路3と、データ処理回路4とを有している。スレーブ間接続回路3は、複数のスレーブ回路5a〜5d間を接続し、少なくとも2つの異なる経路を確保できる。データ処理回路4は、スレーブ回路5a〜5dのうちの所定のスレーブ回路から他のスレーブ回路へのデータ転送を要求する転送要求信号を受け取る度に、これらのスレーブ回路間の経路を確保する信号をスレーブ間接続回路3に出力するデータ転送経路調停部4aと、確保された各経路により接続されるスレーブ回路5a〜5dそれぞれに対し、データ転送を行うための信号を出力する制御信号生成部4bとを備えている。
【選択図】図1

Description

本発明は半導体装置、バスインターコネクトおよびバスインターコネクトのデータ転送方法に関し、特に、複数のデータ転送を同時に行う半導体装置、バスインターコネクトおよびバスインターコネクトのデータ転送方法に関する。
CPU(Central Processing Unit)コアの処理を合理的に行うための機能としてDMAC(Direct Memory Access Controller)が知られている。DMACは、メモリ上にあるまとまったデータを、バスを介して外部バスに転送する場合に、CPUコアに代わって転送処理を行う。
図8は、従来のLSIを示す図である。
LSI(Large Scale Integration)90は、バスインターコネクト91を介してCPU92、DMAC(バスマスター)93、バス調停回路94、およびスレーブ回路95〜97が接続されている。
スレーブ回路95からのデータ転送要求信号DREQがDMAC93において受け付けられ(ステップS91)、それに対応したバス権獲得要求信号BREQが、バス調停回路94に発行される(ステップS92)。
バス調停回路94は、データバスが使用可能な状態のときにDMAC93にバス使用許可信号BACKを発行する(ステップS93)。
DMAC93は、バス使用許可信号BACKに対する、データ転送許可信号DACKをスレーブ回路95に発行する(ステップS94)。また、スレーブ回路95に対してリード動作制御を行い(ステップS95)、データのリード転送を行う(ステップS96)。
次に、スレーブ回路96に対してライト動作制御を行い(ステップS97)、データのライト転送を行い(ステップS98)、一連のデータ転送動作を完了させる。
このように、従来はDMACを介してのみ、スレーブ回路間のデータ転送が可能であり、また、データ転送元、データ転送先が異なる場合でも同時に複数のデータ転送が不可能であった。例えば、図8においては、このスレーブ回路95からDMAC93を経由してスレーブ回路96にデータ転送を行っているときに、スレーブ回路97からデータ転送要求信号DREQを発行(ステップS99)しても、バス使用の権利は与えられずにデータ転送を行うことができないため、転送速度が遅いという問題があった。
そこで、データの同時転送を行うことにより、データ転送の高速化を図るための技術が知られている(例えば、特許文献1参照。)。
特開2005−309711号公報
しかし、特許文献1に係る発明は、メモリを使用してデータを一時保管するため、転送速度が低下するという問題があった。また、回路規模が増大するという問題があった。
本発明はこのような点に鑑みてなされたものであり、転送速度の向上を図ることができる半導体装置、バスインターコネクトおよびバスインターコネクトのデータ転送方法を提供することを目的とする。
また、他の目的として装置の小型化を図ることができる半導体装置、バスインターコネクトおよびバスインターコネクトのデータ転送方法を提供することを目的とする。
本発明では上記課題を解決するために、複数のデータ転送を同時に行う半導体装置において、複数のスレーブ回路間を接続し、少なくとも2つの異なるデータ転送経路を確保できるスレーブ間接続回路と、前記複数のスレーブ回路のうち、所定のスレーブ回路から他のスレーブ回路へのデータ転送を要求する転送要求信号を受け取る度に、これらのスレーブ回路間の前記経路を確保する信号を前記スレーブ間接続回路に出力するデータ転送経路調停部と、確保された前記各経路により接続される前記各スレーブ回路それぞれに対し、データ転送を行うための信号を出力する制御信号生成部と、を有するデータ処理回路と、を備えるバスインターコネクトを有することを特徴とする半導体装置が提供される。
本発明は、バスインターコネクトが、予め経路を把握し全てのデータ転送とその制御を行うようにしたので、複数のスレーブ回路間で直接データ転送を行うことができる。これにより、転送速度の向上を図ることができる。また、装置の小型化を図ることができる。
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
まず、本発明の概要について説明し、その後、実施の形態を説明する。
図1は、本発明の概要を示す図である。
半導体装置1は、バスインターコネクト2と、複数のスレーブ回路5a〜5dを有している。
バスインターコネクト2は、スレーブ間接続回路3と、データ処理回路4とを有している。
スレーブ回路5a〜5dは、それぞれデータ処理回路(マスタ回路)4によって制御されるデバイスである。
スレーブ間接続回路3は、複数のスレーブ回路5a〜5d間を接続し、少なくとも2つの異なる経路を確保できる。
ここで、異なる経路とは、データ転送元とデータ転送先とが共に異なる経路を言い、図1では、スレーブ回路5aからスレーブ回路5bへの経路とスレーブ回路5cからスレーブ回路5dへの経路とが確保されている。
データ処理回路4は、データバス上のデータ転送制御とスレーブ回路5a〜5dの制御を行う機能を実現するため、データ転送経路調停部4aと、制御信号生成部4bとを有している。
データ転送経路調停部4aは、複数のスレーブ回路のうち、所定のスレーブ回路から他のスレーブ回路へのデータ転送を要求する転送要求信号を受け取る度に、これらのスレーブ回路間の転送経路を確保する信号をスレーブ間接続回路3に出力する。スレーブ間接続回路3は、この信号を受け取ることにより、前述した経路を確保する。
制御信号生成部4bは、確保された各経路により接続される各スレーブ回路それぞれに対し、データ転送を行うための信号を出力する。
図1では、データ転送要求信号を出力したスレーブ回路5aと、このスレーブ回路5aとの間でデータ転送を行うスレーブ回路5bとに対してデータ転送を行うための信号を出力する。また、データ転送要求信号を出力したスレーブ回路5cと、このスレーブ回路5cとの間でデータ転送を行うスレーブ回路5dとに対してデータ転送を行うための信号を出力する。なお、データ処理回路4は、データ転送要求信号により、リード動作を要求しているのかライト動作を要求しているのかを予め識別しており、制御信号生成部4bは、この動作に即した信号を各スレーブ回路に転送する。
このような半導体装置1によれば、スレーブ回路5a、5cがそれぞれ出力するデータ転送要求信号がデータ処理回路4に入力される度に、データ転送経路調停部4aにより、転送経路を確保する信号がスレーブ間接続回路3に出力される。スレーブ間接続回路3により、スレーブ回路5aからスレーブ回路5bへの経路とスレーブ回路5cからスレーブ回路5dへの経路とが確保される。そして、制御信号生成部4bにより、スレーブ回路5a〜5dそれぞれに対し、データ転送を行うための信号が出力される。
これにより、スレーブ回路5aからスレーブ回路5bにデータが転送されるとともに、スレーブ回路5cからスレーブ回路5dにデータが転送される。
以下、本発明の実施の形態を説明する。
図2は、実施の形態のバスインターコネクトの構成を示す図である。
バスインターコネクト10は、データバス上の全てのデータ転送を制御するデータトランザクションコントローラ(DTC:Data Transaction Controller)11と、スレーブ回路21〜24間のデータバスを直接接続可能とするマルチプレクサ回路(Mux-1〜Mux-4)12〜15とを有している。
また、図2中、スレーブ回路21(Slave-1)、スレーブ回路24(Slave-4)は、他のスレーブ回路との間でデータの転送を行う機能を備える回路である。スレーブ回路21は、データトランザクションコントローラ11に対し、データの転送を希望する他のスレーブ回路や、そのスレーブ回路とのデータの転送方向(リード/ライト)の情報を含むデータ転送要求信号Ch1_DREQを出力する。また、スレーブ回路24は、データトランザクションコントローラ11に対し、データの転送を希望する他のスレーブ回路や、そのスレーブ回路とのデータの転送方向(リード/ライト)等を含むデータ転送要求信号Ch2_DREQを出力する。
スレーブ回路22(Slave-2)、スレーブ回路23(Slave-3)は、例えばSRAM(Static Random Access Memory)等のメモリで構成され、所定のデータを格納する機能を備える回路である。
データトランザクションコントローラ11は、スレーブ回路21からのデータ転送要求信号Ch1_DREQ、スレーブ回路24からのデータ転送要求信号Ch2_DREQそれぞれに対応して、マルチプレクサ回路12〜15を制御する転送経路選択用信号MUX_SEL[7:0]を出力する。
また、データ転送を行うスレーブ回路にデータバスを割り当てるためのチップセレクト(CS)信号、データ転送を行うスレーブ回路にデータの読み出しアドレスを指示するリード動作用アドレス信号、読み出し動作の許否を制御するリード動作用制御信号、データの書き込みアドレスを指示するライト動作用アドレス信号、書き込み動作の許否を制御するライト動作用制御信号を出力する。
また、データ転送要求信号Ch1_DREQに対しては、スレーブ回路21が要求した回路間のデータ転送を許可するデータ転送許可信号Ch1_DACKをスレーブ回路21に出力する。データ転送要求信号Ch2_DREQに対しては、スレーブ回路24が要求した回路間のデータ転送を許可するデータ転送許可信号Ch2_DACKをスレーブ回路24に出力する。
マルチプレクサ回路12〜15は、それぞれスレーブ回路21〜24に対応して設けられており、データトランザクションコントローラ11からの転送経路選択用信号MUX_SEL[7:0]に基づいて、対応するスレーブ回路以外の他のスレーブ回路からの入力信号のうち1つの信号を選択する。これにより、データ転送を行うスレーブ回路間の経路が確保される。
例えば、マルチプレクサ回路12は、スレーブ回路21に対応して設けられており、その入力には、スレーブ回路22〜24の出力が入力される。マルチプレクサ回路12は、転送経路選択用信号MUX_SEL[7:0]に基づいてスレーブ回路22〜24の出力のうち1つを選択し、スレーブ回路21に出力する。なお、選択ルールについては後述する。
スレーブ回路21〜24は、それぞれ、データトランザクションコントローラ11からのチップセレクト信号、リード動作用アドレス信号、リード動作用制御信号、ライト動作用アドレス信号およびライト動作用制御信号に従って動作する。
このような回路構成のバスインターコネクト10において、データトランザクションコントローラ11は、複数データの同時転送の制御を行う。簡単に説明すると、スレーブ回路21、24から同時にまたは逐次、データ転送要求信号Ch1_DREQ、Ch2_DREQを受信すると、その要求内容に応じて各マルチプレクサ回路12〜15に転送経路選択用信号MUX_SEL[7:0]を送信して、データの転送経路を確保する。
例えば、図2では経路を点線で示しており、スレーブ回路22からスレーブ回路21へのデータ転送経路を確保し、スレーブ回路24からスレーブ回路23へのデータ転送経路を確保する。
また、スレーブ回路21、24にデータ転送許可信号DACKを出力し、スレーブ回路21〜24のリード動作の制御とライト動作の制御も行う。これにより、スレーブ回路21〜24間でデータを直接(バッファ等を介さずに)転送する。
図3は、マルチプレクサ回路の選択ルールを示す図である。
8ビットの転送経路選択用信号MUX_SEL[7:0]のうち最上位の2ビットが、マルチプレクサ回路15の制御ビット(Mux−4制御ビット)を示し、次の2ビットが、マルチプレクサ回路14の制御ビット(Mux−3制御ビット)を示し、次の2ビットが、マルチプレクサ回路13の制御ビット(Mux−2制御ビット)を示し、最下位の2ビットが、マルチプレクサ回路12の制御ビット(Mux−1制御ビット)を示している。すなわち、転送経路選択用信号MUX_SEL[7:0]のビット数は、マルチプレクサ回路12〜15(スレーブ回路21〜24)の個数に対応している。
マルチプレクサ回路12〜15は、自己のビット領域のビットパターンに対応する処理を行う。各ビットについて詳しく見ると、以下のようになる。
マルチプレクサ回路15は、Mux−4制御ビットが“00”の場合、未選択、“01”の場合、スレーブ回路21(Slave-1)を選択、“10”の場合、スレーブ回路22(Slave-2)を選択、“11”の場合、スレーブ回路23(Slave-3)を選択する。
マルチプレクサ回路14は、Mux−3制御ビットが“00”の場合、未選択、“01”の場合、スレーブ回路21(Slave-1)を選択、“10”の場合、スレーブ回路22(Slave-2)を選択、“11”の場合、スレーブ回路24(Slave-4)を選択する。
マルチプレクサ回路13は、Mux−2制御ビットが“00”の場合、未選択、“01”の場合、スレーブ回路21(Slave-1)を選択、“10”の場合、スレーブ回路23(Slave-3)を選択、“11”の場合、スレーブ回路24(Slave-4)を選択する。
マルチプレクサ回路12は、Mux−1制御ビットが“00”の場合、未選択、“01”の場合、スレーブ回路22(Slave-2)を選択、“10”の場合、スレーブ回路23(Slave-3)を選択、“11”の場合、スレーブ回路24(Slave-4)を選択する。
図2に示す回路を例にとると、データトランザクションコントローラ11は、スレーブ回路24からスレーブ回路23へのデータ転送経路を確保するために、Mux−4制御ビットを“00”に設定する。Mux−3制御ビットを“11”に設定する。
また、スレーブ回路22からスレーブ回路21へのデータ転送経路を確保するために、Mux−2制御ビットを“00”に設定し、Mux−1制御ビットを、“01”に設定する。
従って、データトランザクションコントローラ11は、転送経路選択用信号MUX_SEL[7:0]“00110001”を出力する。
これにより、マルチプレクサ回路15は、未選択となり、マルチプレクサ回路14は、スレーブ回路24からの信号を選択する。
また、マルチプレクサ回路13は、未選択となり、マルチプレクサ回路12は、スレーブ回路22からの信号を選択する。
図4は、データトランザクションコントローラの回路構成を示す図である。
データトランザクションコントローラ11は、チャネル制御回路111、112と、データ転送経路調停回路113と、CS信号生成回路114と、制御信号生成回路115とを有している。
チャネル制御回路111は、マルチプレクサ回路12〜15の選択ルールを有しており、スレーブ回路21からのデータ転送要求信号Ch1_DREQの内容に応じた転送経路選択用信号MUX_SEL1[7:0]を生成し、データ転送経路調停回路113に出力する。
その後、チャネル制御回路111は、データ転送経路調停回路113から信号Ch1_DACK_ENを受け取ると、データ転送許可信号Ch1_DACKを生成し、スレーブ回路21およびデータ転送経路調停回路113に出力する。
また、リード/ライト動作許可信号RD_WR、32ビットのリード動作用アドレス信号RAD[31:0]および32ビットのライト動作用アドレス信号WAD[31:0]を生成し、制御信号生成回路115に出力する。
チャネル制御回路112は、マルチプレクサ回路12〜15の選択ルールを有しており、スレーブ回路24からデータ転送要求信号Ch2_DREQの内容に応じた転送経路選択用信号MUX_SEL2[7:0]を生成し、データ転送経路調停回路113に出力する。
その後、チャネル制御回路112は、データ転送経路調停回路113から信号Ch2_DACK_ENを受け取ると、データ転送許可信号Ch2_DACKを生成し、スレーブ回路24およびデータ転送経路調停回路113に出力する。
また、リード/ライト動作許可信号RD_WR、リード動作用アドレス信号RAD[31:0]およびライト動作用アドレス信号WAD[31:0]を生成し、制御信号生成回路115に出力する。
データ転送経路調停回路113は、チャネル制御回路111、112から転送経路選択用信号MUX_SEL1[7:0]、MUX_SEL2[7:0]のいずれかを受け取ると、受け取った転送経路選択用信号MUX_SEL1[7:0]またはMUX_SEL2[7:0]を転送経路選択用信号MUX_SEL[7:0]として出力する。
また、転送経路選択用信号MUX_SEL1[7:0]を受け取り転送経路選択用信号MUX_SEL[7:0]として出力しているときに、転送経路選択用信号MUX_SEL2[7:0]を受け取ると、現在出力中の転送経路選択用信号MUX_SEL[7:0]の各ビットに転送経路選択用信号MUX_SEL2[7:0]の各ビットの変化を反映させて新たな転送経路選択用信号MUX_SEL[7:0]を生成し、出力する。
同様に、転送経路選択用信号MUX_SEL2[7:0]を受け取り転送経路選択用信号MUX_SEL[7:0]として出力しているときに、転送経路選択用信号MUX_SEL1[7:0]を受け取ると、現在出力中の転送経路選択用信号MUX_SEL[7:0]の各ビットに転送経路選択用信号MUX_SEL1[7:0]の各ビットの変化を反映させて新たな転送経路選択用信号MUX_SEL[7:0]を生成し、出力する。
また、データ転送経路調停回路113は、転送経路選択用信号MUX_SEL1[7:0]を受け取った場合、チャネル制御回路111に信号Ch1_DACK_ENを出力し、転送経路選択用信号MUX_SEL2[7:0]を受け取った場合、チャネル制御回路112に信号Ch2_DACK_ENを出力する。
CS信号生成回路114は、転送経路選択用信号MUX_SEL[7:0]の変化しているビットに対応してチップセレクト信号CS_S1〜CS_S4を生成する。
制御信号生成回路115は、チャネル制御回路111、112からのリード/ライト動作許可信号RD_WRおよびリード動作用アドレス信号RAD[31:0]、WAD[31:0]並びにデータ転送経路調停回路113からの転送経路選択用信号MUX_SEL[7:0]の組合せに基づいて、適切なスレーブ回路21〜24へのリード動作用アドレス信号RAD_S4[31:0]〜RAD_S1[31:0]、リード動作用制御信号RD_S4〜RD_S1、ライト動作用アドレス信号WAD_S4[31:0]〜WAD_S1[31:0]、ライト動作用制御信号WR_S4〜WR_S1を生成する。
図5は、チャネル制御回路の構成を示す図である。
チャネル制御回路111、112の構成は等しいため、代表的にチャネル制御回路111の構成を示す。
チャネル制御回路111は、DREQ/DACK制御回路111aと、リード/ライト信号生成回路111bと、レジスタ111cと、リード・アドレスデコーダ111dと、ライト・アドレスデコーダ111eと、転送経路選択回路111fと、リード・アドレスカウンタ111gと、ライト・アドレスカウンタ111hと、転送データカウンタ111iと、バースト長カウンタ111jとを有している。
DREQ/DACK制御回路111aは、データ転送経路調停回路113からの信号Ch1_DACK_ENに応じて、スレーブ回路21からのデータ転送要求信号Ch1_DREQに対応するデータ転送許可信号Ch1_DACKを生成する。
リード/ライト信号生成回路111bは、データ転送許可信号Ch1_DACKに基づいて、リード/ライト動作許可信号RD_WRを生成する。
レジスタ111cには、リード・アドレス、ライト・アドレス、転送データ・サイズおよびバースト・サイズが格納されている。
リード・アドレスデコーダ111dは、レジスタ111cに格納されているリード・アドレスをデコードし、転送経路選択回路111fに出力する。
ライト・アドレスデコーダ111eは、レジスタ111cに格納されているライト・アドレスをデコードし、転送経路選択回路111fに出力する。
転送経路選択回路111fは、データ転送要求信号Ch1_DREQとリード・アドレスデコーダ111dおよびライト・アドレスデコーダ111eの出力に基づいて転送経路選択用信号MUX_SEL1[7:0]を生成する。
リード・アドレスカウンタ111gは、リード/ライト動作許可信号RD_WRと、レジスタ111cに格納されているリード・アドレスに基づいて、リード動作用アドレス信号RAD[31:0]を生成する。
ライト・アドレスカウンタ111hは、リード/ライト動作許可信号RD_WRと、レジスタ111cに格納されているライト・アドレスに基づいて、ライト動作用アドレス信号WAD[31:0]を生成する。
転送データカウンタ111iは、リード/ライト動作許可信号RD_WRと、レジスタ111cに格納されている転送データ・サイズに基づいて、転送データをカウントし、そのカウント信号dt_countをDREQ/DACK制御回路111aに出力する。
バースト長カウンタ111jは、リード/ライト動作許可信号RD_WRと、レジスタ111cに格納されているバースト・サイズとに基づいて、バースト長をカウントし、そのカウント信号bst_countをDREQ/DACK制御回路111aに出力する。
次に、バスインターコネクト10のデータ転送方法を説明する。
以下、スレーブ回路22からスレーブ回路21にデータ転送を開始し、そのデータ転送途中にスレーブ回路24からスレーブ回路23にデータ転送を開始して同時転送を実現する場合を例にとって説明する。
図6は、バスインターコネクトのデータ転送方法を示す図である。
図6中、上から(a)〜(h)は、チャネル制御回路111に関する信号であり、(i)〜(p)は、チャネル制御回路112に関する信号であり、(q)〜(w)は、データトランザクションコントローラ11全体の信号である。
なお、図6中、リード/ライト動作許可信号RD_WR(図6(e)、(m))、チップセレクト信号CS_S1〜CS_S4(図6(r)、(u))およびリード動作用制御信号RD_S2、RD_S4、ライト動作用制御信号WR_S1、WR_S3(図6(s)、(v))は、Lowアクティブの信号である。
チャネル制御回路111は、スレーブ回路21からのデータ転送要求信号Ch1_DREQを受け取ると(図6(a))、MUX_SEL1[7:0]信号“00000001b”を生成し(図6(b))、データ転送経路調停回路113に出力する。
データ転送経路調停回路113は、受け取ったMUX_SEL1[7:0]信号“00000001b”に応じてMUX_SEL[7:0]信号“00000001b”を出力する(図6(q))。これにより、マルチプレクサ回路12は、スレーブ回路22からの信号を選択する。
また、データ転送経路調停回路113は、信号Ch1_DACK_ENを出力する(図6(c))。
また、CS信号生成回路114は、MUX_SEL[7:0]信号“00000001b”を受け取ると、チップセレクト信号CS_S1、CS_S2を出力する(図6(r))。
チャネル制御回路111が、データ転送経路調停回路113からの信号Ch1_DACK_ENを受け取ると、データ転送経路調停回路113およびスレーブ回路21にデータ転送許可信号Ch1_DACKを出力する(図6(d))。
その後、チャネル制御回路111のリード/ライト信号生成回路111bは、リード/ライト動作許可信号RD_WRを制御信号生成回路115に出力する(図6(e))。
制御信号生成回路115は、MUX_SEL[7:0]信号“00000001b”から、スレーブ回路22からスレーブ回路21へのデータ転送であると判断し、スレーブ回路21へのライト動作用制御信号WR_S1を生成する。また、スレーブ回路22へのリード動作用制御信号RD_S2を生成する(図6(s))。
また、チャネル制御回路111のリード・アドレスカウンタ111gおよびライト・アドレスカウンタ111hは、リード動作用アドレス信号RAD[31:0]、ライト動作用アドレス信号WAD[31:0]を生成する(図6(f)、(g))。また、転送データカウンタ111iは、カウント信号dt_countをDREQ/DACK制御回路111aに出力する(図6(h))。
制御信号生成回路115は、チャネル制御回路111からのライト動作用アドレス信号WAD[31:0]を用いてスレーブ回路21へのライト動作用アドレス信号WAD_S1[31:0]を生成し、ライト動作用制御信号WR_S1とともにパラレル出力する。また、チャネル制御回路111からのリード動作用アドレス信号RAD[31:0]を用いてスレーブ回路22へのリード動作用アドレス信号RAD_S2[31:0]を生成し、リード動作用制御信号RD_S2とともにパラレル出力する。
これにより、スレーブ回路22からスレーブ回路21にデータの出力が開始される(図6(t))。
一方、チャネル制御回路112は、スレーブ回路24からのデータ転送要求信号Ch2_DREQを受け取ると(図6(i))、MUX_SEL2[7:0]信号“00110000b”を出力する(図6(j))。
これにより、データ転送経路調停回路113は、現在マルチプレクサ回路12〜15に出力している転送経路選択用信号MUX_SEL[7:0]信号“00000001b”に、転送経路選択用信号MUX_SEL2[7:0]“00110000b”を足し合わせたMUX_SEL[7:0]信号“00110001b”を出力する(図6(q))。これにより、マルチプレクサ回路14は、スレーブ回路24からの信号を選択する。
また、データ転送経路調停回路113は、信号Ch2_DACK_ENを出力する(図6(k))。
また、CS信号生成回路114は、MUX_SEL[7:0]信号“00110001b”を受け取ると、チップセレクト信号CS_S1、CS_S2はそのままでチップセレクト信号CS_S3、CS_S4を出力する(図6(u))。
チャネル制御回路112が、データ転送経路調停回路113からの信号Ch2_DACK_ENを受け取ると、データ転送経路調停回路113およびスレーブ回路24にデータ転送許可信号Ch2_DACKを出力する(図6(l))。
その後、チャネル制御回路112のリード/ライト信号生成回路は、リード/ライト動作許可信号RD_WRを制御信号生成回路115に出力する(図6(m))。
制御信号生成回路115は、MUX_SEL[7:0]信号“00110001b”から、スレーブ回路22からスレーブ回路21へのデータ転送に加えてスレーブ回路24からスレーブ回路23へのデータ転送であると判断し、スレーブ回路23へのライト動作用制御信号WR_S3を生成する。また、スレーブ回路24へのリード動作用制御信号RD_S4を生成する(図6(v))。
また、チャネル制御回路112のリード・アドレスカウンタおよびライト・アドレスカウンタは、リード動作用アドレス信号RAD[31:0]、ライト動作用アドレス信号WAD[31:0]を生成する(図6(n)、(o))。また、チャネル制御回路112の転送データカウンタは、カウント信号dt_countをチャネル制御回路112のDREQ/DACK制御回路に出力する(図6(p))。
制御信号生成回路115は、チャネル制御回路112からのライト動作用アドレス信号WAD[31:0]を用いてスレーブ回路23へのライト動作用アドレス信号WAD_S3[31:0]を生成し、ライト動作用制御信号WR_S3とともにパラレル出力する。また、チャネル制御回路112からのリード動作用アドレス信号RAD[31:0]を用いてスレーブ回路24へのリード動作用アドレス信号RAD_S4[31:0]を生成し、リード動作用制御信号RD_S4とともにパラレル出力する。
これにより、スレーブ回路24からスレーブ回路23へのデータの出力が開始される(図6(w))。
その後、チャネル制御回路112は、スレーブ回路24からのデータ転送要求信号Ch2_DREQの出力が終了すると(図6(i))、MUX_SEL2[7:0]信号“00000000b”をデータ転送経路調停回路113に出力する(図6(j))。
また、チャネル制御回路112のリード・アドレスカウンタおよびライト・アドレスカウンタは、リード動作用アドレス信号RAD[31:0]、ライト動作用アドレス信号WAD[31:0]の生成を終了する(図6(n)、(o))。また、チャネル制御回路112の転送データカウンタは、カウント信号dt_countの生成を終了する。(図6(p))。
これにより、スレーブ回路24からスレーブ回路23へのデータの出力が終了する(図6(w))。
データ転送経路調停回路113は、現在マルチプレクサ回路12〜15に出力している転送経路選択用信号MUX_SEL[7:0]信号“00110001b”から、転送経路選択用信号MUX_SEL2[7:0]“00110000b”を減算したMUX_SEL[7:0]信号“00000001b”を出力する(図6(q))。これにより、マルチプレクサ回路14は、未選択となる。
その後、チャネル制御回路112のリード/ライト信号生成回路は、リード/ライト動作許可信号RD_WRの制御信号生成回路115への出力を終了する(図6(m))。
制御信号生成回路115は、ライト動作用制御信号WR_S3およびリード動作用制御信号RD_S4の生成を終了する(図6(v))。
その後、データ転送経路調停回路113は、信号Ch2_DACK_ENの出力を終了する(図6(k)参照)。
また、CS信号生成回路114は、MUX_SEL[7:0]信号“00000001b”を受け取ると、チップセレクト信号CS_S1、CS_S2はそのままでチップセレクト信号CS_S3、CS_S4の出力を終了する(図6(u))。
チャネル制御回路112が、データ転送経路調停回路113からの信号Ch2_DACK_ENの出力の終了を受け取ると、データ転送経路調停回路113およびスレーブ回路24へのデータ転送許可信号Ch2_DACKの出力を終了する(図6(l))。
その後、チャネル制御回路111は、スレーブ回路21からのデータ転送要求信号Ch1_DREQの出力が終了すると(図6(a))、MUX_SEL1[7:0]信号“00000000b”をデータ転送経路調停回路113に出力する(図6(b))。
また、チャネル制御回路111のリード・アドレスカウンタ111gおよびライト・アドレスカウンタ111hは、リード動作用アドレス信号RAD[31:0]、ライト動作用アドレス信号WAD[31:0]の生成を終了する(図6(f)、(g))。また、チャネル制御回路111の転送データカウンタ111iは、カウント信号dt_countの生成を終了する。(図6(h))。
これにより、スレーブ回路22からスレーブ回路21へのデータの出力が終了する(図6(t))。
データ転送経路調停回路113は、現在マルチプレクサ回路12〜15に出力している転送経路選択用信号MUX_SEL[7:0]信号“00000001b”から、転送経路選択用信号MUX_SEL1[7:0]“00000001b”を減算したMUX_SEL[7:0]信号“00000000b”を出力する(図6(q))。これにより、マルチプレクサ回路12は、未選択となる。
その後、チャネル制御回路111のリード/ライト信号生成回路111bは、リード/ライト動作許可信号RD_WRの制御信号生成回路115への出力を終了する(図6(e))。
制御信号生成回路115は、ライト動作用制御信号WR_S1およびリード動作用制御信号RD_S2の生成を終了する(図6(s))。
その後、データ転送経路調停回路113は、信号Ch1_DACK_ENの出力を終了する(図6(c))。
また、CS信号生成回路114は、MUX_SEL[7:0]信号“00000000b”を受け取ると、チップセレクト信号CS_S1、CS_S2の出力を終了する(図6(r))。
チャネル制御回路112が、データ転送経路調停回路113からの信号Ch1_DACK_ENの出力の終了を受け取ると、データ転送経路調停回路113およびスレーブ回路21へのデータ転送許可信号Ch1_DACKの出力を終了する(図6(d))。
図7は、実施の形態のバスインターコネクトを適用した半導体装置を示す図である。
LSI(半導体装置)100は、バスインターコネクト10と、バスブリッジ20と、CPU30と、ROM40と、DMAC50と、I/Oデバイス60と、バッファメモリ70とを有している。バスインターコネクト10は、バスブリッジ20を介してLSI100内の各デバイスに接続されている。
以上述べたように、本実施の形態のバスインターコネクト10によれば、データトランザクションコントローラ11が、データバス上のデータ転送制御とスレーブ回路21〜24の制御とを行うようにしたので、DMACを介さずに、スレーブ回路21〜24間のデータ転送経路をバスインターコネクト10内で実現することができる。これにより、複数データの同時転送を実現することができ、データ転送効率を向上させることができる。
また、図6に示すようなデータ転送を行うことで、データ保管用のバッファ等を用いることなく複数データの同時転送を実現することができる。
また、スレーブ回路21〜24間を直接接続するようにしたので、フライ・バイ転送を行うことができる。
以上、本発明の半導体装置、バスインターコネクトおよびバスインターコネクトのデータ転送方法を、図示の実施の形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、本発明に、他の任意の構成物や工程が付加されていてもよい。
また、本発明は、前述した実施の形態のうちの、任意の2以上の構成(特徴)を組み合わせたものであってもよい。
(付記1) 複数のデータ転送を同時に行う半導体装置において、
複数のスレーブ回路間を接続し、少なくとも2つの異なるデータ転送経路を確保できるスレーブ間接続回路と、
前記複数のスレーブ回路のうち、所定のスレーブ回路から他のスレーブ回路へのデータ転送を要求する転送要求信号を受け取る度に、これらのスレーブ回路間の前記経路を確保する信号を前記スレーブ間接続回路に出力するデータ転送経路調停部と、確保された前記各経路により接続される前記各スレーブ回路それぞれに対し、データ転送を行うための信号を出力する制御信号生成部と、を有するデータ処理回路と、
を備えるバスインターコネクトを有することを特徴とする半導体装置。
(付記2) 前記スレーブ間接続回路は、データ転送元とデータ転送先とがいずれも異なる前記経路を確保することを特徴とする付記1記載の半導体装置。
(付記3) 前記データ処理回路は、データ転送元のリードデータ転送と、データ転送先のライトデータ転送とを同時に行うよう前記データ転送経路調停部と前記制御信号生成部とを制御することを特徴とする付記1記載の半導体装置。
(付記4) 前記スレーブ間接続回路は、前記各スレーブ回路にそれぞれ対応して設けられ、当該スレーブ回路と他の前記スレーブ回路とを接続する複数の経路選択回路を有し、
前記データ転送経路調停部は、前記各経路選択回路それぞれに対し、接続する前記スレーブ回路を指定した信号を出力することを特徴とする付記1記載の半導体装置。
(付記5) 前記データ処理回路は、前記転送要求信号を受け取る度に、接続する前記スレーブ回路を指定するデータを前記経路選択回路毎に設けられた固有のビット領域に格納したビット信号を出力するチャネル制御回路をさらに有し、
前記データ転送経路調停部は、前記チャネル制御回路から前記ビット信号が出力される度に、出力された前記ビット信号における前記ビット領域の変化を反映させた前記ビット信号を前記各経路選択回路に出力することを特徴とする付記4記載の半導体装置。
(付記6) 複数のデータ転送を同時に行うバスインターコネクトにおいて、
複数のスレーブ回路間を接続し、少なくとも2つの異なるデータ転送経路を確保できるスレーブ間接続回路と、
前記複数のスレーブ回路のうち、所定のスレーブ回路から他のスレーブ回路へのデータ転送を要求する転送要求信号を受け取る度に、これらのスレーブ回路間の前記経路を確保する信号を前記スレーブ間接続回路に出力するデータ転送経路調停部と、確保された前記各経路により接続される前記各スレーブ回路それぞれに対し、データ転送を行うための信号を出力する制御信号生成部と、を有するデータ処理回路と、
を備えることを特徴とするバスインターコネクト。
(付記7) 複数のスレーブ回路間のデータ転送を同時に行うバスインターコネクトのデータ転送方法において、
前記複数のスレーブ回路のうち、所定のスレーブ回路から他のスレーブ回路へのデータ転送を要求する転送要求信号を受け取る度に、これらのスレーブ回路間のデータ転送経路を確保する信号を、前記各スレーブ回路間を接続し、少なくとも2つの異なる前記経路を確保できるスレーブ間接続回路に出力し、
確保された前記各経路により接続される前記各スレーブ回路それぞれに対し、データ転送を行うための信号を出力する、
ことを特徴とするバスインターコネクトのデータ転送方法。
本発明の概要を示す図である。 実施の形態のバスインターコネクトの構成を示す図である。 マルチプレクサ回路の選択ルールを示す図である。 データトランザクションコントローラの回路構成を示す図である。 チャネル制御回路の構成を示す図である。 バスインターコネクトのデータ転送方法を示す図である。 実施の形態のバスインターコネクトを適用した半導体装置を示す図である。 従来のLSIを示す図である。
符号の説明
1 半導体装置
2、10 バスインターコネクト
3 スレーブ間接続回路
4 データ処理回路
4a データ転送経路調停部
4b 制御信号生成部
5a〜5d、21〜24 スレーブ回路
11 データトランザクションコントローラ
12〜15 マルチプレクサ回路
100 LSI
111、112 チャネル制御回路
113 データ転送経路調停回路
114 CS信号生成回路
115 制御信号生成回路

Claims (5)

  1. 複数のデータ転送を同時に行う半導体装置において、
    複数のスレーブ回路間を接続し、少なくとも2つの異なるデータ転送経路を確保できるスレーブ間接続回路と、
    前記複数のスレーブ回路のうち、所定のスレーブ回路から他のスレーブ回路へのデータ転送を要求する転送要求信号を受け取る度に、これらのスレーブ回路間の前記経路を確保する信号を前記スレーブ間接続回路に出力するデータ転送経路調停部と、確保された前記各経路により接続される前記各スレーブ回路それぞれに対し、データ転送を行うための信号を出力する制御信号生成部と、を有するデータ処理回路と、
    を備えるバスインターコネクトを有することを特徴とする半導体装置。
  2. 前記スレーブ間接続回路は、データ転送元とデータ転送先とがいずれも異なる前記経路を確保することを特徴とする請求項1記載の半導体装置。
  3. 前記データ処理回路は、データ転送元のリードデータ転送と、データ転送先のライトデータ転送とを同時に行うよう前記データ転送経路調停部と前記制御信号生成部とを制御することを特徴とする請求項1記載の半導体装置。
  4. 複数のデータ転送を同時に行うバスインターコネクトにおいて、
    複数のスレーブ回路間を接続し、少なくとも2つの異なるデータ転送経路を確保できるスレーブ間接続回路と、
    前記複数のスレーブ回路のうち、所定のスレーブ回路から他のスレーブ回路へのデータ転送を要求する転送要求信号を受け取る度に、これらのスレーブ回路間の前記経路を確保する信号を前記スレーブ間接続回路に出力するデータ転送経路調停部と、確保された前記各経路により接続される前記各スレーブ回路それぞれに対し、データ転送を行うための信号を出力する制御信号生成部と、を有するデータ処理回路と、
    を備えることを特徴とするバスインターコネクト。
  5. 複数のスレーブ回路間のデータ転送を同時に行うバスインターコネクトのデータ転送方法において、
    前記複数のスレーブ回路のうち、所定のスレーブ回路から他のスレーブ回路へのデータ転送を要求する転送要求信号を受け取る度に、これらのスレーブ回路間のデータ転送経路を確保する信号を、前記各スレーブ回路間を接続し、少なくとも2つの異なる前記経路を確保できるスレーブ間接続回路に出力し、
    確保された前記各経路により接続される前記各スレーブ回路それぞれに対し、データ転送を行うための信号を出力する、
    ことを特徴とするバスインターコネクトのデータ転送方法。
JP2007248653A 2007-09-26 2007-09-26 半導体装置、バスインターコネクトおよびバスインターコネクトのデータ転送方法 Pending JP2009080609A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007248653A JP2009080609A (ja) 2007-09-26 2007-09-26 半導体装置、バスインターコネクトおよびバスインターコネクトのデータ転送方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007248653A JP2009080609A (ja) 2007-09-26 2007-09-26 半導体装置、バスインターコネクトおよびバスインターコネクトのデータ転送方法

Publications (1)

Publication Number Publication Date
JP2009080609A true JP2009080609A (ja) 2009-04-16

Family

ID=40655320

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007248653A Pending JP2009080609A (ja) 2007-09-26 2007-09-26 半導体装置、バスインターコネクトおよびバスインターコネクトのデータ転送方法

Country Status (1)

Country Link
JP (1) JP2009080609A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016533608A (ja) * 2013-10-07 2016-10-27 クアルコム,インコーポレイテッド カメラ制御インターフェースのスレーブデバイス間通信

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016533608A (ja) * 2013-10-07 2016-10-27 クアルコム,インコーポレイテッド カメラ制御インターフェースのスレーブデバイス間通信
CN108763122A (zh) * 2013-10-07 2018-11-06 高通股份有限公司 相机控制接口从设备到从设备通信

Similar Documents

Publication Publication Date Title
JP4845522B2 (ja) システムバス制御装置、集積回路およびデータ処理システム
US20070162645A1 (en) Communication system for data transfer between on-chip circuits
US9330025B2 (en) Information processing apparatus, memory control apparatus, and control method thereof
JP2008276391A (ja) メモリアクセス制御装置
JP4945125B2 (ja) メモリ制御装置
US8180990B2 (en) Integrated circuit including a plurality of master circuits transmitting access requests to an external device and integrated circuit system including first and second interated circuits each including a plurality of master circuits transmitting access requests
JP5911548B1 (ja) 共有メモリへのアクセス要求をスケジューリングするための装置、方法およびコンピュータプログラム
JP2007172112A (ja) メモリコントローラ
JP2009080609A (ja) 半導体装置、バスインターコネクトおよびバスインターコネクトのデータ転送方法
JP4193746B2 (ja) マトリックス状バス接続システム
JP2005165508A (ja) ダイレクトメモリアクセスコントローラ
KR20050079862A (ko) 접근 금지 신호를 갖는 듀얼 포트 메모리 장치
JP2003228512A (ja) データ転送装置
JP2001273248A (ja) バス制御装置及びその制御方法
JP4862593B2 (ja) データ転送装置及び画像形成装置
KR100737904B1 (ko) 마스터/슬레이브 디바이스간의 인터페이스 장치 및 그 방법
JP4249741B2 (ja) バスシステム及びバスシステムを含む情報処理システム
JP2003281075A (ja) ダイレクトメモリアクセスコントローラ、ダイレクトメモリアクセス装置及びリクエスト装置
JPH08278939A (ja) データ転送方法及びデータ転送装置
JP2005316546A (ja) メモリコントローラ
JPH10301897A (ja) アービトレーション方法及びその装置
CN115114215A (zh) 高速外围组件互连接口装置及其操作方法
JP2533923B2 (ja) 記憶制御装置
JP2003228546A (ja) ダイレクト・メモリ・アクセス制御装置
JP2006195810A (ja) メモリコントローラおよび高速データ転送方法