(57)【特許請求の範囲】
【請求項１】
プログラムされたコンピュータによってＬＳＩ設計とＬＳＩ製造に関するデータに含まれる文字列を変換する設計システムであって、
非変換文字列情報データを登録しておく第１の記憶手段と、
ソースコード、ＬＳＩ製造側に渡される文書データ、ＬＳＩ設計側に渡される前記ソースコードに基づく生成コード、及び、ＬＳＩ設計側に渡される文書データを読み取る入力手段と、
前記ソースコードを参照し、前記非変換文字列情報データに含まれる変数名以外の、前記ソースコード中の変数名を所定のルールに従って変換して変換後ソースコードを出力する第１の文字列変換処理を行い、同時に前記ソースコード中の元の文字列がどの文字列に変更されたのかを示す文字列変換対応情報データを出力する、前記コンピュータの演算部にて構築される第１の文字列変換部と、
前記文字列変換対応情報データを記憶する第２の記憶手段と、
前記変換後ソースコードを記憶する第３の記憶手段と、
前記ＬＳＩ製造側に渡される文書データを参照し、前記ＬＳＩ製造側に渡される文書データに対して、前記文字列変換対応情報データを用いて、前記第１の文字列変換部にて前記ソースコードに対して施された前記第１の文字列変換処理と同じ文字列変換処理を施して変換後のＬＳＩ製造側に渡される文書データを出力する、前記コンピュータの演算部にて構築される第２の文字列変換部と、
前記変換後のＬＳＩ製造側に渡される文書データを記憶する第４の記憶手段と、
前記ＬＳＩ設計側に渡される前記ソースコードに基づく生成コードを参照し、前記ＬＳＩ設計側に渡される前記ソースコードに基づく生成コードに対して、前記文字列変換対応情報データを用いて、前記第１の文字列変換部にて前記ソースコードに対して施された前記第１の文字列変換処理とは逆の変換を行う第２の文字列変換処理を施して、変換後のＬＳＩ設計側に渡されるソースコードに基づく生成コードを出力する、前記コンピュータの演算部にて構築される第３の文字列変換部と、
前記変換後のＬＳＩ設計側に渡されるソースコードに基づく生成コードを記憶する第５の記憶手段と、
前記ＬＳＩ設計側に渡される文書データを参照し、前記ＬＳＩ設計側に渡される文書データに対して、前記文字列変換対応情報データを用いて、前記第１の文字列変換部にて前記ソースコードに対して施された前記第１の文字列変換処理とは逆の変換を行う第２の文字列変換処理を施して、変換後のＬＳＩ設計側に渡される文書データを出力する、前記コンピュータの演算部にて構築される第４の文字列変換部と
前記変換後のＬＳＩ設計側に渡される文書データを記憶する第６の記憶手段と
を含む設計システム。
【請求項２】
前記ソースコードがＲＴＬ記述からなり、前記ソースコードに基づく生成コードがネットリストからなることを特徴とする請求項１に記載の設計システム。
【請求項３】
プログラムされたコンピュータによってＬＳＩ設計とＬＳＩ製造に関するデータに含まれる文字列を変換する設計システムにおける、前記コンピュータが行う変換方法であって、
非変換文字列情報データを記憶手段に記憶しておく第１の記憶工程と、
入力手段により、ソースコードを読み取る第１の入力工程と、
前記コンピュータの演算部が、前記ソースコードを参照し、前記非変換文字列情報データに含まれる変数名以外の、前記ソースコード中の変数名を所定のルールに従って変換して変換後ソースコードを出力する第１の文字列変換処理を行い、同時に前記ソースコード中の元の文字列がどの文字列に変更されたのかを示す文字列変換対応情報データを出力する、第１の変換工程と、
記憶手段にて、前記文字列変換対応情報データを記憶する第２の記憶工程と、
記憶手段にて、前記変換後ソースコードを記憶する第３の記憶工程と、
入力手段により、ＬＳＩ製造側に渡される文書データを読み取る第２の入力工程と、
前記コンピュータの演算部が、前記ＬＳＩ製造側に渡される文書データを参照し、前記ＬＳＩ製造側に渡される文書データに対して、前記文字列変換対応情報データを用いて、前記第１の変換工程にて前記ソースコードに対して施された前記第１の文字列変換処理と同じ文字列変換処理を施して変換後のＬＳＩ製造側に渡される文書データを出力する、第２の変換工程と、
記憶手段にて、前記変換後のＬＳＩ製造側に渡される文書データを記憶する第４の記憶工程と、
入力手段により、ＬＳＩ設計側に渡される前記ソースコードに基づく生成コードを読み取る第３の入力工程と、
前記コンピュータの演算部が、前記ＬＳＩ設計側に渡される前記ソースコードに基づく生成コードを参照し、前記ＬＳＩ設計側に渡される前記ソースコードに基づく生成コードに対して、前記文字列変換対応情報データを用いて、前記第１の変換工程にて前記ソースコードに対して施された前記第１の文字列変換処理とは逆の変換を行う第２の文字列変換処理を施して、変換後のＬＳＩ設計側に渡されるソースコードに基づく生成コードを出力する、第３の変換工程と、
記憶手段にて、前記変換後のＬＳＩ設計側に渡されるソースコードに基づく生成コードを記憶する第５の記憶工程と、
入力手段により、ＬＳＩ設計側に渡される文書データを読み取る第４の入力工程と、
前記コンピュータの演算部が、前記ＬＳＩ設計側に渡される文書データを参照し、前記ＬＳＩ設計側に渡される文書データに対して、前記文字列変換対応情報データを用いて、前記第１の変換工程にて前記ソースコードに対して施された前記第１の文字列変換処理とは逆の変換を行う第２の文字列変換処理を施して、変換後のＬＳＩ設計側に渡される文書データを出力する、第４の変換工程と
記憶手段にて、前記変換後のＬＳＩ設計側に渡される文書データを記憶する第６の記憶工程と、
を含む変換方法。
【請求項４】
プログラムされたコンピュータによってＬＳＩ設計とＬＳＩ製造に関するデータに含まれる文字列を変換する設計システムにおける、前記コンピュータの演算部が実行するコンピュータプログラムであって、
非変換文字列情報データを記憶手段に記憶しておく第１の記憶ステップと、
入力手段を介して、ソースコードを読み取る第１の入力ステップと、
前記ソースコードを参照し、前記非変換文字列情報データに含まれる変数名以外の、前記ソースコード中の変数名を所定のルールに従って変換して変換後ソースコードを出力する第１の文字列変換処理を行い、同時に前記ソースコード中の元の文字列がどの文字列に変更されたのかを示す文字列変換対応情報データを出力する、第１の変換ステップと、
記憶手段にて、前記文字列変換対応情報データを記憶する第２の記憶ステップと、
記憶手段にて、前記変換後ソースコードを記憶する第３の記憶ステップと、
入力手段を介して、ＬＳＩ製造側に渡される文書データを読み取る第２の入力ステップと、
前記ＬＳＩ製造側に渡される文書データを参照し、前記ＬＳＩ製造側に渡される文書データに対して、前記文字列変換対応情報データを用いて、前記第１の変換ステップにて前記ソースコードに対して施された前記第１の文字列変換処理と同じ文字列変換処理を施して変換後のＬＳＩ製造側に渡される文書データを出力する、第２の変換ステップと、
記憶手段にて、前記変換後のＬＳＩ製造側に渡される文書データを記憶する第４の記憶ステップと、
入力手段を介して、ＬＳＩ設計側に渡される前記ソースコードに基づく生成コードを読み取る第３の入力ステップと、
前記ＬＳＩ設計側に渡される前記ソースコードに基づく生成コードを参照し、前記ＬＳＩ設計側に渡される前記ソースコードに基づく生成コードに対して、前記文字列変換対応情報データを用いて、前記第１の変換ステップにて前記ソースコードに対して施された前記第１の文字列変換処理とは逆の変換を行う第２の文字列変換処理を施して、変換後のＬＳＩ設計側に渡されるソースコードに基づく生成コードを出力する、第３の変換ステップと、
記憶手段にて、前記変換後のＬＳＩ設計側に渡されるソースコードに基づく生成コードを記憶する第５の記憶ステップと、
入力手段により、ＬＳＩ設計側に渡される文書データを読み取る第４の入力ステップと、
前記ＬＳＩ設計側に渡される文書データを参照し、前記ＬＳＩ設計側に渡される文書データに対して、前記文字列変換対応情報データを用いて、前記第１の変換ステップにて前記ソースコードに対して施された前記第１の文字列変換処理とは逆の変換を行う第２の文字列変換処理を施して、変換後のＬＳＩ設計側に渡される文書データを出力する、第４の変換ステップと
記憶手段にて、前記変換後のＬＳＩ設計側に渡される文書データを記憶する第６の記憶ステップと
を含むコンピュータプログラム。
【請求項５】
請求項３に記載の変換方法により出力される、
変数名が変換されたソースコード、
変数名が変換されたＬＳＩ製造側に渡される文書データ、
変換された変数名が更に逆に変換された、ＬＳＩ設計側に渡されるソースコードに基づく生成コード、及び、
変換された変数名が更に逆に変換された、ＬＳＩ設計側に渡される文書データ
を用いるＬＳＩ製造方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＬＳＩ設計・製造システムのセキュリティ方式に関し、詳細には、ＬＳＩ設計側の作成したソースコードレベルの設計内容を文字列変換してＬＳＩ製造側に渡すことで秘密を確保しつつ作業性を向上させるＬＳＩ設計・製造システムのセキュリティ方式に関する。
【背景技術】
【０００２】
ＬＳＩ（Large Scale Integrated circuit：大規模集積回路）の設計・製造システムは、一般的に、図２にその設計製造工程の概略的な流れを示すように、ＬＳＩ設計会社１００で設計が行われて、当該ＬＳＩ設計会社１００での設計に基づいて、ＬＳＩ製造会社２００でＬＳＩの製造が行われる。
【０００３】
具体的には、ＬＳＩ設計会社１００では、回路の動作を、ＨＤＬ（Hardware Description Language ：ハードウエア記述言語）、最近では、ＲＴＬ（Register Transfer Level ：レジスタ・トランスファ・レベル）とよばれる設計抽象度により設計するのが主流である。すなわち、ＬＳＩは、ＣＡＤ（Computer Aided Design ）ツールを使用して設計されるが、ＣＡＤツールはＨＤＬで記述されたファイルを読み込んで種々の処理を行うことができ、ＬＳＩの設計者は、このＣＡＤツールを使用することによってＬＳＩの設計を行い、最近では、ＲＴＬを使用してＬＳＩの設計を行う。
【０００４】
そして、ＬＳＩ設計会社１００では、このＬＳＩを設計したＲＴＬ記述１０１から論理合成技術１０２を用いてゲートレベルのネットリスト１０３を生成し、生成したゲートレベルのネットリスト１０３をＬＳＩ製造会社２００に渡す。
【０００５】
ＬＳＩ製造会社２００では、受け取ったネットリスト１０３を使用して、自動配置配線（レイアウト）２０１を実施し、マスクの作成２０２を行って、その後、半導体工場にてＬＳＩチップの製造２０３を行う。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、近年、ＬＳＩ設計会社１００においては、ＬＳＩ製造会社２００に対して、ゲートレベルのネットリストではなく、ＲＴＬ記述等のソースコードレベルを渡してＬＳＩチップを製造してもらいたいという要望がある。
【０００７】
このような要望を実現するには、図３に示すように、ＬＳＩ設計会社１００においては、ＲＴＬを使用してＬＳＩを設計し、当該設計したＲＴＬ設計記述１１１をＬＳＩ製造会社２００に渡す。そして、ＬＳＩ製造会社２００で、論理合成技術２１１を用いてゲートレベルのネットリスト２１２を生成して、自動配置配線（レイアウト）２１３を実施して、マスクの作成２１４を行い、その後、半導体工場にてＬＳＩチップの製造２１５を行うこととなる
ところが、図３に示すＬＳＩ設計会社１００で作成したＲＴＬ記述１１１には、図２に示すゲートレベルのネットリスト１０３と比較して、回路の動作や使用しているアルゴリズムの内容が第３者に容易にわかってしまうという問題がある。特に、ＲＴＬ記述１１１がＣ言語等による動作レベル記述であれば、なおさら容易に第３者に回路動作や使用しているアルゴリズムが分かってしまう。
【０００８】
したがって、ＲＴＬ記述をＬＳＩ設計会社からＬＳＩ製造会社に渡してＬＳＩの製造を依頼する場合には、ＲＴＬ記述から回路動作や使用しているアルゴリズムが漏洩しないようにセキュリティを確保することが重要な課題となる。
【０００９】
そこで、本発明は、ＨＤＬ記述やＣ言語記述内の文字列を第３者にとっては意味の分からない文字列に変換することで、ＲＴＬ記述やＣ言語のソースコード等をＬＳＩ設計会社がＬＳＩ製造会社に渡してＬＳＩチップの製造の依頼を行っても、セキュリティを確保することのできるＬＳＩ設計・製造システムのセキュリティ方式を提供することを目的としている。
【００１０】
具体的には、本発明は、ＨＤＬやＲＴＬ等のソースコードの動作を変えることなくソースコード中のアルゴリズムを理解しにくくなるようにソースコードの文字列を変更して、ソースコードレベルの状態でＬＳＩ製造者に渡して、ソースコード中のアルゴリズムの詳細がＬＳＩ製造者に知られることを防止しつつ、ＬＳＩ設計側の手間を省き、セキュリティを向上させつつ、利用性を向上させることのできるＬＳＩ設計・製造システムにおける設計システム及び設計方法を提供することを目的としている。
また、本発明は、適切に理解できる文書をＬＳＩ設計側からＬＳＩ製造側に渡して、適切な意志の疎通を図りつつ機密を保持し、セキュリティを向上させつつ、利用性を向上させることのできるＬＳＩ設計・製造システムにおける設計システム及び設計方法を提供することを目的としている。
また、本発明は、機密事項とはならない文字列については変換することなくＬＳＩ製造側に情報を伝えてＬＳＩの製造をし易くし、セキュリティを向上させつつ、利用性をより一層向上させることのできるＬＳＩ設計・製造システムにおける設計システム及び設計方法を提供することを目的としている。
また、本発明は、ＬＳＩ製造側からＬＳＩ設計側に渡す文書がＬＳＩ設計側で分かりやすい状態に変換し、セキュリティを向上させつつ、利用性をより一層向上させることのできるＬＳＩ設計・製造システムにおける設計システム及び設計方法を提供することを目的としている。
【課題を解決するための手段】
【００１４】
本発明に係る設計システムは、プログラムされたコンピュータによってＬＳＩ設計とＬＳＩ製造に関するデータに含まれる文字列を変換する設計システムであって、
非変換文字列情報データを登録しておく第１の記憶手段と、
ソースコード、ＬＳＩ製造側に渡される文書データ、ＬＳＩ設計側に渡される前記ソースコードに基づく生成コード、及び、ＬＳＩ設計側に渡される文書データを読み取る入力手段と、
前記ソースコードを参照し、前記非変換文字列情報データに含まれる変数名以外の、前記ソースコード中の変数名を所定のルールに従って変換して変換後ソースコードを出力する第１の文字列変換処理を行い、同時に前記ソースコード中の元の文字列がどの文字列に変更されたのかを示す文字列変換対応情報データを出力する、前記コンピュータの演算部にて構築される第１の文字列変換部と、
前記文字列変換対応情報データを記憶する第２の記憶手段と、
前記変換後ソースコードを記憶する第３の記憶手段と、
前記ＬＳＩ製造側に渡される文書データを参照し、前記ＬＳＩ製造側に渡される文書データに対して、前記文字列変換対応情報データを用いて、前記第１の文字列変換部にて前記ソースコードに対して施された前記第１の文字列変換処理と同じ文字列変換処理を施して変換後のＬＳＩ製造側に渡される文書データを出力する、前記コンピュータの演算部にて構築される第２の文字列変換部と、
前記変換後のＬＳＩ製造側に渡される文書データを記憶する第４の記憶手段と、
前記ＬＳＩ設計側に渡される前記ソースコードに基づく生成コードを参照し、前記ＬＳＩ設計側に渡される前記ソースコードに基づく生成コードに対して、前記文字列変換対応情報データを用いて、前記第１の文字列変換部にて前記ソースコードに対して施された前記第１の文字列変換処理とは逆の変換を行う第２の文字列変換処理を施して、変換後のＬＳＩ設計側に渡されるソースコードに基づく生成コードを出力する、前記コンピュータの演算部にて構築される第３の文字列変換部と、
前記変換後のＬＳＩ設計側に渡されるソースコードに基づく生成コードを記憶する第５の記憶手段と、
前記ＬＳＩ設計側に渡される文書データを参照し、前記ＬＳＩ設計側に渡される文書データに対して、前記文字列変換対応情報データを用いて、前記第１の文字列変換部にて前記ソースコードに対して施された前記第１の文字列変換処理とは逆の変換を行う第２の文字列変換処理を施して、変換後のＬＳＩ設計側に渡される文書データを出力する、前記コンピュータの演算部にて構築される第４の文字列変換部と
前記変換後のＬＳＩ設計側に渡される文書データを記憶する第６の記憶手段と
を含む。
【００１５】
また、本発明に係る設計方法は、プログラムされたコンピュータによってＬＳＩ設計とＬＳＩ製造に関するデータに含まれる文字列を変換する設計システムにおける、前記コンピュータが行う変換方法であって、
非変換文字列情報データを記憶手段に記憶しておく第１の記憶工程と、
入力手段により、ソースコードを読み取る第１の入力工程と、
前記コンピュータの演算部が、前記ソースコードを参照し、前記非変換文字列情報データに含まれる変数名以外の、前記ソースコード中の変数名を所定のルールに従って変換して変換後ソースコードを出力する第１の文字列変換処理を行い、同時に前記ソースコード中の元の文字列がどの文字列に変更されたのかを示す文字列変換対応情報データを出力する、第１の変換工程と、
記憶手段にて、前記文字列変換対応情報データを記憶する第２の記憶工程と、
記憶手段にて、前記変換後ソースコードを記憶する第３の記憶工程と、
入力手段により、ＬＳＩ製造側に渡される文書データを読み取る第２の入力工程と、
前記コンピュータの演算部が、前記ＬＳＩ製造側に渡される文書データを参照し、前記ＬＳＩ製造側に渡される文書データに対して、前記文字列変換対応情報データを用いて、前記第１の変換工程にて前記ソースコードに対して施された前記第１の文字列変換処理と同じ文字列変換処理を施して変換後のＬＳＩ製造側に渡される文書データを出力する、第２の変換工程と、
記憶手段にて、前記変換後のＬＳＩ製造側に渡される文書データを記憶する第４の記憶工程と、
入力手段により、ＬＳＩ設計側に渡される前記ソースコードに基づく生成コードを読み取る第３の入力工程と、
前記コンピュータの演算部が、前記ＬＳＩ設計側に渡される前記ソースコードに基づく生成コードを参照し、前記ＬＳＩ設計側に渡される前記ソースコードに基づく生成コードに対して、前記文字列変換対応情報データを用いて、前記第１の変換工程にて前記ソースコードに対して施された前記第１の文字列変換処理とは逆の変換を行う第２の文字列変換処理を施して、変換後のＬＳＩ設計側に渡されるソースコードに基づく生成コードを出力する、第３の変換工程と、
記憶手段にて、前記変換後のＬＳＩ設計側に渡されるソースコードに基づく生成コードを記憶する第５の記憶工程と、
入力手段により、ＬＳＩ設計側に渡される文書データを読み取る第４の入力工程と、
前記コンピュータの演算部が、前記ＬＳＩ設計側に渡される文書データを参照し、前記ＬＳＩ設計側に渡される文書データに対して、前記文字列変換対応情報データを用いて、前記第１の変換工程にて前記ソースコードに対して施された前記第１の文字列変換処理とは逆の変換を行う第２の文字列変換処理を施して、変換後のＬＳＩ設計側に渡される文書データを出力する、第４の変換工程と
記憶手段にて、前記変換後のＬＳＩ設計側に渡される文書データを記憶する第６の記憶工程と
を含む。
【００１６】
また、本発明に係るＬＳＩ製造方法は、本発明に係る変換方法により生成される、請求項３に記載の変換方法により出力される、
変数名が変換されたソースコード、
変数名が変換されたＬＳＩ製造側に渡される文書データ、
変換された変数名が更に逆に変換された、ＬＳＩ設計側に渡されるソースコードに基づく生成コード、及び、
変換された変数名が更に逆に変換された、ＬＳＩ設計側に渡される文書データ
を用いるものである。
【発明の効果】
【００１８】
本発明によれば、ＨＤＬやＲＴＬ等のソースコードの動作を変えることなくソースコード中のアルゴリズムを理解しにくくなるようにソースコードの文字列を変更して、ソースコードレベルの状態でＬＳＩ製造者に渡して、ソースコード中のアルゴリズムの詳細がＬＳＩ製造者に知られることを防止することができるとともに、ＬＳＩ設計側の手間を省くことができ、セキュリティを向上させることができるとともに、利用性を向上させることができる。
また、本発明によれば、適切に理解できる文書をＬＳＩ設計側からＬＳＩ製造側に渡して、適切な意志の疎通を図りつつ機密を保持することができ、セキュリティを向上させることができるとともに、利用性を向上させることができる。
また、本発明によれば、機密事項とはならない文字列については変換することなくＬＳＩ製造側に情報を伝えてＬＳＩの製造をし易くすることができ、セキュリティを向上させることができるとともに、利用性をより一層向上させることができる。
また、本発明によれば、ＬＳＩ製造側からＬＳＩ設計側に渡す文書がＬＳＩ設計側で分かりやすい状態に変換することができ、セキュリティを向上させることができるとともに、利用性をより一層向上させることができる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明の好適な実施例を添付図面に基づいて詳細に説明する。なお、以下に述べる実施例は、本発明の好適な実施例であるから、技術的に好ましい種々の限定が付されているが、本発明の範囲は、以下の説明において特に本発明を限定する旨の記載がない限り、これらの態様に限られるものではない。
【実施例１】
【００２３】
図１は、本発明のＬＳＩ設計・製造システムのセキュリティ方式の一実施例を示す図であり、図１は、本発明のＬＳＩ設計・製造システムのセキュリティ方式の一実施例を適用したＬＳＩ設計・製造システム１のブロック構成図である。
【００２４】
図１において、ＬＳＩ設計・製造システム１は、ＬＳＩ設計者１０側に、文字列変換部１１、１２、１３、ＲＴＬ記述１４、非変換文字列情報１５、文字列変換対応情報１６、Ａ文書１７、変換済ネットリスト１８及びＢ’文書１９等を備えている。
【００２５】
文字列変換部１１は、ＬＳＩ設計者１０が作成したＬＳＩ設計のＲＴＬ記述１４と非変換文字列情報１５を読み取り、当該読み取ったＲＴＬ記述１４と非変換文字列情報１５に基づいて、ＲＴＬ記述１４の中の各変数名等を第３者には解読しにくい別の変数名に変換する文字列変換を施して変換済ＲＴＬ記述２１を精製するとともに、非変換文字列情報１５の変数名については変換することなく、変換済ＲＴＬ記述２１を生成して、この変換済ＲＴＬ記述２１をＬＳＩ製造者２０側に渡す。また、文字列変換部１１は、文字列変換を行うと、元の文字列がどの文字列に変更されたのかを示す文字列変換対応情報１６を生成する。
【００２６】
上記ＲＴＬ記述１４は、ＲＴＬ記述に限るものではなく、ＬＳＩであるハードウェア設計に必要な回路情報等を記述した言語であれば何でもよく、例えば、テストパターンを記述したＨＤＬやＣ言語等により記述されたソースコードであってもよい。
【００２７】
このＲＴＬ記述１４としては、例えば、ＲＴＬ記述例１４ａに示す以下のようなものである。
【００２８】
ＲＴＬ記述例１４ａ：
if(JPEG_START==1){
DCT<=PIX_1;
}
if(DCT==1){
...
非変換文字列情報１５は、文字列変換部１１でＲＴＬ記述１４の中の各変数名等を第３者には解読しにくい別の変数名に変換して変換済ＲＴＬ記述２１に変換する際に、ＲＴＬ記述１４の記述のうち、別の変数名に変換しない変数名が登録されており、非変換文字列情報１５の非変換文字列情報例１５ａとしては、例えば、PIX_1等がある。この非変換文字列１５は、ＬＳＩ設計者１０が予め準備し、非変換文字列１５としては、例えば、クロック信号やリセット信号等である。
【００２９】
そして、ＬＳＩ設計者１０側では、文字列変換部１１が、例えば、上記ＲＴＬ記述例１４ａを文字変換して、以下に示すような変換済ＲＴＬ記述例２１ａを生成する。したがって、変換前のＲＴＬと変換後のＲＴＬの動作は変わらない。
【００３０】
変換済ＲＴＬ記述例２１ａ：
if(a0==1){
a1<=PIX_1;
}
if(a1==1){
...
そして、文字列変換部１１は、上述のように、ＲＴＬ記述１４の中の各変数名等を第３者には解読しにくい別の変数名に変換して変換済ＲＴＬ記述２１に変換する際に、非変換文字列情報１５に登録されている文字列である変数名については、別の変数名に変換しない。例えば、上記ＲＴＬ記述例１４ａの場合、非変換文字列情報１５に非変換文字列情報例１５ａとして登録されている変数名PIX_1については変換しない。
【００３１】
すなわち、文字列変換部１１は、例えば、ＲＴＬ記述例１４ａの場合、変数名JPEG_STARTは、a0という変数名に、変数名DCT は、a1という変数名に、それぞれ変換するが、変数名PIX_1については変換しないで、変換済ＲＴＬ記述例２１ａを生成する。
【００３２】
また、文字列変換部１１は、文字列の変換を行うと、上述するように、元の文字列がどの文字列に変更されたのかを示す文字列変換対応情報１６を出力し、この文字列変換対応情報１６は、例えば、上記ＲＴＬ記述例１４ａを変換済ＲＴＬ記述例２１ａに変換した場合、文字列変換対応情報例１６ａとしては、以下のようになる。
【００３３】
文字列変換対応情報例１６ａ：
JPEG_START→a0
DCT →a1
すなわち、文字列変換対応情報例１６ａは、JPEG_STARTという文字列がa0という文字列に変換され、DCT という文字列がa1という文字列に変換されたことを示している。
【００３４】
したがって、例えば、ＬＳＩ設計者１０が、JPEG_STARTという秘密情報となる文字列を含んだ文書としてＲＴＬ記述１４を作成した場合、この秘密情報を含まない文字列a0に変換された文書として変換済ＲＴＬ記述２１を生成して、ＬＳＩ製造者２０に渡すことができ、秘密事項がＬＳＩ製造者２０に容易には漏れないようにすることができる。
【００３５】
また、ＬＳＩ設計・製造システム１は、文字列変換部１２で、文字列変換対応情報１６と、文字列変換対応情報１６の文字列を含んだＡ文書１７を読み込み、文字列変換対応情報１６に応じた文字列変換をＡ文書１７に対して施して、Ａ’文書２２を生成する。この場合のＡ文書１７は、どのような内容の文書でも構わないが、例えば、ＲＴＬ設計者１０がＲＴＬ製造者２０に対して渡す指示書等の文書であり、ＬＳＩ製造者２０側に知られると困る秘密の文字列が含まれている文書である。このＡ文書１７の例としては、例えば、Ａ文書例１７ａがあり、「信号JPEG_STARTの到達時刻に注意」等の秘密文字列であるJPEG_STARTという文字列を含む文書である。
【００３６】
そして、文字列変換部１２は、Ａ文書例１７ａの場合、文字列変換対応情報１６の文字列を参照して、Ａ文書例１７ａ中の秘密文字列であるJPEG_STARTという文字列を、a0という文字列に変換して、Ａ’文書例２２ａを生成する。すなわち、文字列変換部１２の参照する文字列変換対応情報１６に、文字列変換部１１においてJPEG_STARTという文字列をa0という文字列に変換されたことが記述されているため、この文字列変換対応情報１６に応じて文字列の変換を行う。
【００３７】
さらに、ＬＳＩ設計・製造システム１は、文字列変換部１３で、ＬＳＩ製造者２０が作成したゲートレベルのネットリスト２３と文字列変換対応情報１６を読み込み、当該ネットリスト２３を、ＬＳＩ設計者１０が作成したＲＴＬ記述１４において使用していた文字列を含む変換済ネットリスト１８に変換する。このネットリスト２３は、ＬＳＩ設計者１０から渡された変換済ＲＴＬ記述１４に基づいてＬＳＩ製造者２０が作成した変換済文字列を使用したゲートレベルのネットリストであり、例えば、ネットリスト例２３ａとして示す以下のようなものである。
【００３８】
ネットリスト例２３ａ：
NAND02 U1(.I1(a0),.I2(n1)....);
このＬＳＩ製造者２０の作成したゲートレベルのネットリスト例２３ａには、文字列変換対応情報１６に含まれている文字列a0が含まれており、文字列変換部１３は、文字列変換対応情報１６を参照して、この文字列a0をJPEG_STARTという文字列に変換して、変換済ネットリスト例１８ａを生成する。
【００３９】
この変換済ネットリスト１８ａは、文字列a0をJPEG_STARTという文字列に変換したもので、以下に示すようなものである。
【００４０】
NAND02 U1(.I1(JPEG_START),.I2(n1)....);
また、ＬＳＩ設計・製造システム１は、文字列変換部１３で、ＬＳＩ製造者２０が作成し文字列変換対応情報１６の文字列を含んだＢ文書２４と文字列変換対応情報１６を読み込み、当該読み込んだＢ文書２４を、ＬＳＩ設計者１０が作成したＲＴＬ記述１４において使用していた文字列を含むＢ’文書１９に変換する。この場合のＢ文書２４は、どのような内容の文書でも構わないが、例えば、ＲＴＬ製造者２０がＲＴＬ設計者１０に対して問い合わせを行う文書等であり、ＬＳＩ設計者１０がＬＳＩ製造者２０に渡した変換済ＲＴＬ記述２１において使用していた文字列を含む文書である。このＢ文書２４の例としては、例えば、Ｂ文書例２４ａがあり、「信号a1はこれでＯＫ？」等の秘密文字列であるJPEG_STARTを変換したa1という文字列を含む文書が記述されている。すなわち、文字列変換部１３は、文字列変換部１１の変換とは逆の変換処理を行う。
【００４１】
そして、文字列変換部１３は、Ｂ文書例２４ａの場合、文字列変換対応情報１６の文字列を参照して、Ｂ’文書例１９ａ中の文字列a1を、秘密文字列であるDCTという文字列に変換して、Ｂ’文書１９ａを生成する。すなわち、文字列変換部１３の参照する文字列変換対応情報１６に、文字列変換部１１においてDCTという文字列をa1という文字列に変換されたことが記述されているため、この文字列変換対応情報１６に応じて文字列の変換を行う。
【００４２】
このように、本実施例のＬＳＩ設計・製造システム１は、ＬＳＩ設計者１０側の設計したＬＳＩ設計内容をＬＳＩ製造者２０側に渡して、ＬＳＩ製造者２０側でＬＳＩ設計内容に基づいてＬＳＩの製造を行うに際して、ＬＳＩ設計者１０側が、ＬＳＩ設計内容をハードウェア記述言語で記述したソースコードであるＲＴＬ記述１４に対して文字列変換部１１で所定の文字列変換処理を施し、当該文字列変換したソースコードである変換済ＲＴＬ記述２１をＬＳＩ製造者２０側に渡している。
【００４３】
したがって、ＨＤＬやＲＴＬ等のソースコードの動作を変えることなくソースコード中のアルゴリズムを理解しにくくなるようにソースコードの文字列を変更して、ソースコードレベルの状態でＬＳＩ製造者２０に渡して、ソースコード中のアルゴリズムの詳細がＬＳＩ製造者２０に知られることを防止することができるとともに、ＬＳＩ設計者１０側の手間を省くことができ、セキュリティを向上させることができるとともに、利用性を向上させることことができる。
【００４４】
また、本実施例のＬＳＩ設計・製造システム１は、ＬＳＩ設計者１０側の作成したソースコードを含みＬＳＩ製造者２０側に渡すＡ文書１７に対して、当該ソースコードに対して施した文字列変換処理と同じ文字列変換処理を文字列変換部１２で施してＬＳＩ製造者２０側に渡している。
【００４５】
したがって、ＬＳＩ設計者１０側からＬＳＩ製造者２０側に渡す製造指示書等のＡ文書１７にソースコード中の文字列が含まれている場合に、当該文字列をソースコードの変換と同じ変換を施すことで、Ａ文書１７をＬＳＩ製造者２０側で適切に理解できるＡ’文書２２として渡して、適切な意志の疎通を図りつつ機密を保持することができ、セキュリティを向上させることができるとともに、利用性を向上させることができる。
【００４６】
さらに、本実施例のＬＳＩ設計・製造システム１は、文字列変換処理において、予め変換対象から外す文字列の設定された非変換文字列情報１５に設定されている非変換文字列以外の文字列に対して文字列変換を施している。
【００４７】
したがって、機密事項とはならない文字列については変換することなくＬＳＩ製造者２０側に情報を伝えてＬＳＩの製造をし易くすることができ、セキュリティを向上させることができるとともに、利用性をより一層向上させることことができる。
【００４８】
また、本実施例のＬＳＩ設計・製造システム１は、ＬＳＩ製造者２０側が作成してソースコードの文字列を含みＬＳＩ設計者１０側に渡すＢ文書２４に対して、当該ＬＳＩ設計者１０側で、ソースコードに対して施した文字列変換処理と逆変換を行う文字列変換処理を文字列変換部１３で施している。
【００４９】
したがって、ＬＳＩ製造者２０側からＬＳＩ設計者１０側に渡すＢ文書２４がＬＳＩ設計者１０側で分かりやすい状態のＢ’文書１９に変換することができ、セキュリティを向上させることができるとともに、利用性をより一層向上させることができる。
【００５０】
以上、本発明者によってなされた発明を好適な実施例に基づき具体的に説明したが、本発明は上記のものに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【産業上の利用可能性】
【００５１】
半導体設計・製造等のＬＳＩ設計・製造において、ＬＳＩ設計側で常用しているソースコードレベルでの意志の疎通を機密を確保しつつ行うＬＳＩ設計・製造システムに適用することができる。
【図面の簡単な説明】
【００５２】
【図１】本発明のＬＳＩ設計・製造システムのセキュリティ方式の一実施例を適用したＬＳＩ設計システムのブロック構成図。
【図２】従来のＬＳＩ設計・製造工程の概略的な流れを示す図。
【図３】図２のＬＳＩ設計・製造工程の変更の要望されている変更後のＬＳＩ設計・製造工程の概略的な流れを示す図。
【符号の説明】
【００５３】
１  ＬＳＩ設計システム
１０  ＬＳＩ設計者
１１、１２、１３  文字列変換部
１４  ＲＴＬ記述
１４ａ  ＲＴＬ記述例
１５  非変換文字列情報
１５ａ  非変換文字列情報例
１６  文字列変換対応情報
１６ａ  文字列変換対応情報例
１７  Ａ文書
１７ａ  Ａ文書例
１８  変換済ネットリスト
１８ａ  変換済ネットリスト
１９  Ｂ’文書
１９ａ  Ｂ’文書例
２１  変換済ＲＴＬ記述
２１ａ  変換済ＲＴＬ記述例
２２  Ａ’文書
２２ａ  Ａ’文書例
２３  ネットリスト
２３ａ  ネットリスト例
２４  Ｂ文書
２４ａ  Ｂ文書例
【図１】
0004776172.tif 000002
【図２】
0004776172.tif 000003
【図３】
0004776172.tif 000004