FPGA Toolchains — Suite de dezvoltare: TerosHDL: Diferență între versiuni
Pagină nouă: __TOC__ =Toolchains — Suite de dezvoltare= '''8/02/2026''' Cred că cel mai bun echivalent în limba română pentru ''toolchains'' este ''suite de dezvoltare'' sau ''instrumente de dezvoltare'' și reprezintă un ansamblu de instrumente a căror utilizare permite realizarea unor aplicații de la cap la coadă. Personal prefer termenul de ''suite de dezvoltare'' deoarece este mai ilustrativ pentru imaginea unui grup de aplicații și alte instrumente, hardware și softwar... |
m Yo3iti a redenumit pagina FPGA:Toolchains — Suite de dezvoltare în FPGA Toolchains — Suite de dezvoltare: TerosHDL |
(Nicio diferență)
| |
Versiunea curentă din 1 noiembrie 2026 12:08
Toolchains — Suite de dezvoltare
8/02/2026
Cred că cel mai bun echivalent în limba română pentru toolchains este suite de dezvoltare sau instrumente de dezvoltare și reprezintă un ansamblu de instrumente a căror utilizare permite realizarea unor aplicații de la cap la coadă.
Personal prefer termenul de suite de dezvoltare deoarece este mai ilustrativ pentru imaginea unui grup de aplicații și alte instrumente, hardware și software, care conlucrează pentru realizarea produsului finit.
Cel mai mult am lucrat cu Quartus Prime de la Altera (Intel a re-promovat recent brand-ul Altera pentru divizia sa de circuite programabile). Nu am deloc experiență cu platformele similare de la Xilinx (Vivado & co.) sau Lattice (IceCube2). Dar diferențele nu trebuie să fie mari, poate diferă doar anumite detalii de implementare a unor funcționalități specifice. Indiferent de platformă (Intel-Altera, AMD-Xilinx sau Lattice etc) toate trec obligatoriu prin aceleași etape:
- Design — Proiectare
- Sinteză
- Plasare și rutare
- Analiza duratelor (timing analysis)
- Programarea FPGA-ului
- Testarea și verificarea
Pentru Windows și Linux există instrumente care includ atât sinteza cât și plasarea și rutarea circuitelor. Pentru Mac nu există toolchain care să facă asta. Cel mai apropiat este TerosHDL, modul pentru Visual Studio Code. Recent l-am instalat și utilizat cu success, nu fără bătaie de cap. Mai jos sunt câteva lucruri de care trebuie ținut cont pentru o bună funcționare:
- Crearea și activarea unui mediu virtual (virtual environment) Python <3.12
- Instalare edalize
- Instalare vunit
- Instalare ghdl
- Instalare Icarus Verilog
Mediul virtual Python
Acesta nu trebuie să fie mai mare de 3.11. Edalize are anumite cerințe specifice în ceea ce privește versiunea Python:
python3.11 -m venv venv
source venv/bin/activate
Din acest motiv am folosit versiunea 3.11.14:
python --version
>> Python 3.11.14
pip show edalize | grep Requires
>> Requires: Jinja2
Apoi am instalat modulele:
pip install --upgrade pip
pip install vunit_hdl edalize
pip list
>>
Package Version
---------- -------
colorama 0.4.6
edalize 0.6.5
Jinja2 3.1.6
MarkupSafe 3.0.3
pip 26.0.1
setuptools 80.9.0
vunit_hdl 4.7.0
Edalize
Edalize este o bibliotecă Python pentru interacțiunea cu instrumente EDA. Poate crea fișiere-proiect pentru instrumentele suportate și le poate rula în mod batch sau GUI (acolo unde modul GUI este suportat). Aici este pagina github pentru edalize iar aici un link direct către un fișier README
Vunit
VUnit este o platformă open source pentru testarea unitară (unit testing) VHDL/Verilog/SystemVerilog. Oferă funcționalitățile necesare realizării unui proces automat de testare a codului HDL. Aici este pagina proiectului iar aici este un link direct către un fișier README.
ghdl
După toate acestea, am avut alte probleme:
---> Build directory: /Users/tom/.teroshdl/build
---> Make installation folder path: System path
Error: '['make', 'run']' exited with an error: 2
Cele mai comunte trei cauze pentru această eroare sunt:
- Fișierul Makefile nu a fost găsit → VUnit/edalize nu l-au generat corect
- Lipsește simulatorul → trebuie verificat dacă este instalat un simulator (gen ghdl sau ModelSim)
- Probleme cu calea către executabil → executabilul simulatorului nu este în variabila PATH de sistem
La mine s-a dovedit a fi a doua problemă
# Check for GHDL (free, open-source)
which ghdl
ghdl --version
Și l-am instalat cu brew:
# Install GHDL via Homebrew
brew install ghdl
Icarus Verilog
Pagina proiectului este aici, iar aici este un fișier README din respozitoriul online.
# Install Icarus Verilog
brew install icarus-verilog
Comenzi compilare și simulare
#!/bin/bash
# Compile
iverilog -o sim logic_gates.v logic_gates_tb.v
# Run simulation
vvp sim
# Open waveform
surfer logic_gates.vcd