【発明の詳細な説明】 【0001】 【発明の属する技術分野】本発明はnビットの論理信号を伝送する論理回路に係る。 特に伝送時に変化するビット数の最大値、平均値を低減させることにより消費電力を低減する技術に関する。 【0002】 【従来の技術】マイクロプロセッサに代表される論理L SIでは、入出力ピンを介し、複数本数のデータ信号線が他の論理回路とのデータ伝送のために存在する。 例えば"PowerPC 601 RISC Microprocessor User's Manual" に示されているプロセッサでは、メモリアドレス線として32本、データ線として64本の信号線が使用されている。 【0003】特に、データ線はプログラムで要求するデータ数値を外部回路とやり取りするために用いられ、伝送されるデータの内容はほぼランダムな数値として考えることができる。 一方、このようなデータ線を駆動する回路としては”菅野、桜井 監訳 MOS LSI設計入門 産業出版”199ページに示されているように、LSI外部の大きなキャパシタンスを駆動する目的で、駆動能力の大きな論理ゲートが用いられる。 【0004】駆動能力の大きな論理ゲートは多量の電荷を充放電するために、論理回路全体の消費電力削減の観点からは、その動作頻度を削減することが重要な課題となる。 【0005】以上のような観点から、論理回路を出入りする信号の変化頻度を抑制する技術として、”Internat ional Solid-State Circuits Conference(ISSCC '94) 会議録82ページ”に見られるように、組み合わせ論理から発生するグリッジを削減したり、データ数値の表現を2の補数表現から絶対値表現に変更する方法などが知られている。 【0006】 【発明が解決しようとする課題】上述のように、まとまりある論理回路間のデータ伝送では、駆動力の大きな論理ゲートが使用されるために、同時に多くのビットが信号変化すると、電源回路の電圧降下を招き誤動作を生じるという問題がある。 また、消費電力を削減する観点からは、データ伝送する際に変化するビット数を削減することが望ましい。 【0007】本発明の課題としては、まず第一に同時に変化するビット数の最大値を一定値以下に抑える回路および方法を与え、電圧降下やノイズによる誤動作を防止することである。 第二に、同時に変化するピット数の平均値を低減させ、平均的な消費電力を削減することである。 【0008】 【課題を解決するための手段】上記課題を解決するために、本願発明は次の構成を提案する。 つまりnビットの論理信号をkビット(kは1以上の整数)のみが変化するm組(mは1以上の整数)の論理信号の組に変換する論理回路と、kビットのみが変化するm組の論理信号を伝送する伝送路と、kビットのみが変化するm組の論理信号を元のnビットによる論理信号に変換する論理回路とを備える。 【0009】これにより、伝送の際に同時に変化するビット数の最大値はmとkの積以下となり、特にmとkの積がn/2を下回るように設定すると平均的に変化するビット数も元のnビットによる表現に比べて低減される。 【0010】別の見方をすると、第1の回路ブロックと、第2の回路ブロックと、第1の回路ブロックと第2 の回路ブロックを接続するバスを有する信号処理回路であって、第1及び第2の回路ブロック内で伝送される信号がnビットの第1の信号であり、バス内で伝送される信号がnより大きなビット数を有する第2の信号であり、第2の信号の単位時間あたりのビット信号変化の最大値または平均値は、第1の信号の単位時間あたりのビット信号変化の最大値または平均値よりも小さいことを特徴とする。 【0011】例えば、第1の信号でクロック一周期あたり、最大4つのデータ線のレベルが変化し、平均では2 つのデータ線のレベルが変化するとすると、第2の信号では、最大でも2つ、平均2つのデータ線のレベルが変化するように信号を変換する。 このようにすることで、 データ伝送のための電力を低減することができる。 【0012】ここで、データ線という語は、物理的に分離されたデータ線に限らず、一つのラインの中を例えば時間的にずらして伝送される複数のデータ信号そのものと考えても良い。 【0013】しかし、このような信号変換を容易にし、 データ転送を高速にするために、第2の信号を伝送する物理的なデータ線の数を第1の信号を伝送するデータ線の数よりも多くすることが好ましい。 例えば、2値信号からデータを構成するときの具体構成としては、第1及び第2の回路ブロック内で第1の信号を伝達する内部データバスがn本のデータ線からなり、バスがn本より多くのデータ線からなる。 【0014】また、データ変換のためには第1及び第2 の回路ブロック内に、第1の信号と第2の信号の変換を行う回路を有するようにすることができる。 【0015】典型的な例では、第1の信号はn個の信号のレベルがそれぞれのビット(1か0)を表すnビットのレベル表現論理信号であり、第2の信号はn個より多い個数の信号のレベル変化がそれぞれのビットを表す遷移表現論理信号である。 例えば、第2の信号はnの整数倍の個数の信号からなる。 【0016】データ構成の面から考察すると、本発明はn進数x桁で表現される第1の信号を処理する第1及び第2の回路と、第1及び第2の回路の間でm進数y桁で表現される第2の信号をやり取りするバスを有する。 このとき、n<m、x>yであり、第2の信号はm列のデータ線を1組とし、これをy組用いる。 そして、m列の各データの採る2値のレベルの間の遷移の有無により情報を伝達する。 【0017】ごく一般的な例としては、第1の信号は2 進数x桁(例えば4桁)であり、x個(例えば4個)のデータ線のレベルによって各桁の値を表す。 そして、第2の信号は例えば上記x桁の一部分ずつを表す2組のデータ線(例えば4桁のうち上位の2桁と下位の2桁をそれぞれ表す2組)からなる。 【0018】ここで、第2の信号のデータの変化頻度ができるだけ小さくなるようにすると、消費電力を低減することができる。 後に詳細に説明するように、典型的な例では、第2の信号の各組は4つのデータ線からなる。 ここで各組のデータ線のうち1つだけが変化することに決めると、変化するデータ線の組み合わせ(4の4倍で16とおり)により、4ビットの信号を表すことができ、このときのデータ線のレベル変化は単位時間当たり最大でも2とすることができる。 【0019】 【発明の実施の形態】まず、本発明にて用いるレベル表現論理信号と遷移表現論理信号の説明と定義を図2、図3を用いて行う。 【0020】図2に示した論理信号A,B,Cはそれぞれ1ビットの信号である。 信号Aはレベル表現論理信号の例であり、いわゆる通常の論理信号として電圧の高い状態(図中では'1'で表現)と電圧の低い状態(図中では' 0'で表現)の2状態を有している。 レベル表現論理信号は、このように信号の電圧レベルが直接に論理信号としての論理状態に対応している。 【0021】一方、信号Bは遷移表現論理信号の例であり、信号レベルが変化すると、必ず論理状態が別状態へ遷移するという規則で論理信号を伝達する。 図2に示した例では信号Aと同様に論理値'1'と'0'を交互に表現している。 つまり、遷移表現論理信号では信号のレベルが変化することが本質であり、レベルそのものには意味はない。 したがって、信号Cのように、信号Bと電圧レベルでは逆の信号であっても、信号Aと同じ論理信号を表現可能である。 【0022】以上の信号A,B,Cにおける例では1ビットの論理信号を扱っているため、レベル表現論理信号と遷移表現論理信号との間に本質的な差異は存在しない。 【0023】信号Dは4ビットのレベル表現論理信号の例であり、下位のb1ビットからb4ビットまで順に0、 2、4、8の重みを付けた2進数を表している。 図に示した例は時間順に6、3、10、8の数値を伝送する例を示している。 【0024】一方、信号Eは遷移表現論理信号8ビットで信号Dと同様に6、3、10、8の数値を伝送する例である。 信号Eでは説明上、信号のレベル('0'または' 1')を示しているが、意味を持つのは図の左から右への時間変位に対して、信号のレベルが変化するか否かの情報である。 【0025】ここに示す信号Eの例では「S11からS14までの4ビット、S21からS24までの4ビットそれぞれにおいて、1ビットのみが変化する」という規則と、図3の対応表に示した「それぞれの4ビットにおいて変化したビットの位置の組み合わせで、伝達しようとする数値を表す」という二つの規則によって数値を表現する。 【0026】図3に示す対応表において、'u'はビットが変化しないことを表し、'c'はそのビットが変化することを表す。 4ビットのどの位置が変化するかによって、4通りの場合を表すことができ、その4ビットの組みが2組み存在することにより、4x4の16通りの数値に対応づけることが可能である。 【0027】図2の信号Eにもどり、S11からS24の初期状態を仮に全て0と仮定すると、最初にS12とS23が変化することにより、数値6を表す。 次にS11とS24が変化することにより、数値3を表現する。 以下同様に、図3の対応関係に基づいて数値10、8が表現される。 このように、一度に変化するビット数を制限した遷移表現を複数組み合わせることにより、通常のレベル表現と同様な数値を表現することが可能である。 【0028】より一般的には、nビットのレベル表現による2進数は2のn乗個だけの数値を表現可能であるのに対して、nビット中1ビットしか変化しない遷移表現をm組(ただし、nのm乗は2のn乗以上である)用いて同様に数値を表現することが可能である。 【0029】さらに、「同時に変化するビット数はnビット中kビットのみ」という規則、または「同時に変化するビット数はnビット中kビット以下」という規則の下でm組の遷移表現論理信号を組み合わせて数値を表現するようにも拡張可能である。 なお、上記の説明において、n、m、kは1以上の整数である。 【0030】図1を用いて、以上説明した定義と基本原理に基づき、本発明の実施の形態を説明する。 図1は本発明における信号電送回路の構成を示す図であり、LT 変換回路100はレベル表現された通常の入力信号101を遷移表現論理回路信号に変換し、伝送路102へ送出する。 TL変換回路103は伝送路102により伝送されてきた遷移表現論理回路信号を元のレベル表現論理信号へ変換し、 出力信号104として出力する。 【0031】LT変換回路100はLT変換組合せ回路105 とトグル回路106から構成されている。 LT変換組み合わせ回路105はnビットから成る入力信号101をm組の遷移表現で表す際に、変化するビットに'1'、変化しないビットに'0'を対応づけた論理信号を生成する。 この生成された論理信号はトグル回路106に入力される。 トグル回路106は各ビットともに同一機能を有しており、'1' が入力された際には現在保持している論理値とは逆の論理値を、'0'が入力された際には現在保持している値を伝送路102へ送出する。 【0032】TL変換回路103は受信ラッチ回路107、T L変換組合せ回路108とから構成されている。 受信ラッチ回路107は伝送路102により送られてくる遷移表現論理信号を受信し、電圧レベルの変化したビットに'1',変化しないビットに'0'を出力する。 この結果はTL変換組合せ回路108へ入力される。 TL変換組み合わせ回路108 はLT変換組み合わせ回路105の入出力関係が逆転した組み合わせ回路であり、変化したビットが'1',変化しないビットが'0'で入力されると、その組み合わせによって出力信号104を生成する。 【0033】以上が本発明の実施形態における構成である。 次に4ビットで表される2進数(レベル表現論理信号)の例を用いて各部の詳細な回路を説明する。 【0034】図4はLT変換回路100の一例を示す回路図である。 入力信号101a〜101dは入力信号101に対応しており、ここでは4ビットの2進数を入力信号とする。 LT変換組み合わせ回路105は図示された論理回路により実現されている。 この組み合わせ論理は図3に示した対応表の'u'を'0'に、'c'を'1'に変換し、真理値表として読み替えた論理となっている。 【0035】すなわち、S11が変化するのは入力4ビットの上位b4,b3が'0'の場合であり、この条件をNOR論理ゲート400は検出している。 同様に他の論理ゲートもL T変換組み合わせ回路105の出力ビットが変化する場合の条件を検出している。 【0036】トグル回路106はトグルタイプのフリップフロップ401a〜401hにて構成されている。 トグルタイプのフリップフロップは入力が'1'の場合には現在保持している値の逆の値を出力し、入力が'0'の場合には現在の値を出力するため、トグル回路106の機能をビット当たり1フリップフロップにて実現可能である。 各フリップフロップの出力は伝送路102の各ビット102a〜102hへ接続されている。 【0037】図5には図4に示したLT変換回路に対応するTL変換回路の例を示す。 この回路は伝送路102からの入力信号102a〜102hのいずれかが変化する度に新たな評価結果を出力する自己同期型の回路となっている。 論理ゲート501a〜501hと遅延素子500a〜500hはこの信号変化を検出するために各ビットに設けられている。 また変化検出部502a〜502fは入力信号102a〜102hのうち変化したビットに対して'1'を出力する回路である。 【0038】これらビット毎に設けられた回路は各ビットとも同様に構成されているため、1ビット分のみを説明する。 遅延素子500aによって遅延された入力信号と、 直接の入力信号はどちらも論理ゲート501aにて排他的論理和の演算が施される。 これにより、入力信号が変化した場合には遅延素子500aによって定められた時間のパルス信号が論理ゲート501aから出力される。 【0039】論理ゲート503は各ビットからの信号変化をNOR演算しており、いずれかのビットにおいて信号変化が生じた場合に負のパルスを発生する。 この負のパルスは変化検出部502aにあるエッジトリガタイプのフリップフロップ504とレベルセンスタイプのフリップフロップ505のクロック信号となっており、それぞれのクロック入力時における信号を保持する。 【0040】つまり、フリップフロップ504は入力信号1 02a〜102hの変化する前の値を保持しており、論理ゲート506は該当するビットが変化した場合に'1'を出力する。 フリップフロップ505は論理ゲート506の出力を保持する。 論理ゲート506の機能は論理ゲート501a〜501hと等価なため、論理ゲート501a〜501hの出力をそのままフリップフロップ505の入力とする構成も可能である。 【0041】変化検出部502a〜502fからの出力は信号d1 〜d7としてTL変換組合せ回路108へ入力される。 この組み合わせ回路は図3に示した対応表を先の図4のLT 変換回路と同様に真理値表と考えた回路である。 このとき、信号d1はS11に、d2はS12に、d3はS13に、d5はS21 に、d6はS22に、d7はS23に対応した入力として解釈し、 表現数値欄の各ビットがbo1〜b04に対応する。 【0042】次に再度図5に示したTL変換回路の動作を図6のタイムチャートを用いて説明する。 【0043】図6において入力信号102aが変化したとすると、その変化は論理ゲート501aにて検出され、論理ゲート503は負のパルス508を出力する。 このパルスはポジティブエッジトリガタイプのフリップフロップ504に入力され、フリップフロップ504はパルス幅だけ遅れて新たに変化した信号(図ではBという値)をラッチする(5 10)。 したがって、このパルス幅に相当する時間だけ、 フリップフロップ504の入出力には信号値の差異が生じ、論理ゲート506はその間'1'を出力する。 【0044】フリップフロップ505は先のパルス信号の反転信号をクロックとし(509)、論理ゲート506の出力をラッチするため、変化検出部の出力512としては図6に示したように入力信号の変化が起こった直後から、その次の変化が起こるまでの間、変化があった場合に'1'なかった場合に'0'を出力する。 【0045】以上が4ビットのレベル表現した論理信号を遷移表現した論理信号に変換し、伝送する回路例である。 この回路によって図3の信号Eに示したように、合計8ビットの信号線を用い、その中で常に2ビットだけを変化させることで、0から15までの数値を伝送できる。 【0046】また、図5に例示したTL変換回路において注目すべき点はTL変換組み合わせ回路の入力として、6本の入力しか存在しない点である。 これはnビットの遷移表現論理信号において、任意のn-1ビットに信号変化が無い場合は、残りの1ビットが変化したことになるという自明の理による。 【0047】このことから、上述の伝送回路においても伝送路のビット数を削減した回路を作成することができる。 【0048】図7は図4に示したLT変換回路の例から上述の性質に着目し、論理ゲート402,403,404,405を削除した例である。 この回路により、伝送に必要なビット数は6ビットに低減できる。 しかし、図5に示したように、自己同期型の回路をTL変換回路に採用した場合、 削除したS14,S24の各ビットの変化を検出することができない。 そのためにクロックに同期し、伝送されてくる信号変化が起こりうるタイミングを自ら検知可能な回路をTL変換回路に用いる必要がある。 【0049】図8に上記の理由から、クロックに同期して伝送されてきた信号S11〜S23を評価するTL変換回路の例を示す。 変化検出部800a〜800fはそれぞれ同一回路にて構成されているため、1ビット分の回路のみを説明する。 まず、伝送されてきた信号801はエッジトリガタイプのフリップフロップ802にラッチされる。 同じくエッジトリガタイプのフリップフロップである803には逆相のクロックが入力されており、これにより論理ゲート 804は入力信号801の新旧状態を比較し、その結果を出力する。 レベルセンスタイプフリップフロップ805は論理ゲート804の出力をラッチし、信号変化のあったビットに関して'1'を保持する。 【0050】TL変換組み合わせ回路108については図5に示した例と同様であるため、説明を省略する。 【0051】図9はTL変換回路の動作のタイムチャートの例を示す。 以上述べたTL変換回路の動作は図9に示したタイムチャートの通りである。 まず、クロック(CK)に同期して入力信号801がフリップフロップ802 にラッチされる(806)。 続いて、その半周期後にフリップフロップ803が信号806をラッチし、そのときに論理ゲート804は信号807と信号806の同一性を比較する。 信号806と807が異なる場合には、そのビットの論理値が変化したことを意味し、論理ゲート804からは'1'が出力される(808)。 論理ゲート804の出力はレベルセンスタイプフリップフロップ805にラッチされ、出力信号809を得る。 【0052】ここまでに述べた2例の実施形態では、4 ビットのレベル表現論理信号を4ビット2組または3ビット2組みの伝送線を使って伝送している。 実施形態の説明の冒頭で述べたように、本発明の本質は複数組の遷移表現論理信号を用いて信号を伝送することにあり、それぞれの組を時間的にずらして時分割的に伝送することも可能である。 【0053】図10に示すLT変換回路の例は図7に示したLT変換回路のS11〜S13をまず最初に伝送し、その後でS21〜S23を伝送する回路である。 フリップフロップ10 00a〜1000dはLT変換組み合わせ回路105の出力を3ビットづつ時分割伝送するためのタイミングラッチである。 【0054】セレクタ1001はトグル型フリップフロップ 1002の出力値に応じてS11〜S13の組、S21〜S23の組のいずれかを選択して信号線S1〜S3に出力する。 しかし、フリップフロップ1002の入力は'1'に固定されているため、セレクタ1001はクロック毎に毎回S11〜S13の組とS2 1〜S23の組を交互に出力する動作を行う。 【0055】TL変換回路も時分割伝送されてきた遷移表現論理信号を受信する。 【0056】図11は図8に示したクロック同期型のTL 変換回路を3ビットに削減し、タイミングラッチ1100,1 101によって先に伝送されてきた3ビットの信号を後から送られてきた信号に合わせて、組み合わせ論理に入力する。 組み合わせ回路の動作方法については図8の回路と同様であるため、詳細な説明は省略する。 【0057】以上説明した4ビットの論理信号を1ビットのみが変化する遷移表現論理信号を2組または2回に分けて伝送する方法では、伝送路上で変化するビット数が一定であるという特徴しか観測されない。 しかし、n ビットのレベル表現2進論理信号を用いてランダムな数値を伝送した場合、平均的にn/2ビットが変化することから、n/2ビット未満のビット数しか変化しない遷移表現論理信号を用いることができれば、ビット変化の少ない伝送が可能となる。 この利点はnが4ビットより大きなときに観測される。 【0058】図12は8ビットのレベル表現論理信号を2 ビットのみが変化する7ビットの遷移表現論理信号2組で伝送するときの回路構成図である。 8ビットで表現可能な数値は2の8乗、すなわち256通り存在する。 また、8ビット中2ビットのみを変化させる方法は8から2を取り出す組み合わせ数として、28通り存在する。 28 通りの表現を2組用いることにより、28x28の784通りの状態を表現することが可能であり、表現しなければならない数値の256通りを網羅することが可能である。 【0059】より具体的には、LT変換組み合わせ回路、TL変換組み合わせ回路において図14および図15に示した真理値表の組み合わせ回路を用いることにより、 上述の変化は実現できる。 LT変換回路内のLT変換組合せ回路では図14、図15の真理値表のレベル表現数値が入力となり、遷移表現数値が出力となる。 また、TL変換回路内のTL変換組合せ回路では遷移表現数値が入力となり、レベル表現数値が出力となる。 なお、この例において1組の遷移表現論理信号に7ビットのみを用いているのは、図7で示したようにn-1ビットでnビットと同等な遷移表現論理信号を伝達可能であることによる。 【0060】図13に示す実施の形態では、図12と同じく8ビットのレベル表現論理信号を2組の遷移表現論理信号で伝送しているが、一つの組が1ビットのみが変化する遷移表現論理信号7ビット(意味的には8ビットだが7ビットのみ伝送)であり、もう一つの組が2ビット以下のビット数が変化する8ビットの遷移表現論理信号である。 2ビット以下のビット数が変化するとは、変化を'c'、無変化を'u'と表した場合、'cuuuuuuu'や'cucuu uuu'などの遷移表現論理信号が含まれることを意味する。 【0061】ここで、1ビットのみ変化する遷移表現では8通りの状態を表現可能であり、2ビット以下の変化では36通りの状態を表現可能である。 したがって、全体としては8x36の288通りの状態を表現可能であり、目的である2の8乗を網羅可能である。 LT変換組合せ回路、ならびにTL変換組合せ回路は図16、図17で示した真理値表で実現可能である。 この例では伝送に用いられる遷移表現論理信号が最大3ビットしか変化せず、レベル表現の8ビットでランダムな数値を伝送した際の平均変化ビット数である4ビットを下回る。 この実施の形態例からわかるように、変化するビット数を制限した遷移表現論理信号では信号伝送の際に変化するビット数が一定であるばかりでなく、ビット変化の発生頻度そのものを低減させることも可能である。 【0062】 【発明の効果】本発明によれば、変化するビット数を制限した遷移表現論理信号を用いることにより、伝送する信号の変化ビット数は一定数値以下に抑えられる。 このことにより、同時に電流が流れる論理ゲートの数を一定値以下にすることが可能となり、電源の瞬時的電圧降下等による誤動作を防止することができる。 また、上記の変化ビット数を元来伝送しようとするレベル表現論理信号(nビット)のn/2以下に設定することにより、平均的に変化するビット数を削減することが可能となり、C MOS等の論理ゲートを使用した際の消費電力を削減することができる。 【0063】8ビットの2進数を7ビット+8ビットの遷移表現論理信号で伝送する例では、信号変化するビット数を3ビット以下で伝送可能である。 ランダムな数値を8ビットの2進数として表現すると、最大8ビットの変化、平均的には4ビット変化するため、この例では変化するビット数の最大値、平均値ともに低減することが実現されている。 【図面の簡単な説明】 【図1】本発明の実施の形態を示す回路構成図。 【図2】本発明による信号伝送例。 【図3】遷移表現論理信号とレベル表現論理信号の対応例。 【図4】4ビットから8ビットへのLT変換回路例。 【図5】8ビットから4ビットへのTL変換回路例。 【図6】自己同期型TL変換回路の動作を示すタイムチャート。 【図7】4ビットから6ビットへのLT変換回路例。 【図8】6ビットから4ビットへのTL変換回路例。 【図9】クロック同期型TL変換回路の動作を示すタイムチャート。 【図10】時分割伝送するLT変換回路例。 【図11】時分割伝送するTL変換回路例。 【図12】8ビット信号を14ビット遷移表現論理信号で伝送する回路構成図。 【図13】8ビット信号を15ビット遷移表現論理信号で伝送する回路構成図。 【図14】8ビット信号を14ビット遷移表現論理信号で伝送する回路場合の組み合わせ回路用真理値表。 【図15】8ビット信号を14ビット遷移表現論理信号で伝送する回路場合の組み合わせ回路用真理値表(続)。 【図16】8ビット信号を15ビット遷移表現論理信号で伝送する回路場合の組み合わせ回路用真理値表。 【図17】8ビット信号を15ビット遷移表現論理信号で伝送する回路場合の組み合わせ回路用真理値表(続)。 |