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.