Tesis:
Estudio de la actividad de conmutación de circuitos electrónicos digitales descritos en el nivel de transferencia de registros mediante técnicas probabilísticas. Propuesta de un método de estimación
- Autor: MACHADO SANCHEZ, Felipe
- Título: Estudio de la actividad de conmutación de circuitos electrónicos digitales descritos en el nivel de transferencia de registros mediante técnicas probabilísticas. Propuesta de un método de estimación
- Fecha: 2008
- Materia: Ingeniería electrónica y automática. Electrónica
- Escuela: E.T.S. DE INGENIEROS INDUSTRIALES
- Departamentos: AUTOMATICA, INGENIERIA ELECTRONICA E INFORMATICA INDUSTRIAL
- Acceso electrónico: http://oa.upm.es/1205
- Director/a 1º: TORROJA FUNGAIRIÑO, Yago
- Resumen: Durante las últimas décadas, la progresión de la electrónica digital ha sido extraordinaria. El continuo escalado de las tecnologías ha propiciado sorprendentes incrementos en la frecuencia de reloj y en las densidades de integración de los circuitos integrados. Esto ha implicado unos aumentos espectaculares de la funcionalidad y de las prestaciones de los circuitos. Sin embargo, la miniaturización de las tecnologías ha enfrentado a los diseñadores de circuitos con nuevos problemas, entre los que figura el consumo energético. Como consecuencia, los diseñadores no sólo se enfrentan con el diseño de circuitos de extraordinaria complejidad, sino que además deben considerar una serie de aspectos no relacionados con la funcionalidad, pero que son igualmente necesarios para la viabilidad del producto.
A estas dificultades propias del diseño se suman las exigencias del mercado, en donde la vida útil de los productos se acorta y los retrasos en la salida al mercado de un producto pueden ocasionar graves pérdidas económicas y de imagen.
En este contexto de dificultad, se hace patente la necesidad de metodologías y herramientas de ayuda al diseño. Metodologías y herramientas que faciliten un flujo de diseño continuo, de modo que no haya vueltas a atrás (iteraciones) causadas por el incumplimiento de alguna especificación. En muchas ocasiones, aunque el circuito sea funcionalmente correcto, estas iteraciones deben llevarse a cabo debido a que el circuito no cumple las especificaciones de aspectos importantes, como lo serían el consumo o las prestaciones.
Dentro de las herramientas de ayuda al diseño, los estimadores constituyen un grupo fundamental. Mediante la estimación se pueden anticipar las características finales del circuito, proporcionando al diseñador una información que de otro modo adquiriría en una fase más avanzada del diseño. Esto permite evitar costosas iteraciones en el flujo del diseño, ya que con la información facilitada por el estimador se pueden tomar las decisiones de manera anticipada, evitando continuar por un camino inútil por el que no se cumplirían las especificaciones.
Uno de los principales aspectos de un circuito que se debe de considerar durante el diseño es el consumo energético. Las enormes densidades de integración unidas a las altas frecuencias de reloj producen un altísimo consumo energético por unidad de superficie. Esto acarrea problemas térmicos que amenazan la integridad del dispositivo y hacen necesario el uso de elementos de refrigeración, lo que además disminuye la fiabilidad, aumenta el coste, el tamaño, el peso y el ruido del sistema.
Por otro lado, debido a la gran difusión de equipos móviles, se requieren dispositivos de bajo consumo para aumentar la autonomía y reducir el tamaño y peso de las baterías. El consumo energético es también un parámetro importante para reducir los costes de electricidad y sus consecuencias medioambientales.
Dentro del consumo total de un circuito digital, una parte importante es debida a la actividad de conmutación de los transistores y es aquí donde se enfoca la investigación de esta tesis doctoral: en el estudio de la actividad de conmutación de los diseños digitales. La actividad de conmutación de un circuito no sólo es un parámetro fundamental en el consumo, sino que además puede contribuir al análisis de otras características del circuito, como lo son la testabilidad y la fiabilidad.
El estudio de la actividad de conmutación no resulta fácil ya que no sólo depende del propio circuito, sino que también depende de la secuencia de los valores de las entradas. Para afrontar su análisis existen dos tipos de métodos: dinámicos y estáticos. Los métodos dinámicos son más sencillos de llevar a cabo ya que fundamentalmente se limitan a extraer las estadísticas de actividad de las señales a partir de simulaciones. El mayor inconveniente de estos métodos son los largos tiempos de simulación requeridos, que pueden resultar inviables para circuitos grandes. Es por ello que se han elaborado propuestas para reducir estos tiempos.
Los métodos estáticos, en su mayoría, elaboran modelos probabilísticos para el cálculo de las actividades de las señales. El mayor inconveniente de estos métodos es que para lograr un bajo error en la estimación, la complejidad de los modelos resultantes es elevada. Para circuitos grandes se debe simplificar el modelo para que sea viable.
En esta tesis doctoral se ha optado por el método estático. Las razones que han llevado a esta elección son:
• La tendencia por los métodos estáticos para evitar los largos tiempos de simulación.
• El interés por continuar con la línea de investigación del departamento, aprovechando los recursos y conocimientos generados, y aplicar el método propuesto en otros análisis que contribuyan en la ayuda al diseño electrónico.
Las propuestas de análisis probabilístico de la actividad de conmutación han tenido como objetivo circuitos descritos en el nivel de puertas. La aportación fundamental de esta tesis es subir el análisis desde el nivel de puertas al nivel de transferencia de registros (RTL). Con esto se consiguen varios objetivos:
• Poder realizar la estimación con anterioridad, lo que ayuda a evitar las iteraciones del diseño.
• Reducir la complejidad del análisis debido a que en el nivel RT la información no es tan exhaustiva.
• Aprovechar la información de más alto nivel que no está disponible en el nivel de puertas. Esta información permite simplificar el modelo probabilístico.
Subir el análisis al nivel de abstracción a RTL implica la aparición de nuevas dificultades con respecto al nivel de puertas, así como la oportunidad de aprovechar las ventajas que este nivel presenta. Por otro lado, también existen problemas comunes en ambos niveles, sobre todo teniendo en cuenta que en el nivel RT caben descripciones en puertas. Por tanto, el modelo propuesto no es una sustitución del modelo en puertas, sino que lo abarca y lo amplía.
Debido a estas dificultades y nuevas oportunidades, en esta tesis se formulan una serie de propuestas particulares:
• Como en el nivel RT no existe un modelo de dependencias e influencias tan explícito como en el nivel de puertas, en esta tesis se propone la creación de un modelo en el que se definan las dependencias e influencias de las señales con relación al hardware que se generará, y sobre el que se pueda llevar a cabo los análisis probabilísticos y realizar la propagación de las actividades.
• En la propuesta de esta tesis se emplean los diagramas de decisión binaria (BDD) para el cálculo de las actividades. El tamaño de los BDD depende del orden interno de sus variables. En esta tesis se propone un ordenamiento de los BDD relacionado con la disposición de las señales en la descripción RTL, los operadores implicados y con los índices de las señales agrupadas en vectores. Con este ordenamiento se consigue un tamaño reducido de los BDD que no es posible obtener de manera sencilla desde el nivel de puertas.
• Debido al enorme crecimiento de los BDD con el tamaño y la complejidad de los circuitos, éstos deben de dividirse (particionarse) para poder afrontar el análisis de manera eficiente. Sin embargo, no en todos los circuitos es posible realizar una partición que no conlleve error en el cálculo, por tanto el análisis probabilístico puede resultar inviable. En consecuencia, para circuitos grandes en los que no se pueda realizar esta partición, en esta tesis se propone un método sencillo de dividir el circuito con el que si se cumplen unas serie condiciones planteadas en esta tesis, se logra un error bajo.
• En esta tesis se propone una nueva manera más compacta de representar los BDD de actividad. Dentro de la propuesta se incluyen las operaciones de creación, transformación y manipulación de estos BDD.
Estas propuestas se han integrado en una herramienta informática. Esto ha permitido comprobar de manera práctica su viabilidad y además ha permitido la realización de experimentos con circuitos medianamente grandes que, sin la existencia de esta herramienta, hubiesen sido imposible de llevar a cabo.
La memoria de esta tesis se ha dividido en cinco capítulos. En el primero se expone la importancia de la estimación de la actividad de conmutación. En el segundo capítulo se explican los distintos enfoques para el análisis de la actividad, se definen la terminología y fundamentos matemáticos del método probabilístico, y se detallan las propuestas más significativas dentro del análisis probabilístico. En el tercer capítulo se expone la propuesta de esta tesis doctoral. En el cuarto capítulo se muestran los resultados experimentales. Y para terminar, en el capítulo cinco se elaboran las conclusiones y líneas futuras de esta tesis.
En el capítulo primero se plantea la problemática del diseño de circuitos digitales y se evidencia la necesidad de metodologías y herramientas de ayuda al diseño. En este planteamiento se hace patente el importante papel que juegan los estimadores dentro de metodologías y herramientas de diseño. Además, en este capítulo se explica la importancia del consumo energético de los circuitos digitales y se exponen sus causas. A partir de estas causas se extrae la importancia de la actividad de conmutación y la necesidad de su estimación. En el capítulo también se presentan otras utilidades de la estimación de la actividad.
En el capitulo segundo se exponen los distintos métodos para la estimación de la actividad de conmutación y se fundamenta la elección del método probabilístico. Debido a la terminología específica del método probabilístico, en este capítulo se define esta terminología y se exponen las bases del método. Por último, se analiza el trabajo previo en este campo, situando dentro de este contexto a la propuesta formulada en esta tesis.
En el capítulo tercero se presenta el método propuesto en esta tesis para estimar la actividad de conmutación en el nivel RT. En este capítulo se propone el modelo probabilístico y el conjunto de propuestas particulares que sacan partido de realizar el estudio desde RTL, como son la partición disjunta y el ordenamiento RTL. En este capítulo también se propone una manera más eficiente de representar los BDD de actividad, estableciéndose las operaciones de creación, transformación y manipulación de estos nuevos BDD.
En el capítulo cuarto se muestran los resultados experimentales. Con la herramienta automática que se ha desarrollado se han podido analizar circuitos de mediana complejidad. En este capítulo se describe el método seguido para realizar las pruebas y los resultados obtenidos. Debido a la diversidad de propuestas de esta tesis y a que estas propuestas se pueden aplicar de manera independiente, la exposición de los resultados no es única, habiendo por tanto varios apartados que tratan estas propuestas individualmente y otros que exponen los resultados de manera conjunta.
En el capítulo quinto se elaboran las conclusiones generales de esta tesis doctoral y se sugieren las líneas futuras.
Además, esta tesis contiene cuatro anexos. El primero incluye información adicional sobre los diagramas de decisión binaria (BDD), que son ampliamente utilizados en esta tesis.
El anexo segundo contiene información adicional a la propuesta de esta tesis (capítulo tercero). La información contenida en este anexo no es necesaria para el entendimiento de la propuesta, pero plantea algunos aspectos del método que no se han tratado en el capítulo tercero para evitar su sobrecarga. Además, en este anexo se detallan algunos de los métodos y algoritmos empleados en la implementación de la propuesta. Esto puede ser de utilidad para aquellos que deseen implementar el método propuesto. Por último, en este anexo también se amplían algunos casos teóricos del análisis del error producido por la partición en regiones disjuntas.
En el anexo tercero se amplía la información relativa al modelo generado de los circuitos de pruebas y el análisis del error en estos circuitos debido a las particiones disjuntas propuestas en esta tesis.
En el anexo cuarto se muestra brevemente la implementación del método propuesto en una herramienta informática.
Por último, después de los anexos se incluye un extensa traducción de la tesis al inglés. Los dos primeros capítulos se han resumido en un capítulo llamado "E1: Previous Work". La numeración de la traducción ingles se ha precedido por la letra "E" para distinguirla de los capítulos en español. El resto de capítulos de la tesis se han traducido por completo, sin embargo, los anexos no se han traducido.