(57)【要約】【課題】従来、半導体集積回路装置が扱うデータ量が増えるに従って、入力回路および出力回路とメモリとの間のデータ転送に要する時間が増大し、演算処理部が信号処理に割く時間が減少することになっている。【解決手段】演算処理部４と、該演算処理部のローカルバス３上に接続された複数のメモリ５，６と、該複数のメモリと入力回路１、および、該複数のメモリと出力回路２とを前記ローカルバス３を介さずにアクセスするＤＭＡコントローラ７とを備え、前記演算処理部が第１のメモリ５にアクセスすること、および、前記ＤＭＡコントローラが該第１のメモリを除く残りのメモリ６にアクセスすることを同時に実行可能とするように構成する。【選択図】　　　図２
2004127025.tif 000002
【特許請求の範囲】
【請求項１】
演算処理部と、
該演算処理部のローカルバス上に接続された複数のメモリと、
該複数のメモリと入力回路、および、該複数のメモリと出力回路とを前記ローカルバスを介さずにアクセスするＤＭＡコントローラとを備え、
前記演算処理部が第１のメモリにアクセスすること、および、前記ＤＭＡコントローラが該第１のメモリを除く残りのメモリにアクセスすることを同時に実行可能としたことを特徴とする半導体集積回路装置。
【請求項２】
演算処理部と、
該演算処理部のローカルバス上に接続された複数のメモリと、
該複数のメモリと入力回路、および、該複数のメモリと出力回路とを前記ローカルバスを介さずにアクセスするＤＭＡコントローラとを備え、
前記演算処理部が第１のメモリにアクセスするとき、前記ＤＭＡコントローラが該第１のメモリにアクセスするのを禁止したことを特徴とする半導体集積回路装置。
【請求項３】
演算処理部と、
該演算処理部のローカルバス上に接続された複数のメモリと、
該複数のメモリと入力回路、および、該複数のメモリと出力回路とを前記ローカルバスを介さずにアクセスするＤＭＡコントローラとを備え、
前記ＤＭＡコントローラがアクセスするメモリを自動的に切り替え可能とすると共に、前記演算処理部がアクセスするメモリを自動的に切り替え可能としたことを特徴とする半導体集積回路装置。
【請求項４】
演算処理部と、
該演算処理部のローカルバス上に接続された複数のメモリと、
該複数のメモリと入力回路、および、該複数のメモリと出力回路とを前記ローカルバスを介さずにアクセスするＤＭＡコントローラとを備え、
前記演算処理部は、前記ＤＭＡコントローラがどのメモリに対して書き込み中であるか、或いは、書き込みが終了したかを知り得るようになっていることを特徴とする半導体集積回路装置。
【請求項５】
演算処理部と、
該演算処理部のローカルバス上に接続された複数のメモリと、
該複数のメモリと入力回路、および、該複数のメモリと出力回路とを前記ローカルバスを介さずにアクセスするＤＭＡコントローラとを備え、
前記ＤＭＡコントローラは、前記演算処理部がどのメモリに対して信号処理を行っているか、或いは、信号処理が終了したかを知り得るようになっていることを特徴とする半導体集積回路装置。
【請求項６】
請求項１〜５のいずれか１項に記載の半導体集積回路装置において、さらに、
前記演算処理部および前記ＤＭＡコントローラと前記複数のメモリとの間に設けられた複数のセレクタと、
前記演算処理部により制御され、前記複数のセレクタの選択制御を行う制御信号発生回路とを備えることを特徴とする半導体集積回路装置。
【請求項７】
請求項１〜６のいずれか１項に記載の半導体集積回路装置において、前記演算処理部はＤＳＰコアであり、前記半導体集積回路装置はＤＳＰチップであることを特徴とする半導体集積回路装置。
【請求項８】
ＤＳＰコアと、
該ＤＳＰコアが接続されたローカルバスと、
該ローカルバスに接続された第１および第２のメモリと、
前記ローカルバス並びに前記第１および第２のメモリに接続されたＤＭＡコントローラと、
該ＤＭＡコントローラに接続され、入力データを受け取る入力回路と、
前記ＤＭＡコントローラに接続され、出力データを出力する出力回路とを備え、
前記ＤＳＰコアが前記第１のメモリにアクセスすると同時に、前記ＤＭＡコントローラが前記第２のメモリにアクセスすることを特徴とする半導体集積回路装置。
【請求項９】
請求項８に記載の半導体集積回路装置において、さらに、
前記ＤＳＰコアおよび前記ＤＭＡコントローラの出力側と前記第１のメモリの入力側との間、前記ＤＳＰコアおよび前記ＤＭＡコントローラの出力側と前記第２のメモリの入力側との間、前記第１のメモリの出力側と前記ＤＳＰコアおよび前記ＤＭＡコントローラの入力側との間、および、前記第２のメモリの出力側と前記ＤＳＰコアおよび前記ＤＭＡコントローラの入力側との間にそれぞれ設けられた第１〜第４のセレクタと、
前記演算処理部により制御され、前記第１〜第４のセレクタの選択制御を行う制御信号発生回路とを備えることを特徴とする半導体集積回路装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は演算処理部を備える半導体集積回路装置に関し、特に、ＤＳＰ（Ｄｉｇｉｔａｌ　Ｓｉｇｎａｌ　Ｐｒｏｃｅｓｓｏｒ：ディジタルシグナルプロセッサ）を使用した半導体集積回路装置に関する。
【０００２】
近年、演算処理部（例えば、ＤＳＰ）を備える半導体集積回路装置においては、複数のメモリおよびＤＭＡ（Ｄｉｒｅｃｔ　Ｍｅｍｏｒｙ　Ａｃｃｅｓｓ）コントローラを設けて動作の高速化が図られている。そして、このようなＤＳＰ、複数のメモリおよびＤＭＡコントローラを使用した半導体集積回路装置において、より一層の高速化が要望されている。
【０００３】
【従来の技術】
図１は従来の半導体集積回路装置の一例を概略的に示すブロック図であり、ＤＳＰ（ＤＳＰコア）を有する半導体集積回路装置（ＤＳＰチップ、ワンチップＬＳＩ）を示すものである。
【０００４】
図１に示されるように、従来のＤＳＰチップ（半導体集積回路装置）は、入力回路１０１、出力回路１０２、ローカルバス１０３、ＤＳＰ（ＤＳＰコア）１０４、入力バッファメモリ１０５、および、出力バッファメモリ１０６を備えて構成されている。ここで、入力回路１０１、出力回路１０２、ＤＳＰコア１０４、入力バッファメモリ１０５および出力バッファメモリ１０６は、ローカルバス１０３に接続されている。
【０００５】
ＤＳＰコア１０４は、入力回路１０１に入力されたデータを、ローカルバス１０３を介して受け取り、そのデータを、ローカルバス１０３を介して入力バッファメモリ１０５へと転送する。その後、ＤＳＰコア１０４は、ローカルバス１０３を介して入力バッファメモリ１０５内のデータに対する信号処理を行い、そのデータを、ローカルバス１０３を介して出力バッファメモリ１０２に転送する。そして、出力バッファメモリ１０５のデータを、ローカルバス１０３を介して出力回路１０２に転送し、そのデータを出力する。
【０００６】
また、従来、プロセッサの演算処理中でもデータの入出力を可能とする（データの入出力中にプロセッサが処理を実行できるようにする）ものとして、入力バッファメモリおよび出力バッファメモリをそれぞれダブルバッファ構成としてプロセッサに対する入出力データを保持し、ＤＭＡが入力バッファメモリおよび出力バッファメモリの読み出し、並びに、書き込みをプロセッサの処理状況に応じて制御するようにしたデジタル信号処理装置が提案されている。（例えば、特許文献１参照）
【特許文献１】
特開２００１−９２７７８号公報
【０００７】
【発明が解決しようとする課題】
上述したように、従来の半導体集積回路装置においては、ＤＳＰコア１０４が、入力回路１０１と入力バッファメモリ１０５との間の転送処理を行っている間、或いは、出力回路１０２と出力バッファメモリ１０６との間の転送処理を行っている間、ＤＳＰコア１０４は、入力バッファメモリ１０５内のデータに対する信号処理を行うことはできない。
【０００８】
同様に、ＤＳＰコア１０４が入力バッファメモリ１０５内のデータに対して信号処理を行っている間、入力回路１０１と入力バッファメモリ１０５との間のデータの転送処理、或いは、出力回路１０２と出力バッファメモリ１０６との間のデータの転送処理を行うことはできない。
【０００９】
ところで、近年、ＤＳＰ（半導体集積回路装置）が扱うデータ量が増えるに従って、入力回路１０１からのデータを入力バッファメモリ１０５へ転送する処理に割く時間が増大し、同様に、ＤＳＰコア１０４が信号処理を終了したデータを入力バッファメモリ１０５から出力バッファメモリ１０６へ、そして、出力バッファメモリ１０６から出力回路１０２へ転送する処理に割く時間が増大する。その結果、ＤＳＰコア１０４が信号処理に割く時間が減少してしまう。
【００１０】
本発明は、上述した従来の半導体集積回路装置が有する課題に鑑み、より一層の高速処理が可能な半導体集積回路装置の提供を目的とする。
【００１１】
【課題を解決するための手段】
本発明の第１の形態によれば、演算処理部と、該演算処理部のローカルバス上に接続された複数のメモリと、該複数のメモリと入力回路、および、該複数のメモリと出力回路とを前記ローカルバスを介さずにアクセスするＤＭＡコントローラとを備え、前記演算処理部が第１のメモリにアクセスすること、および、前記ＤＭＡコントローラが該第１のメモリを除く残りのメモリにアクセスすることを同時に実行可能としたことを特徴とする半導体集積回路装置が提供される。
【００１２】
本発明の第２の形態によれば、演算処理部と、該演算処理部のローカルバス上に接続された複数のメモリと、該複数のメモリと入力回路、および、該複数のメモリと出力回路とを前記ローカルバスを介さずにアクセスするＤＭＡコントローラとを備え、前記演算処理部が第１のメモリにアクセスするとき、前記ＤＭＡコントローラが該第１のメモリにアクセスするのを禁止したことを特徴とする半導体集積回路装置が提供される。
【００１３】
本発明の第３の形態によれば、演算処理部と、該演算処理部のローカルバス上に接続された複数のメモリと、該複数のメモリと入力回路、および、該複数のメモリと出力回路とを前記ローカルバスを介さずにアクセスするＤＭＡコントローラとを備え、前記ＤＭＡコントローラがアクセスするメモリを自動的に切り替え可能とすると共に、前記演算処理部がアクセスするメモリを自動的に切り替え可能としたことを特徴とする半導体集積回路装置が提供される。
【００１４】
本発明の第４の形態によれば、演算処理部と、該演算処理部のローカルバス上に接続された複数のメモリと、該複数のメモリと入力回路、および、該複数のメモリと出力回路とを前記ローカルバスを介さずにアクセスするＤＭＡコントローラとを備え、前記演算処理部は、前記ＤＭＡコントローラがどのメモリに対して書き込み中であるか、或いは、書き込みが終了したかを知り得るようになっていることを特徴とする半導体集積回路装置が提供される。
【００１５】
本発明の第５の形態によれば、演算処理部と、該演算処理部のローカルバス上に接続された複数のメモリと、該複数のメモリと入力回路、および、該複数のメモリと出力回路とを前記ローカルバスを介さずにアクセスするＤＭＡコントローラとを備え、前記ＤＭＡコントローラは、前記演算処理部がどのメモリに対して信号処理を行っているか、或いは、信号処理が終了したかを知り得るようになっていることを特徴とする半導体集積回路装置が提供される。
【００１６】
本発明の第６の形態によれば、ＤＳＰコアと、該ＤＳＰコアが接続されたローカルバスと、該ローカルバスに接続された第１および第２のメモリと、前記ローカルバス並びに前記第１および第２のメモリに接続されたＤＭＡコントローラと、該ＤＭＡコントローラに接続され、入力データを受け取る入力回路と、前記ＤＭＡコントローラに接続され、出力データを出力する出力回路とを備え、前記ＤＳＰコアが前記第１のメモリにアクセスすると同時に、前記ＤＭＡコントローラが前記第２のメモリにアクセスすることを特徴とする半導体集積回路装置が提供される。
【００１７】
本発明に係る第１の形態の半導体集積回路装置によれば、演算処理部が第１のメモリにアクセスすること、および、ＤＭＡコントローラが第１のメモリを除く残りのメモリにアクセスすることを同時に実行可能とするようになっている。
【００１８】
本発明に係る第２の形態の半導体集積回路装置によれば、演算処理部が第１のメモリにアクセスするとき、ＤＭＡコントローラが第１のメモリにアクセスするのを禁止するようになっている。
【００１９】
本発明に係る第３の形態の半導体集積回路装置によれば、ＤＭＡコントローラがアクセスするメモリを自動的に切り替え可能とすると共に、演算処理部がアクセスするメモリを自動的に切り替え可能とするようになっている。
【００２０】
本発明に係る第４の形態の半導体集積回路装置によれば、演算処理部は、ＤＭＡコントローラがどのメモリに対して書き込み中であるか、或いは、書き込みが終了したかを知り得るようになっている。
【００２１】
本発明に係る第５の形態の半導体集積回路装置によれば、ＤＭＡコントローラは、演算処理部がどのメモリに対して信号処理を行っているか、或いは、信号処理が終了したかを知り得るようになっている。
【００２２】
本発明に係る第６の形態の半導体集積回路装置によれば、ＤＳＰコアが第１のメモリにアクセスすると同時に、ＤＭＡコントローラが第２のメモリにアクセスするようになっている。
【００２３】
このように、本発明によれば、より一層の高速処理が可能な半導体集積回路装置を提供することができる。
【００２４】
【発明の実施の形態】
以下、本発明に係る半導体集積回路装置の実施例を、添付図面を参照して詳述する。
【００２５】
図２は本発明に係る半導体集積回路装置の一実施例を概略的に示すブロック図であり、ＤＳＰ（ＤＳＰコア）を有する半導体集積回路装置（ＤＳＰチップ、ワンチップＬＳＩ）を示すものである。
【００２６】
図２に示されるように、本実施例のＤＳＰチップ（半導体集積回路装置）は、入力回路１、出力回路２、ローカルバス３、ＤＳＰ（ＤＳＰコア）４、第１のメモリ５、第２のメモリ６、および、ＤＭＡコントローラ７を備えて構成されている。ここで、入力回路１および出力回路２、並びに、第１のメモリ５および第２のメモリ６は、ＤＭＡコントローラ７に接続され、そして、ＤＳＰコア４、第１のメモリ５、第２のメモリ６およびＤＭＡコントローラ７は、ローカルバス３に接続されている。
【００２７】
すなわち、本実施例のＤＳＰチップは、ローカルバス３上に第１のメモリ５および第２のメモリ６が接続され、さらに、ＤＭＡコントローラ７を介して、メモリ（第１のメモリ５および第２のメモリ６）と入力回路１、並びに、メモリ（第１のメモリ５および第２のメモリ６）と出力回路２とが、ローカルバス３を介さずに直接アクセス可能なように構成されている。
【００２８】
以上において、メモリは、第１のメモリ５および第２のメモリ６の２つのメモリ（メモリユニット）として説明したが、これは２つに限定されるこのではなく、例えば、４つ等の複数であってもよい。
【００２９】
図３は図２の半導体集積回路装置（ＤＳＰチップ）の具体例を示すブロック回路図である。
【００３０】
図３に示されるように、ＤＳＰコア４の出力は、セレクタ９１を介して第１のメモリ５に入力されると共に、セレクタ９２を介して第２のメモリ６に入力され、同様に、ＤＭＡコントローラ７の出力は、セレクタ９１を介して第１のメモリ５に入力されると共に、セレクタ９２を介して第２のメモリ６に入力されている。第１のメモリ５の出力は、セレクタ９３を介してＤＳＰコア４に入力されると共に、セレクタ９４を介してＤＭＡコントローラ７に入力され、同様に、第２のメモリ６の出力は、セレクタ９３を介してＤＳＰコア４に入力されると共に、セレクタ９４を介してＤＭＡコントローラ７に入力されている。
【００３１】
各セレクタ９１〜９４には、ＤＳＰコア４により制御される制御信号発生回路８の出力（制御信号）が供給され、以下に図４〜図７を参照して説明するような選択制御が行われる。
【００３２】
図４〜図７は図２の半導体集積回路装置の動作を説明するための図である。
【００３３】
まず、図４に示されるように、ＤＭＡコントローラ７が入力回路１から第１のメモリ５へのデータ転送を行い、同時に、ＤＳＰコア４が第２のメモリ６内のデータに対して信号処理を行う場合、図３における制御信号発生回路８は各セレクタ９１〜９４に対して制御信号を供給して、セレクタ９１では入力『１』側（ＤＭＡコントローラ７の出力側）を選択し、セレクタ９２では入力『１』側（ＤＳＰコア４の出力側）を選択し、そして、セレクタ９３では入力『１』側（第２のメモリ６の出力側）を選択する。これにより、ＤＭＡコントローラ７を介して入力回路１から第１のメモリ５に入力データを書き込むと同時に、ＤＳＰコア４が第２のメモリ６に対してアクセスし、この第２のメモリ６内のデータに対して信号処理を実行することが可能になる。
【００３４】
また、図５に示されるように、ＤＭＡコントローラ７が第１のメモリ５から出力回路２へのデータ転送を行い、同時に、ＤＳＰコア４が第２のメモリ６内のデータに対して信号処理を行う場合、図３における制御信号発生回路８は各セレクタ９１〜９４に対して制御信号を供給して、セレクタ９２では入力『１』側（ＤＳＰコア４の出力側）を選択し、セレクタ９３では入力『１』側（第２のメモリ６の出力側）を選択し、そして、セレクタ９４では入力『１』側（第１のメモリ５の出力側）を選択する。これにより、ＤＭＡコントローラ７を介して第１のメモリ５から出力回路２に出力データを読み出すと同時に、ＤＳＰコア４が第２のメモリ６に対してアクセスし、この第２のメモリ６内のデータに対して信号処理を実行することが可能になる。
【００３５】
このように、ＤＳＰコア４は、第２のメモリ６内のデータに対して信号処理を実行し、同時に、ＤＭＡコントローラ７は、入力回路１から第１のメモリ５への、或いは、第１のメモリ５から出力回路２への転送を実行することができる。
【００３６】
さらに、図４または図５の状態で、ＤＳＰコア４が第２のメモリ６内のデータに対する信号処理を終了し、且つ、ＤＭＡコントローラ７が入力回路１から第１のメモリ５への、或いは、第１のメモリ５から出力回路２への転送が終了した時、各々の終了情報がローカルバス３を介してＤＳＰコア４およびＤＭＡコントローラ７に通知され、今度は、ＤＳＰコア４は、第１のメモリ５内のデータに対して信号処理を実行し、且つ、ＤＭＡコントローラ７は、入力回路１から第２のメモリ６への、或いは、第２のメモリ６から出力回路２への転送を実行する。
【００３７】
すなわち、図６に示されるように、ＤＭＡコントローラ７が入力回路１から第２のメモリ６へのデータ転送を行い、同時に、ＤＳＰコア４が第１のメモリ５内のデータに対して信号処理を行う場合、図３における制御信号発生回路８は各セレクタ９１〜９４に対して制御信号を供給して、セレクタ９１では入力『０』側（ＤＳＰコア４の出力側）を選択し、セレクタ９２では入力『０』側（ＤＭＡコントローラ７の出力側）を選択し、そして、セレクタ９３では入力『０』側（第１のメモリ５の出力側）を選択する。これにより、ＤＭＡコントローラ７を介して入力回路１から第２のメモリ６に入力データを書き込むと同時に、ＤＳＰコア４が第１のメモリ５に対してアクセスし、この第１のメモリ５内のデータに対して信号処理を実行することが可能になる。
【００３８】
また、図７に示されるように、ＤＭＡコントローラ７が第２のメモリ６から出力回路２へのデータ転送を行い、同時に、ＤＳＰコア４が第１のメモリ５内のデータに対して信号処理を行う場合、図３における制御信号発生回路８は各セレクタ９１〜９４に対して制御信号を供給して、セレクタ９１では入力『０』側（ＤＳＰコア４の出力側）を選択し、セレクタ９３では入力『０』側（第１のメモリ５の出力側）を選択し、そして、セレクタ９４では入力『０』側（第２のメモリ６の出力側）を選択する。これにより、ＤＭＡコントローラ７を介して第２のメモリ６から出力回路２に出力データを読み出すと同時に、ＤＳＰコア４が第１のメモリ５に対してアクセスし、この第２のメモリ５内のデータに対して信号処理を実行することが可能になる。
【００３９】
このように、ＤＳＰコア４は、第１のメモリ５内のデータに対して信号処理を実行し、同時に、ＤＭＡコントローラ７は、入力回路１から第２のメモリ６への、或いは、第２のメモリ６から出力回路２への転送を実行することができる。
【００４０】
なお、図６または図７の状態で、ＤＳＰコア４が第１のメモリ５内のデータに対する信号処理を終了し、且つ、ＤＭＡコントローラ７が入力回路１から第２のメモリ６への、或いは、第２のメモリ６から出力回路２への転送が終了した時、最初から同様の処理を繰り返すことになる。
【００４１】
このように、本発明に係る半導体集積回路装置の実施例によれば、ＤＳＰコア４が、データを入力回路１とメモリ（５，６）の間で転送するのに割く時間、或いは、出力回路２とメモリ（５，６）の間で転送するのに割く時間を、信号処理に割くことができ、より低速なクロックでＤＳＰコア（ＤＳＰチップ）を駆動することが可能になる。または、より廉価なＤＳＰチップでシステムを構築することが可能になる。或いは、同じ時間により多くのデータを処理することができ、システム全体の性能向上を図ることが可能になる。
【００４２】
なお、上記の記載においては、半導体集積回路装置を主としてＤＳＰコアを有するＤＳＰチップとして説明したが、演算処理部としてはＤＳＰに限定されずＣＰＵ等でもよく、また、半導体集積回路装置はＤＳＰチップに限定されないのはいうまでもない。
【００４３】
【発明の効果】
以上、詳述したように、本発明によれば、より一層の高速処理が可能な半導体集積回路装置を提供することができる。
【図面の簡単な説明】
【図１】従来の半導体集積回路装置の一例を概略的に示すブロック図である。
【図２】本発明に係る半導体集積回路装置の一実施例を概略的に示すブロック図である。
【図３】図２の半導体集積回路装置の具体例を示すブロック回路図である。
【図４】図２の半導体集積回路装置の動作を説明するための図（その１）である。
【図５】図２の半導体集積回路装置の動作を説明するための図（その２）である。
【図６】図２の半導体集積回路装置の動作を説明するための図（その３）である。
【図７】図２の半導体集積回路装置の動作を説明するための図（その４）である。
【符号の説明】
１…入力回路
２…出力回路
３…ローカルバス
４…ＤＳＰ（ＤＳＰコア）
５…第１のメモリ
６…第２のメモリ
７…ＤＭＡコントローラ
８…制御信号発生回路
９１〜９４…セレクタ
【図１】
2004127025.tif 000003
【図２】
2004127025.tif 000004
【図３】
2004127025.tif 000005
【図４】
2004127025.tif 000006
【図５】
2004127025.tif 000007
【図６】
2004127025.tif 000008
【図７】
2004127025.tif 000009