Diseño de bloques en hardware: recíproco de un número, raíz inversa y su recíproco.
Abstract
Los microcontroladores son circuitos programables capaces de realizar diversas operaciones matemáticas las cuales pueden ser implementadas a base de sumas (multiplicación, resta de números). Sin embargo el número de operaciones basadas en sumas es limitado y por lo tanto ciertas funciones no pueden ser realizadas o implementadas a través de microcontroladores. Operaciones matemáticas tales como evaluación de senos, cosenos, tangentes y sus recíprocos, exponentes, logaritmos y raíces son funciones limitadas que un microcontrolador no puede realizar, ya que la memoria de un microcontrolador puede ser limitada y con ello introducir errores al aproximar el resultado de la operación deseada. Además, un problema de la latencia puede aparecer si se deciden utilizar métodos secuenciales basados en bloques CORDIC (COordinate Rotation Digital Computer). CORDIC es un algoritmo iterativo que permite calcular funciones trigonométricas, el cual se puede implementar en hardware usando sumadores, registros de desplazamientos y LUT's. Por otra parte, métodos basados en almacenamiento de funciones en tablas requieren grandes cantidades de memoria para mantener resoluciones significativas que eviten el impacto por perdida de resolución en la evaluación de las funciones (manejo de punto fijo y cuantificación en el procesador digital de señales).
Ante esta problemática que representa el tener una memoria reducida en un microcontrolador, surge este proyecto que busca proporcionar un bloque basado en hardware que realice operaciones matemáticas avanzadas. Para los casos de este proyecto se recurre a enfocarse únicamente en las operaciones de la raíz de un número, el reciproco de la raíz de un número y el inverso de un número.
Collections
- Licenciatura [2663]