(57)【要約】【課題】小型化することができ、処理時間を削減ができる電磁界解析装置を得る。【解決手段】解析で用いる係数、電界値及び磁界値をそれぞれ保持するメモリ群４ａ〜４ｃと、メモリ群４ａ〜４ｃの読み出し及び書き込みのアドレスを制御するメモリ制御部３と、メモリ群４ａ〜４ｃから係数、電界値及び磁界値を同時に読み出し、読み出した係数、電界値及び磁界値をそれぞれ所定のタイミングで所定クロック分遅延させ、電界及び磁界の時間変化式をストリーム形式で算出して電界値及び磁界値を更新する時間変化式算出部２とを設け、メモリ制御部３及びメモリ群４ａ〜４ｃは、読み出し用及び書き込み用のアドレス線６ａ、６ｂによって接続され、メモリ群４ａ〜４ｃ及び時間変化式算出部２は、読み出し用のデータ線７ａ〜７ｃによって接続されているとともに、書き込み用のデータ線８によって接続されている。【選択図】図１
2010271119.tif 000002
【特許請求の範囲】
【請求項１】
解析領域をセルに分割し、ＦＤＴＤ法を用いて解析を行う電磁界解析装置において、
解析で用いる係数、電界値及び磁界値をそれぞれ保持する複数のメモリ群と、
前記複数のメモリ群の読み出し及び書き込みのアドレスを制御するメモリ制御部と、
前記複数のメモリ群から係数、電界値及び磁界値を同時に読み出し、読み出した係数、電界値及び磁界値をそれぞれ所定のタイミングで所定クロック分遅延させ、電界及び磁界の時間変化式をストリーム形式で算出して電界値及び磁界値を更新する時間変化式算出部とを備え、
前記メモリ制御部及び前記複数のメモリ群は、読み出し用及び書き込み用のアドレス線によって接続され、前記複数のメモリ群及び前記時間変化式算出部は、読み出し用のデータ線によって接続されているとともに、書き込み用のデータ線によって接続されている
ことを特徴とする電磁界解析装置。
【請求項２】
前記時間変化式算出部は、
前記複数のメモリ群から係数、電界値及び磁界値を同時に読み出し、読み出した係数、電界値及び磁界値をそれぞれ所定のタイミングで所定クロック分遅延させ、電界及び磁界の時間変化式をストリーム形式で算出して電界値を更新する電界成分用の時間変化式算出回路と、
前記電界成分用の時間変化式算出回路に接続され、前記複数のメモリ群から係数、電界値及び磁界値を同時に読み出し、読み出した係数、電界値及び磁界値をそれぞれ所定のタイミングで所定クロック分遅延させ、電界及び磁界の時間変化式をストリーム形式で算出して磁界値を更新する磁界成分用の時間変化式算出回路とを有し、
前記電界成分用及び磁界成分用の時間変化式算出回路を並列実行する
ことを特徴とする請求項１記載の電磁界解析装置。
【請求項３】
前記時間変化式算出部は、
前記複数のメモリ群から係数、電界値及び磁界値を同時に読み出し、読み出した係数、電界値及び磁界値をそれぞれ所定のタイミングで所定クロック分遅延させ、電界及び磁界の時間変化式をストリーム形式で算出して電界値を更新する電界成分用の時間変化式算出回路、並びに前記電界成分用の時間変化式算出回路に接続され、前記複数のメモリ群から係数、電界値及び磁界値を同時に読み出し、読み出した係数、電界値及び磁界値をそれぞれ所定のタイミングで所定クロック分遅延させ、電界及び磁界の時間変化式をストリーム形式で算出して磁界値を更新し、前記電界成分用の時間変化式算出回路と並列実行する磁界成分用の時間変化式算出回路を含み、奇数行セルの電界及び磁界の時間変化式をストリーム形式で算出して電界値及び磁界値を更新する奇数行セル用の時間変化式算出回路と、
前記複数のメモリ群から係数、電界値及び磁界値を同時に読み出し、読み出した係数、電界値及び磁界値をそれぞれ所定のタイミングで所定クロック分遅延させ、電界及び磁界の時間変化式をストリーム形式で算出して電界値を更新する電界成分用の時間変化式算出回路、並びに前記電界成分用の時間変化式算出回路に接続され、前記複数のメモリ群から係数、電界値及び磁界値を同時に読み出し、読み出した係数、電界値及び磁界値をそれぞれ所定のタイミングで所定クロック分遅延させ、電界及び磁界の時間変化式をストリーム形式で算出して磁界値を更新し、前記電界成分用の時間変化式算出回路と並列実行する磁界成分用の時間変化式算出回路を含み、偶数行セルの電界及び磁界の時間変化式をストリーム形式で算出して電界値及び磁界値を更新する偶数行セル用の時間変化式算出回路とを有し、
前記奇数行セル用及び偶数行セル用の時間変化式算出回路は相互に接続され、
隣接するセルを同時に平行実行する
ことを特徴とする請求項１記載の電磁界解析装置。
【請求項４】
前記時間変化式算出部は、
前記複数のメモリ群から係数、電界値及び磁界値を同時に読み出し、読み出した係数、電界値及び磁界値をそれぞれ所定のタイミングで所定クロック分遅延させ、電界及び磁界の時間変化式をストリーム形式で算出して電界値を更新する電界成分用の時間変化式算出回路、並びに前記電界成分用の時間変化式算出回路に接続され、前記複数のメモリ群から係数、電界値及び磁界値を同時に読み出し、読み出した係数、電界値及び磁界値をそれぞれ所定のタイミングで所定クロック分遅延させ、電界及び磁界の時間変化式をストリーム形式で算出して磁界値を更新し、前記電界成分用の時間変化式算出回路と並列実行する磁界成分用の時間変化式算出回路を含み、１セル分の電界及び磁界の時間変化式をストリーム形式で算出して電界値及び磁界値を更新する１セル分の時間変化式算出回路を複数有し、
複数の１セル分の時間変化式算出回路が直列接続され、
解析領域の電界値及び磁界値の複数回分の更新を、同時に平行実行する
ことを特徴とする請求項１記載の電磁界解析装置。
【請求項５】
係数用のメモリ群は、係数が解析領域の行方向に遅延クロック数分だけずらされて格納されている
ことを特徴とする請求項１から請求項４までのいずれかに記載の電磁界解析装置。
【請求項６】
前記時間変化式算出部は、
前記複数のメモリ群から係数、電界値及び磁界値を同時に読み出し、読み出した係数、電界値及び磁界値をそれぞれ所定のタイミングで所定クロック分遅延させ、電界及び磁界の時間変化式をストリーム形式で算出して電界値を更新する電界成分用の時間変化式算出回路、並びに前記電界成分用の時間変化式算出回路に接続され、前記複数のメモリ群から係数、電界値及び磁界値を同時に読み出し、読み出した係数、電界値及び磁界値をそれぞれ所定のタイミングで所定クロック分遅延させ、電界及び磁界の時間変化式をストリーム形式で算出して磁界値を更新し、前記電界成分用の時間変化式算出回路と並列実行する磁界成分用の時間変化式算出回路を含み、１セル分の電界及び磁界の時間変化式をストリーム形式で算出して電界値及び磁界値を更新する１セル分の時間変化式算出回路と、
前記１セル分の時間変化式算出回路からの電界値及び磁界値の書き込みタイミングを調整するＦＩＦＯとを有し、
電界用及び磁界用のメモリ群と前記時間変化式算出回路は、データセレクタを介して、読み書き用の双方向のデータ線及び読み出し用のデータ線によって接続されているとともに、前記ＦＩＦＯと前記電界用及び磁界用のメモリ群は、前記データセレクタを介して、書き込み用のデータ線及び前記読み書き用の双方向のデータ線によって接続され、
前記電界用及び磁界用のメモリ群は、それぞれ２分割され、それぞれがシングルポート・メモリである
ことを特徴とする請求項１記載の電磁界解析装置。
【請求項７】
前記時間変化式算出部は、
前記複数のメモリ群から係数、電界値及び磁界値を同時に読み出し、読み出した係数、電界値及び磁界値をそれぞれ所定のタイミングで所定クロック分遅延させ、電界及び磁界の時間変化式をストリーム形式で算出して電界値を更新する電界成分用の時間変化式算出回路、並びに前記電界成分用の時間変化式算出回路に接続され、前記複数のメモリ群から係数、電界値及び磁界値を同時に読み出し、読み出した係数、電界値及び磁界値をそれぞれ所定のタイミングで所定クロック分遅延させ、電界及び磁界の時間変化式をストリーム形式で算出して磁界値を更新し、前記電界成分用の時間変化式算出回路と並列実行する磁界成分用の時間変化式算出回路を含み、１セル分の電界及び磁界の時間変化式をストリーム形式で算出して電界値及び磁界値を更新する１セル分の時間変化式算出回路と、
前記１セル分の時間変化式算出回路からの電界値及び磁界値の書き込みタイミングを調整するＦＩＦＯとを有し、
電界用及び磁界用のメモリ群と前記時間変化式算出回路は、データセレクタを介して、読み書き用の双方向のデータ線及び読み出し用のデータ線によって接続されているとともに、前記ＦＩＦＯと前記電界用及び磁界用のメモリ群は、前記データセレクタを介して、書き込み用のデータ線及び前記読み書き用の双方向のデータ線によって接続され、
前記電界用及び磁界用のメモリ群は、３次元の解析領域の奇数面と偶数面に分割されている
ことを特徴とする請求項１記載の電磁界解析装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、有限差分時間領域（ＦＤＴＤ：Finite Difference Time Domain）法を用いた電磁界解析を、プロセッサとプログラムで実現するのではなく、ＦＰＧＡ（Field Programmable Gate Array）やＡＳＩＣ（Application Specific Integrated Circuit）等で実現する電磁界解析装置に関するものである。
【背景技術】
【０００２】
ＦＤＴＤ法とは、解析する領域を細かいセルに分割し、マクスウェルの方程式の時間変化２式（電界と磁界の各１式）を交互に解き、電磁界解析する方法である。アルゴリズムが単純で、プログラミングも容易であるという利点を持つ反面、必要メモリ容量が多く、処理時間も長いという欠点を持っている。
【０００３】
ＦＤＴＤ法について、図１１を用いて簡単に説明する。図１１は、２次元ＦＤＴＤ法の解析領域とセルの電界成分及び磁界成分を示す図である。
【０００４】
図１１において、それぞれ、１０１は解析領域、１０２ａ、１０２ｂは解析領域分割後のセル、１０３はセル１０２ｂのＺ軸方向の電界成分、１０４はセル１０２ｂのＸ軸方向の磁界成分、１０５はセル１０２ｂのＹ軸方向の磁界成分を示している。
【０００５】
ここで、Ｘ軸とＹ軸の電界成分及びＺ軸方向の電界成分が無いのは、２次元ＦＤＴＤ法としたためである。なお、ＦＤＴＤ法は、一般に３次元領域を扱うが、説明には、より簡単な２次元ＦＤＴＤ法を用いる。これは、手法の本質部分が、２次元でも３次元でも同じためである。同様に、吸収境界層の扱いについても省略する。
【０００６】
ＦＤＴＤ法では、解析領域１０１を分割する。これにより長方形のセル１０２ａが得られる。セル１０２ｂは、セル１０２ａを拡大したものである。ＦＤＴＤ法では、各セルでマクスウェルの方程式の時間変化２式を使い、電界成分１０３と磁界成分１０４，１０５を交互に計算してゆく。この時間変化２式を以下に示す。なお、εは誘電率、σは導電率、μは透磁率を示す。
【０００７】
【数１】
2010271119.tif 000003
【０００８】
電磁界解析では、この２式を用いて、初期値として与えた各セルの電界及び磁界の値を更新してゆく。解析終了となるのは、この更新により、更新回数が設定値を超えた等の終了条件が満たされた時である。
【０００９】
この時間変化式を各成分と係数のみで表現すると、次のようになる。
【００１０】
【数２】
2010271119.tif 000004
【００１１】
式の各項の意味は、次の通り。Ｅｚ、Ｈｘ、Ｈｙは、変化前のセル１０２ｂの電界成分１０３と磁界成分１０４、１０５である。Ｅｚ'、Ｈｘ'、Ｈｙ'は、変化後のセル１０２ｂの電界成分１０３と磁界成分１０４、１０５である。Ｃｅｚ、Ｃｅｚｌｘ、Ｃｅｚｌｙ、Ｃｈｘｌｙ、Ｃｈｙｌｘは、セルの形状や領域の座標で決まる係数である。（ｉ，ｊ）は、セルの２次元座標である。時間変化式は、このように係数乗算と加減算のみの単純な式で表現できる。
【００１２】
従来、演算装置をＦＰＧＡとメモリで構成し、ＦＰＧＡとメモリ間のデータ転送回数を削減することで、ＦＤＴＤ法の処理時間を短縮する電磁界解析装置が提案されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】特開２００６−１３９７２３号公報
【発明の概要】
【発明が解決しようとする課題】
【００１４】
しかしながら、従来技術には、以下のような課題がある。上記の従来の電磁界解析装置は、メモリアクセス回数の改善によって処理時間を短縮する方法であり、依然、処理時間が長いという問題があった。
【００１５】
本発明は、前記のような課題を解決するためになされたものであり、マクスウェルの方程式の時間変化式自体を並列実行することで、小型化を図ることができ、処理時間を削減することができる電磁界解析装置を得ることを目的とする。
【課題を解決するための手段】
【００１６】
本発明に係る電磁界解析装置は、解析領域をセルに分割し、ＦＤＴＤ法を用いて解析を行う電磁界解析装置において、解析で用いる係数、電界値及び磁界値をそれぞれ保持する複数のメモリ群と、前記複数のメモリ群の読み出し及び書き込みのアドレスを制御するメモリ制御部と、前記複数のメモリ群から係数、電界値及び磁界値を同時に読み出し、読み出した係数、電界値及び磁界値をそれぞれ所定のタイミングで所定クロック分遅延させ、電界及び磁界の時間変化式をストリーム形式で算出して電界値及び磁界値を更新する時間変化式算出部とを備え、前記メモリ制御部及び前記複数のメモリ群は、読み出し用及び書き込み用のアドレス線によって接続され、前記複数のメモリ群及び前記時間変化式算出部は、読み出し用のデータ線によって接続されているとともに、書き込み用のデータ線によって接続されているものである。
【発明の効果】
【００１７】
本発明に係る電磁界解析装置によれば、ＦＰＧＡ／ＡＳＩＣ上で時間変化式をストリーム形式で並列実行することで、１セル当たり１クロックの実行速度で解析を進めていくことができる。また、ＦＰＧＡ／ＡＳＩＣにおいて、１つのＦＰＧＡ／ＡＳＩＣの中で、多数の式を同時に処理させようとした場合、ＦＰＧＡ／ＡＳＩＣの入出力がボトルネックになり、同時に処理できる式の数が制限される。同時読み出し時のアドレス線の数の削減を行うことで、この制限を緩和し、同時に処理できる式の数を増やすことができる。これにより、ＦＰＧＡ／ＡＳＩＣ１個当たりの演算性能を向上させることができる。これらの効果により、処理時間を短縮することができる。
【図面の簡単な説明】
【００１８】
【図１】この発明の実施の形態１に係る電磁界解析装置の構成を示すブロック図である。
【図２】この発明の実施の形態１に係る電磁界解析装置のストリーム型時間変化式算出部の詳細構成を示す図である。
【図３】この発明の実施の形態１に係る電磁界解析装置のメモリ群の詳細構成を示すブロック図である。
【図４】この発明の実施の形態２に係る電磁界解析装置のストリーム型時間変化式算出部の詳細構成を示すブロック図である。
【図５】この発明の実施の形態２に係る電磁界解析装置のメモリ群の詳細構成を示すブロック図である。
【図６】この発明の実施の形態３に係る電磁界解析装置のストリーム型時間変化式算出部の詳細構成を示すブロック図である。
【図７】この発明の実施の形態４に係る電磁界解析装置のストリーム型時間変化式算出部の詳細構成を示すブロック図である。
【図８】この発明の実施の形態５に係る電磁界解析装置の係数格納用のメモリのデータ格納位置を示す図である。
【図９】この発明の実施の形態６に係る電磁界解析装置の構成を示すブロック図である。
【図１０】この発明の実施の形態７に係る電磁界解析装置の構成を示すブロック図である。
【図１１】２次元ＦＤＴＤ法の解析領域とセルの電界成分及び磁界成分を示す図である。
【発明を実施するための形態】
【００１９】
以下、本発明の電磁界解析装置の好適な実施の形態につき図面を用いて説明する。
【００２０】
実施の形態１．
この発明の実施の形態１に係る電磁界解析装置について図１から図３までを参照しながら説明する。図１は、この発明の実施の形態１に係る電磁界解析装置の構成を示すブロック図である。なお、以降では、各図中、同一符号は同一又は相当部分を示す。
【００２１】
図１において、この発明の実施の形態１に係る電磁界解析装置１は、メモリ群（係数用）４ａ、（電界用）４ｂ、（磁界用）４ｃと、ＦＰＧＡ／ＡＳＩＣ等で構成される演算エンジン５とが設けられている。
【００２２】
また、演算エンジン５は、ストリーム型の時間変化式算出部２と、メモリ制御部３とが設けられている。
【００２３】
メモリ制御部３とメモリ群４ａ〜４ｃは、読み出し用のアドレス線６ａ、書き込み用のアドレス線６ｂによって接続されている。メモリ群４ａ〜４ｃと時間変化式算出部２は、係数読み出し用のデータ線７ａ、電界読み出し用のデータ線７ｂ、磁界読み出し用のデータ線７ｃによって接続されている。また、時間変化式算出部２とメモリ群４ａ〜４ｃは、書き込み用のデータ線８によって接続されている。時間変化式算出部２とメモリ制御部３は、制御線９によって接続されている。
【００２４】
この電磁界解析装置１は、外部からメモリ群４ａ〜４ｃに係数や、電界及び磁界の初期値を設定してもらい、電磁界解析を実施し、解析終了後も同様に、外部からメモリ群４ｂ及び４ｃにある解析結果を読み出してもらうことになる（図１では、外部とのインターフェイスは省略している）。
【００２５】
図２は、この発明の実施の形態１に係る電磁界解析装置のストリーム型時間変化式算出部の詳細構成を示す図である。
【００２６】
図２において、時間変化式算出部２は、メモリ制御部３に渡すパラメータ（制御信号）を生成する制御部１１と、メモリ群４ａ〜４ｃから読み出した係数や電磁界値の読み出し用のデータ線１２ａ〜１２ｆと、遅延回路１３ａ〜１３ｆと、減算回路１４ａ〜１４ｃと、乗算回路１５ａ〜１５ｃと、加算回路１６と、バイパス回路１７ａ〜１７ｂとが設けられている。
【００２７】
なお、読み出し用のデータ線１２ａ〜１２ｆは、読み出し用のデータ線７ａ〜７ｃを細かく分けたものである。また、演算回路である「減算回路１４ａ〜１４ｃ、乗算回路１５ａ〜１５ｃ、加算回路１６」は、いずれもストリーム型演算を行う。ストリーム型とは、１クロック毎に次々と値を受け取り、数クロック遅れで、順繰りに演算結果を出力するタイプを示している。この時間変化式算出部２に係数の遅延回路１３ａ、１３ｃを含むため、係数用のメモリ群４ａをアドレス制御するアドレス線の数を削減することができる。
【００２８】
図３は、この発明の実施の形態１に係る電磁界解析装置のメモリ群の詳細構成を示すブロック図である。
【００２９】
図３において、個々のメモリ２１ａ〜２１ｈと、読み出し用のデータ線２２とが描かれている。
【００３０】
なお、個々のメモリ２１ａ〜２１ｈとデータ線２２は、メモリ群４ａ〜４ｃと読み出し用のデータ線７ａ〜７ｃを、それぞれ細かく分けたものである。また、書き込み信号２３ａ〜２３ｃが図示されている。
【００３１】
この発明の実施の形態１に係る電磁界解析装置１は、ＦＤＴＤ法における電界と磁界の時間変化式を算出する時間変化式算出部２と、解析領域を分割した各セルの電磁界値や係数を保持する複数のメモリ群４ａ〜４ｃと、この複数のメモリ群４ａ〜４ｃを制御するメモリ制御部３とを備え、時間変化式をストリーム形式で並列実行すると共に、メモリ制御部３とメモリ間のアドレス線の数を削減することで、ＦＰＧＡやＡＳＩＣ１個あたりの演算性能を上げ、装置全体で処理時間の短縮を図るものである。
【００３２】
つぎに、この実施の形態１に係る電磁界解析装置の動作について図面を参照しながら説明する。
【００３３】
まず、電磁界解析装置１は、時間変化式で電界値Ｅｚ、磁界値Ｈｘ、Ｈｙの３つの値を更新する。この更新を一定回数行った所で、処理を終える。
【００３４】
時間変化式算出部２は、メモリ制御部３に対し、解析領域１０１を順番にスキャンするように指示する。
【００３５】
メモリ制御部３は、読み出し用のアドレス線６ａに、解析領域１０１を順番にスキャンするようにアドレスを出力する。
【００３６】
時間変化式算出部２は、ストリーム型演算で電界Ｅｚの時間変化式の算出を行い、算出結果を順繰りに、書き込み用のデータ線８に書き出す。
【００３７】
メモリ制御部３は、時間変化式算出部２の書き出しタイミングに合わせて、書き込み用のアドレス線６ｂにアドレスを出力する。同様に、書き込み信号２３ｃも有効にする。この書き込みにより、電界値が更新される。
【００３８】
全セルの電界値を更新するまで、上記の処理を繰り返す。これにより、電界値Ｅｚの更新が終了する。
【００３９】
次に、同じ手順で、時間変化式算出部２に、磁界Ｈｘの時間変化式の算出を行わせる。これによって、磁界値Ｈｘの更新が終了する。
【００４０】
最後に、同じ手順で、時間変化式算出部２に、磁界Ｈｙの時間変化式の算出を行わせる。これによって、磁界値Ｈｙの更新が終了する。以上を、１セット（１回）として、更新を繰り返す。
【００４１】
ここで、時間変化式算出部２の算出の流れについて詳細に説明する。
【００４２】
まず、電界値Ｅｚの更新を例にとる。この更新では、時間変化式算出部２は、読み出し用のデータ線１２ａ〜１２ｆから同じセルに対応する以下の値を同時に受け取る。
データ線１２ａ：係数Ｃｅｚｌｙ（ｉ，ｊ）
データ線１２ｂ：磁界値Ｈｘ（ｉ，ｊ）
データ線１２ｃ：係数Ｃｅｚｌｘ（ｉ，ｊ）
データ線１２ｄ：磁界値Ｈｙ（ｉ，ｊ）
データ線１２ｅ：係数Ｃｅｚ（ｉ，ｊ）
データ線１２ｆ：電界値Ｅｚ（ｉ，ｊ）
【００４３】
これらを受け取った時間変化式算出部２の内部では、次のような動作が行われる。なお、解析領域を１行分スキャンするのに要するクロック数をＮとおく。
【００４４】
遅延回路１３ｂは、１クロック分データを遅らせる。
減算回路１４ａは、上記動作により、Ｈｘ（ｉ，ｊ）とＨｘ（ｉ，ｊ＋１）を同時に受け取り、減算を実施する。
遅延回路１３ａは、「減算回路の遅延＋１」クロック分データを遅らせる。
乗算回路１５ａは、上記動作により、「Ｃｅｚｌｙ（ｉ，ｊ）」と「Ｈｘ（ｉ，ｊ＋１）−Ｈｘ（ｉ，ｊ）」を同時に受け取り、乗算を実施する。
遅延回路１３ｄは、Ｎクロック分データを遅らせる。
減算回路１４ｂは、上記動作により、Ｈｙ（ｉ，ｊ）とＨｙ（ｉ＋１，ｊ）を同時に受け取り、減算を実施する。
遅延回路１３ｃは、「減算回路の遅延＋Ｎ」クロック分データを遅らせる。
乗算回路１５ｂは、上記動作により、「Ｃｅｚｌｘ（ｉ，ｊ）」と「Ｈｙ（ｉ＋１，ｊ）−Ｈｙ（ｉ，ｊ）」を同時に受け取り、乗算を実施する。
乗算回路１５ｃは、「Ｃｅｚ（ｉ，ｊ）」と「Ｅｚ（ｉ，ｊ）」を同時に受け取り、乗算を実施する。
遅延回路１３ｅ，１３ｆは、減算回路１４ｃ，加算回路１６において、加減算する値が揃うクロック数分、データを遅らせる。
【００４５】
以上の動作により、時間変化式算出部２は、電界値Ｅｚの更新を「１セル当たり１クロック」の処理速度で実施できる。
【００４６】
次に、磁界値Ｈｘの更新を例にとる。この更新では、時間変化式算出部２は、読み出し用のデータ線１２ａ〜１２ｆから同じセルに対応する以下の値を同時に受け取る。
データ線１２ｃ：係数−Ｃｈｘｌｙ（ｉ，ｊ）
データ線１２ｄ：電界値Ｅｚ（ｉ，ｊ）
データ線１２ｆ：磁界値Ｈｘ（ｉ，ｊ）
【００４７】
各メモリ２１ａ〜２１ｈからのデータ線２２とこれらデータ線１２ａ〜１２ｆとの対応付けは、演算エンジン５の内部で実施するが、ここでは特に図示しない。これを受け取った時間変化式算出部２の内部では、次のような動作が行われる。
【００４８】
遅延回路１３ｄは、１クロック分データを遅らせる。
減算回路１４ｂは、上記動作により、Ｅｚ（ｉ，ｊ）とＥｚ（ｉ，ｊ＋１）を同時に受け取り、減算を実施する。
遅延回路１３ｃは、「減算回路の遅延＋１」クロック分データを遅らせる。
乗算回路１５ｂは、上記動作により、「−Ｃｈｘｌｙ（ｉ，ｊ）」と「Ｅｚ（ｉ，ｊ＋１）−Ｅｚ（ｉ，ｊ）」を同時に受け取り、乗算を実施する。
バイパス回路１７ａ、１７ｂは、乗算回路１５ｃと減算回路１４ｃの出力を無視し、値を遅延無しでバイパスする。
遅延回路１３ｆは、「減算回路の遅延＋１」クロック分データを遅らせる。
加算回路１６は、「Ｈｘ（ｉ，ｊ）」と「−Ｃｈｘｌｙ（ｉ，ｊ）×｛Ｅｚ（ｉ，ｊ＋１）−Ｅｚ（ｉ，ｊ）｝」を同時に受け取り、加算を実施する。
【００４９】
以上の動作により、時間変化式算出部２は、磁界値Ｈｘの更新を「１セル当たり１クロック」の処理速度で実施できる。
【００５０】
最後に、磁界値Ｈｙの更新を例にとる。この更新では、時間変化式算出部２は、読み出し用のデータ線１２ａ〜１２ｆから同じセルに対応する以下の値を同時に受け取る。
データ線１２ｃ：係数−Ｃｈｙｌｘ（ｉ，ｊ）
データ線１２ｄ：電界値Ｅｚ（ｉ，ｊ）
データ線１２ｆ：磁界値Ｈｙ（ｉ，ｊ）
【００５１】
各メモリ２１ａ〜２１ｈからのデータ線２２とこれらデータ線１２ａ〜１２ｆとの対応付けは、演算エンジン５の内部で実施するが、ここでは特に図示しない。これを受け取った時間変化式算出部２の内部では、次のような動作が行われる。
【００５２】
遅延回路１３ｄは、Ｎクロック分データを遅らせる。
減算回路１４ｂは、上記動作により、Ｅｚ（ｉ，ｊ）とＥｚ（ｉ＋１，ｊ）を同時に受け取り、減算を実施する。
遅延回路１３ｃは、「減算回路の遅延＋Ｎ」クロック分データを遅らせる。
乗算回路１５ｂは、上記動作により、「−Ｃｈｙｌｘ（ｉ，ｊ）」と「Ｅｚ（ｉ＋１，ｊ）−Ｅｚ（ｉ，ｊ）」を同時に受け取り、乗算を実施する。
バイパス回路１７ａ、１７ｂは、乗算回路１５ｃと減算回路１４ｃの出力を無視し、値を遅延無しでバイパスする。
遅延回路１３ｆは、「減算回路の遅延＋１」クロック分データを遅らせる。
加算回路１６は、「Ｈｘ（ｉ，ｊ）」と「−Ｃｈｙｌｘ（ｉ，ｊ）×｛Ｅｚ（ｉ＋１，ｊ）−Ｅｚ（ｉ，ｊ）｝」を同時に受け取り、加算を実施する。
【００５３】
以上の動作により、時間変化式算出部２は、磁界値Ｈｙの更新を「１セル当たり１クロック」の処理速度で実施できる。
【００５４】
以上の動作により、電磁界解析装置１は、１クロック当たり「１セル・１時間変化式・１更新」の速度レートで、処理を行わせることができる。
【００５５】
実施の形態２．
この発明の実施の形態２に係る電磁界解析装置について図４及び図５を参照しながら説明する。この発明の実施の形態２に係る電磁界解析装置の基本構成は、上記の実施の形態１と同様である。
【００５６】
図４は、この発明の実施の形態２に係る電磁界解析装置のストリーム型時間変化式算出部の詳細構成を示すブロック図である。
【００５７】
図４において、時間変化式算出部２は、制御部１１と、メモリ２１ａ〜２１ｈから読み出した係数や電磁界値の読み出し用のデータ線３１ａ〜３１ｈと、電界Ｚ軸成分用の時間変化式算出回路３２ａと、磁界Ｘ軸成分用の時間変化式算出回路３２ｂと、磁界Ｙ軸成分用の時間変化式算出回路３２ｃと、書き込み用のデータ線３３ａ〜３３ｃと、遅延回路３４とが設けられている。
【００５８】
図５は、この発明の実施の形態２に係る電磁界解析装置のメモリ群の詳細構成を示すブロック図である。
【００５９】
図３と比較すると、「書き込み用のデータ線８」が「書き込み用のデータ線３３ａ〜３３ｃ」と、データ線が複数に分かれている点が異なる。
【００６０】
つぎに、この実施の形態２に係る電磁界解析装置の動作について図面を参照しながら説明する。
【００６１】
上記の実施の形態１では、Ｅｚ、Ｈｘ、Ｈｙの更新を順番に行っていたが、この実施の形態２では、これら３つの更新を並列実行により、同時に行う。
【００６２】
ここで、時間変化式算出回路３２ａは、上記の実施の形態１の中でＥｚの更新で説明した回路と同じである。時間変化式算出回路３２ｂと時間変化式算出回路３２ｃも、基本的には同じである。しかし、図２記載の回路で、実施の形態１のＨｘ算出とＨｙ算出の説明で使用していない部分は、時間変化式算出回路３２ｂと時間変化式算出回路３２ｃに含まれてない。
【００６３】
また、時間変化式算出回路３２ｂと時間変化式算出回路３２ｃの中で用いる遅延回路の遅延量と、遅延回路３４の遅延量は、以下の目的に合わせて変更する。
時間変化式算出回路３２ａの出力に同期させる。
書き込み用のデータ線３３ａ〜３３ｃに現れる３つの算出結果が同一のセルのものになるように同期させる。
【００６４】
なお、図４では、時間変化式算出回路３２ａ、時間変化式算出回路３２ｂ、時間変化式算出回路３２ｃを分けているが、それぞれの接続を見ると、複数の遅延回路が直列、並列に繋がる箇所が複数ある。これを、統合して、遅延回路の規模を削減することもできる。
【００６５】
以上の動作により、この実施の形態２に係る電磁界解析装置１は、１クロック当たり「１セル・１更新」の速度レートで、処理を行わせることができる。上記の実施の形態１と比較した場合、必要とする回路規模や入出力線数が実施の形態１より増えるものの、処理時間を約３分の１に短縮できる。
【００６６】
実施の形態３．
この発明の実施の形態３に係る電磁界解析装置について図６を参照しながら説明する。この発明の実施の形態３に係る電磁界解析装置の基本構成は、上記の実施の形態１と同様である。
【００６７】
図６は、この発明の実施の形態３に係る電磁界解析装置のストリーム型時間変化式算出部の詳細構成を示すブロック図である。
【００６８】
図６において、時間変化式算出部２は、メモリ２１ａ〜２１ｈから読み出した係数や電磁界値の読み出し用のデータ線４１ａ、４１ｂと、書き込み用のデータ線４１ｃ、４１ｄと、奇数行セル用の時間変化式算出回路４２ａと、偶数行セル用の時間変化式算出回路４２ｂとが設けられている。
【００６９】
なお、これに合わせ、各メモリ２１ａ〜２１ｈも奇数行セルと偶数行セルで分割する。この時、メモリのアクセスに用いるアドレス線は、最下位ビット以外、２つのセルで共用できる。
【００７０】
つぎに、この実施の形態３に係る電磁界解析装置の動作について図面を参照しながら説明する。
【００７１】
この実施の形態３では、２行幅で解析領域を走査する。ここで、奇数行セル用の時間変化式算出回路４２ａと偶数行セル用の時間変化式算出回路４２ｂの構成は、図４で示した時間変化式算出部２とほぼ同じである。ただし、（ｉ＋１，ｊ）となるセルの値を取得する方法は、もう１つのブロックからの取得になる。また、相手の時間変化式算出回路が担当するセルは、（ｉ＋１，ｊ）または（ｉ−１，ｊ）になるが、相手が（ｉ＋１，ｊ）を担当している場合は、Ｎクロック分の遅延なしに、値を利用することができる。
【００７２】
以上の動作により、この実施の形態３に係る電磁界解析装置１は、１クロック当たり「２セル・１更新」の速度レートで、処理を行わせることができる。上記の実施の形態２と比較した場合、必要とする回路規模や入出力線数が実施の形態２より更に増えるものの、処理時間を更に約２分の１に短縮できる。
【００７３】
なお、この実施の形態３では、２行幅で解析領域を走査するとしたが、３行以上の幅をすることも可能である。その場合も、より回路規模や入出力線数が増加するが、その分、処理時間も短縮することができる。
【００７４】
実施の形態４．
この発明の実施の形態４に係る電磁界解析装置について図７を参照しながら説明する。この発明の実施の形態４に係る電磁界解析装置の基本構成は、上記の実施の形態１と同様である。
【００７５】
図７は、この発明の実施の形態４に係る電磁界解析装置のストリーム型時間変化式算出部の詳細構成を示すブロック図である。図７のストリーム型時間変化式算出部２は、基本的に図４の構成を直列に繋いだ構成である。
【００７６】
図７において、時間変化式算出部２は、１セル分の時間変化式算出回路４３ａ、４３ｂと、遅延回路４４とが設けられている。１セル分の時間変化式算出回路４３ａ、４３ｂの構成は、図４に示す時間変化式算出部２と同じである。
【００７７】
つぎに、この実施の形態４に係る電磁界解析装置の動作について図面を参照しながら説明する。
【００７８】
この実施の形態４では、２回の更新を１度に行う。この構成では、１セル分の時間変化式算出回路４３ａの出力、及び１セル分の時間変化式算出回路４３ｂの入力において、メモリアクセスが不要であり、その分、少ない入出力線数で装置を構成することができる。
【００７９】
以上の動作により、この実施の形態４に係る電磁界解析装置１は、１クロック当たり「１セル・２更新」の速度レートで、処理を行わせることができる。上記の実施の形態２と比較した場合、必要とする回路規模や入出力線数が実施形態２より更に増えるものの、処理時間を更に約２分の１に短縮できる。なお、１セル算出を直列に繋ぐ数を増やすことも可能である。
【００８０】
実施の形態５．
この発明の実施の形態５に係る電磁界解析装置について図８を参照しながら説明する。この発明の実施の形態５に係る電磁界解析装置の基本構成は、上記の実施の形態１と同様である。
【００８１】
図８は、この発明の実施の形態５に係る電磁界解析装置の係数格納用のメモリのデータ格納位置を示す図である。この図８は、例えば、メモリ２１ｂの係数Ｃｈｘｌｙの格納先の変更について示したものである。
【００８２】
つぎに、この実施の形態５に係る電磁界解析装置の動作について図面を参照しながら説明する。
【００８３】
この実施の形態５では、係数を格納したメモリ２１ｂの格納内容以外は、上記の実施の形態１と同じである。
【００８４】
図８において、Ｍは解析領域の行数、Ｎは解析領域の列数、Ｌは時間変化式算出部２内の遅延回路１３ａの遅延クロック数であるとする。
【００８５】
図８（ａ）に示すように、格納位置変更前は、左側にデータＤａ、右側の上にデータＤｂ、右側の下にデータＤｃが格納されている。図８（ｃ）に示すように、格納位置変更後は、左側の上にデータＤｃ、左側の下にデータＤｂ、右側にデータＤａが格納されている。
【００８６】
ここで、係数Ｃｈｘｌｙをメモリ２１ｂに格納する際、メモリ２１ｂの係数Ｃｈｘｌｙの格納位置を、解析領域の行方向に、遅延クロック数Ｌ分だけずらせば、遅延回路１３ａが不要になる。同様のずらしを、他の係数のメモリでも行えば、同様に時間変化式算出部２内の遅延回路１３ｃも不要になる。同様の遅延回路の削減は、他の実施の形態でも同様に行うことができる。
【００８７】
以上の動作により、この実施の形態５に係る電磁界解析装置１は、時間変化式算出部２の回路規模を縮小することができる。
【００８８】
実施の形態６．
この発明の実施の形態６に係る電磁界解析装置について図９を参照しながら説明する。
【００８９】
図９は、この発明の実施の形態６に係る電磁界解析装置の構成を示すブロック図である。
【００９０】
図９において、この発明の実施の形態６に係る電磁界解析装置１は、メモリ群（係数用）４ａと、ＦＰＧＡ／ＡＳＩＣ等で構成される演算エンジン５と、メモリ群５７ａ〜５７ｆとが設けられている。
【００９１】
また、演算エンジン５は、時間変化式算出部２と、データセレクタ５６とが設けられている。なお、メモリ制御部３や、メモリ制御部３とメモリ群４ａ、５７ａ〜５７ｆを接続する読み出し用のアドレス線６ａ、書き込み用のアドレス線６ｂが省略されている。
【００９２】
また、時間変化式算出部２は、１セル分の時間変化式算出回路５１と、データの書き込み（出力）タイミングを調整するＦＩＦＯ５２とが設けられている。１セル分の時間変化式算出回路５１の構成は、図４に示す時間変化式算出部２と同じである。
【００９３】
係数用のメモリ群４ａと時間変化式算出回路５１は、係数読み出し用のデータ線７ａによって接続されている。データセレクタ５６と時間変化式算出回路５１は、読み出し用のデータ線５３によって接続されている。ＦＩＦＯ５２とデータセレクタ５６は、書き込み用のデータ線５４によって接続されている。データセレクタ５６とメモリ群５７ａ〜５７ｆは、読み書き用の双方向のデータ線５５によって接続されている。なお、メモリ群５７ａ〜５７ｆは、電磁界値を奇数／偶数行で分けて格納する。
【００９４】
つぎに、この実施の形態６に係る電磁界解析装置の動作について図面を参照しながら説明する。
【００９５】
電磁界解析装置１は、解析領域を走査するため、奇数行と偶数行を交互に読み出し、奇数行と偶数行を交互に更新する。この実施の形態６のように、メモリ群５７ａ〜５７ｆを奇数行と偶数行で分ければ、電磁界解析装置１は、奇数行メモリ群５７ａ〜５７ｃを読み出しの間、偶数行メモリ群５７ｄ〜５７ｆへの読み出しを行わないため、この期間を用いて、偶数行メモリ群５７ｄ〜５７ｆに電磁界値の更新結果を書き込むことができる。
【００９６】
しかしながら、１セル分の時間変化式算出回路５１の出力をそのままメモリ群５７ｄ〜５７ｆに書き込もうとすると、読み出しと競合するため、ＦＩＦＯ５２を用いて、更新データを書き込むタイミングを遅らせ、競合を回避する。また、メモリ群５７ａ〜５７ｆとの接続が双方向になるため、この切り替えをデータセレクタ５６で実施する。
【００９７】
上記の実施の形態２では、電磁界値を保持するメモリに、同時読み書き可能なデュアルポート・メモリを必要としたが、この実施の形態６では、この制限を外し、同時読み書き不可のシングルポート・メモリを使って構成することも可能になる。
【００９８】
なお、この実施の形態６は、奇数行と偶数行でメモリ群を分けているが、行前半と行後半というような分割を行うこともできる。
【００９９】
以上の動作により、この実施の形態６に係る電磁界解析装置１は、メモリに、より安価なシングルポート・メモリを用いることができるようになる。
【０１００】
実施の形態７．
この発明の実施の形態７に係る電磁界解析装置について図１０を参照しながら説明する。この実施の形態７は、上記の実施の形態６を３次元ＦＤＴＤに拡張したものである。
【０１０１】
図１０は、この発明の実施の形態７に係る電磁界解析装置の構成を示すブロック図である。
【０１０２】
図１０において、この発明の実施の形態７に係る電磁界解析装置は、メモリ群４ａ〜４ｃと、ＦＰＧＡ／ＡＳＩＣ等で構成される演算エンジン５とが設けられている。なお、この演算エンジン５の構成は、上記の実施の形態６の演算エンジン５と同じである。
【０１０３】
係数用のメモリ群４ａと演算エンジン５は、係数読み出し用のデータ線７ａによって接続されている。演算エンジン５とメモリ群４ｂ〜４ｃは、読み書き用の双方向のデータ線５５によって接続されている。
【０１０４】
つぎに、この実施の形態７に係る電磁界解析装置の動作について図面を参照しながら説明する。
【０１０５】
３次元のＦＤＴＤ法でも、２次元ＦＤＴＤ法と同じように、３次元の解析領域を順に走査してゆく。この時、演算エンジン５への電磁界値の入力が１セル各１回とすると、時間変化式を求める際、隣接セルの電磁界値を必要とするため、演算エンジン５は、１面分以上の値を内部の遅延回路で保持することになる。これは、上記の実施の形態１〜６において、メモリ群で実現したものを、演算エンジン５に内蔵することにほぼ等しい。この場合、解析領域１面分の大きさが、演算エンジン５に実装できる大きさで制限される。
【０１０６】
この実施の形態７は、電磁界値を格納するメモリ群４ｂ〜４ｃを奇数面と偶数面に分けることで、隣接する面の値を同時に読み出すことを可能としている。これにより、演算エンジン５の遅延回路で保持する値の量は、「１面分＋α」から「１行分＋α」に減る。
【０１０７】
以上の動作により、この実施の形態７に係る電磁界解析装置１は、演算エンジン５に膨大な遅延回路を用意することなく、解析を実施することができる。
【符号の説明】
【０１０８】
１  電磁界解析装置、２  ストリーム型時間変化式算出部、３  メモリ制御部、４ａ、４ｂ、４ｃ  メモリ群、５  演算エンジン、６ａ、６ｂ  アドレス線、７ａ、７ｂ、７ｃ  データ線、８  データ線、９  制御線。
【図１】
2010271119.tif 000005
【図２】
2010271119.tif 000006
【図３】
2010271119.tif 000007
【図４】
2010271119.tif 000008
【図５】
2010271119.tif 000009
【図６】
2010271119.tif 000010
【図７】
2010271119.tif 000011
【図８】
2010271119.tif 000012
【図９】
2010271119.tif 000013
【図１０】
2010271119.tif 000014
【図１１】
2010271119.tif 000015