-
Notifications
You must be signed in to change notification settings - Fork 197
Home_EN
Tutorial of synthesizable digital systems design, using ONLY free and open source tools. Hardware description using Verilog.
- Development board: iCEStick. iCE40HX-1k FPGA from Lattice
- Verilog simulator: icarus Verilog
- Signal visualizer: Gtkwave
- Synthetizer: Yosys (Github repo)
- Place & route: Arachne-prn (in github)
- Utils and upload to FPGA: IceStorm project
Why libre?
Por donde íbamos? --> Retomar artículos sobre el tema
--> convirtiendo hw en sw
--> Hispalinux
--> JCRA barcelona
Juan González Gómez (Obijuan)
![](https://github.com/Obijuan/open-fpga-verilog-tutorial/raw/master/tutorial/T00-Intro/images/bq-logo-cc-sa-small-150px.png)
Licensed under a Creative Commons Attribution-ShareAlike 4.0 International License
- IceStorm project, by Clifford Wolf and Mathias Lasser
- Arachne-pnr, by Cotton Seed
-
This tutorial wouldn't be possible without the astounding free tools, result of the iCEStorm and Arachne-pnr projects, by Clifford Wolf, Mathias Lasser and Cotton Seed. They represent a bit step for humankind technologic heritage. Thank you!
-
To BQ, for financing the material used in this tutorial. I'm truly privileged for being able to work in a company that encourages the maker spirit, and support research and experimentation initiatives with free technologies. Thank you!
-
To Jesús Arroyo, for actually going buying the iCEStick boards and begin the making of Debian/Ubuntu packages for the IceStorm and Arachne-pnr projects' tools. Thank you!
-
To David Sánchez Falero, for teaching me how to highlight verilog code in github's markdown. :-) This made the code way more readable! Thank you!
-
To Carlos García Saura, for IceStorm installation instructions in Fedora. Thank you!
-
What's the difference between an FPGA and an Arduino?
Arduino boards have a microcontroller, that we program. With an FPGA is not the same, you don't actually PROGRAM them, you configure them to implement ACTUAL HARDWARE on them. Is a tool for digital circuit design. -
What does and FPGA that an Arduino won't?
A lot of applicatons can be made out of software (programming) or hardware. A counter, for example. The difference is that when you do it with pure hardware, they work way faster. Plus, hardware can be just "cloned" inside the board, and work in parallel. Having things happening simultaneously by softare is not a trivial thing. -
Why Verilog and not VHDL?
Verilog is the language supported by the IceStorm project for now. It is a free project, so the community will eventally add VHDL support. By today (sep-2015), Verilog is required to use free tools and FPGAs.
0 You are leaving the privative sector (EN)
1 ¡Hola mundo! (EN) (RU)
2 De un bit a datos (EN)
3 Puerta NOT (EN)
4 Contador de 26 bits (EN)
5 Prescaler de N bits (EN)
6 Múltiples prescalers (EN)
7 Contador de 4 bits con prescaler (EN)
8 Registro de 4 bits (EN)
9 Inicializador (EN)
10 Registro de desplazamiento (EN)
11 Multiplexor de 2 a 1 (EN)
12 Multiplexor de M a 1 (EN)
13 Inicializando registros (EN)
14 Registro de N bits con reset síncrono
15 Divisor de frecuencias
16 Contador de segundos
17 Generando tonos audibles
18 Tocando notas
19 Secuenciando notas
20 Comunicaciones serie asíncronas
21 Baudios y transmisión
22 Reglas de diseño síncrono
23 Controladores y autómatas finitos
24 Unidad de transmisión serie asíncrona
25 Unidad de recepción serie asíncrona
26 Memoria ROM
27 Memoria ROM genérica
28 Memoria RAM
29 Puertas triestado
30 Hacia el microprocesador y más allá