CLI エンジンコマンド
明示された制限と入力契約に従って、ローカル設計エンジン、ネイティブ XLS と CUDA、DDS の編集機能を使用します。
概要
このページでは、ローカル設計エンジンのコマンド、主要な引数、実行の境界を説明します。オプションと値の列挙をすべて確認するには、インストール済みコマンドの末端サブコマンドで --help を参照してください。結果を設計上の根拠に用いる前に、その結果自体が示す制限を確認してください。
まず CLI コマンド体系 を読んでください。以下のすべてのコマンドが依存するルーティング、終了コード、レシートのエンベロープ、同じディレクトリにある実行ファイルの解決規則を定義しています。job 名前空間、analyze run、evolve run については CLI ジョブと Cloud コマンド を参照してください。
表内の表記:
<ANGLE>は位置引数、[ANGLE]...は繰り返し指定できる任意引数です。「必須」列のオプションがない場合、コマンドは何も起動せずに終了コード
2で終了します。すべてのサブコマンドは
--jsonと-h/--helpも受け付けます。各行での記載は省略しています。--projectは、行内に別の説明がなければ--project<PROJECT>で、相対入力・出力パスの基準になる任意の作業ディレクトリです。実在するディレクトリに解決できなければ、終了コード2で終了します。
capabilities
alti capabilities は、認証済みのインストール構成を調べ、利用可能な操作を報告します。まず Linux へのインストール を完了してください。0.1.9 の組み込みブートストラップは、従来不足していたレシートとペイロードの構成を提供します。機能の応答は、カーネルや設計を実行した証拠ではありません。
rtl
サブコマンドは 28 個あります。rtl compile と rtl synthesize は --runner を持つ 2 つの互換経路です。それ以外の rtl サブコマンドはすべて、条件にかかわらずローカルで実行されます。
これら 2 つは physical run と px analyze と異なり、固定のエンジン操作を指定するため、引き渡す引数がなくてもエンジンを起動します。その後、エンジン自身が引数不足を報告し、終了状態がそのまま返されます。必要な引数を -- の後に指定してください。
コマンド | 必須 | その他のオプション | 目的 |
|---|---|---|---|
| — |
| 同梱コンパイルエンジンに委譲する互換経路 |
| — |
| 従来の生のローカル合成委譲に対する互換表記 |
| 少なくとも 1 つの |
| 保存済み RTL ソースから、コンパイラが検証した回路図契約を出力 |
| 少なくとも 1 つの |
| 指定ソースに対して同梱の解析操作を実行 |
|
|
| 同梱の合成操作を実行 |
|
|
| 同梱のテクノロジーマッピング操作を実行 |
| — | — | 固定のターゲット解析契約と実行器の利用可否を報告 |
| — | — | パスを必要としない、読み取り専用のターゲット解析実行準備状況を報告 |
| 以下の 11 オプション |
| 標準入力のソースバンドル JSON から、型付きの受付要求 1 件を検証 |
| 以下の 11 オプション |
| 標準入力のソースバンドル JSON から構造の事前検査を実行 |
|
|
| 範囲を限定した保存済み RTL シミュレーション要求 1 件を受け付け、事前検査または実行 |
| — | — | 固定の 4 値マルチクロックシミュレーション契約を報告 |
|
|
| 範囲を限定した 4 値マルチクロック要求 1 件を受け付け、事前検査または実行 |
|
|
| 結果レシート 1 件をプロジェクトのアーティファクトストアに保存 |
| — |
| 保存済みエントリを一覧表示 |
|
|
| 保存済みエントリ 1 件を読み取り |
| — |
| 所有者専用の固定レジストリにある、検証済み識別情報を定められた範囲で一覧表示 |
|
|
| 現在の検証済み一覧から選択した識別情報 1 件を再読み取り |
|
|
| 上記と同じ操作を、グローバル共有の識別情報に対して実行 |
|
|
| 上記と同じ操作を、マッピング済みタイミングの識別情報に対して実行 |
|
|
| 上記と同じ操作を、マッピング済みレジスタタイミングの識別情報に対して実行 |
--schematic を 3 つの rtl artifact サブコマンドに指定すると、RTL 操作結果ストアの代わりに固定の回路図レシートストアが選択されます。
--entry-id は、確定済み識別情報を扱う末端サブコマンドでは、正確に 64 文字の小文字の 16 進数でなければなりません。それ以外は、終了コード 2、entry id must be exactly 64 lowercase hexadecimal characters で拒否されます。
rtl schematic の制限
rtl schematic は、何も起動する前にパスを検証します。ソースファイル、インクルードディレクトリ、定義が次のいずれかに違反すると、受付時に拒否されます。
制限 | 値 |
|---|---|
ソースファイル | 最大 256 |
インクルードディレクトリ( | 最大 128 |
定義( | 最大 256 |
パス長 | 1~4096 バイト |
パスの構成要素 | 1~128 |
パスの構成要素 1 個 | 最大 255 バイト |
パスは選択したプロジェクトに対する相対パスで、先頭が - でなく、制御バイトや .. を含まないことが必要です。--top と定義名は、1~128 バイトの SystemVerilog 識別子でなければなりません。定義には = の後に値を付けられますが、全体で 4096 バイトまでです。
rtl target-analysis のオプション
admit と preflight は、標準入力から正規のソースバンドル JSON を読み取り、どちらも同じ 11 オプションを必須とします:--module <NAME>, --top <NAME>, --targets <CSV>, --primary-target <ID>, --tools <CSV>, --report-detail <LEVEL>, --profile <ID>, --cpu-slots <N>, --memory-bytes <N>, --max-wall-time-ms <N>、--deadline-unix-ms <N>。--cell-decomposition は任意のブール型フラグです。
オプション | 指定可能な値 |
|---|---|
|
|
| 次の値から選んだカンマ区切りの部分集合: |
| 次の値から選んだカンマ区切りの部分集合: |
|
|
--cpu-slots は 32 ビット符号なし整数、--memory-bytes, --max-wall-time-ms、および --deadline-unix-ms は 64 ビット符号なし整数です。
どちらの CSV でも、重複や一覧にない値は解析時に拒否されます。例:targets must be a comma-separated subset of: generic-asic, sky130-asic, xc7-fpga。
シミュレーション要求のエンベロープ
<REQUEST_JSON> は、CLI が何も起動する前に読み取り、検査するファイルのプロジェクト相対パスです。パスは正規化された相対パスで、どの構成要素でもシンボリックリンクを経由せず、プロジェクトルート内に解決される必要があります。ファイルは 260 MiB 以下の通常ファイルでなければなりません。
JSON は、正確に次の 4 キーを持つオブジェクトでなければなりません。
{
"schema": "altifigence.rtl.operation-request.v1",
"version": 1,
"operationId": "altifigence.rtl.simulate.v1",
"request": {}
}
operationId の必要値は altifigence.rtl.simulate.v1(rtl simulate の場合)、altifigence.rtl.simulate.v2(rtl simulate-v2 の場合)です。不一致は起動前に RTL simulation request must be the exact <id> envelope で拒否されます。
確定済み識別情報のサブコマンドは実行できません
8 個の rtl *-committed-identities list と read 末端サブコマンドは、alti-rtl-runner というエンジンに処理を渡します。このバイナリは リリースでビルド・同梱される 24 個のエンジンバイナリに含まれません。そのため、正しいインストールでも alti と同じディレクトリからも PATH からも解決できません。呼び出すと、次の値を持つローカルエンジンのレシートが生成されます:status: "unavailable" および exitCode: 127。
テキスト
$ alti --json rtl fanout-free-committed-identities list
{
"schema": "altifigence.local-engine-execution.v1",
"status": "unavailable",
"domain": "rtl",
"operation": "fanout-free-committed-identities-list",
"runner": "local",
"binary": "alti-rtl-runner",
...
}
これら 8 コマンドを基に自動化を構築しないでください。
sv
サブコマンドは 23 個あり、すべて条件にかかわらずローカルで実行されます。いずれも --runner を受け付けません。
コマンド | 必須 | その他のオプション | 目的 |
|---|---|---|---|
| — |
| 指定パスのフロントエンド索引を構築 |
| — |
| 指定パスのシンボル情報を報告 |
| — |
| 第 2 世代のシンボル応答形式 |
| 位置 |
| 指定位置の定義を解決 |
| 位置 |
| 指定位置のホバー応答を解決 |
|
|
| 指定プレフィックスに対する補完を解決 |
| 位置 |
| 指定位置にあるシンボルの参照を解決 |
| 位置、 |
| ファイルを編集せずに名前変更計画を生成 |
| 5 つすべて |
| レビュー済み計画のハッシュを確認して名前変更を適用 |
| — | — | コンパイルやシミュレーションをせずに即時アサーションをレビュー |
| — | — | コンパイルやシミュレーションをせずにプロセス間同期をレビュー |
| — |
| 制約付きランダム参照カタログのエントリを一覧表示 |
|
| — | 制約付きランダムカタログのエントリ 1 件を表示 |
| — |
| SVA 参照カタログのエントリを一覧表示 |
|
| — | SVA カタログのエントリ 1 件を表示 |
| — | — | コンパイル済み UVM ブリッジ契約を報告 |
| — | — | UVM ブリッジの環境情報を報告 |
| — | — | コンポーネントを読み込み・実行せずに、署名済み固定コンポーネントの準備状況レシートを返却 |
| — | — | UVM ブリッジ ABI を報告 |
| — | — | 範囲を限定した UVM シミュレーション契約を報告 |
| — | — | パスを必要としない実装準備状況と外部実行権限の準備状況を報告 |
| 以下の 13 オプション | — | 範囲を限定し、検証失敗時に拒否する UVM シミュレーション要求 1 件を検証 |
| 以下の 16 オプション |
| 範囲を限定し、検証失敗時に拒否する UVM シミュレーション要求 1 件を事前検査 |
位置引数の値の規則:
<LINE>と<COLUMN>は 1 始まりの、0 でない整数です。0は終了コード2で終了します。<REPLACEMENT>は SystemVerilog 識別子で、先頭は英字、_、または$、残りは英数字、_、または$です。<REVIEWED_PLAN_SHA256>は 64 文字の小文字の 16 進数でなければなりません。<STABLE_ID>は小文字の英字、数字、ハイフンから成る 1~128 文字でなければなりません。--filterは制御文字を含まない 1~128 バイト、--limitは 1~64 の整数でなければなりません。--limit65は終了コード2で終了します。
sv frontend rename-apply は sv 内で唯一 --project を必須とするサブコマンドです。値は実在するディレクトリへの絶対パスで、シンボリックリンクであってはなりません。指定しないと終了コード 1、SV rename apply requires --project <absolute-workspace> で終了します。
sv review immediate と sv review interprocess は、標準入力から SystemVerilog ソースを読み取ります。これらは sv 内で専用エンジン alti-sv-immediate-review と alti-sv-interprocess-review を持つ唯一のサブコマンドです。名前空間内のその他のすべてのコマンドは alti-sv-frontend を使用します。
sv uvm simulation admit は 13 オプションを必須とします:--bundle-id, --bundle-sha256, --source-count, --source-bytes, --test, --top, --clock, --period-ps, --cycles, --max-wall-time-ms, --max-cpu-cores, --max-memory-bytes、--max-artifact-bytes。sv uvm simulation preflight はその 13 オプションに加え、--attempt-id, --observed-at-unix-ms と --deadline-unix-ms を必須とし、さらにブール型の --cancellation-requested(既定値:false)を受け付けます。--source-count は 32 ビット符号なし整数、--max-cpu-cores は 16 ビット符号なし整数で、残りの数値オプションは 64 ビット符号なし整数です。
verification
コマンド | 必須 | その他のオプション | 目的 |
|---|---|---|---|
|
|
| トレース 1 件から比較プロファイルを出力 |
| 両方 |
| トレース 1 件を参照と比較して検査 |
--tolerance-pct は有限の非負数でなければなりません。負数や数値でない値は終了コード 2、tolerance-pct must be a finite non-negative number で終了します。
--format は、ここではエンジン自身の出力形式を選択し、CLI レベルのエンベロープフラグ --json とは独立しています。両方を併用できます。
trace
コマンド | 必須 | その他のオプション | 目的 |
|---|---|---|---|
|
|
| トレースファイル 1 件を調査 |
| 両方 |
| トレース 1 件のタイムライン表示を次の場所に書き出し: |
| 3 つすべて |
| トレース 1 件をエクスポート |
|
|
| 所有者ストアのアーティファクト識別情報から v1 レビューパッケージ 1 件を生成 |
| — |
| 所有者ストアの最新レビューパッケージを最大 5 件一覧表示 |
|
|
| パスを含まないレビューパッケージの要約 1 件を表示 |
|
|
| 検証済みレビューパッケージ 1 件を再読み取り |
<FORMAT> は trace export では、フラグではなく 位置引数 の値の列挙で、入力パスの前に置きます。値は vcd と chrome です。
--reference は、追加の参照アーティファクトを指定するために繰り返し使用できます。<TRACE_ARTIFACT_ID>、参照 ID、<PACKAGE_ID> は、-- を使用せずにハイフンで始めることができます。
注意:alti trace をサブコマンドなしで実行するとローカルパーサに到達し、サブコマンドの指定を求めて終了コード 2 で終了します。そのため、組み込みアクションマニフェストにある単語 1 つの trace アクションには、このリリースのコマンドラインから到達できません。CLI ジョブと Cloud コマンド を参照してください。
labs
読み取り専用の記述子と検証機能です。CLI はワークフロー実行を公開していません。
コマンド | 必須 | その他のオプション | 目的 |
|---|---|---|---|
| — | — | コンパイル時に固定されたワークフロー記述子カタログを調査 |
|
| — | 検査対象の JSON 境界健全性記述子 1 件を、実行せずに検証 |
| — | — | 記述子だけに基づく決定的な Labs 状態を出力 |
labs validate は 2 つの入力に厳密な規則を適用し、エンジン開始前に以下をすべて検査します。
--projectは実在するディレクトリへの絶対パスで、シンボリックリンクであってはなりません。<DESCRIPTOR>はワークスペース相対パスで、..やルート構成要素を含まず、4096 バイト以下でなければなりません。拡張子は
.jsonでなければなりません。1048576 バイト以下の実在する通常ファイルに解決され、解決後のパスもプロジェクト内に収まる必要があります。
tcl
コマンド | 必須 | その他のオプション | 目的 |
|---|---|---|---|
| — | — | Tcl ランタイムの機能記述子を報告 |
| — | — | Tcl ランタイムの環境記述子を報告 |
| — | — | 範囲を限定したコマンド記述子を報告 |
| — | — | Tcl を読み込まずに、固定の署名済みランタイム準備状況レシートを返却 |
| — | — | 標準入力から読んだ、範囲を限定した Tcl スクリプト 1 件を評価 |
最初の 4 コマンドは、同梱の alti-tcl エンジンを通して記述子から応答し、標準のローカルエンジンエンベロープを出力します。
tcl evaluate は次の 3 点が異なります。標準入力から最大 4194304 バイトのスクリプトを読み取り、空の入力を拒否します。alti-tcl-local-runner が alti と厳密に同じディレクトリにあることを必須とし、PATH による代替検索を行わず、インストール済みの信頼チェーンで検査します。0.1.9 ブートストラップは、この経路に必要な固定の署名済み Tcl コンポーネントをインストールするので、インストール済みバイナリを使ってください。また、独自の終了コードを持つレシートスキーマ altifigence.cli.tcl-evaluation.v1 を出力します。どちらも CLI コマンド体系 に記載されています。
eidb
コマンド | 必須 | その他のオプション | 目的 |
|---|---|---|---|
| — | — | EIDB 境界契約を報告 |
| — |
| プロジェクト配下のバンドルを一覧表示 |
|
|
| ワークスペース相対のアーティファクトから、所有する R1 バンドル 1 件を作成 |
|
|
| バンドル 1 件のポータブルなエクスポートを生成 |
|
| — | バンドル 1 件を再読み取り |
|
| — | 意味情報のビューからバンドル 1 件を再読み取り |
eidb capabilities, eidb readback と eidb semantic-readback は --project を受け付けません。CLI に関してはパスを必要としません。
physical
サブコマンドは 42 個あります。physical run は --runner を持つ互換経路です。残りはすべて条件にかかわらずローカルで実行し、自身のサブコマンド名をエンジン操作として alti-physical-runner にそのまま渡します。この名前空間での CLI の役割は、引数の受付とレシートの構成です。そのため、規則的なコマンド体系を次の 2 分類で示します。
分類 | 対象 | 引数 |
|---|---|---|
プロジェクト単位の操作 |
|
|
エントリ単位の後続操作 |
|
|
エントリ単位の後続操作はすべて、以前のプロジェクト単位の操作が生成した保存済みエントリを読み取ります。--entry-id を省略すると、何も起動せずに終了コード 2 で終了します。42 個中 36 個がこれに該当し、残る 6 個は次のとおりです。
コマンド | 必須 | その他のオプション | 目的 |
|---|---|---|---|
| — | — | 現在のプロジェクト配下の確定済み識別情報を定められた範囲で一覧表示 |
|
| — | 現在の限定された一覧から選んだ識別情報を、正確に 1 件再検証 |
|
|
| 結果レシート 1 件をプロジェクトのアーティファクトストアに保存 |
| — |
| 保存済みエントリを一覧表示 |
|
|
| 保存済みエントリ 1 件を読み取り |
| — |
| 従来の生のランナー委譲に対する互換経路 |
physical route-evidence-closure read は 2 段階のコマンドです。CLI はまず確定済み識別情報を一覧表示し、指定した --identity-key-sha256 がその一覧に含まれることを確認して、その 1 件だけを再読み取りします。キーが 64 文字の小文字の 16 進数でない、または現在の一覧にない場合、2 段階目の前に終了コード 1 で拒否されます。一覧表示の段階はパスを必要とせず、--project を受け付けません。
physical run は -- の後にエンジン操作がなければ起動しません:
テキスト
$ alti physical run
error: legacy local engine operation is required after `--`
この場合の終了コードは 1 です。受け付ける従来の操作は --capabilities-json, capabilities と execute です。それ以外は終了コード 1、legacy local engine operation ... is not in the public allowlist で終了します。
px
px analyze は --runner を持つ互換経路です。位置引数の名前が <INPUTS_RELATIVE_...> の場合、作業ディレクトリではなく、プロジェクトの inputs/ ディレクトリ配下で解決されます。
コマンド | 必須 | その他のオプション | 目的 |
|---|---|---|---|
| — | — | px 機能契約を報告 |
| — | — | 所有者が定義した FDTD2D 機能契約を表示 |
| — | — | CPU リースを取得せずに、インストール環境の動的な実行準備状況を報告 |
|
|
| FDTD2D 要求を検証し、実行できない理由を報告 |
| — |
| 同梱の px 実行操作を実行 |
|
|
| プロジェクト入力ファイル 1 件から、範囲を限定した非サインオフ用途の単一クロック静的タイミング解析を実行 |
|
|
| 1 件の |
|
|
| 限定された SPEF ファイル 1 件から、解析権限を伴わずに受動的な抽出済み R/C を報告 |
| 両方 |
| 呼び出し側が解決したコーナー 1 件に基づき、設定済みの寄生要素・IR ドロップ解析を限定された範囲で実行 |
|
|
| 記録済みの実行 1 件を再読み取り |
|
|
| 結果レシート 1 件をプロジェクトのアーティファクトストアに保存 |
| — |
| 保存済みエントリを一覧表示 |
|
|
| 保存済みエントリ 1 件を読み取り |
| — |
| 従来の生のランナー委譲に対する互換経路 |
このうち 3 コマンドはヘルプ内で固有の制限を明示しており、その制限も契約の一部です。px static-timing は非サインオフ用途であること、px spef-summary は解析権限を持たないことを明示し、px fdtd2d preflight は結果ではなく、準備状況を妨げる要因を報告します。出力はそれに応じて扱ってください。
先述の physical run と同様に、px analyze も -- の後に従来の操作を必要とし、指定しなければ終了コード 1 で終了します。許可されているのは capabilities と execute です。
PX の CPU および CUDA 操作
コマンド | バックエンドと入力 |
|---|---|
| 必須の |
| 同じバックエンド・入力規則 |
| 必須の |
| 同じ明示的バックエンド方針。範囲を限定した組み込みフィクスチャ |
| 同じ明示的バックエンド方針。範囲を限定した組み込みフィクスチャ |
これらのコマンドは --project を受け付け、最初の 2 つは --timeout-ms 1..300000 も受け付けます。明示的な cuda は利用可能な CUDA 実行を必須とします。auto は、エンジンが記録する CPU フォールバックを別途許可します。報告されたバックエンドを確認してください。これらの限定的な数値操作は、一般的な物理設計サインオフや、すべての PX 操作の GPU 高速化を証明するものではありません。
isa
6 個中 4 個のサブコマンドは、標準入力からのみ CX ソースを読み取ります。isa run は --runner を持つ互換経路です。
コマンド | 必須 | その他のオプション | 目的 |
|---|---|---|---|
| — | — | 標準入力から読んだ CX ソースをエラボレーション |
|
| — | 標準入力から読んだ CX ソースに対して命令 1 個をアセンブル |
|
| — | 標準入力から読んだ CX ソースに対して符号化ワード 1 個を逆アセンブル |
| — | — | 標準入力からソースを読み取り、範囲を限定した CX コシミュレーション投影を実行 |
|
|
| CX ファイルに対して指定した検査 1 件を実行 |
| — |
| 従来の許可されたローカル CX 操作に対する互換経路 |
--check が受け付けるのは elaboration, static-semantics, encoding-uniqueness と decode-determinism のみです。--bit-len は 32 ビット符号なし整数です。--text と --bits は空や空白のみであってはなりません。
先述の physical run と px analyze とは異なり、isa run は固定のエンジン操作を持つため、引き渡す引数なしでも起動し、エンジン自身が要件を報告します:
テキスト
$ alti isa run
cx run: run requires --program <path> or --program-text
[failed] isa.run runner=local engine=alti-cx/run executable=alti-cx resolution=path exit=1 project=.
ide
デスクトップホストの操作です。計算は上記のエンジン名前空間で行います。
コマンド | 必須 | 目的 |
|---|---|---|
|
| 正規化された絶対パスのプロジェクトディレクトリ 1 件を、インストール済み IDE で開く |
ide open は別途インストールされたデスクトップアプリケーションを起動します。以下のネイティブワークスペース、Cloud、サービス、プロジェクト作成コマンドは、それぞれ明示されたバックエンドを通して動作します。
--project は正規化された絶対ディレクトリでなければなりません。絶対パスで、存在するディレクトリで、シンボリックリンクでなく、自身の正規形と一致することが必要です。シンボリックリンクを通るパスは、黙って追跡せずに拒否されます。
ide open はエンジンバイナリを使用しません。altifigence-ide という実行ファイルを、まず alti と同じディレクトリ、次に PATH で解決し、--project <canonical-dir> を指定して起動して、altifigence.ide-launcher-receipt.v1 レシートを出力します:
フィールド | 意味 |
|---|---|
| 常に |
|
|
| 子プロセス ID、または |
| 常に |
| 正規化されたプロジェクトディレクトリ。正規化に失敗した場合は要求された値 |
|
|
| 解決済みパス、またはファイル名のみ |
| 次の条件を満たす場合のメッセージ: |
終了状態は 0(spawned の場合)、それ以外は 1 です。altifigence-ide は Digital Design Studio に同梱され、CLI アーカイブには含まれません。そのため CLI だけのインストールでは、ide open は unavailable を報告します。
ネイティブのプロジェクト・ワークスペース操作
ide init --parent ABSOLUTE_DIR --name NAME は、正規化された呼び出し側所有の親ディレクトリ配下に新しいひな形を作成します。既存プロジェクトを上書きしません。ide workspace は UI を開かずに保存済みローカルファイルを操作します:
次に続くコマンド: | 入力と動作 |
|---|---|
| プラットフォーム契約を報告 |
| ワークスペースを公開する前に保留中のトランザクションを復旧 |
| 範囲を限定した一覧表示。既定 500 件、最大 20000 件 |
| 許可された保存済みテキストファイル 1 件を読み取り |
| 現在の SHA-256 が一致する場合だけ既存テキストを置換 |
| 次の置換の配列: |
| 型付きのファイル作成・置換・削除、またはディレクトリ作成をレビュー |
| レビュー済みの完全なファイル計画を適用 |
| 抽出、移動、マージ、定数ヘッダーの作成をレビュー |
| レビュー済みの完全な階層計画を適用 |
| 保存済み DDS プロジェクト設定を読み取り |
| 範囲を限定した JSON オブジェクトを再帰的にマージ |
ネイティブの計画結果は、適用に用いる完全な、不透明な入力です。グローバルの --json を付けずに生のエンジン出力を保存してレビューし、同じ文書を対応する適用コマンドに渡してください。例えば、既存の絶対プロジェクトパスと型付き階層要求を使用する場合:
alti ide workspace hierarchy-plan --project "$PROJECT" \
--request "$HIERARCHY_REQUEST" > "$PLAN_FILE"
# Review the complete plan and changed source before the next command.
alti ide workspace hierarchy-apply --project "$PROJECT" --request "$PLAN_FILE"
失敗したコマンドの出力を apply にパイプしないでください。新しい計画ファイルを選び、各終了状態を確認します。ファイル編集は、永続化され直列化されたトランザクションと現在のソースハッシュを使用しますが、無関係な書き込みに対するファイルシステム全体の瞬時の原子性はありません。競合時は再レビューが必要です。階層編集は、範囲を限定したソース選択とひな形作成であり、SystemVerilog 全体の意味的リファクタリングや等価性証明ではありません。
設定は DDS の .alti/ide-settings.json 形式、未知のキー、リテラルの null 値を保持します。パッチは再帰的マージであり、RFC 7396 の削除ではありません。要求と結果の上限は 256 KiB、深さは 8 です。ネイティブ UI と CLI は同じ .alti/.ide-settings.lock を使用します。CLI は現在のプロジェクト形式を扱い、別個のデスクトップ全体設定を扱うものではありません。
ネイティブトランザクションと Git は Linux 契約を必要とします。現在の復旧処理は V1 と V2 の両方のジャーナルを読み取ります。作成・削除や階層適用が中断した場合、古い V1 専用 DDS バックエンドを開く前に、新しい CLI の health を実行してください。古いバックエンドは保留中の V2 ジャーナルを消去せずに拒否します。正常に完了したトランザクションはアクティブなジャーナルを消去します。透過的に復旧できるバックエンドへの更新は推奨されますが、完了済みのすべての CLI 編集の前提条件ではありません。
Git
次の配下では:ide workspace git。すべてのコマンドが --project ABS を取ります:
コマンド | 追加引数 |
|---|---|
| なし |
| 任意の |
| コミット ID |
| コミット ID と相対パス |
| 相対パス。任意で |
| 1~128 個の相対パス |
|
|
| 既存のローカルブランチ。変更のあるワークスペースや非対応の属性・フィルター動作は拒否 |
これらの操作は、ネイティブワークスペースのトランザクションとの間で復旧と直列化を行います。任意の Git 引数、フック、リモート push の認証情報は公開しません。
保存済みソースの検索
alti ide workspace search --project "$PROJECT" --query 'module' --limit 80
ネイティブ検索は --match-case, --whole-word、保守的な固定幅の --regex、1~500 件の一致制限、および --timeout-seconds 1..120 をサポートします。ネイティブの files/read 境界から保存済みテキストを読み取り、上限は 500 ファイル、各 4 MiB、合計 16 MiB、出力 1 MiB です。切り詰めの有無と内容の根拠を確認してください。未保存のエディタバッファは検索しません。Cloud 検索と従来の HTTP 検索・置換は、別の サービス操作 です。
xls
コマンド | 要求と目的 |
|---|---|
| ネイティブのサブセットとバックエンドの利用可否を報告 |
| 必須の |
| 同じフラグとサイズ制限。ローカル配置・デバイス方針を明示する XLS EngineJobV1 エンベロープ |
|
|
| 任意の |
| 必須の新規絶対パス |
| 必須の絶対パス |
| 必須の |
ネイティブ経路は、1~64 ビットの値を持つ限定的な DSLX と XLS IR 関数、定数畳み込み・デッドコード除去、組み合わせ RTL、または 1~16 段の出力レジスタを持つ RTL をサポートします。要求では cpu、または対応するバッチ評価用に明示的な cuda を選択します。CUDA バックエンドが利用できない場合はエラーとなり、自動的に CPU を実行しません。まず CPU の例 から始めてください。
別の upstream 経路は、固定された公開 Google XLS Linux ツールチェーンをインストールし、アーカイブとツール・標準ライブラリの一覧を検証し、ライセンスファイルを保持します。選択した upstream ツールが要求された操作に対応する場合、インポート、パラメトリック定義、構造体、列挙、集約型、任意幅の型、proc に対応します。限定された bits64 パーサを使用せず、Google ツールチェーン全体を CUDA で高速化するものでもありません。
upstream 要求では check, eval, convert, optimize または codegen を選択します。ベクトルや tick を明示しない DSLX eval は、実際のモジュールテストを実行します。単体テストの実行件数が 0 なら成功ではありません。基本アーカイブには独立した IR/proc 評価器実行ファイルが含まれません。明示的ベクトルやチャネル tick には、インストール時に --evaluator-bundle と --evaluator-manifest-sha256 を使って受け付けた追加の検証済み評価器バンドルが必要です。これらの操作を要求する前に機能を確認してください。upstream パイプラインコード生成は 1~64 段に対応しますが、単位遅延のスケジュールは特性評価済みシリコンのタイミングではありません。
compute
コマンド | 目的 |
|---|---|
| GPU カーネルを実行せずにデバイスを検出 |
| パック済み RTL の実行契約を調査 |
| 範囲を限定した組み合わせ RTL 実行。バックエンドを明示: |
| 範囲を限定したネイティブ生成要求。明示的な |
| CUDA を読み込まずに保存済みパック済み RTL 結果を検証 |
要求コマンドは --project を受け付けます。シミュレーションと Evolve の入力は 4 MiB、検証入力は 16 MiB までです。同梱の alti-rtl-cuda がこの経路を担当します。compute rtl-evolve は altifigence.rtl.evolve-request.v1 を取り、既存のネイティブ生成要求を request にネストします。これは evolve run 操作エンベロープではありません。
Evolve CUDA は、範囲を限定した組み合わせ回路のアクティビティ診断を計算します。候補生成、正しさの検査、合成、目的評価は CPU 上で行います。実際の Icarus iverilog と vvp がホストツール設定を通して利用可能でなければなりません。cpu-reference は cuda_timeout_ms: 0 と device_memory_bytes: 0 を必須とし、cuda は、実行できない場合にフォールバックせず拒否します。既存の親を持つ新しい request.run_dir を使用してください。
要求の上限は、世代数と子数が 1~16、島数が 1~4、計画した評価の合計が 256、LLM の子数が 0 です。デバイスメモリは限定されたワーカーバッファの予算であり、ドライバの総メモリ制限ではありません。任意のローカル cancel_file と期限は協調的キャンセルに対応し、ネイティブツール呼び出しは固有の制限を保持します。CUDA の成功結果には、実際に受け付けられた候補のアクティビティと保存済みハードウェア来歴が必要です。デバイス検出や初期プローブだけでは不十分です。CPU/CUDA の機能的な一致は、高速化の主張ではありません。
現在のダウンロードに含まれないコマンド
従来省略されていた eda と reports 名前空間は、現在はルーティングされています:
コマンド | 入力 |
|---|---|
|
|
|
|
|
|
| 任意の |
|
|
| 型付きレポート形式と限定された入力については末端サブコマンドのヘルプを参照 |
これらは、範囲を限定した調査・解析・バインディング操作であり、一般的な EDA ツール実行ではありません。ide init と、明示的なネイティブ Evolve コマンドも利用できます。上記の未同梱 alti-rtl-runner 互換経路は別の制限として残っています。ヘルプだけから対応を推測しないでください。
エンジンワークフローの準備
操作を選び、インストール済み機能の応答と末端サブコマンドのヘルプを読んでください。
選択したプロジェクト内に小さな入力を作成して保存し、トップ・モジュールやエントリポイントを確認してください。
必要な外部ツールを用意し、要求が CPU/CUDA 選択に対応する場合はバックエンドを明示してください。
リソースを限定して 1 回実行し、診断と完全なネイティブ結果を保存してください。
ワークフローを大きくする前に、実際のバックエンド、入力、出力アーティファクト、非対応の指標を確認してください。
グラフィカルなワークフローには DDS 解析、候補比較には Evolve を使用してください。CLI エンジン対応、デスクトップパネル、Cloud 経路はそれぞれ別の統合です。実際に使用するワークフローを確認してください。