Matlab-Vhdl

March 20, 2018 | Author: Michael ßermeo | Category: Vhdl, Matlab, Field Programmable Gate Array, Software, Areas Of Computer Science


Comments



Description

1MATLAB - VHDL M. Bermeo, F. Cachago, D. Vallejos, M. Zurita, Escuela Politécnica del Ejército   Resumen — El siguiente documento explica la relación que tiene VHDL y MATLAB® al trabajar unificadamente, describiendo las características de Simulink HDL Coder, de esta manera familiarizar el procedimiento necesario para generar código VHDL utilizando el Software MATLAB® de forma automática. Esto se lo realiza mediante un ejemplo ilustrativo que utiliza la herramienta Simulink Filter Design HDL Coder que genera un código eficiente, sintetizable y portable para la implementación de hardware. Palabras clave— VHDL, MATLAB®, Simulink, HDL Coder, Filter Design, Xilinx, FPGA, filter builder.   Proporciona opciones para compensaciones en zona de velocidad frente a la arquitectura y la exploración, incluyendo la aritmética distribuida. Genera VHDL y Verilog bancos de prueba para la verificación rápida y validación de código generado por un filtro HDL. Genera simulación y síntesis de secuencias de comandos. Además Simulink genera directamente el archivo de configuración FPGA (.bit) ya que utiliza un flujo de diseño integrado a éste. I. INTRODUCCIÓN El avance tecnológico y la creciente complejidad de los circuitos electrónicos digitales han hecho que los diseñadores de circuitos necesiten descripciones de alto nivel de la lógica digital, es decir, que no dependa de nada, así como lo es HDL. Al utilizar HDL facilita mucho construir un hardware utilizando software es decir co-simula en hardware lo que se simula en software, la ventaja al usar esto es la implementación de toda la estructura por software y genera el hardware deseado. Se realiza esto con la ayuda de MATLAB®, es un software de alto nivel que permite varios tipos de simulaciones, un ejemplo es el diseño de filtros en el caso de la electrónica. El uso de estos en la vida real es indispensable debido a que en base a eso la información se puede transmitir de manera clara, precisa y concisa, tanto en medios analógicos como digitales, pero es necesario implementar hardware que garanticen esto. MATLAB® es compatible con VHDL por lo es posible que un programa realizado con el System Generator o Simulink sea generado para el lenguaje de VHDL, de esta manera se facilita el entorno de trabajo ya que se automatiza con las herramientas que brinda MATLAB®. II. DESARROLLO DEL ARTÍCULO A. Características de Simulink Filter Design HDL Coder   Genera sintetizable IEEE 1076 compatible con código VHDL y código IEEE 1364-2001 compatible con Verilog para la implementación de filtros de punto fijo en ASCIs y FPGAs. Controla el contenido, optimización y el estilo de código generado. INTEGRA PROVEE • MATLAB®, Simulink • HDL síntesis • Librerías de DSP • Herramientas de implementación para FPGA • Simulación en doble precisión y punto fijo • Bloques de distitnas funciones implementables en FPGA • Generación de archivos VHDL • Simulación • IP cores (48 hasta ahora) Fig. 1. Flujo de diseño integrado a Simulink B. Generación de código VHDL con MATLAB® MATLAB® es un software con lenguaje de programación matemático, el cual es muy utilizado, por ello cuenta con herramientas que permiten realizar un programa en este software y transformarlo a otros lenguajes, facilitando así la generación de código VHDL por ejemplo, para así poder desarrollar algoritmos para trabajar con FPGAs. La herramienta Simulink HDL Coder es de uso muy intuitivo, pero para un correcto uso es necesario conocer sobre programación de FPGAs y software de Xilinx como lo es ISE Design Suite. HDL Coder permite convertir automáticamente código MATLAB de punto flotante a de punto fijo y genera VDHL sintetizable y código Verilog, esta característica hace que se puedan desarrollar aplicaciones en un lenguaje de alto nivel para luego transformarlo a código HDL para su implementación en software, además mediante configuraciones se puede optimizar el uso de recursos en el momento de la implementación. 6. Ventana “Lowpass Design” En el workspace de MATLAB® ingresar el comando filterbuilder.m Herramienta HDL CODER Software de Xilinx ISE Design Suite Código con Extensión . Respuesta del filtro diseñado En la barra de menús se selecciona “Code Generation” y se da clic en “Generate HDL…” . Generación de código VHDL C. 3. Parámetros a configurar:  Fs = 11000 Hz.2 Código en MATLAB®. Extensión . Fig.  Banda de paso: 0 a 1700 Hz  Banda eliminada: 3000 a 5000 Hz  Atenuación en frecuencias bajas = 3 dB  Atenuación en frecuencias altas = 50 dB Fig. Se da clic y luego se verifica la información del filtro. 5. 4) y se escoge el tipo de filtro Fig.VHD Tarjeta FPGA Fig. 7. 4. Se puede hacer el diseño de filtros de distintas formas como las siguientes a continuación: Fig. 2. Ventana “Response Selection” de MATLAB® Se selecciona “Lowpass” y luego se despliega la ventana en la cual se configuran los valores para el filtro a diseñar Fig. Comando en workspace de MATLAB® Luego se da clic en “View Filter Response” Despliega la pantalla (Fig. Se puede diseñar filtros y generar código VHDL. Ejemplos Filter Design HDL Coder Filter Design HDL Coder es una herramienta desarrollada por MATLAB® que permite la implementación de Hardware generando código VHDL. Botón para diseñar el filtro pasabajo. Ventana del diseño de filtro pasabajo para generar código VHDL. es importante colocar el bloque System Generator. Fig. Se verifica en la ruta indicada anteriormente si se generaron los siguientes archivos . Ventana para generar el código VHDL. Fig. Verificación del código VHDL generado. se da un nombre y se elige una dirección en la cual se van a guardar los archivos generados por este método. Se elige el lenguaje a generar. 10. A continuación se mostrará que archivos deben añadirse Fig. D. Fig. 9. Una vez configurado los parámetros antes mencionados se da clic en “Generate” y se revisa el workspace para verificar si se creó correctamente el código VHDL. 8. Ejemplos empleando Simulink HDL coder Lo primero que se debe hacer es abrir Simulink en el Matlab y dentro de los paquetes de Simulink se escoge el paquete Xilinx Blockset en cual posee diversos bloques para trabajar con Xilinx en Matlab. 11.3 Y se procede a generar un proyecto en ISE Design Suite. Después se procede abrir un nuevo modelo en el que se colocaran los bloques mencionados. Ventana para añadir los archivos generados Y finalmente se chequea la sintaxis para generar correctamente los archivos para cargar a la tarjeta. A continuación se presiona Generate con lo cual se generara el respectivo código VHDL.4 En el new model realizamos la configuración de los bloques para la aplicación que se desee realizar. a utilizarse en las tarjetas. Una vez que se haya verificado los pasos anteriores se procede a abrir el bloque System Generetor y se configura los parámetros de acuerdo a la FPGA a utilizarse. . Se configura el número de bits en las entradas y salidas. 5 Una vez seleccionado y abierto el programa. De esta forma al ejecutar el programa y especificando el tipo de FPGA a utilizar se generará el código en VHDL. resultó más sencilla la programación ya que su entorno facilita mediante diagrama de bloques el desarrollo de la misma. Se sugiere que al utilizar Filter Design Coder se diseñe que filtro se desea utilizar ya que según el tipo se deben usar diferentes comandos por lo que podría darse resultados no deseados. y después Xilinx. Al momento de generar el código HDL desde MATLAB. Se concluye que la herramienta Filter Design Coder de MATLAB diseña cualquier tipo de filtro de forma más eficiente y óptima debido a que solo se necesita especificar ciertos parámetros como frecuencias de corte. Se comprobó que el software ISE Design de Xilinx sirve para verificar que el código generado por MATLAB es el correcto mediante el chequeo de la sintaxis. III. se utilizará la siguiente función: 𝑓 =𝐴∗𝐵∗𝐶∗𝐷    Es necesario tomar en cuenta que se necesita siempre ejecutar el System Henerator para iniciar Matlab el cual nos direccionará automáticamente a simulink. y se elegirá la opción Browse de esta forma se guardará en una carpeta diferente el código de VHD de ISE DESIGN Se concluye que la generación de código VHDL desde MATLAB usando HDL Coder es la más óptima para implementar en un hardware ya que entrega el mejor algoritmo posible. etc para su implementación y generación de código VHDL. también soportan el desarrollo de aplicaciones de alta integridad.VHDL con la herramienta SIMULINK de MATLAB. en el cual se eligirá la opción generate blocks. (OPCIONAL) Una vez configurada la FPGA se puede especificar la carpeta en donde se desea crear el VHDL. por lo que no estará limitado solo a software. CONCLUSIONES     E. Se verificó que al usar MATLAB y sus herramientas como Simulink. El trabajar con MATLAB y generación de código VHDL permite no solo tener simulaciones en software sino que también se las puede tener en hardware. IV. se verifica la sintaxis del programa en ISE DESIGN Luego se abre el archivo generado en ISE el cual posee el mismo nombre que el nombre del New Model de simulink. en Target Directory. Ejecución del Programa Para poder generar un archivo . dado que System Generator necesita de MATLAB 2012a para poder configurarse. de paso. se producen errores si la carpeta donde se compilará en MATLAB es distinta a la carpeta en donde se crearon las funciones. atenuaciones. Los diseños realizados con Simulink y el código HDL generado por este. además de comprender de mejor manera. . RECOMENDACIONES   Se recomienda instalar primero MATLAB 2012a. http://www.com/products/datasheets/pdf/hdl-coder.pdf. nació el 16 de Marzo de 1986 en la ciudad de Otavalo. Digital II. .mathworks. Marco Antonio Zurita nació en Machala. 14 de marzo de 1995. Imbabura. Ecuador.html#generating-hdl-code Extraido el 25 Diciembre del 2015 Mathworks.PDF. Extraido el 24 Diciembre del 2015 Mathworks.”. Diseño Digital. Morris Mano M. programador en Java de la Escuela Politécnica Nacional con suficiencia en inglés e italiano. Al momento de generar código VHDL mediante Filter Design HDL Coder se recomienda modificar el tamaño de las entradas y salidas del filtro. El ORO. David Alejandro Vallejos Brito.htmlExtraido el 24 Diciembre del 2015 Mathworks. http://www.6   En caso de trabajar con el sistema operativo Windows 8 es necesario instalar una máquina virtual debido a que el software ISE Design Suite no es compatible con este sistema operativo. (2008). en sexto semestre de la carrera de Ingeniería Electrónica en Automatización y Control.jimenez/DIGITAL_II/dig2_i. Se graduó en Colegio San Gabriel en el año 2011 de bachiller físico matemático y actualmente estudia ingeniería Electrónica en Automatización y Control en la Universidad de las Fuerzas Armadas ESPE. Actualmente se encuentra cursando en la Universidad de las Fuerzas Armadas ESPE. REFERENCIAS [1] [2] [3] [4] [5] [6] [7] [8] A. Delmas S. 2015 HDL Coder https://www. Palazzesi. Mathworks. Introducción a circuitos secuenciales.edu. Sus estudios primarios lo realizó en la Escuela Particular Maristas “PIO XII” y sus estudios secundarios los realizó en el Colegio Particular Maristas “PIO XII”. V. Pichincha. BIOGRAFÍAS Michael Alonso Bermeo Ramón nació en Quito.upnfm.mathworks. 18 de marzo de 1992. 2015 HDL Coder http://www. Secuential Cell Design. Raúl Jiménez. Ecuador. Se graduó en el Colegio Militar Héroes del 41 en el año 2007 de bachiller físico matemático y actualmente estudia ingeniería Electrónica en Automatización y Control en la Universidad de las Fuerzas Armadas ESPE. 03 de abril de 1990. Sus estudios primarios los realizó en el “Instituto Inocencio Jácome”.aldec. Desarrollo de Sistemas de automatización y Control.Basics of CMOS Cell Design. Sus estudios superiores los realizó en la “Escuela de Formación de Tecnólogos” perteneciente a la Escuela Politécnica Nacional y en la Escuela Superior Militar de Aviación “Cosme Rennella B.es/raul. Francis Andrés Cachago Tandazo nació en Santo Domingo.mathworks.uhu. http://www.com/videos/using-matlab-simulink-and-isedesign-suite-to-develop-dsp-applications-on-xilinx-fpga-based-systems81700. Ecuador. (2003). estuvo en el cuadro de honor tanto en su escuela como colegio. Pearson Education.com/en/support/resources/documentation/articles/990 Extraido el 25 Diciembre del 2015 VI. (2007). y los secundarios en el “Instituto Tecnológico Superior Otavalo”. graduándose como Bachiller Técnico en Electrónica. 2015 Verilog. en la cual se graduó como Licenciado en Administración Aeronáutica Militar.pdf.com/products/hdlcoder/features.hn/bibliod/images/stories/xxtindustrial/libros%2 0de%20electricidad/electronica%201y%202/Compuertas_Logicas. Ecuador. Extraído el día 15 de Diciembre del 2015 desde fuente. Extraído el 20 de Diciembre de 2015. Santo Domingo de los Tsáchilas. Desarrollador de aplicaciones en C – Microchip. Se graduó en el año 2012 de bachiller físico matemático y actualmente estudia ingeniería Electrónica en Automatización y Control en la Universidad de las Fuerzas Armadas ESPE. pdf. México Sicard E.Duchén G. 2015 HDL Coder http://www.
Copyright © 2024 DOKUMEN.SITE Inc.