Name | Description |
---|---|
BS (compound module) |
El modulo compuesto BS representa a los nodos que forman la parte inalambrica (estaciones base). Hay 'numBS' modulos BS, de los cuales 'numGW' funcionan de pasarela con la parte óptica. |
//////////////////////////////////////////////////////////////////////////////////////// // PROYECTO FIN DE CARRERA // // TITULO: Diseño e Implementacion de Nuevas Arquitecturas de Acceso Hibridas // // Opticas-wireless // // AUTOR: Ana Emma Lopez Mato // // TUTOR: Noemi Merayo Alvarez // // INGENIERIA TECNICA DE TELECOMUNICACIONES, SISTEMAS DE TELECOMUNICACION // // UNIVERSIDAD DE VALLADOLID // //////////////////////////////////////////////////////////////////////////////////////// package red_wireless; // El modulo compuesto BS representa a los nodos que forman la parte inalambrica (estaciones base). // Hay 'numBS' modulos BS, de los cuales 'numGW' funcionan de pasarela con la parte óptica. module BS { parameters: @display("i=device/antennatower;bgl=3;bgb=298,228"); int numBS; //Numero de estaciones base en la parte inalambrica de la red hibrida int numUser; //Numero de usuarios inalambricos que se conectan a las estaciones base int numGW; //Numero de BSs que actuan de pasarela con la parte optica de la red int numcolas; //Numero de clases de servicio de la parte inalambrica int indice; //Indice de la BS dentro del conjunto total int criterio; //Criterio elegido para implementar un algoritmo de encaminamiento (SPRA, MHRA, DARA) int longitud_media_paquete; //Longitud media de los paquetes generados por los modulos User_traffic[] int conexiones; //Longitud del array physicalBS[] double delta_time; //Tiempo de ciclo para repartir entre los enlaces de salida activos de cada BS double buffer_size; //Tamanyo del buffer de cada BS double tasabinaria; //Capacidad de radio de cada BS double txrate; //Capacidad del enlace optico punto-a-punto con la ONU-pasarela double carga_nodo; //Carga de las fuentes de trafico inalambricas int user_insercionmethod_separatequeue0_priorityqueue1; //Parametro para elegir el metodo de insercion de los paquetes en los modulos BS_queue[] int user_extractionmethod_StrictPQ0_Centralized1; //Parametro para decidir el metodo de extraccion de paquetes de los modulos BS_queue[] int aux; //Parametro auxiliar para incluir los modulos BS como nodos en la instancia de la clase cTopology double posicion; //Numero aleatorio para determinar la distancia entre dos BSs adyacentes en una red cualquiera gates: inout physicalBS[]; //Array de puertas de entrada/salida submodules: bs_table: BS_table { @display("p=34,34"); } bs_queue[conexiones-1]: BS_queue { parameters: @display("i=block/subqueue;p="); numcolas = numcolas; delta_time = delta_time; buffer_size = buffer_size; tasabinaria = tasabinaria; user_extractionmethod_StrictPQ0_Centralized1 = user_extractionmethod_StrictPQ0_Centralized1; } bs_mac: BS_mac { parameters: @display("p=34,121"); delta_time = delta_time; gates: bsmacInOut[conexiones-1]; } bs_rx_tx: BS_rx_tx { @display("p=251,121;i=block/wrxtx"); gates: bsRxTx[conexiones]; queueRxTx[conexiones-1]; } connections allowunconnected: for i=0..conexiones-1 { physicalBS++ <--> bs_rx_tx.bsRxTx++; } for i=0..conexiones-2 { bs_rx_tx.queueRxTx++ <--> bs_queue[i].bsqueueInOut; } for i=0..conexiones-2 { bs_mac.bsmacInOut[i] <--> bs_queue[i].withBsMac; } }