viernes, 29 de febrero de 2008

DISEÑO CODIFICADO USANDO EL LENGUAJE VERILOG

Utilizando el lenguaje Verilog y partiendo de las ecuaciones obtenidas de la tabla de la verdad para el Proceso de Automatización de un Múltiple de Crudo desde una macolla de tres pozos hasta un separador de prueba. Se generó el siguiente programa que permite ejecutar las acciones pertinente para el correcto funcionamiento en forma automatizada del múltiple, se empleó el dispositivo XA9536XL-15-VQ44 y la herramienta utilizada para dicho proyecto fue ISE de Xilinx 9.2i.




COMIENZO DEL CODIGO

`timescale 1ns / 1ps
//////////////////////////////////////////////////////////////////////////////////
// Company: Especializacón en Instrumentación y Automatización
// Engineer: Erika Gonzalez y Darbyn Corredor
// Unexpo Vice-Rectorado Puerto Ordaz
//
// Create Date: 21:49:56 02/27/2008
// Design Name: Multiple
// Module Name: Multiple_verilog
// Project Name: Multiple
// Target Devices: XA9536XL-15-VQ44
// Tool versions: ISE de Xilinx 9.2i.
//
// Revision 1.01 - File Created
//
//////////////////////////////////////////////////////////////////////////////////
//Declaración de variables
module Multiple_verilog(HS_101, HS_1011, HS_1012, HS_1013, ZOO_101A, ZOO_102A, ZOO_103A, ZOO_101B, ZOO_102B, ZOO_103B, ZOO_101, ZOO_102);
//Asignación de entradas y salidas para el integrado del CPLD
input HS_101;
input HS_1011;
input HS_1012;
input HS_1013;
output ZOO_101A;
output ZOO_102A;
output ZOO_103A;
output ZOO_101B;
output ZOO_102B;
output ZOO_103B;
output ZOO_101;
output ZOO_102;
//Reservación del registro de memoria para las salidas
reg ZOO_101A;
reg ZOO_102A;
reg ZOO_103A;
reg ZOO_101B;
reg ZOO_102B;
reg ZOO_103B;
reg ZOO_101;
reg ZOO_102;
//Se ejecuta constantemente la concurrencia dentro del programa para validar cambios de entrada
always @(HS_101 or HS_1011 or HS_1012 or HS_1013)

begin
//Ejecución de las fórmulas que representan el programa
ZOO_101 = HS_101;
ZOO_101A = (HS_101 & HS_1011 & ~HS_1012 & ~HS_1013);
ZOO_101B = ~((HS_101 & HS_1011 & ~HS_1012 & ~HS_1013));
ZOO_102 = HS_101;
ZOO_102A = (HS_101 & ~HS_1011 & HS_1012 & ~HS_1013);
ZOO_102B = ~HS_101;
ZOO_103A = (HS_101 & ~HS_1011 & ~HS_1012 & HS_1013);
ZOO_103B = ((~HS_101) (HS_1011 & HS_1012) (~HS_1011 & ~HS_1012 & ~HS_1013));

end
endmodule

FIN DEL CODIGO
Diagrama de Tiempo


Esquematico generado a partir del codigo


Diagrama de Pines generado a patir del codigo

Análisis y Conclusiones


Después de simular un proceso cualquiera que sea, a través de XILINX, es fácil analizar su comportamiento y resultados por medio de la elaboración del esquemático basado en las ecuaciones definidas a través de la tabla de la verdad del proceso; a su vez es posible proceder a través de la elaboración del código dentro de la misma herramienta basado también en las mismas ecuaciones; con estos dos procesos de rumbos distintos pero basados en las mismas solicitudes es posible generar el mismo resultado de simulación.

Ambos métodos de trabajo son fácilmente utilizables; el esquemático genera un código y el código genera un esquemático; son rutas que comienzan en el mismo punto, toman vías diferentes y llegan al mismo destino al tiempo exacto.

La simulación por XILINX a través del esquemático requiere conocimientos de algebra booleana y simulación; sin embargo para simular a través de XILINX por medio de la creación del código se necesitan conocimientos de algebra booleana y del lenguaje de programación; en nuestro caso de Verilog.

En conclusión, la programación es más dedicada por conocimiento del lenguaje de programación y puede ser sumamente sencilla, aunque se puede hacer tan compleja como el diseño lo requiera y es allí donde es preciso decidir sí la mejor opción es la elaboración del esquemático a través de la misma herramienta; por otro lado cuando la simulación requiere el uso de un gran cantidad de compuertas se pierde el rumbo al utilizar el esquemático por la similitud de los simbolos utilizados, es ahora otro caso donde es requerido analizar cual es la mejor opción para que la simulación sea eaborad por el mejor método.

No hay comentarios:

Powered By Blogger