Necesitamos un reloj pseudoaleatorio con una longitud N
, de tal manera que de cada N
de los pulsos de reloj, M
de ellos debe hacerse al azar ( M<<N
). Lo que queremos hacer es muestrear una señal de manera aleatoria. Lo que significa que, de cada N
puntos de muestra (de la cuadrícula de Nyquist) debemos tomar M
muestras. Luego, a través de algunos procesos y supuestos sobre la estructura de la señal, se recuperan otros puntos no muestreados ( N-M
muestras).
Ahora estoy usando registros de desplazamiento lineales, algo como a continuación:
Funciona bien, sin embargo, no quiero una distribución igual para 1s y 0s, quiero decir que quiero que algo como el 20% de los ciclos de reloj sea 1 y el 80% sea cero.
Para lograr eso, hice una salida de AND
de dos circuitos como el de arriba para cambiar la probabilidad de 50% para 1s y ceros a 25% para 1s y 75% para ceros (en la figura siguiente, con diferentes semillas).
Es bueno a costa de duplicar el área de potencia y chip :(. Estoy buscando una manera de hacer que el sistema funcione con solo 1 circuito generador de reloj aleatorio, no dos.
- ¿Es posible a través de la implantación de una distribución de probabilidad de cambio inicial inicial especial de 1s y 0s en la secuencia de salida?
- ¿Hay algún método eficiente en el área de poder para lograr esto?
Estaba pensando en almacenar una secuencia binaria aleatoria (con una longitud de N
) en una ROM y luego And
su salida con el reloj para hacer un reloj aleatorio.