Installation

This guide covers installing ALY and its dependencies.

Requirements

Python

Python 3.9 or higher is required.

External Tools (optional, depending on workflow):

Tool

Purpose

Installation

Vivado

Xilinx synthesis/simulation

Xilinx Downloads

Yosys

Open-source synthesis

apt install yosys or YosysHQ

Verilator

Fast RTL simulation/linting

apt install verilator or Verilator

ModelSim

RTL simulation

ModelSim

QuestaSim

Commercial simulation

Siemens EDA

RISC-V GCC

Firmware compilation

apt install gcc-riscv64-unknown-elf

Installation Methods

From Source

# Clone the repository
git clone https://github.com/RWU-SOC/aly-tool.git
cd aly-tool

# Install in development mode
pip install -e .

# Or install with development dependencies
pip install -e ".[dev]"

Verify Installation

# Check version
aly --version

# List available commands
aly --help

Environment Setup

Tool Paths

ALY automatically detects tools in your PATH. You can also configure explicit paths in .aly/config.yaml:

simulation:
  tools:
    xsim:
      bin: /opt/Xilinx/Vivado/2024.1/bin/xsim
    verilator:
      bin: /usr/local/bin/verilator

synthesis:
  tools:
    vivado:
      bin: /opt/Xilinx/Vivado/2024.1/bin/vivado
    yosys:
      bin: /usr/bin/yosys

Project Structure

After installation, you can create a new project:

aly init my_project --template basic

This creates the following structure:

my_project/
+-- .aly/                    # ALY configuration
|   +-- config.yaml          # Project configuration
+-- rtl/                     # RTL source files
|   +-- manifest.yaml        # RTL manifest
+-- tb/                      # Testbenches
|   +-- manifest.yaml        # Testbench manifest
+-- fw/                      # Firmware (optional)
+-- constraints/             # Design constraints
+-- build/                   # Build outputs

Next Steps