• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 4
  • 1
  • Tagged with
  • 5
  • 5
  • 5
  • 3
  • 2
  • 2
  • 2
  • 2
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
1

PSAL : estudio, análisis e implementación de algoritmos de síntesis de alto nivel

Sánchez Espeso, Pablo Pedro 19 April 1991 (has links)
En los últimos años se ha producido un gran avance en el desarrollo de herramientas de diseño asistido por computador (cad) en microelectrónica, motivado en gran medida por la creciente complejidad de los circuitos integrados digitales. Este proceso ha incidido principalmente en la automatización del diseño desde el nivel lógico al layout, mientras que las etapas iniciales (especificación del algoritmo y determinación de la arquitectura) siguen dependiendo del diseñador. En la presente tesis se aborda el estudio, análisis e implementación de herramientas de síntesis de alto nivel, capaces de proponer la arquitectura del sistema digital que mejor implementa el comportamiento descrito a nivel algorítmico al tiempo que satisface una serie de restricciones impuestas por el diseñador. Los sistemas desarrollados, psal1 y psal2, parten de una descripción algorítmica en vhdl o isps y generan una arquitectura que describen en vhdl, cvs, bk o ddl, utilizando los algoritmos de síntesis de alto nivel propuestos en la tesis doctoral, la conexión de estas herramientas con sistemas de síntesis a nivel de transferencia de registros, permite disponer de una metodología de diseño automático desde el nivel algorítmico al layout.
2

Clock gatting for latch based design

Figueroa Álvarez, Joaquín January 2012 (has links)
Ingeniero Civil Electricista / Los circuitos digitales, que juegan un papel crucial en la vida cotidiana, consumen grandes cantidades de potencia lo que es considerado como una situación no deseada, lo que es particularmente cierto para equipos que dependen de baterías como celulares, es por esto que los diseñadores de circuitos así como las herramientas de síntesis utilizan diferentes técnicas con el fin de reducir su consumo de potencia. Una de las técnicas de reducción de potencia mas exitosas es clock-gating cuyo objetivo es reducir el consumo de potencia generado por las transiciones debidas a la señal de clk. La reducción de potencia se logra mediante la inserción de clock-gating cells (celdas de clock-gating) que impiden que la señal de clk llegue a los Flip-Flop cuando el valor de la salida de estos no se espera que cambie. Los diseños basados en Latch, que si bien no son tan utilizados como los diseños basados en Flip-Flop debido a sus complejidades adicionales, todavía son utilizados gracias a ciertos beneficios que presentan las restricciones de timing (timing o sincronización) de los Latch, sin embargo ninguna de las herramientas de síntesis existentes permite la inserción automática de clock-gates para diseños basados en Latches, por lo que los diseñadores de circuitos se ven forzados a insertar las clock-gates de forma manual lo que es ineficiente. El presente trabajo se enfoca en los mecanismos de clock-gating y los requisitos que se deben cumplir para permitir su uso en diseños basados en Latches desde la perspectiva de una herramienta de síntesis, al tiempo que provee de una discusión teórica sobre las diferencias entre Latches y Flip-Flops y como estas diferencias fuerzan los requerimientos de una herramienta de inserción de clock-gates Considerando las restricciones que debieran aplicar para una herramienta de inserción de clock-gates automática enfocada en Latches y utilizando el entorno de desarrollo provisto por Synopsys así como el código existente en la herramienta de síntesis desarrollada por ellos, se desarrolla un prototipo de inserción de clock-gates para Latches como parte de Design-Compiler El prototipo una vez embebido en Design-Compiler es probado en diversos diseños creados con este propósito y un diseño de mayor envergadura provisto por uno de los clientes de Synopsys y que es utilizado durante el desarrollo de circuitos reales, lo cual permite verificar la robustez de la herramienta desarrollada en diseños grandes.
3

Desarrollo de un Microprocesador ARM7

