Imagen

CPU de 1 bit, la menos potente del mundo

Avatar de Usuario
cacharreo
Mensajes: 2104
Registrado: 03 Jun 2023 09:37
Ubicación: /home/cacharreo/

Re: CPU de 1 bit, la menos potente del mundo

Mensaje por cacharreo »

mvalder escribió: 24 Sep 2024 10:18Muchas gracias por la precaución de dejar que se caliente la placa para estabilizar la frecuencia.
No se me ocurre una situación en la que pueda hacer falta pero, por si acaso, ahí queda la explicación. :-P

Realmente no creo que si en el transcurso de 5 ó 10 minutos se pasa de 1.02Hz a 1.05Hz, vaya a molestar para nada.
© cacharreo
mvalder
Mensajes: 1361
Registrado: 21 May 2023 02:04

Re: CPU de 1 bit, la menos potente del mundo

Mensaje por mvalder »

cacharreo escribió: 24 Sep 2024 10:29
mvalder escribió: 24 Sep 2024 10:18Muchas gracias por la precaución de dejar que se caliente la placa para estabilizar la frecuencia.
No se me ocurre una situación en la que pueda hacer falta pero, por si acaso, ahí queda la explicación. :-P

Realmente no creo que si en el transcurso de 5 ó 10 minutos se pasa de 1.02Hz a 1.05Hz, vaya a molestar para nada.
Bueno, han pedido muchas placas y están casi todos muy callados. A saber qué están preparando, je, je.
Avatar de Usuario
cacharreo
Mensajes: 2104
Registrado: 03 Jun 2023 09:37
Ubicación: /home/cacharreo/

Re: CPU de 1 bit, la menos potente del mundo

Mensaje por cacharreo »

mvalder escribió: 24 Sep 2024 10:39Bueno, han pedido muchas placas y están casi todos muy callados. A saber qué están preparando, je, je.
Al final han sido 15 pero de ellas había 7 en kit que la mayoría estarán aún por montar.
© cacharreo
Avatar de Usuario
cacharreo
Mensajes: 2104
Registrado: 03 Jun 2023 09:37
Ubicación: /home/cacharreo/

Re: CPU de 1 bit, la menos potente del mundo

Mensaje por cacharreo »

cacharreo escribió: 24 Sep 2024 10:13Si por contra necesitas saber la frecuencia exacta, con acoplar a la señal CLK del bus de salida (OUTPUT) un multímetro baratuno con contador basta (o si se dispone de él, un contador de frecuencia)
Aplicación con multímetro baratuno. :-P

Imagen
(click para ampliar)
© cacharreo
mvalder
Mensajes: 1361
Registrado: 21 May 2023 02:04

Re: CPU de 1 bit, la menos potente del mundo

Mensaje por mvalder »

cacharreo escribió: 24 Sep 2024 11:20
cacharreo escribió: 24 Sep 2024 10:13Si por contra necesitas saber la frecuencia exacta, con acoplar a la señal CLK del bus de salida (OUTPUT) un multímetro baratuno con contador basta (o si se dispone de él, un contador de frecuencia)
Aplicación con multímetro baratuno. :-P

Imagen
(click para ampliar)
Muy interesante, gracias. Mi polímetro debe de ser ultrabaratuno, porque no me deja hacerlo, je, je.
Imagen
https://www.leroymerlin.es/productos/mu ... 79044.html
dancresp
Mensajes: 6566
Registrado: 13 Nov 2010 02:08
Ubicación: Barcelona

Re: CPU de 1 bit, la menos potente del mundo

Mensaje por dancresp »

Yo sigo esperando la recepción de mis dos bits, pero estoy de puente por fiesta mayor en BCN y hasta mañana no vuelvo al despacho.

Por otro lado, ¿hay disponible algún esquema electrónico de la placa?
Me tiene intrigado que un aparato que en el fondo no hace gran cosa requiera de tantos chips.

Me gustaría echarle un vistazo a ver si entiendo su funcionamiento... -grin
Buscando la IP de la W.O.P.R. he encontrado mi índice
Avatar de Usuario
cacharreo
Mensajes: 2104
Registrado: 03 Jun 2023 09:37
Ubicación: /home/cacharreo/

Re: CPU de 1 bit, la menos potente del mundo

Mensaje por cacharreo »

mvalder escribió: 24 Sep 2024 11:53Muy interesante, gracias. Mi polímetro debe de ser ultrabaratuno, porque no me deja hacerlo, je, je.
-rofl

El de la foto es el modelo "Pro" y costó menos de 10€ puesto en casa (AliExpress Choice).
© cacharreo
Avatar de Usuario
cacharreo
Mensajes: 2104
Registrado: 03 Jun 2023 09:37
Ubicación: /home/cacharreo/

Re: CPU de 1 bit, la menos potente del mundo

