agentsclimarketplace

Hls cpp to rtl

Skill a5c-ai/babysitter/library/specializations/fpga-programming/skills/hls-cpp-to-rtl

Expert skill for C/C++ to RTL conversion using High-Level Synthesis toolsFrom its SKILL.md

Install
npx -y skills add a5c-ai/babysitter --skill hls-cpp-to-rtl

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

SKILL.md

2.0 KB, 410 tokens by cl100k_base, as published. Nobody here has run it

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

What ships with it: 1 file

807 B alongside SKILL.md

Keep looking

Skills are one crate of 326,059. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.