Google XLS a través de Altifigence CLI
Un flujo independiente de CLI para Linux ejecuta DSLX con una versión fijada de Google XLS upstream; las herramientas MCP de XLS local ofrecen operaciones de código a clientes compatibles.

Altifigence CLI ofrece un flujo para Linux x86_64 que permite instalar y ejecutar una versión fijada de la cadena de herramientas de Google XLS upstream. Acepta solicitudes que identifican módulos de código y una operación, y devuelve resultados de las herramientas instaladas. Con este flujo de línea de comandos puedes comprobar DSLX, ejecutar pruebas de módulos y generar SystemVerilog a partir de una función seleccionada.
Un segundo flujo conecta clientes MCP compatibles con herramientas locales de código XLS. Estas herramientas usan el motor XLS nativo instalado junto a ellas, que se ejecuta en la CPU, y aceptan código incluido directamente en la solicitud. El flujo de la cadena upstream y el de MCP de XLS local tienen pasos de configuración y formatos de solicitud independientes. Cada uno ofrece una forma concreta de trabajar con código e inspeccionar sus salidas a través de la instalación de Altifigence CLI.
Ejecuta la versión fijada de la cadena de herramientas de Google XLS upstream
El flujo upstream empieza con una instalación explícita de la cadena de herramientas. Altifigence CLI instala una versión fijada de Google XLS, verifica el archivo y comprueba el inventario de herramientas y biblioteca estándar. Conserva los archivos de licencia de la versión y escribe una configuración de la cadena cuando se superan las comprobaciones. La CLI vuelve a verificar esa versión instalada antes de usarla.
La configuración identifica la instalación que se usará en solicitudes posteriores. Su respuesta de capacidades describe las operaciones y los tipos de entrada disponibles, junto con las identidades de la versión y las herramientas. Así, la tarea sobre el código cuenta con un contexto de ejecución explícito: una solicitud, una instalación seleccionada y un resultado que registra las herramientas utilizadas.
Instala Altifigence CLI en Linux x86_64. Ejecuta alti xls upstream install con tu usuario habitual y elige nuevas rutas absolutas para el destino de instalación y la configuración de la cadena de herramientas dentro de una carpeta existente.
Consulta alti xls upstream capabilities con esa configuración de la cadena de herramientas. Examina las operaciones, los tipos de entrada y la identidad de la versión instalada que se indican para tu instalación.
Prepara una solicitud con operation, input_kind, entry y files. Para DSLX, files contiene los módulos cuyas claves son rutas relativas terminadas en .x, y entry identifica el módulo inicial.
Ejecuta alti xls upstream run con la configuración de la cadena de herramientas, una carpeta work-root existente y la solicitud. Elige check para el análisis sintáctico y la comprobación de tipos, o eval para las funciones de prueba y los procs de prueba del módulo entry.
Para una función seleccionada, incluye top y elige convert, optimize o codegen. Examina los artefactos devueltos y conserva el resultado junto con la solicitud de código para tu revisión.
Una solicitud con varios archivos hace explícita la relación entre un módulo y sus importaciones. El ejemplo publicado sitúa una función add en adder.x y la importa desde main.x, donde una prueba de módulo comprueba el resultado. entry indica el módulo de prueba para la evaluación. check y eval operan sobre ese módulo entry y sus importaciones; las solicitudes de generación identifican la función mediante top.
De un sumador tipado a las salidas generadas
El sumador documentado usa entradas u8 y un valor de retorno u8. Su prueba suma u8:255 y u8:1 y espera u8:0. Es un pequeño ejemplo útil para una revisión porque muestra juntos el tipo del código y el comportamiento esperado de vuelta a cero por desbordamiento. Puedes leer la función, examinar la aserción y ejecutar la prueba de módulo como partes de una misma tarea sobre el código.
Para generar SystemVerilog segmentado en etapas, el ejemplo selecciona add como top y usa el módulo del sumador como entry. La conversión produce una representación intermedia de la función seleccionada; la optimización produce un artefacto IR optimizado; la generación de código produce el SystemVerilog y el material de interfaz, planificación y firma que lo acompaña. Elegir convert u optimize te permite detener la revisión en una fase intermedia.
Ese resultado de codegen con segmentación incluye module.sv, converted.ir, optimized.ir, interface.textproto, schedule.textproto y signature.textproto. Cada artefacto incorpora su texto, número de bytes y SHA-256. El resultado también registra los procesos de las herramientas, incluidos sus hashes, argumentos, códigos de salida y salida. En conjunto, estos campos vinculan los archivos generados con las herramientas y la solicitud usadas en la ejecución.
Una solicitud de generación upstream puede seleccionar etapas de segmentación o usar SystemVerilog combinacional. Plantéalo como una elección sobre la estructura generada mientras exploras el código. Un ejercicio útil de revisión consiste en mantener el DSLX junto al IR y al SystemVerilog devueltos y examinar cómo aparece la función seleccionada en las distintas fases. Esa comparación es una tarea de lectura que diriges tú usando los artefactos generados.
Conecta las herramientas MCP independientes de XLS local
El flujo MCP de XLS local empieza con el paquete CLI verificado para Linux x86_64. En los ajustes stdio de un cliente compatible, establece como comando la ruta absoluta del ejecutable alti-mcp instalado y deja los argumentos vacíos. Mantén alti-xls junto a alti-mcp en esa instalación verificada. Establece la variable de entorno ALTI_MCP_MODE del proceso servidor en local-xls y conecta.
Actualiza la lista de herramientas del cliente y llama a altifigence.local.xls.capabilities con un objeto vacío, {}. Examina las capacidades del motor y el comprobante de ejecución devueltos. Este paso establece el contexto del motor antes de enviar operaciones de código desde el cliente.
El conjunto de herramientas incluye altifigence.local.xls.capabilities, altifigence.local.xls.check, altifigence.local.xls.eval, altifigence.local.xls.optimize y altifigence.local.xls.codegen. Ofrecen inspección de capacidades, comprobación de código, evaluación con vectores de entrada, optimización de XLS IR y generación de RTL. La ejecución usa el motor instalado junto a ellas, que se ejecuta en la CPU.
Para una operación de código, proporciona input_kind como dslx o xls-ir, el código incluido directamente en source y el nombre de la función principal en top. Para eval, proporciona también vectors como matrices de valores de cadena. Este formato de solicitud encaja con una función de código seleccionada explícitamente y un conjunto de entradas tipadas preparadas para ella. Una llamada correcta al motor devuelve engine y receipt en structuredContent.
Elige el flujo adecuado para la tarea sobre el código
La vía upstream resulta adecuada si trabajas con módulos DSLX, importaciones y pruebas de módulos y quieres resultados de una versión fijada e instalada de la cadena de herramientas de Google XLS. La vía MCP local sirve para usar un cliente compatible que envíe operaciones con código incluido en la solicitud y vectores de evaluación al motor nativo de CPU. Empieza por la respuesta de capacidades correspondiente, identifica el código y mantén el resultado devuelto disponible para examinarlo.
Para el ejemplo del sumador, conserva la solicitud de prueba de módulo y la de generación como entradas distintas para la revisión. La solicitud de prueba indica el módulo que contiene la aserción, mientras que la de generación indica el que contiene la función seleccionada. Leer ambas solicitudes juntas aclara qué código se evalúa y qué función se convierte en RTL. Conserva sus correspondencias de archivos junto con los resultados para identificar fácilmente el módulo importado y entry.
El cliente local ofrece otro ejercicio práctico con el código: envía una función pequeña con tipos de entrada explícitos, comprueba el código y evalúalo con vectores preparados. Compara los valores devueltos con las expectativas que escribiste para esas entradas. Conserva el resultado del motor y el comprobante de ejecución con la revisión. Esto aporta material para una comparación de código, valores de entrada y salida dirigida por ti, en la que cada operación se elige explícitamente en el cliente.
Más información
Consulta la guía de la versión fijada de XLS upstream para conocer la instalación, las pruebas de módulos y los artefactos SystemVerilog.
Usa la guía de MCP de XLS local para configurar el cliente y realizar operaciones de código.
Lee la guía de Altifigence CLI para conocer el flujo de instalación en Linux.
Visita Altifigence Downloads para obtener la distribución de CLI y las descargas de productos.