¿Es posible simular el hardware de la arquitectura MIPS definida por computadora con Verilog / VHDL?

0

Estoy leyendo el libro de Diseño Digital y Arquitectura de Computadoras y, si voy a ser persistente, al final tendré una computadora de arquitectura MIPS, implementada desde cero.

Me pregunto si es posible definir de alguna manera diferentes componentes de esta computadora usando Verilog o VHDL o alguna otra cosa, y simularlos en una computadora. Me gustaría construirlo a partir de la mayoría de los bloques básicos como NAND o AND y hacer un paso a la vez construyendo cada capa de abstracción. Luego, cuando haya terminado con la parte de hardware, me gustaría escribir un sistema operativo para ella.

¿Es posible hacer todo esto sin comprar ningún hardware real y usar solo algún software de simulación?

Si es así, por favor, indíqueme algunos recursos donde pueda leer más sobre esto. O explica cómo se puede hacer esto.

Gracias de antemano.

    
pregunta Nikita Luparev

3 respuestas

0

Por supuesto, es posible simular un microprocesador de computadora utilizando Verilog y VHDL. Como dijo Alex, para eso están destinados.

Tres puntos:

  1. No llegarás lejos construyéndolo con puertas primitivas (AND, OR, etc.). Si bien es instructivo aprender a construir módulos como Adders y Counters en el nivel de la puerta de entrada, una vez que se pasa, se convierte en una rutina y ya no se aprende mucho. El diseño digital moderno se realiza a un nivel más alto de abstracción denominado Nivel de transferencia de registro. El código escrito en ese nivel se llama RTL. Un gran lugar para aprender sobre cómo escribir Verilog RTL es en Asic-World (lo uso todo el tiempo): asic-world

  2. Nunca, jamás, simulará lo suficientemente rápido en RTL para que usted escriba un sistema operativo en él. Si está interesado en abstracciones de nivel superior, debe escribir un simulador de conjunto de instrucciones en C (no es difícil) y puede usar ESO para escribir y el sistema operativo.

  3. Hay muchos núcleos VHDL y Verilog de código abierto que implementan el conjunto de instrucciones MIPS e incluyen el código fuente. Puedes descargarlos, jugar con ellos y aprender mucho. Aquí hay solo un proyecto de muchos: miniMIPS

respondido por el crgrace
0

Sí, esto es definitivamente posible. Esto es para lo que Verilog y VHDL fueron diseñados en primer lugar. Hay múltiples simuladores de código abierto Verilog y VHDL disponibles, incluyendo Icarus Verilog, cver, GHDL, y probablemente muchos más. Es posible que deba instalar un visor de forma de onda como gtkwave también para observar las trazas de simulación.

La mayoría de las cadenas de herramientas de FPGA también incluirán un simulador gratuito. Xilinx ISE viene incluido con isim y se puede descargar de forma gratuita, aunque se paga en espacio en el disco duro (~ 10 GB). Creo que su nuevo entorno Vivado es similar tanto en las características integradas como en la huella del disco duro, aunque no estoy familiarizado con él, ya que utilizo principalmente dispositivos de la serie 6 de Xilinx que requieren ISE. El software Quartus de Altera incluye una versión gratuita de Modelsim y también se puede descargar de forma gratuita, pero también tiene unos 10 GB. Los simuladores de código abierto son tres órdenes de magnitud más pequeños (~ 10 MB).

    
respondido por el alex.forencich
0

O, simplemente use Logisim , un simulador de lógica GPL. No es difícil construir procesadores simples en Logisim una vez que aprendes a hacerlo. Software muy bueno.

    
respondido por el Psvedman

Lea otras preguntas en las etiquetas