Mensaje por cacharreo »

dancresp escribió: 24 Sep 2024 12:00Yo sigo esperando la recepción de mis dos bits,
Que están "En entrega" desde ¿hace 10 días? -grin Ya les vale a los de Correos. En la oficina dicen que es un plazo "normal". Tienen una chispa. :-P

De forma paralela he iniciado una reclamación que supuestamente lleva a una investigación que supuestamente se inició pero sobre la que aún no tengo ni la más mínima novedad.
dancresp escribió: 24 Sep 2024 12:00Por otro lado, ¿hay disponible algún esquema electrónico de la placa?
Alguno hay, en la página del proyecto.
dancresp escribió: 24 Sep 2024 12:00Me tiene intrigado que un aparato que en el fondo no hace gran cosa requiera de tantos chips.
Recuerdo que todos los chips son simples excepto el 74xx74 y todas las funciones se calculan con puertas NAND. No hay multiplexores, ni selectores ni nada, y cada función similar requiere un 74xx00 completico.
dancresp escribió: 24 Sep 2024 12:00Me gustaría echarle un vistazo a ver si entiendo su funcionamiento...
Te recomiendo echar mano de Logisim.
© cacharreo
dancresp
Mensajes: 6566
Registrado: 13 Nov 2010 02:08
Ubicación: Barcelona

Re: CPU de 1 bit, la menos potente del mundo

Mensaje por dancresp »

cacharreo escribió: 24 Sep 2024 12:27
dancresp escribió: 24 Sep 2024 12:00Por otro lado, ¿hay disponible algún esquema electrónico de la placa?
Alguno hay, en la página del proyecto.
dancresp escribió: 24 Sep 2024 12:00Me tiene intrigado que un aparato que en el fondo no hace gran cosa requiera de tantos chips.
Recuerdo que todos los chips son simples excepto el 74xx74 y todas las funciones se calculan con puertas NAND. No hay multiplexores, ni selectores ni nada, y cada función similar requiere un 74xx00 completico.
Pues muchas gracias !!!

Ya tengo que estudiar en el tren... -thumbup
Buscando la IP de la W.O.P.R. he encontrado mi índice
Avatar de Usuario
nvarona
Mensajes: 137
Registrado: 22 Ene 2024 20:32
Ubicación: Navarra

Re: CPU de 1 bit, la menos potente del mundo

Mensaje por nvarona »

mvalder escribió: 13 Sep 2024 02:27 Por fin recibí ayer las dos plaquitas nuevas y he podido probar hoy con el programa de demostración de @cacharreo y el montaje del vídeo.

He usado un Arduino Uno y funciona sin modificaciones. Lo único que he añadido es una opción de depuración para ver por la consola lo que está haciendo.

Desgraciadamente, no me deja pegar el código, porque da el famoso mensaje
Forbidden

You don't have permission to access this resource.
Sí me ha permitido adjuntar un zip, por si le sirve a alguien. He dejado el listado con el programa 3 seleccionado, que es el más variado.
Cacharreo-mvalder.zip

Ahí se ve la salida cuando se hace RESET en la placa del Arduino.
.
ArduinoIDE-1-bitCPU.png

¡Muchas gracias por toda la diversión, @cacharreo!

Edito: Como se ve en el vídeo,
  • Es importante que los microinterruptores de la 1-bit CPU estén puestos a cero. De otro modo, podría fundirse algo en la placa o el arduino (gracias por el aviso, @cacharreo).
    La alimentación de la 1-bit CPU se hace desde el mismo arduino.
¿Gracias por compartir, yo he montado mi primer kit de CPU-1bit, y he visto este post y me gustaría saber como conectar un Arduino Uno con este kit?

Y así pruebo este sistema.
mvalder
Mensajes: 1361
Registrado: 21 May 2023 02:04

Re: CPU de 1 bit, la menos potente del mundo

Mensaje por mvalder »

nvarona escribió: 25 Sep 2024 19:22
mvalder escribió: 13 Sep 2024 02:27 Por fin recibí ayer las dos plaquitas nuevas y he podido probar hoy con el programa de demostración de @cacharreo y el montaje del vídeo.

He usado un Arduino Uno y funciona sin modificaciones. Lo único que he añadido es una opción de depuración para ver por la consola lo que está haciendo.

Desgraciadamente, no me deja pegar el código, porque da el famoso mensaje
Forbidden

You don't have permission to access this resource.
Sí me ha permitido adjuntar un zip, por si le sirve a alguien. He dejado el listado con el programa 3 seleccionado, que es el más variado.
Cacharreo-mvalder.zip

Ahí se ve la salida cuando se hace RESET en la placa del Arduino.
.
ArduinoIDE-1-bitCPU.png

¡Muchas gracias por toda la diversión, @cacharreo!

