Raíz Cuadrada en VHDL

Mi pregunta es, como hago un código que NO sea VHDL PROGRAMABLE, utilizando solo las librerias >>
std_logic_1164.all;
std_logic_unsigned.all;

digamos de una manera lógica...
Si pueden darme al menos una idea se los agradecería mucho :cry:
 
Última edición:
Hola, no se entiende ¿a que te refieres con "VHDL PROGRAMABLE"? eso no existe, podrías empezar por consultar un libro de aritmética y ver los diferentes métodos de obtención de raíz cuadrada de un numero.
 
Bueno, si, tienen razón.
Entonces un tipo de circuito combinacional que me permita sacar la raíz sin usar ningún tipo de lógica secuencial.
O sea que no me es permitido usar alguna señal de reloj o algo por el estilo.
 
Última edición por un moderador:
Para numeros de que tamaño?

Si por ejemplo tu parametro de entrada es un numero de 4 bits, una solucion es realizar una tabla de verdad que relacionen cada numero con su raiz:

0 => 0
1 => 1
2 => 1
3 => 1
4 => 2
...
7 => 2
8 => 2
9 => 3

etc.

Habria que ver si queres solucion entera o con varios decimales
 
Ocho bits es una tabla monstruosa. Los resultados posibles son solo 16, de 0 a 15, por lo que quiza hay algun truco para simplificar la tabla... sera cuestion de analizar que caracteristicas binarias tienen las potencias y analizar solamente esos bits.

Por ejemplo si analizo la zona de 4 a 16, el primer numero cuya raiz es 2 tiene el bit 2 encendido, la primera cuya raiz es 3 tiene el bit 3 encendido, para 4 lo mismo (bit 4 encendido), pero a partir de 5 ya se complica.
 
Atrás
Arriba