Cómo programar la CPU Pentium [cerrado]

0

Tengo dos CPU perfectamente buenas, una Pentium m, la otra Pentium III y están sentadas en bolsas antiestáticas y papel de burbujas sin hacer nada. Quiero usarlos para ALGO, conozco sus pin-outs y esas cosas, pero no sé cómo hacer que hagan cosas. Quiero hacer mi propia placa base y hacer que se comporten como un microcontrolador con ellos que se comunican con chips GPIO de algún tipo, pero sin la pérdida obvia de rendimiento (ya que las MCU son más lentas que las CPU). ¿Alguien puede ayudarme a comprender qué debo hacer? También necesito el lenguaje ensamblador para ambas CPU.

    
pregunta Jaca

1 respuesta

9

Básicamente:

  1. Obtenga la hoja de datos, mire la asignación de pines.
  2. Diseñe un tablero con ranuras DIMM.
  3. En lugar de un BIO, use el puerto flash SPI de northbridge / southbridge y programe una unidad flash SPI.

Esto es una pregunta demasiado amplia y no tiene en cuenta nada del diseño práctico de mobo, como la forma de enrutar un BGA de paso fino (si no es la CPU, es el zócalo) sobre 6-8 capas con múltiples niveles de voltaje diferentes, cómo generar esos niveles de voltaje de manera eficiente (por amor a Dios, no reguladores lineales) o cómo hacer que las conexiones realmente funcionen (los rastros de DRAM a alta velocidad deben ser desviados y ajustados por impedancia). p>

Si desea programar un Pentium, compre un mobo de chatarra antiguo de eBay o de alguna fuente y dígale a su BIOS que arranque desde el controlador USB. Quema tu palo con tu código y deberías poder trabajar con él. En lo que respecta al Pentium, no importa si tiene un mobo personalizado o si está utilizando el BIOS para establecer su primera dirección de programa. No necesita saber cómo accede a la memoria porque los Pentium modernos contienen controladores SDRAM que generan el tiempo y el arranque para usted.

Si estás empeñado en hacer tu propio mobo, hay algunas cosas que debes considerar de antemano. El primero es el enrutamiento BGA. Para esto, puede "diseñar la placa FPGA" de Google porque las FPGA tienen muchas de las mismas consideraciones de potencia y enrutamiento que las CPU modernas. El segundo es el enrutamiento PCIe, porque supongo que querrá eso: busque "enrutamiento de par diferencial". Lo tercero es el enrutamiento DRAM, ya que son muchas señales en poco espacio, mucho más grandes que PCIe.

Si necesita saber algo sobre cómo el hardware y el software de bajo nivel interactúan con el BIOS para iniciar el código del programa, vaya a OSDev y mira su tutorial de Bare Bones. Esto es para un núcleo de sistema operativo básico, pero será suficiente para arrancar lo que quieras si tienes la paciencia para trabajar en todo. Utilizando estos principios, puedes convertir tu i7 de cuatro núcleos en un Arduino en 'roids'.

Para hacer GPIO, simplemente configuraría una rutina para transportar datos al controlador USB que está conectado a un microcontrolador configurado para recibirlo. O bien, puede diseñar una tarjeta PCIe FPGA con 500 pines de E / S diferentes que funcionan a 400MHz. Una es más difícil que la otra.

Tuve la paciencia para pasar por todo esto porque este es el tipo de cosas que hago para divertirme también, pero necesita tomarse el tiempo para considerar realmente la idea en lugar de simplemente venir aquí y hacer una pregunta como como "¿cómo hago esto?"

La mejor de las suertes.

    
respondido por el ecfedele

Lea otras preguntas en las etiquetas