FPGA開発日記

カテゴリ別記事インデックス https://msyksphinz.github.io/github_pages , English Version https://fpgadevdiary.hatenadiary.com/

オープンソースFPGAフォーマットの仕様書を読む (2. PIPの仕様を読んでいく)

以下の記事の続き。仕様書を読んでいく。サイトとかPIPの定義、制約について細かく書いてあるが、正直この段階では何を言っているのか良く分からない。

msyksphinz.hatenablog.com

msyksphinz.hatenablog.com

fpga-interchange-schema.readthedocs.io

FPGA Interchange Document

ネットの配線について

ネットについての各種制約が書いてあるが、要するにサイトを移動する際は必ずネットを経由しなければならない、と考えればよいのだろうか。 サイトというのは「サイトピン、サイトワイヤ、BEL の集合体」と定義され、さらにBELは「Basic Logic Element (基本論理素子) の略称」なので 各ロジックセルに接続するためのワイヤの制約であると考えれば良かろう。外部から配線を引き込む時はサイトピンを経由してワイヤを接続し、外部に出力するときはサイトピンを経由して出力する。おそらくそれだけのことを仕様としてかっちり組み立てたものと思われる。

サイトPIPの使用

PIP配線の接続方法についての制約。PIPというのはprogramable interconnect point の略語で、プログラマブルスイッチのことを指す。

  • サイトPIPはサイト入力からサイト出力へルートスルーとして使用することは出来ない。 この制約の目的は良く分からないのだが、とにかく入力から出力へ直接接続する場合はタイルPIPを使用する必要があるらしい。 ちなみによく考えると「サイトPIP」も「タイルPIP」も初出なのでどういう使い分けをしているのか不明。

一応図が載っている。

  1. 一番上は、サイトPIPは内部配線(入力ピンからDFFへ)へ使用可能であることを示している。
  2. 二番目は、BEL内部を通過するような配線においてサイトPIPを使用してはならないということを示している。サイトPIPを私用すべき
  3. 三番目は、赤い配線はサイトPIPを使用することは出来ないことを示している。一方で緑の配線は何を示しているのか良く分からない

https://fpga-interchange-schema.readthedocs.io/_images/site_pip_usage.svg

タイルのタイプとサイトのタイプ

タイルとサイトにはタイプ(type)がある。タイルとサイトの定義には、インスタンスの繰り返しというよりも、typeが多く含まれている。 これについては現時点ではまだ良く分からないので省略。

BELのルーティング

BELのルーティングについてはサイトのワイヤを、入力BELピンに接続して、出力BELピンに接続する。BELのルーティンgうには1つの出力BELピンが必要である。

サイトポートBEL

サイトポートBELは、親のタイルからサイトへのピン接続を示す。 サイトポートBELは1つのBELピンを持っており、BELの名前とピンの名前は同一である。