Mengurai laporan implementasi dan menyimpan tanda terimanya
Urai laporan timing, area, daya, kongesti, atau simulasi yang tersimpan menjadi JSON ternormalisasi, lalu simpan, tampilkan daftar, dan buka kembali tanda terimanya.
Gunakan Altifigence CLI 0.1.9 di Linux untuk mengubah laporan teks tersimpan menjadi tanda terima altifigence.reports.parse.v1 dengan mesin laporan yang disertakan, dan untuk menyimpan tanda terima di proyek Anda.
Memilih format laporan
Pilih nilai --format yang sesuai dengan laporan. Input harus berupa file teks UTF-8 biasa berukuran paling banyak 4194304 byte. Setiap format menghasilkan skema ternormalisasinya sendiri:
opensta-timing timing-report.v1
yosys-area area-report.v1
power power-report.v1
openroad-congestion congestion-report.v1
sim-result sim-result.v1Mengurai laporan
Simpan laporan timing di proyek lalu urai. --input relatif terhadap proyek.
PROJECT="$(cd "$HOME/alti-projects/demo-project" && pwd -P)"
mkdir -p "$PROJECT/reports"
cat > "$PROJECT/reports/timing.rpt" <<'EOF'
Startpoint: in_reg
Endpoint: out_reg
slack (MET) 0.80
EOF
alti reports parse --project "$PROJECT" --format opensta-timing --input reports/timing.rpt > "$PROJECT/timing.parse.json"
jq -c '{status, schema: .normalized.schemaVersion, start: .normalized.paths[0].startpoint}' "$PROJECT/timing.parse.json"Pastikan status keluar adalah 0. Baris jq mencetak:
{"status":"available","schema":"timing-report.v1","start":"in_reg"}Tanda terima juga mencatat operation_id reports.parse, source, byte_length, dan sha256 input, implementation_id parser, diagnostics, serta laporan normalized. claims.execution_performed dan claims.signoff_assessed bernilai false: tanda terima menggambarkan file yang Anda urai.
Menyimpan dan membuka kembali tanda terima
alti reports artifact store --project "$PROJECT" --input timing.parse.json > "$PROJECT/report-manifest.json"
ENTRY_ID="$(jq -r '.entryId' "$PROJECT/report-manifest.json")"
alti reports artifact list --project "$PROJECT"
alti reports artifact show --project "$PROJECT" --entry-id "$ENTRY_ID"Store menerima tanda terima altifigence.reports.parse.v1 yang tidak dimodifikasi berukuran paling banyak 16777216 byte, memeriksa identitas input, asal-usul parser, dan klaimnya, lalu menulisnya di bawah .altifigence/artifacts/reports/ dalam proyek. Manifest altifigence.reports.artifact-manifest.v1-nya mencakup entryId, format, inputSha256, parserImplementationId, dan relativePath results/<entryId>.json. List mencetak manifest sebagai array JSON; show mencetak tanda terima yang tersimpan.
Mengatasi kesalahan
Mesin mencetak error ke stderr setelah Error: dan keluar dengan kode bukan nol.
Untuk report input exceeds 4194304 bytes, urai file laporan berukuran paling banyak 4194304 byte.
Untuk report input must be a regular file and not a symbolic link, berikan jalur file laporan itu sendiri.
Untuk report input is not valid UTF-8, simpan laporan sebagai teks UTF-8 lalu urai lagi.
Penguraian yang berhasil keluar dengan status 0 dan menulis JSON ke stdout. Saat nilai timing tidak ada, status-nya adalah unavailable dan array diagnostics-nya berisi peringatan REPORT_TIMING_VALUES_NOT_FOUND. Berikan laporan timing yang memuat nilai timing, seperti baris Startpoint:, Endpoint:, dan slack di atas, lalu urai dengan --format opensta-timing.
Untuk report parse receipt is invalid: unexpected operation schema or version, simpan file persis seperti yang ditulis oleh alti reports parse.
Untuk report artifact entry does not exist: yang diikuti sebuah id, salin entryId dari alti reports artifact list.