Perintah engine CLI
Gunakan engine desain lokal, XLS native dan CUDA, serta penyusunan DDS dengan batas dan kontrak input yang jelas.
Ringkasan
Halaman ini membahas perintah engine desain lokal, argumen utamanya, dan batas eksekusinya. Gunakan opsi pada perintah terpasang yang paling spesifik, --help, untuk melihat daftar lengkap opsi dan enumerasi nilainya. Baca batas yang dinyatakan hasil itu sendiri sebelum menggunakannya sebagai bukti rekayasa.
Baca Cakupan perintah CLI terlebih dahulu. Halaman tersebut menjelaskan perutean, kode keluar, pembungkus bukti hasil, dan aturan pencarian executable di direktori yang sama yang menjadi dasar setiap perintah di bawah ini. Namespace job, analyze run, dan evolve run dibahas dalam Perintah tugas dan cloud CLI.
Konvensi dalam tabel:
<ANGLE>adalah argumen posisi;[ANGLE]...adalah argumen opsional yang dapat diulang.Opsi di kolom Wajib harus diberikan; jika tidak, perintah keluar dengan kode
2sebelum apa pun diluncurkan.Setiap subperintah juga menerima
--jsondan-h/--help. Opsi tersebut tidak diulang di setiap baris.--projectadalah--project<PROJECT>, direktori kerja opsional untuk jalur input dan output relatif, kecuali suatu baris menyatakan lain. Nilainya harus mengarah ke direktori nyata; nilai yang tidak dapat ditemukan membuat perintah keluar dengan kode2.
capabilities
alti capabilities memeriksa tata letak instalasi yang telah diautentikasi dan melaporkan cakupan operasinya. Selesaikan Instalasi di Linux terlebih dahulu; bootstrap tertanam versi 0.1.9 menyediakan tata letak bukti hasil dan payload yang sebelumnya belum tersedia. Respons kemampuan bukan bukti bahwa kernel atau desain telah dijalankan.
rtl
Dua puluh delapan subperintah. rtl compile dan rtl synthesize adalah dua jalur kompatibilitas yang membawa --runner; setiap subperintah rtl lainnya berjalan secara lokal tanpa syarat.
Berbeda dengan physical run dan px analyze, kedua jalur tersebut tetap meluncurkan engine meski tidak ada argumen penerusan, karena masing-masing menetapkan operasi engine tetap. Engine kemudian melaporkan kesalahan argumen yang hilang dengan status keluar yang diteruskan tanpa perubahan. Berikan argumen yang dibutuhkan setelah --.
Perintah | Wajib | Opsi lain | Tujuan |
|---|---|---|---|
| — |
| Jalur kompatibilitas yang mendelegasikan ke engine kompilasi dalam paket |
| — |
| Penamaan kompatibilitas untuk delegasi sintesis lokal mentah yang semula |
| setidaknya satu |
| Menghasilkan kontrak skematik yang telah dibuktikan compiler untuk sumber RTL tersimpan |
| setidaknya satu |
| Menjalankan operasi analisis dalam paket pada sumber yang disebutkan |
|
|
| Menjalankan operasi sintesis dalam paket |
|
|
| Menjalankan operasi pemetaan teknologi dalam paket |
| — | — | Melaporkan kontrak analisis target tetap dan ketersediaan pelaksana |
| — | — | Melaporkan kesiapan eksekusi analisis target yang hanya baca dan tidak memakai jalur |
| sebelas opsi, di bawah |
| Memvalidasi satu permintaan penerimaan bertipe dari JSON bundel sumber melalui stdin |
| sebelas opsi, di bawah |
| Menjalankan pemeriksaan awal struktural dari JSON bundel sumber melalui stdin |
|
|
| Menerima, memeriksa awal, atau mengeksekusi satu permintaan simulasi RTL tersimpan yang dibatasi |
| — | — | Melaporkan kontrak simulasi empat keadaan dengan beberapa clock yang tetap |
|
|
| Menerima, memeriksa awal, atau mengeksekusi satu permintaan empat keadaan dengan beberapa clock yang dibatasi |
|
|
| Menyimpan satu bukti hasil di penyimpanan artefak proyek |
| — |
| Mencantumkan entri tersimpan |
|
|
| Membaca satu entri tersimpan |
| — |
| Mencantumkan identitas terverifikasi yang dibatasi dalam registri tetap yang privat bagi pemilik |
|
|
| Membaca kembali satu identitas yang dipilih dari daftar terverifikasi saat ini |
|
|
| Seperti di atas, untuk identitas berbagi global |
|
|
| Seperti di atas, untuk identitas timing yang dipetakan |
|
|
| Seperti di atas, untuk identitas timing register yang dipetakan |
--schematic pada ketiga subperintah rtl artifact memilih penyimpanan bukti skematik tetap alih-alih penyimpanan hasil operasi RTL.
--entry-id pada subperintah identitas tersimpan harus tepat 64 karakter heksadesimal huruf kecil. Nilai lain membuat perintah keluar dengan kode 2 dengan entry id must be exactly 64 lowercase hexadecimal characters.
Batas rtl schematic
rtl schematic memvalidasi jalurnya sebelum meluncurkan apa pun. Setiap file sumber, direktori include, dan define ditolak saat penerimaan jika melanggar salah satu batas berikut:
Batas | Nilai |
|---|---|
File sumber | maksimal 256 |
Direktori include ( | maksimal 128 |
Define ( | maksimal 256 |
Panjang jalur | 1 hingga 4096 byte |
Komponen jalur | 1 hingga 128 |
Satu komponen jalur | maksimal 255 byte |
Jalur harus relatif terhadap proyek yang dipilih, tidak boleh diawali -, tidak boleh berisi byte kontrol, dan tidak boleh berisi ... --top dan nama define harus berupa identifier SystemVerilog sepanjang 1 hingga 128 byte; define boleh memuat nilai setelah = dengan total panjang maksimal 4096 byte.
Opsi rtl target-analysis
admit dan preflight membaca JSON bundel sumber kanonis dari stdin dan keduanya memerlukan sebelas opsi yang sama: --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>, dan --deadline-unix-ms <N>. --cell-decomposition adalah flag boolean opsional.
Opsi | Nilai yang diterima |
|---|---|
|
|
| subset yang dipisahkan koma dari |
| subset yang dipisahkan koma dari |
|
|
--cpu-slots adalah bilangan bulat tanpa tanda 32 bit; --memory-bytes, --max-wall-time-ms, dan --deadline-unix-ms adalah bilangan bulat tanpa tanda 64 bit.
Nilai duplikat atau nilai yang tidak tercantum dalam salah satu CSV ditolak saat parsing, misalnya targets must be a comma-separated subset of: generic-asic, sky130-asic, xc7-fpga.
Pembungkus permintaan simulasi
<REQUEST_JSON> adalah jalur relatif terhadap proyek menuju file yang dibaca dan diperiksa CLI sebelum meluncurkan apa pun. Jalur harus dinormalisasi dan relatif, tidak boleh melewati tautan simbolis pada komponen mana pun, dan harus mengarah ke lokasi di dalam akar proyek. File harus berupa file biasa dengan ukuran maksimal 260 MiB.
JSON-nya harus berupa objek dengan tepat empat kunci:
{
"schema": "altifigence.rtl.operation-request.v1",
"version": 1,
"operationId": "altifigence.rtl.simulate.v1",
"request": {}
}
operationId harus bernilai altifigence.rtl.simulate.v1 untuk rtl simulate dan altifigence.rtl.simulate.v2 untuk rtl simulate-v2. Ketidakcocokan ditolak sebelum peluncuran dengan RTL simulation request must be the exact <id> envelope.
Subperintah identitas tersimpan tidak dapat berjalan
Kedelapan subperintah rtl *-committed-identities list dan read meneruskan permintaan ke engine bernama alti-rtl-runner. Biner tersebut bukan salah satu dari 24 biner engine yang dibangun dan dikirim dalam rilis, sehingga tidak dapat ditemukan di direktori yang sama dengan alti maupun melalui PATH dalam instalasi yang benar. Memanggil salah satunya menghasilkan bukti engine lokal dengan status: "unavailable" dan exitCode: 127:
Teks
$ 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",
...
}
Jangan membangun otomatisasi berdasarkan delapan perintah ini.
sv
Dua puluh tiga subperintah, semuanya lokal dan tanpa syarat. Tidak ada yang menerima --runner.
Perintah | Wajib | Opsi lain | Tujuan |
|---|---|---|---|
| — |
| Membangun indeks frontend untuk jalur yang disebutkan |
| — |
| Melaporkan cakupan simbol untuk jalur yang disebutkan |
| — |
| Bentuk respons simbol generasi kedua |
| posisi |
| Menemukan definisi pada satu posisi |
| posisi |
| Mendapatkan respons hover pada satu posisi |
|
|
| Mendapatkan pelengkapan untuk satu prefiks |
| posisi |
| Menemukan referensi ke simbol pada satu posisi |
| posisi, |
| Menghasilkan rencana penggantian nama tanpa mengedit file |
| kelimanya |
| Menerapkan penggantian nama dengan hash rencana yang telah ditinjau sebagai syarat |
| — | — | Meninjau assertion langsung tanpa mengompilasi atau menyimulasikannya |
| — | — | Meninjau sinkronisasi antarproses tanpa mengompilasi atau menyimulasikannya |
| — |
| Mencantumkan entri dalam katalog referensi acak terkendala |
|
| — | Menampilkan satu entri katalog acak terkendala |
| — |
| Mencantumkan entri dalam katalog referensi SVA |
|
| — | Menampilkan satu entri katalog SVA |
| — | — | Melaporkan kontrak jembatan UVM yang dikompilasi |
| — | — | Melaporkan tampilan lingkungan jembatan UVM |
| — | — | Mengembalikan bukti kesiapan komponen tetap yang ditandatangani tanpa memuat atau menjalankannya |
| — | — | Melaporkan ABI jembatan UVM |
| — | — | Melaporkan kontrak simulasi UVM yang dibatasi |
| — | — | Melaporkan kesiapan implementasi tanpa jalur dan kewenangan eksekusi eksternal |
| tiga belas opsi, di bawah | — | Memvalidasi satu permintaan simulasi UVM yang dibatasi dan menolak jika persyaratan tidak terpenuhi |
| enam belas opsi, di bawah |
| Memeriksa awal satu permintaan simulasi UVM yang dibatasi dan menolak jika persyaratan tidak terpenuhi |
Aturan nilai argumen posisi:
<LINE>dan<COLUMN>adalah bilangan bulat bukan nol dengan indeks mulai dari 1.0keluar dengan kode2.<REPLACEMENT>harus berupa identifier SystemVerilog: karakter pertama berupa huruf,_, atau$, dan karakter sisanya berupa alfanumerik,_, atau$.<REVIEWED_PLAN_SHA256>harus terdiri dari 64 karakter heksadesimal huruf kecil.<STABLE_ID>harus terdiri dari 1 hingga 128 karakter berupa huruf kecil, angka, dan tanda hubung.--filterharus terdiri dari 1 hingga 128 byte nonkontrol;--limitharus berupa bilangan bulat dari 1 hingga 64, dan--limit65keluar dengan kode2.
sv frontend rename-apply adalah satu-satunya subperintah sv yang mewajibkan --project, dan nilainya harus berupa jalur absolut ke direktori nyata yang bukan tautan simbolis. Tanpanya, perintah keluar dengan kode 1 dengan SV rename apply requires --project <absolute-workspace>.
sv review immediate dan sv review interprocess membaca sumber SystemVerilog dari stdin. Keduanya adalah satu-satunya subperintah sv yang didukung engine tersendiri, alti-sv-immediate-review dan alti-sv-interprocess-review; semua subperintah lain dalam namespace memakai alti-sv-frontend.
sv uvm simulation admit memerlukan tiga belas opsi: --bundle-id, --bundle-sha256, --source-count, --source-bytes, --test, --top, --clock, --period-ps, --cycles, --max-wall-time-ms, --max-cpu-cores, --max-memory-bytes, dan --max-artifact-bytes. sv uvm simulation preflight memerlukan ketiga belas opsi tersebut ditambah --attempt-id, --observed-at-unix-ms, dan --deadline-unix-ms, dan juga menerima opsi boolean --cancellation-requested (default false). --source-count adalah bilangan bulat tanpa tanda 32 bit, --max-cpu-cores adalah bilangan bulat tanpa tanda 16 bit, dan opsi numerik lainnya adalah bilangan bulat tanpa tanda 64 bit.
verification
Perintah | Wajib | Opsi lain | Tujuan |
|---|---|---|---|
|
|
| Menghasilkan profil perbandingan dari satu trace |
| keduanya |
| Memeriksa satu trace terhadap referensi |
--tolerance-pct harus berupa angka terbatas yang tidak negatif; nilai negatif atau nonnumerik membuat perintah keluar dengan kode 2 dengan tolerance-pct must be a finite non-negative number.
--format di sini memilih format output engine sendiri dan terpisah dari flag pembungkus --json pada tingkat CLI. Keduanya dapat digunakan bersama.
trace
Perintah | Wajib | Opsi lain | Tujuan |
|---|---|---|---|
|
|
| Memeriksa satu file trace |
| keduanya |
| Menulis tampilan linimasa satu trace ke |
| ketiganya |
| Mengekspor satu trace |
|
|
| Mewujudkan satu paket peninjauan v1 dari identitas artefak penyimpanan pemilik |
| — |
| Mencantumkan maksimal lima paket peninjauan terbaru dari penyimpanan pemilik |
|
|
| Menampilkan satu ringkasan paket peninjauan tanpa jalur |
|
|
| Membaca kembali satu paket peninjauan terverifikasi |
<FORMAT> pada trace export adalah enumerasi nilai posisi, bukan flag, dan berada sebelum jalur input. Nilainya adalah vcd dan chrome.
--reference dapat diulang untuk menyebut artefak referensi tambahan. <TRACE_ARTIFACT_ID>, ID referensi, dan <PACKAGE_ID> boleh diawali tanda hubung tanpa memerlukan --.
Perhatikan bahwa alti trace tanpa subperintah mencapai parser lokal dan keluar dengan kode 2 sambil meminta subperintah. Karena itu, aksi satu kata trace di manifes aksi tertanam tidak dapat dijangkau melalui baris perintah dalam rilis ini; lihat Perintah tugas dan cloud CLI.
labs
Deskriptor dan validasi hanya baca. Eksekusi alur kerja tidak tersedia melalui CLI.
Perintah | Wajib | Opsi lain | Tujuan |
|---|---|---|---|
| — | — | Memeriksa katalog deskriptor alur kerja tetap pada waktu kompilasi |
|
| — | Memvalidasi satu deskriptor kesehatan batas JSON yang telah diperiksa tanpa mengeksekusinya |
| — | — | Menghasilkan status Labs deterministik yang hanya berisi deskriptor |
labs validate memberlakukan aturan ketat pada kedua inputnya, dan semua aturan di bawah diperiksa sebelum engine dimulai:
--projectharus berupa jalur absolut ke direktori nyata, bukan tautan simbolis.<DESCRIPTOR>harus relatif terhadap workspace, tidak boleh mengandung..atau komponen akar, dan panjangnya maksimal 4096 byte.Harus memakai ekstensi
.json.Harus mengarah ke file biasa nyata berukuran maksimal 1048576 byte, dan jalur yang telah ditemukan harus tetap berada di dalam proyek.
tcl
Perintah | Wajib | Opsi lain | Tujuan |
|---|---|---|---|
| — | — | Melaporkan deskriptor kemampuan runtime Tcl |
| — | — | Melaporkan deskriptor lingkungan runtime Tcl |
| — | — | Melaporkan deskriptor perintah yang dibatasi |
| — | — | Mengembalikan bukti kesiapan runtime tetap yang ditandatangani tanpa memuat Tcl |
| — | — | Mengevaluasi satu skrip Tcl yang dibatasi dan dibaca dari stdin |
Empat perintah pertama menjawab berdasarkan deskriptor melalui engine alti-tcl dalam paket dan menghasilkan pembungkus engine lokal standar.
tcl evaluate berbeda dalam tiga hal. Perintah ini membaca skrip dari stdin, dengan batas 4194304 byte; input kosong ditolak. Perintah ini mengharuskan alti-tcl-local-runner berada tepat di direktori yang sama dengan alti tanpa pencarian alternatif melalui PATH, dan memeriksanya terhadap rantai kepercayaan instalasi. Bootstrap 0.1.9 memasang komponen Tcl tetap yang ditandatangani yang diperlukan jalur ini; gunakan biner terpasang. Perintah ini juga menghasilkan skema bukti hasilnya sendiri, altifigence.cli.tcl-evaluation.v1, dengan kode keluar tersendiri — keduanya dijelaskan di Cakupan perintah CLI.
eidb
Perintah | Wajib | Opsi lain | Tujuan |
|---|---|---|---|
| — | — | Melaporkan kontrak batas EIDB |
| — |
| Mencantumkan bundel di bawah proyek |
|
|
| Membuat satu bundel R1 milik pengguna dari artefak relatif terhadap workspace |
|
|
| Menghasilkan ekspor portabel satu bundel |
|
| — | Membaca kembali satu bundel |
|
| — | Membaca kembali satu bundel melalui tampilan semantik |
eidb capabilities, eidb readback, dan eidb semantic-readback tidak menerima --project; dari sisi CLI, keduanya tidak memakai jalur.
physical
Empat puluh dua subperintah. physical run adalah jalur kompatibilitas yang membawa --runner; sisanya berjalan lokal tanpa syarat, dan masing-masing langsung meneruskan nama subperintahnya sendiri ke alti-physical-runner sebagai operasi engine. Peran CLI dalam namespace ini adalah penerimaan argumen dan pembingkaian bukti hasil, sehingga cakupannya cukup seragam untuk disajikan dalam dua kelompok.
Kelompok | Anggota | Argumen |
|---|---|---|
Operasi dalam lingkup proyek |
|
|
Tindak lanjut dalam lingkup entri |
|
|
Setiap tindak lanjut dalam lingkup entri membaca entri tersimpan yang dihasilkan operasi dalam lingkup proyek sebelumnya. Jika --entry-id tidak diberikan, perintah keluar dengan kode 2 sebelum apa pun diluncurkan. Itu mencakup tiga puluh enam dari empat puluh dua perintah. Enam sisanya adalah:
Perintah | Wajib | Opsi lain | Tujuan |
|---|---|---|---|
| — | — | Mencantumkan identitas tersimpan yang dibatasi di bawah proyek saat ini |
|
| — | Memvalidasi kembali tepat satu identitas yang dipilih dari daftar terbatas saat ini |
|
|
| Menyimpan satu bukti hasil di penyimpanan artefak proyek |
| — |
| Mencantumkan entri tersimpan |
|
|
| Membaca satu entri tersimpan |
| — |
| Jalur kompatibilitas untuk delegasi runner mentah yang semula |
physical route-evidence-closure read adalah perintah dua langkah: CLI pertama mencantumkan identitas tersimpan, memastikan --identity-key-sha256 Anda ada dalam daftar, lalu membaca kembali tepat identitas tersebut. Kunci yang bukan 64 karakter heksadesimal huruf kecil, atau tidak ada dalam daftar saat ini, ditolak dengan kode keluar 1 sebelum langkah kedua. Langkah pencantuman tidak memakai jalur dan tidak menerima --project.
physical run tidak akan meluncurkan engine tanpa operasi setelah --:
Teks
$ alti physical run
error: legacy local engine operation is required after `--`
Hasilnya keluar dengan kode 1. Operasi lama yang diterima adalah --capabilities-json, capabilities, dan execute; nilai lainnya membuat perintah keluar dengan kode 1 dengan legacy local engine operation ... is not in the public allowlist.
px
px analyze adalah jalur kompatibilitas yang membawa --runner sebagai jalur kompatibilitas. Jika argumen posisi bernama <INPUTS_RELATIVE_...>, jalurnya dicari di bawah direktori inputs/ proyek, bukan relatif terhadap direktori kerja Anda.
Perintah | Wajib | Opsi lain | Tujuan |
|---|---|---|---|
| — | — | Melaporkan kontrak kemampuan px |
| — | — | Mencetak kontrak kemampuan FDTD2D yang ditetapkan pemilik |
| — | — | Melaporkan kesiapan eksekusi instalasi secara dinamis tanpa memperoleh alokasi CPU |
|
|
| Memvalidasi permintaan FDTD2D dan melaporkan alasan permintaan tidak dapat berjalan |
| — |
| Menjalankan operasi eksekusi px dalam paket |
|
|
| Menjalankan analisis timing statis satu clock yang dibatasi dan bukan untuk signoff dari satu file input proyek |
|
|
| Memvalidasi dan mengompilasi rencana urutan deklarasi untuk satu file |
|
|
| Melaporkan R/C hasil ekstraksi pasif dari satu file SPEF yang dibatasi tanpa kewenangan analisis |
| keduanya |
| Menjalankan analisis parasitik dan penurunan IR yang dikonfigurasi dan dibatasi pada satu corner yang ditentukan pemanggil |
|
|
| Membaca kembali satu eksekusi yang tercatat |
|
|
| Menyimpan satu bukti hasil di penyimpanan artefak proyek |
| — |
| Mencantumkan entri tersimpan |
|
|
| Membaca satu entri tersimpan |
| — |
| Jalur kompatibilitas untuk delegasi runner mentah yang semula |
Tiga perintah ini menyatakan batasnya sendiri dalam teks bantuannya, dan batas tersebut merupakan bagian dari kontrak: px static-timing secara tegas bukan untuk signoff, px spef-summary secara tegas tidak membawa kewenangan analisis, dan px fdtd2d preflight melaporkan penghambat kesiapan, bukan hasil. Perlakukan outputnya sesuai batas tersebut.
Seperti physical run, px analyze memerlukan operasi lama setelah -- dan jika tidak ada, keluar dengan kode 1. Daftar yang diizinkannya adalah capabilities dan execute.
Operasi CPU dan CUDA PX
Perintah | Backend dan input |
|---|---|
| Wajib |
| Aturan backend dan input yang sama |
| Wajib |
| Kebijakan backend eksplisit yang sama; fixture bawaan yang dibatasi |
| Kebijakan backend eksplisit yang sama; fixture bawaan yang dibatasi |
Perintah-perintah ini menerima --project; dua perintah pertama juga menerima --timeout-ms 1..300000. Pilihan eksplisit cuda memerlukan eksekusi CUDA yang dapat digunakan. auto secara terpisah mengizinkan fallback CPU yang dicatat engine; periksa backend yang dilaporkan. Operasi numerik yang dibatasi ini tidak membuktikan signoff fisik umum atau percepatan GPU untuk setiap operasi PX.
isa
Empat dari enam subperintah membaca sumber CX hanya dari stdin. isa run adalah jalur kompatibilitas yang membawa --runner sebagai jalur kompatibilitas.
Perintah | Wajib | Opsi lain | Tujuan |
|---|---|---|---|
| — | — | Mengelaborasi sumber CX yang dibaca dari stdin |
|
| — | Merakit satu instruksi berdasarkan sumber CX yang dibaca dari stdin |
|
| — | Mendisassembly satu kata terenkode berdasarkan sumber CX yang dibaca dari stdin |
| — | — | Menjalankan proyeksi ko-simulasi CX yang dibatasi dengan sumber dari stdin |
|
|
| Menjalankan satu pemeriksaan bernama pada file CX |
| — |
| Jalur kompatibilitas untuk operasi CX lokal lama dalam daftar yang diizinkan |
--check menerima tepat elaboration, static-semantics, encoding-uniqueness, dan decode-determinism. --bit-len adalah bilangan bulat tanpa tanda 32 bit. --text dan --bits tidak boleh kosong atau hanya berisi spasi.
Berbeda dengan physical run dan px analyze, isa run membawa operasi engine tetap, sehingga diluncurkan tanpa argumen penerusan dan engine melaporkan persyaratannya sendiri:
Teks
$ 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
Operasi host desktop. Komputasi tetap berada dalam namespace engine di atas.
Perintah | Wajib | Tujuan |
|---|---|---|
|
| Membuka satu direktori proyek absolut kanonis dalam IDE terpasang |
ide open meluncurkan aplikasi desktop yang dipasang secara terpisah. Perintah proyek dan workspace native, Cloud, layanan, dan pembuatan proyek di bawah bekerja melalui backend eksplisit masing-masing.
--project harus berupa direktori absolut kanonis: absolut, direktori yang sudah ada, bukan tautan simbolis, dan sama dengan bentuk kanonisnya sendiri. Jalur yang melewati symlink ditolak, bukan diikuti diam-diam.
ide open tidak memakai biner engine. Perintah ini mencari executable bernama altifigence-ide di direktori yang sama dengan alti lalu melalui PATH, meluncurkannya dengan --project <canonical-dir>, dan menghasilkan bukti altifigence.ide-launcher-receipt.v1:
Kolom | Makna |
|---|---|
| Selalu |
|
|
| ID proses anak, atau |
| Selalu |
| Direktori proyek kanonis, atau nilai yang diminta jika kanonisasi gagal |
|
|
| Jalur yang ditemukan, atau nama tanpa jalur |
| Pesan ketika |
Status keluar adalah 0 untuk spawned dan 1 jika tidak. altifigence-ide dikirim bersama Digital Design Studio, bukan bersama arsip CLI, sehingga ide open melaporkan unavailable pada instalasi yang hanya berisi CLI.
Operasi proyek dan workspace native
ide init --parent ABSOLUTE_DIR --name NAME membuat kerangka proyek baru di bawah direktori induk kanonis milik pemanggil. Perintah ini tidak menimpa proyek yang sudah ada. ide workspace bekerja pada file lokal tersimpan tanpa membuka UI:
Perintah setelah | Input dan perilaku |
|---|---|
| Melaporkan kontrak platform |
| Memulihkan transaksi tertunda sebelum workspace tersedia |
| Pencantuman terbatas; default 500, maksimal 20000 |
| Membaca satu file teks tersimpan yang diizinkan |
| Mengganti teks yang sudah ada hanya jika SHA-256 saat ini cocok |
| Larik berisi |
| Meninjau pembuatan, penggantian, penghapusan file, atau pembuatan direktori yang bertipe |
| Menerapkan seluruh rencana file yang telah ditinjau |
| Meninjau ekstraksi, pemindahan, penggabungan, atau penyusunan header konstanta |
| Menerapkan seluruh rencana hierarki yang telah ditinjau |
| Membaca pengaturan proyek DDS tersimpan |
| Menggabungkan objek JSON yang dibatasi secara rekursif |
Hasil rencana native adalah input penerapan lengkap yang harus diperlakukan sebagai satu kesatuan. Simpan output engine mentah tanpa opsi global --json, tinjau, lalu berikan dokumen yang sama ke perintah penerapan yang sesuai. Misalnya, dengan proyek absolut yang sudah ada dan permintaan hierarki bertipe Anda:
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"
Jangan menyalurkan output perintah gagal ke perintah penerapan. Pilih file rencana baru dan periksa setiap status keluar. Penyusunan file memakai transaksi persisten yang diserialisasi dan hash sumber terkini; ini bukan atomisitas seketika di seluruh sistem file terhadap penulis lain. Konflik memerlukan peninjauan baru. Penyusunan hierarki adalah pemilihan sumber dan pembentukan kerangka yang dibatasi, bukan refaktor semantik SystemVerilog lengkap atau bukti ekuivalensi.
Pengaturan mempertahankan format DDS .alti/ide-settings.json, kunci yang tidak dikenal, dan nilai literal null. Patch merupakan penggabungan rekursif, bukan penghapusan RFC 7396. Anggaran permintaan/hasil adalah 256 KiB dan kedalaman 8; UI native dan CLI memakai .alti/.ide-settings.lock yang sama. CLI mengakses format proyek saat ini, bukan lingkup pengaturan desktop global kedua yang terpisah.
Transaksi native dan Git memerlukan kontrak Linux. Pemulihan saat ini membaca jurnal V1 dan V2. Setelah penerapan pembuatan/penghapusan atau hierarki terputus, jalankan health dari CLI baru sebelum membuka backend DDS lama yang hanya mendukung V1. Backend lama menolak jurnal V2 tertunda tanpa menghapusnya. Transaksi yang selesai secara normal membersihkan jurnal aktifnya; peningkatan backend yang mendukung pemulihan transparan disarankan, tetapi bukan prasyarat setiap edit CLI yang telah selesai.
Git
Di bawah ide workspace git, semua perintah menerima --project ABS:
Perintah | Argumen tambahan |
|---|---|
| Tidak ada |
| Opsional |
| ID commit |
| ID commit dan jalur relatif |
| Jalur relatif, dengan opsi |
| 1–128 jalur relatif |
|
|
| Branch lokal yang sudah ada; menolak workspace dengan perubahan belum disimpan atau perilaku atribut/filter yang tidak didukung |
Operasi ini melakukan pemulihan dan serialisasi terhadap transaksi workspace native. Operasi ini tidak menyediakan argumen Git bebas, hook, atau kredensial push jarak jauh.
Pencarian sumber tersimpan
alti ide workspace search --project "$PROJECT" --query 'module' --limit 80
Pencarian native mendukung --match-case, --whole-word, pola --regex dengan lebar tetap yang konservatif, batas 1–500 kecocokan, dan --timeout-seconds 1..120. Pencarian membaca teks tersimpan melalui batas files/read native, dengan anggaran 500 file, 4 MiB per file, total 16 MiB, dan output 1 MiB. Periksa pemotongan dan bukti konten. Buffer editor yang belum disimpan tidak dicari. Pencarian Cloud dan pencarian/penggantian HTTP lama merupakan operasi layanan.
xls
Perintah | Permintaan dan tujuan |
|---|---|
| Melaporkan subset native dan ketersediaan backend |
| Wajib |
| Flag dan batas ukuran yang sama; pembungkus XLS EngineJobV1 dengan kebijakan penempatan/perangkat lokal eksplisit |
|
|
| Opsional |
| Wajib |
| asli yang dipin. Wajib jalur absolut |
| Wajib |
Jalur native mendukung fungsi DSLX dan XLS IR yang dibatasi dengan nilai 1–64 bit, pelipatan konstanta/penghapusan kode mati, serta RTL kombinasional atau RTL dengan 1–16 tahap register output. Permintaan memilih cpu, atau cuda eksplisit untuk evaluasi batch yang didukung. Backend CUDA yang tidak tersedia merupakan kesalahan, bukan eksekusi CPU otomatis. Mulai dengan contoh CPU.
Jalur upstream terpisah memasang toolchain publik Google XLS Linux yang dipin, memverifikasi arsip serta inventaris alat/stdlib, dan mempertahankan file lisensi. Jalur ini mendukung import, parametrik, struct, enum, tipe agregat dan lebar arbitrer, serta proc ketika alat upstream yang dipilih mendukung operasi yang diminta. Jalur ini tidak memakai parser bits64 yang dibatasi atau mempercepat seluruh toolchain Google dengan CUDA.
Permintaan upstream memilih check, eval, convert, optimize, atau codegen. Evaluasi DSLX tanpa vektor/tick eksplisit menjalankan pengujian modul yang sebenarnya; nol pengujian unit yang dijalankan bukan keberhasilan. Arsip dasar tidak berisi executable evaluator IR/proc mandiri. Vektor atau tick kanal eksplisit memerlukan bundel evaluator tambahan yang terverifikasi dan diterima saat instalasi melalui --evaluator-bundle dan --evaluator-manifest-sha256. Periksa kemampuan sebelum meminta operasi tersebut. Pembuatan pipeline upstream mendukung 1–64 tahap; jadwal unit-delay-nya bukan timing silikon yang telah dikarakterisasi.
compute
Perintah | Tujuan |
|---|---|
| Menemukan perangkat tanpa menjalankan kernel GPU |
| Memeriksa kontrak eksekusi RTL yang dipadatkan |
| Eksekusi RTL kombinasional yang dibatasi dengan |
| Permintaan generasi native yang dibatasi dengan backend aktivitas |
| Memverifikasi hasil RTL tersimpan yang dipadatkan tanpa memuat CUDA |
Perintah permintaan menerima --project. Input simulasi/Evolve dibatasi hingga 4 MiB; input verifikasi hingga 16 MiB. Engine alti-rtl-cuda dalam paket memiliki jalur ini. compute rtl-evolve menerima altifigence.rtl.evolve-request.v1, dengan permintaan generasi native yang sudah ada di dalam request; ini bukan pembungkus operasi evolve run.
Evolve CUDA menghitung diagnostik aktivitas kombinasional yang dibatasi. Generasi kandidat, pemeriksaan kebenaran, sintesis, dan evaluasi sasaran tetap berjalan pada CPU. Alat Icarus iverilog dan vvp yang sebenarnya harus tersedia melalui konfigurasi alat host. cpu-reference memerlukan cuda_timeout_ms: 0 dan device_memory_bytes: 0; cuda menolak eksekusi yang tidak tersedia alih-alih melakukan fallback. Gunakan request.run_dir baru dengan direktori induk yang sudah ada.
Permintaan membatasi generasi dan anak hingga 1–16, island hingga 1–4, total evaluasi yang direncanakan hingga 256, dan anak LLM hingga nol. Memori perangkat adalah anggaran buffer worker yang dibatasi, bukan batas total memori driver. Opsi lokal cancel_file dan tenggat mendukung pembatalan kooperatif; pemanggilan alat native tetap memiliki batas sendiri. Hasil CUDA yang berhasil memerlukan aktivitas kandidat yang benar-benar diterima dan provenance perangkat keras tersimpan, bukan sekadar penemuan perangkat atau pemeriksaan awal. Kesamaan fungsi CPU/CUDA bukan klaim peningkatan kecepatan.
Perintah yang Tidak Ada dalam Unduhan Saat Ini
Namespace eda dan reports yang sebelumnya terlewat kini telah dirutekan:
Perintah | Input |
|---|---|
|
|
|
|
|
|
| Opsional |
|
|
| Gunakan bantuan perintah paling spesifik untuk format laporan bertipe dan input yang dibatasi |
Ini adalah operasi pemeriksaan, parsing, atau binding yang dibatasi, bukan eksekusi alat EDA umum. ide init dan perintah Evolve native eksplisit juga tersedia. Jalur kompatibilitas alti-rtl-runner yang tidak dikirim dan dijelaskan di atas tetap merupakan batasan terpisah; jangan menyimpulkan dukungan hanya dari bantuan.
Menyiapkan alur kerja engine
Pilih operasi dan baca respons kemampuan instalasi serta bantuan perintah paling spesifiknya.
Buat input kecil tersimpan dalam proyek yang dipilih dan tentukan top/module atau titik masuknya.
Sediakan alat eksternal yang diperlukan dan gunakan backend eksplisit ketika permintaan mendukung pemilihan CPU/CUDA.
Jalankan sekali dengan sumber daya terbatas dan simpan diagnostik beserta hasil native lengkap.
Periksa backend sebenarnya, input, artefak output, dan metrik yang tidak didukung sebelum membangun alur kerja lebih besar.
Gunakan Analisis DDS untuk alur kerja grafis dan Evolve untuk perbandingan kandidat. Dukungan engine CLI, panel desktop, dan rute Cloud adalah integrasi terpisah; periksa alur kerja yang benar-benar akan Anda gunakan.