(57)【要約】【課題】共用回路に要する面積の削減を図る。【解決手段】  設計支援装置１００は、信号値を観測可能な観測点を複数の信号線に共用させる共用回路であって、複数種類の論理演算の少なくともいずれかを行う複数種類の共用回路を示す共用回路情報ｓｐ＿ｌｉｓｔを取得する。設計支援装置１００は、対象回路ｌｏｇ内の観測対象の信号線ＴＡ１〜ＴＡ６の各々について、信号線の値を特定の値とする制御のしやすさを示す可制御性に基づく値を決定する。設計支援装置１００は、共用回路情報ｓｐ＿ｌｉｓｔに基づいて、複数種類の共用回路の中からいずれか一つの共用回路を選択する。設計支援装置１００は、選択した共用回路の入力端子の各々について、観測対象の信号線のうち、信号線について決定した値が入力端子への入力信号に対して行われる論理演算の非制御値と同一である信号線を対応付けた対応情報１０１を生成する。【選択図】図１
2014203171.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータが、
信号値を観測可能な観測点を複数の信号線に共用させる共用回路であって、複数種類の論理演算の少なくともいずれかを行う複数種類の共用回路を示す共用回路情報を取得し、
対象回路内の観測対象の信号線の各々について、前記信号線の値を特定の値とする制御のしやすさを示す可制御性に基づく値を決定し、
取得した前記共用回路情報に基づいて、前記複数種類の共用回路の中からいずれか一つの共用回路を選択し、
選択した前記共用回路の入力端子の各々について、前記観測対象の信号線のうち、前記信号線について決定した前記値が前記入力端子への入力信号に対して行われる論理演算の非制御値と同一である信号線を対応付けた対応情報を生成する、
処理を実行することを特徴とする設計支援方法。
【請求項２】
前記コンピュータが、
前記対応情報を生成する処理において、選択した前記共用回路の入力端子の少なくともいずれか一つの入力端子に、前記観測対象の信号線の中のいずれの信号線も対応付けられない場合、取得した前記共用回路情報に基づいて、前記複数種類の共用回路のうち、以前に選択した前記共用回路以外の共用回路の中からいずれか一つの共用回路をあらたに選択し、
あらたに選択した前記共用回路の入力端子の各々について、前記観測対象の信号線のうち、前記信号線について決定した前記値が前記入力端子への入力信号に対して行われる論理演算の非制御値と同一である信号線を対応付けた対応情報を生成する、
処理を実行することを特徴とする請求項１に記載の設計支援方法。
【請求項３】
前記共用回路情報は、前記複数種類の共用回路の各々についての前記共用回路の面積と前記共用回路の入力端子数とに基づく前記複数種類の共用回路における各共用回路の順序を示し、
前記共用回路を選択する処理では、
取得した前記共用回路情報が示す前記順序に基づいて、前記複数種類の共用回路の中からいずれか一つの共用回路を選択することを特徴とする請求項１または２に記載の設計支援方法。
【請求項４】
前記コンピュータが、
生成した前記対応情報による対応付けに従って選択した前記共用回路が前記対象回路に接続された回路をあらたな対象回路に決定し、
決定した前記あらたな対象回路内の選択した前記共用回路の出力端子からの信号線と、前記観測対象の信号線のうち生成した前記対応情報によって対応付けられた信号線以外の信号線と、をあらたな観測対象の信号線に決定し、
前記あらたな観測対象の信号線の各々について、前記可制御性に基づく値を決定し、
取得した前記共用回路情報に基づいて、前記複数種類の共用回路の中からいずれか一つの第２共用回路を選択し、
選択した前記第２共用回路の入力端子の各々について、前記あらたな観測対象の信号線のうち、前記信号線について決定した前記値が前記入力端子への入力信号に対して行われる論理演算の非制御値と同一である信号線を対応付けた第２対応情報を生成する、
処理を実行することを特徴とする請求項１〜３のいずれか一つに記載の設計支援方法。
【請求項５】
前記コンピュータが、
前記あらたな対象回路内の追加された前記共用回路の出力端子からの信号線が、前記あらたな対象回路内において所定段数以上の共用回路を介して伝搬される信号を伝搬するか否かを判断し、
前記所定段数以上の共用回路を介して伝搬される信号を伝搬する場合、前記あらたな対象回路内の選択した前記共用回路の出力端子からの信号線に、信号値を観測可能な観測点を接続させることを示す情報を生成する、
処理を実行し、
前記あらたな観測対象の信号線を決定する処理では、
前記所定段数以上の共用回路を介して伝搬される信号を伝搬する場合、前記あらたな観測対象の信号線に、追加された前記共用回路の出力端子からの信号線を含めないことを特徴とする請求項４に記載の設計支援方法。
【請求項６】
前記コンピュータが、
前記観測対象の信号線のうちのいずれか一つの信号線を選択する処理を実行し、
前記共用回路を選択する処理では、
取得した前記共用回路情報に基づいて、選択した前記信号線について決定した前記値と非制御値が同一である論理演算を行う共用回路を前記複数種類の共用回路の中から選択し、
前記対応情報を生成する処理では、
選択した前記共用回路の入力端子の各々について、前記観測対象の信号線のうち、前記信号線について決定した前記値が前記入力端子への入力信号に対して行われる論理演算の非制御値と同一である信号線を対応付けた対応情報であって、選択した前記共用回路の入力端子のうちのいずれか一つの入力端子に選択した前記信号線を対応付けた対応情報を生成することを特徴とする請求項１〜５のいずれか一つに記載の設計支援方法。
【請求項７】
前記コンピュータが、
前記観測対象の信号線のうち、前記信号線について決定した前記値が選択した前記共用回路が行う論理演算の非制御値と同一の信号線の中から、いずれか一つの信号線を選択する処理を実行し、
前記対応情報を生成する処理では、
選択した前記共用回路の入力端子の各々について、前記観測対象の信号線のうち、前記信号線について決定した前記値が前記入力端子への入力信号に対して行われる論理演算の非制御値と同一である信号線を対応付けた対応情報であって、選択した前記共用回路の入力端子のうちのいずれか一つの入力端子に選択した前記信号線を対応付けた対応情報を生成することを特徴とする請求項１〜５のいずれか一つに記載の設計支援方法。
【請求項８】
前記対応情報を生成する処理では、
選択した前記共用回路の入力端子の中で、入力信号に対して行われる論理演算の非制御値が、選択した前記信号線について決定した前記値と同一である入力端子のうちのいずれか一つの入力端子に選択した前記信号線を対応付け、
選択した前記共用回路の入力端子のうちの前記いずれか一つの入力端子以外の入力端子の各々に対して、前記観測対象の信号線のうちの選択した前記信号線以外の信号線の中で、前記信号線について決定した前記値が、前記入力端子への入力信号に対して行われる論理演算の非制御値と同一である信号線のうちのいずれか一つの信号線を対応付ける、
ことにより前記対応情報を生成することを特徴とする請求項６または７に記載の設計支援方法。
【請求項９】
前記コンピュータが、
前記対象回路内のセルと前記セル間の接続関係を示す回路情報を取得し、
前記観測対象の信号線のうちの選択した前記信号線以外の信号線の各々について、前記信号線を含む前記対象回路内のモジュールと、選択した前記信号線を含む前記対象回路内のモジュールと、の間に介在する前記対象回路内のモジュールの数を、取得した前記回路情報に基づいて検出する、
処理を実行し、
前記対応情報を生成する処理では、
前記いずれか一つの入力端子以外の入力端子の各々に対して、選択した前記信号線以外の信号線の中で、検出した前記モジュールの数が閾値以下である信号線のうちのいずれか一つの信号線を対応付けることにより前記対応情報を生成することを特徴とする請求項６〜８のいずれか一つに記載の設計支援方法。
【請求項１０】
コンピュータに、
信号値を観測可能な観測点を複数の信号線に共用させる共用回路であって、複数種類の論理演算の少なくともいずれかを行う複数種類の共用回路を示す共用回路情報を取得し、
対象回路内の観測対象の信号線の各々について、前記信号線の値を特定の値とする制御のしやすさを示す可制御性に基づく値を決定し、
取得した前記共用回路情報に基づいて、前記複数種類の共用回路の中からいずれか一つの共用回路を選択し、
選択した前記共用回路の入力端子の各々について、前記観測対象の信号線のうち、前記信号線について決定した前記値が前記入力端子への入力信号に対して行われる論理演算の非制御値と同一である信号線を対応付けた対応情報を生成する、
処理を実行させることを特徴とする設計支援プログラム。
【請求項１１】
信号値を観測可能な観測点を複数の信号線に共用させる共用回路であって、複数種類の論理演算の少なくともいずれかを行う複数種類の共用回路を示す共用回路情報を取得する取得部と、
対象回路内の観測対象の信号線の各々について、前記信号線の値を特定の値とする制御のしやすさを示す可制御性に基づく値を決定する種類決定部と、
前記取得部が取得した前記共用回路情報に基づいて、前記複数種類の共用回路の中からいずれか一つの共用回路を選択する共用回路選択部と、
前記共用回路選択部が選択した前記共用回路の入力端子の各々について、前記観測対象の信号線のうち、前記信号線について前記種類決定部が決定した前記値が前記入力端子への入力信号に対して行われる論理演算の非制御値と同一である信号線を対応付けた対応情報を生成する対応情報生成部と、
を有することを特徴とする設計支援装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、設計支援方法、設計支援プログラム、および設計支援装置に関する。
【背景技術】
【０００２】
従来、半導体集積回路の試験時の故障検出率を向上させるために、ある信号線の値を観測したり、制御したりする仕組みを半導体集積回路に挿入するＴＰＩ（Ｔｅｓｔ  Ｐｏｉｎｔ  Ｉｎｓｅｒｔｉｏｎ）と呼ばれる技術が知られている。
【０００３】
例えば、故障を検出する組み合わせ回路が他の組み合わせ回路を介して、外部端子や、スキャンフリップフロップ（以下、「ＳＦＦ（Ｓｃａｎ  Ｆｌｉｐ  Ｆｌｏｐ）」と表す。）に接続されていると、故障を検出する組み合わせ回路の故障の検出率が他の組み合わせ回路の影響により下がる。そのため、ＴＰＩでは、故障を検出する組み合わせ回路と、他の組み合わせ回路との間の信号線上に、ＳＦＦまたは出力端子などの観測点を接続させることにより、信号線の値を観測可能にすることによって、故障検出率を向上させる技術が知られている。
【０００４】
ただし、多くの観測点を設けると、半導体集積回路の回路面積が増大したり、出力端子数が増加したりする。そのため、従来、観測対象の複数の信号線を入力端子に接続した排他的論理和回路によって複数の信号線に観測点を共用させることにより、回路面積の増大や出力端子数の増加を抑止する技術が知られている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−１３５２２６号公報
【特許文献２】特開平５−２４９１９７号公報
【特許文献３】特開平３−２９６６７３号公報
【特許文献４】特開昭６３−１４０９６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、排他的論理和回路は面積が大きいため、複数の信号線に観測点を共用させる共用回路に排他的論理和回路を用いると共用回路に要する面積が大きくなる。
【０００７】
１つの側面では、本発明は、共用回路に要する面積の削減を図る設計支援方法、設計支援プログラム、および設計支援装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一側面によれば、信号値を観測可能な観測点を複数の信号線に共用させる共用回路であって、複数種類の論理演算の少なくともいずれかを行う複数種類の共用回路を示す共用回路情報を取得し、対象回路内の観測対象の信号線の各々について、前記信号線の値を特定の値とする制御のしやすさを示す可制御性に基づく値を決定し、取得した前記共用回路情報に基づいて、前記複数種類の共用回路の中からいずれか一つの共用回路を選択し、選択した前記共用回路の入力端子の各々について、前記観測対象の信号線のうち、前記信号線について決定した前記値が前記入力端子への入力信号に対して行われる論理演算の非制御値と同一である信号線を対応付けた対応情報を生成する設計支援方法、設計支援プログラム、および設計支援装置が提案される。
【発明の効果】
【０００９】
本発明の一の側面によれば、共用回路に要する面積の削減を図ることができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、設計支援装置による動作例を示す説明図である。
【図２】図２は、観測点の一例を示す説明図である。
【図３】図３は、セルの種類とセルの面積例を示す説明図である。
【図４】図４は、設計支援装置のハードウェア構成例を示すブロック図である。
【図５】図５は、設計支援装置の機能的構成例を示すブロック図である。
【図６】図６は、対象回路例を示す説明図である。
【図７】図７は、ＴＰ候補情報例を示す説明図である。
【図８】図８は、ＴＰ候補集合の生成例を示す説明図である。
【図９】図９は、可制御性の算出例を示す説明図である。
【図１０】図１０は、各ＴＰ候補の種類の決定方法例を示す説明図である。
【図１１】図１１は、αが０［％］の場合とαが１０［％］の場合の比較例を示す説明図である。
【図１２】図１２は、ＴＰ候補集合に種類が設定された例を示す説明図である。
【図１３】図１３は、共用回路情報例を示す説明図である。
【図１４】図１４は、モジュール間距離の検出例を示す説明図である。
【図１５】図１５は、モジュールの階層例を示す説明図である。
【図１６】図１６は、モジュール間距離を設定後のＴＰ候補集合例を示す説明図である。
【図１７】図１７は、対応情報例１を示す説明図である。
【図１８】図１８は、共用回路が接続された対象回路例１を示す説明図である。
【図１９】図１９は、あらたなＴＰ候補集合例１を示す説明図である。
【図２０】図２０は、対応情報例２を示す説明図である。
【図２１】図２１は、共用回路が接続された対象回路例２を示す説明図である。
【図２２】図２２は、あらたなＴＰ候補集合例２を示す説明図である。
【図２３】図２３は、接続先情報例を示す説明図である。
【図２４】図２４は、観測点を接続させた後の対象回路例を示す説明図である。
【図２５】図２５は、ＮＡＮＤ回路による共用例を示す説明図である。
【図２６】図２６は、ＮＯＲ回路による共用例を示す説明図である。
【図２７】図２７は、ＡＮＤ−ＮＯＲ型の複合ゲートによる共用例を示す説明図である。
【図２８】図２８は、ＯＲ−ＮＡＮＤ型の複合ゲートによる共用例を示す説明図である。
【図２９】図２９は、ＥＸＯＲ回路による共用例を示す説明図である。
【図３０】図３０は、実施例１にかかる設計支援装置が行う設計支援処理手順例を示すフローチャート（その１）である。
【図３１】図３１は、実施例１にかかる設計支援装置が行う設計支援処理手順例を示すフローチャート（その２）である。
【図３２】図３２は、実施例１にかかる設計支援装置が行う設計支援処理手順例を示すフローチャート（その３）である。
【図３３】図３３は、実施例２にかかる設計支援装置が行う設計支援処理手順例を示すフローチャート（その１）である。
【図３４】図３４は、実施例２にかかる設計支援装置が行う設計支援処理手順例を示すフローチャート（その２）である。
【図３５】図３５は、半導体集積回路例を示す説明図である。
【図３６】図３６は、信号線ＴＡ１の０縮退故障の観測時の半導体集積回路の各部の信号の一例を示すタイミングチャートである。
【図３７】図３７は、信号線ＴＡ３の１縮退故障の観測時の半導体集積回路の各部の信号の一例を示すタイミングチャートである。
【発明を実施するための形態】
【００１１】
以下に添付図面を参照して、本発明にかかる設計支援方法、設計支援プログラム、および設計支援装置の実施の形態を詳細に説明する。
【００１２】
図１は、設計支援装置による動作例を示す説明図である。設計支援装置１００は、対象回路ｌｏｇの設計を支援するコンピュータである。設計支援装置１００は、信号値を観測可能な観測点を複数の信号線に共用させる共用回路であって、複数種類の論理演算の少なくともいずれかを行う複数種類の共用回路を示す共用回路情報ｓｐ＿ｌｉｓｔを取得する。図１の例では、複数種類の共用回路には、例えば、２入力排他的論理和（以下「ＥＸＯＲ」と称する。）回路と、２入力ＥＸＯＲ回路よりも面積が削減可能な共用回路と、が含まれる。図１の例では、ＥＸＯＲ回路よりも面積が削減可能な共用回路として、２入力否定論理積（以下「ＮＡＮＤ」と称する。）回路、３入力ＮＡＮＤ回路、２入力否定論理和（以下「ＮＯＲ」と称する。）回路、３入力ＮＯＲ回路を示す。面積が削減可能とは、面積を入力端子数で割った値である１入力端子あたりの面積がＥＸＯＲ回路よりも小さい回路である。共用回路の詳細については後述する。
【００１３】
設計支援装置１００は、対象回路ｌｏｇ内の観測対象の信号線の各々について、信号線の値を特定の値とする制御のしやすさを示す可制御性に基づく値を決定する。図１の例では、観測対象の信号線は、ＴＡ１〜ＴＡ６である。
【００１４】
信号線の値を０とする制御のしやすさを示す可制御性を０可制御性と称する。信号線の値を１とする制御のしやすさを示す可制御性を１可制御性と称する。例えば、０可制御性と１可制御性とは例えば、確率で表される。０可制御性と１可制御性の算出方法は後述する。信号線について決定される値は、信号線に対応付ける入力端子を有する共用回路が行う論理演算の非制御値である。非制御値とは、論理演算の演算結果を決定しない値である。例えば、論理積（以下「ＡＮＤ」と称する。）とＮＡＮＤとの非制御値は１であり、ＯＲとＮＯＲとの非制御値は０であり、ＥＸＯＲの非制御値はｎｏｎｅ（なし）である。図１において、共用回路情報ｓｐ＿ｌｉｓｔが示す各共用回路に付された０、１、またはｎｏｎｅは非制御値を示す。また、決定結果は各信号線を示す識別情報の後に記載された（）内に示す。例えば、信号線ＴＡ１（０）の０が決定された値である。
【００１５】
設計支援装置１００は、取得した共用回路情報ｓｐ＿ｌｉｓｔに基づいて、複数種類の共用回路の中からいずれか一つの共用回路を選択する。設計支援装置１００は、選択した共用回路の入力端子の各々について、観測対象の信号線ＴＡ１〜ＴＡ６のうち、信号線について決定した値が入力端子への入力信号に対して行われる論理演算の非制御値と同一である信号線を対応付けた対応情報１０１を生成する。対応情報１０１は、例えば、選択された共用回路の識別情報と、共用回路の入力端子の識別情報と、信号線の識別情報と、を有する。
【００１６】
例えば、３入力ＮＯＲ回路が選択された場合、３入力ＮＯＲ回路の各入力端子に、決定された値が０である信号線ＴＡ１，ＴＡ３，ＴＡ６が対応付けられる。図１における３入力ＮＯＲ回路についての対応情報１０１は、対応情報１０１−ｘである。
【００１７】
また、例えば、３入力ＮＡＮＤ回路が選択された場合、３入力ＮＡＮＤ回路の各入力端子に、決定された値が１である信号線ＴＡ２，ＴＡ４，ＴＡ５が対応付けられる。図１における３入力ＮＡＮＤ回路についての対応情報１０１は、対応情報１０１−ｙである。
【００１８】
図１によれば、設計支援装置１００は、ＥＸＯＲ回路よりも面積を削減可能な種類を含む複数種類の共用回路から選択した共用回路内の各入力端子に、可制御性に基づく値が回路の演算の非制御値と同じ信号線を対応付ける。これにより、信号線の値が観測可能な範囲で共用回路に要する面積の削減を図る。
【００１９】
図２は、観測点の一例を示す説明図である。ここで、観測点について簡単に説明する。観測点は、信号値を観測する仕組みであり、具体的には外部出力端子やＳＦＦなどである。外部出力端子やスキャンフリップフロップ（以下、「ＳＦＦ（Ｓｃａｎ  Ｆｌｉｐ  Ｆｌｏｐ）」と称する。）へ信号値が到達しにくい信号線に観測点を接続することによって、信号値を観測点で観測可能になる。
【００２０】
４入力ＡＮＤ回路と３入力ＡＮＤ回路とによる６入力ＡＮＤ回路において、入力信号Ｘ６の信号線に０縮退故障を仮定し、故障を出力端子ＯＵＴ１で観測する例を挙げる。入力信号Ｘ６の０縮退故障を観測するためには、入力信号Ｘ１〜Ｘ５の入力値がすべて１でなければならない。入力信号Ｘ１〜Ｘ５がそれぞれ１となる確率を１／２とした場合、入力信号Ｘ１〜Ｘ５がすべて１となる確率は、１／３２（＝１／（２5））となる。したがって、入力信号Ｘ６の０縮退故障を出力端子で観測可能な確率は、１／３２である。図２において括弧で示された値は、信号線が１となる確率を表している。
【００２１】
３入力ＡＮＤ回路に出力端子ＯＵＴ２などの観測点を接続させると、入力信号Ｘ６に仮定した０縮退故障は、入力信号Ｘ４、Ｘ５が１であれば、出力端子ＯＵＴ２において観測可能となる。入力信号Ｘ４、Ｘ５がそれぞれ１となる確率は１／２であるため、入力信号Ｘ４、Ｘ５がともに１となる確率は１／４（＝１／（２2））となる。したがって、入力信号Ｘ６の０縮退故障を出力端子ＯＵＴ２で観測できる確率は１／４である。
【００２２】
このように、観測点が接続されることにより、入力信号Ｘ６に仮定した０縮退故障を観測できる確率を向上させることができる。
【００２３】
図３は、セルの種類とセルの面積例を示す説明図である。図３に示す回路名はそれぞれが１つのセルである。バッファ（以下「ＢＵＦ」と称する。）回路、２入力ＮＯＲ回路、２入力ＮＡＮＤ回路のレイアウトにおける面積は同一であり、図３では、ＢＵＦ回路、２入力ＮＯＲ回路、２入力ＮＡＮＤ回路のレイアウトにおける面積を１．０としたときの、他の論理回路の面積の概略を示す。インバータ回路（ＩＮＶ）は０．５であり、２入力ＯＲ回路と２入力ＡＮＤ回路は１．５であり、２入力ＥＸＯＲ回路は２．５、ＳＦＦは８．０である。図３に示すように、２入力ＥＸＯＲ回路が共用回路として利用されると、２入力ＮＡＮＤ回路や２入力ＮＯＲ回路が共用回路として利用される場合よりも面積が大きくなる。
【００２４】
（設計支援装置１００のハードウェア構成例）
図４は、設計支援装置のハードウェア構成例を示すブロック図である。設計支援装置１００は、ＣＰＵ４０１と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）４０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）４０３と、ディスクドライブ４０４と、ディスク４０５と、を有する。設計支援装置１００は、Ｉ／Ｆ４０６（Ｉｎｔｅｒ  Ｆａｃｅ）と、入力装置４０７と、出力装置４０８と、を有する。また、各部はバス４００によってそれぞれ接続される。
【００２５】
ここで、ＣＰＵ４０１は、設計支援装置１００の全体の制御を司る。ＲＯＭ４０２は、ブートプログラムなどのプログラムを記憶する。ＲＡＭ４０３は、ＣＰＵ４０１のワークエリアとして使用される記憶部である。ディスクドライブ４０４は、ＣＰＵ４０１の制御にしたがってディスク４０５に対するデータのリード／ライトを制御する。ディスク４０５は、ディスクドライブ４０４の制御で書き込まれたデータを記憶する。ディスク４０５としては、磁気ディスク、光ディスクなどが挙げられる。
【００２６】
Ｉ／Ｆ４０６は、通信回線を通じてＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットなどのネットワークＮＥＴに接続され、このネットワークＮＥＴを介して他の装置に接続される。そして、Ｉ／Ｆ４０６は、ネットワークＮＥＴと内部のインターフェースを司り、外部装置からのデータの入出力を制御する。Ｉ／Ｆ４０６には、例えば、モデムやＬＡＮアダプタなどを採用することができる。
【００２７】
入力装置４０７は、キーボード、マウス、タッチパネルなど利用者の操作により、各種データの入力を行うインターフェースである。また、入力装置４０７は、カメラから画像や動画を取り込むこともできる。また、入力装置４０７は、マイクから音声を取り込むこともできる。出力装置４０８は、ＣＰＵ４０１の指示により、データを出力するインターフェースである。出力装置４０８には、ディスプレイやプリンタが挙げられる。
【００２８】
（設計支援装置１００の機能的構成例）
図５は、設計支援装置の機能的構成例を示すブロック図である。設計支援装置１００は、取得部５０１と、ＴＰ候補集合生成部５０２と、ＴＰ候補選択部５０３と、共用回路選択部５０４と、対応情報生成部５０５と、を有する。また、設計支援装置１００は、対象回路決定部５０６と、ＴＰ候補決定部５０７と、共用段数判断部５０８と、接続先情報生成部５０９と、回路情報生成部５１０とを有する。
【００２９】
取得部５０１から回路情報生成部５１０の処理は、例えば、ＣＰＵ４０１がアクセス可能なディスク４０５などの記憶装置に記憶された設計支援プログラムにコーディングされる。そして、ＣＰＵ４０１が記憶装置に記憶された設計支援プログラムを読み出して、設計支援プログラムにコーディングされている処理を実行する。これにより、取得部５０１から回路情報生成部５１０の処理が実現される。また、各部の処理結果は、例えば、ＲＡＭ４０３、ディスク４０５などの記憶装置に記憶される。
【００３０】
取得部５０１は、対象回路ｌｏｇ内のセルとセル間の接続関係を示す回路情報ｌｏｇｉｎを取得する。ここでの回路情報ｌｏｇｉｎは、ネットリストである。回路情報ｌｏｇｉｎは、例えば、ＶｅｒｉｌｏｇやＶＨＤＬ（Ｖｅｒｙ  ｈｉｇｈ  ｓｐｅｅｄ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ  Ｈａｒｄｗａｒｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）などのハードウェア記述言語やシステム記述言語によって記述される。
【００３１】
図６は、対象回路例を示す説明図である。対象回路ｌｏｇ内のモジュールについて簡単に説明する。対象回路ｌｏｇの全体を表すモジュールＴＯＰは、モジュールｍｏｄ１とモジュールｍｏｄ２と、ユニットＵ３などとを有する。モジュールｍｏｄ１は、ユニットＵ１とユニットＵ２などと、を有する。モジュールｍｏｄ２は、ユニットＵ４などを有する。ここで、組み合わせ回路や順序回路などの１以上のセルについてユニットと称する。対象回路ｌｏｇ内の観測対象の信号線を、ＴＰ（Ｔｅｓｔ  Ｐｏｉｎｔ）候補と称する。図６の例では、ＴＰ候補はＴＰ１〜ＴＰ４である。
【００３２】
取得部５０１は、対象回路ｌｏｇ内の観測対象の複数のＴＰ候補を示すＴＰ候補情報ＴＰｄａを取得する。ＴＰ候補情報ＴＰｄａは、例えば、回路情報ｌｏｇｉｎに含まれる対象回路ｌｏｇの全体を表すモジュールから当該ＴＰ候補を有するモジュールまでの絶対パスを含むネット名などである。
【００３３】
図７は、ＴＰ候補情報例を示す説明図である。ここでは、図７に示した対象回路ｌｏｇに基づくＴＰ候補情報ＴＰｄａを示す。ＴＰ候補情報ＴＰｄａは、ＴＰ候補名のフィールドを有する。ＴＰ候補名のフィールドに情報が設定されることにより、レコードとして登録される。ＴＰ候補情報ＴＰｄａは、例えば、ディスク４０５などの記憶装置によって実現される。ＴＰ候補名のフィールドには、ＴＰ候補を有する各モジュールの名称とＴＰ候補に接続されるユニット名とＴＰ候補名とが「／」によって繋がれた情報が登録される。
【００３４】
ＴＰ候補集合生成部５０２は、ＴＰ候補名Ｎａｍｅと、種類ｔｙｐｅと、共用段数Ｄｅｐｔｈと、モジュール間距離Ｄｉｓｔａｎｃｅ（以降「Ｄｉｓｔ」と省略する。）と、を一つの要素として有するＴＰ候補集合ＴＰ＿ｏｂｓをＴＰ候補情報ＴＰｄａに基づいて生成する。各要素は、ＴＰ候補を示す。種類ｔｙｐｅは、ＴＰ候補について可制御性に基づき決定される値である。決定される値は、ＴＰ候補を対応付ける入力端子を有する共用回路が行う論理演算の非制御値である。共用段数Ｄｅｐｔｈは、ＴＰ候補が伝搬する信号を伝搬する共用回路の段数であり、初期値が０である。モジュール間距離Ｄｉｓｔは２つのＴＰ候補の各々を有する対象回路ｌｏｇ内のモジュールの間に介在する対象回路ｌｏｇ内のモジュールの数であり、初期値が０である。ＴＰ候補集合生成部５０２は、生成したＴＰ候補集合ＴＰ＿ｏｂｓをＲＡＭ４０３、ディスク４０５などの記憶装置に記憶する。
【００３５】
図８は、ＴＰ候補集合の生成例を示す説明図である。ＴＰ候補集合ＴＰ＿ｏｂｓの各要素であるＴＰｎ（図８中ｎ＝１〜４）の直後の括弧内は、順に、ＴＰ候補名Ｎａｍｅ、種類ｔｙｐｅ、共用段数Ｄｅｐｔｈ、モジュール間距離Ｄｉｓｔを表す。ここでは、種類ｔｙｐｅ、共用段数Ｄｅｐｔｈ、モジュール間距離Ｄｉｓｔは、それぞれ初期値が設定されてある。
【００３６】
また、ＴＰ候補集合生成部５０２は、算出部５１１と、検出部５１３と、種類決定部５１２と、を有する。算出部５１１は、ＴＰ候補集合ＴＰ＿ｏｂｓの各要素が示すＴＰ候補について、０可制御性および１可制御性を算出する。
【００３７】
図９は、可制御性の算出例を示す説明図である。例えば、設計支援装置１００は、２入力ＡＮＤ回路の１可制御性について、各入力の１可制御性の積によって算出する。また、設計支援装置１００は、２入力ＡＮＤ回路の０可制御性を１から１可制御性を引き算することによって算出する。図９のような２入力ＡＮＤ回路の場合、２入力ＡＮＤ回路の出力端子からの信号線Ｙ１の１可制御性は、１／４（＝１／２×１／２）となる。また、２入力ＡＮＤ回路の出力端子からの信号線Ｙ１の０可制御性は、３／４（１−（１／２×１／２））となる。
【００３８】
例えば、算出部５１１は、２入力ＯＲ回路の０可制御性を各入力の０可制御性の積によって算出する。また、算出部５１１は、２入力ＯＲ回路の１可制御性を１から０可制御性を引き算することによって算出する。図９のような２入力ＯＲ回路の場合、２入力ＯＲ回路の出力端子からの信号線Ｙ２の０可制御性は、１／４（＝１／２×１／２）となる。また、２入力ＯＲ回路の出力端子からの信号線Ｙ２の１可制御性は、３／４（１−（１／２×１／２））となる。
【００３９】
つぎに、種類決定部５１２は、ＴＰ候補情報ＴＰｄａが示す複数のＴＰ候補の各々について、算出部５１１による算出結果に基づく値を決定する。ここで、ＴＰ候補について決定される値は、ＴＰ候補に対応付ける入力端子を有する共用回路が行う論理演算の非制御値である。非制御値とは、論理演算の演算結果を決定しない値である。例えば、ＡＮＤとＮＡＮＤとの非制御値は１であり、ＯＲとＮＯＲとの非制御値は０であり、ＥＸＯＲの非制御値はｎｏｎｅ（なし）である。ここでは、上述したように、算出結果に基づく値を、ＴＰ候補に割り当てる共用回路の種類ｔｙｐｅとする。
【００４０】
図１０は、各ＴＰ候補の種類の決定方法例を示す説明図である。０可制御性が０に近いまたは１可制御性が１に近いＴＰ候補であれば、種類決定部５１２は、当該ＴＰ候補の種類ｔｙｐｅを１に決定する。０可制御性が０に近いまたは１可制御性が１に近いとは、例えば、「０可制御性＋α＜１可制御性」の条件を満たす場合である。例えば、種類ｔｙｐｅが１に決定されると、図１０に示すように当該ＴＰ候補には、ＮＡＮＤまたはＡＮＤを行う共用回路が、ＥＸＯＲを行う共用回路よりも優先して割り当てられる。
【００４１】
０可制御性が１に近いまたは１可制御性が０に近いＴＰ候補であれば、種類決定部５１２は、当該ＴＰ候補の種類ｔｙｐｅを０に決定する。０可制御性が１に近いまたは１可制御性が０に近いとは、例えば、「０可制御性＞１可制御性＋α」の条件を満たす場合である。例えば、ＴＰ候補の種類ｔｙｐｅが０に決定されると、図１０に示すように当該ＴＰ候補には、ＮＯＲまたはＯＲを行う共用回路が、ＥＸＯＲを行う共用回路よりも優先して割り当てられる。
【００４２】
０可制御性が０．５に近いまたは１可制御性が０．５に近い信号線であれば、当該ＴＰ候補の種類ｔｙｐｅをｎｏｎｅに決定する。０可制御性が０．５に近いまたは１可制御性が０．５に近いとは、「α≧｜１可制御性−０可制御性｜」の条件を満たす場合である。例えば、ＴＰ候補の種類ｔｙｐｅがｎｏｎｅに決定されると、図１０に示すように当該ＴＰ候補には、ＥＸＯＲを行う共用回路が割り当てられる。
【００４３】
αはＴＰ候補の種類ｔｙｐｅを決定するための条件に設けられるマージンである。例えば、対象回路ｌｏｇの設計者または検証者が、対象回路ｌｏｇの試験パターンを生成する際に可制御性が低いと、ＴＰ候補の信号値を意図した値に設定できなくなる可能性がある。そのため、可制御性が低い場合に、ＡＮＤ、ＮＡＮＤ、ＯＲ、ＮＯＲのような非制御値が１または０である論理演算を行う論理回路が共用回路として用いられると、故障を観測点まで伝搬できない可能性がある。そこで、可制御性が低い場合に、０または１のいずれの縮退故障が発生しても伝搬可能なように、ＮＯＲのように非制御値がｎｏｎｅである論理演算を行う論理回路が共用回路として用いられる。
【００４４】
図１１は、αが０［％］の場合とαが１０［％］の場合の比較例を示す説明図である。ＴＰ候補ＴＰｎの後ろに記載の括弧内には０可制御性、１可制御性を順に示す。例えば、ＴＰ候補ＴＰ１の０可制御性は３／５であり、ＴＰ候補ＴＰ１の１可制御性は２／５である。例えば、ＴＰ候補ＴＰ２の０可制御性は４／７であり、ＴＰ候補ＴＰ２の１可制御性は３／７である。
【００４５】
αが０［％］の場合、ＴＰ候補ＴＰ１とＴＰ候補ＴＰ２はいずれも「０可制御性＞１可制御性」となり、設計支援装置１００は、ＴＰ候補ＴＰ１とＴＰ候補ＴＰ２との各々の種類ｔｙｐｅを０に決定する。αが１０［％］の場合、ＴＰ１とＴＰ２はいずれも「α≧｜１可制御性−０可制御性｜」となり、設計支援装置１００は、ＴＰ候補ＴＰ１とＴＰ候補ＴＰ２との各々の種類ｔｙｐｅをｎｏｎｅに決定する。
【００４６】
図１２は、ＴＰ候補集合に種類が設定された例を示す説明図である。ＴＰ候補ＴＰ１を示す要素の種類ｔｙｐｅには、０が設定され、ＴＰ候補ＴＰ２を示す要素の種類ｔｙｐｅには、１が設定され、ＴＰ候補ＴＰ３を示す要素の種類ｔｙｐｅには、０が設定され、ＴＰ候補ＴＰ４を示す要素の種類ｔｙｐｅには、０が設定される。
【００４７】
つぎに、取得部５０１は、信号値を観測可能な観測点を複数のＴＰ候補に共用させる複数種類の共用回路を示す共用回路情報ｓｐ＿ｌｉｓｔを取得する。また、共用回路情報ｓｐ＿ｌｉｓｔは、複数種類の共用回路の各々についての共用回路の面積と共用回路の入力端子数とに基づく複数種類の共用回路内における各共用回路の順序を示す。当該順序とは、具体的には、面積の削減効果が大きい順序である。
【００４８】
図１３は、共用回路情報例を示す説明図である。共用回路情報ｓｐ＿ｌｉｓｔは、面積の削減効果が大きい順序ｏｒｄｅｒに基づいて共用回路名が記憶される。図１３には、ＮＡＮＤ、ＮＯＲ、ＥＸＯＲなどの１種類の論理演算を行う共用回路を示している。ＡＮＤ回路とＮＯＲ回路とが複合されたＡＮＤ−ＮＯＲ型の複合ゲートやＯＲ回路とＮＡＮＤ回路とが複合されたＯＲ−ＮＡＮＤ型の複合ゲートが共用回路として用いられてもよい。
【００４９】
面積の削減効果が大きい順序ｏｒｄｅｒとは、１入力端子当たりの面積が小さい順序ｏｒｄｅｒである。順序ｏｒｄｅｒは、「複合ゲート＞３入力以上のＮＡＮＤ、ＮＯＲ回路＞２入力ＮＡＮＤ、ＮＯＲ回路＞ＥＸＯＲ回路」の通りである。例えば、３入力ＮＡＮＤ回路の面積は２入力ＮＡＮＤ回路の面積よりも大きいが、３入力ＮＡＮＤ回路の１入力端子当たりの面積は、２入力ＮＡＮＤ回路の１入力端子当たりの面積よりも小さい。そのため、面積の削減効果は、３入力ＮＡＮＤ回路の方が２入力ＮＡＮＤ回路より大きい。
【００５０】
また、ＥＸＯＲ回路よりも面積の削減効果が大きい単体のＡＮＤ回路単体が共用回路に含まれていてもよい。単体のＡＮＤ回路とは、ＡＮＤ回路単体でセルになっている場合である。ＡＮＤ回路とＮＡＮＤ回路とは非制御値が同一であり、入力端子数が同一の場合、ＮＡＮＤ回路の方がＡＮＤ回路よりも面積が小さい。そのため、ＡＮＤ回路よりもＮＡＮＤ回路が優先して共用回路として用いられる。
【００５１】
また、ＥＸＯＲ回路よりも面積の削減効果が大きい単体のＯＲ回路が共用回路に含まれていてもよい。単体のＯＲ回路とは、ＯＲ回路単体でセルになっている場合である。ＯＲ回路とＮＯＲ回路とは非制御値が同一であり、入力端子数が同一の場合、ＮＯＲ回路の方がＯＲ回路よりも面積が小さい。そのため、ＯＲ回路よりもＮＯＲ回路が優先して共用回路として用いられる。
【００５２】
（実施例１）
実施例１では、ＥＸＯＲ回路より面積を削減可能な種類を含む複数種類の共用回路から、選択した観測対象の信号線の可制御性に基づく値と非制御値が同一の演算を行う共用回路を選択する。これにより、信号線の値が観測可能な範囲で共用回路に要する面積の削減を図る。
【００５３】
ＴＰ候補選択部５０３は、複数のＴＰ候補から１つのＴＰ候補を選択する。具体的には、ＴＰ候補選択部５０３は、ＴＰ候補集合に含まれる要素から１つの要素を選択する。ここで、選択された要素をｔｐとし、要素ｔｐが示すＴＰ候補を基準ＴＰ候補とする。
【００５４】
また、検出部５１３は、複数のＴＰ候補のうちの基準ＴＰ候補以外の他のＴＰ候補の各々について、他のＴＰ候補を有する対象回路ｌｏｇ内のモジュールと、基準ＴＰ候補を有する対象回路ｌｏｇ内のモジュールと、のモジュール間距離Ｄｉｓｔを検出する。検出部５１３は、検出結果を各要素のモジュール間距離Ｄｉｓｔに設定する。
【００５５】
図１４は、モジュール間距離の検出例を示す説明図である。図１５は、モジュールの階層例を示す説明図である。図１６は、モジュール間距離を設定後のＴＰ候補集合例を示す説明図である。ＴＰ候補ＴＰ１が基準候補とする。ＴＰ候補ＴＰ１とＴＰ候補ＴＰ２とは、階層に示すように、同一のモジュール内にあるため、ＴＰ候補ＴＰ１とＴＰ候補ＴＰ２とのモジュール間距離Ｄｉｓｔは０である。ＴＰ候補ＴＰ１とＴＰ候補ＴＰ３との間は、階層に示すように、１つのモジュールを跨るため、ＴＰ候補ＴＰ１とＴＰ候補ＴＰ３とのモジュール間距離Ｄｉｓｔは１である。ＴＰ候補ＴＰ１とＴＰ候補ＴＰ４との間は、階層に示すように、２つのモジュールを跨るため、ＴＰ候補ＴＰ１とＴＰ候補ＴＰ４とのモジュール間距離Ｄｉｓｔは２である。
【００５６】
また、設計支援装置１００は、複数種類の共用回路内における各共用回路の順序ｏｒｄｅｒに基づいて、複数の共用回路のうち、選択したＴＰ候補の種類ｔｙｐｅと同一の非制御値である論理演算を行う共用回路の中からいずれか一つの共用回路を選択する。具体的には、設計支援装置１００は、複数の共用回路のうち、基準ＴＰ候補の種類ｔｙｐｅと同一の非制御値である論理演算を行う共用回路の中から面積の削減効果が最も大きい共用回路を選択する。上述したように、共用回路情報ｓｐ＿ｌｉｓｔは、面積の削減効果が大きい順に共用回路名が登録されてある。そのため、設計支援装置１００は、共用回路情報ｓｐ＿ｌｉｓｔが示す共用回路の中で、基準ＴＰ候補の種類ｔｙｐｅと同一の非制御値である論理演算を行う共用回路のうち、先頭に登録されている順に共用回路を選択する。ここでは、例えば、３入力ＮＯＲ回路が選択される。選択された共用回路を、選択共用回路ｓｐとする。
【００５７】
０に制御しやすいＴＰ候補を非制御値が０である論理演算を行う共用回路の入力端子に対応付ける。これにより、ＥＸＯＲを行う共用回路の入力端子にＴＰ候補を対応付けた場合に対して観測点での観測のし易さが低下することを抑止することができる。１に制御しやすいＴＰ候補を非制御値が１である論理演算を行う共用回路の入力端子に対応付ける。これにより、ＴＰ候補にＥＸＯＲを行う共用回路を割り当てた場合に対して観測点での観測のし易さが低下することを抑止することができる。
【００５８】
つぎに、対応情報生成部５０５は、選択共用回路ｓｐ内の各入力端子について、ＴＰ候補集合ＴＰ＿ｏｂｓが示すＴＰ候補のうち、種類ｔｙｐｅが入力端子への入力信号に対して行われる論理演算の非制御値と同一であるＴＰ候補を対応付ける。これにより、対応情報生成部５０５は、対応情報１０１を生成する。ここでの対応情報１０１は、選択共用回路ｓｐ内の入力端子のうちの入力信号に対して行う論理演算の非制御値が基準ＴＰ候補の種類ｔｙｐｅと同一の入力端子に、基準ＴＰ候補を対応付けた対応情報１０１を生成する。選択共用回路ｓｐ内の入力端子については、例えば、共用回路情報ｓｐ＿ｌｉｓｔに関連付けられたセルライブラリｌｉｂに基づいて特定可能である。ここでは、例えば、設計支援装置１００は、３入力ＮＯＲ回路の入力端子１に基準ＴＰ候補として選択されたＴＰ候補ＴＰ１を対応付ける。
【００５９】
また、対応情報生成部５０５は、基準ＴＰ候補が対応付けられる入力端子以外の残余の入力端子の各々に対して、ＴＰ候補を対応付けることにより対応情報１０１を生成する。対応情報生成部５０５は、残余の入力端子の各々に対して、基準ＴＰ候補以外のＴＰ候補の中で、モジュール間距離Ｄｉｓｔが閾値Ｄｉｓｔ＿ｌｉｍｉｔ以下であるＴＰ候補のうちのいずれか一つのＴＰ候補を対応付けることにより対応情報１０１を生成する。観測点の挿入時には回路のレイアウト設計が行われていないが、モジュール間距離Ｄｉｓｔが大きいＴＰ候補同士であると、レイアウトにおけるＴＰ候補の配置が遠くなる可能性が高い。そのため、モジュール間距離Ｄｉｓｔが大きいＴＰ候補同士で観測点を共用させると、レイアウトが行えない可能性がある。本実施の形態のように、モジュール間距離Ｄｉｓｔが小さいＴＰ候補同士で観測点を共用させることにより、レイアウト時により近くに配置されるＴＰ候補同士で観測点を共用させることができ、レイアウトを容易化させることができる。
【００６０】
種類ｔｙｐｅが３入力ＮＯＲ回路の非制御値と同一であるＴＰ候補は、ＴＰ候補ＴＰ３とＴＰ候補ＴＰ４である。そこで、対応情報生成部５０５は、基準ＴＰ候補が対応付けられる入力端子以外の残余の入力端子２、３に、ＴＰ候補ＴＰ３とＴＰ候補ＴＰ４を対応付けることにより対応情報１０１を生成する。対応情報１０１は追加される共用回路の数（図５中「ｍ」で表す。）生成される。
【００６１】
図１７は、対応情報例１を示す説明図である。対応情報１０１−１は、共用回路名、入力端子名、およびＴＰ候補名のフィールドを有する。対応情報１０１−１は、入力端子１にＴＰ候補Ｔ１が対応付けられ、入力端子２にＴＰ候補ＴＰ３が対応付けられ、入力端子３にＴＰ候補ＴＰ４が対応付けられたことを示す。
【００６２】
対象回路決定部５０６は、生成された対応情報１０１−１に基づく対応付けに従って選択した共用回路が対象回路ｌｏｇに接続された回路をあらたな対象回路ｌｏｇに決定する。
【００６３】
図１８は、共用回路が接続された対象回路例１を示す説明図である。例えば、対象回路決定部５０６は、対応情報１０１−１に従って、選択された３入力ＮＯＲ回路の各入力端子にＴＰ候補が接続された回路をあらたな対象回路ｌｏｇに決定する。あらたな対象回路ｌｏｇでは、ＴＰ候補Ｔ１と３入力ＮＯＲ回路の入力端子１が接続され、ＴＰ候補ＴＰ３と３入力ＮＯＲ回路の入力端子２が接続され、ＴＰ候補ＴＰ４と３入力ＮＯＲ回路の入力端子３が接続される。
【００６４】
そして、ＴＰ候補決定部５０７は、あらたに接続された共用回路の出力端子からの信号線と、複数のＴＰ候補のうち生成された対応情報１０１によって対応付けられたＴＰ候補以外のＴＰ候補と、をあらたな観測対象のＴＰ候補に決定する。例えば、共用回路の出力端子からのＴＰ候補は、ＳＰ１である。ＴＰ候補集合ＴＰ＿ｏｂｓが示す対応情報１０１によって対応付けられたＴＰ候補以外のＴＰ候補は、ＴＰ２である。
【００６５】
そして、ＴＰ候補決定部５０７は、決定されたあらたな対象回路ｌｏｇ内の選択した共用回路の出力端子からの信号線をＴＰ候補に決定する。具体的には、ＴＰ候補決定部５０７は、共用回路の出力端子からのＴＰ候補を示す要素をＴＰ候補集合生成部５０２によって生成させる。そして、ＴＰ候補決定部５０７は、ＴＰ候補集合生成部５０２によって生成された要素をＴＰ候補集合に登録させる。
【００６６】
また、共用段数判断部５０８は、あらたな対象回路ｌｏｇ内の追加された共用回路の出力端子からの信号線が、あらたな対象回路ｌｏｇ内において所定段数以上の共用回路を介して伝搬される信号を伝搬するか否かを判断する。共用段数判断部５０８は、対応情報１０１によって対応付けたＴＰ候補を示す要素の共用段数Ｄｅｐｔｈのうち、最も大きい共用段数Ｄｅｐｔｈを特定する。共用段数判断部５０８は、特定した共用段数Ｄｅｐｔｈに１インクリメントした値を、接続された共用回路の出力端子からのＴＰ候補の共用段数Ｄｅｐｔｈとする。そして、共用段数判断部５０８は、接続された共用回路の出力端子からのＴＰ候補の共用段数Ｄｅｐｔｈが所定段数Ｄｅｐｔｈ＿ｌｉｍｉｔ以上であるか否かを判断する。所定段数Ｄｅｐｔｈ＿ｌｉｍｉｔについては、利用者によって予め定められた値であり、ディスク４０５などの記憶装置に予め記憶される。
【００６７】
また、所定段数Ｄｅｐｔｈ＿ｌｉｍｉｔ以上の共用回路を介して伝搬される信号を伝搬すると判断された場合、接続先情報生成部５０９は、接続された共用回路の出力端子からの信号線に、信号値に観測可能な観測点を接続させることを示す情報を生成する。具体的には、接続先情報生成部５０９は、接続先情報ＳＰにＴＰ候補を示す要素を登録することによって、観測点を接続させることを示す情報を生成する。接続先情報ＳＰ例については、後述する。また、所定段数Ｄｅｐｔｈ＿ｌｉｍｉｔ以上の共用回路を介して伝搬される信号を伝搬すると判断された場合、ＴＰ候補決定部５０７は、決定されたあらたな対象回路ｌｏｇ内の選択した共用回路の出力端子からの信号線をＴＰ候補にしない。
【００６８】
図１８の例では、所定段数Ｄｅｐｔｈ＿ｌｉｍｉｔ未満であると判断される。そのため、ＴＰ候補集合生成部５０２は、接続された共用回路の出力端子からのＴＰ候補を示す要素を生成する。そして、ＴＰ候補集合生成部５０２は、生成したＴＰ候補集合ＴＰ＿ｏｂｓに登録する。そして、ＴＰ候補集合生成部５０２は、ＴＰ候補集合ＴＰ＿ｏｂｓから、対応情報１０１によって対応付けられたＴＰ候補を示す要素を削除する。
【００６９】
図１９は、あらたなＴＰ候補集合例１を示す説明図である。あらたなＴＰ候補ＳＰ１を示す要素の種類ｔｙｐｅは上述した決定部によって決定され、ここでは１が設定される。ＴＰ候補ＳＰ１を示す要素のモジュール間距離Ｄｉｓｔには初期値が設定される。ＴＰ候補ＳＰ１を示す要素の共用段数には、１が設定される。そして、ＴＰ候補ＴＰ１とＴＰ候補ＴＰ３とＴＰ候補ＴＰ４との各々を示す要素はＴＰ候補集合ＴＰ＿ｏｂｓから削除される。
【００７０】
つぎに、ＴＰ候補選択部５０３は、あらたなＴＰ候補集合ＴＰ＿ｏｂｓが示すＴＰ候補の中から、いずれか一つの基準ＴＰ候補を選択する。ここでは、例えば、ＴＰ候補選択部５０３は、基準ＴＰ候補としてＴＰ候補ＴＰ２を選択する。
【００７１】
そして、共用回路選択部５０４は、順序ｏｒｄｅｒに基づいて、複数の共用回路の中から、基準ＴＰ候補の種類ｔｙｐｅと非制御値が同一の共用回路を選択する。ここでは、例えば、ＴＰ候補ＴＰ２の種類ｔｙｐｅが１であるため、共用回路選択部５０４は、３入力ＮＡＮＤ回路を選択する。
【００７２】
つぎに、対応情報生成部５０５は、上述したように対応情報１０１を生成する。ここでは、ＴＰ候補集合ＴＰ＿ｏｂｓが示すＴＰ候補の中に、種類ｔｙｐｅが１であるＴＰ候補の数が２つしかないため、３入力ＮＡＮＤ回路の入力端子３に対応付けるＴＰ候補がない。
【００７３】
そのため、共用回路選択部５０４は、複数種類の共用回路のうち以前に選択した共用回路以外の共用回路の中から、基準ＴＰ候補の種類ｔｙｐｅと非制御値が同一の共用回路をあらたに選択する。ここでは、例えば、共用回路選択部５０４は、２入力ＮＡＮＤ回路を選択する。そして、対応情報生成部５０５は、上述したように対応情報１０１を生成する。
【００７４】
図２０は、対応情報例２を示す説明図である。対応情報１０１−２は、２入力ＮＡＮＤ回路の入力端子１にＴＰ候補ＴＰ２が対応付けられ、２入力ＮＡＮＤ回路の入力端子２にＴＰ候補ＳＰ１が対応付けられたことを示す。
【００７５】
そして、上述と同様に、対象回路決定部５０６はあらたな対象回路ｌｏｇを決定し、共用段数判断部５０８は共用段数Ｄｅｐｔｈが所定数Ｄｅｐｔｈ＿ｌｉｍｉｔ以下であるか否かが判断する。
【００７６】
図２１は、共用回路が接続された対象回路例２を示す説明図である。例えば、対象回路決定部５０６は、対応情報１０１−２に従って、ＴＰ候補ＴＰ２と２入力ＮＡＮＤ回路の入力端子１とが接続され、ＴＰ候補ＳＰ１と２入力ＮＡＮＤ回路の入力端子２とが接続された回路をあらたな対象回路ｌｏｇに決定する。図２１の例では、共用段数判断部５０８は、所定段数Ｄｅｐｔｈ＿ｌｉｍｉｔ未満の共用回路を介して伝搬される信号を伝搬すると判断する。
【００７７】
そして、上述と同様に、ＴＰ候補決定部５０７とＴＰ候補集合生成部５０２とによってあらたなＴＰ候補集合ＴＰ＿ｏｂｓが生成される。
【００７８】
図２２は、あらたなＴＰ候補集合例２を示す説明図である。あらたなＴＰ候補ＳＰ２を示す要素の種類ｔｙｐｅは上述した決定部によって決定され、ここでは０が設定される。ＴＰ候補ＳＰ１を示す要素のモジュール間距離Ｄｉｓｔには初期値が設定される。ＴＰ候補ＳＰ１を示す要素の共用段数には、２が設定される。そして、ＴＰ候補ＴＰ２とＴＰ候補ＳＰ１との各々を示す要素はＴＰ候補集合ＴＰ＿ｏｂｓから削除される。
【００７９】
また、図２２のように、ＴＰ候補選択部５０３は、ＴＰ候補集合ＴＰ＿ｏｂｓが示すＴＰ候補の数が１であると、あらたにＴＰ候補を基準ＴＰ候補として選択しない。そして、接続先情報生成部５０９は、ＴＰ候補集合ＴＰ＿ｏｂｓが示すＴＰ候補に、信号値を観測可能な観測点を接続させることを示す情報を生成する。具体的には、接続先情報生成部５０９は、接続先情報ＳＰにＴＰ候補を示す要素を登録することによって、観測点を接続させることを示す情報を生成する。
【００８０】
図２３は、接続先情報例を示す説明図である。接続先情報ＳＰには、ＴＰ候補ＳＰ２の要素が登録される。
【００８１】
回路情報生成部５１０は、取得した回路情報ｌｏｇｉｎに基づいて、対象回路ｌｏｇに各対応情報１０１に従って共用回路を接続させ、対象回路ｌｏｇに接続先情報ＳＰに従って観測点を接続させたあらたな対象回路ｌｏｇを示す回路情報ｌｏｇｏｕｔを生成する。回路情報生成部５１０は、生成された回路情報ｌｏｇｏｕｔを出力する。出力形式としては、ディスク４０５などに記憶させてもよいし、ディスプレイなどの出力装置４０８へ出力してもよいし、Ｉ／Ｆ４０６によりネットワークＮＥＴを介して他の装置へ出力してもよい。
【００８２】
図２４は、観測点を接続させた後の対象回路例を示す説明図である。例えば、図２４に示すように、ＴＰ候補ＳＰ２に観測点であるＳＦＦが挿入される。これにより、ＳＦＦでＴＰ候補ＴＰ１〜ＴＰ４の値を観測させることが可能となる。
【００８３】
つぎに、論理演算の種類ごとの共用例と、複合ゲートによる共用例と、について、説明する。
【００８４】
＜ＮＡＮＤ回路による共用例＞
図２５は、ＮＡＮＤ回路による共用例を示す説明図である。図２５では、４入力ＮＡＮＤ回路を例に挙げ、α＝０として各ＴＰ候補の種類ｔｙｐｅが決定されてある。上述したように、４入力ＮＡＮＤ回路の非制御値は１であるため、対応情報生成部５０５は、４入力ＮＡＮＤ回路の各入力端子に、ＴＰ候補の種類ｔｙｐｅが１のＴＰ候補を対応付ける。
【００８５】
＜ＮＯＲ回路による共用例＞
図２６は、ＮＯＲ回路による共用例を示す説明図である。図２６の例では、α＝０として各ＴＰ候補の種類ｔｙｐｅが決定されてある。図２６では、４入力ＮＯＲ回路を例に挙げ、α＝０として各ＴＰ候補の種類ｔｙｐｅが決定されてある。上述したように、４入力ＮＯＲ回路の非制御値は０であるため、対応情報生成部５０５は、４入力ＮＯＲ回路の各入力端子に、ＴＰ候補の種類ｔｙｐｅが０のＴＰ候補を対応付ける。
【００８６】
＜ＡＮＤ−ＮＯＲ型の複合ゲートによる共用例＞
図２７は、ＡＮＤ−ＮＯＲ型の複合ゲートによる共用例を示す説明図である。図２７に示すＡＮＤ−ＮＯＲ型の複合ゲート内の入力端子は、１〜４である。例えば、入力端子１〜３への入力信号に対して行われる論理演算は、ＡＮＤである。上述したように、ＡＮＤの非制御値は１である。そのため、図２７に示すように、対応情報生成部５０５は、ＡＮＤ−ＮＯＲ型の複合ゲート内の入力端子１〜３に、種類ｔｙｐｅが１であるＴＰ候補ＴＰ１〜ＴＰ３をそれぞれ対応付ける。
【００８７】
入力端子４への入力信号に対して行われる論理演算は、ＮＯＲである。上述したように、ＮＯＲの非制御値は０である。そのため、図２７に示すように、対応情報生成部５０５は、ＡＮＤ−ＮＯＲ型の複合ゲート内の入力端子４に、種類ｔｙｐｅが０であるＴＰ候補ＴＰ４を対応付ける。
【００８８】
図２７に示すように、α＝０の場合に、ＡＮＤ−ＮＯＲ型の複合ゲート内の共用ポイントでは０可制御性が１可制御性よりも大きくなるため、共用ポイントの種類ｔｙｐｅは０となる。また、共用ポイントはＮＯＲ回路の入力端子に接続される。このため、ＡＮＤ−ＮＯＲ型の複合ゲートは共用回路として用いることができる。
【００８９】
＜ＯＲ−ＮＡＮＤ型の複合ゲートによる共用例＞
図２８は、ＯＲ−ＮＡＮＤ型の複合ゲートによる共用例を示す説明図である。図２８に示すＯＲ−ＮＡＮＤ型の複合ゲートの入力端子は、１〜４である。例えば、入力端子１〜３への入力信号に対して行われる論理演算は、ＯＲである。上述したように、ＯＲの非制御値は０である。そのため、図２８に示すように、対応情報生成部５０５は、ＯＲ−ＮＡＮＤ型の複合ゲートの入力端子１〜３に、種類ｔｙｐｅが０であるＴＰ候補ＴＰ１〜ＴＰ３をそれぞれ対応付ける。
【００９０】
また、例えば、入力端子４への入力信号に対して行われる論理演算は、ＮＡＮＤである。上述したように、ＮＡＮＤの非制御値は１である。そのため、図２８に示すように、対応情報生成部５０５は、ＯＲ−ＮＡＮＤ型の複合ゲートの入力端子４に、種類ｔｙｐｅが１であるＴＰ候補ＴＰ４を対応付ける。
【００９１】
図２８に示すように、α＝０の場合に、ＯＲ−ＮＡＮＤ型の複合ゲート内の共用ポイントでは１可制御性が０可制御性よりも大きくなるため、共用ポイントの種類ｔｙｐｅは１となる。また、共用ポイントはＮＯＲ回路の入力端子に接続される。このため、ＡＮＤ−ＮＯＲ型の複合ゲートは共用回路として用いることができる。
【００９２】
＜ＥＸＯＲ回路による共用例＞
図２９は、ＥＸＯＲ回路による共用例を示す説明図である。図２９の例では、α＝０として各ＴＰ候補の種類ｔｙｐｅが決定されてある。上述したように、ＥＸＯＲ回路の非制御値はｎｏｎｅである。（ａ）に示すように、対応情報生成部５０５は、２入力ＥＸＯＲ回路の各入力端子に、ＴＰ候補の種類ｔｙｐｅがｎｏｎｅのＴＰ候補を対応付ける。
【００９３】
（ｂ）と（ｃ）に示すように、ＴＰ候補集合ＴＰ＿ｏｂｓが示すＴＰ候補の数が複数あっても、種類ｔｙｐｅが同一でないと、共用回路としてＮＡＮＤ回路やＮＯＲ回路が選択されても、入力端子にＴＰ候補を対応付けることができない。そのため、共用回路選択回路は、ＥＸＯＲ回路を選択する。そして、対応情報生成部５０５は、他の共用回路によって共用できない残余のＴＰ候補の各々をＥＸＯＲ回路の入力端子に対応付けてもよい。
【００９４】
（実施例１にかかる設計支援装置１００が行う処理手順例）
図３０〜図３２は、実施例１にかかる設計支援装置が行う設計支援処理手順例を示すフローチャートである。設計支援装置１００は、対象回路ｌｏｇの回路情報ｌｏｇｉｎを取得する（ステップＳ３００１）。設計支援装置１００は、共用回路情報ｓｐ＿ｌｉｓｔを取得する（ステップＳ３００２）。設計支援装置１００は、ＴＰ候補情報ＴＰｄａを取得する（ステップＳ３００３）。設計支援装置１００は、ＴＰ候補情報ＴＰｄａに基づいて、ＴＰ候補集合ＴＰ＿ｏｂｓを生成する（ステップＳ３００４）。
【００９５】
設計支援装置１００は、ＴＰ候補集合ＴＰ＿ｏｂｓの各要素の種類ｔｙｐｅを決定して設定する（ステップＳ３００５）。設計支援装置１００は、ＴＰ候補集合ＴＰ＿ｏｂｓの各要素の共用段数Ｄｅｐｔｈを検出して設定する（ステップＳ３００６）。設計支援装置１００は、接続先情報ＳＰ＝φとする（ステップＳ３００７）。設計支援装置１００は、ＴＰ候補集合ＴＰ＿ｏｂｓの要素数が１より大きいか否かを判断する（ステップＳ３００８）。
【００９６】
ＴＰ候補集合ＴＰ＿ｏｂｓの要素数が１より大きくない場合（ステップＳ３００８：Ｎｏ）、設計支援装置１００は、ＴＰ候補集合の要素を接続先情報ＳＰに追加する（ステップＳ３００９）。そして、設計支援装置１００は、対象回路ｌｏｇ内の接続先情報ＳＰの各要素が示すＴＰ候補に観測点が接続された回路を示す回路情報ｌｏｇｏｕｔを生成する（ステップＳ３０１０）。つぎに、設計支援装置１００は、生成結果を出力し（ステップＳ３０１１）、一連の処理を終了する。
【００９７】
一方、ＴＰ候補集合ＴＰ＿ｏｂｓの要素数が１より大きい場合（ステップＳ３００８：Ｙｅｓ）、設計支援装置１００は、ＴＰ候補集合ＴＰ＿ｏｂｓから１つの要素を取り出し、取り出した要素を基準要素ＴＰとして選択する（ステップＳ３１０１）。設計支援装置１００は、基準要素ｔｐ以外の要素が示す残余のＴＰ候補の各々について、基準要素ｔｐが示す基準ＴＰ候補と、残余のＴＰ候補と、のモジュール間距離Ｄｉｓｔを検出して設定する（ステップＳ３１０２）。
【００９８】
設計支援装置１００は、順序ｏｒｄｅｒに基づいて、複数種類の共用回路の中から、非制御値が基準ＴＰ候補の種類と同一である論理演算を行う共用回路を選択共用回路ｓｐとして選択する（ステップＳ３１０３）。
【００９９】
設計支援装置１００は、選択共用回路ｓｐの入力端子のうち、入力信号に対して行われる論理演算の非制御値が基準ＴＰ候補の種類と同一の入力端子のいずれか一つの入力端子に、基準ＴＰ候補を対応付ける（ステップＳ３１０４）。設計支援装置１００は、基準ＴＰ候補以外のＴＰ候補のうち、モジュール間距離Ｄｉｓｔが閾値Ｄｉｓｔ＿ｌｉｍｉｔ以下であるＴＰ候補を特定する（ステップＳ３１０５）。設計支援装置１００は、選択共用回路ｓｐの入力端子のうち、対応付けられていない入力端子の各々に、特定したＴＰ候補のうち、ＴＰ候補の種類ｔｙｐｅが入力端子の非制御値と同一のＴＰ候補を対応付けることにより対応情報１０１を生成する（ステップＳ３１０６）。
【０１００】
設計支援装置１００は、選択共用回路ｓｐの入力端子のすべてにＴＰ候補が対応付けられたか否かを判断する（ステップＳ３１０７）。少なくともいずれか一つの入力端子にＴＰ候補が対応付けられていないと判断された場合（ステップＳ３１０７：Ｎｏ）、設計支援装置１００は、未選択の共用回路の中で、非制御値が基準ＴＰ候補の種類ｔｙｐｅと同じ論理演算を行う共用回路があるか否かを判断する（ステップＳ３１０８）。
【０１０１】
共用回路があると判断された場合（ステップＳ３１０８：Ｙｅｓ）、設計支援装置１００は、順序ｏｒｄｅｒに基づいて共用回路を選択共用回路ｓｐとして選択し（ステップＳ３１０９）、ステップＳ３１０４へ戻る。一方、共用回路がないと判断された場合（ステップＳ３１０８：Ｎｏ）、設計支援装置１００は、基準ＴＰ候補の種類ｔｙｐｅがｎｏｎｅであるか否かを判断する（ステップＳ３１１０）。
【０１０２】
ｎｏｎｅであると判断された場合（ステップＳ３１１０：Ｙｅｓ）、設計支援装置１００は、基準要素ｔｐを接続先情報ＳＰに追加し（ステップＳ３１１１）、ステップＳ３００８へ移行する。一方、ｎｏｎｅでないと判断された場合（ステップＳ３１１０：Ｎｏ）、設計支援装置１００は、基準ＴＰ候補の種類ｔｙｐｅをｎｏｎｅに変更し（ステップＳ３１１２）、ステップＳ３１０７へ戻る。
【０１０３】
一方、ステップＳ３１０７において、対応付けられたと判断された場合（ステップＳ３１０７：Ｙｅｓ）、設計支援装置１００は、対応情報１０１に従って対象回路ｌｏｇに選択共用回路ｓｐが接続された回路をあらたな対象回路ｌｏｇに決定する（ステップＳ３２０１）。設計支援装置１００は、決定したあらたな対象回路ｌｏｇを示す回路情報ｌｏｇｉｎを生成する（ステップＳ３２０２）。
【０１０４】
設計支援装置１００は、接続された選択共用回路ｓｐの出力端子からの信号線をＴＰ候補として要素を生成する（ステップＳ３２０３）。そして、設計支援装置１００は、生成した要素の種類ｔｙｐｅを決定して設定する（ステップＳ３２０４）。つぎに、設計支援装置１００は、生成した要素の共用段数Ｄｅｐｔｈを検出して設定する（ステップＳ３２０５）。設計支援装置１００は、共用段数Ｄｅｐｔｈが所定段数Ｄｅｐｔｈ＿ｌｉｍｉｔ以下であるか否かを判断する（ステップＳ３２０６）。
【０１０５】
共用段数Ｄｅｐｔｈが所定段数Ｄｅｐｔｈ＿ｌｉｍｉｔ以下であると判断された場合（ステップＳ３２０６：Ｙｅｓ）、設計支援装置１００は、生成した要素をＴＰ候補集合ＴＰ＿ｏｂｓに追加する（ステップＳ３２０７）。一方、共用段数Ｄｅｐｔｈが所定段数Ｄｅｐｔｈ＿ｌｉｍｉｔ以下でないと判断された場合（ステップＳ３２０６：Ｎｏ）、設計支援装置１００は、生成した要素を接続先情報ＳＰに追加する（ステップＳ３２０８）。
【０１０６】
ステップＳ３２０７またはステップＳ３２０８のつぎに、設計支援装置１００は、ＴＰ候補集合ＴＰ＿ｏｂｓの中から、対応付けられたＴＰ候補を示す要素を削除し（ステップＳ３２０９）、ステップＳ３１０１へ移行する。
【０１０７】
以上実施例１で説明したように、設計支援装置１００は、ＥＸＯＲ回路より面積を削減可能な種類を含む複数種類の共用回路から、選択した観測対象の信号線の可制御性に基づく値と非制御値が同一の演算を行う共用回路を選択する。設計支援装置１００は、選択した共用回路の各入力端子に、信号線の可制御性に基づく値が入力端子への信号に対する論理演算の非制御値と同一の信号線を対応付ける。これにより、信号線の値が観測可能な範囲で共用回路に要する面積の削減を図る。
【０１０８】
また、設計支援装置１００は、選択した共用回路の入力端子のいずれかに信号線を対応付けられない場合、あらたに共用回路を選択する。これにより、共用回路のすべての入力端子に信号線を対応付けることができる。したがって、観測対象の信号線の数に応じて共用回路が選択され、共用回路に要する面積をより削減させることができる。
【０１０９】
また、設計支援装置１００は、複数種類の共用回路から、選択した信号線の可制御性に基づく値と非制御値が同一の演算を行う共用回路を面積の削減効果が大きい順序ｏｒｄｅｒに基づいて選択する。これにより、共用回路に要する面積をより削減させることができる。
【０１１０】
また、設計支援装置１００は、対象回路ｌｏｇに選択した共用回路が対応情報１０１に従って接続された回路をあらたな対象回路ｌｏｇにし、接続された共用回路の出力端子からの信号線をあらたな観測対象にする。これにより、より多くの信号線が同一の観測点を共用することができ、共用回路に要する面積をより削減させることができる。
【０１１１】
また、設計支援装置１００は、観測対象の信号線の値が観測点に伝搬されるまでにある共用回路を所定数以下とする。これにより、観測点を共用する信号線の数の増大を抑止し、観測点での信号線の値の観測のし易さが低下することを抑止することができる。
【０１１２】
また、設計支援装置１００は、選択した信号線と選択した信号線以外の観測対象の信号線とのモジュール間を跨ぐ数が閾値以下である信号線の中から、選択した共用回路の入力端子に対応付ける信号線を決定する。これにより、レイアウトによって近くに配置される可能性が高い信号線同士に観測点を共用させることができる。したがって、レイアウトのし易さが共用回路の接続によって低下することを抑止することができる。
【０１１３】
（実施例２）
ＥＸＯＲ回路より面積を削減可能な種類を含む複数種類の共用回路から選択した共用回路の各入力端子に、可制御性に基づく値が入力端子への入力信号に対して行われる演算の非制御値と同じ信号線を対応付ける。これにより、対象回路ｌｏｇの面積の削減を図りつつ、信号線の値を観測可能にする。また、実施例２では、１つのＴＰ候補を選択した後に、選択したＴＰ候補の種類ｔｙｐｅにも基づいて共用回路を選択する。一方、実施例１では、１つの共用回路を選択した後に、選択した共用回路が行う演算の非制御値に基づいてＴＰ候補を選択する。
【０１１４】
共用回路選択部５０４は、順序ｏｒｄｅｒに基づいて、複数種類の共用回路から共用回路を選択する。つぎに、ＴＰ候補選択部５０３は、種類ｔｙｐｅが選択した共用回路が行う論理演算の非制御値と同一のＴＰ候補を基準ＴＰ候補として選択する。また、共用回路選択部５０４とＴＰ候補選択部５０３以外の部についての詳細は実施例１と同一であるため、詳細な説明を省略する。
【０１１５】
（実施例２にかかる設計支援装置１００が行う処理手順例）
図３３と図３４は、実施例２にかかる設計支援装置が行う設計支援処理手順例を示すフローチャートである。設計支援装置１００は、対象回路ｌｏｇの回路情報を取得する（ステップＳ３３０１）。設計支援装置１００は、共用回路情報ｓｐ＿ｌｉｓｔを取得する（ステップＳ３３０２）。設計支援装置１００は、ＴＰ候補情報ＴＰｄａを取得する（ステップＳ３３０３）。設計支援装置１００は、ＴＰ候補情報ＴＰｄａに基づいて、ＴＰ候補集合ＴＰ＿ｏｂｓを生成する（ステップＳ３３０４）。
【０１１６】
設計支援装置１００は、ＴＰ候補集合ＴＰ＿ｏｂｓの各要素の種類ｔｙｐｅを決定して設定する（ステップＳ３３０５）。設計支援装置１００は、ＴＰ候補集合ＴＰ＿ｏｂｓの各要素の共用段数Ｄｅｐｔｈを検出して設定する（ステップＳ３３０６）。設計支援装置１００は、接続先情報ＳＰ＝φとする（ステップＳ３３０７）。設計支援装置１００は、未選択の共用回路があるか否かを判断する（ステップＳ３３０８）。
【０１１７】
未選択の共用回路がないと判断された場合（ステップＳ３３０８：Ｎｏ）、設計支援装置１００は、ＴＰ候補集合ＴＰ＿ｏｂｓの要素を接続先情報ＳＰに追加する（ステップＳ３３０９）。そして、設計支援装置１００は、対象回路ｌｏｇ内の接続先情報ＳＰの各要素が示すＴＰ候補に観測点が接続された回路を示す回路情報を生成する（ステップＳ３３１０）。設計支援装置１００は、生成結果を出力し（ステップＳ３３１１）、一連の処理を終了する。
【０１１８】
一方、未選択の共用回路があると判断された場合（ステップＳ３３０８：Ｙｅｓ）、設計支援装置１００は、未選択の共用回路から、順序ｏｒｄｅｒに基づいて、共用回路を選択する（ステップＳ３４０１）。設計支援装置１００は、ＴＰ候補集合ＴＰ＿ｏｂｓのうち種類ｔｙｐｅが、共用回路が行う論理演算の非制御値と同じ要素を基準要素ｔｐとして選択する（ステップＳ３４０２）。
【０１１９】
設計支援装置１００は、選択できたか否かを判断する（ステップＳ３４０３）。選択できた場合（ステップＳ３４０３：Ｙｅｓ）、設計支援装置１００は、基準要素ｔｐ以外の要素が示す残余のＴＰ候補の各々について、基準要素ｔｐが示す基準ＴＰ候補と、残余のＴＰ候補と、のモジュール間距離Ｄｉｓｔを検出して設定する（ステップＳ３４０４）。
【０１２０】
設計支援装置１００は、選択共用回路ｓｐの入力端子のうち、入力信号に対して行われる論理演算の非制御値が基準ＴＰ候補の種類と同一の入力端子のいずれか一つの入力端子に、基準ＴＰ候補を対応付ける（ステップＳ３４０５）。設計支援装置１００は、基準ＴＰ候補以外のＴＰ候補のうち、モジュール間距離Ｄｉｓｔが閾値Ｄｉｓｔ＿ｌｉｍｉｔ以下であるＴＰ候補を特定する（ステップＳ３４０６）。設計支援装置１００は、選択共用回路ｓｐの入力端子のうち、対応付けられていない入力端子の各々に、特定したＴＰ候補のうち、ＴＰ候補の種類ｔｙｐｅが入力端子の非制御値と同一のＴＰ候補を対応付けることにより対応情報１０１を生成する（ステップＳ３４０７）。
【０１２１】
設計支援装置１００は、選択共用回路ｓｐの入力端子のすべてにＴＰ候補が対応付けられたか否かを判断する（ステップＳ３４０８）。少なくともいずれか一つの入力端子にＴＰ候補が対応付けられていないと判断された場合（ステップＳ３４０８：Ｎｏ）、設計支援装置１００は、ＴＰ候補集合の要素数が１より大きいか否かを判断する（ステップＳ３４０９）。ＴＰ候補集合Ｔｐ＿ｏｂｓの要素数が１より大きいと判断された場合（ステップＳ３４０９：Ｙｅｓ）、設計支援装置１００は、ステップＳ３３０８へ戻る。ＴＰ候補集合Ｔｐ＿ｏｂｓの要素数が１以下であると判断された場合（ステップＳ３４０９：Ｎｏ）、設計支援装置１００は、基準ＴＰ候補を示す要素ｔｐを接続先情報ＳＰに追加し（ステップＳ３４１０）、ステップＳ３３０８へ移行する。
【０１２２】
一方、ステップＳ３４０８において、選択共用回路ｓｐの入力端子のすべてにＴＰ候補が対応付けられたと判断された場合（ステップＳ３４０８：Ｙｅｓ）、ステップＳ３２０１へ移行する。ステップＳ３２０１〜ステップＳ３２０９の処理については、図３２に示した処理と同一であるため、詳細な説明を省略する。実施例２では、ステップＳ３２０９のつぎに、ステップＳ３４０１へ戻る。
【０１２３】
ステップＳ３４０３において、選択できなかった場合（ステップＳ３４０３：Ｎｏ）、設計支援装置１００は、選択した共用回路がＥＸＯＲ回路であるか否かを判断する（ステップＳ３４１１）。選択した共用回路がＥＸＯＲ回路であると判断された場合（ステップＳ３４１１：Ｙｅｓ）、設計支援装置１００は、ＴＰ候補集合の各要素の種類をｎｏｎｅに変更し（ステップＳ３４１２）、ステップＳ３４０２へ戻る。選択した共用回路がＥＸＯＲ回路でないと判断された場合（ステップＳ３４１１：Ｎｏ）、設計支援装置１００は、ステップＳ３３０８へ戻る。
【０１２４】
以上実施例２で説明したように、設計支援装置１００は、ＥＸＯＲより面積を削減可能な種類を含む複数種類の共用回路から選択した共用回路の入力端子に、観測対象の信号線のうち、可制御性に基づく値が共用回路の演算の非制御値と同じ信号線を対応付ける。これにより、対象回路ｌｏｇの面積の削減を図りつつ、信号線の値を観測可能にする。
【０１２５】
また、設計支援装置１００は、可制御性に基づく値が、選択した共用回路の演算の非制御値と同じ信号線を選択する。そして、設計支援装置１００は、選択した信号線と残余の信号線とがモジュール間を跨ぐ数が所定数以下となる信号線の中から、選択した信号線以外で共用回路の入力端子に対応付ける信号線を決定する。
【０１２６】
（故障検出）
ここで、図３５に示す半導体集積回路の故障検出の一例を説明する。
【０１２７】
図３５は、半導体集積回路例を示す説明図である。半導体集積回路３５０１は、被試験回路３５０２と、共用回路としてＮＯＲ回路３５０３とＮＡＮＤ回路３５０４を有する。また、半導体集積回路３５０１は、ＥＸＯＲ回路３５０５、ＳＦＦ３５０６，３５０７，３５０８，３５０９を有する。
【０１２８】
被試験回路３５０２は、複数の組み合わせ回路３５２１，３５２２，３５２３，３５２４，３５２５を有する。なお、図３５において表記されている、信号線ＴＡ１，ＴＡ２，ＴＡ３，ＴＡ４，ＴＡ５，ＴＡ６の参照符号横の括弧内の数値は、その信号線の０可制御性と１可制御性を示している。括弧内の左側の数値が０可制御性の値であり、右側の数値が１可制御性の値である。
【０１２９】
図３５の半導体集積回路３５０１の例では、信号線ＴＡ１〜ＴＡ４が被試験回路３５０２における観測対象の信号線である。ＮＯＲ回路３５０３は、被試験回路３５０２の観測対象の信号線ＴＡ１，ＴＡ２を入力端子に接続し、信号線ＴＡ１，ＴＡ２を伝搬する値の否定論理和を演算し、信号線ＴＡ１，ＴＡ２のいずれかを伝搬する値に応じた出力値を出力する。
【０１３０】
ＮＯＲ回路３５０３は、一方の入力端子に入力される値が０のとき、他方の入力端子に入力される値を反転した値を出力する。そのため、例えば、信号線ＴＡ２の値が０のとき、ＮＯＲ回路３５０３は、信号線ＴＡ１を伝搬する値に応じた出力値を出力することになる。また、信号線ＴＡ１の値が０のとき、ＮＯＲ回路３５０３は、信号線ＴＡ２を伝搬する値に応じた出力値を出力することになる。
【０１３１】
ＮＡＮＤ回路３５０４は、被試験回路３５０２の観測対象の信号線ＴＡ３，ＴＡ４を入力端子に接続し、信号線ＴＡ３，ＴＡ４を伝搬する値の否定論理積を演算し、信号線ＴＡ３，ＴＡ４のいずれかを伝搬する値に応じた出力値を出力する。ＮＡＮＤ回路３５０４は、一方の入力端子に入力される値が１のとき、他方の入力端子に入力される値を反転した値を出力する。そのため、例えば、信号線ＴＡ４の値が１のとき、ＮＡＮＤ回路３５０４は、信号線ＴＡ３を伝搬する値に応じた出力値を出力することになる。また、信号線ＴＡ３の値が１のとき、ＮＡＮＤ回路３５０４は、信号線ＴＡ４を伝搬する値に応じた出力値を出力することになる。
【０１３２】
ＥＸＯＲ回路３５０５は、ＮＯＲ回路３５０３とＮＡＮＤ回路３５０４の出力値を信号線ＴＡ５，ＴＡ６を介して入力して、いずれかの出力値に応じた値を出力する。例えば、試験時において、半導体集積回路３５０１に入力されるテストパターンによって、ＮＡＮＤ回路３５０４の出力値が０に固定されている場合、ＥＸＯＲ回路３５０５からは、ＮＯＲ回路３５０３の出力値が出力される。ＮＡＮＤ回路３５０４の出力値が１に固定されている場合、ＥＸＯＲ回路３５０５からは、ＮＯＲ回路３５０３の出力値を反転した値が出力される。
【０１３３】
ＳＦＦ３５０６，３５０７，３５０８，３５０９は、データ端子Ｄ、スキャンイン端子ＳＩＮ、スキャンモード端子ＳＭ、クロック端子ＣＫ、出力端子Ｑを有している。データ端子Ｄ以外の各端子の接続関係などは図示を省略しているが、ＳＦＦ３５０６〜３５０９は、複数のＳＦＦが直列に接続されたシフトレジスタとして機能するスキャンチェーンの一部となっている。そのため、ＳＦＦ３５０６〜３５０９に取り込まれた（キャプチャされた）値は、外部から観測可能となっている。
【０１３４】
ＳＦＦ３５０６〜３５０８は、それぞれ、組み合わせ回路３５２３〜３５２５の出力値を取り込み、ＳＦＦ３５０９は、ＥＸＯＲ回路３５０５の出力値を取り込む。
【０１３５】
半導体集積回路３５０１の動作を以下に説明する。信号線ＴＡ１に発生する故障（０縮退故障など）を検出する場合、例えば、信号線ＴＡ２，ＴＡ６の値が０になるようなテストパターンが半導体集積回路３５０１に入力される。これにより、信号線ＴＡ１を伝搬する値に応じた出力値が、ＮＯＲ回路３５０３、ＥＸＯＲ回路３５０５を介してＳＦＦ３５０９に取り込まれ、信号線ＴＡ１に発生する故障が検出可能になる。
【０１３６】
信号線ＴＡ２に発生する故障を検出する場合、例えば、信号線ＴＡ１，ＴＡ６の値が０になるようなテストパターンが半導体集積回路３５０１に入力される。これにより、信号線ＴＡ２を伝搬する値に応じた出力値が、ＮＯＲ回路３５０３、ＥＸＯＲ回路３５０５を介してＳＦＦ３５０９に取り込まれ、信号線ＴＡ２に発生する故障が検出可能になる。
【０１３７】
信号線ＴＡ３に発生する故障を検出する場合、例えば、信号線ＴＡ４，ＴＡ５の値が１になるようなテストパターンが半導体集積回路３５０１に入力される。これにより、信号線ＴＡ３を伝搬する値に応じた出力値が、ＮＡＮＤ回路３５０４、ＥＸＯＲ回路３５０５を介してＳＦＦ３５０９に取り込まれ、信号線ＴＡ３に発生する故障が検出可能になる。
【０１３８】
信号線ＴＡ４に発生する故障を検出する場合、例えば、信号線ＴＡ３，ＴＡ５の値が１になるようなテストパターンが半導体集積回路３５０１に入力される。これにより、信号線ＴＡ４を伝搬する値に応じた出力値が、ＮＡＮＤ回路３５０４、ＥＸＯＲ回路３５０５を介してＳＦＦ３５０９に取り込まれ、信号線ＴＡ４に発生する故障が検出可能になる。
【０１３９】
以上のように、半導体集積回路３５０１は、複数の信号線の各信号値を、ＮＯＲ回路３５０３、ＮＡＮＤ回路３５０４を用いて検出するため、ＥＸＯＲ回路により複数の信号線の各信号値を検出するよりも、共用回路に要する面積を削減することができる。
【０１４０】
図３６は、信号線ＴＡ１の０縮退故障の観測時の半導体集積回路の各部の信号の一例を示すタイミングチャートである。ここでは、例えば、信号線ＴＡ１に発生する０縮退故障を観測する場合の半導体集積回路３５０１の動作について説明する。図３６では、動作モード、サイクル、クロック信号、信号線ＴＡ１〜ＴＡ６の値、ＥＸＯＲ回路３５０５の出力、ＳＦＦ３５０９に取り込まれる値の例が示されている。なお、点線で示されている信号値は、信号線ＴＡ１の０縮退故障が発生している際の信号値の例を示している。
【０１４１】
動作モードには、図３５に示したようなＳＦＦ３５０６〜３５０９を含む複数のＳＦＦが直列に接続されたシフトレジスタをスキャンシフト動作させるモードと、通常の動作モード（図３６ではキャプチャと示している。）を有する。モード間の切り替えは、ＳＦＦ３５０６〜３５０９のスキャンモード端子ＳＭに入力される制御信号により行われる。
【０１４２】
スキャンシフト動作の開始時は、各信号線ＴＡ１〜ＴＡ６，ＥＸＯＲ回路３５０５の出力、ＳＦＦ３５０９の値は、Ｘ（不定値）となっている。図３６では、スキャンシフト動作中の信号の詳細は図示を省略している。
【０１４３】
スキャンシフト動作の最後のサイクルｎ−１では、例えば、ＣＰＵ４０１により信号線ＴＡ１が１と設定されるようなテストパターンがスキャンイン（シフトレジスタに入力）される（タイミングｔ１）。
【０１４４】
このとき、信号線ＴＡ１の故障を検出するため、ＮＯＲ回路３５０３が信号線ＴＡ１の状態に応じた値を伝搬するように、ＮＯＲ回路３５０３のサイドインプットが非制御値の０に設定される。つまり、信号線ＴＡ２が０に設定される。
【０１４５】
また、ＮＯＲ回路３５０３から出力される信号線ＴＡ１の状態に応じた値を、ＥＸＯＲ回路３５０５が伝搬するように、ＥＸＯＲ回路３５０５のサイドインプットが０または１に設定される。ＥＸＯＲ回路３５０５は、制御値がないため、サイドインプットが０でも１でも、ある入力端子に入力される信号に応じた値を出力できるからである。ただし、信号線ＴＡ６は、図３５に示したように０可制御性が１可制御性よりも大きいため、図３６の例では、０に設定されるものとしている。また、信号線ＴＡ６を０にするため、信号線ＴＡ３，ＴＡ４が、ともに１に設定されている。
【０１４６】
信号線ＴＡ１が正常な場合、信号線ＴＡ１を伝搬する値である１と信号線ＴＡ２を伝搬する値である０の否定論理和がＮＯＲ回路３５０３から出力され、信号線ＴＡ５の値は０である。そして、信号線ＴＡ５を伝搬する値である０と信号線ＴＡ６を伝搬する値である０の排他的論理和の演算結果である０がＥＸＯＲ回路３５０５から出力され、キャプチャ動作時（サイクルｎ）でＳＦＦ３５０９に取り込まれる値も０のままである。
【０１４７】
これに対し、信号線ＴＡ１に０縮退故障が発生している場合、ＮＯＲ回路３５０３の２つの入力値が両方０になるため、ＮＯＲ回路３５０３の出力値が１となり、信号線ＴＡ５の値は１となる。そして、ＥＸＯＲ回路３５０５の２つの入力値が１と０になるため、ＥＸＯＲ回路３５０５からの出力値が１となり、キャプチャ動作時（サイクルｎ）のクロック信号の立ち上がりでＳＦＦ３５０９には１が取り込まれる（タイミングｔ２）。その後、サイクルｎ＋１以降のスキャンシフト動作により、ＳＦＦ３５０９に取り込まれた値が、例えば、半導体集積回路３５０１の図示しない外部端子から出力され、信号線ＴＡ１の０縮退故障が検出される。
【０１４８】
つぎに、図３５の信号線ＴＡ３に発生する１縮退故障を観測する場合の半導体集積回路３５０１の動作の一例を、図３７を用いて説明する。
【０１４９】
図３７は、信号線ＴＡ３の１縮退故障の観測時の半導体集積回路の各部の信号の一例を示すタイミングチャートである。図３７では、動作モード、サイクル、クロック信号、信号線ＴＡ１〜ＴＡ６の値、ＥＸＯＲ回路３５０５の出力、ＳＦＦ３５０９に取り込まれる値の例が示されている。なお、点線で示されている信号値は、信号線ＴＡ３の１縮退故障が発生している際の信号値の例を示している。
【０１５０】
スキャンシフト動作の開始時は、各信号線ＴＡ１〜ＴＡ６，ＥＸＯＲ回路３５０５の出力、ＳＦＦ３５０９の値は、Ｘとなっている。図３７でも、スキャンシフト動作中の信号の詳細は図示を省略している。
【０１５１】
スキャンシフト動作の最後のサイクルｎ−１では、例えば、ＣＰＵ４０１により信号線ＴＡ３が０と設定されるようなテストパターンがスキャンイン（シフトレジスタに入力）される（タイミングｔ１）。
【０１５２】
このとき、信号線ＴＡ３の故障を検出するため、ＮＡＮＤ回路３５０４が信号線ＴＡ３の状態に応じた値を伝搬するように、ＮＡＮＤ回路３５０４のサイドインプットが非制御値の１に設定される。つまり、信号線ＴＡ４が１に設定される。
【０１５３】
また、ＮＡＮＤ回路３５０４から出力される信号線ＴＡ３の状態に応じた値を、ＥＸＯＲ回路３５０５が伝搬するように、ＥＸＯＲ回路３５０５のサイドインプットが０または１に設定される。信号線ＴＡ５は、図３５に示したように１可制御性が０可制御性よりも大きいため、図３７の例では、１に設定されるものとしている。また、信号線ＴＡ５を１にするため、信号線ＴＡ１，ＴＡ２が、ともに０に設定されている。
【０１５４】
信号線ＴＡ３が正常な場合、信号線ＴＡ３を伝搬する値である０と信号線ＴＡ４を伝搬する値である１の否定論理積がＮＡＮＤ回路３５０４から出力され、信号線ＴＡ６の値は１である。そして、信号線ＴＡ５を伝搬する値である１と信号線ＴＡ６を伝搬する値である１の排他的論理和の演算結果である０がＥＸＯＲ回路３５０５から出力され、キャプチャ動作時（サイクルｎ）でＳＦＦ３５０９に取り込まれる値が０となる（タイミングｔ２）。
【０１５５】
これに対し、信号線ＴＡ３に１縮退故障が発生している場合、ＮＡＮＤ回路３５０４の２つの入力値が両方１になるため、出力値が０となり、信号線ＴＡ６の値は０となる。そして、ＥＸＯＲ回路３５０５の２つの入力値が１と０になるため、出力値が１となり、キャプチャ動作時（サイクルｎ）のクロック信号の立ち上がりであるタイミングｔ２では、ＳＦＦ３５０９に１が取り込まれる。その後、サイクルｎ＋１以降のスキャンシフト動作により、ＳＦＦ３５０９に取り込まれた値が、例えば、半導体集積回路３５０１の図示しない外部端子から出力され、信号線ＴＡ３の１縮退故障が検出される。以上のような、故障検出によって、被試験回路３５０２における信号線ＴＡ１〜ＴＡ４の各種故障を検出することができる。
【０１５６】
なお、本実施の形態で説明した設計支援方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本設計支援プログラムは、ディスク４０５、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）フラッシュメモリ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また本設計支援プログラムは、インターネット等のネットワークＮＥＴを介して配布してもよい。
【０１５７】
上述した実施の形態に関し、さらに以下の付記を開示する。
【０１５８】
（付記１）コンピュータが、
信号値を観測可能な観測点を複数の信号線に共用させる共用回路であって、複数種類の論理演算の少なくともいずれかを行う複数種類の共用回路を示す共用回路情報を取得し、
対象回路内の観測対象の信号線の各々について、前記信号線の値を特定の値とする制御のしやすさを示す可制御性に基づく値を決定し、
取得した前記共用回路情報に基づいて、前記複数種類の共用回路の中からいずれか一つの共用回路を選択し、
選択した前記共用回路の入力端子の各々について、前記観測対象の信号線のうち、前記信号線について決定した前記値が前記入力端子への入力信号に対して行われる論理演算の非制御値と同一である信号線を対応付けた対応情報を生成する、
処理を実行することを特徴とする設計支援方法。
【０１５９】
（付記２）前記コンピュータが、
前記対応情報を生成する処理において、選択した前記共用回路の入力端子の少なくともいずれか一つの入力端子に、前記観測対象の信号線の中のいずれの信号線も対応付けられない場合、取得した前記共用回路情報に基づいて、前記複数種類の共用回路のうち、以前に選択した前記共用回路以外の共用回路の中からいずれか一つの共用回路をあらたに選択し、
あらたに選択した前記共用回路の入力端子の各々について、前記観測対象の信号線のうち、前記信号線について決定した前記値が前記入力端子への入力信号に対して行われる論理演算の非制御値と同一である信号線を対応付けた対応情報を生成する、
処理を実行することを特徴とする付記１に記載の設計支援方法。
【０１６０】
（付記３）前記共用回路情報は、前記複数種類の共用回路の各々についての前記共用回路の面積と前記共用回路の入力端子数とに基づく前記複数種類の共用回路における各共用回路の順序を示し、
前記共用回路を選択する処理では、
取得した前記共用回路情報が示す前記順序に基づいて、前記複数種類の共用回路の中からいずれか一つの共用回路を選択することを特徴とする付記１または２に記載の設計支援方法。
【０１６１】
（付記４）前記コンピュータが、
生成した前記対応情報による対応付けに従って選択した前記共用回路が前記対象回路に接続された回路をあらたな対象回路に決定し、
決定した前記あらたな対象回路内の選択した前記共用回路の出力端子からの信号線と、前記観測対象の信号線のうち生成した前記対応情報によって対応付けられた信号線以外の信号線と、をあらたな観測対象の信号線に決定し、
前記あらたな観測対象の信号線の各々について、前記可制御性に基づく値を決定し、
取得した前記共用回路情報に基づいて、前記複数種類の共用回路の中からいずれか一つの第２共用回路を選択し、
選択した前記第２共用回路の入力端子の各々について、前記あらたな観測対象の信号線のうち、前記信号線について決定した前記値が前記入力端子への入力信号に対して行われる論理演算の非制御値と同一である信号線を対応付けた第２対応情報を生成する、
処理を実行することを特徴とする付記１〜３のいずれか一つに記載の設計支援方法。
【０１６２】
（付記５）前記コンピュータが、
前記あらたな対象回路内の追加された前記共用回路の出力端子からの信号線が、前記あらたな対象回路内において所定段数以上の共用回路を介して伝搬される信号を伝搬するか否かを判断し、
前記所定段数以上の共用回路を介して伝搬される信号を伝搬する場合、前記あらたな対象回路内の選択した前記共用回路の出力端子からの信号線に、信号値を観測可能な観測点を接続させることを示す情報を生成する、
処理を実行し、
前記あらたな観測対象の信号線を決定する処理では、
前記所定段数以上の共用回路を介して伝搬される信号を伝搬する場合、前記あらたな観測対象の信号線に、追加された前記共用回路の出力端子からの信号線を含めないことを特徴とする付記４に記載の設計支援方法。
【０１６３】
（付記６）前記コンピュータが、
前記観測対象の信号線のうちのいずれか一つの信号線を選択する処理を実行し、
前記共用回路を選択する処理では、
取得した前記共用回路情報に基づいて、選択した前記信号線について決定した前記値と非制御値が同一である論理演算を行う共用回路を前記複数種類の共用回路の中から選択し、
前記対応情報を生成する処理では、
選択した前記共用回路の入力端子の各々について、前記観測対象の信号線のうち、前記信号線について決定した前記値が前記入力端子への入力信号に対して行われる論理演算の非制御値と同一である信号線を対応付けた対応情報であって、選択した前記共用回路の入力端子のうちのいずれか一つの入力端子に選択した前記信号線を対応付けた対応情報を生成することを特徴とする付記１〜５のいずれか一つに記載の設計支援方法。
【０１６４】
（付記７）前記コンピュータが、
前記観測対象の信号線のうち、前記信号線について決定した前記値が選択した前記共用回路が行う論理演算の非制御値と同一の信号線の中から、いずれか一つの信号線を選択する処理を実行し、
前記対応情報を生成する処理では、
選択した前記共用回路の入力端子の各々について、前記観測対象の信号線のうち、前記信号線について決定した前記値が前記入力端子への入力信号に対して行われる論理演算の非制御値と同一である信号線を対応付けた対応情報であって、選択した前記共用回路の入力端子のうちのいずれか一つの入力端子に選択した前記信号線を対応付けた対応情報を生成することを特徴とする付記１〜５のいずれか一つに記載の設計支援方法。
【０１６５】
（付記８）前記対応情報を生成する処理では、
選択した前記共用回路の入力端子の中で、入力信号に対して行われる論理演算の非制御値が、選択した前記信号線について決定した前記値と同一である入力端子のうちのいずれか一つの入力端子に選択した前記信号線を対応付け、
選択した前記共用回路の入力端子のうちの前記いずれか一つの入力端子以外の入力端子の各々に対して、前記観測対象の信号線のうちの選択した前記信号線以外の信号線の中で、前記信号線について決定した前記値が、前記入力端子への入力信号に対して行われる論理演算の非制御値と同一である信号線のうちのいずれか一つの信号線を対応付ける、
ことにより前記対応情報を生成することを特徴とする付記６または７に記載の設計支援方法。
【０１６６】
（付記９）前記コンピュータが、
前記対象回路内のセルと前記セル間の接続関係を示す回路情報を取得し、
前記観測対象の信号線のうちの選択した前記信号線以外の信号線の各々について、前記信号線を含む前記対象回路内のモジュールと、選択した前記信号線を含む前記対象回路内のモジュールと、の間に介在する前記対象回路内のモジュールの数を、取得した前記回路情報に基づいて検出する、
処理を実行し、
前記対応情報を生成する処理では、
前記いずれか一つの入力端子以外の入力端子の各々に対して、選択した前記信号線以外の信号線の中で、検出した前記モジュールの数が閾値以下である信号線のうちのいずれか一つの信号線を対応付けることにより前記対応情報を生成することを特徴とする付記６〜８のいずれか一つに記載の設計支援方法。
【０１６７】
（付記１０）コンピュータに、
信号値を観測可能な観測点を複数の信号線に共用させる共用回路であって、複数種類の論理演算の少なくともいずれかを行う複数種類の共用回路を示す共用回路情報を取得し、
対象回路内の観測対象の信号線の各々について、前記信号線の値を特定の値とする制御のしやすさを示す可制御性に基づく値を決定し、
取得した前記共用回路情報に基づいて、前記複数種類の共用回路の中からいずれか一つの共用回路を選択し、
選択した前記共用回路の入力端子の各々について、前記観測対象の信号線のうち、前記信号線について決定した前記値が前記入力端子への入力信号に対して行われる論理演算の非制御値と同一である信号線を対応付けた対応情報を生成する、
処理を実行させることを特徴とする設計支援プログラム。
【０１６８】
（付記１１）信号値を観測可能な観測点を複数の信号線に共用させる共用回路であって、複数種類の論理演算の少なくともいずれかを行う複数種類の共用回路を示す共用回路情報を取得する取得部と、
対象回路内の観測対象の信号線の各々について、前記信号線の値を特定の値とする制御のしやすさを示す可制御性に基づく値を決定する種類決定部と、
前記取得部が取得した前記共用回路情報に基づいて、前記複数種類の共用回路の中からいずれか一つの共用回路を選択する共用回路選択部と、
前記共用回路選択部が選択した前記共用回路の入力端子の各々について、前記観測対象の信号線のうち、前記信号線について前記種類決定部が決定した前記値が前記入力端子への入力信号に対して行われる論理演算の非制御値と同一である信号線を対応付けた対応情報を生成する対応情報生成部と、
を有することを特徴とする設計支援装置。
【０１６９】
（付記１２）信号値を観測可能な観測点を複数の信号線に共用させる共用回路であって、複数種類の論理演算の少なくともいずれかを行う複数種類の共用回路を示す共用回路情報を取得し、
対象回路内の観測対象の信号線の各々について、前記信号線の値を特定の値とする制御のしやすさを示す可制御性に基づく値を決定し、
取得した前記共用回路情報に基づいて、前記複数種類の共用回路の中からいずれか一つの共用回路を選択し、
選択した前記共用回路の入力端子の各々について、前記観測対象の信号線のうち、前記信号線について決定した前記値が前記入力端子への入力信号に対して行われる論理演算の非制御値と同一である信号線を対応付けた対応情報を生成する、
処理をコンピュータに実行させる設計支援プログラムを記録したことを特徴とする記録媒体。
【符号の説明】
【０１７０】
１００  設計支援装置
１０１  対応情報
５０１  取得部
５０２  ＴＰ候補集合生成部
５０３  ＴＰ候補選択部
５０４  共用回路選択部
５０５  対応情報生成部
５０６  対象回路決定部
５０７  ＴＰ候補決定部
５０８  共用段数判断部
５０９  接続先情報生成部
５１０  回路情報生成部
５１１  算出部
５１２  種類決定部
５１３  検出部
ｍｏｄ１，ｍｏｄ２，ＴＯＰ  モジュール
ｌｏｇ  対象回路
ｓｐ＿ｌｉｓｔ  共用回路情報
ＴＰ１〜ＴＰ４，ＴＡ１〜ＴＡ６  信号線
ｌｏｇｉｎ，ｌｏｇｏｕｔ  回路情報
【図１】
2014203171.tif 000003
【図２】
2014203171.tif 000004
【図３】
2014203171.tif 000005
【図４】
2014203171.tif 000006
【図５】
2014203171.tif 000007
【図６】
2014203171.tif 000008
【図７】
2014203171.tif 000009
【図８】
2014203171.tif 000010
【図９】
2014203171.tif 000011
【図１０】
2014203171.tif 000012
【図１１】
2014203171.tif 000013
【図１２】
2014203171.tif 000014
【図１３】
2014203171.tif 000015
【図１４】
2014203171.tif 000016
【図１５】
2014203171.tif 000017
【図１６】
2014203171.tif 000018
【図１７】
2014203171.tif 000019
【図１８】
2014203171.tif 000020
【図１９】
2014203171.tif 000021
【図２０】
2014203171.tif 000022
【図２１】
2014203171.tif 000023
【図２２】
2014203171.tif 000024
【図２３】
2014203171.tif 000025
【図２４】
2014203171.tif 000026
【図２５】
2014203171.tif 000027
【図２６】
2014203171.tif 000028
【図２７】
2014203171.tif 000029
【図２８】
2014203171.tif 000030
【図２９】
2014203171.tif 000031
【図３０】
2014203171.tif 000032
【図３１】
2014203171.tif 000033
【図３２】
2014203171.tif 000034
【図３３】
2014203171.tif 000035
【図３４】
2014203171.tif 000036
【図３５】
2014203171.tif 000037
【図３６】
2014203171.tif 000038
【図３７】
2014203171.tif 000039