Receber por email
← Voltar para o catálogo

hls-cpp-to-rtl

Habilidade especializada em conversão de C/C++ para RTL utilizando ferramentas de Síntese de Alto Nível.

1.4kestrelas
Atualizado há 4 meses

Ver no GitHub ↗ Licença: MIT

Como adicionar

/plugin marketplace add a5c-ai/babysitter

O comando exato pode variar conforme o repositório. Confira o README no GitHub.

Para o autor da skill

Cole no README do seu repo

Mostra que sua skill está catalogada na Skillteca, gera backlink e tráfego rastreável.

[![Skillteca](https://www.skillteca.com.br/api/badge/hls-cpp-to-rtl/svg)](https://www.skillteca.com.br/skills/hls-cpp-to-rtl)

Skills relacionadas

Ver todas de Automação →

Alerta por categoria

Receba novas skills de Automação toda segunda

1 email curto, só com as skills novas de Automação. 4 minutos de leitura, sem spam, cancela com 1 clique.

Você confirma o email no primeiro envio. Sem spam. Cancela com 1 clique.

Ler descrição completa

HLS C/C++ to RTL Skill

Overview

Expert skill for High-Level Synthesis (HLS) development, converting C/C++ algorithms to optimized RTL implementations for FPGA acceleration.

Capabilities

  • Write HLS-synthesizable C/C++ code
  • Apply Vitis HLS pragmas (PIPELINE, UNROLL, ARRAY_PARTITION)
  • Optimize loop initiation interval (II)
  • Configure HLS interface synthesis (AXI-MM, AXI-Stream, AXI-Lite)
  • Analyze HLS reports and iterate on design
  • Apply dataflow optimization
  • Handle fixed-point arithmetic (ap_fixed, ap_int)
  • Integrate HLS IP into Vivado block designs

Target Processes

  • hls-development.js
  • hardware-software-codesign.js
  • ip-core-integration.js

Usage Guidelines

Code Structure

  • Use static arrays for memory inference
  • Avoid dynamic memory allocation
  • Structure loops for pipeline optimization
  • Use ap_int/ap_uint for arbitrary precision

Key Pragmas

  • #pragma HLS PIPELINE II=1 - Pipeline loops for throughput
  • #pragma HLS UNROLL factor=N - Unroll loops for parallelism
  • #pragma HLS ARRAY_PARTITION - Memory partitioning
  • #pragma HLS DATAFLOW - Task-level parallelism
  • #pragma HLS INTERFACE - Port protocol specification

Interface Synthesis

  • AXI4-Lite: Control registers and scalar arguments
  • AXI4 Memory-Mapped: Large data arrays
  • AXI4-Stream: Streaming data interfaces
  • ap_none/ap_vld/ap_hs: Simple handshake protocols

Optimization Flow

  1. Baseline functional implementation
  2. Analyze synthesis report
  3. Identify bottleneck (II, latency, resources)
  4. Apply targeted optimizations
  5. Iterate until QoR targets met

Dependencies

  • Vitis HLS CLI awareness
  • C/C++ language expertise
  • FPGA resource understanding
Compartilhar X LinkedIn