JP3886314B2 - Data transfer circuit and semiconductor integrated circuit device using the same - Google Patents
Data transfer circuit and semiconductor integrated circuit device using the same Download PDFInfo
- Publication number
- JP3886314B2 JP3886314B2 JP2000030893A JP2000030893A JP3886314B2 JP 3886314 B2 JP3886314 B2 JP 3886314B2 JP 2000030893 A JP2000030893 A JP 2000030893A JP 2000030893 A JP2000030893 A JP 2000030893A JP 3886314 B2 JP3886314 B2 JP 3886314B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- bus
- input
- register
- signal
- 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
Images
Landscapes
- Electronic Switches (AREA)
- Logic Circuits (AREA)
Description
【0001】
【産業上の利用分野】
この発明は、プリチャージ、ディスチャージ方式のバス信号線にデータを出力するデータ転送回路及びその回路を用いた半導体集積回路装置に関する。
【0002】
【従来の技術】
従来、複数の回路(例えばレジスタなど)からデータバスへデータを出力する方法として、プリチャージ方式の回路構成を取るバスシステムが多く用いられている。
【0003】
図11は最も基本的なプリチャージバスの構成を示す回路図である。同図に示すように、このバスシステムは、バス1と、バス1に接続されたデータ保持部2(2’)…、チャージ保持部3と、に大別される。
【0004】
チャージ保持部3には、プリチャージ信号(PCK)が与えられる。このプリチャージ信号(PCK)は、第1期間内ではLowレベル(L)であり、それに引き継ぐ第2期間内ではHighレベル(H)にある信号であり、と”L”,”H”を繰り返す信号である。
【0005】
データバス1にはノード(信号線)15で接続されるPMOSトランジスタ10,11とが接続されている。PMOSトランジスタ10のゲート電極には、PCK信号が入力され、PMOSトランジスタ11のゲート電極には、データバス1の論理がインバータ14により反転された値が与えられる。これらPMOSトランジスタ10,11のドレイン領域には電源電位Vccが与えられる。
【0006】
データ保持部2は直列に接続されたNMOSトランジスタ20,21とデコーダ22とからなるバスドライバ23及びレジスタ24から構成されている。
【0007】
上記したバスシステムにおいて、例えば、データ保持部2からデータ保持部2’へデータ転送する場合につき説明する。第1期間(L)には、データバス1はPMOSトランジスタ10によって”H”電位にプリチャージされる。第2期間(H)においては、プリチャージ用のPMOSトランジスタ10はOFFするが、PMOSトランジスタ11はONしているためデータバス1の電位は”H”を保持している。この時、ソースとなったデータ保持部2においては、デコーダ22の出力が”H”となり、レジスタ24に格納されているデータが”L”の場合は上記PMOSトランジスタ11は十分に小さいサイズなので、データバス1がディスチャージされ電位が”L”に変化し、ディスティネーションとなっているデータ保持部2’内部のレジスタ24’に”L”データが書き込まれる。逆にソースとなったレジスタ24に格納されているデータが”H”の場合はNMOSトランジスタ21がONしないためデータバスの値は”H”を保持し、ディスティネーションのレジスタ24’に”H”データが書き込まれる。
【0008】
しかしながら、近年、回路規模が大きくなるにしたがってデータバスの負荷容量が増加し、ディスチャージ時間が増加するという問題があった。また、消費電力を低減する必要が増してきた。
【0009】
そこで、従来、データ転送の高速化、低消費電力化のために、バスセンスアンプを用いる方法、ディスチャージの高速化のためのバス駆動検出回路を用いたもの、さらに低振幅プリチャージを用いるなどの方法があった。
【0010】
例えば、特開平3−108515号公報には、差動アンプを用いることでバスの低振幅化を図ったデータ転送装置について開示している。また、特開平8−171438号公報には、データバスのプリチャージとディスチャージとで別のNMOSトランジスタを用いてバスセンスアンプによるディスチャージの高速化を行うことについて開示されている。
【0011】
【発明が解決しようとする課題】
しかしながら、従来のバス駆動検出回路を用いた方法ではバスドライバとは別にディスチャージ用の回路を設ける必要があることに加え、データバスの長さが長くなると制御が困難になる短所があった。また、差動アンプを用いた方法ではデータバスが正反の2本必要となるため回路規模が増えてしまうという問題があった。
【0012】
この発明は、上述した従来の問題点に鑑みなされたものにして、簡単な構成で高速かつ消費電力の少ないバスドライバ回路を実現することをその目的としている。
【0013】
また、この発明は、上位のデータバスの振幅抑制による低消費電力化とプリチャージ期間においてもデータ転送を行うことで転送効率を上げることをその目的としている。
【0014】
【課題を解決するための手段】
この発明は、データバスにデータ保持部とバスアンプが接続され、プリチャージ信号を与えてデータ転送を行っているデータ転送回路において、前記バスアンプは、前記データバスの電位を所定のレベルにプリチャージするためにゲートにプリチャージ信号が与えられ、一方の半導体領域が電源電圧と接続され他方の半導体領域がノードに接続される第1のPMOSトランジスタと、抵抗分割によって電源電圧よりも低い値の電圧が与えられ、一方の半導体領域が前記ノードに接続され他方の半導体領域が前記データバスに接続される第1のNMOSトランジスタと、前記ノードからの信号をインバータにより反転論理した信号がゲートに入力され、一方の半導体領域が前記ノードと接続され他方の半導体領域が電源電圧に接続される第2のPMOSトランジスタと、前記ノードと前記インバータを介して接続された出力部と、を備えたことを特徴とする。
【0015】
この発明は、第1のPMOSトランジスタ、第1のNMOSトランジスタ第2のPMOSトランジスタという簡単な構成のバスセンスアンプを付加することで高速かつ消費電力の少ないバスドライバ回路を実現させることができる。
【0016】
さらに、この発明は、前記データバスと第1のNMOSトランジスタの間に、ゲート及びドレイン領域が接続されるとともにソース領域に抵抗分割によって電源電圧よりも低い電位が与えられる第2のNMOSトランジスタを配置するように構成するとよい。
【0017】
ディスチャージにおいて動作速度を遅くする要因として、隣接する配線とのクロストークが原因でデータバスの電位がチャージアップすることが考えられる。そこで、上記した構成によれば、第2のNMOSトランジスタがリミッタとして機能し、データバスのチャージアップを防止することができる。
【0018】
又、この発明の半導体集積回路装置は、上記に記載のデータ転送回路のデータバスの出力がインバータの入力に接続され、そのインバータの出力は第3のNMOSトランジスタを介してさらに上位の信号線と接続され、上位の信号線はORゲートの一方のゲートに入力され、このORゲートの出力は、入力用信号線に接続され、この入力信号線は前記データバスにデータを出力しているレジスタに入力する経路を有し、上記ORゲートの他方のゲートには、前記データバスがプリチャージされる期間にはプリチャージ信号と同じレベルの信号を入力し、ディスチャージされる期間にはプリチャージ信号と同じレベルの信号を入力するようにしたことを特徴とする。
【0019】
上記の構成によれば、出力制御回路を付加することで、低消費電力化とプリチャージ期間においてもデータ転送を行うことで転送効率を上げることができる。
【0021】
また、前記インバータには高電位を検出し、上位の信号線の電位が電源電圧よりも低い一定レベルの値を越えないようにリミッタを接続するように構成すると良い。
【0022】
上記の構成によれば、上位バスは所定の電位で振幅制御され、消費電力を少なくすることができる。
【0023】
また、前記入力用信号線はデータ転送回路の出力側のデータバスに隣接して配置するように構成すると良い。
【0024】
上記の構成によれば、入力側の信号線を出力側のデータバスに隣接して配置することによって、データバスのチャージロスを防止することが可能となり、チップ面積を削減することができる。
【0025】
また、この発明は、データが入出力されるデータ保持部と、このデータ保持部からのデータを演算し、データ保持部に出力する演算部とを備えた機能ブロックを、複数個備え、前記データ保持部と演算部間がバスによって接続され、前記バスに予め所定レベルにプリチャージするプリチャージ回路が接続され、上記データ転送に上記に記載の半導体集積回路装置を用いたことを特徴とする。
【0026】
また、この発明は、プログラムを解読しプロセッサ全体を制御するグローバルプロセッサと、データを処理するプロセッサエレメントを複数個備えて構成されるプロセッサエレメントブロックと、を有する並列プロセッサを構成する半導体集積回路装置において、各プロセッサエレメントは、演算部と、複数のレジスタを有するレジスタファイルと、演算部とレジスタファイル間を接続するバスと、を備え、前記バスに予め所定レベルにプリチャージするプリチャージ回路が接続され、上記データ転送に上記に記載の半導体集積回路装置を用いたことを特徴とする。
【0027】
【発明の実施の形態】
以下、この発明の実施の形態につき図面を参照して説明する。なお、従来例と同一部分には同一符号を付す。
【0028】
図1は、この発明の第1の実施形態にかかるデータ転送回路の構成を示す回路図である。
【0029】
図1に示すように、この実施形態の構成は、大別して、バス1、データ保持部2(2’)及びバスセンスアンプ4とからなる。バス1にはデータ保持部2のバスドライバ23及びバスセンスアンプ4が接続されている。
【0030】
バスセンスアンプ4には、プリチャージ信号(PCK)、電源電圧Vccよりも低い所定の電圧VDD1のバイアスが与えられる。プリチャージ信号(PCK)は、第1期間内ではLowレベル(L)であり、それに引き継ぐ第2期間内ではHighレベル(H)にある信号であり、”L”,”H”を繰り返す信号である。この実施形態では、PCK信号が”L”の時である第1期間をプリチャージ期間、PCK信号が”H”の時である第2期間をディスチャージ期間と呼ぶことにする。また、電圧VDD1は、例えば抵抗分割によって作成されるためDC電流が流れることになるが、同一の構成を持つ回路(データ保持部2…が32ビット幅だとすると同一回路が32個ある)でこのバイアスを共用することで総消費電力として増加分を少なくすることが可能である。
【0031】
ノード(信号線)15には、PMOSトランジスタ10,11のソース領域が接続されている。ノード(信号線)15は、データバス1にNMOSトランジスタ12を介して接続されている。このNMOSトランジスタ12はソース領域がノード15に接続され、ドレイン領域がデータバス1と接続される。PMOSトランジスタ10のゲート電極には、プリチャージ信号線からPCK信号が入力され、PMOSトランジスタ11のゲート電極には、データバス1の論理がインバータ14により反転された値が与えられる。これらPMOSトランジスタ10,11のドレイン領域には電源電位Vccが与えられる。
【0032】
データ保持部2は直列に接続されたNMOSトランジスタ20,21とデコーダ22とからなるバスドライバ23及びデータ元となるレジスタ24から構成されている。そして、デコーダ22にはデコード信号BS0#とプリチャージ信号PCKの反転信号PCK#が与えられる。
【0033】
図2は、この発明の第1の実施形態にかかるデータ転送回路の各信号線の時間遷移を示すタイミングチャートである。図2を参照して第1の実施形態にかかるデータ転送回路の動作について説明する。
【0034】
第1期間ではPMOSトランジスタ10のゲート電圧が”L”であるためノード(信号線)15は電源電圧Vccまでプリチャージされる。PMOSトランジスタ11はインバータ14によりノード(信号線)15の逆位相の信号をゲート電極に入力されているので、プリチャージ期間が終わってPMOSトランジスタ10がOFFしてもノード(信号線)15の電位を電源電圧Vccに保持することが出来る。ただし、後述する第2期間においてディスチャージの妨げにならないよう十分に小さくする必要がある。
【0035】
データバス1はゲート電圧がVDD1であるNMOSトランジスタ12を介してノード(信号線)15と接続されているため、電位が(VDD1−Vth)までしか上昇しない。ここで、VthはNMOSトランジスタ12の閾値電圧である。VDD1として、例えば(VDD−Vth)のバイアスに設定した場合では、プリチャージされる電位が(VDD−2*Vth)までに抑制できるため充放電による消費電力成分を少なくすることができる。
【0036】
第2期間では、PMOSトランジスタ10はゲート電圧が”H”となるためOFFし、ノード(信号線)15の電位はPMOSトランジスタ11のみによって保持されている。例えばレジスタ0(Reg0)の値を読み出す場合について考えてみる。レジスタ0の値を読み出す時にはデコード信号BS0#、BS1#、...の内でBS0#だけが”L”となる。プリチャージ信号PCKの反転信号PCK#は”L”であるのでNMOSトランジスタ20がONする。レジスタ0のデータが”L”の場合はNMOSトランジスタ21もONし、データバス1の電位はディスチャージされ”L”に落ちる。するとNMOSトランジスタ12がONするのでノード(信号線)15の電位も”L”に落ち、”L”データがバスセンスアンプ4より出力される(第2期間(B))。
【0037】
また、レジスタ0のデータが”H”の場合にはNMOSトランジスタ21はONしないのでデータバス1及びノード(信号線)15はプリチャージされたままの状態を保持し”H”データがセンスアンプ4から出力されることになる(第2期間(D))。
【0038】
ところで、上記ディスチャージにおいて動作速度を遅くする要因として、隣接する配線とのクロストークが原因でデータバス1の電位がチャージアップすることが考えられる。クロストークの効果については隣接する配線間でドライブ力に差がある場合に顕著になることがわかっており、プリチャージ完了後にはデータバス1はハイインピーダンスになるため特に影響を受けやすくなることになる。図3に示すこの発明の第2の実施形態はかかるクロストークからの影響を防止したデータ転送回路である。図3に従い第2の実施形態につき説明する。なお、第1の実施形態と同一部分には同一符号を付し、説明の重複を避けるためにここではその説明を割愛する。
【0039】
バスセンスアンプ4にはプリチャージ信号PCK及び電源電圧Vccよりも低い所定の電圧VDD1、VDD2のバイアスが入力されている。両バイアスは例えば抵抗分割によって作成されるためDC電流が流れることになるが、同一の構成を持つ回路(データ保持部が32ビット幅だとすると同一回路が32個ある)で両バイアスを共用することで総消費電力として増加分を少なくすることが可能である。
【0040】
さて、この第2の実施形態においては、クロストークの影響を防止するため、NMOSトランジスタ12とデータバス1との間にNMOSトランジスタ13を挿入している。このNMOSトランジスタ13は、データバス1とゲート及びドレイン領域とが接続され、NMOSトランジスタ13のソース領域には抵抗分割によって電源電圧よりも低い電位VDD2が与えられている。
【0041】
NMOSトランジスタ13はデータバスの電位が(VDD2+Vth)以上になるとONするためリミッタとして機能し、データバス1のチャージアップを防止している。ここで、Vthは、NMOSトランジスタ13の閾値である。
【0042】
図4は、この発明の第2の実施形態にかかるデータ転送回路の各信号線の時間遷移を示すタイミングチャートである。図4を参照して第2の実施形態にかかるデータ転送回路の動作について説明する。
【0043】
第1期間ではPMOSトランジスタ10のゲート電圧が”L”であるためノード(信号線)15は電源電圧Vccまでプリチャージされる。PMOSトランジスタ11はノード(信号線)15の逆位相の信号をゲート電極に入力されているので、プリチャージ期間が終わってPMOSトランジスタ10がOFFしてもノード(信号線)15の電位を電源電圧Vccに保持することが出来る。
【0044】
前述したように、データバス1はゲート電圧がVDD1であるNMOSトランジスタ12を介して信号線15と接続されているため、電位が(VDD1−Vth)までしか上昇しない。
【0045】
第2期間では、PMOSトランジスタ10はゲート電圧が”H”となるためOFFし、ノード(信号線15)の電位はPMOSトランジスタ11のみによって保持されている。
【0046】
上記したように、例えば、レジスタ0の値を読み出す時にはデコード信号BS0#、BS1#、...の内でBS0#だけが”L”となる。プリチャージ信号PCKの反転信号PCK#は”L”であるのでNMOSトランジスタ20がONする。レジスタ0のデータが”L”の場合はNMOSトランジスタ21もONしデータバス2の電位はディスチャージされ”L”に落ちる。するとNMOSトランジスタ12がONするので信号線15の電位も”L”に落ち、”L”データがバスセンスアンプより出力される(第2期間(B))。また、レジスタ0のデータが”H”の場合にはNMOSトランジスタ21はONしないのでデータバス2及び信号線15はプリチャージされたままの状態を保持し”H”データが出力されることになる(第2期間(D))。
【0047】
上記ディスチャージにおいて動作速度を遅くする要因として、隣接する配線とのクロストークが原因でデータバス1の電位がチャージアップすることが考えられる。そこで、この第2の実施形態ではこれを防止するため、NMOSトランジスタ13を挿入している。NMOSトランジスタ13はデータバス1の電位が(VDD2+Vth)以上になるとONするためリミッタとして機能し、データバスのチャージアップを防止している。
【0048】
VDD2として例えば(Vcc−3*Vth)<VDD2<(Vcc−2*Vth)になるような値を設定すると、上記で例示したデータバス1のプリチャージ電圧(Vcc−2*Vth)よりも差分である(VDD2−Vcc+3*Vth)以上のチャージアップがあった場合にNMOSトランジスタ13がリミッタとして機能する。
【0049】
次に、この発明の第3の実施形態につき説明する。図5は、この発明の第3の実施形態にかかるデータ転送回路の構成を示す回路図である。
【0050】
この第3の実施形態は、図示しているとおり、上述した図1又は図3に示すデータ転送回路の回路構成に更に上位のバスとのデータ転送部を付加したものである。この図5に示すものは、図3に示すデータ転送回路を用いているが、図1に示すものも用いても良い。但し、図1に用いたものでは、上述したように、ディスチャージにおいて動作速度を遅くする要因として、隣接する配線とのクロストークが原因でデータバス1の電位がチャージアップすることが考えられるが、データバスの振幅抑制による消費電力の低減等の効果は得られる。なお、図3と同一構成には同一符号を付している。
【0051】
第3の実施形態の構成は大別するとデータ保持部2、出力側のデータバス1、バスセンスアンプ4に付加されたものとして入力側のデータバス6及び入出力制御部5とからなる。入力側のデータバス6は上位のデータバス55を経由してデータ保持部2内部のレジスタにデータを書き込むために使用される。
【0052】
入出力制御部5はバスセンスアンプ4の出力信号を反転するインバータ(50と51)、インバータ(50と51)の出力をNMOSトランジスタ54を介して上位のデータバス55に接続しているバスドライバと上位のデータバス55のデータを入力側のデータバス6に出力するためのORゲート部56とからなり、上位のデータバス55との間でのデータの入出力の制御を行っている。
【0053】
NMOSトランジスタ54のゲート電極に接続されている信号線BSはデータバス1にぶら下がっているデータ保持部2…の内どれかがソースとなった場合に第2期間のみ”H”となる信号であり、バスセンスアンプ4の出力を上位のデータバス55に出力するものである。
【0054】
また、ORゲート部56は、NORゲート56aとインバータ56bとで構成されており、NORゲート56aの一方が上位データバス55と接続され、上記NORゲート56aの他方にはレジスタ0,1,...のどれかがディスティネーションで、かつ第1期間内のみ”L”になる信号BD#が入力されており、第1期間において上位のデータバス55の値をレジスタ24…に書き込みができることにあわせて、データ保持部2への書き込みが起こった場合を除いてデータバス6の電位を”H”に保つようにしている。
【0055】
また上記データ保持部2…内部のレジスタ24…にはデータの書込みイネーブル信号BD0,BD1,...が入力されており、該当するレジスタ24がディスティネーションになった時に”H”となり、データバス6のデータを書き込むことができる。
【0056】
このように、この第3の実施形態においては、第1期間において出力側のデータバス1のプリチャージと上位のデータバス35からデータ保持部2へのデータの書込みを同時に行い、第2期間において出力側のデータバス1のディスチャージ、すなわち上位のデータバス55へのデータ出力を行うことによって2倍の転送能力を持ったバスシステムを構築している。
【0057】
また、出力側のデータバス1はプリチャージラインなので、隣接した配線がディスチャージ期間に”H”から”L”に遷移するような信号の場合にはクロストークによってチャージロスが発生することが考えられるのでGNDラインあるいはVCCラインなどの高速動作しない配線によってシールドする必要がある。ただし、本発明の構成を取れば入力側のデータバス6を出力側のデータバス1に隣接して配置することによってチャージロスを防止することが可能であるため、チップ面積を削減することができる。
【0058】
図6は、この発明の第3の実施形態にかかるデータ転送回路の各信号線の時間遷移を示すタイミングチャートである。図6を参照して第3の実施形態にかかるデータ転送回路の動作について説明する。
【0059】
図ではレジスタ0(Reg0)に対して、第1期間(C)においては”L”データの書き込み、第1期間(E)においては”H”データの書込みを行っている。また、第2期間(B)及び第2期間(D)においてはレジスタ0(Reg0)の値を上位のバスに読み出している。データバス1は第1期間(C)においてデータバス6の遷移に伴いクロストークによって一瞬電位が落ちているが、この期間はプリチャージ期間であるためNMOSトランジスタ12を介して電流が流れ込み電位を回復することができる。同様に第2期間(D)の頭でクロストークによって一瞬チャージアップするが、(VDD2+Vth)よりも高い電位までチャージアップすると、チャージアップ防止用のNMOSトランジスタ13がONするためディスチャージ時間が遅れることを防止している。
【0060】
次に、この発明の第4の実施形態につき説明する。図7は、この発明の第4の実施形態にかかるデータ転送回路の構成を示す回路図である。この第4の実施形態は、第3の実施形態において、さらに、上位のデータバス55の振幅を抑制したものである。
【0061】
図7に示すように、入出力制御部5はバスセンスアンプ4の出力信号を反転するインバータ(50と51)の間にNMOSトランジスタ52を挿入し、該インバータ(50と51)の出力をNMOSトランジスタ54を介して上位のデータバス55に接続しているバスドライバと上位のデータバス55のデータを入力側のデータバス6に出力するためのORゲート部56とからなり、上位のデータバス55との間でのデータの入出力の制御を行っている。
【0062】
NMOSトランジスタ54のゲート電極に接続されている信号線BSはデータバス1にぶら下がっているデータ保持部2…の内どれかがソースとなった場合に、第2期間のみ”H”となる信号であり、バスセンスアンプ4の出力を上位のデータバス55に出力できる。
【0063】
NMOSトランジスタ52のゲート電極にはバス駆動検出器53の出力信号が接続されており、ノード(信号線)55の電位が所定の電位以上になるとOFFするようになっているため、上位のデータバス55の振幅を抑制することが可能となる。また、上記データ保持部2…内部のレジスタ24にはデータの書き込みイネーブル信号BD0,BD1,...が入力されており、該当するレジスタがディスティネーションになった時に”H”となり、データバス6のデータを書き込むことができる。上記OR回路の片側にはレジスタ0,1,...のどれかがディスティネーションで、かつ第1期間内のみ”L”になる信号BD#が入力されており、第1期間において上位のデータバス55の値をレジスタ24に書き込みができることにあわせて、データ保持部への書き込みが起こった場合を除いてデータバス6の電位を”H”に保つようにしている。
【0064】
このように、この第4の実施形態は第1期間において出力側のデータバスのプリチャージと上位のデータバスからデータ保持部へのデータの書込みを同時に行い、第2期間において出力側のデータバスのディスチャージ、すなわち上位のデータバスへのデータ出力を行うことによって2倍の転送能力を持ったバスシステムを構築している。
【0065】
また、出力側のデータバス1はプリチャージラインなので、隣接した配線がディスチャージ期間に”H”から”L”に遷移するような信号の場合にはクロストークによってチャージロスが発生することが考えられるのでGNDラインあるいはVCCラインなどの高速動作しない配線によってシールドする必要がある。ただし、本発明の構成を取れば入力側のデータバス6を出力側のデータバス1に隣接して配置することによってデータバスのチャージロスを防止することが可能であるため、チップ面積を削減することができる。
【0066】
図8にこの発明回路の各信号線の時間遷移について記す。以降の説明は図8に基づいて行うことにする。図8ではレジスタ0(Reg0)に対して、第1期間(C)においては”L”データの書き込み、第1期間(E)においては”H”データの書き込みを行っている。また、第2期間(B)及び第2期間(D)においてはレジスタ0(Reg0)の値を上位のバスに読み出している。データバス1は第1期間(C)においてデータバス6の遷移に伴いクロストークによって一瞬電位が落ちているが、この期間はプリチャージ期間であるためNMOSトランジスタ12を介して電流が流れ込み電位を回復することができる。同様に第2期間(D)の頭でクロストークによって一瞬チャージアップするが、(VDD2+Vth)よりも高い電位までチャージアップすると、チャージアップ防止用のNMOSトランジスタ13がONするためディスチャージ時間が遅れることを防止している。また、上位バスはVT+の電位で振幅制御される。
【0067】
バス本数が多くなるほど消費電流は多くなるが、本発明によれば、振幅抑制されているので、消費電流を少なくすることができる。このため、バスの本数が多いプロセッサに本発明を用いれば特に効果が得られる。次に、プロセッサの中でもバス数が多いSIMDプロセッサに本発明を適用した例につき、図9を参照して説明する。
【0068】
このSIMD型プロセッサは、グローバルプロセッサ102、本実施形態では256組の後述するプロセッサエレメント103aからなるプロセッサエレメントブロック103と、インタフェース104から構成される。インタフェース104はグローバルプロセッサ102の命令に基づき、イメージスキャナなどの外部入力部から演算対象となるデータをプロセッサ内部の入出力用のレジスタフィル131に与えるとともに、演算処理されたデータをレジスタファイル131からプリンタなどの外部出力部へ転送するものである。
【0069】
この外部入出力装置は、ディジタル画像データなどの演算データを入出力するものである。外部入力装置としては、イメージスキャナや画像が格納された画像メモリがあり、外部出力装置としては画像データを印字するプリンタ、データを格納する画像メモリなどがある。
【0070】
グローバルプロセッサ102は、いわゆるSISD(Single Instruction Stream Single Data Stream)タイプのプロセッサであり、プログラムRAMとデータRAMを内蔵し、プログラムを解読し、各種制御信号を生成する。この制御信号は内蔵する各種ブロックの制御以外にもレジスタファイル131、演算アレイ136に供給される。また、GP(グローバルプロセッサ)命令実行時は内蔵する汎用レジスタ、ALU(算術論理演算器)等を使用して各種演算処理、プログラム制御処理を行う。
【0071】
レジスタファイル131はPE(プロセッサエレメント)命令で処理されるデータを保持している。このPE命令はSIMD(Single Instruction Stream Multiple Data Stream)タイプの命令であり、レジスタファイル131に保持されている複数のデータを同時に同じ処理を行う。このレジスタファイル131からのデータの読み出し/書き込みの制御はグローバルプロセッサ102からの制御によって行われる。読み出されたデータは演算アレイ136に送られ、演算アレイ136での演算処理後にレジスタファイル131に書き込まれる。
【0072】
また、レジスタファイル131はプロセッサ外部からのアクセスが可能であり、グローバルプロセッサ102の制御とは別に外部から特定のレジスタを読み出し/書き込みが行われる。
【0073】
演算アレイ136にてPE命令の演算処理が行われる。この処理の制御はすべてグローバルプロセッサ102から行われる。
【0074】
次に、SIMD型プロセッサ100のレジスタファイル131へのデータの読み出し/書き込みの一例につき説明する。
【0075】
グローバルプロセッサ102にはこのプロセッサのプログラム格納用のプログラムRAM121と演算データ格納用のデータRAM124が内蔵されている。さらに、プログラムのアドレスを保持するプログラムカウンタ(PC)、演算処理のデータ格納のための汎用レジスタであるG0〜G3レジスタ、レジスタ退避、復帰時に退避先データRAMのアドレスを保持しているスタックポインタ(SP)、サブルーチンコール時にコール元のアドレスを保持するリンクレジスタ(LS)、同じくIRQ時とNMI時の分岐元アドレスを保持するLI、LNレジスタ、プロセッサの状態を保持しているプロセッサステータスレジスタ(P)のレジスタ群125が内蔵されている。さらに、グローバルプロセッサ102は、プログラムRAM121に基づきグローバルプロセッサ102、プロセッサエレメントブロック103、インタフェース104を制御するシーケンスユニット122を備える。
【0076】
また、グローバルプロセッサ102は、これらのレジスタ群125と図示していない命令デコーダ、算術論理演算器(ALU)123、図示していないメモリ制御回路、割り込み制御回路、外部I/O制御回路、GP演算制御回路を使用してGP命令の実行が行われる。
【0077】
また、PE命令実行時は命令デコーダ、図示していないレジスタファイル制御回路、PE演算制御回路を使用して、レジスタファイル131の制御と演算アレイ136の制御を行う。
【0078】
上記したように、シーケンスユニット122は、プロセッサエレメントブロック103を構成するレジスタファイル131、及び演算アレイ136を制御する。
【0079】
この演算アレイ136は、入出力制御回路132、マルチプレクサとシフト拡張回路からなる選択回路133、算術論理演算器(ALU)134、及びAレジスタ135a及びFレジスタ135bを備える。なお、この図9には記載していないが、この実施形態においては、後述するように、比較手段としての、条件レジスタ及び条件選択レジスタを備える。
【0080】
さらに、このシーケンスユニット122は、インタフェース104に対してデータ転送のための動作設定用データ及びコマンド等を送る。インタフェース104は、シーケンスユニット122の動作設定用データ及びコマンドに基づき、プロセッサエレメント103aのアドレス指定のためのアドレス制御信号、プロセッサエレメント103aを構成するレジスタ131bにデータのリード/ライトを指示するためのリード/ライト制御信号、クロック信号を与えるためのクロック制御信号を生成する。
【0081】
ここで、リード/ライト制御信号のうちライト制御信号とは、演算処理されるデータをデータバス141dより取得して、プロセッサエレメント103aのレジスタ131bに保持させるための信号をいう。一方、リード/ライト制御信号のうちリード制御信号とは、プロセッサエレメント103aのレジスタ131bが保持している演算処理されたデータを、データバス141dへ与えるようレジスタ131bに指示するための信号をいう。
【0082】
インタフェース104は、グローバルプロセッサ102からのコマンドを受けて、プロセッサエレメントブロック103を構成するプロセッサエレメント103aのアドレスを指定する信号(以下、「アドレス指定信号」という。)を作成し、アドレスバス141aを介してプロセッサエレメント103aのレジスタコントローラ131aヘ送る。また、インタフェース104は、後述するように、プロセッサエレメント103aを構成するレジスタ131bに対して、データのリード/ライトを指示するための信号(以下、「リード/ライト指示信号」という。)を、リード/ライト信号線141bを介してプロセッサエレメント103aの後述するレジスタコントローラ131aヘリード/ライト信号が与えられる。
【0083】
また、インタフェース104は、クロック信号線141cを介してプロセッサエレメント103aの後述するレジスタコントローラ131aへクロック信号を与える。
【0084】
さらに、外部入出力データバスからは、上述したように、SIMD型プロセッサの外部に設けられたイメージスキャナ等で読み込んだデータを、本実施形態では8ビットのパラレルデータとして、インタフェース104に与える。この8ビットのデータは、データバス141dに与えられる。この8ビットのパラレルデータについては、データに応じて適宜変更しても問題ない。このデータバス141dは、レジスタ131bに保持されている演算処理されたデータが、SIMD型プロセッサの外部に転送される時にも使用される。
【0085】
また、レジスタ群125は、プロセッサエレメントブロック103の後述するレジスタ135に接続されており、このレジスタ135との間でシーケンスユニット122の制御によりデータの交換が行われる。
【0086】
プロセッサエレメントブロック103は、図9に示すように、レジスタファイル131、この発明の図7に示す入出力制御部5と同様に構成された入出力制御回路132、マルチプレクサとシフト拡張回路からなる選択回路3、ALU134、Aレジスタ135a、Fレジスタ135bを一単位とする複数のプロセッサエレメント3aを備える。レジスタファイル131には、1つのプロセッサエレメント3a単位に8ビットのレジスタが32本内蔵されており、本実施形態では256のプロセッサエレメント分の組がアレイ構成になっている。レジスタファイル131は1つのプロセッサエレメント(PE)3aごとにR0、R1、R2、...R31と呼ばれているレジスタが内蔵されている。それぞれのレジスタファイル131は演算アレイ136に対して1つの読み出しポートと1つの書き込みポートを備えており、8ビットの出力用内部バス137と8ビットの入力用内部バス138で演算アレイ136からアクセスされる。
【0087】
これら内部バス137、138は演算アレイ134にデータを送る出力用内部バス137(図7に示すデータバス1に相当する)と、演算アレイ134からレジスタ131にデータを書き込むための入力用内部データバス138(図7に示す入力データバス6に相当する。)からなる。
【0088】
出力用内部バス137は、バスセンスアンプ4によりプリチャージされる。また、入出力制御回路132内に図7に示すデータ転送部5が設けられている。
【0089】
32本のレジスタの内、24本はプロセッサ外部からアクセス可能であり、外部からクロックとアドレス、リード/ライト制御を入力することで任意のレジスタを読み書きできる。
【0090】
レジスタの外部からのアクセスは1つの外部ポートで各プロセッサエレメント103aの1つのレジスタがアクセス可能であり、外部から入力されたアドレスでプロセッサエレメントの番号(0〜255)を指定する。したがって、レジスタアクセスの外部ポートは全部で24組搭載されている。
【0091】
本実施形態では、プロセッサエレメント103aの数を256個として説明するが、これに限定されるものでなく適宜変更して使用してもよい。このプロセッサエレメント103aには、グローバルプロセッサ102のシーケンスユニット122により、インタフェース104に近い順に0から255までのアドレスが割り付けられる。
【0092】
プロセッサエレメント103aのレジスタファイル131は、レジスタコントローラ131a、2種類のレジスタ131b、131cを備える。本実施形態では、図9に示すように、一単位のプロセッサエレメント103a毎に、レジスタコントローラ131aとレジスタ131bとを24組備え、さらにレジスタ131cを8個備えている。図9中の1プロセッサエレメントとは1つのプロセッサエレメント103aを表している。ここで、本実施形態では、レジスタ131b、131cを8ビットのものとして扱うが、これに限定されるものでなく適宜変更して使用してもよい。
【0093】
レジスタコントローラ131aは、図9に示すように、インタフェース4と、上述したアドレスバス141a、リード/ライト信号線141b、クロック信号線141cを介して接続されている。
【0094】
インタフェース104は、グローバルプロセッサ102からデータ転送指示を受け取ると、アドレス指定信号をアドレスバス141aを介してプロセッサエレメントブロック103ヘ送る。これにより、プロセッサエレメント103aがアドレス指定される。レジスタコントローラ131aは、送られてきたアドレス指定信号をデコードし、デコードしたアドレスと、自己に割り付けられたアドレスとが一致する場合には、クロック信号141cを介して送られてきたクロック信号に同期して、リード/ライト信号141bから送られてきたリード/ライト指示信号を得る。具体的には、レジスタコントローラ131aは、リード/ライト信号141bを介してリード/ライト指示信号を得る。そして、このリード/ライト指示信号はレジスタ131bに与えられる。
【0095】
インタフェース104からプロセッサエレメント103aに対し、ライト指示信号が送られてきた場合には、プロセッサエレメント103aのレジスタ131bは、演算処理されるデータ(8ビット)をデータバス141dより取得して保持する。また、インタフェース104からプロセッサエレメント103aに対し、リード指示信号が送られてきた場合には、プロセッサエレメント103aのレジスタ131bは、演算処理されたデータ(8ビット)をデータバス41dへ送る。
【0096】
レジスタ131bは、後述するALU134でこれから演算される外部から入力されたデータを保持したり、或いはALU134で演算処理されたデータを外部へ出力するために保持するものであり、いわゆる入力レジスタとしても、或いは出力レジスタとしても機能する。また、演算処理されるデータ、或いは演算されたデータを一時的に保持するといった、後述するレジスタ131cとしての機能も有する。なお、本実施形態では、レジスタ131bは8ビットのデータを保持できるものとして扱うが、データに応じて適宜変更しても問題ない。上述したレジスタコントローラ131aからライト指示信号が与えられると、レジスタ131bは演算処理されるデータをデータバス141dより取得して保持する。一方、レジスタコントローラ131aからリード指示信号が送られてくると、レジスタ131bは保持している演算処理されたデータをデータバス141dへ与える。このデータはインタフェース104から外部データバスを介して外部のプリンタなどへ転送される。
【0097】
また、レジスタ131bは、本実施形態においては8ビットデータをパラレルで転送するこの発明に基づきバスセンスアンプ4によりプリチャージされる出力用内部データバス137を介して入出力制御回路132に接続されている。ALU134で演算処理されるデータは、出力用内部データバス137から与えられる。また、ALU134で演算処理されたデータは、この入力用内部データバス138を介して、レジスタ131bに転送される。この転送は、グローバルプロセッサ102のシーケンスユニット122からの指示によって、グローバルプロセッサ102に接続されたリード信号線126a、ライト信号線126bを介して行われる。具体的には、グローバルプロセッサ102のシーケンスユニット122から、リード信号線126aを介してリード指示信号が送られてくると、レジスタ131bは保持している演算処理されるデータを出力用内部データバス137へ置く。このデータはALU134へ送られ演算処理される。一方、グローバルプロセッサ102のシーケンスユニット122から、ライト信号線126bを介してライト指示信号が送られてくると、レジスタ131bは入力用内部データバス138を介して送られてきたALU134で演算処理されたデータを保持する。
【0098】
レジスタ131cは、レジスタ131bより与えられた演算処理されるデータ、或いは演算されたデータがレジスタ131bに与えられる前に、そのデータを一時的に保持するものである。
【0099】
プロセッサエレメント103aの命令による演算は、基本的にレジスタファイル131から読み出されたデータをALU134の片側の入力としてもう片側にはAレジスタ135aの内容を入力として結果をAレジスタ135aに格納する。したがって、Aレジスタ135aとレジスタファイル131のR0〜R31レジスタとの演算が行われることとなる。レジスタファイル131と演算アレイ136との接続に(8to1)のマルチプレクサとシフト拡張回路133からなる選択回路133を置いており、プロセッサエレメント方向で左に1、2、3つ離れたデータと右に1、2、3つ離れたデータ、中央のデータを演算対象として選択している。また、レジスタファイル31の8ビットのデータは入出力制御回路133により任意ビットの左シフトしてALU134に入力される。なお、上記(8to1)のマルチプレクサの1つの入力は、グローバルプロセッサ102からのデータが与えられるように構成されている。
【0100】
上記したように、選択回路133は、自己のプロセッサエレメント103aに備えられた上記データバス137、138に接続されるとともに、両隣3つのプロセッサエレメント103aに備えられたデータバス137、138にも接続されている。この選択回路133は7つのプロセッサエレメント103aから1つを選択し、その選択したプロセッサエレメント103aにおけるレジスタ131b、131cで保持されているデータをALU134へ送る。或いはALU134で演算処理されたデータを、選択したプロセッサエレメント103aにおけるレジスタ131b、131cへ送る。これによって、隣のプロセッサエレメント103aにおけるレジスタ131b、131cで保持されているデータを利用した演算処理が可能になり、SIMD型プロセッサの演算処理能力を高めることができる。
【0101】
さらに、この選択回路133は、選択回路133内のマルチプレクサから送られてきたデータを所定ビットシフトしてALU134へ送る。或いはALU134から送られてきた演算処理されたデータを所定ビットシフトして選択回路133内のマルチプレクサへ送る。
【0102】
ALU134は、入出力制御回路132から送られてきたデータと、Aレジスタ135aに保持されているデータとに基づき算術論理演算を行う。なお、本実施形態では、ALU134は16ビットのデータに対応できるものとして扱うが、データに応じて適宜変更しても問題ない。演算処理されたデータは、Aレジスタ135aに保持され、入出力制御回路132へ転送されたり、或いはグローバルプロセッサ102の汎用レジスタ125へ転送される。
【0103】
グローバルプロセッサ102からインタフェース104へはI/O用のアドレス、データ、コントロール信号がバスを介して与えられる。
【0104】
さらに、図示していない条件レジスタ(T)により、プロセッサエレメント(PE)103a毎に演算実行の有効/無効の制御をしており特定のプロセッサエレメント(PE)103aだけを演算対象として選択できるように構成している。
【0105】
上記したように、この実施形態においては、レジスタファイル131には1つのPE103a単位に8ビットのレジスタが32本内蔵されており、256PE分の組みがアレイ構成になっている。レジスタはPEごとにR0、R1、R2、...R31と呼ばれている。それぞれのレジスタは演算アレイ136に対して1つの読み出しポートと1つの書き込みポートを備えており、8ビットのバス137、138で演算アレイ136からアクセスされる。32本のレジスタの内、24本(R0〜R23)のレジスタ31bは、プロセッサ外部からアクセス可能であり、外部からクロックとアドレス、リード/ライト制御を入力することで任意のレジスタを読み書きできる。
【0106】
残りの8本(R24〜R31)のレジスタ131cはPE演算の一時的な演算データ保存用として使用される。
【0107】
上述したように、演算アレイ136は16ビットALU134と16ビットAレジスタ135a、Fレジスタ135bを内蔵している。PE命令による演算はレジスタファイル131から読み出されたデータもしくはグローバルプロセッサ102から与えられたデータをALU134の片側の入力としてもう片側にはAレジスタ135aの内容を入力として結果をAレジスタに格納する。したがって、Aレジスタ135aとR0〜R31レジスタ31b、31cもしくはグローバルプロセッサ102から与えられたデータとの演算が行われることとなる。
【0108】
この発明のデータ転送回路を用いれば、振幅抑制されているので、消費電流を少なくすることができる。このため、バスの本数が多いSIMD型プロセッサに特に効果が得られる。また、上記したように、入力用内部データバス137と出力用内部データバス138とを、隣接して配置することが可能となり、データバスのチャージロスを防止することができる。この結果、チップ面積を削減することができる。
【0109】
上述した実施形態においては、レジスタファイル131の外部入出力する方式としてアドレッシング方式を採用し、レジスタファイル131をプロセッサ外部からアクセスし、外部からクロックとアドレス、リード/ライト制御を入力することで任意のレジスタを読み書きできるように構成した場合につき説明したが、この発明は他の方式、例えば、外部入出力にシフトレジスタ方式を用いたプロセッサにも適用できる。図10にシフトレジスタ方式を用いた場合の基本構成を示す。
【0110】
図10に示すように、入力画像データを一時的に蓄積する入力シフトレジスタ160と、演算アレイ136で画像処理された画像データが並列入力される外部出力シフトレジスタ161とを備える。入力シフトレジスタ160には、イメージスキャナなどから送られる外部画像データが外部データバスから入力シフトレジスタ160に順次与えられる。入力シフトレジスタ160には並列nビットデータがビット毎に順次シフトされる。この入力シフトレジスタ160の段数は、プロセッサエレメントの組数の段数を有し、この実施形態では256段の段数を有する。入力シフトレジスタ160に蓄積されたデータはレジスタファイル131へ移される。レジスタファイル131への書き込み動作は入力シフトレジスタ160の各段において同時に行われる。このように、レジスタファイル131にデータが格納されると、この発明に基づくデータ転送回路及びデータ転送部によりデータ転送が行われ、上述した処理が演算アレイ136で行われる。
【0111】
演算処理が行われ、この発明に基づくデータ転送回路及びデータ転送部から入力バスによりレジスタファイル131に格納されたデータは出力シフトレジスタ161の各段に転送される。この出力シフトレジスタ161のレジスタ段数はプロセッサエレメントの組数分だけであり、レジスタファイル131からデータが出力シフトレジスタ161の各段に同時に転送される。この出力シフトレジスタ161に与えられるクロックでデータがシリアルに出力される。そして、出力されたデータは外部出力データバスからバッファメモリなどに一時格納され、プリンタなどの外部出力装置に与えられる。
【0112】
このように、上記したシフトレジスタ方式においても、この発明を適用すれば、データバスの振幅を抑制でき、消費電力を少なくできる。
【0113】
【発明の効果】
上記したように本発明においては、比較的小さなゲート規模のバスセンスアンプをプリチャージラインに接続することで誤動作が少なく、高速で消費電力の少ないデータ転送回路が実現できる。
【0114】
さらに、データ転送部を設けることで、上位のデータバスの振幅も抑制したデータ転送回路が実現できる。またプリチャージ期間にデータ書込みを行っているためデータの転送能力が2倍になる。
【図面の簡単な説明】
【図1】この発明の第1の実施形態にかかるデータ転送回路の構成を示す回路図である。
【図2】この発明の第1の実施形態にかかるデータ転送回路の各信号線の時間遷移を示すタイミングチャートである。
【図3】この発明の第2の実施形態にかかるデータ転送回路の構成を示す回路図である。
【図4】この発明の第2の実施形態にかかるデータ転送回路の各信号線の時間遷移を示すタイミングチャートである。
【図5】この発明の第3の実施形態にかかるデータ転送回路の構成を示す回路図である。
【図6】この発明の第3の実施形態にかかるデータ転送回路の各信号線の時間遷移を示すタイミングチャートである。
【図7】この発明の第4の実施形態にかかるデータ転送回路の構成を示す回路図である。
【図8】この発明の第4の実施形態にかかるデータ転送回路の各信号線の時間遷移を示すタイミングチャートである。
【図9】この発明をSIMD型プロセッサに用いた例を示すブロック図である。
【図10】この発明が適用される他のSIMD型プロセッサを示すブロック図である。
【図11】最も基本的なプリチャージバスの構成を示す回路図である。
【符号の説明】
1 データバス
2 データ保持部
4 バスセンスアンプ
10 PMOSトランジスタ
11 PMOSトランジスタ
12 NMOSトランジスタ
13 NMOSトランジスタ
15 ノード(信号線)[0001]
[Industrial application fields]
The present invention relates to a data transfer circuit for outputting data to a precharge / discharge type bus signal line and a semiconductor integrated circuit device using the circuit.
[0002]
[Prior art]
Conventionally, as a method of outputting data from a plurality of circuits (for example, registers) to a data bus, a bus system having a precharge circuit configuration is often used.
[0003]
FIG. 11 is a circuit diagram showing the configuration of the most basic precharge bus. As shown in the figure, this bus system is roughly divided into a bus 1, a data holding unit 2 (2 ′)... Connected to the bus 1, and a charge holding unit 3.
[0004]
The charge holding unit 3 is supplied with a precharge signal (PCK). The precharge signal (PCK) is at a low level (L) in the first period and is at a high level (H) in the second period to be taken over, and repeats “L” and “H”. Signal.
[0005]
The data bus 1 is connected to
[0006]
The
[0007]
In the above bus system, for example, a case where data is transferred from the
[0008]
However, in recent years, there has been a problem in that the load capacity of the data bus increases as the circuit scale increases and the discharge time increases. In addition, the need to reduce power consumption has increased.
[0009]
Therefore, conventionally, a method using a bus sense amplifier, a method using a bus drive detection circuit for speeding up discharge, and using a low amplitude precharge for speeding up data transfer and reducing power consumption, etc. There was a way.
[0010]
For example, Japanese Patent Laid-Open No. 3-108515 discloses a data transfer device that uses a differential amplifier to reduce the bus amplitude. Japanese Laid-Open Patent Publication No. 8-171438 discloses that the discharge speed is increased by a bus sense amplifier by using different NMOS transistors for precharging and discharging the data bus.
[0011]
[Problems to be solved by the invention]
However, in the conventional method using the bus drive detection circuit, it is necessary to provide a discharge circuit separately from the bus driver, and there is a disadvantage that the control becomes difficult when the length of the data bus is increased. Further, the method using the differential amplifier has a problem that the circuit scale increases because two data buses are required.
[0012]
The present invention has been made in view of the above-described conventional problems, and an object of the present invention is to realize a bus driver circuit having a simple configuration and high speed and low power consumption.
[0013]
Another object of the present invention is to reduce the power consumption by suppressing the amplitude of the upper data bus and to increase the transfer efficiency by performing the data transfer even in the precharge period.
[0014]
[Means for Solving the Problems]
This invention In a data transfer circuit in which a data holding unit and a bus amplifier are connected to a data bus and a data transfer is performed by giving a precharge signal, the bus amplifier precharges the potential of the data bus to a predetermined level. A precharge signal is applied to the gate, a first PMOS transistor in which one semiconductor region is connected to the power supply voltage and the other semiconductor region is connected to the node, and a voltage lower than the power supply voltage is applied by resistance division. A first NMOS transistor in which one semiconductor region is connected to the node and the other semiconductor region is connected to the data bus, and a signal obtained by inverting the signal from the node by an inverter is input to the gate, A second PMOS transistor having a semiconductor region connected to the node and the other semiconductor region connected to a power supply voltage. A register, and an output unit connected via the said nodes inverter, It is provided with.
[0015]
According to the present invention, a bus driver circuit having a simple configuration including a first PMOS transistor, a first NMOS transistor, and a second PMOS transistor can be added to realize a high speed and low power consumption bus driver circuit.
[0016]
Furthermore, the present invention provides a circuit between the data bus and the first NMOS transistor. A second NMOS transistor is arranged in which the gate and drain regions are connected and a potential lower than the power supply voltage is applied to the source region by resistance division. It may be configured to do so.
[0017]
As a factor that slows down the operation speed in discharging, it is conceivable that the potential of the data bus is charged up due to crosstalk with adjacent wiring. Therefore, according to the above-described configuration, the second NMOS transistor functions as a limiter and can prevent the data bus from being charged up.
[0018]
Also, the semiconductor integrated circuit of the present invention An apparatus is provided for the data transfer circuit described above. The output of the data bus is connected to the input of the inverter, the output of the inverter is connected to a higher signal line through a third NMOS transistor, and the higher signal line is input to one gate of the OR gate. An output of the OR gate is connected to an input signal line, and this input signal line has a path for inputting data to a register outputting data to the data bus, and the other gate of the OR gate has the data A signal having the same level as the precharge signal is input during a period when the bus is precharged, and a signal having the same level as the precharge signal is input during a period during which the bus is discharged.
[0019]
According to the above configuration, by adding the output control circuit, it is possible to increase the transfer efficiency by performing the data transfer even in the low power consumption and precharge period.
[0021]
The inverter may be configured to detect a high potential and connect a limiter so that the potential of the upper signal line does not exceed a certain level lower than the power supply voltage.
[0022]
According to the above configuration, the amplitude of the upper bus is controlled at a predetermined potential, so that power consumption can be reduced.
[0023]
The input signal line may be arranged adjacent to the data bus on the output side of the data transfer circuit.
[0024]
According to the above configuration, by arranging the input-side signal line adjacent to the output-side data bus, it becomes possible to prevent a charge loss of the data bus and reduce the chip area.
[0025]
In addition, the present invention includes a plurality of functional blocks each including a data holding unit to which data is input and output, and a calculation unit that calculates data from the data holding unit and outputs the data to the data holding unit. The holding unit and the arithmetic unit are connected by a bus, a precharge circuit for precharging to a predetermined level in advance is connected to the bus, and the semiconductor integrated circuit device described above is used for the data transfer.
[0026]
The present invention also relates to a semiconductor integrated circuit device constituting a parallel processor having a global processor for decoding a program and controlling the entire processor, and a processor element block comprising a plurality of processor elements for processing data. Each processor element includes an arithmetic unit, a register file having a plurality of registers, and a bus that connects between the arithmetic unit and the register file, and a precharge circuit that precharges to a predetermined level is connected to the bus in advance. The semiconductor integrated circuit device described above is used for the data transfer.
[0027]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the present invention will be described below with reference to the drawings. In addition, the same code | symbol is attached | subjected to the same part as a prior art example.
[0028]
FIG. 1 is a circuit diagram showing a configuration of a data transfer circuit according to a first embodiment of the present invention.
[0029]
As shown in FIG. 1, the configuration of this embodiment is roughly composed of a bus 1, a data holding unit 2 (2 ′), and a
[0030]
The
[0031]
The source regions of the
[0032]
The
[0033]
FIG. 2 is a timing chart showing time transition of each signal line of the data transfer circuit according to the first embodiment of the present invention. The operation of the data transfer circuit according to the first embodiment will be described with reference to FIG.
[0034]
In the first period, since the gate voltage of the
[0035]
Since the data bus 1 is connected to the node (signal line) 15 via the
[0036]
In the second period, the
[0037]
When the data in the
[0038]
By the way, it is conceivable that the potential of the data bus 1 is charged up due to crosstalk with an adjacent wiring as a factor of slowing down the operation speed in the discharge. It has been found that the effect of the crosstalk becomes prominent when there is a difference in driving force between adjacent wirings, and the data bus 1 becomes high impedance after completion of precharging, so that it is particularly susceptible to influence. Become. The second embodiment of the present invention shown in FIG. 3 is a data transfer circuit that prevents the influence from such crosstalk. A second embodiment will be described with reference to FIG. The same parts as those in the first embodiment are denoted by the same reference numerals, and the description thereof is omitted here in order to avoid duplication of explanation.
[0039]
The
[0040]
In the second embodiment, the
[0041]
Since the
[0042]
FIG. 4 is a timing chart showing time transition of each signal line of the data transfer circuit according to the second embodiment of the present invention. The operation of the data transfer circuit according to the second embodiment will be described with reference to FIG.
[0043]
In the first period, since the gate voltage of the
[0044]
As described above, since the data bus 1 is connected to the
[0045]
In the second period, the
[0046]
As described above, for example, when reading the value of the
[0047]
As a factor for slowing down the operation speed in the above discharge, it is conceivable that the potential of the data bus 1 is charged up due to crosstalk with adjacent wiring. Therefore, in the second embodiment, the
[0048]
For example, when a value that satisfies (Vcc−3 * Vth) <VDD2 <(Vcc−2 * Vth) is set as VDD2, the difference is greater than the precharge voltage (Vcc−2 * Vth) of the data bus 1 exemplified above. The
[0049]
Next explained is the third embodiment of the invention. FIG. 5 is a circuit diagram showing a configuration of a data transfer circuit according to the third embodiment of the present invention.
[0050]
In the third embodiment, as shown in the figure, a data transfer unit with a higher-order bus is added to the circuit configuration of the data transfer circuit shown in FIG. 1 or 3 described above. 5 uses the data transfer circuit shown in FIG. 3, but the one shown in FIG. 1 may also be used. However, in the case of the one used in FIG. 1, as described above, the potential of the data bus 1 may be charged up due to crosstalk with the adjacent wiring as a factor that slows down the operation speed in the discharge. Effects such as reduction of power consumption by suppressing the amplitude of the data bus can be obtained. The same components as those in FIG. 3 are denoted by the same reference numerals.
[0051]
The configuration of the third embodiment is roughly divided into a
[0052]
The input /
[0053]
The signal line BS connected to the gate electrode of the
[0054]
The
[0055]
The
[0056]
Thus, in the third embodiment, precharging of the output-side data bus 1 and writing of data from the upper data bus 35 to the
[0057]
Further, since the data bus 1 on the output side is a precharge line, a charge loss may occur due to crosstalk in the case of a signal in which the adjacent wiring changes from “H” to “L” during the discharge period. Therefore, it is necessary to shield with a wiring that does not operate at high speed, such as a GND line or a VCC line. However, if the configuration of the present invention is adopted, the charge loss can be prevented by arranging the input-side data bus 6 adjacent to the output-side data bus 1, so that the chip area can be reduced. .
[0058]
FIG. 6 is a timing chart showing time transition of each signal line of the data transfer circuit according to the third embodiment of the present invention. The operation of the data transfer circuit according to the third embodiment will be described with reference to FIG.
[0059]
In the figure, “L” data is written to the register 0 (Reg0) in the first period (C), and “H” data is written in the first period (E). In the second period (B) and the second period (D), the value of the register 0 (Reg0) is read to the upper bus. In the data bus 1, the potential drops momentarily due to crosstalk in accordance with the transition of the data bus 6 in the first period (C), but since this period is a precharge period, a current flows through the
[0060]
Next explained is the fourth embodiment of the invention. FIG. 7 is a circuit diagram showing a configuration of a data transfer circuit according to the fourth embodiment of the present invention. In the fourth embodiment, the amplitude of the
[0061]
As shown in FIG. 7, the input /
[0062]
The signal line BS connected to the gate electrode of the
[0063]
Since the output signal of the
[0064]
Thus, the fourth embodiment simultaneously performs precharging of the output side data bus and writing of data from the upper data bus to the data holding unit in the first period, and outputs the data bus in the second period. In this way, a bus system having a double transfer capability is constructed by discharging data, that is, outputting data to the upper data bus.
[0065]
Further, since the data bus 1 on the output side is a precharge line, a charge loss may occur due to crosstalk in the case of a signal in which the adjacent wiring changes from “H” to “L” during the discharge period. Therefore, it is necessary to shield with a wiring that does not operate at high speed, such as a GND line or a VCC line. However, if the configuration of the present invention is employed, the charge loss of the data bus can be prevented by arranging the data bus 6 on the input side adjacent to the data bus 1 on the output side, thereby reducing the chip area. be able to.
[0066]
FIG. 8 shows the time transition of each signal line of the circuit of the present invention. The following description will be made based on FIG. In FIG. 8, “L” data is written to the register 0 (Reg0) in the first period (C) and “H” data is written in the first period (E). In the second period (B) and the second period (D), the value of the register 0 (Reg0) is read to the upper bus. In the data bus 1, the potential drops momentarily due to crosstalk in accordance with the transition of the data bus 6 in the first period (C), but since this period is a precharge period, a current flows through the
[0067]
Although the current consumption increases as the number of buses increases, according to the present invention, since the amplitude is suppressed, the current consumption can be reduced. For this reason, if the present invention is applied to a processor having a large number of buses, a particular effect can be obtained. Next, an example in which the present invention is applied to a SIMD processor having a large number of buses among processors will be described with reference to FIG.
[0068]
This SIMD type processor includes a
[0069]
This external input / output device inputs and outputs arithmetic data such as digital image data. The external input device includes an image scanner and an image memory storing an image, and the external output device includes a printer that prints image data, an image memory that stores data, and the like.
[0070]
The
[0071]
The
[0072]
Further, the
[0073]
The
[0074]
Next, an example of data reading / writing to the
[0075]
The
[0076]
The
[0077]
When executing the PE instruction, the instruction decoder, the register file control circuit (not shown), and the PE operation control circuit are used to control the
[0078]
As described above, the
[0079]
The
[0080]
Further, the
[0081]
Here, the write control signal among the read / write control signals refers to a signal for acquiring data to be processed from the
[0082]
In response to a command from the
[0083]
Further, the
[0084]
Further, as described above, the data read by the image scanner or the like provided outside the SIMD type processor is supplied from the external input / output data bus to the
[0085]
The
[0086]
As shown in FIG. 9, the
[0087]
These
[0088]
The output
[0089]
Of the 32 registers, 24 are accessible from outside the processor, and any register can be read and written by inputting a clock, an address, and read / write control from the outside.
[0090]
Access from the outside of the register allows one register of each
[0091]
In the present embodiment, the number of
[0092]
The
[0093]
As shown in FIG. 9, the
[0094]
When the
[0095]
When a write instruction signal is sent from the
[0096]
The
[0097]
The
[0098]
The
[0099]
In the calculation by the instruction of the
[0100]
As described above, the
[0101]
Further, the
[0102]
The
[0103]
An I / O address, data, and control signal are supplied from the
[0104]
Further, the execution / invalidation control of the operation execution is controlled for each processor element (PE) 103a by a condition register (T) (not shown) so that only a specific processor element (PE) 103a can be selected as an operation target. It is composed.
[0105]
As described above, in this embodiment, the
[0106]
The remaining eight (R24 to R31) registers 131c are used for temporarily storing PE data.
[0107]
As described above, the
[0108]
If the data transfer circuit of the present invention is used, the current consumption can be reduced because the amplitude is suppressed. For this reason, the effect is particularly obtained in the SIMD type processor having a large number of buses. Further, as described above, the input
[0109]
In the embodiment described above, an addressing method is employed as a method for externally inputting / outputting the
[0110]
As shown in FIG. 10, an
[0111]
Arithmetic processing is performed, and data stored in the
[0112]
Thus, also in the above-described shift register system, if the present invention is applied, the amplitude of the data bus can be suppressed and the power consumption can be reduced.
[0113]
【The invention's effect】
As described above, in the present invention, by connecting a bus sense amplifier having a relatively small gate scale to the precharge line, a data transfer circuit with few malfunctions, high speed and low power consumption can be realized.
[0114]
Furthermore, by providing the data transfer unit, a data transfer circuit that suppresses the amplitude of the upper data bus can be realized. Further, since data writing is performed during the precharge period, the data transfer capability is doubled.
[Brief description of the drawings]
FIG. 1 is a circuit diagram showing a configuration of a data transfer circuit according to a first embodiment of the present invention;
FIG. 2 is a timing chart showing time transition of each signal line of the data transfer circuit according to the first embodiment of the present invention;
FIG. 3 is a circuit diagram showing a configuration of a data transfer circuit according to a second embodiment of the present invention;
FIG. 4 is a timing chart showing time transitions of signal lines of a data transfer circuit according to a second embodiment of the present invention.
FIG. 5 is a circuit diagram showing a configuration of a data transfer circuit according to a third embodiment of the present invention;
FIG. 6 is a timing chart showing time transition of signal lines of a data transfer circuit according to a third embodiment of the present invention.
FIG. 7 is a circuit diagram showing a configuration of a data transfer circuit according to a fourth embodiment of the present invention;
FIG. 8 is a timing chart showing time transition of each signal line of the data transfer circuit according to the fourth embodiment of the present invention;
FIG. 9 is a block diagram showing an example in which the present invention is applied to a SIMD type processor.
FIG. 10 is a block diagram showing another SIMD type processor to which the present invention is applied;
FIG. 11 is a circuit diagram showing the configuration of the most basic precharge bus.
[Explanation of symbols]
1 Data bus
2 Data holding part
4 Bus sense amplifier
10 PMOS transistor
11 PMOS transistor
12 NMOS transistor
13 NMOS transistor
15 nodes (signal lines)
Claims (8)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000030893A JP3886314B2 (en) | 2000-02-08 | 2000-02-08 | Data transfer circuit and semiconductor integrated circuit device using the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000030893A JP3886314B2 (en) | 2000-02-08 | 2000-02-08 | Data transfer circuit and semiconductor integrated circuit device using the same |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001222348A JP2001222348A (en) | 2001-08-17 |
JP3886314B2 true JP3886314B2 (en) | 2007-02-28 |
Family
ID=18555842
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000030893A Expired - Fee Related JP3886314B2 (en) | 2000-02-08 | 2000-02-08 | Data transfer circuit and semiconductor integrated circuit device using the same |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3886314B2 (en) |
-
2000
- 2000-02-08 JP JP2000030893A patent/JP3886314B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001222348A (en) | 2001-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5991209A (en) | Split sense amplifier and staging buffer for wide memory architecture | |
US10418123B2 (en) | Column repair in memory | |
US5227674A (en) | Semiconductor integrated circuit device | |
US6188633B1 (en) | Multi-port computer register file having shared word lines for read and write ports and storage elements that power down or enter a high-impedance state during write operations | |
JPH1166851A (en) | Clock shift circuit device, clock shift circuit and synchronous type semiconductor storage device using it | |
US5923894A (en) | Adaptable input/output pin control | |
JPH0218498B2 (en) | ||
EP0230668B1 (en) | Arithmetic logic circuit | |
JP3886314B2 (en) | Data transfer circuit and semiconductor integrated circuit device using the same | |
JPH0160856B2 (en) | ||
JP2002207706A (en) | Simd type micro-processor for calculating totalized value among processor elements and for detecting peak | |
US6654301B2 (en) | Multiple discharge capable bit line | |
JP2004078965A (en) | Processor | |
JP4989899B2 (en) | Semiconductor processing unit | |
JPH08241296A (en) | Semiconductor integrated circuit | |
JPS62224119A (en) | Data processor | |
JPH10302475A (en) | Memory control device | |
US5649150A (en) | Scannable last-in-first-out register stack | |
JP2004192405A (en) | Simd type processor | |
JP2707867B2 (en) | Register file of digital computer and instruction execution method using it. | |
JP2849197B2 (en) | Data bus circuit | |
JPH0697814A (en) | Programmable logic array and microcomputer using the logic array | |
JPH03108022A (en) | Semiconductor integrated circuit | |
JPH05191220A (en) | Semiconductor integrated circuit | |
JPH01296487A (en) | Noise detecting circuit for address signal |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040616 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060829 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061027 |
|
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: 20061121 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061121 |
|
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: 20101201 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101201 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111201 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111201 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121201 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131201 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |