You are on page 1of 3

MATLAB - VHDL

J. Lpez1, E. Muoz2, I. Obando3, T. Villacrs4

Universidad de las Fuerzas Armadas ESPE


Departamento de Elctrica y Electrnica

1. jplpezm@espe.edu.ec
2. ejmunoz@espe.edu.ec
3. diobando@espe.edu.ec
4. tvillacres@espe.edu.ec

Abstract En el presente artculo se describe el uso y proceso inmediatamente el mejor algoritmo para la implementacin del
en Matlab para la generacin de cdigo VHDL adems de su hardware.
enlace con Xlinx para aplicaciones en tarjetas FPGA. El proceso HDL Verifier ahora soporta la verificacin HIL para
de generacin de cdigo VHDL ser tambin realizado con un FPGAs para placas de FPGAs de Altera y Xilinx. HDL
ejemplo ilustrativo el cual tendr como finalidad ser cargado en Verifier proporciona interfaces de cosimulacin que enlazan
una tarjeta FPGA.
MATLAB y Simulink con simuladores HDL tales como
Cadence Incisive, Mentor Graphics ModelSim y Questa. Con
Palabras clave FPGA, VHDL, Xlinx, Matlab.
estas capacidades, los ingenieros pueden verificar con rapidez
si su implementacin HDL coincide con los algoritmos de
I. INTRODUCCION
MATLAB y las especificaciones de sistema de Simulink.

VHDL surge a principios de los '80 de un proyecto DARPA


(Departamento de Defensa de los EE.UU.) llamado VHSIC II. DESARROLLO
Very High Speed Integrated Circuits
VHDL aparece como una manera de describir circuitos
integrados A. Caractersticas Simulink VHDL
La crisis del ciclo de vida del HW: cada da los circuitos
Simulink es un entorno grafico para la simulacin y
integrados eran ms complicados, y el coste de reponerlos
el diseo basado en modelos numricos de sistemas
cada vez era mayor, porque no estaban correctamente
dinmicos embebidos.
documentados. VHDL naci como una manera estndar de
HDL Coder genera cdigo VHDL porttil y
documentar los circuitos Al mismo tiempo, se vio que la
sintetizable a partir de funciones de Matlab y
expresividad de VHDL permitira reducir el tiempo de diseo
modelos de Simulink.
de los circuitos, porque se podran crear directamente de su
descripcin: utilidad de la sntesis HDL Coder con Simulink ofrece la integracin con
En 1987 el trabajo fue cedido al IEEE, y a partir de ese Xilinx ISE Design.
momento es un estndar abierto. Al integrarse con Xlinx permite el uso de System
HDL Coder genera automticamente cdigo HDL desde generator, los bloques de Xlinx Blosckset se pueden
MATLAB y permite a los ingenieros implementar diseos conectar con elementos de Simulink.
sobre FPGAs y ASICs mediante el lenguaje de MATLAB,
ampliamente utilizado. MathWorks tambin ha presentado B. Procedimiento para generar cdigo VHDL con Matlab.
HDL Verifier, que incluye capacidades HIL (hardware-in-the-
loop) para FPGAs que pueden utilizarse con objeto de realizar
pruebas de diseos sobre FPGAs y ASICs.
Con estos dos productos, MathWorks ahora proporciona
generacin y verificacin de cdigo HDL mediante MATLAB
y Simulink.
HDL Coder genera cdigo VHDL y Verilog porttil y
sintetizable a partir de funciones de MATLAB y modelos de
Simulink que se pueden emplear para la programacin de
FPGAs o la creacin de prototipos y diseos de ASICs. Como
resultado, los equipos de ingenieros ahora pueden identificar
Matlab
Simulink

Herramient
a
HDL CODER

Cdigo con
Extensin
.VHD

Software de Xilinx
ISE Design Suite

Tarjeta
FPGA
Fig. 3. Codificacin para fixed point signed

D. Desarrollo del ejemplo


Fig. 8: Proceso generacin de cdigo VHDL a partir de Matlab

Abrir Simulink y dentro de los paquetes escoger


Xilinx Blockset, en donde hay diversos bloques
para trabajar con Xilinx en Matlab.
En un nuevo proyecto colocar el bloque System
Generator.
Realizar la configuracin de bloques deseada.
Configurar el nmero de bits en entradas y salidas.
Fig. 4. Diagrama de bloques del ejemplo desarrollado
Abrir System Generator y se configura la FPGA a
utilizarse.
Click en Generate para generar el respectivo cdigo
1) Entradas de la funcin
VHDL.
Abrir el archivo generado con ISE. Las entradas para la operacin matemtica a desarrollar son
representadas por bloques de constantes en simulink y se
configuran como fixed point.
C. Ejemplo planteado
2) Sumador y acoplamiento con bloques de simulink
El ejemplo desarrollado e implementado consiste en un
sumador de nmeros decimales, esto se puede lograr con la De la librera Blockset se puede obtener directamente un
opcin fixed point que es un tipo de dato que se puede elegir sumador y se acopla con los elementos Gateway in a los
al momento de configurar las entradas en Matlab. bloques de simulink.
Las entradas sern dos nmeros de 4 bits cada uno y la
salida ser igualmente un numero de 4 bits. 3) Visualizacin del resultado
La codificacin de los nmeros para la opcin fixed point
signed es como se muestra en la siguiente figura: Para ver el resultado de la suma realizada es factible utilizar
un bloque de simulink el cual se acopla a la salida del
sumador con un elemento Gateway out.
E. Diseo de diagramas de transistores en DSCH
III. CONCLUSIONES
El uso de una herramienta como Simulink a modo de
auxiliar para desarrollar algoritmos representa una
manera ms amigable para generar cdigo VHDL.
Al configurar las entradas con la opcin fixed point
en Matlab se est trabajando con nmeros decimales
por lo que el nmero ingresado va a tener otro tipo de
codificacin para su interpretacin.
Existe dos tipos de dato fixed point, unsigned y
signed, para la opcin de unsigned el nmero
mximo al que se va a llegar es 7.5 y con signed ir
de -4 hasta 3.5 como valor mximo y mnimo.
El uso de los bloques Gateway permite acoplar los
bloques que proporciona Simulink con los que
incluyen la librera Blockset de ISE.

IV. RECOMEDACIONES

Descargar de la pgina oficial de Xilinx el paquete de


trabajo con Matlab ya que con la descarga
recomendad de Web Pack no se puede enlazar a
Matlab con ISE.
Para ingresar a la herramienta de modelamiento de
Simulink no se debe ingresar directo con Matlab sino
que se debe ingresar desde el men inicio al System
Generator de Xilinx lo cual va a ser que se abra una
ventana de Matlab con las libreras preparadas para
trabajar.
Para enlazar los bloques propios de Simulink con los
del System Generator se debe usar los elementos
Getaway.
Trabajar con el sistema operativo Windows 7 facilita
la instalacin y uso de los paquetes de Xilinx para el
trabajo con Matlab.

V. REFERENCIAS
B. K. V. Prasad, P. S. (2016). Implementation and
Reconfiguration of Basic Digital Modulation and.
International Journal of Applied Engineering
Research .
Jeffrey Caldwell, B. M. (2016). Optimizing Simulation Speed
of FPGA.
Neha Raut, P. G. (2013). FPGA Implementation for Image
Processing Algorithms Using. IOSR Journal of VLSI
and Signal Processing.
Prasit Kumar Bandyopadhyay, A. B. (s.f.).
Rajasekar Selvamuthukumaran, R. G. (2014). Rapid
prototyping of power electronics converters. IET
power electronics.

You might also like