Title Text

La bicha ahora también...

¡¡¡hace hardware!!!

Cristóbal Contreras Rubio

  • Vaquero
  • Pymientero
  • Flamer (un toca web...os)
  • Ecléctico (mear fuera del tiesto)
  • Calvo

"Hacker serás tu , yo soy calvo"

"He visto las 50 sombras de Grey y no me termina de convencer el argumento..."

"Calla y show me the code"

Maker de frases:

Cristóbal Contreras Rubio

Participo activamente en

Hacklab Almería
hacklabalmeria.net

Mi hermano calvo y gordo ha cofundado

#ThePymientoProject

pymiento.com

Cristóbal Contreras Rubio

Contacto:

(Field-Programmable Gate Array)

FPGA

(Field-Programmable Gate Array)

FPGA

¿Que es esto de una FPGA?

FPGA

Una FPGA es una cajonera

  • Es un espacio compartimentado
  • Que se llena de herramientas
  • Reutilizable
  • ...

FPGA

Una FPGA es una cajonera

  • Es un espacio compartimentado
  • Que se llena de herramientas
  • Reutilizable
  • ...

FPGA

El chip de los chipses chips

Viene llenica de recursos lógicos ¿por que?

Porque puede. sirve para diseñar más chips (de proposito espécifico, no nos flipemos)

¿Por que son importantes?

  • Automatización del diseño
  • Eliminar errores
  • Diseños reutilizables, flexibles y escalables
  • Reducir el time-to-market

Xilinx - Altera

  • Estas dos empresas copan prácticamente el 90% de la cuota de mercado (el libre mercado... competencia...)
  • Sus herramientas son privativas, pesadas y ... mejorables
  • Ellas dos son las que deciden (directa o indirectamente) los ritmos de la evolución de esta tecnología (1,2,3 un pasito palante María, 1,2,3 un pasito patrás)

¿De que va el rollo?

  • Con una FPGA puedes cargar-emular un chip en segundos
  • Como es totalmente configurable puedes también hacer chips a tu medida para tus necesidades.
  • Un ejemplo que da bastante miedito es la compra de Altera por Intel (monopolio come with me)
  • Intel pretende poner una FPGA junto sus microprocesadores, para poder hacer sus chips más accesibles ¿Como? Usando las FPGAs para ahorrarse el problema de la conexión con sus chipsets

El Open Source ha ganado la batalla, y está ganando la guerra

¿Guada fac?

¿Y el Open Hardware como va?

Los algoritmos de sintetizado hardware, el último escollo

  • Una vez haces tu diseño hardware en tu pc, hay que volcarlo en la FPGA
  • Un chip es un sistema que vale mucha pasta fabricarlo, luego la optimización en la disposición de sus componentes es crítica
  • Para hacer esto, existen unos algoritmos que transforman tu diseño en bits, consiguiendo un chip con la funcionalidad requerida y el mínimo número de componentes / materiales (silicio) posible
  • Son privativos, su código esta mejor guardado que la receta de la revoltosa
  • No se pueden descifrar por ingeniería inversa... ¿O si?

Proyecto IceStorm

(que bueno que viniste pibe, sos querido acá)

Yes, we can!!!

  • Este señor consigue obtener por ingeniería inversa el algoritmo de sintetizado hardware de las FPGAs iCE40 de Lattice
  • Es el auténtico hito de la electrónica libre       #TheBigBang
  • Ya no solo podemos soñar, sino también hacer

Gracias a Clifford ahora contamos con un toolchain (conjunto de herramientas) con las que poder empezar a hacer cosas interesantes

Toolchain:

So... let's play!!!

iceStick

(la niña de nuestros ojos)

  • Una de las primeras placas Open-FPGA en todo el mundo
  • Es 100% española (hola españoles, ¿sabemos lo que es el I+D?
  • No hay ninguna empresa detrás, está hecha por y para la comunidad
  • Diseñada, creada y testeada en Pinos del Valle, un pequeño pueblo de 700 habitantes en la sierra de Granada

El trío calavera

Eladio Delgado

@EladioDM

Juan Gonzalez-Gomez

@ObiJuan_cube

Jesus Arroyo Torrens

@JesusArroyo89

Están creando un ecosistema de herramientas amigables para acercar el mundo de las FPGAs a todos

(¡¡¡los foc in hamos!!!)

Calla

y

show me the code

El software en las FPGAs

  • El hardware no se programa, se diseña
  • Es un concepto difícil de entender, pero en cuanto se empieza con esto es fácil de asimilar
  • Las FPGAs se diseñan con lenguajes de síntesis hardware o HDL
  • Hay dos-tres grandes HDLs: VHDL, Verilog y quizás System-Verilog
  • Son estándares y cada uno es totalmente distinto
  • Verilog es el usado en el proyecto IceStorm y lleva olvidado prácticamente desde 2003...

El software en las FPGAs

¿Y donde entra en juego aquí la bicha?

Por ejemplo con librerías como:

  • Es una librería Python, totalmente Open Source
  • Está en constante evolución
  • No sustituye los lenguajes HDL, simplemente diseñas en Python y luego se transforma en un archivo Verilog o VHDL

- Bueno Cristo pero las herramientas que tenemos son una pifia, está todo en pre-alpha. Hasta las FPGAs que tenemos para jugar son menos que un juguete, no valen pa ná

- ... Eso es precisamente lo bueno querido cuñado, que ahora mismo está todo por hacer. Que si quieres empezar a aprender electrónica desde cero lo puedes hacer. Pero no sólo eso, sino que vas a aprender aportando a toda la comunidad. Posiblemente tus ejercicios de prácticas sirvan para los demás

- Se te va la olla...

- Las Open-FPGAs no las para nadie, en tu mano está subirte al carro o no. Abre tu Github, ponte a jugar y a compartir, posiblemente el día de mañana nuestros hijos o nietos estudien tus repositorios en la universidad...

MUCHAS GRACIAS

Made with Slides.com