Está en la página 1de 6

Bitácora practica 8.

Al iniciar la clase, el profesor explico la práctica que se realizaría que consistía en un


comparador, el cual tendría dos entradas, cada una de 4 bits y con las cuales se haría la
comparación de que si la entrada A era menor o igual a la entrada B, en donde la salida S es
de un solo bit, siendo 1 verdadero, y 0 falso. Para la primera parte de la práctica se debía
seguir el mismo procedimiento que con las anteriores, empleando el lenguaje vhdl en nivel
estructurado, y el objetivo de esto era que pudiéramos evidenciar lo complejo que puede
llegar a ser un programa realizado en este nivel, ya que como se tienen 256 posibles
combinaciones, se hace muy tediosa la tarea de realizar la tabla de verdad y por
consiguiente las ecuaciones booleanas que nos permiten darle sentido al código; debido a
esto se empleó el programa Excel para la realización de la tabla de verdad, y un programa
online el cual nos permitió hacer el mapa de karnaugh correspondiente y nos entregó el
código de la salida S en vhdl y verilog (ver anexo). Posteriormente, con la parte analítica
finalizada, se procede a la implementación del código en la aplicación, en donde se
utilizaron dos entradas tipo “bus”, las cuales cuando se realizó el Test Bench, se cambiaba
su valor con diferentes impulsos para poder probar los casos más importantes, y así
comprobar que el código estaba realizando la función que se deseaba, y donde se pudo
observar el diagrama RTL en donde se representan todas las conexiones lógicas que se le
indico a la máquina y se observó la gran complejidad de este (ver figura 1) .
La segunda parte del laboratorio consistía en realizar el mismo comparador, pero ahora con
el lenguaje comportamental, en donde evidentemente fue muy sencillo en comparación con
la versión en lenguaje estructurado, ya que aquí no era necesario realizar la tabla de verdad
con las 256 posibles soluciones para poder realizar la ecuación booleana para la salida S,
sino que simplemente se definía su “comportamiento” mediante un código muy parecido al
paradigma que estamos acostumbrados a usar, que es secuencial, y no como el paradigma
que hemos trabajado siempre en el laboratorio que es paralelo; luego de tener este código se
procede igualmente a realizar el Test Bench para comprobar su funcionamiento, y
observamos el diagrama RTL, en donde se puede apreciar la gran diferencia en
comparación con el anterior diagrama, debido a que es mucho más sencillo y compacto (ver
figura 2).
Conclusiones.
 Aunque en muchos casos es mejor usar el lenguaje estructurado, para poder
ordenarle a la maquina exactamente que conexiones logicas queremos que se
realicen, en otros casos deja de ser optimo este lenguaje por su alta complejidad y
alta demanda de tiempo para realizar las ecuaciones booleanas que le dan sentido al
programa.
 Al comparar los dos diagramas RTL, se pudo observar que si es mucho mas sencilla
la implementacion en el lenguaje comportamental ya que no se especifica una
puertas logicas que se deben emplear entre cada bit de las entradas.
 Se debe tener conocimiento de ambos lenguajes y en que momento emplearlos,
debido a que dependiendo el tipo de problema que se presente puede ser mas
favorable la implementacion en uno que en otro, y optimizar tiempo y recursos.
 Al realizar un estudio entre ambos codigos y sus “delay” en el Dsign Summary, se
observo que ambos tiene exactamente el mismo valor (ver figuras 3 y 4), debido a
que la maquina esta realizando la misma operación pero la diferencia entre ambos
codigos es que en el primero, nosotros somos quienes le indicamos a la maquina las
conexiones que debe hacer, ecambio en el segundo, la maquina se encarga de inferir
dichas conexiones, es decir, hace el trabajo por nosostros.
Figura 1. Diagrama RTL con código en lenguaje estructurado.
Figura 2. Diagrama RTL con código en lenguaje comportamental.
Figura 3. Design Summary del comparador en lenguaje comportamental
Figura 4. Design Summary del comparador en lenguaje estructurado.

También podría gustarte