Raíz Cuadrada en VHDL

#1
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:
#3
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.
 
#4
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:
#5
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
 
#7
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.
 

Temas similares

Arriba