¿Cómo calcular el consumo dinámico de energía de un decodificador sin utilizar un simullator?

0

Actualmente estoy trabajando con un circuito que usa un decodificador de línea n-to-2 ^ n. Mi pregunta es, ¿cómo calcular su consumo dinámico total de energía para una entrada determinada? Para calcular la respuesta exacta, mi conjetura es calcular el consumo de energía de cada entrada posible y luego tomar su promedio. Sin embargo, no puedo pasar del primer paso.

Será genial si alguien da un puntero sobre esto.

    
pregunta Virange

1 respuesta

1

Si está trabajando con la lógica CMOS, el tipo más común, el consumo de energía no depende principalmente de cómo se comporta el circuito cuando se encuentra en un estado estable (la entrada y la salida no están cambiando), sino de cómo se comporta cuando cambia de un estado a otro.

Si está trabajando a nivel de PCB, querrá calcular el consumo de corriente del circuito y luego multiplicarlo por el voltaje de operación (Vdd) para obtener la energía.

El consumo de corriente estará dominado por los controladores de salida de la lógica. Cada salida está cargada por una cierta capacitancia. Cada vez que una salida cambia de baja a alta, debe entregar un cargo \ $ Q = CV_ {dd} \ $ a su carga capacitiva. Cada vez que cambia de alta a baja, debe drenar la carga a tierra, pero podemos asumir que se está produciendo una transición de alta a baja algún tiempo después de cada transición de alta a baja.

En los circuitos síncronos, las transiciones de salida pueden ocurrir cada vez que el reloj realiza una transición de baja a alta.

Por lo tanto, el consumo actual de una salida en particular es

$$ I = f _ {\ rm {clk}} p_ {01} Q = f _ {\ rm {clk}} p_ {01} CV_ {dd} $$

donde \ $ f _ {\ rm {clk}} \ $ es la frecuencia de reloj del sistema y \ $ p_ {01} \ $ es la probabilidad de que esa salida realice una transición de 0 a 1 en cualquier ciclo de reloj dado. Solo tiene que agregar esto para todas las salidas en su circuito. Luego multiplica por \ $ V_ {dd} \ $ para obtener poder.

Teniendo en cuenta un decodificador de 3 a 8, deberás prestar especial atención al término \ $ p_ {01} \ $. No es solo 0.25 como podría suponer para algunos tipos de puertas más simples.

Variaciones

Si sus puertas tienen algunas cargas estáticas (como pull-ups o pull-downs resistivos), también deberá considerar su efecto.

Si está trabajando en el nivel de diseño de chip, querrá considerar todas las compuertas dentro del decodificador en lugar de solo las compuertas de salida, ya que las salidas no necesariamente tendrán cargas mucho más grandes que las compuertas internas. / p>     

respondido por el The Photon

Lea otras preguntas en las etiquetas