Edito: Como se ve en el vídeo,
  • Es importante que los microinterruptores de la 1-bit CPU estén puestos a cero. De otro modo, podría fundirse algo en la placa o el arduino (gracias por el aviso, @cacharreo).
    La alimentación de la 1-bit CPU se hace desde el mismo arduino.
¿Gracias por compartir, yo he montado mi primer kit de CPU-1bit, y he visto este post y me gustaría saber como conectar un Arduino Uno con este kit?

Y así pruebo este sistema.
Cada aplicación (como es natural) define qué entradas y salidas va a usar y establece las conexiones. En el programa demo de @cacharreo al que añadí los mensajes de depuración, están las patillas que se han usado en este caso.

Sigue sin poderse poner el código completo en RW, pero sí me ha dejado copiar la parte de definiciones de las patillas:

Código: Seleccionar todo

#define CLK_PIN                                      7    // CLK digital pin (PD7)
#define RST_PIN                                      6    // /RST digital pin (PD6)
#define IMSB_PIN                                     5    // /IMSB digital pin (PD5)
#define ILSB_PIN                                     4    // /ILSB digital pin (PD4)
  • O sea, cuatro cables van de las GPIO digitales del arduino 4-7 a las entradas de la 1-bit CPU. CLK y RST están arriba, en el conector INPUT; y la entrada del progama (IMSB/ILSB), en el lateral.
    Por otra parte, el arduino se conecta al PC con su cable USB, para poder ver mensajes por la consola del arduino IDE.
    La 1-bit CPU se alimenta del arduino, con dos cables que unen -respectivamente- VCC (en INPUT de la 1-bit CPU) con 5V (del arduino) y GND con GND. Arduino tiene varios puntos donde conectar GND, da igua el que elijas.
Es decir, necesitarás 6 cables Dupont macho-macho para hacer las conexiones entre la 1-bit CPU y el arduino.

Recuerda que los microinterruptores de la 1-bit CPU deben estar en 0 y la selección del reloj (CLK MODE) en EXT.

Suerte y ya contarás.
Avatar de Usuario
cacharreo
Mensajes: 2104
Registrado: 03 Jun 2023 09:37
Ubicación: /home/cacharreo/

Re: CPU de 1 bit, la menos potente del mundo

Mensaje por cacharreo »

nvarona escribió: 25 Sep 2024 19:22yo he montado mi primer kit de CPU-1bit,
Recomendaría probar cada 1-bit CPU de forma independiente antes de conectarlo a cualquier otra cosa, sea otra 1-bit CPU o un Arduino.

Es también recomendable trastear un tiempo con la 1-bit CPU cambiando instrucciones y comprendiendo el efecto que tienen, antes de pasar a otras cosas.
nvarona escribió: 25 Sep 2024 19:22he visto este post y me gustaría saber como conectar un Arduino Uno con este kit
Como bien dice @mvalder, como se quiera en función del código que vaya a programarse en el Uno.

Si quieres un ejemplo, puedes usar el código fuente de la demostración mostrado en la página del propio proyecto. Encontrarás primero un vídeo en el que se ve funcionando esta demo, después la tabla de conexiones de pines entre la 1-bit CPU y el microcontrolador o placa de desarrollo y después el código fuente de la demo.

De nuevo, es importante que los microinterruptores (conmutadores DIP) de la 1-bit CPU estén puestos a cero, es decir, cerca del borde inferior de la placa de la 1-bit CPU, siempre que se vayan a conectar los pines del bus de instrucciones (iBUS) a cualquier otro dispositivo.
© cacharreo
mvalder
Mensajes: 1361
Registrado: 21 May 2023 02:04

Re: CPU de 1 bit, la menos potente del mundo

Mensaje por mvalder »

Aquí tenemos un programa chapucero para estimar la frecuencia de la 1-bit CPU conectada a un Arduino.
.
1-bit-CPU-ArduinoClock.jpg
1-bit-CPU-ArduinoClock.jpg (24 KiB) Visto 134 veces
Vídeo: https://mega.nz/file/I61hEbqK#1bm5wR8IL ... QLBPwTIj5I

Está añadido a la demo de @cacharreo, como programa nº 4. Debería haber hecho algo separado más claro, pero así -al menos- la considerable biblioteca de programas que hemos acumulado para la 1-bit CPU está unificada, je, je.

De nuevo, no puedo pegar el código, pero sí el uso de los GPIOs:

Código: Seleccionar todo

// defines used in programs 1-4
#define CLK_PIN 7   // CLK digital pin (PD7)
#define RST_PIN 6   // /RST digital pin (PD6)
// defines used in programs 1-3
#define IMSB_PIN 5  // /IMSB digital pin (PD5) 
#define ILSB_PIN 4  // /ILSB digital pin (PD4) 
// for program 4
#define A_PIN 5   // /A register in prog. 4
#define PC_PIN 4  // /PC in prog. 4
Para el programa 4 (clock): El pin digital 6 del Arduino va al INPUT de la 1-bit CPU (RST) y los 4, 5 y 7 al OUTPUT.
(prog. 1-3: todos al INPUT.)