Soto Kort, Patricio Isaías January 2008 (has links)
Este trabajo de título tiene como objetivo generar la capacidad de diseñar circuitos integrados digitales desarrollando un dispositivo electrónico específico: un microprocesador ARM7. Para ésto se utilizaron lenguajes de descripción de hardware que permiten utilizar una metodología top-down, comenzando por un modelo comportamental de alto nivel del circuito hasta obtener un modelo estructural. El microprocesador ARM7 es un exitoso modelo diseñado por ARMTM, que a pesar de no poseer la complejidad de otros procesadores, se destaca por ser el más utilizado en la familia de dispositivos ARM, encontrándose en diversos dispositivos portables como consolas de juegos, teléfonos celulares y reproductores multimedia. Su diseño simple ofrece un alto rendimiento a muy bajo consumo y costo, por lo cual ha sido escogido para desarrollar en este trabajo. El desarrollo contempló la utilización inicial de la herramienta ArchC, la cual permite obtener una descripción de un procesador de manera relativamente sencilla en lenguaje SystemC. Con este modelo diseñado se pudieron realizar pruebas que para verificar el funcionamiento del procesador y así continuar con su descripción en lenguaje Verilog. Este último tiene la capacidad de describir circuitos a bajo nivel y posee la ventaja de encontrarse en un estado más maduro por la cantidad de años que ha sido utilizado por ingenieros. El diseño del microprocesador en Verilog se realizó programando cada módulo que conforma el datapath junto al módulo de control que genera las señales necesarias para ejecutar una instrucción. La programación de estos módulos se realizó considerando las estructuras conocidas por la literatura relacionada al tema y diseñando secciones que no se encontraron documentadas de forma libre. A partir de esta programación se generó un modelo Verilog que combina descripciones comportamentales y estructurales. Antes de realizar la síntesis del microprocesador, cada módulo fue probado de forma individual, asegurando su funcionalidad de forma independiente y luego se realizó una validación global del sistema. Finalmente se realizó la síntesis del dispositivo con el programa Design CompilerTM imponiendo restricciones para obtener un procesador de 20 Mhz. Se comprobó por medio de una nueva verificación que la netlist obtenida es satisfactoria según las especificaciones. En conclusión se obtuvo un microprocesador funcional, con las instrucciones más importantes implementadas. Las pruebas fueron satisfactorias logrando corregir muchos errores a causa de desconocimiento y/o descuido. El objetivo principal se cumplió ya que en el trabajo se debió aprender tanto acerca de sistemas digitales como de lenguajes de descripción de hardware. Estos últimos requieren mucha experiencia en su uso, ya que describen algoritmos de forma paralela y no secuencial como los típicos lenguajes de software a los cuales la mayoría de los ingenieros están acostumbrados. Finalmente queda a disposición el modelo del microprocesador para que pueda ser utilizado con fines académicos y con la posibilidad de completar su funcionalidad y/o ser usado como núcleo de un sistema sobre una FPGA.
4

Fractura de Polígonos Complejos

