Spelling suggestions: "subject:"microprocesador"" "subject:"microprocessador""
1 |
Programación del Logo 8-23ORCE para una presión de agua constante a 10 Bar mediante un regulador PI controlado la velocidad de la bomba que alimenta a una calderaGaona Huillca, Jesús David 18 November 2018 (has links)
La programación de un PLC se podría considerar un arte digital por donde se puede identificar lo bueno y malo, es decir lo bueno podría considerarse con la obtención de un producto terminado en forma correcta y malo cuando se presentan fallas a la hora de un proceso a plena producción, y justo para este último caso está la programación de PLC que se trata de identificar los errores de un proceso para evitarlos totalmente y así obtener como final un producto a satisfacción del cliente. El micro procesador LOGO está diseñado para realizar el rol de controlador automatizado de varios procesos tantos como su memoria por ejemplo tenemos disponibles en un LOGO 24 entradas digitales, 20 salidas digitales, 8 entradas analógicas, 8 salidas analógicas, convirtiéndolo en un PLC completo capaz de controlar con eficiencia.
|
2 |
Desarrollo de un Microprocesador ARM7Soto 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.
|
3 |
Circuitos embebidos aplicados a equipos médicosGómez Cornejo Campana, David Yusseff January 2011 (has links)
This thesis describes the design guidelines from two medical teams, electrocardiogram and pulse oximetry using embedded logic circuitry such as FPGA and microcontrollers, digital filters used to filter the signals obtained from analog converters to digital, graphic obtaining the data is displayed in a graphic display GLCD, and has an interface to send data to a PC through a port USB 2 at full speed.
The digital filters used are FIR filters, these filters are chosen to be linear and time invariant, developed with 40 coefficients FIR filters, these filters were implemented in the FPGA, use a FPGA that has implemented only 20 multipliers For the implementation we used the VHDL language and algorithmic state machines in order to control the 20 boxes and get the 40 products.
Filtered data in the stage of the FPGA, are taken to a microcontroller that is responsible for managing the data, can lead to a graphic display GLCD, and so we can see the signal and obtained values or you can send the data to a PC right through USB port and software right through it can see the graphics on the PC.
|
4 |
Detección concurrente de errores en el flujo de ejecución de un procesadorRodríguez Ballester, Francisco 02 May 2016 (has links)
[EN] Incorporating error detection mechanisms is a key element in the design of fault tolerant systems. For many of those systems the detection of an error (whether temporary or permanent) triggers a bunch of actions or activation of elements pursuing any of these objectives: continuation of the system operation despite the error, system recovery, system stop into a safe state, etc.
Objectives ultimately intended to improve the characteristics of reliability, security, and availability, among others, of the system in question.
One of these error detection elements is a watchdog processor; it is responsible to monitor the system processor and check that no errors occur during the program execution.
The main drawback of the existing proposals in this regard and that prevents a more widespread use of them is the loss of performance and the increased memory consumption suffered by the monitored system.
In this PhD a new technique to embed signatures is proposed. The technique is called ISIS - Interleaved Signature Instruction Stream - and it embeds the watchdog signatures interspersed with the original program instructions in the memory.
With this technique it is a separate element of the system processor (a watchdog processor as such) who carries out the operations to detect errors.
Although signatures are mixed with program instructions, and unlike previous proposals, the main system processor is not involved neither in the recovery of these signatures from memory nor in the corresponding calculations, reducing the performance loss.
A novel technique is also proposed that enables the watchdog processor verification of the structural integrity of the monitored program checking the jump addresses used. This jump address processing technique comes to largely solve the problem of verifying a jump to a new program area when there are multiple possible valid destinations of the jump. This problem did not have an adequate solution so far, and although the proposal made here can not solve every possible jump scenario it enables the inclusion of a large number of them into the set verifiable jumps.
The theoretical ISIS proposal and its error detection mechanisms are complemented by the contribution of a complete system (processor, watchdog processor, cache memory, etc.) based on ISIS which incorporates the detection mechanisms proposed here. This system has been called HORUS, and is developed in the synthesizable subset of the VHDL language, so it is possible not only to simulate the behavior of the system at the occurrence of a fault and analyze its evolution from it but it is also possible to program a programmable logic device like an FPGA for its inclusion in a real system.
To program the HORUS system in this PhD a modified version of the gcc compiler has been developed which includes the generation of signatures for the watchdog processor as an integral part of the process to create the executable program (compilation, assembly, and link) from a source code written in the C language.
Finally, another work developed in this PhD is the development of FIASCO (Fault Injection Aid Software Components), a set of scripts using the Tcl/Tk language that allow the injection of a fault during the simulation of HORUS in order to study its behavior and its ability to detect subsequent errors. With FIASCO it is possible to perform hundreds or thousands of simulations in a distributed system environment to reduce the time required to collect the data from large-scale injection campaigns.
Results show that a system using the techniques proposed here is able to detect errors during the execution of a program with a minimum loss of performance, and that the penalty in memory consumption when using a watchdog processor is similar to previous proposals. / [ES] La incorporación de mecanismos de detección de errores es un elemento fundamental en el diseño de sistemas tolerantes a fallos en los que, en muchos casos, la detección de un error (ya sea transitorio o permanente) es el punto de partida que desencadena toda una serie de acciones o activación de elementos que persiguen alguno de estos objetivos: la continuación de las operaciones del sistema a pesar del error, la recuperación del mismo, la parada de sus operaciones llevando al sistema a un estado seguro, etc. Objetivos, en definitiva, que pretenden la mejora de las características de fiabilidad, seguridad y disponibilidad, entre otros, del sistema en cuestión.
Uno de estos elementos de detección de errores es un procesador de guardia; su trabajo consiste en monitorizar al procesador del sistema y comprobar que no se producen errores durante la ejecución del programa.
El principal inconveniente de las propuestas existentes a este respecto y que impiden una mayor difusión de su uso es la pérdida de prestaciones y el aumento de consumo de memoria que sufre el sistema monitorizado.
En este trabajo se propone una nueva técnica de empotrado de firmas (ISIS -Interleaved Signature Instruction Stream) intercaladas dentro del espacio de la memoria del programa. Con ella un elemento separado del procesador del sistema realiza las operaciones encaminadas a detectar los errores. A pesar de que las firmas se encuentran mezcladas con las instrucciones del programa que está ejecutando, y a diferencia de las propuestas previas, el procesador principal del sistema no se involucra ni en la recuperación de las firmas ni en las operaciones de cálculo correspondientes, lo que reduce la pérdida de prestaciones.
También se propone una novedosa técnica para que el procesador de guardia pueda verificar la integridad estructural del programa que monitoriza comprobando las direcciones de salto empleadas. Esta técnica de procesado de las direcciones de salto viene a resolver en gran medida el problema de la comprobación de un salto a una nueva zona del programa cuando existen múltiples posibles destinos válidos. Este problema no tenía una solución adecuada hasta el momento, y aunque la propuesta que aquí se hace no consigue resolver todos los posibles escenarios de salto sí permite incorporar un buen números de ellos al conjunto de saltos verificables.
ISIS y sus mecanismos de detección de errores se complementan con la aportación de un sistema completo (procesador, procesador de guardia, memoria caché, etc.) basado en ISIS denominado HORUS. Está desarrollado en lenguaje VHDL sintetizable, de manera que es posible tanto simular el comportamiento del sistema ante la aparición de un fallo y analizar su evolución a partir de éste como programar un dispositivo lógico programable tipo FPGA para su inclusión en un sistema real.
Para programar el sistema HORUS se ha desarrollado una versión modificada del compilador gcc que incluye la generación de las firmas de referencia para el procesador de guardia como parte del proceso de creación del programa ejecutable a partir de código fuente escrito en lenguaje C.
Finalmente, otro trabajo desarrollado en esta tesis es el desarrollo de FIASCO (Fault Injection Aid Software COmponents), un conjunto de scripts en lenguaje Tcl/Tk que permiten la inyección de un fallo durante la simulación de HORUS con el objetivo de estudiar su comportamiento y su capacidad para detectar los errores subsiguientes. Con FIASCO es posible lanzar cientos o miles de simulaciones en un entorno distribuido para reducir el tiempo necesario para obtener los datos de campañas de inyección a gran escala.
Los resultados demuestran que un sistema que utilice las técnicas que aquí se proponen es capaz de detectar errores durante la ejecución del programa con una mínima pérdida de prestaciones, y que la penalización en el consumo de memoria al usar un procesador de guardia es similar a la de las propu / [CAT] La incorporació de mecanismes de detecció d'errors és un element fonamental en el disseny de sistemes tolerants a fallades. En aquests sistemes la detecció d'un error, tant transitori com permanent, sovint significa l'inici d'una sèrie d'accions o activació d'elements per assolir algun del objectius següents: mantenir les operacions del sistema malgrat l'error, la recuperació del sistema, aturar les operacions situant el sistema en un estat segur, etc.
Aquests objectius pretenen, fonamentalment, millorar les característiques de fiabilitat, seguretat i disponibilitat del sistema.
El processador de guarda és un dels elements emprats per a la detecció d'errors. El seu treball consisteix en monitoritzar el processador del sistema i comprovar que no es produeixen error durant l'execució de les instruccions.
Els principals inconvenients de l'ús del processadors de guarda és la pèrdua de prestacions i l'increment de les necessitats de memòria del sistema que monitoritza, per la qual cossa la seva utilització no està molt generalitzada.
En aquest treball es proposa una nova tècnica de encastat de signatures (ISIS - Interleaved Signature Instruction Stream) intercalant-les en l'espai de memòria del programa. D'aquesta manera és possible que un element extern al processador realitze les operacions dirigides a detectar els errors, i al mateix temps permet que el processador execute el programa original sense tenir que processar les signatures, encara que aquestes es troben barrejades amb les instruccions del programa que s'està executant.
També es proposa en aquest treball una nova tècnica que permet al processador de guarda verificar la integritat estructural del programa en execució. Aquesta verificació permet resoldre el problema de com comprovar que, al executar el processador un salt a una nova zona del programa, el salt es realitza a una de les possibles destinacions que són vàlides. Fins el moment no hi havia una solució adequada per a aquest problema i encara que la tècnica presentada no resol tots el cassos possibles, sí afegeix un bon nombre de salts al conjunt de salts verificables.
Les tècniques presentades es reforcen amb l'aportació d'un sistema complet (processador, processador de guarda, memòria cache, etc.) basat en ISIS i que incorpora els mecanismes de detecció que es proposen en aquest treball. A aquest sistema se li ha donat el nom de HORUS, i està desenvolupat en llenguatge VHDL sintetitzable, la qual cosa permet no tan sols simular el seu comportament davant la aparició d'un error i analitzar la seva evolució, sinó també programar-lo en un dispositiu FPGA per incloure'l en un sistema real.
Per poder programar el sistema HORUS s'ha desenvolupat una versió modificada del compilador gcc. Aquesta versió del compilador inclou la generació de les signatures de referència per al processador de guarda com part del procés de creació del programa executable (compilació, assemblat i enllaçat) des del codi font en llenguatge C.
Finalment en aquesta tesis s'ha desenvolupat un altre treball anomenat FIASCO (Fault Injection Aid Software COmponents), un conjunt d'scripts en llenguatge Tcl/Tk que permeten injectar fallades durant la simulació del funcionament d'HORUS per estudiar la seua capacitat de detectar els errors i el seu comportament posterior. Amb FIASCO és possible llançar centenars o milers de simulacions en entorns distribuïts per reduir el temps necessari per obtenir les dades d'una campanya d'injecció de fallades de grans proporcions.
Els resultats obtinguts demostren que un sistema que utilitza les tècniques descrites és capaç de detectar errors durant l'execució del programa amb una pèrdua mínima de prestacions, i amb un requeriments de memòria similars als de les propostes anteriors. / Rodríguez Ballester, F. (2016). Detección concurrente de errores en el flujo de ejecución de un procesador [Tesis doctoral no publicada]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/63254 / TESIS
|
Page generated in 0.0669 seconds