El código está aquí:
Cacharreo-mvalder-clock.zip
(2.14 KiB) Descargado 3 veces
Comentarios:
- La detección del ciclo se hace con la rampa de subida de CLK de 0 a 1, simplemente mirando dos lecturas consecutivas. No se intenta gestionar ningún posible rebote en la lectura.
- El período resultante ( y la frecuencia, claro) oscilan ligeramente
- Con DEBUG_OPT == 0 (como se ve en el vídeo) se pasan los datos mínimos al terminal: Estado de CLK y frecuencia resultante.
- Con DEBUG_OPT == 1 se imprimen muchas más cosas: mensajes y además el PC, Acumulador, el tiempo en milisegundos, el tiempo en que hubo la última rampa de 0 a 1 del CLK y el período del ciclo anterior.
- La velocidad de la conexión del puerto serie y la cantidad de información que se imprime influyen en el resultado, concretamente en la oscilación de la frecuencia y el máximo que se llega a medir cuando se lleva el potenciómetro al máximo.
- Con 38400 bps se llega a unos 100 Hz con DEBUG_ OPT == 0. Con esa opción en 1, no se pasa de 20 Hz. Ese bitrate permite que se detecten los ciclos y los gráficos se vean pasar bien en el plotter. Con 115200 bps se detectan frecuencias algo mayores (oscilando mucho), pero es menos visual en el plotter. La velocidad se cambia arriba, en el macro SERIAL_BPS.

Seguro que quien programe medio regular (y sepa más de Arduino) consigue lecturas mejores, pero -como prueba de concepto- esto es un logro de la 1-bit CPU, ja, ja, ja.

Edito:
Pongo bien cómo se conectan los pines para el programa 4.
mvalder
Mensajes: 1361
Registrado: 21 May 2023 02:04

Re: CPU de 1 bit, la menos potente del mundo

Mensaje por mvalder »

mvalder escribió: 28 Sep 2024 02:49 Aquí tenemos un programa chapucero para estimar la frecuencia de la 1-bit CPU conectada a un Arduino.
...
Esta es la foto del montaje.
.
1-bit-CPU-ArduinoClockConnect.jpg
1-bit-CPU-ArduinoClockConnect.jpg (198.05 KiB) Visto 131 veces
En el breadboard se ven unos condensadores "de lenteja" que se me ocurrió probar. Resulta que si abres el puerto serie a 9600 bps, la
detección de los ciclos es muy irregular, con mucha oscilación. Pensé que quizás podría filtrar la señal y el resultado (seguramente obvio para quien sepa electrónica) fue que no detectaba prácticamente ningún ciclo [puesto que los conecté en serie], ja, ja, ja. La solución era tener más bps e imprimir menos cosas.

Quede ahí la foto para que no se me olvide [ya me vale].

Edito:
Me doy cuenta ahora de que antes conecté los condensadores en serie.
Resulta que- mirando por ahí- google me recuerda que los condensadores en serie se usan para filtrar las señales de baja frecuecia, precisamente lo que tiene la señal del CLK a 1 Hz. Normal que no detectase ciclos.

Si los conecto en paralelo, prácticamente no hacen nada y permiten detectar lo mismo que antes, con oscilaciones de frecuencia. Resulta también que el condensador en paralelo o es un filtro de alta frecuencia, por eso me sonaba que se ponen en la alimentación de los chips.

La foto la guardo, para que no se me olvide la clase de electrónica que me ha dado la 1-bit CPU, ja, ja, ja.
Avatar de Usuario
cacharreo
Mensajes: 2104
Registrado: 03 Jun 2023 09:37
Ubicación: /home/cacharreo/

Re: CPU de 1 bit, la menos potente del mundo

Mensaje por cacharreo »

Genial, @mvalder. En cuanto tenga un rato me voy a poner con algo parecido que se me ha pasado por la cabeza.
© cacharreo
Avatar de Usuario
cacharreo
Mensajes: 2104
Registrado: 03 Jun 2023 09:37
Ubicación: /home/cacharreo/

Re: CPU de 1 bit, la menos potente del mundo

Mensaje por cacharreo »

Añadida una segunda demo con un contador de frecuencia para realizar medidas sobre la 1-bit CPU 0.00.

Su uso es realmente simple, se sube el código a un Arduino Uno o Nano y se conecta su pin digital 8 a uno de los pines del bus de salida de la 1-bit CPU como, por ejemplo, A ó CLK, y en la pantalla del terminal serie se mostrará la frecuencia de la señal.
© cacharreo
Responder

Volver a “No Catalogados”