Hace 2 años | Por NubisMusic a youtube.com
Publicado hace 2 años por NubisMusic a youtube.com

El canal TuberViejuner analiza el Mister FPGA, un hardware que permite emular otras máquinas, principalmente consolas.

Comentarios

apetor

Emulacion no, ejecucion. Ejecucion de las ROMs en un hardware logico mas o menos igual al circuito logico de las placas/consolas/etc ( algunas la clavan, otras simplemente aseguran paralelismo funcional, que ya es mucho, pero la tendencia es la ingenieria inversa y la clonacion total o total+retoques adaptativos pero funcionalmente total del hardware original ).

MiSTer es la rehostia puta. Venia de usar PCs con crtemudriver para usar la grafica a 15KHz, con groovymame y demas, que ya es la ostia, pero la MiSTer ( u otras FPGAs ), y cada vez mas, son la segunda venida de Cristo. Ojo, que una vez lo probeis... ojo.

meneandro

#1 Emulación por hardware, si quieres, pero emulación al fin y al cabo. No pueden reproducir los circuítos originales sino emular su comportamiento (en parte porque de hacerlo podrían estar cometiendo un delito, en parte porque no existen planos de los circuítos originales para hacerlo).

apetor

#4 No, precisamente eso es lo que hacen la mayoria de cores de la MiSTer, clonar las placas a nivel de puertas logicas. Y no, no hay delito por clonar circuiteria logica, es largo de explicar pero no lo hay.

Has mirado el tema de como funcionan ? Miratelo, ESA es, precisamente, la joya de la corona de esto, NO es emulacion.

meneandro

#6 Si, pero muchos sistemas no funcionan 100% exactamente igual. O sea, no es 100% calco y tienen que emular al menos alguna parte.

El grado de fidelidad es mucho mayor, evidentemente, la precisión en los timings y demás está muchísimo más ajustada a la real, y sólo con eso ya supera a los emuladores software de largo.

apetor

#9 Coño, eso lo he dicho desde el primer comentario, pero hay cores clavados. NO es emulacion, ni nada que se le parezca, es ejecucion en hardware clonado, eso es lo que hay que tener presente.

meneandro

#12 goto #13

meneandro

#17 #12 Perdón, goto #16 (ya no me dejaba editar)

ronko

#4 ,#6 Por definición, ambos tenéis razón. https://dle.rae.es/emular

apetor

#11 No, por que la emulacion es copiar comportamiento ( y no suele copiarse mas que el aparente ), la ejecucion en fpgas consigue copiar el comportamiento a base de copiar el circuito logico, el comportamiento se copia como efecto secundario, no como fin.

apetor

#4 Se ve que no te lo has mirado, mira los cores de Jotego ( CPS1, CPS2,... ) o el de NeoGeo de furtek ( donde se mira y se clona su esquematico ), que decapo chips custom para dejar el silicio al aire y, ahi, con microscopio, hizo ingenieria inversa de las construcciones de transistores y demas configuraciones N y P, para sacar el esquema en puertas logicas e implementarlo luego en Verilog y/o VHDL. Vamos, que se clona el hardware.

meneandro

#7 Si, muy bien, ha copiado un chip. Igualmente, están emulándolo:

"En el diseño de circuitos integrados , la emulación de hardware es el proceso de imitar el comportamiento de una o más piezas de hardware (normalmente un sistema en diseño) con otra pieza de hardware, normalmente un sistema de emulación de propósito especial. El modelo de emulación generalmente se basa en un código fuente de lenguaje de descripción de hardware (por ejemplo, Verilog ), que se compila en el formato utilizado por el sistema de emulación."

No es "estoy sustituyendo un chip por otro equivalente", es un "estoy cogiendo la 'descripción del chip' y estoy metiendo esa descripción en otro chip, que aparte de esa información, tiene más cosas". Tú no puedes meter la fpga en donde el chip original y que funcione. De hecho, tienes todo el sistema completo (con sus diversos chips y circuitería intermedia) montado en una fpga. Y aún así, dependes de lógica que haya en esa fpga para "arrancar el sistema".

Por mucho que sea un calco, es una emulación. Es como cuando extraes una rom de un cartucho que tiene hardware asociado, aunque calques el hardware, estás emulándolo, igual que emulas la rom (que es una copia tal cual de los datos que hay en una memoria).

apetor

#10 No, sigues estando equivocado, en fin. Las CPUs tienen microcodigo tambien, ESO es el bitstream de las FPGAs, microcodigo o tablas para gobernar LUTs, eso NO es emulacion.

meneandro

#13 Todo lo que sea no respetar formato y forma de funcionar original es emular. Para copiar de verdad, tendrías que hacer exactamente una placa identica, con idéntica disposición, con chips equivalentes con contenido idéntico, etc.

