(57)【要約】【課題】外部との間でデータを高速で授受できる半導体集積回路を提供。【解決手段】バス34によりＣＰＵ10に、バス36によりアクセス制御部14にそれぞれ接続された高速アクセスを可能とするローカルメモリ14を備え、ローカルメモリ14にアクセスする場合、ＣＰＵ10ではデータおよび制御信号をバス34でローカルメモリ14のＣＰＵアクセス専用ポートへ出力し、アクセス制御部16ではバス36でデータおよび制御信号を外部アクセス専用ポートへ出力する。ローカルメモリ14ではアクセスポートに入力されたデータおよび制御信号に基づいてデータの書き込みまたは読み出しを実行する。外部では、アクセス制御部16を介してローカルメモリ14へアクセスし、ローカルメモリ14との間でデータを高速で授受することができる。【選択図】図１
2005107873.tif 000002
【特許請求の範囲】
【請求項１】
第１のバスで互いに接続された中央処理装置と、メインメモリを制御するメインメモリ制御部と、周辺装置を制御する入出力チャネル制御部とを含む半導体集積回路において、該回路は、
前記中央処理装置に第２のバスで接続された情報を格納するローカルメモリと、
該ローカルメモリに第３のバスで接続されたアクセス制御手段とを含み、
該アクセス制御手段は外部からの要求に応じて前記メモリにアクセスすることを特徴とする半導体集積回路。
【請求項２】
請求項１に記載の半導体集積回路において、前記ローカルメモリは、前記第２のバスに接続された第１のアクセスポートと前記第３のバスに接続された第２のアクセスポートとを含むことを特徴とする半導体集積回路。
【請求項３】
請求項２に記載の半導体集積回路において、前記ローカルメモリは、デュアルポートＲＡＭであることを特徴とする半導体集積回路。
【請求項４】
請求項１に記載の半導体集積回路において、該回路は、前記第２のバスおよび前記第３のバスと前記ローカルメモリとの間に接続された選択手段を含み、該選択手段は、前記第２および第３のバスのいずれかを選択して前記ローカルメモリへ接続することを特徴とする半導体集積回路。
【請求項５】
請求項４に記載の半導体集積回路において、該回路は、前記中央処理装置および前記アクセス制御手段から出力される前記ローカルメモリに対するアクセス要求に基づいて前記選択手段に対して選択するバスを指示する調停手段を含むことを特徴とする半導体集積回路。
【請求項６】
請求項５に記載の半導体集積回路において、前記調停手段は、前記中央処理装置から出力されるアクセス要求を前記アクセス制御手段から出力されるアクセス要求より優先することを特徴とする半導体集積回路。
【請求項７】
請求項４に記載の半導体集積回路において、前記ローカルメモリは、１面のアクセスポートを有するＲＡＭであることを特徴とする半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、中央処理装置（ＣＰＵ）を用いて情報処理を行う半導体集積回路に関し、特に外部との間でデータを高速で授受できる半導体集積回路に関するものである。
【背景技術】
【０００２】
従来、情報処理を行う半導体集積回路におけるＣＰＵは、バスで接続されているメインメモリを介して外部との間で情報の授受を行っていた。また、ＣＰＵは、メインメモリのアクセス速度がＣＰＵの処理速度に比べて低いため、メインメモリとは別にメインメモリよりアクセス速度が速いキャッシュメモリを備え、メインメモリに格納されている情報の一部をキャッシュメモリに書き込んで一時的に保持し、このキャッシュメモリとの間で情報の受け渡しを行うことにより情報処理の高速化を図っていた。
【０００３】
【特許文献１】特開平８−１８０００８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記の半導体集積回路では、ＣＰＵは、メインメモリを介して外部との間で情報を授受する場合に、メインメモリのアクセス速度が低いため高速で情報を授受することができないという問題があった。また、ＣＰＵがキャッシュメモリを備えている場合には、外部からキャッシュメモリに直接アクセスすることも考えられるが、キャッシュメモリに保持される情報は、キャッシュメモリの性質上、メインメモリに格納されている情報の内容と同一であることが要求されるため、メインメモリに格納されている情報と内容が異なる情報をキャッシュメモリに書き込んで外部から読み出すということはできないという問題があった。
【０００５】
本発明はこのような従来技術の欠点を解消し、ＣＰＵおよび外部からアクセスできるローカルメモリを介して、メインメモリとは無関係に、外部との間で情報を高速で授受ができる半導体集積回路を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明は上記の課題を解決するために、第１のバスで互いに接続された中央処理装置と、メインメモリを制御するメインメモリ制御部と、周辺装置を制御する入出力チャネル制御部とを含む半導体集積回路は、中央処理装置に第２のバスで接続された情報を格納するローカルメモリと、ローカルメモリに第３のバスで接続されたアクセス制御手段とを含み、アクセス制御手段は外部からの要求に応じて前記メモリにアクセスすることを特徴とする。
【０００７】
この場合、ローカルメモリは、第２のバスに接続された第１のアクセスポートと第３のバスに接続された第２のアクセスポートとを含むのがよい。
【０００８】
また、第２のバスおよび第３のバスと前記ローカルメモリとの間に接続された選択手段を含み、この選択手段は、第２および第３のバスのいずれかを選択して前記ローカルメモリへ接続するものであってもよい。
【０００９】
この場合、中央処理装置およびアクセス制御手段から出力されるローカルメモリに対するアクセス要求に基づいて選択手段に対して選択するバスを指示する調停手段を含むのがよい。
【発明の効果】
【００１０】
本発明によれば、少なくとも２面のアクセスポートを有するＲＡＭをローカルメモリとして備えているので、ＣＰＵと外部では互いに無関係にローカルメモリへアクセスすることができる。したがって、ＣＰＵが動作中でも、ローカルメモリを介して外部との間でデータを授受することができる。また、ローカルメモリのアクセス時間はメインメモリより高速であるので、ローカルメモリを介して外部との間でデータを高速で授受することができる。
【００１１】
また、アクセスポートが１面のＲＡＭをローカルメモリとして用いることにより、データ授受の速度をさらに速くすることができ、面積を小さくすることができるという利点が得られる。
【発明を実施するための最良の形態】
【００１２】
次に添付図面を参照して本発明による半導体集積回路の実施例を詳細に説明する。図１を参照すると、半導体集積回路１は、中央処理装置（ＣＰＵ）10、ローカルメモリ12,14、アクセス制御部16、メインメモリ制御部18および入出力チャネル制御部20を含み、ＣＰＵ10、メインメモリ制御部18および入出力チャネル制御部20はバス30により相互に接続され、ＣＰＵ10とローカルメモリ12,14はそれぞれバス32,34により接続され、ローカルメモリ14とアクセス制御部16はバス36により接続され、さらにアクセス制御部16はバス38により外部に接続されている。
【００１３】
また、メインメモリ制御部18、入出力チャネル制御部20には、半導体集積回路１の外部に設けられたメインメモリ22、周辺装置24がそれぞれ接続されている。なお、バス32,36,38は、例えばアドレス線、ライトデータ線、リードデータ線、素子選択線、リード／ライト選択線から構成され、アドレス、ライトデータ、リードデータ、素子選択信号、リード／ライト選択信号を伝送する伝送路である。
【００１４】
ＣＰＵ10は、メインメモリ22から命令やデータを読み出して所定の処理を実行する演算・制御装置であり、一般にキャッシュメモリを内蔵している。メインメモリ制御部18にはプログラムやデータを格納する大容量のメインメモリ22が接続されている。メインメモリ制御部18は、ＣＰＵ10の命令に従ってメインメモリ22に対するプログラムやデータの読み出し／書き込みを制御するものである。入出力チャネル制御部20にはディスプレイやプリンタ等の周辺装置24が接続されている。入出力チャネル制御部20は、ＣＰＵ10の命令に従って周辺装置24の動作、データ転送等を制御するものである。
【００１５】
ローカルメモリ12,14は、メインメモリ22より容量は小さいがアクセス時間の速い半導体メモリであり、高速アクセスを可能とする。ただし、ローカルメモリ12,14は、本実施例では、キャッシュメモリとしての機能を想定していない。したがって、ローカルメモリ12,14には、メインメモリ22に格納されている情報と異なる内容の情報を保持することができる。ローカルメモリ12は、情報を格納するメモリ、例えばＲＡＭ（Random Access Memory）から構成される。ＣＰＵ10は、専用のバス32を介して何時でもローカルメモリ12にアクセスすることができる。
【００１６】
ローカルメモリ14は、情報を格納する、少なくとも２面のアクセスポートを有するメモリである。本実施例では、２面のアクセスポートを有するデュアルポートＲＡＭから構成されていおり、１面をＣＰＵアクセス専用ポートとして、他の１面を外部アクセス専用ポートとして使用している。そして、ＣＰＵアクセス専用ポートにはバス34によりＣＰＵ10が接続され、外部アクセス専用ポートにはバス36によりアクセス制御部16が接続されている。なお、アクセス制御部16は、ローカルメモリ14と外部の間のインタフェースとして動作し、バス38を介して入力される外部からの要求に応じてローカルメモリ14へアクセスするものである。
【００１７】
このようにローカルメモリ14は、互いに無関係にアクセスすることができるＣＰＵアクセス専用ポートと外部アクセス専用ポートとを有しているので、ＣＰＵ10は、外部からのローカルメモリ14に対するアクセスとは無関係にローカルメモリ14へアクセスすることができ、また、外部ではＣＰＵ10からのローカルメモリ14に対するアクセスとは無関係にローカルメモリ14へアクセスすることができる。したがって、ＣＰＵ10が動作中でも、ローカルメモリ14と外部との間でデータを授受することが可能となり、また、ＣＰＵ10および外部はローカルメモリ14内の同一アドレスからデータを同時に読み出すことも可能となる。
【００１８】
このように構成された半導体集積回路１の動作について説明すると、ＣＰＵ10では、例えば使用頻度の高いプログラムをローカルメモリ12へ書き込み、書き込んだプログラムを読み出して情報処理を実行する。また、ＣＰＵ10およびアクセス制御部16では、ローカルメモリ14にアクセスする場合、データ（書き込みの場合）および制御信号（例えば、アドレス、素子選択信号、リード／ライト選択信号）を、バス34,36を介してそれぞれローカルメモリ14へ出力する。
【００１９】
ローカルメモリ14では、バス34,36からデータおよび制御信号を取り込み、取り込んだデータおよび制御信号に基づいてデータの書き込みまたはデータの読み出しを実行する。そして、データの読み出しを実行した場合には、その読み出したデータをバス34またはバス36へ出力する。ＣＰＵ10ではバス34からデータを取り込み、アクセス制御部16ではバス36からデータを取り込んでバス38を介して外部へ出力する。
【００２０】
このように本実施例によれば、ローカルメモリ14はＣＰＵアクセス専用ポートおよび外部アクセス専用ポートを有しているので、ＣＰＵ10およびアクセス制御部16は、互いに無関係にローカルメモリ14へアクセスすることができる。ただし、同一アドレスに同時にデータを書き込む場合を除く。したがって、ＣＰＵ10がローカルメモリ14にアクセス中でも、外部からローカルメモリ14に格納されているデータを読み出すことができる。また、ローカルメモリ14のアクセス時間はメインメモリ22より速いので、ローカルメモリ14に格納されているデータを外部から短時間に読み出すことができる。
【００２１】
図２は、本発明による半導体集積回路の他の実施例を示すブロック図である。図２を参照すると、半導体集積回路２は、基本的には図１に示す半導体集積回路１のローカルメモリ14をローカルメモリ50に置き換えたものであり、中央処理装置（ＣＰＵ）10、ローカルメモリ12,50、アクセス制御部16、メインメモリ制御部18、入出力チャネル制御部20、セレクタ52および調停回路54を含む。なお、図２において、図１の示されている要素と同じ要素には同じ参照符号を付してある。
【００２２】
ＣＰＵ10、メインメモリ22および周辺装置24は、図１の場合と同様に一般的なコンピュータを構成する。ＣＰＵ10とローカルメモリ12は、図１の場合と同様にバス32により接続されている。また、ＣＰＵ10とセレクタ52はバス60により接続され、ＣＰＵ10とローカルメモリ50およびアクセス制御部16とはバス62により接続されている。また、アクセス制御部16とセレクタ52はバス64によりが接続され、セレクタ52とローカルメモリ50はバス66により接続されている。さらに、ＣＰＵ10およびアクセス制御部16には接続線68,70により調停回路54が接続され、調停回路54には接続線69によりセレクタ52が接続されている。
【００２３】
なお、本実施例では、バス60,64,66は、書き込みデータを伝送するライトデータ線、アドレスを伝送するアドレス線、素子選択線およびリード／ライト選択線から構成され、バス62は読み出したデータを伝送するリードデータ線から構成されるものとする。
【００２４】
ローカルメモリ50は、図１のローカルメモリ14と同様に主としてデータを一時的に格納するメモリ、例えばＲＡＭから構成される半導体メモリであり、メインメモリ22より容量は小さいが高速アクセスを可能とする。また、ローカルメモリ50は、図１のローカルメモリ14と同様にキャッシュメモリとしての機能を想定していないが、ローカルメモリ14とは異なりアクセスポートは１面である。したがって、ＣＰＵ10および外部は同時にローカルメモリ50へアクセスすることはできない。そこで、本実施例では、セレクタ52と調停回路54とを設け、ＣＰＵ10のアクセス要求と外部からのアクセス要求とを調停している。
【００２５】
なお、図１の半導体集積回路１では、ローカルメモリ14はデュアルポートＲＡＭから構成されているので、１面をＣＰＵアクセス専用ポートとし他の１面を外部アクセス専用ポートとすることにより、ＣＰＵ10および外部から互いに無関係にローカルメモリ14へアクセスすることができた。ただし、同一アドレスに同時にデータを書き込む場合を除く。しかし、デュアルポートＲＡＭは、アクセスポートが１面のＲＡＭに比べて取り付け面積が大きく、アクセス時間が遅いという欠点がある。したがって、取り付け面積やアクセス時間を重要視する場合には、本実施例のように、アクセスポートが１面のＲＡＭから構成されるローカルメモリ50が好適である。
【００２６】
セレクタ52は、バス60およびバス64の何れか一方を調停回路54から接続線69を介して与えられる選択信号に従ってバス66へ選択的に接続する回路である。具体的には、選択信号がＣＰＵ10をローカルメモリ50へ接続することを指示するときバス60をバス66に接続し、選択信号がアクセス制御部16をローカルメモリ50へ接続することを指示するときバス64をバス66に接続する。これにより、ＣＰＵ10またはアクセス制御部16から出力されるアドレス、ライトデータ、素子選択信号およびリード／ライト選択信号はローカルメモリ50に入力され、ローカルメモリ50ではデータの書き込みまたは読出しを実行する。
【００２７】
ＣＰＵ10およびアクセス制御部16は、本実施例では、ローカルメモリ50にアクセスしようとするとき、接続線68,70を介して調停回路54へアクセス要求信号（例えば、素子選択信号）を出力する。調停回路54は、ＣＰＵ10およびアクセス制御部16の何れをローカルメモリ50に接続するかを指示する選択信号を、ＣＰＵ10およびアクセス制御部16から出力されるアクセス要求信号に基づいて生成し、セレクタ52へ出力するものである。
【００２８】
具体的には、ＣＰＵ10およびアクセス制御部16の何れか一方からアクセス要求信号を受けたとき、ローカルメモリ50がデータの読み出しまたは書き込みを実行していない場合は、アクセス要求信号を出力した側のバス（バス60またはバス64）とバス66との接続を指示する選択信号を生成してセレクタ52へ出力し、ＣＰＵ10およびアクセス制御部16からアクセス要求信号を同時に受けたとき、ＣＰＵ10のアクセス要求を優先して、バス60とバス66の接続を指示する選択信号を生成してセレクタ52へ出力する。この場合、バス60,64の何れを選択しているかを示す選択表示信号を生成し接続線72を介して外部へ出力する。なお、調停回路54では、ＣＰＵ10およびアクセス制御部16のアクセス要求が競合した場合、アクセス制御部16からのアクセス要求を優先してもよい。
【００２９】
このように構成された半導体集積回路２の動作について説明すると、ＣＰＵ10およびアクセス制御部16では、ローカルメモリ50にアクセスしようとするとき、接続線68,70を介してアクセス要求信号を調停回路54へ出力すると共にアドレス、ライトデータ（書き込みの場合）、素子選択信号およびリード／ライト選択信号等をバス60,64へ出力する。
【００３０】
調停回路54では、ＣＰＵ10からアクセス要求信号を受けたとき、アクセス制御部16がローカルメモリ50にアクセスしていない場合は、バス60とバス66の接続を指示する選択信号をセレクタ52へ出力し、アクセス制御部16からアクセス要求信号を受けたとき、ＣＰＵ10がローカルメモリ50にアクセスしておらずかつＣＰＵ10のアクセス要求と競合しない場合は、バス64とバス66の接続を指示する選択信号をセレクタ52へ出力する。そして、調停回路54では、接続線72を介して選択表示信号を外部へ出力する。外部ではこの選択表示信号によりローカルメモリ50がＣＰＵ10によりアクセスされているか否かを判断することができる。
【００３１】
セレクタ52では、調停回路54からの選択信号に従ってバス66をバス60またはバス64に接続する。これにより、ＣＰＵ10またはアクセス制御部16からバス60またはバス64へ出力されたアドレス、ライトデータ、素子選択信号およびリード／ライト選択信号はセレクタ52を介してローカルメモリ50へ入力される。ローカルメモリ50では、入力されたアドレス、ライトデータ、素子選択信号およびリード／ライト選択信号に基づいてデータの書き込みまたはデータの読み出しを実行し、データを読み出した場合には読み出したデータをバス62へ出力する。アクセス要求を出力したＣＰＵ10またはアクセス制御部16ではバス60上のデータを取り込む。アクセス制御部16では取り込んだデータを、バス86を介して外部へ出力する。
【００３２】
このように本実施例によれば、ＣＰＵ10がローカルメモリ50にアクセスしていない場合には、ＣＰＵ10が動作中でも外部からローカルメモリ50へ直接アクセスして、ローカルメモリ50に格納されているデータを読み出したり、ローカルメモリ50へデータを書き込んだりすることができる。また、ローカルメモリ50のアクセス時間はメインメモリ22より速いので、ローカルメモリ50に格納されているデータを外部から高速で読み出すことができる。
【図面の簡単な説明】
【００３３】
【図１】本発明による半導体集積回路の実施例を示すブロック図である。
【図２】本発明による半導体集積回路の他の実施例を示すブロック図である。
【符号の説明】
【００３４】
１、２  半導体集積回路
10  ＣＰＵ
12,14,50  ローカルメモリ
16  アクセス制御部
18  メインメモリ制御部
20  入出力制御部
52  セレクタ
54  調停回路
【図１】
2005107873.tif 000003
【図２】
2005107873.tif 000004