A Modern Hardware Description Language
Flote is a hardware description language (HDL) and Python framework designed for digital circuit simulation. It's built to be friendly, simple, lightweight, and productive β much easier to learn and use than traditional HDLs like VHDL and Verilog.
Key Features
- π― Simple Syntax: Clean, intuitive syntax inspired by modern programming languages
- π Easy to Learn: Minimal learning curve compared to VHDL/Verilog
- β‘ Fast Installation: Install via pip in seconds:
pip install flote - π Python Integration: Write testbenches in Python with full language expressiveness
- π§ Lightweight: No heavy IDEs required β use any text editor
- π VCD Output: Standard waveform output for visualization
- π¨ HLS Support: Create complex components using pure Python
- π Event-Driven Simulation: Efficient simulation with delta-cycle support
Quick Example
import flote as ft
# Elaborate the circuit
half_adder = ft.elaborate_file('HalfAdder.ft')
# Test all combinations
half_adder.update({'a': '0', 'b': '0'})
half_adder.wait(10)
half_adder.update({'a': '0', 'b': '1'})
half_adder.wait(10)
# Save waveform
half_adder.save_vcd('HalfAdder.vcd')
Why Flote?
Traditional HDLs like VHDL and Verilog were designed decades ago for FPGA/ASIC synthesis. They come with:
- β Verbose, complex syntax
- β Confusing abstractions
- β Heavy, buggy toolchains
- β Steep learning curve
- β Poor documentation
Flote addresses these issues with:
- β Concise, modern syntax (58% less code than VHDL)
- β Clear logic gate abstractions
- β Lightweight Python-based tools
- β Easy to learn and use
- β Comprehensive documentation
Who is Flote For?
- Students learning digital design and computer architecture
- Engineers prototyping and validating digital circuits
- Researchers experimenting with hardware algorithms
- Educators teaching digital systems without VHDL complexity
Get Started
Ready to simplify your hardware development?
-
π Quick Start
Get up and running with Flote in minutes
-
π User Guide
Learn Flote syntax and concepts
Community & Support
- GitHub: icarogabryel/flote
- Issues: Report bugs or request features on GitHub
- PyPI: flote
License
Flote is open-source software distributed under the MIT License.
Flote is an open-source project developed as part of academic research at CESLa (of Federal University of PiauΓ) and my humble bedroom, Brazil.