TW

tencent/wave-mcp

Developer tools

이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기

253 stars 36 forks 품질 79 트렌드 39NOASSERTION

오픈 소스, 라이선스 없이 RTL 파형 디버그용 MCP 서버: FST 파형(VCD/FSDB 자동 변환)과 SystemVerilog 넷리스트를 읽으며, 드라이버 분석, 값/X 추적을 포함하는 34가지 도구를 지원합니다,...

개요

는 LLM을 위한 파형 디버깅 도구 세트를 제공하며, 읽기, 계층적 탐색, 신호 쿼리, 드라이버 분석, 값/X 상태 추적, 파형 비교, 브라우저 파형 뷰어 등을 제공합니다. :Verilator --trace-fst, Icarus는 FST를 생성하여 직접 읽을 수 있습니다; VCD나 FSDB만 가지고 있어도 괜찮습니다; prepare_session 자동으로 변환하고 세션을 생성합니다(FSDB 변환은 Verdi 라이선스를 사용하지 않습니다). 이건 **입니다; 직접 프로세스를 사용해 파형을 생성하고 결과를 제공할 수 있습니다. 칩 검증은 개발 주기의 50% 이상을 차지하며, 파형 디버깅이 가장 빈번한 활동입니다. LLM 시대에는 AI 에이전트가 파형을 직접 읽고, 신호를 검색하며, X-상태의 근본 원인을 추적하기를 원했지만, 상업용 MCP 디버깅은 비싼 라이선스와 제한된 동시성을 요구했습니다. Wave-MCP는 **(pylibfst + pyslang)를 사용하여 완전한 파형 디버깅 기능을 제공합니다: . - : 설계 계층, 인스턴스, 신호(비트 폭/방향/타입, 버스 집계 포함), 신호 값(포인트 쿼리/간격, 임의 접근). - : 연결, 구동, 팬인/팬아웃, 위치 선언(파일: 라인 번호). - :open_static_session 세션은 오직 RTL 소스 코드만을 사용하여 구축됩니다. - :trace_value 드라이브 체인을 따라 역방향으로 탐색하며, 모듈을 가로지르며 각 노드가 진정한 FST 값을 가집니다; trace_x X의 근본 원인을 추적합니다. - : pyslang 진단에서 +incdir+ / 패킷 소스를 자동으로 추가하고 재컴파일합니다; 실패하면 우아하게 다운그레이드되며, 다른 도구들은 영향을 받지 않습니다. - : 소스 코드나 파형이 변경되었지만 넷리스트가 업데이트되지 않으면 경보가 트리거됩니다; 조용히 잘못된 결과를 내지 않습니다. - :d iff_waveforms 통과/실패 파형의 첫 번째 발산 모멘트를 찾고, 신호를 분기 시간으로 정렬하며, 클럭 샘플링을 정렬하여 글리치를 필터링합니다. - :open_wave_view 에이전트가 브라우저에서 파형을 직접 분석할 수 있게 하며, 의심스러운 신호 + 오류 모멘트에 고정된 커서 + 분석 설명 팝업; 두 파형의 동기화 비교; get_view_state 사용자가 보고 있는 것을 역감지합니다. - :stdio (1인, 1프로세스, 0 연산) / HTTP 다중 세션 / 오프라인 자립 패킷 (격리 네트워크). FSDB 변환기(third_party/fsdb2fst)의 일부 구현체는 TraceWeave(MIT)를 참조하며, diff_waveforms의 기능 우선순위도 이에 영향을 받습니다. 자세한 내용은 docs/THIRD_PARTY.md를 참조하세요.

개요(AI 번역)

영어 | 중국어 간체

wave-mcp는 Tencent Penglai Lab Validation Team에서 개발한 오픈 소스 RTL 파형 디버깅 MCP 서버로, LLM용 파형 디버깅을 위한 도구 세트를 제공합니다: FST 파형 + RTL 넷리스트를 읽고, 계층적 탐색, 신호 쿼리, 드라이버 분석, 값/X-상태 추적, 파형 비교, 브라우저 파형 뷰어 등 37개의 MCP 도구를 제공합니다. **Apache-2.0은 오픈 소스이며, 상업용 라이선스가 필요 없고 임의의 동시성을 지원합니다. **

FST 직접 읽기 >, VCD/FSDB는 자동으로 FST로 변환됩니다: Verilator --trace-fst와 Icarus는 FST를 직접 읽을 수 있습니다;

VCD나 FSDB만 가지고 있어도 괜찮습니다; prepare_session가 자동으로 변환하고 세션을 생성합니다(FSDB 변환은 Verdi 라이선스에 해당하지 않습니다). 시뮬레이터를 실행하지 않습니다. 직접 파형을 생성하고 결과를 전달할 수 있습니다.


왜 웨이브-MCP

칩 검증은 개발 주기의 50% 이상을 차지하며, 파형 튜닝이 가장 빈번한 활동입니다. LLM 시대에, 엔지니어들은 AI 에이전트가 파형을 직접 읽고, 신호를 조회하며, X-상태의 근본 원인을 추적하기를 원하지만, 상업용 디버깅도 시장에서 이용 가능합니다 MCP는 비싼 라이선스가 필요하고 동시성도 제한적입니다.

Wave-MCP는 순수 오픈 소스 기술 스택(pylibfst + pyslang)을 사용하여 완전한 파형 디버깅 기능을 제공합니다: 라이선스 없음, 정확한 데이터, 진품 칩 프로젝트 승인.

생산 수준 검증

실제 생산용 칩 프로젝트(수십 개 모듈)에서 완전 검증되었으며, 테스트에 OpenTitan과 Xiangshan을 포함시켰습니다:

차원 결과
테스트 규모 100개 이상의 테스트 케이스 (운영 수준 프로젝트 + 27개의 OpenTitan IP + 38개의 샹산 IP)
데이터 정확도 225만 신호 수준 검증, 100% 값 쿼리 정확도
도구 호출 310만 건이 넘는 호출, 모두 통과
드라이브 분석 드라이브 / 팬인 / 연결성 / 추적성은 프로덕션 레벨 프로젝트에서 완전히 검증됩니다
초대형 모듈 수백만 개의 안정 분석이 가능한 스코프
도구 커버리지 37개 도구 모두 검증되었으며, 뷰어/디프를 포함한 장치와 브라우저가 종단 간 커버리지를 제공합니다

특징

  • 파형 쿼리: 설계 계층 구조, 예제, 신호(비트 폭/방향/유형, 버스 집계 포함), 신호 값(포인트 쿼리/범위, 임의 접근).
  • 정적 분석 (pyslang Netlist): 연결, 드라이브, 팬인/팬아웃, 위치 선언(파일: 라인 번호).
  • 파형 정적 분석 없음: open_static_session 세션은 RTL 소스 코드만으로 생성할 수 있으며, 시뮬레이션 전에 설계 구조 분석을 수행할 수 있습니다.

이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요.

설치

This server does not publish a one-line install command.

Open the repository installation guide MCP 초보자라면? mcpskill.org 가이드부터 시작하세요 →

설정

{ "mcpServers": { "wave-mcp": { "command": "python", "args": ["-m", "wave_mcp.server", "--session", "/abs/path/to/sessions/my_module"] } } }