Jorquera Ahumada, Gastón Ignacio January 2010 (has links)
Uno de los procesos del diseño de circuitos integrados digitales es la preparación de la información de las máscaras, o MDP por sus siglas en inglés (Mask Data Preparation). La preparación de máscaras recibe el diseño de un circuito y lo convierte en una secuencia de instrucciones que son leídas por una máquina generadora de máscaras. Este proceso es realizado por una serie de algoritmos, ordenados en forma de pipeline, donde la salida de uno es la entrada del siguiente. Uno de los primeros algoritmos ejecutado es el llamado Windfrac, encargado de particionar, o fracturar, polígonos complejos en conjuntos de rectángulos y trapecios horizontales (cuyos lados paralelos son horizontales). Esta fractura inicial tiene gran importancia ya que, al reducir los distintos posibles polígonos de entrada a sólo rectángulos y trapecios horizontales, los algoritmos ejecutados después pueden ser simplificados e incluso tomar menos tiempo. En esta memoria se estudia y documenta el funcionamiento del algoritmo Windfrac, y se reimplementa de una forma más legible y mantenible. El estudio del algoritmo, el cual fue el tema central y lo que más tiempo ocupó, contempla la revisión de ciertos conceptos geométricos y de geometría computacional necesarios para la total comprensión de éste. Debido a que sólo existe un paper que explica un algoritmo parecido, toda la información acerca de cómo funciona Windfrac debió ser deducido a partir del código fuente mismo, cuya implementación era muy difícil de leer. El funcionamiento fue descifrado, principalmente, utilizando casos de prueba y depuradores para ir viendo, paso a paso, lo que el algoritmo hacía dado un polígono. Una vez entendido el funcionamiento completo de Windfrac se reimplementó teniendo en cuenta legibilidad, mantenibilidad y ciertos detalles para mejorar la calidad de los resultados. La legibilidad y mantenibilidad se lograron con una implementación modular, es decir, utilizando estructuras de datos más especializadas y separando funcionalidades en archivos y funciones. La mejora de la calidad se logró escribiendo código para manejar esos casos particulares. Finalmente, se realiza una discusión acerca del tema en estudio y sobre posibles mejoras que pueden ser llevadas a cabo en el futuro, las cuales podrían tener un gran impacto en el desempeño de la aplicación completa. Y, se concluye que el algoritmo fue satisfactoriamente comprendido y que su reimplementación soluciona los problemas de la implementación antigua.
5

Flujo de Diseño de Circuitos Integrados Digitales Aplicado al Desarrollo de un Controlador USB 2.0

Díaz Pérez, Daniel Alfonso January 2010 (has links)
El presente trabajo de título tiene como objetivo principal la exposición del flujo de procesos involucrado en el diseño de un circuito integrado digital. Como consecuencia de ésto, se espera poder demostrar y motivar a explorar esta área en Chile, partiendo por el entorno más cercano: el Departamento de Ingeniería Eléctrica de la Facultad de Ciencias Físicas y Matemáticas de la Universidad de Chile. Para conseguir este objetivo, se diseña un controlador USB 2.0 desde la asimilación de su protocolo para el modelamiento de una solución, hasta el esquemático de la disposición física del circuito resultante. El flujo de diseño consiste principalmente en: a partir de una idea, generada por una necesidad del mercado o bien por una razón académica, determinar sus especificaciones eléctricas y dividir sus funcionalidades; caracterizar el circuito utilizando un lenguaje de descripción de hardware, para esta memoria, Verilog HDL; traducir la descripción del circuito a una lista de compuertas lógicas reales interconectadas; y finalmente, utilizando la representación física de cada compuerta y conexiones, producir un plano físico del circuito. El desarrollo del controlador es guiado y facilitado por las herramientas de diseño de Synopsys®. El resultado final es un informe que reúne los principales conceptos comprometidos en cada etapa del diseño, junto con su aplicación al modelamiento de un controlador USB 2.0. Aunque el uso de las herramientas de diseño no es detallado, los pasos realizados para cada proceso están basados en los flujos de diseño específicos de cada una de ellas. Respecto a lo anterior, se entrega como resultado un CD que contiene los módulos Verilog del controlador, la lista de compuertas interconectadas y archivos guión que contienen las principales instrucciones ejecutadas en las herramientas de Synopsys®. USB es un protocolo de comunicación de mediana complejidad que requiere de un equipo de diseñadores para desarrollarlo con profundidad en todos sus aspectos. A su vez, el flujo de diseño de circuitos integrados posee una gran cantidad de conceptos que deben ser manejados para realizar un trabajo de nivel profesional, probablemente con especialistas en cada etapa. Se concluye que el diseño de circuitos integrados, sin considerar la fabricación, es posible de realizar completamente en Chile, considerando la existencia de las herramientas adecuadas y profesionales especializados o con interés en hacerlo.

Page generated in 0.1007 seconds