Verilog bit cambiar ubicación

Suponiendo que tengo un registroreg [15:0] my_reg, que contiene un bit de 16firmado muestra:

¿Cómo puedo encontrar el lugar donde se encuentra el primer cambio de bit? Es decir, que si se supone quemy_reg = 16'b0001011011010111, ¿cómo puedo saber que el primer cambio de0 a1 Me sentémy_reg [12]? Lo mismo para los números que comienzan con1, números negativos, p.my_reg = 16'b1111011011010111 estaría interesado en la posición de la primera aparición0 (cual es11 en este caso).

El objetivo final (para agregar un poco de contexto) es implementar un control de ganancia automático (AGC) incorporado digital FPGA.

Respuestas a la pregunta(3)

Su respuesta a la pregunta