複数のフリップフロップを有するユーザー回路と、テストモード時に、前記複数のフリップフロップを接続してスキャンチェーンを構成する接続経路とを有し、前記接続経路は、前記複数のフリップフロップのうちいずれかの前記フリップフロップの非反転出力値を論理演算して出力する論理演算回路、または、前記複数のフリップフロップのうちいずれかの前記フリップフロップの反転出力値を後段のフリップフロップに出力する反転値接続経路を有する半導体装置。請求項1において、前記論理演算回路は、論理否定回路である半導体装置。請求項1において、前記接続経路は、前記論理演算回路、または、前記反転値出力経路のいずれかまたは両方を分散して複数有する半導体装置。請求項1において、前記論理演算回路は、前記フリップフロップの非反転出力値と所定値とを入力とし、AND演算回路、OR演算回路、XOR演算回路、NAND演算回路、NOR演算回路、XNOR演算回路のいずれかである半導体装置。第1のクロックに同期して動作する複数のフリップフロップを有するユーザー回路と、テストモード時に、前記複数のフリップフロップを接続して前記第1のクロックに同期してシフト動作するスキャンチェーンを構成する接続経路と、所定値と前記第1のクロックとを論理演算し第2のクロックを出力するクロック生成回路とを有し、前記複数のフリップフロップのうちいずれかの前記フリップフロップは、テストモード時には前記第2のクロックに同期して動作し、ユーザモード時には前記第1のクロックに同期して動作する半導体装置。請求項5において、さらに、前記接続経路は、前記複数のフリップフロップのうちいずれかの前記フリップフロップの非反転出力値を論理演算して出力する論理演算回路、または、前記複数のフリップフロップのうちいずれかの前記フリップフロップの反転出力値を後段のフリップフロップに出力する反転値接続経路を有する半導体装置。ところが、図1のようなLSIは、スキャンチェーンを構成することによりスキャンテストを可能にする反面、スキャンFFsf1~sffに保持される値の出力及び外部からの入力を可能にする。例えば、組み合わせ回路c1~c8が課金情報やパスワード等の内部情報を扱うような場合、スキャンFFsf1~sffに内部情報が保持されることがある。そして、スキャンFFsf1~sffに保持された値が第3者に不正に入出力されることによって、内部情報の漏洩や改竄を招くことがある。しかしながら、LSIがスキャンチェーンを有していない場合、ユーザーは、組み合わせ回路c1~c8の検証を適切に行うことが困難である。スキャンテストが可能なLSIについて、データの漏洩及び改竄を防止するために、様々な技術が開示されている特許文献1、2。本発明は、スキャンテストを可能にしながら内部データの漏洩及び改竄を防止する半導体装置を提供する。第1の側面は、複数のフリップフロップを有するユーザー回路と、テストモード時に、前記複数のフリップフロップを接続してスキャンチェーンを構成する接続経路とを有し、前記接続経路は、前記複数のフリップフロップのうちいずれかの前記フリップフロップの非反転出力値を論理演算して出力する論理演算回路、または、前記複数のフリップフロップのうちいずれかの前記フリップフロップの反転出力値を後段のフリップフロップに出力する反転値接続経路を有する。第1の側面によれば、スキャンテストを可能にしながら内部データの漏洩及び改竄を防止する。以下、図面にしたがって本発明の実施の形態について説明する。ただし、本発明の技術的範囲はこれらの実施の形態に限定されず、特許請求の範囲に記載された事項とその均等物まで及ぶものである。図2は、図1のスキャンFFsf1~sffを具体的に説明する図である。同図では、4つのスキャンFFsf1~sf4が例示されており、各スキャンFFsf1~sf4は、マルチプレクサm1~m4とフリップフロップ以下、FFf1~f4とをそれぞれ有する。図示されていないが、FFf1~f4及び組み合わせ回路c1~c3には、クロック信号が供給される。FFf1~f4は、クロック信号の立ち上がり時に、保持していた値をQ端子から出力すると共に、マルチプレクサm1~m4から出力された値をD端子から取得する。また、図2において、スキャンイネーブル信号SEは、マルチプレクサm1~m4への選択信号であり、後続のFFf1~f4への出力を切り替える。具体的に、マルチプレクサm1~m4は、スキャンイネーブル信号がHigh以下、Hレベルのときはスキャンイン信号SIを、Low以下、Lレベルのときは組み合わせ回路c1~c3からの出力を選択し、後続のFFf1~f4に出力する。続いて、ユーザモードとスキャンモード時の動作の相違について説明する。図2において、ユーザモードの場合、スキャンイネーブル信号SEはLレベルに設定される。このため、マルチプレクサm1は入力端子UIからの入力値を、マルチプレクサm2~m4は前段の組み合わせ回路c1~c3からの出力値を選択して、後続のFFf1~f4に出力する。これにより、FFf1~f4に、入力端子UIからの入力値及び組み合わせ回路c1~c3からの出力値が供給されると共に、各FFf1~f4に保持されていた値が、後続の組み合わせ回路c1~c3及び出力端子UOに出力される。一方、図2においてスキャンモードの場合、スキャンイネーブル信号SEはHレベルに設定される。これにより、マルチプレクサm1はスキャンイン端子SIからの入力値を、マルチプレクサm2~m4は前段のFFf1~f3からの出力値を選択して、後続のFFf1~f4に出力する。つまり、スキャンモードに設定された場合、各FFf1~f4がシリアルに接続されスキャンチェーンを構成し、シフトレジスタ動作が行われる。これにより、スキャンイン端子SIから入力されたテスト用のデータパターンがFFf1~f4に入力されると共に、FFf1~f4に保持された値がスキャンアウト端子SOに出力される。以下、波形図に基づいて、具体的に説明する。図3は、図2のスキャンFFsf1~sf4の波形図1A、1Bを表す図である。同図の波形図1Aはスキャンイン端子SIからテスト用のデータパターンが入力される場合の波形図であり、波形図1BはFFf1~f4が保持する値がスキャンアウト端子SOに出力される場合の波形図である。スキャンイン端子SIからのデータパターンの入力と、FFf1~f4が保持する値のスキャンアウト端子SOへの出力は同時に行われるが、別々の波形図に基づいて説明する。なお、この例において、スキャンチェーンは4つのスキャンFFsf1~sf4を有し、入力するデータパターンは1010であるものとする。まず、図3の波形図1Aについて説明する。同図の波形図1Aは、スキャンイン端子SIからテスト用のデータパターン1010を入力する例を表す。この例において、初め、スキャンイネーブル信号SEはLレベルに設定され、各FFf1~f4には、例えば、前回のクロックの立ち上がり時における組み合わせ回路c1~c3の出力値が保持されている11x。この状態で、スキャンイネーブル信号SEがHレベルに変更されると、クロックの立ち上がり毎に、シフトレジスタ動作が行われる。具体的に、スキャンイネーブル信号がHレベルに変更後1クロック目t0、FFf1にデータパターンの初めの値1が入力されると共に、FFf2~f4に保持された値が後続のFFf3~f4、スキャンアウト端子SOに出力される。同様にして、スキャンイネーブル信号SEがHレベルに設定されたまま、次のクロックの立ち上がり時、データパターン1010の2番目の値0がFFf1に入力されると共に、初めの値1はFFf2にシフトされる。この例では、スキャンイネーブル信号SEをHレベルに変更後、4回目のクロックの立ち上がり時t4に、データパターン1010のFFf1~f4への入力が完了する11y。このように、スキャンイン端子SIからデータパターンを入力する場合、スキャンイネーブル信号SEがHレベルに設定されると、クロックの立ち上がり毎に、データパターンがシフトレジスタ動作によってスキャンFFsf1~sf4に順次入力される。例えば、入力が完了した状態11yで、スキャンイネーブル信号がLレベルに変更されると、次のクロックの立ち上がり時に、FFf1~f4に保持された値が組み合わせ回路c1~c3に入力され、データパターンに基づく組み合わせ回路の処理が行われる。次に、図3の波形図1Bについて説明する。同図の波形図1Bは、FFf1~f4に保持された組み合わせ回路の処理結果を示す値が、スキャンアウト端子SOに出力される場合を表す。初め、スキャンイネーブル信号SEはLレベルに設定され、各FFf1~f4には、前回のクロックの立ち上がり時に保持された組み合わせ回路からの出力値が保持されている12x。この状態で、スキャンイネーブル信号SEがHレベルに変更されると、次のクロックの立ち上がり時t3に、各FFf1~f3に保持された値が後続のFFf2~f4に出力され、FFf4に保持されていた値はスキャンアウト端子SOに出力される。この例では、スキャンイネーブル信号SEをHレベルに変更してから4回目のクロックの立ち上がり時に、FFf1~f4に保持された値が全てスキャンアウト端子SOに出力される。このように、FFf1~f4に保持された値をスキャンアウト端子SOに出力する場合、スキャンイネーブル信号SEがHレベルに設定され、クロックの立ち上がり毎に、各FFの値がシフトレジスタ動作によってスキャンアウト端子SOに順次出力される。ユーザーは、FFf1~f4に保持された組み合わせ回路の処理結果を示す値をスキャンアウト端子SOに出力させて、任意のデータパターンに基づいて組み合わせ回路の処理が適切に行われたか否かを検証する。以上のように、スキャンチェーンを有するLSIは、スキャンイン端子SIから任意のデータパターンをスキャンFFに入力可能にすると共に、スキャンFFに保持された値をスキャンアウト端子SOに出力可能にする。しかしながら、その反面、スキャンFFにパスワードや課金情報等の内部情報が保持されている場合、内部情報の漏洩及び改竄を招く。[第1の実施の形態例]そこで、第1の実施の形態例におけるLSIは、複数のFFとを有するユーザー回路と、テストモード以下、スキャンモード時に複数のFFを接続してスキャンチェーンを構成する接続経路とを有する。そして、接続経路は、複数のFFのうちいずれかのFFの非反転出力値を論理演算して出力する論理演算回路を有する。なお、複数のFFのうち、他のFFについては、非反転出力値が論理演算されることなく後段のFFに出力される。これにより、LSIは、スキャンモード時に、FFに入力されるデータパターンを変更させることができると共に、FFに保持された値を変更して出力させることができる。図4は、FFf2の出力値Q非反転出力値を論理反転演算する論理反転演算回路I1論理演算回路を有するスキャンチェーンの一例と、その波形図2A、2Bとを表す図である。波形図2Aはスキャンイン端子SIからテスト用のデータパターンが入力される場合の波形図であり、波形図2BはFFf1~f4が保持する値がスキャンアウト端子SOに出力される場合の波形図である。同図において、論理反転回路I1はスキャンチェーンの接続経路に設けられているため、スキャンモードの場合にのみ適用され、ユーザモードの処理には影響しない。以下、波形図に基づいて具体的に説明する。図3の波形図と同様に、スキャンチェーンは4つのスキャンFFsf1~sf4を有し、入力されるデータパターンは1010である。まず、図4の波形図2Aについて説明する。図3の波形図1Aと同様に、初め、スキャンイネーブル信号SEはLレベルに設定され、各FFf1~f4には、例えば、前回のクロックの立ち上がり時に保持された組み合わせ回路からの出力値が保持されている21x。この状態で、スキャンイネーブル信号がHレベルに変更されると、クロックの立ち上がり毎に、図3と同様に、シフトレジスタ動作によって、スキャンイン端子SIからデータパターン1010がFFf1~f4に入力される。ただし、この例では、スキャンイネーブル信号SEがHレベルに変更された後3クロック目t1、FFf3にはデータパターンの初めの入力値1の論理反転値0が入力される。続く4クロック目t2、FFf3にはデータパターンの2番目の値0の論理反転値1が、FFf4には、FFf3から出力された論理反転回路I1で反転済みのデータパターンの初めの値0が入力される。この結果、データパターンが全て入力された時、FFf3、f4には論理反転された値が保持される21y。この例では、スキャンチェーンの途中FFf2とFFf3の間に論理反転回路I1が設けられているため、データパターンの一部の値のみが論理反転される。このように、スキャンチェーンの接続経路に論理反転回路I1が設けられていることにより、FFf1~f4に入力される値は、データパターン1010から変更0110される。しかし、スキャンテストを行うユーザーは、FFf2とFFf3の間に論理反転回路I1が設けられていることを予め認識しているため、論理反転回路I1による一部の値の変更を予め想定したデータパターンを用意し、スキャンテストを行うことができる。その一方、第3者は、スキャンチェーンの接続経路に論理反転回路I1が設けられていることを認識していないため、任意のデータパターンをスキャンFFへ入力することができない。また、スキャンチェーンのどの位置に論理演算回路が設置されるかによっても、データパターンの変更内容は異なる。仮に、第3者が、スキャンチェーンの接続経路に論理反転回路I1が設けられていることを認識している場合でも、論理反転回路I1がスキャンチェーンのいずれの位置にいくつ設置されているかを認識することは困難である。このため、本実施の形態例におけるLSIは、第3者による、任意のデータパターンのスキャンFFへの入力を困難にし、スキャンチェーンを悪用した内部情報の改竄等を抑止することができる。次に、図4のFFf1~f4に保持された値がスキャンアウト端子SOに出力される波形図2Bについて説明する。図3の波形図1Bと同様に、初め、スキャンイネーブル信号SEはLレベルに設定され、各FFf1~f4には、前回のクロックの立ち上がり時に保持された組み合わせ回路からの出力値が保持されている22x。この状態で、スキャンイネーブル信号SEがHレベルに変更されると、クロックの立ち上がり毎に、図3と同様に、シフトレジスタ動作によって、FFf1~f4に保持された値がスキャンアウト端子SOに出力される。ただし、この例では、スキャンイネーブル信号SEがHレベルに変更された後1クロック目t3、FFf3には、FFf2に保持された値0の論理反転値1が入力される。続く2クロック目t4では、初めFFf1に保持されていたFFf2からの出力値1が0に論理反転されFF3に入力され、前クロックで論理反転済みのFFf3からの出力値1がFFf4に入力される。この結果、初め、FFf1~f4に保持されていた値22xのうち、FFf1、f2に保持されていた値が論理反転され、スキャンアウト端子SOに出力される。また、スキャンチェーンの途中FFf2とFFf3の間に論理反転回路I1が設けられていることにより、一部のFFf1、f2に保持されていた値のみが論理反転されスキャンアウト端子SOに出力される。しかし、スキャンテストを行うユーザーは、スキャンチェーンを構成するFFf2とFFf3の間に論理反転回路I1が設けられていることを予め認識しているため、スキャンアウト端子SOに出力されたデータパターンを論理反転回路I1による変更前の値に復元することができる。そして、ユーザーは、復元後のデータパターンに基づいて、組み合わせ回路の処理が適切に行われたか否かを検証することができる。その一方、第3者は、スキャンチェーンの接続経路に論理反転回路I1が設けられていることを認識しておらず、FFに保持された通りの値を取得することができない。また、スキャンチェーンのどの位置に論理演算回路が設置されるかによっても、データパターンの変更内容は異なる。仮に、第3者が、スキャンチェーンの接続経路に論理反転回路I1が設けられていることを認識している場合でも、論理反転回路I1がスキャンチェーンのいずれの位置にいくつ設置されたかを認識することは困難である。このため、第3者が、論理反転回路によって変更されたデータパターンに基づいて、FFに保持された元の値を復元することは困難である。従って、本実施の形態例におけるLSIは、第3者による、FFに保持された内部情報の取得を困難にし、スキャンチェーンを悪用した内部情報の漏洩等を抑止することができる。以上のようにして、本実施の形態例におけるLSIは、接続経路が、FFの出力値非反転出力値を論理演算論理反転演算して出力する論理演算回路を有することによって、スキャンチェーンを利用した第3者によるLSIの内部情報の漏洩及び改竄を抑止することができる。一方、ユーザーは、接続経路における論理演算回路の設置状態を認識していることにより、当該論理演算回路による値の変更を想定したデータパターンを生成すると共に、スキャンアウト端子SOに出力されたデータパターンを当該論理演算回路による変更前の値に復元することができる。これにより、本実施の形態例におけるLSIは、スキャンテストを可能にしながら、スキャンチェーンの悪用による内部情報の改竄及び漏洩を抑止することができる。[第2の実施の形態例]第2の実施の形態例におけるLSIは、複数のFFとを有するユーザー回路と、テストモード以下、スキャンモード時に複数のFFを接続してスキャンチェーンを構成する接続経路とを有する。そして、接続経路は、複数のFFのうちいずれかのFFの反転出力値を後段のFFに出力する反転値接続経路を有する。なお、複数のFFのうち、他のFFについては、非反転出力値が後段のFFに出力される。これにより、LSIは、スキャンモード時に、FFに入力されるデータパターンを変更させることができると共に、FFに保持された値を変更して出力させることができる。図5は、FFf2の論理反転値QX反転出力値を後段のFFf3に出力する接続経路反転値接続経路を有するスキャンチェーンの一例と、その波形図3A、3Bとを表す図である。波形図3Aはスキャンイン端子SIからテスト用のデータパターンが入力される場合の波形図であり、波形図3BはFFf1~f4が保持する値がスキャンアウト端子SOに出力される場合の波形図である。同図において、FFf2の論理反転値QXを後段のFFf3に出力する接続経路はスキャンチェーンの接続経路に設けられるため、スキャンモードの場合にのみ適用され、ユーザモードの処理には影響しない。以下、波形図に基づいて具体的に説明する。図3の波形図と同様に、スキャンチェーンは4つのスキャンFFsf1~sf4を有し、入力されるデータパターンは1010である。まず、図5の波形図3Aについて説明する。図3の波形図1Aと同様に、初め、スキャンイネーブル信号SEはLレベルに設定され、各FFf1~f4には、例えば、前回のクロックの立ち上がり時に保持された組み合わせ回路からの出力値が保持されている31x。この状態で、スキャンイネーブル信号がHレベルに変更されると、クロックの立ち上がり毎に、図3と同様に、シフトレジスタ動作によって、スキャンイン端子SIからデータパターン1010がFFf1~f4に入力される。ただし、この例では、スキャンイネーブル信号SEがHレベルに変更された後3クロック目t1、FFf3には、FFf2に保持された値1の論理反転値QX0が入力される。続く4クロック目t2、FFf3にはデータパターンの2番目の値0の論理反転値QX1が、FFf4には、FFf3から出力されたFFf2で論理反転済みのデータパターンの初めの値0が入力される。この結果、図3の波形図2Aと同様にして、データパターンが全て入力された時、FFf3、f4には論理反転された値が保持される31y。この例においても、論理反転値QXを出力するFFf2がスキャンチェーンの途中に設置されていることにより、入力されたデータパターンの一部のみが論理反転される。このように、FFf2が論理反転値QXを出力することにより、FFf1~f4に入力される値は、データパターン1010から変更0110される。しかし、スキャンテストを行うユーザーは、スキャンチェーンにおいてFFf2の論理反転値QXがFFf3に出力されることを予め認識しているため、FFf2の論理反転値出力による値の変更を予め想定したデータパターンを用意し、スキャンテストを行うことができる。その一方、第3者は、スキャンチェーンに論理反転値QXを後段のFFに出力する反転値接続経路が設けられていることを認識しておらず、任意のデータパターンをスキャンFFへ入力することができない。また、スキャンチェーンのどの位置に反転値接続経路が設置されるかによっても、データパターンの変更内容は異なる。仮に、第3者が、スキャンチェーンに反転値接続経路が設けられていることを認識している場合でも、当該反転出力経路がスキャンチェーンのいずれの位置にいくつ設置されているかを認識することは困難である。従って、本実施の形態例におけるLSIは、第3者による、任意のデータパターンのスキャンFFへの入力を困難にし、スキャンチェーンを悪用した内部情報の改竄等を抑止することができる。次に、図5の波形図2Bについて説明する。図3の波形図1Bと同様に、初め、スキャンイネーブル信号SEはLレベルに設定され、各FFf1~f4には、前回のクロックの立ち上がり時における組み合わせ回路の出力値が保持される32x。この状態で、スキャンイネーブル信号SEがHレベルに変更されると、クロックの立ち上がり毎に、図3と同様に、シフトレジスタ動作によって、FFf1~f4に保持された値がスキャンアウト端子SOに出力される。ただし、この例では、スキャンイネーブル信号SEがHレベルに変更された後1クロック目t3、FFf3には、FFf2に保持された値0の論理反転値QX1が入力される。続く2クロック目t4では、初めFFf1に保持されていた値1の論理反転値QX0がFF3に入力され、前クロックで論理反転済みのFFf3からの出力値1がFFf4に入力される。この結果、初め、FFf1~f4に保持されていた値32xのうち、FFf1、f2に保持されていた値が論理反転され、スキャンアウト端子SOに出力される。この例でも、論理反転値QXを出力するFFf2がスキャンチェーンの途中に設置されていることにより、一部のFFf1、f2に保持されていた値のみが論理反転されスキャンアウト端子SOに出力される。しかし、スキャンテストを行うユーザーは、スキャンチェーンにおいてFFf2の論理反転値QXがFFf3に出力されることを予め認識しているため、スキャンアウト端子SOに出力されたデータパターンをFFf2の論理反転値出力による変更前の値に復元することができる。そして、ユーザーは、復元後のデータパターンに基づいて、組み合わせ回路の処理が適切に行われたか否かを検証することができる。その一方、第3者は、スキャンチェーンに論理反転値QXを後段のFFに出力する反転値接続経路が設けられていることを認識しておらず、FFに保持された通りの値を取得することができない。また、スキャンチェーンのどの位置に反転値接続経路が設置されるかによっても、データパターンの変更内容は異なる。仮に、第3者が、スキャンチェーンに反転値接続経路が設けられていることを認識している場合でも、当該反転出力経路がスキャンチェーンのいずれの位置にいくつ設置されているかを認識することは困難である。このため、第3者が、反転出力経路によって変更されたデータパターンに基づいて、FFに保持された元の値を復元することは困難である。従って、本実施の形態例におけるLSIは、第3者による、FFに保持された内部情報の取得を困難にし、スキャンチェーンを悪用した内部情報の漏洩等を抑止することができる。以上のようにして、本実施の形態例におけるLSIは、接続経路がFFの論理反転値QX反転出力値を後段のFFに出力する反転値接続経路を有することによって、スキャンチェーンを利用した第3者によるLSIの内部情報の漏洩及び改竄を抑止することができる。一方、ユーザーは、スキャンチェーンに設けられた反転値接続経路の数及び設置位置を認識していることにより、当該反転値接続経路による値の変更を想定したデータパターンを生成すると共に、スキャンアウト端子SOに出力されたデータパターンを当該反転値接続経路による変更前の値に復元することができる。これにより、本実施の形態例におけるLSIは、スキャンテストを可能にしながら、スキャンチェーンの悪用による内部情報の改竄及び漏洩を抑止することができる。また、本実施の形態例におけるLSIは、第1の実施の形態例のように、接続経路に別途、論理演算回路図4の論理演算回路I1を設ける必要がない。これにより、本実施の形態例におけるLSIは、LSIのレイアウトパターンに基づいた、第3者によるスキャンチェーンの接続経路の解析をより困難にする。従って、本実施の形態例におけるLSIは、第3者による内部情報の改竄及び漏洩をより効果的に抑止することができる。なお、第1、2の実施の形態例において、接続経路が論理反転回路I1、または、反転値接続経路をひとつ有するLSIを例示した。しかし、スキャンチェーンは、論理反転回路、反転値接続経路のいずれかまたは両方を複数、組み合わせて有してもよい。図6は、論理反転回路及び反転値接続経路を複数有するスキャンチェーンの一例である。同図において、スキャンチェーンSC1は、3つの論理反転回路I2~I4を有し、スキャンチェーンSC2は、論理反転値QXを出力する3つのスキャンFFsf11~sff13を有する。そして、スキャンチェーンSC3は、2つの論理反転回路I5、I6と、論理反転値QXを出力するスキャンFFsf14とを組み合わせて有する。例えば、第3者は、任意のデータパターンをスキャンチェーンに入出力させ、前後のデータパターンの変移を分析することによって、スキャンチェーンに設けられた論理反転回路及び反転値接続経路の設置状態の解析スキャンチェーンの接続経路の解析を行う。しかし、膨大なFFを有するスキャンチェーンに論理反転回路及び反転値接続経路が、分散して複数、設置されることにより、データパターンの変移内容がより複雑化し、スキャンチェーンの解析がより困難になる。従って、本実施の形態例におけるLSIは、スキャンチェーンの接続経路に、論理反転回路及び反転値接続経路を分散して複数配置することにより、接続経路の解析をより困難にし、内部情報の改竄及び漏洩の抑止効果を向上させることができる。[第3の実施の形態例]第3の実施の形態例におけるLSIは、複数のFFとを有するユーザー回路と、テストモード以下、スキャンモード時に複数のFFを接続してスキャンチェーンを構成する接続経路とを有する。そして、接続経路は、複数のFFのうちいずれかのFFの非反転出力値と所定値とを入力とし、AND演算回路、OR演算回路、XOR演算回路、NAND演算回路、NOR演算回路、XNOR演算回路のいずれかの論理演算を行う論理演算回路を有する。なお、複数のFFのうち、他のFFについては、非反転出力値が論理演算されることなく後段のFFに出力される。これにより、LSIは、スキャンモード時、FFに入力されるデータパターンを変更させることができると共に、FFに保持された値を変更して出力させることができる。また、LSIは、第3者によるスキャンチェーンの解析を困難にし、内部情報の漏洩及び改竄をより効果的に抑止することができる。具体的に、本実施の形態例では、スキャンチェーンの接続経路が、FFf2からの出力値非反転出力値と擬似乱数値所定値との排他的論理和以下、XOR演算を行う論理演算回路を有する場合を例示する。ただし、論理演算回路の行う演算はXOR演算に限定されるものではなく、AND演算、OR演算、NAND演算、NOR演算、XNOR演算等のいずれかであってもよい。また、所定値についても擬似乱数値に限定されるものではなく、固定値や所定のパターンに基づく値であってもよい。図7は、FFf2の出力値非反転出力値と擬似乱数値所定値とのXOR演算を行う論理演算回路X1を有するスキャンチェーンの一例と、その波形図4A、4Bとを表す図である。このため、同図の論理演算回路X1は、擬似乱数値とFFf2の出力値とが同一である場合は0を、異なる場合は1を、FFf3に出力する。擬似乱数値は、擬似乱数生成回路LFによって生成され、論理演算回路X1に出力される。また、論理演算回路X1はスキャンチェーンの接続経路に設けられているため、スキャンモードの場合にのみ適用され、ユーザモードの処理には影響しない。図8は、擬似乱数生成回路LFの一例を表す図である。同図の擬似乱数生成回路LFは、複数のレジスタfx0~fxfと、論理演算回路X11~X13とを有する線形帰還シフトレジスタである。レジスタfx0~fxfの取りうる状態は有限個であるため、周期的なパターンで乱数値0または1が出力される。これにより、ユーザーは、擬似乱数生成回路LFから出力される値の出力パターンを予め認識することができる。しかし、第3者が、擬似乱数生成回路LFから出力される乱数値のパターンを特定するには工数を要し、困難である。なお、擬似乱数生成回路LFは、同図の例に限定されるものではない。例えば、ユーザーは、出力される擬似乱数値のパターンの特定をより困難にするために、LSIに複数の擬似乱数生成回路LFを備え、適用する擬似乱数生成回路LFを定期的に切り替えてもよい。図7に戻り、波形図4Aはスキャンイン端子SIからテスト用のデータパターンが入力される場合の波形図であり、波形図4BはFFf1~f4が保持する値がスキャンアウト端子SOに出力される場合の波形図である。図3の波形図と同様に、スキャンチェーンは4つのスキャンFFsf1~sf4を有し、入力されるデータパターンは1010である。以下、波形図に基づいて具体的に説明する。まず、波形図4Aについて説明する。図3の波形図1Aと同様に、初め、スキャンイネーブル信号SEはLレベルに設定され、各FFf1~f4には、例えば、前回のクロックの立ち上がり時に保持された組み合わせ回路からの出力値が保持されている41x。この状態で、スキャンイネーブル信号がHレベルに変更されると、クロックの立ち上がり毎に、図3と同様に、シフトレジスタ動作によって、スキャンイン端子SIからデータパターン1010がFFf1~f4に入力される。ただし、この例では、スキャンイネーブル信号がHレベルに変更された後3クロック目t1、FFf3には、論理演算回路X1による、FFf2から出力されたデータパターンの初めの値1と擬似乱数値0とのXOR演算結果値1が出力される。続く4クロック目t2では、FFf4には、前クロックでラッチした論理演算回路X1の結果値1がFFf3か出力されると共に、FFf3には、論理演算回路X1による、FFf2から出力されたデータパターンの2番目の値0と擬似乱数値1とのXOR演算結果値1が出力される。この結果、データパターンが全て入力された時、FFf3、f4にはデータパターンの初め2つの値と擬似乱数値との演算結果値が保持される41y。この例でも、論理演算回路X1がスキャンチェーンの途中に設置されていることにより、入力されたデータパターンの一部のみが論理演算結果値に変更される。このように、スキャンチェーンの接続経路に論理演算回路X1が設けられていることにより、FFf1~f4にセットされた値は、データパターン1010から変更1110される。しかし、スキャンテストを行うユーザーは、FFf2とFFf3の間に論理演算回路X1が設けられていること、及び、その演算内容、擬似乱数値のパターンを予め認識していることから、論理演算回路X1による値の変更を予め想定したデータパターンを用意し、スキャンテストを行うことができる。その一方、第3者は、仮にスキャンチェーンの接続経路に論理演算回路X1が設けられていることを認識している場合であっても、論理演算回路X1の演算内容及び設置位置、擬似乱数値のパターンを特定し、論理演算回路X1による値の変更を予め想定したデータパターンを生成することは困難である。従って、本実施の形態例におけるLSIは、スキャンチェーンを構成するFFへの第3者による任意のデータパターンの入力をより困難にし、スキャンチェーンを悪用した内部情報の改竄等をより効果的に抑止することができる。次に、図7のFFf1~f4に保持された値がスキャンアウト端子SOに出力される波形図4Bについて説明する。図3の波形図1Bと同様に、初め、スキャンイネーブル信号SEはLレベルに設定され、各FFf1~f4には、前回のクロックの立ち上がり時に保持された組み合わせ回路からの出力値が保持されている42x。この状態で、スキャンイネーブル信号SEがHレベルに変更されると、クロックの立ち上がり毎に、図3と同様に、シフトレジスタ動作によって、FFf1~f4に保持された値がスキャンアウト端子SOに出力される。ただし、この例では、スキャンイネーブル信号がHレベルに変更された後1クロック目t3、FFf3には、論理演算回路X1による、FFf2からの出力値0と擬似乱数値0とのXOR演算結果値0が出力される。続く2クロック目t4では、FFf4には、前クロックでラッチした論理演算回路X1の結果値0がFFf3から出力されると共に、FFf3には、論理演算回路X1による、FFf2からの出力値1と擬似乱数値1との演算結果値0が出力される。この結果、初め、FFf1~f4に保持されていた値42xのうち、FFf1、f2に保持されていた値が演算結果値に変更されてスキャンアウト端子SOに出力される。この例でも、論理演算回路X1がスキャンチェーンの途中に設置されていることにより、一部のFFf1、f2に保持された値のみが演算結果値に変更されスキャンアウト端子SOに出力される。しかし、スキャンテストを行うユーザーは、FFf2とFFf3の間に論理演算回路X1が設けられていること、及び、その演算内容、擬似乱数値のパターンを予め認識していることから、スキャンアウト端子SOに出力されたデータパターンから、論理演算回路X1による変更前の各FFの値を復元することができる。そして、ユーザーは、復元後のデータパターンに基づいて、組み合わせ回路の処理が適切に行われたか否かを検証することができる。その一方、第3者は、仮にスキャンチェーンの接続経路に論理演算回路X1が設けられていることを認識している場合であっても、論理演算回路X1の演算内容及び設置位置、擬似乱数値のパターンを特定し、論理演算回路X1による変更前の各FFの値を復元することは困難である。従って、本実施の形態例におけるLSIは、スキャンチェーンを構成するFFに保持された内部情報の第3者による取得を困難にし、スキャンチェーンを悪用した内部情報の漏洩等をより効果的に抑止することができる。以上のようにして、本実施の形態例におけるLSIは、接続経路が、FFの出力値非反転出力値と所定値擬似乱数値とを論理演算して出力する論理演算回路を有することによって、スキャンチェーンを利用した第3者によるLSIの内部情報の漏洩及び改竄の抑止効果を向上させることができる。一方、ユーザーは、接続経路における論理演算回路の設置状態を認識していることにより、当該論理演算回路による値の変更を想定したデータパターンを生成すると共に、スキャンアウト端子SOに出力されたデータパターンを当該論理演算回路による変更前の値に復元することができる。これにより、本実施の形態例におけるLSIは、スキャンテストを可能にしながら、スキャンチェーンの悪用による内部情報の改竄及び漏洩をより効果的に抑止することができる。[第4の実施の形態例]第4の実施の形態例におけるLSIは、第1のクロックに同期して動作する複数のFFを有するユーザー回路と、テストモード時に、複数のFFを接続して第1のクロックに同期してシフト動作するスキャンチェーンを構成する接続経路と、所定値と第1のクロックとを論理演算し第2のクロックを出力するクロック生成回路とを有する。そして、複数のFFのうちいずれかのFFは、テストモード以下、スキャンモード時には第2のクロックに同期して動作し、ユーザモード時には第1のクロックに同期して動作する。なお、複数のFFのうち、他のFFについては、スキャンモード時についても、第1のクロックに同期して動作する。これにより、LSIは、スキャンモード時、FFに入力されるデータパターンの一部を省略または変更させることができると共に、FFに保持された値を一部省略または変更して出力させることができる。また、LSIは、第3者によるスキャンチェーンの解析を困難にし、内部情報の漏洩及び改竄をより効果的に抑止することができる。具体的に、本実施の形態例では、クロック生成回路が、第1のクロックと擬似乱数値所定値とをXOR演算論理演算した第2のクロックを出力する場合を例示する。ただし、論理演算は、XOR演算に限定されるものではなく、AND演算、OR演算、NAND演算、NOR演算、XNOR演算等のいずれかであってもよい。また、所定値についても擬似乱数値に限定されるものではなく、固定値や所定のパターンに基づく値であってもよい。図9は、クロック信号CK1第1のクロックとタイミングの異なるクロック信号CK2第2のクロックに同期して動作するFFf3を有するスキャンチェーンの一例である。同図において、他のFFf1、f2、f4は第1のクロック信号CK1に同期して動作する。また、同図のスキャンチェーンは、擬似乱数生成回路LFから出力された擬似乱数値と、クロック信号CK1とをXOR演算しクロック信号CK2を出力する論理演算回路X2クロック生成回路を有する。論理演算回路X2はスキャンチェーンの接続経路に設けられているため、FFf3は、ユーザモード時にはクロック信号CK1に同期して動作する。以下、波形図に基づいて具体的に説明する。図10は、図9のスキャンチェーンの波形図5A、5Bを表す図である。波形図5Aはスキャンイン端子SIからテスト用のデータパターンが入力される場合の波形図であり、波形図5BはFFf1~f4が保持する値がスキャンアウト端子SOに出力される場合の波形図である。図3の波形図と同様に、スキャンチェーンは4つのスキャンFFsf1~sf4を有し、入力されるデータパターンは1010である。まず、クロック信号CK2について説明する。この例において、論理演算回路X2は、クロック信号CK1と擬似乱数値とが異なる場合、Hレベルのクロック信号CK2をFFf3に出力する。例えば、図10のタイミングt5において、論理演算回路X2は、Lレベルのクロック信号CK1と擬似乱数値1とに基づいて、Hレベルのクロック信号CK2を出力する。続いて、タイミングt6では、クロック信号CK1がHレベルに遷移することにより、論理演算回路X2は、擬似乱数値0とのXOR演算に基づいてHレベルのクロック信号CK2を継続して出力する。そして、タイミングt7では、クロック信号CK1がLレベルに遷移することにより、擬似乱数値0とのXOR演算に基づいて、クロック信号CK2はLレベルに遷移する。このように、FFf3に供給されるクロック信号CK2は、クロック信号CK1と異なるタイミングで遷移する。図10の波形図5Aにおいて、具体的に、スキャンイネーブル信号がHレベルに変更された後、3回目のクロック信号の立ち上がり時t8、FFf2は、データパターンの初めの値1をFFf3に出力する。ただし、タイミングt8において、クロック信号CK2はLレベルであるため、FFf3はFFf2から出力された値1を取得しない。そして、タイミングt9でクロック信号CK2がHレベルに遷移すると、FFf3はFFf2からの出力値を取得する。しかし、FFf2からの出力値は、既にデータパターンの2番目の値0に遷移している。このため、FFf3は2番目の値0を取得することになり、データパターンの初めの値s1はスキップされることになる。そして、タイミングt10において、FFf4はデータパターンの初めの値ではなく2番目の値を取得することになる。このように、FFf3はクロック信号CK2に、他のFFf1、f2、f4はクロック信号CK1に同期して処理を行うため、データパターンの一部の値が省かれることにより変更されFFに入力されることがある。この例では、データパターンの初めの値s1が省かれ、FFf1~f4にセットされた値は、データパターン1010から変更0010される51y。しかし、スキャンテストを行うユーザーは、各FFが同期するクロック信号CK1、CK2を認識しているため、データパターンの値の変更を認識することができる。このため、ユーザーは、値の変更を予め想定してデータパターンを用意し、スキャンテストを行うことができる。その一方、第3者は、仮にスキャンチェーンを構成する一部のFFが、その他のFFと異なるクロック信号に同期して処理を行うことを認識している場合であっても、当該クロック信号を生成する演算回路の内容、及び、擬似乱数値のパターンを特定し、値の変更を予め想定したデータパターンを生成することは困難である。従って、本実施の形態例におけるLSIは、スキャンチェーンを構成するFFへの第3者による任意のデータパターンの入力をより困難にし、スキャンチェーンを悪用した内部情報の改竄等をより効果的に抑止することができる。次に、図9のFFf1~f4に保持された値をスキャンアウト端子SOに出力する波形図5Bについて説明する。具体的に、スキャンイネーブル信号がHレベルに変更された後1回目のクロック信号の立ち上がり時t11、FFf2は保持していた値0をFFf3に出力する。ただし、タイミングt8において、クロック信号CK2はLレベルであるため、FFf3はFFf2から出力された値1を取得しない。そして、タイミングt12でクロック信号CK2がHレベルに遷移すると、FFf3はFFf2からの出力値を取得する。しかし、FFf2からの出力値は、既に、FFf1に保持されていた値1に遷移している。このため、FFf3は、FFf1に保持されていた値1を取得することになり、FFf2に保持されていた値0s2はスキップされる。このように、FFf3が異なるクロック信号CK2と同期することにより、一部のFFに保持されていた値が出力されないことがある。しかし、スキャンテストを行うユーザーは、各FFが同期するクロック信号CK1、CK2を認識しているため、一部のFFに保持されていた値の省略による出力値の変更を認識することができる。このため、ユーザーは、いずれのFFの値が省略されたかを認識した上で、有効な値に基づいて組み合わせ回路の検証を行うことができる。その一方、第3者は、仮にスキャンチェーンを構成する一部のFFが、その他のFFと異なるクロック信号に同期して処理を行うことを認識している場合であっても、当該クロック信号を生成する演算回路の内容、及び、擬似乱数値のパターンを特定し、いずれのFFに保持された値が省略されるかを特定することは困難である。従って、本実施の形態例におけるLSIは、スキャンチェーンを構成するFFに保持された内部情報の第3者による取得をより困難にし、スキャンチェーンを悪用した内部情報の漏洩等をより効果的に抑止することができる。以上のようにして、本実施の形態例におけるLSIは、スキャンモード時に他のFFと異なるクロック信号に同期して動作するFFを有することによって、スキャンチェーンを利用した第3者によるLSIの内部情報の漏洩及び改竄をより困難にし、抑止効果を向上させることができる。一方、ユーザーは、当該FFによる値の変更を予め想定したデータパターンを生成すると共に、スキャンアウト端子SOに出力されたデータパターンのうち省略された値を認識することができる。これにより、本実施の形態例におけるLSIは、スキャンテストを可能にしながら、スキャンチェーンの悪用による内部情報を改竄及び漏洩の抑止効果をさらに向上させることができる。なお、図9のスキャンチェーンに、さらに、ひとつまたは複数の論理演算回路が組み合わせて設けられていてもよい。これにより、本実施の形態例におけるLSIは、第3者によるスキャンチェーンの解析をより困難にすることができる。図11は、さらに、論理反転回路I10が設けられた図9のスキャンチェーンの一例を表す図である。同図において、異なるクロック信号CK2に同期するFFf3の出力値が論理反転を行う論理演算回路I10によってさらに論理反転されFFf4に出力される。図12は、図11のスキャンチェーンの波形図を表す図である。同図の波形図6Aように、FFf4は、クロックCK1の立ち上がり時t21に、FFf3に保持された値0の論理反転値1をラッチする。また、同図の波形図6Bにおいても同様に、FFf4は、クロックCK1の立ち上がり時、FFf3に保持された値の論理反転値をラッチする。これにより、第3者がスキャンチェーンの解析を目的として任意のデータパターンをFFに入出力して検証を行う場合、出力されるデータパターンがより複雑に変化する。この結果、スキャンチェーンの解析がより困難になり、内部情報を改竄及び漏洩の抑止効果が向上する。[第5の実施の形態例]第5の実施の形態例におけるLSIは、複数のFFとを有するユーザー回路と、テストモード以下、スキャンモード時に複数のFFを接続してスキャンチェーンを構成する接続経路とを有する。そして、接続経路は、製品出荷前は第1の値と複数のFFのうちいずれかのFFの非反転出力値との論理演算値が当該非反転出力値に、製品出荷後は第2の値と非反転出力値との論理演算値が一定値になる論理演算を行う論理演算回路を有する。この所定値は、製品出荷前は第1の値に、製品出荷後は前記第1の値とは異なる第2の値に設定される。なお、複数のFFのうち、他のFFについては、非反転出力値が論理演算されることなく後段のFFに出力される。これにより、LSIは、製品出荷前のスキャンモード時は、データパターンのFFへの入力、及び、FFに保持された値の出力を可能にし、製品出荷後のスキャンモード時には、所定値との論理演算によって、データパターンのFFへの入力値、及び、FFに保持された値をリセットすることができる。これにより、LSIは、第3者のスキャンチェーンの悪用による内部情報の漏洩及び改竄を回避する。具体的に、本実施の形態例では、接続経路が、製品出荷前はHレベルの信号第1の値と前段のFFからの出力値との論理積以下、AND演算の結果、当該出力値を、製品出荷後はLレベルの信号第2の値と出力値とのAND演算の結果、値0一定値を出力する論理演算回路を有する場合を例示する。図13は、製品出荷後のスキャンモード時、データパターンの入力のFFへの入力値、及び、FFに保持された値をリセットする論理演算回路X3を有するスキャンチェーンの一例を表す図である。論理演算回路X3は、プルダウン回路PDから出力されたテスト信号TEとFFf2の出力値との論理積以下、AND演算を行う。この例において、プルダウン回路PDは、製品出荷前はHレベルの信号を、製品出荷後はLレベルの信号を出力する。従って、論理演算回路X3は、製品出荷前は、FFf2からの出力値とHレベルのテスト信号TEとのAND演算に基づいて常にFFf2から出力値を、製品出荷後には、FFf2からの出力値とLレベルのテスト信号TEとのAND演算に基づいて常に値0をFFf3に出力する。以下、波形図に基づいて具体的に説明する。図14は、図13のスキャンチェーンの波形図7A、7Bを表す図である。波形図7Aは製品出荷前、波形図7Bは製品出荷後におけるスキャンモード時、スキャンイン端子SIからデータパターンを入力する場合の波形図である。図3の波形図と同様に、スキャンチェーンは4つのスキャンFFsf1~sf4を有し、入力されるデータパターンは1010である。図14の波形図7Aにおいて、製品出荷前のスキャンモード時、テスト信号TEはHレベルに、スキャンイネーブル信号SEはHレベルに設定される。そこで、論理演算回路X3は、クロックの立ち上がり毎に、FFf2から出力された値とHレベルのテスト信号TEとのAND演算の結果、FFf2からの出力値と同じ値をFFf3に出力する。これにより、製品出荷前のスキャンモード時、各FFf1~f4にはスキャンイン端子SIからデータパターン1010が入力される71y。一方、波形図7Bにおいて、製品出荷後のスキャンモードとして、テスト信号TEはLレベルに、スキャンイネーブル信号SEはHレベルに設定される。そこで、論理演算回路X3は、クロックの立ち上がり毎に、FFf2から出力された値とLレベルのテスト信号TEとのAND演算の結果、値0をFFf3に出力する。これにより、製品出荷後のスキャンモード時、FFf3、f4には常に値0が入力される72y。なお、図14の波形図では、スキャンイン端子SIからデータパターンを入力する場合を例示したが、各FFf1~f4に保持された値をスキャンアウト端子SOに出力する場合についても同様である。波形図7Aで前述したとおり、製品出荷前のスキャンモード時、論理演算回路X3は、常にFFf2から出力された値をFFf3に出力する。従って、FFf1~f4に保持された値はリセットされることなく、スキャンアウト端子SOに出力される。一方、製品出荷後のスキャンモード時、論理演算回路X3は、常に値0をFFf3に出力する。従って、FFf1~f4に保持された値のうち、FFf1、f2に保持された値は、値0にリセットされてスキャンアウト端子SOに出力される。また、本実施の形態例におけるリセットを行う論理演算回路は、AND演算回路に限定されるものではない。続いて、製品出荷後のスキャンモード時に、データパターンの入力のFFへの入力値、及び、FFに保持された値をリセットする別のスキャンチェーンを例示する。図15は、製品出荷のスキャンモード時、データパターンの入力のFFへの入力値、及び、FFに保持された値をリセットする別の論理演算回路X4を有するスキャンチェーンの一例を表す図である。論理演算回路X4は、プルアップ回路PUから出力されたテスト信号TEとFFf2の出力値との論理和以下、OR演算を行う。この例において、プルアップ回路PUは、製品出荷前はLレベルの信号を、製品出荷後はHレベルの信号を出力する。従って、論理演算回路X4は、製品出荷前は、FFf2からの出力値とLレベルのテスト信号TEとのOR演算により常にFFf2から出力値を、製品出荷後は、FFf2からの出力値とHレベルのテスト信号TEとのOR演算に基づいて常に値1をFFf3に出力する。以下、波形図に基づいて具体的に説明する。図16は、図15のスキャンチェーンの波形図8A、8Bを表す図である。波形図8Aは製品出荷前、波形図8Bは製品出荷後におけるスキャンモード時、スキャンイン端子SIからデータパターンを入力する場合の波形図である。図3の波形図と同様に、スキャンチェーンは4つのスキャンFFsf1~sf4を有し、入力されるデータパターンは1010である。図16の波形図8Aにおいて、製品出荷前のスキャンモードとして、テスト信号TEはLレベルに、スキャンイネーブル信号SEはHレベルに設定される。そこで、論理演算回路X4は、クロックの立ち上がり毎に、FFf2から出力された値とLレベルに固定されたテスト信号TEとのOR演算の結果、FFf2からの出力値と同じ値をFFf3に出力する。これにより、製品出荷前のスキャンモード時、各FFf1~f4にはスキャンイン端子SIからデータパターン1010が入力される81y。一方、波形図8Bにおいて、製品出荷後のスキャンモードとして、テスト信号TEはHレベルに、スキャンイネーブル信号SEはHレベルに設定される。そこで、論理演算回路X4は、クロックの立ち上がり毎に、FFf2から出力された値とLレベルに固定されたテスト信号TEとをOR演算の結果、値1をFFf3に出力する。この結果、製品出荷後のスキャンモード時、FFf3、f4には常に値1が入力される82y。このように、本実施の形態例におけるLSIは、製品出荷前のスキャンモード時には、接続経路に設けられた論理演算回路に前段のFFからの出力値を出力させることによって、データパターンのFFへの入力、及び、FFに保持された値の出力を可能にし、スキャンテストを可能にする。その一方、製品出荷後のスキャンモード時には、本実施の形態例におけるLSIは、接続経路に設けられた論理演算回路に一定値を出力させることによって、データパターンのFFへの入力値、及び、FFに保持された値をリセットする。これにより、第3者は、任意のデータパターンをスキャンFFに入力することができず、スキャンFFに保持された値を出力することができない。従って、本実施の形態例におけるLSIは、製品出荷前は前段のFFからの出力値を、製品出荷後は固定値を出力する論理演算回路を有することによって、製品出荷前にスキャンテストを可能にしながら、製品出荷後はスキャンチェーンを利用した第3者によるLSIの内部情報の漏洩及び改竄を回避する。以上の実施の形態をまとめると、次の付記のとおりである。付記1複数のフリップフロップを有するユーザー回路と、テストモード時に、前記複数のフリップフロップを接続してスキャンチェーンを構成する接続経路とを有し、前記接続経路は、前記複数のフリップフロップのうちいずれかの前記フリップフロップの非反転出力値を論理演算して出力する論理演算回路、または、前記複数のフリップフロップのうちいずれかの前記フリップフロップの反転出力値を後段のフリップフロップに出力する反転値接続経路を有する半導体装置。付記2付記1において、前記論理演算回路は、論理否定回路である半導体装置。付記3付記1において、前記接続経路は、前記論理演算回路、または、前記反転値出力経路のいずれかまたは両方を分散して複数有する半導体装置。付記4付記1において、前記論理演算回路は、前記フリップフロップの非反転出力値と所定値とを入力とし、AND演算回路、OR演算回路、XOR演算回路、NAND演算回路、NOR演算回路、XNOR演算回路のいずれかである半導体装置。付記5付記4において、前記所定値は、擬似乱数値である半導体装置。付記6付記4において、前記所定値は、製品出荷前は第1の値に、製品出荷後は前記第1の値とは異なる第2の値に設定され、前記論理演算回路は、前記製品出荷前は前記第1の値と前記非反転出力値との論理演算値が当該非反転出力値に、前記製品出荷後は前記第2の値と前記非反転出力値との論理演算値が一定値になる論理演算を行う半導体装置。付記7第1のクロックに同期して動作する複数のフリップフロップを有するユーザー回路と、テストモード時に、前記複数のフリップフロップを接続して前記第1のクロックに同期してシフト動作するスキャンチェーンを構成する接続経路と、所定値と前記第1のクロックとを論理演算し第2のクロックを出力するクロック生成回路とを有し、前記複数のフリップフロップのうちいずれかの前記フリップフロップは、テストモード時には前記第2のクロックに同期して動作し、ユーザモード時には前記第1のクロックに同期して動作する半導体装置。付記8付記7において、前記クロック生成回路の前記論理演算は、AND演算、OR演算、XOR演算、NAND演算、NOR演算、XNOR演算のいずれかである半導体装置。付記9付記7または8において、前記所定値は、擬似乱数値である半導体装置。付記10付記7乃至9のいずれかにおいて、さらに、前記接続経路は、前記複数のフリップフロップのうちいずれかの前記フリップフロップの非反転出力値を論理演算して出力する論理演算回路、または、前記複数のフリップフロップのうちいずれかの前記フリップフロップの反転出力値を後段のフリップフロップに出力する反転値接続経路を有する半導体装置。