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 운반 호환성 경로입니다. 다른 모든 rtl 하위 명령은 로컬 및 무조건적으로 실행됩니다.
이 두 명령은 physical run, px analyze와 달리 정해진 엔진 동작을 사용하므로 passthrough 인수 없이도 엔진을 시작합니다. 필요한 인수가 없으면 엔진이 오류를 반환하며 종료 상태는 그대로 전달됩니다. 필요한 인수는 -- 뒤에 입력하세요.
명령 | 필수 | 다른 옵션 | 용도 |
|---|---|---|---|
| — |
| 패키지의 컴파일 엔진에 위임하는 호환 경로 |
| — |
| 원본 원시 로컬 신디사이저 위임의 호환성 맞춤법 |
| 하나 이상의 |
| 저장된 RTL 소스의 컴파일러 검증 회로도 계약 출력 |
| 적어도 하나의 |
| 명명된 소스에서 패키지 분석 작업 실행 |
|
|
| 패키지 합성 작업 실행 |
|
|
| 패키징된 기술 매핑 작업 실행 |
| — | — | 고정 타겟 분석 계약 및 실행자 가용성 보고 |
| — | — | 읽기 전용 대상 분석 실행 준비 완료 |
| 아래는 11가지 옵션 |
| stdin에서 소스 번들 JSON에서 한 개의 입력된 입학 확인 |
| 아래는 11가지 옵션 |
| stdin에서 소스 번들 JSON에서 구조 사전 검사 실행 |
|
|
| 저장된 RTL 시뮬레이션 요청 하나에 대해 제한된 허용 검사·사전 검사·실행 수행 |
| — | — | 고정 4주 멀티 클럭 시뮬레이션 계약 보고 |
|
|
| 제한된 4상태 다중 클럭 요청 하나의 허용 검사·사전 검사·실행 수행 |
|
|
| 프로젝트 아티팩트 저장소에 결과 리시트 1개 유지 |
| — |
| 저장된 항목 목록 |
|
|
| 저장된 항목 한 개 읽기 |
| — |
| 고정된 소유자-개인 레지스트리에 확인된 신원을 나열합니다 |
|
|
| 현재 확인된 목록에서 선택한 ID를 다시 읽습니다. |
|
|
| 위와 동일하며 global-sharing 식별 정보에 적용 |
|
|
| 위와 동일하며 mapped-timing 식별 정보에 적용 |
|
|
| 위와 동일하며 mapped-register-timing 식별 정보에 적용 |
3개의 rtl artifact 하위 명령에 있는 --schematic는 RTL 작업 결과 저장소 대신 고정된 도식 리시트 저장소를 선택합니다.
커밋된 ID 잎의 --entry-id는 정확히 64개의 소문자 16진수여야 합니다. 그 외의 것은 entry id must be exactly 64 lowercase hexadecimal characters로 2를 종료합니다.
rtl 회로도 범위
rtl schematic는 아무것도 실행하기 전에 경로를 확인합니다. 각 소스 파일은 디렉터리를 포함하며, 다음 중 하나를 중단하면 승인 시 거부됩니다.
제한 | 값 |
|---|---|
소스 파일 | 최대 256 |
디렉터리 포함 ( | 최대 128 |
정의합니다 ( | 최대 256 |
경로 길이 | 1 ~ 4096 바이트 |
경로 구성 요소 | 1에서 128 |
하나의 경로 구성 요소 | 최대 255 바이트 |
경로는 선택한 프로젝트에 대해 상대적이어야 하며, -로 시작해서는 안 되며, 제어 바이트를 포함할 수 없으며 ..를 포함할 수 없습니다. --top와 정의 이름은 1~128바이트의 SystemVerilog 식별자여야 합니다. 정의는 총 4096바이트까지 = 뒤에 값을 전달할 수 있습니다.
rtl 타겟 분석 옵션
admit과 preflight는 stdin에서 정본 source-bundle 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은 선택적 boolean 옵션입니다.
옵션 | 허용된 값 |
|---|---|
|
|
|
|
|
|
|
|
--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는 rtl simulate에서 altifigence.rtl.simulate.v1, rtl simulate-v2에서 altifigence.rtl.simulate.v2여야 합니다. 일치하지 않으면 실행 전에 RTL simulation request must be the exact <id> envelope 오류로 거부됩니다.
committed-identity 하위 명령은 실행할 수 없습니다.
rtl *-committed-identities list와 read의 개별 명령 8개는 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명 모두 |
| 검토된 계획의 해시에서 이름을 변경하여 적용합니다. |
| — | — | 컴파일이나 시뮬레이션 없이 immediate assertion을 검사 |
| — | — | 컴파일하거나 시뮬레이션하지 않고 프로세스 간 동기화 검토 |
| — |
| 제약 랜덤 참조 카탈로그 항목 목록 조회 |
|
| — | 임의 카탈로그 항목 한 개 보이기 |
| — |
| SVA 참조 카탈로그의 항목 목록 |
|
| — | 하나의 SVA 카탈로그 항목 보기 |
| — | — | 컴파일된 UVM 브리지 계약 보고 |
| — | — | UVM 브리지 환경 보기 보고 |
| — | — | 서명된 고정 구성 요소 준비 리시트를 로드하거나 실행하지 않고 반환합니다. |
| — | — | UVM 브리지 보고 ABI |
| — | — | 제한된 UVM 시뮬레이션 계약 보고 |
| — | — | 경로가 없는 구현 및 외부 실행 권한 준비성 보고 |
| 아래 13가지 옵션 | — | 바인드된 실패 닫힘 UVM 시뮬레이션 요청 검증 |
| 아래 16가지 옵션 |
| UVM 시뮬레이션 요청 하나의 입력값과 제한을 사전 검사 |
위치 값 규칙:
<LINE>및<COLUMN>는 0이 아닌 1 기반 정수입니다.0는2를 종료합니다.<REPLACEMENT>는 SystemVerilog 식별자여야 합니다. 첫 번째 문자는 문자_또는$이며 나머지는 영숫자,_또는$입니다.<REVIEWED_PLAN_SHA256>는 64개의 소문자 16진수여야 합니다.<STABLE_ID>는 소문자, 숫자 및 하이픈에서 가져온 1~128자여야 합니다.--filter는 1~128 비제어 바이트여야 하며,--limit는 1~64 사이의 정수여야 하고--limit65는2를 종료해야 합니다.
--project가 필요한 sv 하위 명령은 sv frontend rename-apply뿐입니다. 값은 symbolic link가 아닌 실제 디렉터리의 절대 경로여야 합니다. 없으면 SV rename apply requires --project <absolute-workspace>와 종료 상태 1을 반환합니다.
sv review immediate 및 sv review interprocess는 stdin에서 SystemVerilog 소스를 읽습니다. 그들은 자신의 엔진 인 alti-sv-immediate-review 및 alti-sv-interprocess-review로 지원되는 유일한 sv 하위 명령입니다. 네임 스페이스의 다른 모든 것은 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가 필요하며, boolean --cancellation-requested도 받습니다(기본값 false). --source-count는 32비트 부호 없는 정수, --max-cpu-cores는 16비트 부호 없는 정수, 나머지 숫자 옵션은 64비트 부호 없는 정수입니다.
verification
명령 | 필수 | 다른 옵션 | 용도 |
|---|---|---|---|
|
|
| 하나의 추적에서 비교 프로파일을 내립니다. |
| 둘 다 |
| 참조와 trace 하나를 비교해 검사 |
--tolerance-pct는 음수가 아닌 유한 숫자여야 합니다. 음수 또는 숫자가 아닌 값은 tolerance-pct must be a finite non-negative number를 사용하여 2를 종료합니다.
여기서 --format는 엔진 자체 출력 형식을 선택하고 CLI 레벨 --json 엔벨로프 플래그와 독립적입니다. 둘 다 함께 사용할 수 있습니다.
trace
명령 | 필수 | 다른 옵션 | 용도 |
|---|---|---|---|
|
|
| trace 파일 하나 확인 |
| 둘 다 |
| 하나의 추적에 대한 타임라인 보기를 |
| 세 사람 모두 |
| 추적 정보 한 개 내보내기 |
|
|
| 소유자 저장소 아티팩트 ID에서 하나의 v1 리뷰 패키지 구체화 |
| — |
| 가장 최근 5개의 소유자 저장소 검토 패키지 목록 |
|
|
| 경로 없는 검토 패키지 요약 보기 |
|
|
| 검증된 리뷰 패키지 다시 읽기 |
trace export의 <FORMAT>은 플래그가 아니라 입력 경로 앞에 놓는 위치형 인수입니다. vcd 또는 chrome을 사용할 수 있습니다.
--reference를 반복하여 추가 참조 아티팩트를 지정할 수 있습니다. <TRACE_ARTIFACT_ID>, 참조 ID 및 <PACKAGE_ID>는 -- 없이 하이픈으로 시작할 수 있습니다.
하위 명령이 없는 alti trace는 로컬 파서에 도달하여 하위 명령을 요구하는 2를 종료합니다. 포함된 작업 매니페스트에서 한 단어 trace 작업은 이 릴리스의 명령줄에서 액세스할 수 없습니다. CLI 작업 및 클라우드 명령를 참조하세요.
labs
읽기 전용 설명자 및 유효성 검사. CLI는 워크플로 실행을 노출하지 않습니다.
명령 | 필수 | 다른 옵션 | 용도 |
|---|---|---|---|
| — | — | 수정된 컴파일 시간 워크플로 설명자 카탈로그를 검사합니다. |
|
| — | JSON boundary-health 디스크립터를 실행하지 않고 검사함 |
| — | — | 결정론적 서술자 전용 Labs 상태 방출하기 |
labs validate는 두 개의 입력에 대해 엄격하며 엔진이 시작되기 전에 아래의 모든 규칙을 확인합니다.
--project는 심볼릭 링크가 아닌 실제 디렉터리의 절대 경로여야 합니다.<DESCRIPTOR>는 workspace-relative여야 하며,..또는 루트 구성 요소를 포함하지 않아야 하며, 최대 4096바이트여야 합니다..json확장을 사용해야 합니다.최대 1048576바이트의 실제 일반 파일로 해결되어야 하며 해결된 경로는 여전히 프로젝트 내부에 있어야 합니다.
tcl
명령 | 필수 | 다른 옵션 | 용도 |
|---|---|---|---|
| — | — | Tcl 런타임 기능 설명자 보고 |
| — | — | Tcl 런타임 환경 설명자 보고 |
| — | — | 바인딩된 명령 설명자 보고 |
| — | — | Tcl을로드하지 않고 고정된 서명된 런타임 준비 리시트를 반환합니다. |
| — | — | stdin에서 읽은 바인드된 Tcl 스크립트 하나 평가 |
alti-tcl 엔진을 통해 설명자의 첫 번째 네 가지 답변은 표준 로컬 엔진 엔벨로프를 방출합니다.
tcl evaluate에는 세 가지 차이가 있습니다. 스크립트를 stdin에서 읽으며 4194304바이트로 제한하고 빈 입력을 거부합니다. alti-tcl-local-runner는 PATH 대체 없이 alti의 정확한 형제 파일이어야 하며 설치 신뢰 체인으로 검증합니다. 0.1.9 설치 도구가 이 경로에 필요한 고정된 서명 Tcl 구성 요소를 설치하므로 설치된 실행 파일을 사용하세요. 또한 자체 영수증 스키마 altifigence.cli.tcl-evaluation.v1과 자체 종료 코드를 출력합니다. 둘 다 CLI 명령 인터페이스에 설명되어 있습니다.
eidb
명령 | 필수 | 다른 옵션 | 용도 |
|---|---|---|---|
| — | — | EIDB 범위 계약 보고 |
| — |
| 프로젝트 아래에 번들 목록 |
|
|
| 작업공간 상대 아티팩트에서 R1 번들 생성 |
|
|
| 하나의 번들의 휴대용 수출을 생산 |
|
| — | 1개의 뭉치 뒤 읽기 |
|
| — | 시맨틱 뷰를 통해 하나의 번들 읽기 |
eidb capabilities, eidb readback, eidb semantic-readback은 --project를 받지 않으며 CLI 작업 경로를 사용하지 않습니다.
physical
하위 명령은 42개입니다. physical run은 --runner 호환 경로이고, 나머지는 항상 로컬에서 실행됩니다. 각 하위 명령 이름은 엔진 동작으로 alti-physical-runner에 그대로 전달됩니다. CLI에서 받는 인수에 따라 아래 두 그룹으로 나눌 수 있습니다.
그룹 | 회원 | 인수 |
|---|---|---|
프로젝트 범위 운영 |
|
|
엔트리 스코프 Follow-ups |
|
|
모든 엔트리 스코프 후속 조치는 이전 프로젝트 스코프 작업에서 생성된 지속 된 항목을 읽습니다. --entry-id를 생략하면 2가 시작됩니다. 이는 42 개 중 36 개입니다. 나머지 6 개는 다음과 같습니다.
명령 | 필수 | 다른 옵션 | 용도 |
|---|---|---|---|
| — | — | 현재 프로젝트 아래에 저장된 identity 목록 조회 |
|
| — | 현재 범위 목록에서 정확히 하나의 ID를 선택함 |
|
|
| 프로젝트 아티팩트 저장소에 결과 리시트 1개 유지 |
| — |
| 저장된 항목 목록 |
|
|
| 저장된 항목 한 개 읽기 |
| — |
| 원래의 raw runner 위임에 대한 호환성 경로 |
physical route-evidence-closure read는 두 단계로 동작합니다. 먼저 저장된 identity 목록을 읽고 --identity-key-sha256 값이 목록에 있는지 확인한 뒤 해당 항목을 다시 읽습니다. Key가 64자의 소문자 hexadecimal 형식이 아니거나 현재 목록에 없으면 두 번째 단계 전에 종료 상태 1로 거부합니다. 목록 조회에는 --project가 필요하지 않습니다.
physical run을 실행하려면 -- 뒤에 엔진 동작을 지정해야 합니다.
$ alti physical run
error: legacy local engine operation is required after `--`
이 경우 종료 코드 1을 반환합니다. 허용된 레거시 작업은 --capabilities-json, capabilities, execute입니다. 그 밖의 값은 legacy local engine operation ... is not in the public allowlist와 함께 종료 코드 1을 반환합니다.
px
px analyze는 --runner를 받는 호환 경로입니다. 위치 인수의 이름이 <INPUTS_RELATIVE_...>이면 현재 작업 디렉터리가 아니라 프로젝트의 inputs/ 아래에서 경로를 해석합니다.
명령 | 필수 | 다른 옵션 | 용도 |
|---|---|---|---|
| — | — | px 기능 계약 보고 |
| — | — | 소유자 정의 FDTD2D 기능 계약 인쇄 |
| — | — | CPU 리스를 취득하지 않고 동적 설치 실행 준비 상태 보고 |
|
|
| Validate an FDTD2D request and report why it cannot run |
| — |
| 패키지된 px 실행 작업 실행 |
|
|
| 하나의 프로젝트 입력 파일에서 bounded non-signoff single-clock 정적 타이밍 실행 |
|
|
| 하나의 |
|
|
| 분석 권한 없이 한 묶인 SPEF 파일에서 수동 추출된 R/C 보고 |
| 둘 다 |
| 하나의 발신자 해결 코너에서 제한된 구성 기생 및 IR 드롭 분석 실행 |
|
|
| 기록 된 실행 한 번 다시 읽기 |
|
|
| 프로젝트 아티팩트 저장소에 결과 리시트 1개 유지 |
| — |
| 저장된 항목 목록 |
|
|
| 저장된 항목 한 개 읽기 |
| — |
| 원래의 raw runner 위임에 대한 호환성 경로 |
세 명령은 help에 용도를 제한해 두었습니다. px static-timing은 signoff용이 아니고, px spef-summary는 분석 결과가 아니며, px fdtd2d preflight는 결과 대신 실행 준비를 막는 항목을 보고합니다. 출력도 그 범위에 맞춰 사용하세요.
physical run와 마찬가지로 px analyze는 -- 후에 레거시 작업이 필요하며 그렇지 않으면 1를 종료합니다. 허용 목록은 capabilities 및 execute입니다.
PX CPU 및 CUDA 작업
명령 | 백엔드 및 입력 |
|---|---|
|
|
| 동일한 백엔드 및 입력 규칙 |
|
|
| 동일한 명시적 백엔드 정책과 제한된 내장 fixture |
| 동일한 명시적 백엔드 정책과 제한된 내장 fixture |
이 명령은 --project를 받으며 처음 두 명령은 --timeout-ms 1..300000도 받습니다. 명시적 cuda에는 사용 가능한 CUDA 실행 환경이 필요합니다. auto는 엔진이 기록하는 CPU 대체 실행을 별도로 허용하므로 보고된 백엔드를 확인하세요. 이 제한된 수치 작업은 일반적인 물리 signoff나 모든 PX 작업의 GPU 가속을 입증하지 않습니다.
isa
6개의 하위 명령 중 4개는 stdin에서 독점적으로 CX 소스를 읽습니다. isa run은 --runner-carrying 호환성 경로입니다.
명령 | 필수 | 다른 옵션 | 용도 |
|---|---|---|---|
| — | — | stdin에서 CX 소스를 읽어 elaboration 실행 |
|
| — | stdin에서 읽은 CX 소스에 대해 하나의 명령을 조립하세요. |
|
| — | stdin에서 읽은 CX 소스에 대해 인코딩 된 단어를 분해하세요. |
| — | — | stdin에서 소스를 읽어 제한된 CX 공동 시뮬레이션 결과를 생성 |
|
|
| CX 파일에서 이름 있는 검사 하나 실행 |
| — |
| 원래 허용 목록의 로컬 CX 작업에 대한 호환성 경로 |
--check는 elaboration, static-semantics, encoding-uniqueness 및 decode-determinism를 정확히 허용합니다. --bit-len는 서명되지 않은 32비트 정수입니다. --text 및 --bits는 비어 있거나 공백만 있으면 안 됩니다.
isa run은 physical run, px analyze와 달리 정해진 엔진 동작을 사용합니다. passthrough 인수 없이 실행하면 엔진이 필요한 인수를 안내합니다.
$ 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
데스크톱 호스트 작업. 계산은 위의 엔진 네임스페이스에 남아 있습니다.
명령 | 필수 | 용도 |
|---|---|---|
|
| 설치된 IDE에서 표준 절대 프로젝트 디렉터리 하나를 엽니다. |
ide open은 별도로 설치된 데스크톱 앱을 실행합니다. 아래 네이티브 워크스페이스·Cloud·서비스·프로젝트 생성 명령은 각자의 명시적 백엔드를 사용합니다.
--project는 표준 절대 디렉터리여야 합니다. 절대 디렉터리, 기존 디렉터리, 심볼릭 링크가 아닌 고유한 표준 형식이어야 합니다. 심볼릭 링크를 통해 해결되는 경로는 자동으로 따라오기보다는 거부됩니다.
ide open은 엔진 바이너리를 사용하지 않습니다. 먼저 alti와 같은 디렉터리에서 altifigence-ide를 찾고, 없으면 PATH에서 찾습니다. 찾은 앱을 --project <canonical-dir> 인수로 실행하고 altifigence.ide-launcher-receipt.v1 리시트를 출력합니다.
필드 | 의미 |
|---|---|
| 항상 |
|
|
| 자식 프로세스 ID 또는 |
| 항상 |
| 표준 프로젝트 디렉터리 또는 표준화 실패 시 요청된 값 |
|
|
| 해결된 경로 또는 맨 이름 |
|
|
spawned이면 종료 상태 0, 그 밖의 경우 1을 반환합니다. altifigence-ide는 CLI 압축 파일이 아니라 Digital Design Studio에 포함되므로 CLI만 설치한 환경에서 ide open은 unavailable을 반환합니다.
네이티브 프로젝트 및 워크스페이스 작업
ide init --parent ABSOLUTE_DIR --name NAME은 호출자 소유의 정규화된 부모 경로 아래에 새 기본 프로젝트를 만듭니다. 기존 프로젝트를 덮어쓰지 않습니다. ide workspace는 UI를 열지 않고 저장된 로컬 파일을 처리합니다.
| 입력 및 동작 |
|---|---|
| 플랫폼 계약 보고 |
| 워크스페이스를 제공하기 전에 대기 트랜잭션 복구 |
| 제한된 목록 조회. 기본 500개, 최대 20000개 |
| 허용된 저장 텍스트 파일 하나 읽기 |
| 현재 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"
실패한 명령의 출력을 적용 명령으로 파이프하지 마세요. 새 계획 파일을 선택하고 각 종료 상태를 확인하세요. 파일 작성은 지속 저장되는 순차 트랜잭션과 현재 소스 해시를 사용합니다. 무관한 다른 작성자에 대해서까지 파일 시스템 전체의 순간적 원자성을 보장하지는 않습니다. 충돌하면 새로 검토해야 합니다. 계층 작성은 제한된 소스 선택과 기본 구조 생성이며, 완전한 SystemVerilog 의미 기반 리팩터링이나 동등성 증명이 아닙니다.
설정은 DDS의 .alti/ide-settings.json 형식, 알 수 없는 키, 리터럴 null을 유지합니다. patch는 재귀 병합이며 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개 |
|
|
| 기존 로컬 브랜치. 수정 중인 워크스페이스나 지원되지 않는 attribute·filter 동작은 거부합니다. |
이 작업은 네이티브 워크스페이스 트랜잭션과 함께 복구되고 순서대로 처리됩니다. 임의의 Git 인수, hook, 원격 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 도구가 요청 작업을 지원하는 범위에서 import, 매개변수화, struct, enum, 복합·임의 폭 자료형, proc을 지원합니다. 제한된 bits64 파서를 사용하거나 전체 Google 도구 모음을 CUDA로 가속하지는 않습니다.
upstream 요청은 check, eval, convert, optimize, codegen을 선택합니다. 명시적 벡터·tick이 없는 DSLX eval은 실제 모듈 테스트를 실행하며, 실행된 단위 테스트가 0개이면 성공이 아닙니다. 기본 압축 파일에는 독립 IR/proc 평가기 실행 파일이 없습니다. 명시적 벡터나 채널 tick에는 설치 시 --evaluator-bundle과 --evaluator-manifest-sha256으로 허용한 추가 검증 평가기 묶음이 필요합니다. 요청 전에 기능을 확인하세요. upstream 파이프라인 codegen은 1~64단계를 지원합니다. 단위 지연 기반 스케줄은 특성화된 실리콘 타이밍이 아닙니다.
compute
명령 | 용도 |
|---|---|
| GPU 커널을 실행하지 않고 장치 탐색 |
| packed RTL 실행 계약 확인 |
| 명시적 |
| 명시적 |
| CUDA를 로드하지 않고 저장된 packed RTL 결과 검증 |
요청 명령은 --project를 받습니다. 시뮬레이션·Evolve 입력은 4 MiB, verify 입력은 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, island 수를 1~4, 총 계획 평가를 256, LLM 자식 수를 0으로 제한합니다. 장치 메모리는 제한된 worker 버퍼 예산이며 전체 드라이버 메모리 제한은 아닙니다. 선택적인 로컬 cancel_file과 시간 제한은 협력적 취소를 지원하고, 네이티브 도구 호출은 자체 제한을 유지합니다. CUDA 성공 결과에는 장치 발견이나 초기 확인만이 아니라 실제로 허용된 후보 활동과 저장된 하드웨어 출처 정보가 필요합니다. CPU/CUDA 기능 결과의 일치가 속도 향상 주장은 아닙니다.
현재 다운로드에서 실행되지 않는 명령
이전에 누락됐던 eda와 reports 이름 공간이 이제 연결됩니다.
명령 | 입력 |
|---|---|
|
|
|
|
|
|
| 선택적 |
|
|
| 타입 기반 보고서 형식과 제한된 입력은 개별 명령 도움말 참조 |
이 명령은 제한된 확인·파싱·연결 작업이며 일반적인 EDA 도구 실행이 아닙니다. ide init과 명시적인 네이티브 Evolve 명령도 사용할 수 있습니다. 위에서 설명한 미배포 alti-rtl-runner 호환 경로는 별도 제한으로 남습니다. 도움말만으로 지원 여부를 추정하지 마세요.
엔진 작업 준비
작업을 선택하고 설치된 기능 응답·말단 도움말을 확인합니다.
선택한 프로젝트 안에 작은 입력을 저장하고 top/module·진입점을 확인합니다.
필요한 외부 도구를 준비하고 요청이 CPU/CUDA 선택을 지원하면 백엔드를 명시합니다.
자원을 제한해 한 번 실행하고 진단·전체 native 결과를 보관합니다.
더 큰 작업을 만들기 전에 실제 백엔드·입력·출력 산출물·지원하지 않는 수치를 확인합니다.
그래픽 작업은 DDS 분석, 후보 비교는 Evolve를 참고하세요. CLI 엔진 지원·데스크톱 패널·Cloud 경로는 각각의 연동이므로 실제 사용할 작업 경로를 확인합니다.