(57)【要約】本発明は、信号レール線（１２）を有する信号レールバス（１０）と、データビット用の第１双対レール線（１４ａ）と反転データビット用の第２層方向レール線（１４ｂ）とを有する双対レールバス（１４）と、信号レールバス上の信号を双対レールバス上の信号に、または、その逆に変換するための変換装置（１６）とを備えるデータ処理回路に関するものである。データ処理回路に事前充電または事前放電を有する、または、事前充電されていない、信号レール技術と双対レール技術との双方を使用することにより、一方では安全性と、他方ではチップ面消費および電力消費との間の最適な妥協が達成される。本発明では、安全性が重要なデータをプロセスする領域が、双対レール技術によって形成されており、一方、安全性が余り重要ではないデータをプロセスする領域が、信号レール技術によって形成されており、上記領域の間に位置するインターフェースには変換装置が備えられている。
2005534212.tif 000002
【特許請求の範囲】
【請求項１】
一連のデータビット用の単一レール線（１２）を有する単一レールバス（１０）と、
一連のデータビットのための２つの双対レール線を有し、第１双対レール線（１４ａ）がデータビット用であり、第２双対レール線（１４ｂ）が反転データビット用である双対レールバス（１４）と、
単一レールバス（１０）上の信号を双対レールバス（１４）上の信号に、または、その逆に変換するための変換手段（１６）とを備える、データ処理回路。
【請求項２】
上記変換手段（１６）が、
第１双対レール線（１４ａ）上の信号を単一レールバス（１０）へ伝送するための読み込みドライバ（４２）と、
単一レールバス上の信号を第１双対レール線（１４ａ）へ伝送するための書き込みドライバ（４４）と、
第１双対レール線上の信号から第２双対レール線（１４ｂ）に信号を生成するための生成手段（５２、５４、６０）と、
読み込みドライバ（４２）または書き込みドライバ（４４）の多くともどちらかを起動させるように、読み込み制御信号（４６）および書き込み制御信号（４８）を介して、読み込みドライバ（４２）および書き込みドライバ（４４）を制御するための制御手段（４６、４８）と、
を備える請求項１に記載のデータ処理回路。
【請求項３】
上記書き込みドライバ（４４）がＡＮＤ機能を有し、
書き込みドライバ（４４）の第１入力部が単一レール線（１２）と接続されており、
書き込みドライバ（４４）の第２入力部に書き込み制御信号（４８）が供給され、
書き込みドライバ（４４）の出力部が第１双対レール線（１４ａ）と接続されている、請求項２に記載のデータ処理回路。
【請求項４】
上記読み込みドライバ（４２）がＡＮＤ機能を有し、
読み込みドライバ（４２）の第１入力部が第１双対レール線（１４ａ）と接続されており、
読み込みドライバ（４２）の第２入力部に読み込み制御信号（４６）が供給され、
読み込みドライバ（４２）の出力部が、単一レール線（１２）と接続されている、請求項２または３に記載のデータ処理回路。
【請求項５】
上記変換手段（１６）が、
低い電圧段階に関連する第１電位（ＶＳＳ）を印加するための手段（６０）と、
第２双対レール線（１４ｂ）と第１電位を印加する手段（６０）との間に接続されている第１スイッチ（５４）とをさらに備え、
第１スイッチ（５４）を、書き込み制御信号（４８）によって制御できる、請求項３または４に記載のデータ処理回路。
【請求項６】
上記変換手段（１６）が、第２双対レール線（１４）と第１電位（ＶＳＳ）を印加するための手段（６０）との間に接続された第２スイッチ（５２）をさらに備え、
第２スイッチ（５４）を、書き込みドライバ（４４）の出力信号によって制御できる、請求項５に記載のデータ処理回路。
【請求項７】
上記双対レールバス（１４）が、事前充電または事前放電を有する双対レールバスであり、第１および第２双対レール線（１４ａ，１４ｂ）の各データクロック間に初期化クロックが挿入されており、
この初期化クロック中に、第１双対レール線（１４ａ）と第２双対レール線（１４ｂ）とを同じ電圧状態にできる、請求項１〜６のいずれか１項に記載のデータ処理回路。
【請求項８】
上記２つの双対レール線（１４ａ、１４ｂ）が、初期化手段（５６）と接続されており、
この初期化手段（５６）が、初期化クロック中に２つの双対レール線を同じ電圧にするために効果的なものである、請求項７に記載のデータ処理回路。
【請求項９】
上記電圧状態が高電圧状態であり、
上記２つの双対レール線（１４ａ，１４ｂ）を、初期化クロックのときに第２電位にするために、上記初期化手段（５６）が、第１電位（ＶＳＳ）よりも高い第２電位（ＶＤＤ）を印加するための手段（５８）を備える、請求項８に記載のデータ処理回路。
【請求項１０】
上記変換手段（１６）が、
第１電位（ＶＳＳ）よりも大きな第２電位（ＶＤＤ）を印加するための手段（５８）、および、
第２電位を印加するための手段（５８）と第２双対レールバス（１４ｂ）との間に接続されており、書き込みドライバ（４４）の出力信号によって制御可能な第３スイッチ（６４）を備える、請求項３〜６のいずれか１項に記載のデータ処理回路。
【請求項１１】
初期化クロックのときに読み込みドライバ（４２）と書き込みドライバ（４４）とを停止するために、変換手段（１６）が形成されている、請求項６から９のいずれか１項に記載のデータ処理回路。
【請求項１２】
半導体基板に集積して形成される請求項１〜１１のいずれか１項に記載のデータ処理回路。
【請求項１３】
上記単一レールバスが、多重単一レールバスの一部であり、その単一レールバスの数が、多重双対レールバスにある複数の双対レールバスよりも小さい、請求項１〜１２のいずれか１項に記載のデータ処理回路。
【請求項１４】
上記双対レールバスが、演算ユニットのビット断片内部の構成要素を相互に接続するように形成されており、
上記単一レールバスが、演算ユニットのビット断片を、相互に接続、または、外部の構成要素と接続するように形成されている、請求項１〜１３のいずれか１項に記載のデータ処理回路。
【請求項１５】
上記単一レールバスが、ビット断片を初期化するためのデータ、または、ビット断片からの最終的な結果データを伝送するように形成されている、請求項１４に記載のデータ処理回路。
【請求項１６】
上記演算ユニットにあるビット断片の数が１０００を上回り、
多重単一レールバスにある単一レールバスの数が６４以下である、請求項１４または１５のいずれかに記載のデータ処理回路。
【請求項１７】
上記単一レールバスの物理的な長さが、双対レールバスの物理的な長さよりも長い、請求項１〜１６のいずれか１項に記載のデータ処理回路。
【請求項１８】
単一レールバス上のデータを暗号化または符号化するため、または、単一レールバス上で事前充電または事前放電操作を実行するための手段をさらに備える、請求項１〜１７のいずれか１項に記載のデータ処理回路。
【請求項１９】
チップカードまたは機密保護用ＩＣに形成されている、請求項１〜１８のいずれか１項に記載のデータ処理回路。
【請求項２０】
単一レール線を有する単一レールバスから、２つの双対レール線を有する双対レールバスへデータを伝送する方法において、
第１双対レール線が、一連のデータビットのために備えられており、
第２双対レール線が、一連の反転データビットのために備えられており、
単一レールバス上の信号を、双対レールバス上の信号に、または、その逆に変換する工程を含む、方法。
【発明の詳細な説明】
【発明の詳細な説明】
【０００１】
本発明は、プロセッサー構造（Prozessorarchitekturen）に関するものである。本発明は、特に、データを盗み出そうとする外部からの攻撃に対する機密保護性データ処理回路（Datenverarbeitungsschaltung）およびデータ伝送方法に関するものである。
【０００２】
暗号アルゴリズムは、一般的に、機密保護用のデータ（sicherheitsrelevante Daten）を処理することに特徴のあるものである。このような機密保護用のデータは、例えば、非対称暗号法アルゴリズム（例えば、ＲＳＡアルゴリズムなど）の個人鍵（privater Schluessel）である。個人鍵は、対応する公開鍵によって暗号化されたデータを解読するために使用される。あるいは、個人鍵は、認証を目的とするデジタル署名を、これに属する公開鍵を用いて処理（プロセス）するために使用される。
【０００３】
しかしながら、このようなプロセッサーは、個人または秘密鍵（geheimer Schluessel）を用いてデータを処理するだけではなく、通常、攻撃から保護する必要のある個人に関するデータ（個人的なデータまたは決済カードについては銀行残高）も含んでいる。当然、ｅｃカードのＰＩＮも、このような秘密データに含まれる。なお、暗号システムが市場に受け入れられるには、外部からの攻撃から秘密データを必ず保護する必要がある。
【０００４】
暗号アルゴリズムの使用が増えている特別な分野は、チップカードまたは機密保護用ＩＣである。特にチップカードでは、チップカードプロセッサーシステムのための空間が限られている。通常、利用可能なチップ面積は、予め決められている。この限られた利用可能なチップ面積を、一方では演算ユニット（Rechenwerk）および作動メモリーと不揮発性メモリーとを組み込むため、他方では暗号法プロセッサーシステムに含まれる周辺機器（Peripherieelemente；例えば、暗号コプロセッサー、ランダム数生成器、入力／出力ポートなどのような）を組み込むために、できる限り好適に利用する必要がある。
【０００５】
暗号システムに対するよく知られた攻撃としては、いわゆる電力分析攻撃（Power-Analysis-Attacken）を挙げられる。暗号法プロセッサーは、通常、ＣＭＯＳ技術によって形成されている。従って、このような回路は、特別な措置を講じなければ、電力消費が非常に不均一となる。周知のように、バス上または演算ユニット中の状態が変化しなければ、ＣＭＯＳ回路は電力をほとんど消費しない。しかしながら、演算ユニット中またはバス上の状態が変化すると、ＣＭＯＳ回路をある状態から他の状態へ切り替える間に、電力源によって供給される必要のある電流が流れる。特に、このことは、バスドライバ回路に当てはまる。従って、特に、データバスの長い場合、このバスドライバ回路は、ＣＭＯＳ回路の実際の電力消費のほかに、線容量（Leitungskapazitaeten）を充電しなおす（Umladen）ための電流も必要とする。そして、バスの長い場合、この電流がかなりの値を占める可能性がある。
【０００６】
さらに、機密保護性および性能を考慮し、暗号法プロセッサーには長数演算ユニット（Langzahlrechenwerke）を使用する。このような長数演算ユニットは、時として、例えば１０２４ビット、または、最近では２０４８ビットを上回るデータ幅を含んでいる。このような長数演算ユニットは、相当する数のビット断片を有し、ビット断片は、通常は少なくとも１つの完全な加算器機能を備えている実際の計算ユニット（arithmetischen Einheit）のほかに、例えばモジュラー操作などの暗号操作を実行するために必要な複数のレジスタ用のレジスタセルを備えている。
【０００７】
ドイツ特許公報第３６３１９９２号（DE 3631992 C1）に、ＲＳＡアルゴリズムに必要なモジュラー累乗法を実行するために、主な構成要素（zentrales Element）として、長数３オペランド加算器を備える長数演算ユニットが記載されている。モジュラー累乗法は、複数のモジュラー乗算に分割され、これらのモジュラー乗算は、同様に、複数の３オペランド加算に分割される。乗算先見アルゴリズム（Multiplikations-Vorausschau-Algorithmus）と、これに連結する約分先見アルゴリズム（Reduktions-Vorausschau-Algorithmus）とを使用することで、３オペランド操作が生じる。この３オペランド操作では、新しい中間結果を得るために、中間結果と、被乗数と、係数とが、場合によっては（moeglicherweise）シフト値および先見パラメータによって乗算されて、加算される。
【０００８】
ビット断片内部に、いわゆる断片内部バスがある。この断片内部バスは、ビット断片の内部にあるレジスタ位置と断片演算ユニットとを相互に接続している。演算ユニットのビット断片は、通常は例えばたった８ビットのデータ幅を有する演算ユニット内部バスを介して相互に接続されており、例えば外部バスを介して、暗号法データ処理システムの他の構成要素と接続されている。
【０００９】
長数演算ユニットが非常に多くのビット断片を含むことを考慮すると、ビット断片の外側に延びているこの演算ユニット内部バスは、数ミリメートルの長さを有する非常に長いデータバスであり、集積回路における非常に規則的な構造を有するものと認められる。ビット断片の１つまたは複数のスタック（Stapeln）を有する長数演算ユニット自体にも、同じことが当てはまる。
【００１０】
通常の機密保護用ＩＣでは、チップ面積自体が限られており、さらに、チップカード自体は独自の電力供給部を備えておらず周囲のＨＦ場からその電力を得る無接触用途では、電力消費が特に注目すべき役割も果たすということを考慮すると、一方では演算ユニット内部バスのために、他方ではビット断片のために、チップ面積を節約し、電力消費を低く抑えるという要求が生じる。
【００１１】
他方、機密保護用ＩＣには、例えば電力攻撃（Leistungsattacken）などの外部からの攻撃に対抗する措置を講ずる必要があるという要求がある。これら電力攻撃の最も知られているものとしては、簡単な電力攻撃（ＳＰＡ）または差動電力攻撃（ＤＰＡ）をあげられる。このような措置がなければ、攻撃者は、例えば演算ユニットバスまたは断片内部バスを電力分析することによって、各切り替え事象（Umschaltvorgang）を追跡でき、処理された全てのデータを記録できるようにするには、元の状態または中間データ状態を査定すればよいだけであり、実行されたアルゴリズムおよび他の些細な条件を知ることで、秘密データ（例えば、秘密鍵、ＰＩＮ、預金額など）を査定できる。
【００１２】
機密保護のための最適な方法は、各データバスを−ビット線に関しては−唯一のデータ線としてではなく、２つのデータ線として形成することである。このいわゆる双対レール技術（Dual-Rail-Technik）は、ある時点で、２つのデータ（beiden Daten）上を相補的状態が伝送されるということに基づくものである。特定の時点で、第１双対レール線が、論理値「１」を示す電圧状態であるならば、第２双対レール線は、相補的状態（すなわち、この例では、論理値「０」に相当する電圧状態）になっている。従って、ある状態から他の状態へ切り替わる度に、２つの線が切り替わり、その結果、切り替えがどちらの方向へ実行されたのか、電力分析では分からなくなる。これにより、機密保護性を高められる。なぜなら、２つの切り替え方向が常に同時に発生しているからである。
【００１３】
しかし、機密保護性については高められるものの、電力分析によって、連続する周期で切り替えられたかどうかを認識できる。つまり、例えば５つの連続する論理値「１」状態が存在している場合は、電力特性に電力消費は現れない。その結果、依然として、攻撃者は、これら５つの周期では双対レールバス上のデータが変更されていないという情報を得られる。
【００１４】
この機密漏洩も排除するために、いわゆる「事前充電（mit Precharge）双対レール技術」を使用する。いわゆる事前充電クロックを、各データクロックの間に供給する。この事前充電クロックの供給時に、第１双対レール線と第２双対レール線との双方を、論理的に高い状態にする。その結果、常に（つまり、データクロックから事前充電クロックへ進めるときに、または、事前充電クロックからデータクロックへ進めるときに）、および、１つのクロックから次のクロックへデータが変化するかどうかとは無関係に、電流特性によって認識できる切り替えは１つだけになる。
【００１５】
事前充電双対レール技術を用いれば、機密保護性を最も高められる。しかし、そのためには最大の経費がかかる。各ビット線を２重に形成する必要があるので、この双対レール技術は、伝送バス用のチップ面積を２倍消費する。さらに、各データクロックの後に事前充電クロックが導入されるので、この技術により、処理速度が２分の１になる。なぜなら、事前充電クロックでは、ペイロードデータ（Nutzdaten）を処理できないからである。
【００１６】
さらに、２つのデータ線を充電しなおす必要があり、そのために、単一レールでは１つであった線ドライバの代りに、２つの線ドライバが存在している。このため、電力消費も２倍になっている。従って、最大の機密保護性は、高コスト、つまり、チップ面を２倍消費し、ペイロードデータ産出高（Nutzdatendurchsatz）を２分の１にし、電力を２倍消費することによって得られるものである。
【００１７】
従って、事前充電双対レール技術は、電力攻撃に対して優れた機密保護性を提供するにもかかわらず、通常は、機密保護用ＩＣに使用されない。
【００１８】
従って、通常、代替の解決策を使用する。代替の解決策としては、例えば、電力特性をごまかすためのダミー計算や、処理されるデータに関係なく同じ数の周期を必要とするソフトウエア技術的なアルゴリズムなどをあげられる。これら全ての措置は、より複雑な攻撃アルゴリズムに対して最大の機密保護性を発揮せず、既存のルーチンを変更（Eingriffe）する必要があるという点で共通している。この変更により、複雑な試験などを、ルーチンに対して再度実施しなければならなくなる。その結果、一方ではコストが上昇し、他方では新しい製品を市場で売り出せるまでの期間が長くなる。特定の機密保護条件に加えて、これら２つの課題は、暗号法プロセッサーチップが非常に競争の激しい市場に受け入れられるか否かについて重要なものである。
【００１９】
本発明の目的は、データ処理を低コストで行える、機密保護機能のための構想を提供することである。
【００２０】
この目的は、請求項１に記載のデータ処理回路および請求項２０に記載のデータ伝送方法によって達成される。
【００２１】
本発明は、機密保護性のために、機密保護用ＩＣの特定の部分を、事前充電および事前放電される、または、事前充電および事前放電されない双対レール技術によって形成する。一方、この種の機密保護性に関するデータを処理しない他の領域は、依然として単一レール技術によって形成される。本発明では、単一レールバス上の信号を双対レールバス上の信号に、または、その逆に変更するための変換手段が、単一レールバスと双対レールバスとの間のインターフェースに配置されている。
【００２２】
本発明に基づいて、単一レールバスと双対レールバスとをこれらの間にある変換手段によって組み合わせることにより、機密保護用ＩＣに２種類のバスを使用できる。これにより、機密保護性と経済性との間の最適な妥協点（Kompromiss）を得られる。
【００２３】
本発明の好ましい実施形態では、事前充電／事前放電のなされる、または、事前充電／事前放電されない双対レール技術によって、断片内部バスを形成する。一方、その長さ、従って、その所要面積がかなりなものである演算ユニット内部バスは、断片の外部へ延びており、断片を相互接続しており、依然として、単一レール技術により形成されている。従って、各ビット断片には、さらに、独自の変換手段が対応している。あるいは、通常は狭いバンド幅（例えば、たった８ビット）を有している演算ユニットバスを、演算ユニット断片（例えば２０４８個を上回っている可能性がある）と接続するために、変換手段が、多重化器の入力部に備えられていてもよい。この場合、多重化器全体を、双対レール技術によって形成する。変換手段がビット断片の入力部に直接配置されている他の実施形態では、多重化器を、単一レール技術のみによって実施する必要がある。なぜなら、多重化器の出力部で初めて変換が行われるからである。
【００２４】
本発明の構想では、機密保護性について考察する限り、最適な事前充電双対レール技術を、厳しいチップ面条件および厳しい電力消費条件を満たす必要のある機密保護用ＩＣにも使用できる点が有利である。従って、本発明では、１つまたは任意の場所で機密保護用ＩＣ内での双対レールから単一レールへまたはその逆への変換を利用することによって、事前充電双対レール技術の機密保護性についての利点（Sicherheitsvorteile）を、単一レール解決策の面積および電力に関する利点と組み合わせている。常に変化するデータが双対レール側にあり、一方、単一レール側を、例えば変化しないデータ（例えば、初期化値、最終結果など）の読み込みおよび書き込みといったより稀なプロセスのために使用すれば、この解決策には、システムの機密保護性に関する欠点がほとんど無い。このことは、好ましくは、断片内部バスを、双対レールバスとして形成することにより得られる。一方、本発明のデータ処理回路にある他の全てのバスは、面積および電流を節約するために、機密保護性を大幅に低減する必要はなく、単一レール技術によって形成できる。なぜなら、機密保護性に関する限り、非常に重要な（hochrelevanten）断片内部バスを、事前充電したより機密保護性のある双対レール技術によって形成するからである。
【００２５】
本発明の好ましい実施形態を、添付の図を参考にしながら以下に詳しく説明する。
【００２６】
図１は、本発明のデータ処理回路の原理ブロック図である。図２は、本発明の好ましい実施形態を、単一レールの演算ユニット内部バスと、双対レールのビット断片内部バスとを有する長数演算ユニットの例で示す図である。図３は、双対レール技術のビット断片の詳細な図である。図４は、事前充電される双対レール用の好ましい実施形態に基づく切り替え手段を示す図である。図５は、事前充電されない双対レール技術の他の実施形態に基づく変換手段を示す図である。
【００２７】
図１に、単一レールバス１０を有する本発明のデータ処理回路を示す。この場合、単一レールバスは一連のデータビット（eine Folge von Datenbits）のための単一レール線１２（図１では、ビット線とも呼ばれる）を備えている。
【００２８】
本発明のデータ処理回路は、さらに、双対レールバスを備え、この双対レールバスは、一連のデータビットのための２つの双対レール線１４ａ、１４ｂを有している。この場合、第１双対レール線１４ａは、一連のデータビットのために準備されており、第２双対レール線１４ｂは、一連の反転データビットのために準備されている。
【００２９】
本発明のデータ処理回路は、さらに、単一レールバス１２上の信号を双対レールバス１４上の信号に、またはその逆に変換するための変換手段１６を備えている。
【００３０】
図２に、本発明の好ましい実施形態に基づくデータ処理回路を示す。このデータ処理回路は、単一レールバス１２として演算ユニットバスを含んでいる。簡易化のために、図２では、演算ユニットバス１２を単一線として示す。しかし、演算ユニットバス１２は、実際は、並列バスであり、ｋ本のデータ線を含む。なお、ｋは、例えば８または１６に等しい。
【００３１】
演算ユニットバス１２は、多重化器１８を介して、変換手段１６と接続されている。同じく、変換機１６は、長数演算ユニット２０の各ビット断片１， ...，ｎのための双対レールバスと接続されている。長数演算ユニットは、数ｎのビット断片を含み、数ｎは、２０４８を上回り、例えば２１００または２３００にもなるビット断片を含む。本発明では、断片内部バスが、双対レールバスとして形成されている。一方、個々の断片を相互に、または、個々の断片を機密保護用ＩＣ以外の構成要素に接続している演算ユニットバスは、単一レール技術によって形成されている。図２に示す本発明の実施形態では、多重化器１８が単一レール技術で形成されているように、独自の単一レール／双対レール変換手段１６が、各ビット断片に割り当てられている。しかしながら、代替の実施形態では、図２に示す実施形態では８ビットの幅を有している多重化器の入力部に、各ビット線用の変換手段を備えていてもよい。従って、その場合は、多重化器が、双対レール技術によって形成されている必要がある。この解決策は、より好ましいものである。なぜなら、必要な変換手段をかなり少なくできるから、つまり、図２に示す実施形態では２１００個である変換手段を、たったの８個にできるからである。
【００３２】
図３は、ビット断片ｉの概略図を示す、各ビット断片は、図３では部材番号２２で示す計算ユニットＡＵｉと、２４ａ，２４ｂ，２４ｃで示す１つまたは複数のレジスタ位置Ｒ１ｉ，Ｒ２ｉ，Ｒ３ｉとを備えている。各レジスタビットは、相互接続されており、かつ、双対レールバスを介して、ビット断片にある計算ユニット２２と接続されている。双対レールバスは、第１双対レール線１４ａと、反転ビットＢＩＴ−Ｉ用の第２双対レール線１４ｂとを備えている。双対レール技術で各ビット断片ｉを形成（Ausfuehrung）することにより、確実に、レジスタ２４ａ，２４ｂ，２４ｃと計算ユニット２２との間で通信されるデータを電力分析で攻撃できなくなる。このデータは、通常、機密性の高いデータであり、本発明では、堅固に保護されている。
【００３３】
しかしながら、演算ユニットバス１２へ伝送されるデータは、通常、このような機密性の高いデータではない。従って、単一レール技術で演算ユニットバス１２を形成しても、機密保護性が特に大きく低減されることはなく、チップ面、電力消費、および、処理時間を大幅に節約できる。
【００３４】
図４を参考にしながら、事前充電双対レール技術に適した変換手段１６の好ましい実施形態について以下に説明する。一方、図５を参考にしながら、事前充電していない双対レール技術のために備えられている変換手段１６について説明する。
【００３５】
図４の変換手段１６は、その入力部が、単一レールバスのビット線１２と接続されている。また、変換手段１６は、出力部側で、データビット用の第１双方向レール線１４ａと、反転データビット用の第２層方向レール線（１４ｂ）とに接続されている。
【００３６】
単一レール線１２は、第１ノード４０と接続されている。この第１ノード４０は、一方では読み込みドライバ４２の出力部と接続されており、他方では書き込みドライバ４４の入力部と接続されている。読み込みドライバ４２へ、入力信号４６としての読み込み制御信号が供給される。同様に、書き込みドライバ４４へは、書き込みドライバ制御信号４８が供給される。書き込みドライバ回路４２の他の入力部は、第１双対レール線１４ａと接続されている。
【００３７】
第１双対レール線１４ａは、さらにノード５０を介して、書き込みドライバ４４の出力部と接続されており、第１スイッチ５２に対する制御信号を表している。図４から分かるとおり、書き込み制御信号４８によって制御するために、さらに第２スイッチ５４が備えられている。
【００３８】
図４に示す変換手段は、さらに、２つのスイッチ５６ａ・５６ｂと事前充電クロック入力部ＰＣＨ５６ｃとを有する、事前充電手段５６を備えている。２つのスイッチは、事前充電制御信号５６ｃによって制御され、本発明の好ましい実施形態では、論理的に高い状態、つまり、論理値「１」の状態に相当する電位ＶＤＤ５８を、第１双対レール線１４ａと第２双対レール線１４ｂとの双方に印加するために効果的なものである。
【００３９】
第１スイッチ５２と第２スイッチ５４との双方が通電している場合は、第２低電位ＶＳＳ６０が、第２双対レール線１４ｂに印加されている。しかしながら、スイッチ５２、５４のどちらかが通電していない場合は、電位ＶＳＳ６０と第２双対レール線１４ｂとの間に、導電性接続が存在しない。第２低電位ＶＳＳは、接地電位でもよく、図示した実施形態では、論理的に低い状態または論理値「０」状態に相当する。
【００４０】
図５では、図４と同じ構成要素に、同じ部材番号が付いている。図５は、事前充電手段５６を備えていない。なぜなら、図５は、事前充電されない双対レール技術のためのものだからである。追加される構成要素として、図５の構成は、第３スイッチ６４を備えている。この第３スイッチ６４は、図５の記号から分かるとおり、説明される（auftretenden）他の切り替え手段とは対照的に、ＰＭＯＳトランジスタとして形成されており、一方、スイッチ５２・５４は、ＮＭＯＳトランジスタとして形成されている。ＮＭＯＳトランジスタは、制御信号が高電圧状態である場合に通電し、制御信号が低状態である場合に遮断する。これに対し、ＰＭＯＳトランジスタは、制御信号が低状態である場合に通電する。しかしながら、ＰＭＯＳトランジスタは、制御信号が高電圧状態を有している場合に遮断する。
【００４１】
以下では、本発明の変換手段の機能性を、図４を参考にしながら説明する。ビット断片から演算ユニットバスへの読み込み時には、読み込み制御信号４６が起動している。その結果、第１双対レール線１４ａ上の信号は、それが「１」であろうと「０」であろうと、単一レール線１２を流れる。読み込みドライバ回路４２は、書き込みドライバ回路４４と同様に、例えばＡＮＤゲートとして形成されていてもよい。なお、このＡＮＤゲートは、２つの入力信号が「１」の状態を有している場合だけ、出力信号を生成するものである。図４に示す回路は、ビット断片から演算ユニットバスへ読み込む場合、つまり、図４の右から左へデータが伝送される場合は、第２双対レール線１４ｂ上の信号が無視されるように作用する。
【００４２】
読み込み時は、書き込み制御信号が０に等しく、これは、図４の第２スイッチ５４が開いている、つまり、遮断していることを意味している。従って、第２双対レール線１４ｂは、接地電位６０と接続していない。このことにより、スイッチ５６ａ，５６ｂの双方が閉鎖されて２つの双対レール線を論理的に高い状態にする後続の事前充電クロックのときに、接地電位６０との短絡回路を生成することなく、電圧を確実に印加できる。
【００４３】
事前充電クロックでは、読み込み制御信号４６が０に等しい。その結果、第２双対レール線１４ａの事前充電状態が、単一レール線１２へ伝送されることを回避できる。
【００４４】
従って、図４に示す回路は、読み込み時に、つまり事前充電される双対レールから単一レールへの伝送時には、事前充電クロックではなくデータクロックのときだけ、第１双対レール線１４ａ上の状態が、単一レール線１２へ通電されるということ、事前充電クロックのときに、第１双対レール線から単一レール線へのデータ伝送が生じないということ、および、第２双対レール線１４ｂが、接地電位６０（ＶＳＳ）から分離されているということが確実になる。その結果、第２双対レール線および第１双対レール線を、事前充電クロックのときに高い状態に充電できる。
【００４５】
次に、単一レール信号から双対レール信号への変換、すなわち、図４の左側から右側へのデータ伝送（「書き込み」とも呼ばれる）について説明する。
【００４６】
書き込み時には、図４に示す表から分かるとおり、制御出力入力部にある「０」によって、読み込みドライバ４２が停止されている。これに対し、書き込みドライバ４４は、その制御入力部にある「１」によって起動されている。その結果、ビット線上に存在する信号が、第１双対レール線１４ａと直接接続される。書き込みドライバ４４の出力部に論理的に高い状態、つまり「１」が存在するならば、スイッチ５２が閉じる。書き込み制御信号が「１」に等しいので、スイッチ５４も閉じる。その結果、接地電位ＶＳＳ６０が、第２双対レール線１４ｂと接続される。その結果、反転状態、すなわち「０」が第２双対レール線上に生じる。
【００４７】
これに対し、０が書き込みドライバ４４の入力部にある場合は、この０は、第１双対レール線１４ａ上にも存在する。しかしながら、０があるので、第１スイッチ５２は開いており、従って、接地電気６０は、第２双対レール線１４ｂには接続されておらず、第２双対レール線１４ｂから分離されている。従って、先行する事前充電されたクロックのときに第２双対レール線１４ｂ上に存在する「１」状態が残留し、その結果、第１双対レール線に対して相補的な値が、同じく第２双対レール線１４ｂ上に存在することとなる。
【００４８】
従って、図４の本発明の変換手段により、以下のことを確実に実現できる。すなわち、「単一レールから双対レールへ変換する場合は、一方では第１双対レール線１４ａが単一レール状態となり、事前充電クロックのときには、入力部から出力部へ何も伝送されず、単一レール「１」状態では、第２双対レール線が接地電位と短絡し、単一レール「０」状態では、先行の事前充電クロックにより、第２双対レール線の高状態が維持される」ことを確実に実現できる。
【００４９】
次に、図５の変換手段の機能性を説明する。図５は、単一レールから、事前充電されない双対レールへ変換する手段を示す。このため、図５の構成には、事前充電手段５６が備えられていない。その代わり、第３スイッチ６４を使用する。書き込み制御信号４８が高い場合、つまり、第２スイッチ５４が閉じており、第１スイッチ５２が開いている（「０」が書き込みドライバ４４の出力部にある）場合は、この第３スイッチ６４を使用して、高電位ＶＤＤ５８を、第２双対レール線に印加できる。このことは、第３スイッチ６４が、ＰＭＯＳトランジスタとして形成されていることにより実現できる。その結果、「０」が書き込みドライバ４４の出力部に存在するときには、電位ＶＤＤが、第２双対レール線１４ｂと接続される。
【００５０】
図５に示す実施形態で、次の操作周期のときに「１」を単一レールバスへ供給するならば、「１」は、同じく、簡単に、第１双対レール線１４ａへ通電される。しかしながら、第３スイッチ６４は開いており、第１および第２スイッチ５２，５４は閉じている。その結果、第２双対レール線１４ｂを低い電位状態にするために、第２双対レール線にある先行する周期の高い状態が、接地電位６０（ＶＳＳ）を介して放電される。図４に示す実施形態では、事前充電される双対レールについて説明したが、事前放電される双対レールに変えること正は、当業者にとって容易である。図４の電位ＶＤＤ５８の代わりに、電位ＶＳＳを使用してもよい。電位ＶＳＳ６０の代わりに、電位ＶＤＤを使用してもよい。この場合は、単一レール線１２上に「１」のある場合に先行する周期の論理的に低い状態が保持されるように、スイッチ５２・５４を補正する必要がある。
【００５１】
読み込みドライバ４２および書き込みドライバ４４のための代替設計も、当然、当業者には明確である。このような設計は、「読み込みおよび書き込みの機能を確保でき、事前充電クロック中に２つのドライバを遮断でき、その結果、回路の一方の端部から他方の端部へのデータ伝送を回避できる」ものである。
【００５２】
事前充電双対レール技術を使用した図４に示す実施形態では、動作周期が両側で同じ場合は、事前充電クロックにより、双対レール出力部のデータ率が、単一レール入力部の２分の１になる。機密保護性の改善を行うため、このデータ率の違いを、単一レールバス上でもデータ率を２分の１にするために使用してもよい。このことは、単一レールバス上のデータを暗号化または符号化することによって行える。この場合、変換手段は、入力部側に、２つの連続ビットを格納するためのメモリーと、解読または解号された単一レールバスビットを獲得するための解読手段または解号手段とを備える。解読または解号された単一レールバスビットは、解読された双対レールビットへ変換される。従って、単一レールバス上でも機密保護性の標準（Sicherheitsstandards）を高めるため、ペイロードデータ率を２分の１にするデータ符号化またはデータ暗号化を使用してもよい。この場合は、単一レールバスおよび双対レールバスは同じく同期するものの、機密保護性を高めるための措置は異なっている。
【図面の簡単な説明】
【００５３】
【図１】本発明のデータ処理回路の原理ブロック図である。
【図２】本発明の好ましい実施形態を、単一レールの演算ユニット内部バスと、双対レールのビット断片内部バスとを有する長数演算ユニットの例で示す図である。
【図３】双対レール技術のビット断片の詳細な図である。
【図４】事前充電される双対レール用の好ましい実施形態に基づく切り替え手段を示す図である。
【図５】事前充電されない双対レール技術の他の実施形態に基づく変換手段を示す図である。
【符号の説明】
【００５４】
１０    単一レールバス
１２    単一レール線
１４    双対レールバス
１４ａ    第１双対レール線
１４ｂ    第２双対レール線
１６    変換手段
１８    多重化器
２０    長数演算ユニット
２２    ビット断片の計算ユニット
２４ａ    ビット断片の第１レジスタ
２４ｂ    ビット断片の第２レジスタ
２４ｃ    ビット断片の第３レジスタ
４０    入力部ノード
４２    読み込みドライバ
４４    書き込みドライバ
４６    読み込み制御信号
４８    書き込み制御信号
５０    出力部ノード
５２    第１スイッチ
５４    第２スイッチ
５６    初期化手段
５６ａ    初期化スイッチ
５６ｂ    初期化スイッチ
５６ｃ    事前充電クロック
５８    高電位ＶＤＤを印加するための手段
６０    低電位ＶＳＳを印加するための手段
６４    第３スイッチ
【図１】
2005534212.tif 000003
【図２】
2005534212.tif 000004
【図３】
2005534212.tif 000005
【図４】
2005534212.tif 000006
【図５】
2005534212.tif 000007
【手続補正書】
【提出日】平成16年5月13日(2004.5.13)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
一連のデータビット用の単一レール線（１２）を有する単一レールバス（１０）と、
一連のデータビットのための２つの双対レール線を有し、第１双対レール線（１４ａ）がデータビット用であり、第２双対レール線（１４ｂ）が反転データビット用である双対レールバス（１４）と、
単一レールバス（１０）上の信号を双対レールバス（１４）上の信号に、または、その逆に変換するための変換手段（１６）とを備えるデータ処理回路において、
上記変換手段（１６）が、
第１双対レール線（１４ａ）上の信号を単一レールバス（１０）へ伝送し、読み込みドライバが起動している場合は、第２双対レール線（１４ｂ）上の信号を無視するための読み込みドライバ（４２）と、
書き込みドライバが起動している場合は、単一レールバス上の信号を第１双対レール線（１４ａ）へ伝送するための書き込みドライバ（４４）と、
書き込みドライバが起動している場合は、第１双対レール線上の信号から第２双対レール線（１４ｂ）上に信号を生成するための生成手段（５２、５４、６０）と、
読み込みドライバ（４２）または書き込みドライバ（４４）の多くともどちらかが起動しているように、読み込み制御信号（４６）および書き込み制御信号（４８）を介して、読み込みドライバ（４２）および書き込みドライバ（４４）を制御するための制御手段（４６、４８）とを備える、データ処理回路。
【請求項２】
上記制御手段（４６，４８）が、初期化クロックのときに読み込みドライバ（４２）と書き込みドライバ（４４）との双方を遮断するように設計されており、その結果、初期化クロックの時には、双対レールバスから単一レールバスへのデータ伝送が行われない、請求項１に記載のデータ処理回路。
【請求項３】
上記書き込みドライバ（４４）がＡＮＤ機能を有し、
書き込みドライバ（４４）の第１入力部が単一レール線（１２）と接続されており、
書き込みドライバ（４４）の第２入力部に書き込み制御信号（４８）が供給され、
書き込みドライバ（４４）の出力部が第１双対レール線（１４ａ）と接続されている、請求項１に記載のデータ処理回路。
【請求項４】
上記読み込みドライバ（４２）がＡＮＤ機能を有し、
読み込みドライバ（４２）の第１入力部が第１双対レール線（１４ａ）と接続されており、
読み込みドライバ（４２）の第２入力部に読み込み制御信号（４６）が供給され、
読み込みドライバ（４２）の出力部が、単一レール線（１２）と接続されている、請求項１または３に記載のデータ処理回路。
【請求項５】
上記変換手段（１６）が、
低い電圧段階に関連する第１電位（ＶＳＳ）を印加するための手段（６０）と、
第２双対レール線（１４ｂ）と第１電位を印加する手段（６０）との間に接続されている第１スイッチ（５４）とをさらに備え、
第１スイッチ（５４）を、書き込み制御信号（４８）によって制御できる、請求項３または４に記載のデータ処理回路。
【請求項６】
上記変換手段（１６）が、第２双対レール線（１４）と第１電位（ＶＳＳ）を印加するための手段（６０）との間に接続された第２スイッチ（５２）をさらに備え、
第２スイッチ（５４）を、書き込みドライバ（４４）の出力信号によって制御できる、請求項５に記載のデータ処理回路。
【請求項７】
上記双対レールバス（１４）が、事前充電または事前放電を有する双対レールバスであり、第１および第２双対レール線（１４ａ，１４ｂ）の各データクロック間に初期化クロックが挿入されており、
この初期化クロック中に、第１双対レール線（１４ａ）と第２双対レール線（１４ｂ）とを同じ電圧状態にできる、請求項１〜６のいずれか１項に記載のデータ処理回路。
【請求項８】
上記２つの双対レール線（１４ａ、１４ｂ）が、初期化手段（５６）と接続されており、
この初期化手段（５６）が、初期化クロック中に２つの双対レール線を同じ電圧にするために効果的なものである、請求項７に記載のデータ処理回路。
【請求項９】
上記電圧状態が高電圧状態であり、
上記２つの双対レール線（１４ａ，１４ｂ）を、初期化クロックのときに第２電位にするために、上記初期化手段（５６）が、第１電位（ＶＳＳ）よりも高い第２電位（ＶＤＤ）を印加するための手段（５８）を備える、請求項８に記載のデータ処理回路。
【請求項１０】
上記変換手段（１６）が、
第１電位（ＶＳＳ）よりも大きな第２電位（ＶＤＤ）を印加するための手段（５８）、および、
第２電位を印加するための手段（５８）と第２双対レールバス（１４ｂ）との間に接続されており、書き込みドライバ（４４）の出力信号によって制御可能な第３スイッチ（６４）を備える、請求項３〜６のいずれか１項に記載のデータ処理回路。
【請求項１１】
半導体基板に集積して形成される請求項１〜１０のいずれか１項に記載のデータ処理回路。
【請求項１２】
上記単一レールバスが、多重単一レールバスの一部であり、その単一レールバスの数が、多重双対レールバスにある複数の双対レールバスよりも小さい、請求項１〜１１のいずれか１項に記載のデータ処理回路。
【請求項１３】
上記双対レールバスが、演算ユニットのビット断片内部の構成要素を相互に接続するように形成されており、
上記単一レールバスが、演算ユニットのビット断片を、相互に接続、または、外部の構成要素と接続するように形成されている、請求項１〜１２のいずれか１項に記載のデータ処理回路。
【請求項１４】
上記単一レールバスが、ビット断片を初期化するためのデータ、または、ビット断片からの最終的な結果データを伝送するように形成されている、請求項１３に記載のデータ処理回路。
【請求項１５】
上記演算ユニットにあるビット断片の数が１０００を上回り、
多重単一レールバスにある単一レールバスの数が６４以下である、請求項１３または１４のいずれかに記載のデータ処理回路。
【請求項１６】
上記単一レールバスの物理的な長さが、双対レールバスの物理的な長さよりも長い、請求項１〜１５のいずれか１項に記載のデータ処理回路。
【請求項１７】
単一レールバス上のデータを暗号化または符号化するため、または、単一レールバス上で事前充電または事前放電操作を実行するための手段をさらに備える、請求項１〜１６のいずれか１項に記載のデータ処理回路。
【請求項１８】
チップカードまたは機密保護用ＩＣに形成されている、請求項１〜１７のいずれか１項に記載のデータ処理回路。
【請求項１９】
単一レール線を有する単一レールバスから、２つの双対レール線を有する双対レールバスへデータを伝送する方法において、
第１双対レール線が、一連のデータビットのために備えられており、
第２双対レール線が、一連の反転データビットのために備えられており、
単一レールバス上の信号を、双対レールバス上の信号に、または、その逆に変換する工程を含み、
この変換工程が、
読み込みドライバ（４２）を起動する工程と、第１双対レール線（１４ａ）上の信号を単一レールバス（１０）へ伝送し、読み込みドライバが起動している場合は、第２層対レール線（１４ｂ）上の信号を無視するための工程と、
書き込みドライバ（４４）を起動する工程と、書き込みドライバが起動している場合は、単一レールバス上の信号を第１双対レール線（１４ｂ）へ伝送し、書き込みドライバが起動している場合は、第１双対レール線上の信号から第２双対レール線（１４ｂ）上に信号を生成する（５２、５４、６０）工程とを含み、
読み込みドライバ（４２）または書き込みドライバ（４４）の多くともどちらかを起動させるように、読み込みドライバを起動する工程および書き込みドライバを起動する工程を実行する方法。
【国際調査報告】
2005534212.tif 000008
2005534212.tif 000009
2005534212.tif 000010
2005534212.tif 000011
2005534212.tif 000012
2005534212.tif 000013
2005534212.tif 000014
2005534212.tif 000015
2005534212.tif 000016
2005534212.tif 000017
2005534212.tif 000018