edición general
150 meneos
3973 clics
Nand Game: construye una CPU en tu navegador

Nand Game: construye una CPU en tu navegador

Ensamblar un ordenador es dentro de todo sencillo una vez que adquieres los conocimientos básicos, e incluso existen simuladores como PC Building Simulator que te ayudan a practicar (hasta cierto punto). Sin embargo, la construcción de los componentes, y en especial de un procesador, es un desafío completamente diferente. Requiere un entendimiento profundo de su lógica, algo que no siempre se encuentra a nuestro alcance, pero gracias al juego Nand Game podemos absorber todo lo esencial sobre la construcción de procesadores en cuestión de...

| etiquetas: nand , game , construir , cpu , navegador , simulador , procesador
  1. ¿Con o sin vulnerabilidades de Intel?
  2. #1: Primero tienes que entender lo que es un "latch". xD
  3. #2 ¿Eso no es leche en Aleman suizo? :troll:
  4. www.nand2tetris.org/

    Este libro que se basa en hacer ejercicios en un emulador también está muy bien para aprender los principios básicos teóricos desde la cpu hasta un intérprete basado en máquina virtual.
    Tienen también cursos en Coursera
  5. Yo hice la carrera de Informática en los años 90 y a lo largo de varios cursos nos explicaron cómo está hecho un procesador, empezando por lo más básico. Desde los transistores a las puertas lógicas, operadores aritméticos... de ahí a componentes básicos de memoria, instrucciones de control, etc... Al cabo de tres cursos, teníamos una idea cabal de cómo estaba hecho un Intel 80386. No sé si hoy en día se sigue enseñando esto. Muchos compañeros lo consideraban inútil y era una asignatura hueso, pero a mí me pareció interesante y necesario aunque no le haya dado un uso práctico en el trabajo.
  6. #8 Yo diría que aún se enseña, al menos parte. En primero se sigue enseñando fundamentos de computadores (al menos cuando he mirado planes de informática que alguna vez he pensado en estudiarla).
  7. #8 yo empecé la carrera en el 2001 y no solo nos explicaban los componentes de la CPU desde el transistor, también nos enseñaban la física que hay detrás de un transistor. También teníamos prácticas. Lo que hicimos distaba mucho de ser una CPU pero podías ver los fundamentos básicos en los que se basan. Las hacíamos con un simulador.
  8. Por los ejemplos parece un simulador de circuitos lógicos, más que una herramienta para entender como funciona un procesador. Ese conocimiento está en un nivel de abstracción más alto. Por ejemplo, para entender un procesador no hace falta conocer el detalle de la lógica de las unidades de suma/resta de enteros.
  9. #10 Mi práctica favorita de toda la carrera fue montar un procesador 8085 en una placa, con su EPROM y su RAM, con todas las conexiones hechas mediante cables wrapinados a mano. La alimentación era una pila de 9V. Las entradas y salidas eran varios interruptores y luces o displays, según de lo que tratara tu proyecto. Se desarrollaba un programa que llevabas en un diskete y te lo grababan en la EPROM del aparato. Si todo iba bien, tenías un "ordenador" que cabía en la palma de la mano, el tatarabuelo de la Raspberry Pi.
  10. #4 Así es como nos enseñaron a nosotros en fp la electrónica digital y la verdad que se me quedo bastante bien... empezamos con componentes discretos a crear puertas lógicas y usándolas crear otros tipos de circuitos cada vez mas complejos usando elementos anteriores hasta llegar a los distintos arrays de datos.
  11. #14 Yo conocí a un tipo que podía "leer" código en assembler, como quien lee una novela. Iba mirando un programa compilado y nos iba explicando en voz alta sobre la marcha lo que hacía. Pero no traduciendo las instrucciones, sino realmente entendiendo a alto nivel el objetivo de ese código.
  12. #4 "Never Go Full Adder"
  13. #16 Tengo un amigo que lo hace, lo de entender ensamblador de algunas familias de microprocesadores y microcontroladores, hasta el punto de que se ha hecho su propio sistema operativo y algunas aplicaciones para x86 que usa para varias tareas personales de su día a día.

    Los demás pensamos que es especial, pero le queremos igual.
  14. yo en la carrera diseñé un procesador de 12 estados... la verdad que lo recuerdo como todo un reto... subir de los 10 estados era jodido
  15. #12 si hay simulador: www.buthowdoitknow.com/cpu_model_intro.html incluso en excell
  16. #2 por cierto, estoy atascado en la fase del Latch y siguiendo la wikipedia no me lo acepta.
  17. #22: El latch al menos tiene una ayuda, lo que hay que hacer es conectar la salida a una de las entradas.
  18. me encantaaaaaaaaa!!!
  19. #23 gracias, genial. Me estaba complicando y basta un solo componente para resolverlo :-D
  20. Otro que mola mucho es Cardiac, simula el funcionamiento de una CPU con papel, con su memoria, instrucciones, registro....

    www.cs.drexel.edu/~bls96/museum/cardiac.html

    Por ahí andan los PDFs para imprimirlo y el manual de uso.
  21. Me he quedado en la puerta or
  22. #19 Sale muchísimo más barato el kilo de carne de programador de Java o m$.net que el kilo de carne de programador de ensamblador.
  23. #22 El latch la verdad es que nunca lo toqué así en la carrera, lo que usábamos era un flip-flop RS de toda la vida. Y no sé hasta que punto se llega a usar este tipo de biestable en la práctica.
    Aquí tienes una foto de como lo he montado.  media
  24. #29 si, es la misma solucion a la que llegue yo :-)
  25. Estoy en el "Instruction decoder" y debería funcionar pero me da error en un output al menos. ¿Alguien se lo ha pasado?
comentarios cerrados

menéame