Register-Transfer Level (RTL)
レジスタ転送レベル(RTL)は、同期式ディジタル回路を、ハードウェアレジスタ間のディジタル信号の流れと、その信号に施される論理演算という形でモデル化する設計抽象度である。トランジスタやゲートを個別に並べるのではなく、どのレジスタからどのレジスタへ、どのような演算を経て値が移るかを記述する。設計者が実際に手を入れる層はこのRTLであり、ここから下流の実装は自動化されている。
記述にはVerilogやVHDLといったハードウェア記述言語を用いる。設計者はレジスタを宣言し、組合せ論理を条件分岐や算術演算といったプログラミング言語に近い構文で記述する。クロックに同期して値が更新される順序回路と、クロックに依存しない組合せ回路を明確に分けて書くことが基本になる。RTL記述は論理合成ツールによってゲートレベルの回路記述へ変換され、ASICやFPGAの実装ファイルへ落とし込まれる。合成結果は記述の仕方に強く依存するため、同じ機能でも書き方によって面積、遅延、消費電力が変わる。ソフトウェアのコンパイラでは中間表現として現れる概念であるのに対し、ハードウェア設計では人が書く入力そのものである点が特徴的である。
RTLは、仕様と物理実装をつなぐ結節点であり、設計工数と検証工数の大半がこの層に集中する。RTL記述の生成、レビュー、リファクタリング、検証環境の構築を自動化する取り組みは、設計期間の短縮に直結するため、EDAツールの主要な適用領域となっている。