Estoy seguro de que tus FPGA tienen adaptaciones modernas para poder alimentarse desde la red y/o conectarse por usb a periféricos (por ejemplo, monitores y teclados actuales).

apetor

#16 No, agree to disagree. Emular es copiar el comportamiento APARENTE, nada mas.

a

#16 Por esa regla de tres los procesadores AMD están emulando a los de INTEL o incluso al revés, también se podría decir que los ordenadores modernos emulan a los IBM originales.
Estáis discutiendo por una cuestión más de semántica y lenguaje que por otra cosa #19
Yo más que emulacion hablaría de crear un ordenador compatible.

meneandro

#20 No exactamente, pero no anda muy lejos de la realidad, así que pienso que es cierta tu afirmación. En realidad cada una tiene su propio juego de microinstrucciones propias y con esas microinstrucciones, codifican los repertorios de instrucciones x86, así que en realidad y desde cierto punto de vista, tanto intel como amd estarían emulando las instrucciones x86.

a

#22 Mi postura en realidad va por derroteros diferentes a lo que comentáis, para mí solo se puede hablar de emulación si se hace desde un sistema distinto que tenga una funcionalidad completa.
Es decir se puede emular una NES en un PC o en una PSP por ejemplo, en cambio diseñar e implementar una NES compatible sin tener un sistema host funcional diferente sobre el que implementar la emulación no debería llamarse emulación.
Otro ejemplo, del zx spectrum posteriormente salieron versiones fabricadas por investronica y amstrad con hardware algo diferente y nadie llama a estos ordenadores "emuladores", eran ordenadores compatibles (y no del todo, algunos juegos no funcionaban correctamente).
En resumen para que haya emulación tienes que partir de un sistema funcional y hacer que este sistema emule (se comporte) como otro sistema diferente.

apetor

#20 Es por lo que no se debe hablar de emulacion, es un hardware clinado ejecutando las ROMd wue ejecutaria el hardware original. Tu analogia de intel y AMD encaja.

meneandro

#19 Es que hay un nivel de perfeccionamiento superior a la emulación, que es la simulación, que trata de hacer exactamente lo mismo que el objeto real y de la misma forma en todos sus aspectos (pero una simulación última en hardware no tiene sentido, sería construír el mismo elemento, sería hacer un prototipo funcional; una simulación puede mezclar hardware y software pero con bases lo más reales posible sin llegar a la realidad).

Una emulación trata de imitar la realidad no siendo exactamente lo mismo ni haciéndolo de la misma forma; normalmente no se copia el comportamiento real por falta de recursos, no porque sólo se quiera copiar lo aparente. De hecho, hay emuladores que copian bugs del hardware, eso es más que copiar lo aparente, es casi llegar a lo real.

Por otro lado, lo que yo he dicho es que por mucho que quieras parecerte al hardware original, tienes que hacer consesiones (las fuentes y requerimientos de corriente son distintas, los relojes y la fuente de pulsos de tiempo son distintos, los conectores de periféricos como teclados, monitores, etc son distintos... eso hace que por muy fieles que sean el resto de componentes, estás emulando algunas partes).

apetor

#23 Esto es hardware clonado, sin mas, con alguna parte adaptada. Vamos, que es como coger el hardware original y añadirle, ademas de la circuiteria logica que lleva el original, algo mas de circuiteria para que haya salida HDMI, etc.

meneandro

#26 Pero eso es expandir el hardware original. Sería una mega32x, por poner un ejemplo. O un amstrad megaPC.

En este caso, estarías cogiendo una copia del hardware original y estarías modificándolo para que la salida analógica sea ahora salida digital, no estarías sustituyendo una salida por otra, estarías emulando la salida original (que tienes que mantener porque muchas cosas dependen de ella, como por ejemplo, cualquier cosa que espere por el h/vblank) para que funcione sobre hardware moderno (que ignora todas las señales analógicas porque funciona de otro modo).

apetor

#27 No, de hecho la mister saca señal rgb directa desde el propio core.

apetor

#10 De hecho, si, hay sustitucion de chips con fpgas, si, precisamente, eso tambien se hace.

apetor

#4

NubisMusic

#1 #4 Por este tipo de debates constructivos es por lo que sigo en Menéame. Da gusto.

D

Coño, el viejuner.

Lo que me jode de este youtuber ... es que me recuerdo lo viejuno que soy yo. cry cry

CuervoNegro

#3 A mi ma pasa igual cuando saca maquinas recreativas o consolas o ordenadores antiguos me hace pensar la edad que tengo.

NubisMusic

Aquí una explicación de la SiDi FPGA: