REALIZADO POR:
RAFAEL CASAÑAS ÁVILA
DIRIGIDO POR:
JOSÉ LUÍS PÉREZ CÓRDOBA
DEPARTAMENTO:
ELECTRÓNICA Y TECNOLOGÍA DE COMPUTADORES
RESUMEN: Con el presente trabajo se trata de tener una visión general de los sistemas
de telefonía celulares y en particular de estándar GSM. Se va a profundizar en la Interfaz
de Radio de GSM fijándonos en las técnicas especiales del procesado de voz, así como
de los sistemas de codificación utilizados en GSM. Finalmente se realizarán algunas
simulaciones con el programa MATLAB, para ver implementadas algunos de los puntos
tratados en el trabajo.
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
INDICE
Página 2
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
2.5.2.- Handover (función de traspaso) ..........................................................
20
2.6.- Roaming (función de seguimiento) ............................................................
22
2.7.- Interferencias y capacidad del sistema .......................................................
23
2.7.1.- Interferencia co-canal y capacidad del sistema .................................. 24
2.7.2.- Interferencia entre canales adyacentes ............................................... 26
2.7.3.- Control de Potencia para reducir las Interferencias ........................... 27
2.8.- División de celdas (cell-splitting) .............................................................. 27
3.- Arquitectura de red en GSM ...................................................................................
29
3.1.- Introducción a la arquitectura de red celular .................................................. 29
3.2.- Organización interna de GSM .........................................................................
31
3.3.- Subsistemas en GSM .......................................................................................
32
3.3.1.- La Estación Móvil (MS) ...........................................................................
32
3.3.2.- El Subsistema de la Estación Base (BSS) ................................................
33
3.3.3.- El Subsistema de Red (NSS) ....................................................................
36
3.3.4.- El Centro de Operaciones y Mantenimiento (OSS) ................................. 39
4.- La Interfaz de Radio ................................................................................................
39
4.1.- Introducción .....................................................................................................
39
4.2.- Acceso a sistemas truncados ............................................................................
40
Página 3
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
4.2.1.- Acceso Múltiple por División en Frecuencia (FDMA) ............................
40
4.2.2.- Acceso Múltiple por División en el Tiempo (TDMA) ............................ 41
4.2.3.- Acceso Múltiple por división del Espacio (SDMA) ................................
42
4.2.4.- Acceso Múltiple por División de la Codificación (CDMA) ..................... 42
4.2.5.- Acceso Múltiple por Saltos de Frecuencia (FHMA) .................................
45
4.2.6.- Operaciones Dúplex ..................................................................................
45
4.2.6.1.- Dúplex por división en Frecuencia (FDD) ........................................
46
4.2.6.2.- Dúplex por División en el Tiempo (TDD) ........................................
46
4.3.- El Canal de Radio .............................................................................................
46
4.3.1.- Características del Canal de Radio ...........................................................
46
4.3.2.- Condiciones Estáticas ...............................................................................
47
4.3.3.- Condiciones Dinámicas ............................................................................
47
4.4.- Frecuencias y Canales Lógicos .........................................................................
49
4.4.1.- Canales de Tráfico ....................................................................................
52
4.4.2.- Canales de Control ....................................................................................
54
4.4.2.1.- Canales Broadcast (BCH) .................................................................
55
Página 4
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
4.4.2.2.- Canales de Control Comunes (CCCH) .............................................
57
4.4.2.3.- Canales de Control Dedicados (DCCH) ...........................................
58
4.5.- Ejemplo de una llamada GSM .........................................................................
60
4.6.- Estructura de las tramas en GSM .....................................................................
62
5.- Procesado de Señal en GSM ....................................................................................
65
5.1.- Introducción .....................................................................................................
65
5.2.- Codificación de la fuente .................................................................................
65
5.2.1.- Requisitos para la codificación de la voz en GSM .................................. 66
5.2.2.- Funcionamiento de la codificación - descodificación de la voz .............. 67
5.2.3.- Codificación por Predicción Lineal (LPC) y Análisis por
Excitación de Pulsos Regulares (RPE) ....................................................
69
5.2.4.- Análisis por Predicción de Periodo Largo (LTP) .....................................
71
5.2.5.- Transmisión Discontinua .........................................................................
72
5.3.- Codificación del Canal ....................................................................................
75
5.3.1.- Introducción a la codificación del canal .................................................. 75
5.3.1.1- Chequeo de Redundancia Cíclica (CRC) ......................................... 77
5.3.1.2- Códigos Convolucionales .................................................................
79
5.3.1.3.- Descodificación de códigos convolucionales de máxima
probabilidad. El Algoritmo de Viterbi ............................................. 88
Página 5
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
5.3.1.4.- Entrelazado ("Interleaving") ............................................................
91
5.3.2.- Codificación del Canal en GSM ..............................................................
91
5.3.2.1.- CRC en GSM ...................................................................................
91
5.3.2.2.- Código convolucional en GSM ........................................................
92
5.3.2.3.- "Interleaving" en GSM .....................................................................
95
5.4.- Modulación Digital en GSM ...........................................................................
96
5.4.1.- Modulación MSK (Minimum Shift Keying) ........................................... 96
5.4.2.- Modulación GMSK (Gaussian Minimum Shift Keying) ......................... 99
6.- Simulaciones con Matlab ......................................................................................
106
6.1.- Introducción ...................................................................................................
106
6.2.- Codificación de la fuente ...............................................................................
106
6.3.- Codificación del canal ...................................................................................
109
6.4.- Modulación digital ........................................................................................
111
6.5.- Demodulación y Descodificación .................................................................
117
6.6.- Resultados de las Simulaciones ....................................................................
122
III.- RESUMEN, CONCLUSIONES .........................................................................
125
Página 6
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
IV.- BIBLIOGRAFÍA .................................................................................................
127
V.- APENDICES.........................................................................................................
129
Apéndice 1.- Uso del programa de codificación "TOAST" .................................. 129
Apéndice 2.- Programas en Matlab ......................................................................
136
Apéndice 3.- Acrónimos y Abreviaturas .............................................................. 155
Página 7
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
I.- ESPECIFICACIONES DEL PROYECTO
1.- Motivación
2.- Objetivos
Página 8
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
II.- Desarrollo del Proyecto
1.- Introducción
Página 9
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Postes et Télécommunications") es una organización para la
estandarización presente en más de 20 países europeos.
Todos estos factores, llevaron a la creación en 1982 de un
nuevo cuerpo de estandarización dentro del CEPT, cuya tarea
era especificar un único sistema de radiocomunicaciones
para Europa a 900 MHz. El recién Nacido "Groupe Spécial
Mobile" (GSM) tuvo su primer encuentro en Diciembre de 1982
en Estocolmo, bajo la presidencia de Thomas Haug de la
administración sueca. Treinta y una personas de once países
estuvieron presentes en este primer encuentro. En 1990, por
requerimiento del Reino Unido, se añadió al grupo de
estandarización la especificación de una versión de GSM a
la banda de frecuencia de 1800 ± 75 MHz. A esta variante se
le llamó DCS1800 ("Digital Cellular System 1800").
El significado actual de las siglas GSM se ha cambiado
y en la actualidad se hacen corresponder con "Global System
for Mobile communications".
Fecha Logros
Página 10
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
1.2.- Elecciones Técnicas
Servicios:
Página 11
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
del servicio móvil terrestre. Se debe prohibir el uso
aeronáutico de las estaciones móviles GSM.
- En lo referente a las estaciones, a parte de las montadas
en vehículos, el sistema debe ser capaz de suministrar
estaciones de mano así como otras categorías de estaciones
móviles.
Página 12
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Aspectos de Red:
Aspectos de costes:
Página 13
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 14
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
• Multiplexación en el tiempo de orden 8, con una evolución
en el futuro hacia la multiplexación de orden 16 cuando
se defina un codificador de voz a la mitad de velocidad;
• "Hopping" de frecuencias lento. El "hopping", consiste en
cambiar la frecuencia usada por un canal a intervalos
regulares de tiempo. En GSM la frecuencia de transmisión
permanece constante durante la transmisión de una trama
completa. Esta técnica procede de los sistemas de
transmisión militares, y se decidió incluirla en las
principales características de la transmisión de radio de
GSM, además de utilizarla por motivos de seguridad,
también para conseguir una mayor diversidad de
frecuencias, y para paliar los efectos de los
desvanecimientos de tipo Rayleigh.
Página 15
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
en el sistema completo, y a las estaciones base cercanas se
les asignan diferentes grupos de canales de forma que los
canales disponibles son asignados en un número
relativamente pequeño de estaciones base vecinas. A las
estaciones base vecinas se les asigna diferentes grupos de
canales de forma que las interferencias entre las
estaciones base (y entre los usuarios móviles bajo su
control) se reducen. Espaciando sistemáticamente las
estaciones base y sus grupos de canales a través de un
mercado, los canales disponibles se distribuyen a través de
una región y pueden ser reutilizadas tantas veces como sea
necesario, siempre que la interferencia entre estaciones
con el mismo canal se mantenga por debajo de unos niveles
aceptables.
Página 16
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 17
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Cuando usamos hexágonos para modelar las áreas de
cobertura, los transmisores de las estaciones base pueden
estar bien en el centro de las celdas o bien en tres de las
esquinas de las seis de las celdas. Normalmente las antenas
omni-direcionales se suelen colocar en el centro de las
celdas, y las antenas de dirección selectiva se suelen
colocar en las esquinas de las celdas.
Página 18
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
deseable usar el valor más pequeño de N posible, para
maximizar la capacidad dentro de un área de cobertura.
Página 19
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
lo pidió siguiendo un algoritmo que tiene en cuenta
diversos factores como son la frecuencia del canal a pasar,
su distancia de reutilización, y otras funciones de coste.
Página 20
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
conocido en GSM como canal común dado que lleva información
hacia y desde el móvil al mismo tiempo. Los canales
asignados durante un periodo de tiempo a un móvil se les
llaman canales dedicados. Basados en esta distinción se
pueden definir dos macro-estados:
Página 21
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
En la práctica se usan tres métodos diferentes para
tener este conocimiento. En el primer método, la estación
móvil indica cada cambio de celda a la red. Se le llama
actualización sistemática de la localización al nivel de
celda. Cuando llega una llamada, se necesita enviar un
mensaje de búsqueda sólo a la celda donde está el móvil, ya
que ésta es conocida. Un segundo método sería enviar un
mensaje de página a todas las celdas de la red cuando llega
una llamada, evitándonos así la necesidad de que el móvil
esté continuamente avisando a la red de su posición. El
tercer método es un compromiso entre los dos primeros
introduciendo el concepto de área de localización. Un área
de localización es un grupo de celdas, cada una de ellas
pertenecientes a un área de localización simple. La
identidad del área de localización a la que una celda
pertenece se les envía a través de un canal de difusión
("broadcast"), permitiendo a las estaciones móviles saber
el área de localización en la que están en cada momento.
Cuando una estación móvil cambia de celda se pueden dar dos
casos:
• ambas celdas están en la misma área de localización: la
estación móvil no envía ninguna información a la red.
• las celdas pertenecen a diferentes áreas de localización:
la estación móvil informa a la red de su cambio de área
de localización.
Página 22
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
En el apartado anterior se trataron las consecuencias
de la movilidad en el modo idle. En el modo dedicado, y en
particular cuando una llamada está en progreso, la
movilidad del usuario puede inducir a la necesidad de
cambiar de celda servidora, en particular cuando la calidad
de la transmisión cae por debajo de un umbral. Con un
sistema basado en células grandes, la probabilidad de que
ocurra esto es pequeña y la pérdida de una llamada podría
ser aceptable. Sin embargo, si queremos lograr grandes
capacidades tenemos que reducir el tamaño de la celda, con
lo que el mantenimiento de las llamadas es una tarea
esencial para evitar un alto grado de insatisfacción en los
abonados.
Página 23
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Al proceso de la transferencia automática de una
comunicación (de voz o datos) en progreso de una celda a
otra para evitar los efectos adversos de los movimientos
del usuario se le llama "handover" (o "handoff"). Este
proceso requiere primero algunos medios para detectar la
necesidad de cambiar de celda mientras estamos en el modo
dedicado (preparación del handover), y después se requieren
los medios para conmutar una comunicación de un canal en
una celda dada a otro canal en otra celda, de una forma que
no sea apreciable por el usuario (Ver Figura 3).
Página 24
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
2.6.- "Roaming" (función de seguimiento)
Página 25
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 26
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Q = DR = 3N
Página 27
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Un valor pequeño de Q proporciona una mayor capacidad
dado que el tamaño del cluster N es pequeño, mientras que
un valor de Q grande mejora la calidad de la transmisión,
debido a que es menor la interferencia co-canal. Se debe
llegar a un compromiso entre estos dos objetivos a la hora
del diseño.
Página 28
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
de N de 6.49 asumiendo un exponente de pérdidas de 4, con
lo que un valor típico para N sería de 7.
Página 29
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
2.7.3.- Control de Potencia para reducir las Interferencias
Página 30
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
sistema celular dado que incrementa el número de veces que
se reutilizan los canales. Definiendo nuevas celdas que
tengan un radio más pequeño que las celdas originales
instalando estas pequeñas celdas entre las celdas
existentes, se incrementa la capacidad debido al incremento
de canales por unidad de área.
Página 31
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
sistema. En este caso el radio de cada celda es la mitad
que el de la celda original.
Página 32
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 33
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
conmutación de telefonía convencional (terrestres),
llamados oficinas centrales, con los MSCs de todo el mundo.
Página 34
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
las comunicaciones y conectar las estaciones móviles a otro
tipo de redes (como puede ser la PTSN), o a otras
estaciones móviles. Además tendríamos el Centro de
Operaciones y Mantenimiento ("Operation and Sevice
Subsystem" u OSS), que no está muy detallado en las
Especificaciones de GSM. Las MS, BSS y la NSS forman la
parte operacional del sistema, mientras que el OSS
proporciona los medios para que el operador los controle.
OPERADOR
OSS
GSM
NSS BSS
REDES USUARIOS
EXTERNAS
Página 35
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
también una interfaz al usuario humano (un micrófono,
altavoz, display y tarjeta, para la gestión de las llamadas
de voz), y/o una interfaz para otro tipo de equipos
(ordenador personal, o máquina facsímil o fax).
Página 36
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
OSS
BSS
MS NSS
Página 37
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
armarios se conectan a ellas por unos cables de conexión.
Un BTS de este tipo era capaz de mantener simultáneamente 3
ó 5 portadoras de radio, permitiendo entre 20 y 40
comunicaciones simultáneas. Actualmente el volumen de los
BTS se ha reducido mucho, esperándose un gran avance en
este campo dentro de GSM.
Página 38
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 39
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
cuya función es más o menos importante dependiendo del tipo
de datos y de la red a la que se accede.
OSS
PSTN PSPDN
RDSI
NSS
BSS
MS
MS
Página 40
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
de Posiciones Base ("Home Location Register" ó HLR),
independientemente de la posición actual del abonado. El
HLR también incluye alguna información relacionada con la
posición actual del abonado. Como una máquina física, un
HLR es típicamente una computadora independiente, sin
capacidades de conmutación, y capaz de manejar a cientos o
miles de abonados. Una subdivisión funcional del HLR es el
Centro de Autenticación ("Authentication Center" ó AuC,
cuya función se limita a la gestión de la seguridad de los
datos de los abonados.
Página 41
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Pero el NSS contiene más elementos que los MSCs, VLRs
y HLRs. Para establecer una llamada hacia un usuario GSM,
la llamada es primero encaminada a un conmutador-gateway
llamado GMSC, sin ningún conocimiento de dónde está el
abonado. Los GMSCs están encargados de buscar la
información sobre la posición y encaminar la llamada hacia
el MSC a través del cual el usuario obtiene servio en ese
instante.
4.1.- Introducción
Página 42
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
4.2.- Acceso a Sistemas Truncados
Página 43
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
control para manejar todas las tareas de control de acceso.
Una característica importante de los sistemas FDMA es que
una vez que se asigna una frecuencia a un usuario, ésta es
usada exclusivamente por ese usuario hasta que éste no
necesite el recurso.
Página 44
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
(mediante su slot) cada 4.615 ms (577 µs · 8 = 4.615 ms),
ya que en GSM tenemos 8 slots de tiempo.
Página 45
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
en el receptor, por lo que le hemos de dar a cada una un
canal virtual. Para hacer esto, le damos a cada cadena de
datos, A y B, sumándole módulo 2 su propia llave: la llave
A y la llave B. En sus respectivos casos, obtenemos las
señales A y B. Ahora miramos en el receptor (correlador) y
vemos qué ocurre con las dos señales.
Página 46
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
onda es simplemente la suma algebraica, bit a bit, de las
señales A y B. Recuperamos el Dato A de las señal
compuesta, en dos pasos. Primero, multiplicamos las señal
compuesta por una copia de la llave correspondiente, en
este caso por la llave A. Obtenemos la señal llamada
(A+B)*Llave A. Segundo, integramos esta señal bit a bit,
obteniendo la Salida del Integrador. Se comprueba el signo
de la señal de salida del integrador después de 6 bits (ya
que por cada bit de datos, le introdujimos 6 bits de
llave). El signo de la señal nos da directamente el dato
descodificado. Si el signo es negativo, el dato es un 0, y
si es positivo, un 1. Con la señal B se operaría lo mismo
excepto que deberíamos utilizar su llave correspondiente
(Figura 14).
Página 47
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
un ejemplo realizable, ya que la temporización y
sincronización son críticos en un sistema de este tipo.
Página 48
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
a canal de frecuencia con dos frecuencias de operación
separadas, una para el transmisor y otra para el receptor.
Todo lo que se necesita es añadir filtros en los caminos
del transmisor y del receptor que mantengan la energía del
transmisor fuera de la entrada del receptor. Se podría usar
una antena común como un sistema de filtrado simple. Los
sistemas de filtrado se llaman duplexores y nos permiten
usar el canal (par de frecuencias) en el modo full-duplex;
es decir, el usuario puede hablar y escuchar al mismo
tiempo.
Página 49
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
el segmento más estrecho que se pueda del espectro asignado
por cualquier cuerpo regulador. Hay dos fuentes de
problemas dentro del canal: el ruido y las interferencias
de las cuales ya hemos hablado anteriormente.
⎧ r ⎛ r2 ⎞
⎪ 2 exp⎜ − 2⎟ (0 ≤ r ≤ ∞)
p (r ) = ⎨σ ⎝ 2σ ⎠
⎪ 0 (r < 0)
⎩
Página 50
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
donde σ es el valor rms del voltaje recibido antes de la
detección de envolvente, y σ2 es la potencia media de la
señal recibida antes de la detección de envolvente. La
probabilidad de que la envolvente de la señal recibida no
exceda un valor especificado R está data por la
correspondiente función de distribución acumulativa
R
⎛ R2 ⎞
P (R) = Pr(r ≤ R) = ∫ p(r )dr = 1 − exp⎜ − ⎟
0 ⎝ 2σ 2
⎠
2 ⎝ 2⎠
0
Página 51
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 52
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 53
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
número de ST y un ARFCN constituyen un canal físico tanto
para el "uplink" como para el "downlink". Cada canal físico
en un sistema GSM se puede proyectar en diferentes canales
lógicos en diferentes tiempos. Es decir, cada slot de
tiempo específico o trama debe estar dedicado a manipular
el tráfico de datos (voz, facsímil o teletexto), o a
señalizar datos (desde el MSC, la estación base o la MS).
Las especificaciones GSM definen una gran variedad de
canales lógicos que pueden ser usados para enlazar la capa
física con la capa de datos dentro de las capas de la red
GSM. Estos canales lógicos transmiten eficientemente los
datos de usuario, a parte de proporcionar el control de la
red en cada ARFCN. GSM proporciona asignaciones explícitas
de los slots de tiempo de las tramas para los diferentes
canales lógicos.
Página 54
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
4.4.1.- Canales de Tráfico
Página 55
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
- Canal de tráfico a velocidad completa para voz
(TCH/FS). Lleva voz digitalizada a 13 kbps. Después de la
codificación del canal la velocidad es de 22.8 kbps.
- Canal de tráfico a velocidad mitad para voz
(TCH/HS). Ha sido diseñado para llevar voz digitalizada que
ha sido muestreada a la mitad que la de un canal a
velocidad completa. En este aspecto GSM se ha anticipado a
la disponibilidad de codificadores normalizados de voz a
velocidades de unos 6.5 kbps. Después de la codificación
del canal, la velocidad es de 11.4 kbps.
Página 56
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
4.4.2.- Canales de Control
Página 57
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
4.4.2.1.- Canales "Broadcast" (BCH)
Página 58
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
(b) Canal Corrector de Frecuencia (FCCH) - El FCCH es una
ráfaga de datos que ocupa el TS0 para la primera trama
dentro de la multitrama de control, y que se repite
cada diez tramas. El FCCH permite a cada estación móvil
sincronizar su frecuencia interna de oscilación a la
frecuencia exacta de la estación base.
(c) Canal de Sincronización (SCH) - El SCH se envía en el
TS0 de la trama inmediatamente después del FCCH y se
usa para identificar a la estación base servidora
mientras que permite a cada móvil la sincronización de
las tramas con la estación base. El número de trama
(FN), que oscila entre 0 hasta 2,715,647, se envía con
el código de identificación de la estación base (BSIC)
durante la ráfaga SCH. El BSIC es asignado
individualmente a cada BTS en un sistema GSM. Dado que
un móvil puede estar hasta a 30 km de la BTS, es
necesario frecuentemente ajustar la temporización de un
usuario móvil particular de forma que la señal recibida
en la estación base se sincroniza con el reloj de la
estación base.
Figura 19.- Mulitramas de control para el downlink (a) y para el uplink (b)
Página 59
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 60
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
control dedicado (SDCCH) para la señalización durante
la llamada. Esta conexión se confirma por la estación
base a través de un AGCH.
(c) Canal de Acceso Concedido (AGCH) - El AGCH se usa por
la estación base para proporcionar un enlace de
comunicaciones con el móvil, y lleva datos que ordenan
al móvil operar en un canal físico en particular (en un
determinado TS y en un ARFCN) con un canal de control
dedicado. El ACCH es el último mensaje de control
enviado por la estación base antes de que el abonado es
eliminado del control del canal de control. El ACCH se
usa por la estación base para responder a un RACH
enviado por una MS en la trama CCCH previa.
Página 61
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
una nueva llamada procedente de un BCH y mantiene el
tráfico mientras que está esperando que la estación
base asigne un TCH. El SDCCH se usa para enviar
mensajes de autenticación y de alerta (pero no de voz).
A los SDCCH se les puede asignar su propio canal físico
o pueden ocupar el TS0 del BCH si la demanda de BCHs o
CCCHs es baja.
(b) Canal de Control Asociado Lento (SACCH) - El SACCH está
siempre asociado a un canal de tráfico o a un SDCCH y
se asigna dentro del mismo canal físico. Por tanto,
cada ARFCN sistemáticamente lleva datos SACCH para
todos sus usuarios actuales. El SACCH lleva información
general entre la MS y el BTS. En el downlink, el SACCH
se usa para enviar información lenta pero regular sobre
los cambios de control al móvil, tales como
instrucciones sobre la potencia a transmitir e
instrucciones específicas de temporización para cada
usuario del ARFCN. En el uplink, lleva información
acerca de la potencia de la señal recibida y de la
calidad del TCH, así como las medidas BCH de las celdas
vecinas. El SACCH se transmite durante la decimotercera
trama (y la vigesimosexta si se usa velocidad mitad) de
cada multitrama de control (ver Figura 18), y dentro de
esta trama, los 8 slots se usan para proporcionar datos
SACCH a cada uno de los 8 usuarios (ó 16) del ARFCN.
(c) Canales de Control Asociados Rápidos (FACCH) - El FACCH
lleva mensajes urgentes, y contienen esencialmente el
mismo tipo de información que los SDCCH. Un FACCH se
asigna cuando un SDCCH no se ha dedicado para un
usuario particular y hay un mensaje urgente (como una
respuesta de handover). El FACCH gana tiempo de acceso
a un slot "robando" tramas del canal de tráfico al que
está asignado. Esto se hace activando dos bits
especiales, llamados bits de robo ("stealing bits"), de
una ráfaga TCH. Si se activan los stealing bits, el
Página 62
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
slot sabe que contiene datos FACCH y no un canal de
tráfico, para esa trama.
Página 63
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
usuario, mientras que la PSTN conecta la dirección marcada
con el MSC, y el MSC conmuta un camino de voz hasta la
estación base servidora. Después de pocos segundos, la
unidad móvil está dirigida por la estación base a través
del SDCCH que devuelve un nuevo ARFCN y un nuevo TS para la
asignación de un TCH. Una vez devuelto el TCH, los datos de
voz se transfieren a través del uplink y del downlink, la
llamada se lleva a cabo con éxito, y el SDCCH es liberado.
Página 64
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 65
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 66
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 67
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
5.- Procesado de Señal en GSM
5.1.- Introducción
voz voz
Codificación de Decodificación
la fuente de la Fuente
Interleaving De-interleaving
Encriptación De - encriptación
Canal de Radio
Modulación Demodulación
Página 68
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
frecuencia, también llamada como señal en banda base,
modula la portadora de radio frecuencia. En el receptor, se
realiza la demodulación de la señal de forma que se obtiene
de nuevo la señal en banda base más el ruido introducido
por el canal.
Página 69
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
- La redundancia inherente a la señal de voz humana se
reducirá significativamente. Hay una gran cantidad de
redundancia en los sonidos del lenguaje humano, y si
eliminamos la mayoría de esta redundancia, quedará una gran
cantidad de tiempo útil para otros usuarios en el canal. El
proceso de la codificación de voz se basa en quedarnos con
la mínima cantidad de información necesaria para
reconstruir la señal de voz en el receptor.
- La calidad de la transmisión de voz bajo la
condiciones del canal de radio debe ser al menos como la
calidad ofrecida en los sistemas convencionales de
telefonía celular bajo las mismas condiciones.
- Las pausas en el flujo normal de las conversaciones
telefónicas se deben detectar para suspender
(opcionalmente) la transmisión durante estos periodos. Esta
característica reducirá el tráfico, la interferencia entre
celdas y la duración de las baterías de los móviles de
mano. Esta función se llama transmisión discontinua (DTX).
Página 70
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 71
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 72
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
aproximadamente 1 ms. Las consideraciones sobre una
predicción de periodo largo sobre los bloques vecinos o
adyacentes, no se consideran aquí. Hay numerosas
correlaciones en la voz humana, especialmente en las
vocales largas donde un mismo sonido se repite durante
varias secuencias consecutivas. Esta segunda reducción se
lleva a cabo mediante la función LTP.
Página 73
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 74
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
El codificador de voz manda un bloque de 260 bits (una
trama de voz) cada 20 ms (posición B de la Figura 23). Por
tanto se corresponde con una velocidad de 13 kbps, es decir
una reducción en un factor 8 de los 104 kbps.
Página 75
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
adyacentes y con las estaciones móviles cercanas a la base.
Dado que el tiempo de transmisión se reduce, el consumo de
potencia de la estación móvil de mano se reduce, lo cual da
a los usuarios la posibilidad de tener baterías de menor
tamaño. Las pausas el una conversación normal ocurren de
forma que aparecen durante un 50% del tiempo
aproximadamente. Esto significa que un canal de voz sólo se
está usando la mitad del tiempo que el locutor lo usa.
Página 76
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 77
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
5.3.- Codificación del Canal
DATOS
R bps CODIFICADOR MODULADOR
R/Rc bps
CANAL
AWGN
Página 78
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 79
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
protección, hacen un total de 456 bits cada 20 ms, lo cual
nos da una velocidad de salida de 22.8 kbps.
Página 80
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
El registro contiene tantos elementos de memoria como
el grado del divisor que queramos menos uno, y tenemos
tantos contactos XOR como bits de paridad queramos formar.
Consideremos el ejemplo siguiente:
C4 + C3 C2 + C1 C0 +
Página 81
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
c4 c3 c2 c1 c0 c4+c3 c4+c1 c4+ent ent
Inicial 0 0 0 0 0 0 0 1 1
Paso 1 0 0 0 0 1 0 0 0 0
Paso 2 0 0 0 1 0 0 1 1 1
Paso 3 0 0 1 0 1 0 0 0 0
Paso 4 0 1 0 1 0 1 1 0 0
Paso 5 1 0 1 0 0 1 1 1 0
Paso 6 1 1 1 0 1 0 1 0 1
Paso 7 0 1 1 1 0 1 1 1 1
Paso 8 1 1 1 0 1 0 1 1 0
Paso 9 0 1 1 1 1 1 1 1 1
Paso 10 1 1 1 1 1 0 0 1 0
Paso 11 0 1 0 1 1 1 1 0 0
Paso 12 1 0 1 1 0 1 0 1 0
Paso 13 1 1 0 0 1 0 1 1 0
Paso 14 0 0 1 1 1 0 1 0 0
Paso 15 0 1 1 1 0 1 1 0 -
Página 82
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
El codificador de un código convolucional binario de
razón 1/n, se puede ver como una máquina de estados finitos
que consiste en un registro de desplazamiento de M etapas
con conexiones de sumadores módulo 2 (XOR) como se ha visto
antes, y un multiplexor que convierte en serie la salida de
los sumadores. Una secuencia de mensaje de L bits produce
una secuencia de salida codificada de longitud n(L + M)
bits. La razón del codificador ("rate") viene dada por
L
r= bits / simbolo
n( L + M )
Página 83
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
La Figura 30 muestra un codificador convolucional con
n = 2 y K = 3. Por tanto, la razón del codificador es 1/2.
Este codificador opera sobre el mensaje de entrada a razón
de un bit cada vez.
l= 0
i ∑ i = 0, 1, 2, . . .
M
x (2 )
i
= ∑l gl
=0
( 2)
mi − l i = 0, 1, 2, .. .
Página 84
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
{xi}={x0(1), x0(2), x1(1), x1(2), x2(1), x2(2),...}
Página 85
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
cada parte del codificador por un polinomio cuyos
coeficientes se representan por los respectivos elementos
de la respuesta impulsiva. Por lo tanto, para la parte
superior del ejemplo de la Figura 30, se define el
polinomio
g(1)(D) = g0(1) + g1(1)·D + ··· + gM(1)·DM
donde g0(1), g1(1),..., gM(1) son los elementos de la respuesta
impulsiva de la parte superior del ejemplo. La variable D
denota un operador de retardo unitario, mientras que el
exponente de D define el número de unidades de tiempo que
se retarda un bit respecto al primero. Para la parte
inferior del ejemplo se obtendría una expresión similar
obteniendo
g(2)(D) = g0(2) + g1(2)·D + ··· + gM(2)·DM
Página 86
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 87
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 88
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
ejemplo de la Figura 30 para ilustrar cada uno de estos
tres tipos de representación.
Página 89
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
En la Figura 33 se ha representado la parte estable
del trellis de nuestro ejemplo, en donde podemos apreciar
los cuatro posibles estados de nuestro trellis (a,b,c y d).
Página 90
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
5.3.1.3.- Descodificación de códigos convolucionales de
máxima probabilidad. El Algoritmo de Viterbi
Página 91
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
codificada representada por ese camino y la secuencia
recibida. Por tanto, para cada nodo (estado) en el trellis
de la Figura 32, el algoritmo compara los dos caminos
entrantes al nodo. Nos quedamos con el camino con la
métrica más baja, y los otros caminos se descartan. Este
cómputo se repite para cada nivel j del trellis en el rango
que va desde M hasta L, ambos inclusive. Los caminos que se
retienen por el algoritmo se llaman supervivientes. Para un
código convolucional de profundidad K=3, no hay más de 2K-
1
=4 caminos supervivientes. Si se diera el caso que dos
caminos tuvieran la misma métrica, se escoge cualquiera de
los dos aleatoriamente.
Página 92
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 93
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
del canal: uno en la posición 2 y otro en la 6. Veamos que
este error se puede corregir aplicando el algoritmo de
Viterbi.
Página 94
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
proceso. Para limpiar el registro de desplazamiento, hemos
de añadir 3 bits.
C2 C1 + C0 +
Página 95
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
En la Figura 37 se representa el diagrama de bloques
del codificador convolucional de GSM. Podemos observar que
como en el ejemplo anterior tenemos dos caminos, ya que el
rate es de 1/2, y el multiplexor es de 2 a 1. Como M = 4,
tenemos cuatro flip-flops o elementos de retardo unitarios.
Página 96
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
De la propia identificación gráfica del circuito de la
Figura 37, podemos obtener los dos polinomios generadores
que en nuestro caso son
g(1)(D)= 1 + D3 + D4
g(2)(D)= 1 + D + D3 + D4
Página 97
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
A partir del trellis representado en la figura 39 se
puede obtener fácilmente el diagrama de estados.
Número de trama i+0 i+1 i+2 i+3 i+4 i+5 i+6 i+7
0a 4b 1a 5b 2a 6b 3a 7b 4a 0b 5a 1b 6a 2b 7a 3b
114 bi ts 114 bi ts
Página 98
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
sub-bloque 4 de la (n-1)-ésima trama del codificador de voz
(denominada como "b" en la figura).
Página 99
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
MSK es una modulación espectralmente eficiente. Posee
propiedades como envolvente constante, eficiencia
espectral, buena respuesta ante los errores de bits, y
capacidad de autosincronización. Una señal MSK genérica se
puede expresar como
⎛ πt⎞ ⎛ πt⎞
S t = m (t ) cos⎜
( ) ⎟ cos(2π f t ) + m (t ) sen⎜ ⎟ sen(2π f t)
⎝ 2Tb ⎠ ⎝ 2Tb ⎠
MSK I c Q c
Página 100
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
pares, mI(t) y mQ(t) para producir la señal modulada MSK
sMSK(t).
Página 101
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
5.4.2.- Modulación GMSK ("Gaussian Minimum Shift Keying")
π ⎛ π 2 2⎞
hG (t ) = exp⎜ − t ⎟
α ⎝ α2 ⎠
y su respuesta en frecuencia viene dada por
Página 102
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
HG ( f ) = exp(−α f 2 2
)
2 ln 2
α=
B
y el filtro GMSK se puede definir completamente por B y por
la duración de un símbolo en banda base T. También se suele
definir GMSK por su producto BT. En la Figura 42 podemos
ver cómo varía la forma de la respuesta impulsiva del
filtro variando el parámetro α (es decir, B).
Página 103
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
la ISI, y por lo tanto se incremente el bit-error "rate"
(BER). Pero, los canales de radio inducen un irreparable
bit-error rate debido a la velocidad del móvil, de forma
que debido a que el BER introducido en una señal GMSK es
menor que el introducido por el canal, no hay ningún
perjuicio en usar GMSK.
Figura 42.- Densidad de Potencia Espectral de una señal GMSK para varios valores de BT
Página 104
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 105
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 106
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 107
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
pero efectivo de detectar señales GMSK es simplemente
muestrear la salida de un demodulador de FM.
Figura 45.- Diagrama de bloques de un receptor GMSK (parte superior) y de un circuito digital
para la demodulación de señales GMSK (parte inferior)
Página 108
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
6.- Simulaciones con Matlab
6.1.- Introducción
Página 109
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
- Fichero de audio tipo SUN. Lleva compresión de datos ley
µ con cabecera de datos. Se especifica con el parámetro de
entrada -s.
- Fichero de audio lineal con datos de 16 bits con signo
muestreados a 8 KHz. Se especifica con el parámetro de
entrada -l
Página 110
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
A continuación vamos a pasar a comprimir el fichero de
muestras de voz de nuestro ejemplo cuatro.au (pero sin
extensión. Ver Apéndice 1).
TOAST -s cuatro
[f,F]=abrir('cuatro.gsm');
Página 111
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
importancia de los bits tal y como se especifica en la
tabla 5.1. Para ello vamos a usar la rutina de Matlab
clasif.m (Apéndice 2, Programa 4).
[p2,p1,p0]=crc(d,N_tramas,N);
Página 112
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
registro de desplazamiento del código convolucional. El
comando a ejecutar es el siguiente:
u=reord(d,p2,p1,p0,N_tramas,N);
c=convol(u,d,N_tramas);
e=intrlvng(c,N_tramas);
Página 113
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Antes de realizar la modulación, necesitamos conformar
las ráfagas de GSM, que en nuestro caso es una ráfaga
normal. Como vimos, este tipo de ráfagas llevaba 3 bits de
cola al principio y al final, dos bloques de 57 bits de
datos, y 26 bits correspondientes a una secuencia de
entrenamiento, encargada de ajustar los filtros adaptativos
en los receptores. Vamos a suponer que nosotros tenemos
asignado un TCH y que vamos a transmitir en el slot de
tiempo 0 (TS 0), por lo que los otros 7 slots permanecen
sin utilizar (se supone que llevan datos de otras fuentes).
También tenemos en cuenta que para un TCH, dependiendo de
en qué slot transmitamos, vamos a tener una secuencia de
entrenamiento concreta. La función que realizaría esto es
burst.m (Apéndice 2, Programa 9). El comando que deberíamos
utilizar sería:
B=burst(e,N_tramas);
Página 114
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Vmsk=mskmod(B,N_tramas);
Página 115
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 116
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
En la Figura 49 hemos representado la PSD de una
ráfaga normal modulada en MSK y modulada en GMSK. Podemos
observar como la señal a frecuencias bajas conserva su
espectro, pero a medida que la frecuencia aumenta, el
espectro se ve atenuado por la acción del filtro gausiano,
presentando por ejemplo a una frecuencia de 2 MHz una
atenuación de la señal GMSK respecto de la señal MSK de 25
dB.
Vgmskrf=dsblc(Vgmsk,mi,fc,fs);
Página 117
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Vgmsk2=setsnr(Vgmsk,n,snr);
Página 118
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 119
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Podemos observar que se ha representado también la
señal original sin ruido, y se observa que a bajas
frecuencias no se aprecia el ruido, pero que luego éste se
hace constante con un valor de unos -25 dB.
B2=mskdemod(B(1,:),Vmsk);
Página 120
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Para el caso de GMSK se actuaría igual, sólo que los
criterios de decisión en el demodulador cambian. La función
de demodulación GMSK sería la función gmskdem.m (Apéndice
2, Programa 13).
B2(j,:)=gmskdem(B(j,:),Vmsk(j,:));
Página 121
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
e2=burst2(B2,N_tramas);
c2=deshacer(e2,N_tramas);
Página 122
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
0 que como vemos ya no es capaz de corregir (tenemos tres
errores).
T2=declasif(d2,N_tramas);
Página 123
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 124
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 125
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 126
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
III.- Resumen y Conclusiones
Página 127
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
las diferencias entre ambas señales, y la excelente calidad
que da GSM, junto con el mejor aprovechamiento del espectro
de frecuencias.
Página 128
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
IV.- Bibliografía del Proyecto Final de Carrera
Página 129
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 130
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
V.- Apéndices
Página 131
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
los mismos resultados que en GSM 06.10 pero da unos
suficientemente próximos para que pueda considerarse
compatible.
Página 132
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
fichero de entrada ya tenía extensión, le va a intentar dar
otra, produciéndose un error del sistema.
/*
* Copyright 1992 by Jutta Degener and Carsten Bormann, Technische
* Universitaet Berlin. See the accompanying file "COPYRIGHT" for
* details. THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.
*/
#include "private.h"
#include "gsm.h"
#include "proto.h"
/* variable size
GSM_MAGIC 4
LARc[0] 6
LARc[1] 6
LARc[2] 5
LARc[3] 5
LARc[4] 4
LARc[5] 4
LARc[6] 3
LARc[7] 3
Nc[0] 7
bc[0] 2
Mc[0] 2
xmaxc[0] 6
xmc[0] 3
xmc[1] 3
xmc[2] 3
xmc[3] 3
Página 133
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
xmc[4] 3
xmc[5] 3
xmc[6] 3
xmc[7] 3
xmc[8] 3
xmc[9] 3
xmc[10] 3
xmc[11] 3
xmc[12] 3
Nc[1] 7
bc[1] 2
Mc[1] 2
xmaxc[1] 6
xmc[13] 3
xmc[14] 3
xmc[15] 3
xmc[16] 3
xmc[17] 3
xmc[18] 3
xmc[19] 3
xmc[20] 3
xmc[21] 3
xmc[22] 3
xmc[23] 3
xmc[24] 3
xmc[25] 3
Nc[2] 7
bc[2] 2
Mc[2] 2
xmaxc[2] 6
xmc[26] 3
xmc[27] 3
xmc[28] 3
xmc[29] 3
xmc[30] 3
xmc[31] 3
xmc[32] 3
xmc[33] 3
xmc[34] 3
xmc[35] 3
xmc[36] 3
xmc[37] 3
xmc[38] 3
Nc[3] 7
bc[3] 2
Mc[3] 2
xmaxc[3] 6
xmc[39] 3
xmc[40] 3
xmc[41] 3
xmc[42] 3
xmc[43] 3
xmc[44] 3
xmc[45] 3
xmc[46] 3
xmc[47] 3
xmc[48] 3
xmc[49] 3
xmc[50] 3
Página 134
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
xmc[51] 3
*/
Página 135
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
*c++ = ((bc[2] & 0x1) << 7)
| ((Mc[2] & 0x3) << 5)
| ((xmaxc[2] >> 1) & 0x1F);
*c++ = ((xmaxc[2] & 0x1) << 7)
| ((xmc[26] & 0x7) << 4)
| ((xmc[27] & 0x7) << 1)
| ((xmc[28] >> 2) & 0x1);
*c++ = ((xmc[28] & 0x3) << 6)
| ((xmc[29] & 0x7) << 3)
| (xmc[30] & 0x7);
*c++ = ((xmc[31] & 0x7) << 5)
| ((xmc[32] & 0x7) << 2)
| ((xmc[33] >> 1) & 0x3);
*c++ = ((xmc[33] & 0x1) << 7)
| ((xmc[34] & 0x7) << 4)
| ((xmc[35] & 0x7) << 1)
| ((xmc[36] >> 2) & 0x1);
*c++ = ((xmc[36] & 0x3) << 6)
| ((xmc[37] & 0x7) << 3)
| (xmc[38] & 0x7);
*c++ = ((Nc[3] & 0x7F) << 1)
| ((bc[3] >> 1) & 0x1);
*c++ = ((bc[3] & 0x1) << 7)
| ((Mc[3] & 0x3) << 5)
| ((xmaxc[3] >> 1) & 0x1F);
*c++ = ((xmaxc[3] & 0x1) << 7)
| ((xmc[39] & 0x7) << 4)
| ((xmc[40] & 0x7) << 1)
| ((xmc[41] >> 2) & 0x1);
*c++ = ((xmc[41] & 0x3) << 6) /* 30 */
| ((xmc[42] & 0x7) << 3)
| (xmc[43] & 0x7);
*c++ = ((xmc[44] & 0x7) << 5)
| ((xmc[45] & 0x7) << 2)
| ((xmc[46] >> 1) & 0x3);
*c++ = ((xmc[46] & 0x1) << 7)
| ((xmc[47] & 0x7) << 4)
| ((xmc[48] & 0x7) << 1)
| ((xmc[49] >> 2) & 0x1);
*c++ = ((xmc[49] & 0x3) << 6)
| ((xmc[50] & 0x7) << 3)
| (xmc[51] & 0x7);
}
Página 136
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
programa de codificación nos da los bits sin orden de
importancia, por lo que habremos de ordenarlos según se
mostraba en la Tabla 5.1.
Página 137
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Apéndice 2.- Programas en Matlab
function [f,F]=abrir(fichero);
fid = fopen(fichero,'r');
F = fscanf(fid,'%c');
f = str2bin(F);
fclose(fid);
Página 138
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
function [T,N_tramas]=tramas(f,F);
N_tramas=length(F)/33;
for i=0:N_tramas-1
for j=5:264
T(i+1,j-4)=f(264*i+j);
end
end
function d=clasif(T,N_tramas);
for i=1:N_tramas
%__________Clase Ia____________%
%Clase de importancia 1:
d(i,1)=T(i,6);
d(i,2)=T(i,53);
d(i,3)=T(i,109);
d(i,4)=T(i,165);
d(i,5)=T(i,221);
%Clase de importancia 2:
d(i,6)=T(i,5);
d(i,7)=T(i,12);
d(i,8)=T(i,17);
%Clase de importancia 3:
d(i,9)=T(i,4);
d(i,10)=T(i,11);
d(i,11)=T(i,16);
d(i,12)=T(i,22);
d(i,13)=T(i,43);
d(i,14)=T(i,99);
d(i,15)=T(i,155);
d(i,16)=T(i,211);
d(i,17)=T(i,52);
d(i,18)=T(i,108);
d(i,19)=T(i,164);
d(i,20)=T(i,220);
d(i,21)=T(i,10);
Página 139
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
d(i,22)=T(i,26);
d(i,23)=T(i,30);
d(i,24)=T(i,42);
d(i,25)=T(i,98);
d(i,26)=T(i,154);
d(i,27)=T(i,210);
d(i,28)=T(i,41);
d(i,29)=T(i,97);
d(i,30)=T(i,153);
d(i,31)=T(i,209);
d(i,32)=T(i,40);
d(i,33)=T(i,96);
d(i,34)=T(i,152);
d(i,35)=T(i,208);
d(i,36)=T(i,39);
d(i,37)=T(i,95);
d(i,38)=T(i,151);
d(i,39)=T(i,207);
%Clase de importancia 4:
d(i,40)=T(i,51);
d(i,41)=T(i,107);
d(i,42)=T(i,163);
d(i,43)=T(i,219);
d(i,44)=T(i,3);
d(i,45)=T(i,21);
d(i,46)=T(i,33);
d(i,47)=T(i,38);
d(i,48)=T(i,94);
d(i,49)=T(i,150);
d(i,50)=T(i,206);
%___________Clase Ib____________%
d(i,51)=T(i,25);
d(i,52)=T(i,29);
d(i,53)=T(i,45);
d(i,54)=T(i,101);
d(i,55)=T(i,157);
d(i,56)=T(i,213);
d(i,57)=T(i,37);
d(i,58)=T(i,93);
d(i,59)=T(i,149);
d(i,60)=T(i,205);
Página 140
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
d(i,61)=T(i,47);
d(i,62)=T(i,103);
d(i,63)=T(i,159);
d(i,64)=T(i,215);
%Clase de importancia 5:
d(i,65)=T(i,2);
d(i,66)=T(i,9);
d(i,67)=T(i,15);
d(i,68)=T(i,36);
d(i,69)=T(i,20);
d(i,70)=T(i,24);
d(i,71)=T(i,32);
d(i,72)=T(i,44);
d(i,73)=T(i,100);
d(i,74)=T(i,156);
d(i,75)=T(i,212);
d(i,76)=T(i,50);
d(i,77)=T(i,106);
d(i,78)=T(i,162);
d(i,79)=T(i,218);
d(i,80:92)=T(i,56:3:92);
d(i,93:105)=T(i,112:3:148);
d(i,106:118)=T(i,168:3:204);
d(i,119:131)=T(i,224:3:260);
d(i,132)=T(i,46);
d(i,133)=T(i,102);
d(i,134)=T(i,158);
d(i,135)=T(i,214);
d(i,136)=T(i,49);
d(i,137)=T(i,105);
d(i,138)=T(i,161);
d(i,139)=T(i,217);
d(i,140:152)=T(i,55:3:91);
d(i,153:165)=T(i,111:3:147);
d(i,166:178)=T(i,167:3:203);
d(i,179:182)=T(i,223:3:232);
%__________Clase II____________________%
d(i,183:191)=T(i,235:3:259);
%Clase de importancia 6:
d(i,192)=T(i,1);
d(i,193)=T(i,8);
Página 141
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
d(i,194)=T(i,14);
d(i,195)=T(i,28);
d(i,196)=T(i,31);
d(i,197)=T(i,35);
d(i,198)=T(i,34);
d(i,199)=T(i,13);
d(i,200)=T(i,19);
d(i,201)=T(i,18);
d(i,202)=T(i,23);
d(i,203)=T(i,48);
d(i,204)=T(i,104);
d(i,205)=T(i,160);
d(i,206)=T(i,216);
d(i,207:219)=T(i,54:3:90);
d(i,220:232)=T(i,110:3:146);
d(i,233:245)=T(i,166:3:202);
d(i,246:258)=T(i,222:3:258);
d(i,259)=T(i,7);
d(i,260)=T(i,27);
end
function [p2,p1,p0]=crc(d,N_tramas,N)
for i=1:N_tramas
for j=1:N
Ia(i,j)=d(i,j);
end
Ia(i,N+1:N+4)=[0,0,0,0];
p2(i,1)=0;
p1(i,1)=0;
p0(i,1)=0;
end
Página 142
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
end
end
function u=reord(d,p2,p1,p0,N_tramas,N);
%Tailing bits y reordenación de bits:
for i=1:N_tramas
for k=1:91
u(i,k)=d(i,2*k-1);
u(i,186-k)=d(i,2*k);
end
u(i,92:94)=[p0(i,N+5),p1(i,N+5),p2(i,N+5)];
for k=186:189
u(i,k)=0;
end
end
function c=convol(u,d,N_tramas);
%Código convolucional:
for i=1:N_tramas
u(i,5:189+4)=u(i,1:189);
u(i,1:4)=[0,0,0,0];
for k=5:189+4
c(i,2*k-9)=xor(xor(u(i,k),u(i,k-3)),u(i,k-4));
c(i,2*k-8)=xor(xor(xor(u(i,k),u(i,k-1)),u(i,k-3)),u(i,k-4));
end
%Ahora añadimos los últimos 78 bits sin protección
for k=1:78
c(i,378+k)=d(i,182+k);
end
end
function e=intrlvng(c,N_tramas);
%Diagonalización de las tramas
Página 143
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
for n=1:N_tramas
for k=1:456
B= 4*n-3 + mod((k-1),8);
j=2*(mod((49*(k-1)),57)) + floor(mod((k-1),8)/4) + 1;
I(B,j)=c(n,k);
end
end
for n=1:N_tramas
for k=1:456
B=4*n-3 + mod((k-1),8);
for j=1:57
e(B,j)=I(B,j);
e(B,59+j)=I(B,57+j);
end
end
end
function B=burst(e,N_tramas);
training=[0,0,1,0,0,1,0,1,1,1,0,0,0,0,1,0,0,0,1,0,0,1,0,1,1,1;...
0,0,1,0,1,1,0,1,1,1,0,1,1,1,1,0,0,0,1,0,1,1,0,1,1,1;...
0,1,0,0,0,0,1,1,1,0,1,1,1,0,1,0,0,1,0,0,0,0,1,1,1,0;...
0,1,0,0,0,1,1,1,1,0,1,1,0,1,0,0,0,1,0,0,0,1,1,1,1,0;...
0,0,0,1,1,0,1,0,1,1,1,0,0,1,0,0,0,0,0,1,1,0,1,0,1,1;...
0,1,0,0,1,1,1,0,1,0,1,1,0,0,0,0,0,1,0,0,1,1,1,0,1,0;...
1,0,1,0,0,1,1,1,1,1,0,1,1,0,0,0,1,0,1,0,0,1,1,1,1,1;...
1,1,1,0,1,1,1,1,0,0,0,1,0,0,1,0,1,1,1,0,1,1,1,1,0,0];
for j=1:4*N_tramas+4
B(8*j-7,1:3)=[0,0,0];
B(8*j-7,4:61)=e(j,1:58);
B(8*j-7,62:87)=training(1,:);
B(8*j-7,88:145)=e(j,59:116);
B(8*j-7,146:148)=[0,0,0];
B(8*j-6:8*j,62:87)=training(2:8,:);
end
Página 144
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
function Vmsk=mskmod(B,N_tramas);
res=50;
br=270833;
for j=1:8*(N_tramas*4+4)
v=B(j,:);
for i=1:2:length(v)
vimpar(i)=v(1,i);
vimpar(i+1)=v(1,i);
end
for i=2:2:length(v)
vpar(i)=v(i);
vpar(i+1)=v(i);
end
highp=sinwave(br,length(v)/br,res*br);
highm=sinwave(br,length(v)/br,res*br,pi);
lowp=sinwave(br/2,length(v)/br,res*br);
lowm=sinwave(br/2,length(v)/br,res*br,pi);
L=min(length(vpar),length(vimpar));
vmix=xor(vpar(1:L),vimpar(1:L));
for i=2:length(v)
if vimpar(i)==1 & vpar(i)==1
vmsk(res*(i-2)+1:res*(i-2)+res)=highp(res*(i-2)+1:res*(i-2)+res);
elseif vimpar(i)==0 & vpar(i)==1
vmsk(res*(i-2)+1:res*(i-2)+res)=lowm(res*(i-2)+1:res*(i-2)+res);
elseif vimpar(i)==1 & vpar(i)==0
vmsk(res*(i-2)+1:res*(i-2)+res)=lowp(res*(i-2)+1:res*(i-2)+res);
elseif vimpar(i)==0 & vpar(i)==0
vmsk(res*(i-2)+1:res*(i-2)+res)=highm(res*(i-2)+1:res*(i-2)+res);
end
end
Vmsk(j,:)=vmsk;
end
function vgmsk=gmskmod(B,N_tramas);
res=100;
br=270833;
for j=1:8*(N_tramas*4+4)
v=B(j,:);
for i=1:2:length(v)
vimpar(i)=v(1,i);
vimpar(i+1)=v(1,i);
end
for i=2:2:length(v)
vpar(i)=v(i);
vpar(i+1)=v(i);
end
highp=sinwave(br,length(v)/br,res*br);
highm=sinwave(br,length(v)/br,res*br,pi);
Página 145
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
lowp=sinwave(br/2,length(v)/br,res*br);
lowm=sinwave(br/2,length(v)/br,res*br,pi);
L=min(length(vpar),length(vimpar));
vmix=xor(vpar(1:L),vimpar(1:L));
for i=2:length(v)
if vimpar(i)==1 & vpar(i)==1
vmsk(res*(i-2)+1:res*(i-2)+res)=highp(res*(i-2)+1:res*(i-2)+res);
elseif vimpar(i)==0 & vpar(i)==1
vmsk(res*(i-2)+1:res*(i-2)+res)=lowm(res*(i-2)+1:res*(i-2)+res);
elseif vimpar(i)==1 & vpar(i)==0
vmsk(res*(i-2)+1:res*(i-2)+res)=lowp(res*(i-2)+1:res*(i-2)+res);
elseif vimpar(i)==0 & vpar(i)==0
vmsk(res*(i-2)+1:res*(i-2)+res)=highm(res*(i-2)+1:res*(i-2)+res);
end
end
for i=1:length(v)
t(i)=(i-1)/br; %Creamos un vector de tiempos para el filtro
end
alpha=sqrt(2*log(2))/(0.3*br);
h=(sqrt(pi)/alpha)*exp(-pi^2/alpha^2.*t.^2); %resp. imp. del filtro
Vgmsk(j,:)=conv(vmsk,h); %Filtrado
vgmsk(j,:)=Vgmsk(j,1:length(vmsk))./max(Vgmsk(j,:)); % Escalado y eliminación
end %parte del filtro.
function vrecibida=mskdemod(v,vmsk);
br=270833;
res=100;
%Realizamos la integral de la señal vmsk para un periodo:
for i=1:length(vmsk)/res
int(i)=sum(vmsk(res*(i-1)+1:res*(i-1)+res))/(res-1);
end
%Criterio de decisión:
for i=1:length(int)
l=i/2-floor(i/2);
if abs(int(i)) > std(vmsk(res*(i-1)+1:res*(i-1)+res))*0.4592
if ((l==0.5) & (sign(int(i))>0))|((l==0) & (sign(int(i))<0))
vfimpar(i+1)=1;
vfpar(i+1)=0;
elseif ((l==0.5) & (sign(int(i))<0))|((l==0) & (sign(int(i))>0))
vfimpar(i+1)=0;
vfpar(i+1)=1;
end
elseif abs(int(i))< std(vmsk(res*(i-1)+1:res*(i-1)+res))*0.4592
Página 146
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
int2(i)=sum(vmsk(res*(i-1)+1:res*(i-1)+res/2+1))/(res/2);
if int2(i)>0
vfimpar(i+1)=1;
vfpar(i+1)=1;
elseif int2(i)<0
vfimpar(i+1)=0;
vfpar(i+1)=0;
end
end
end
vfimpar(1)=vfimpar(2);
for i=1:2:length(v)
vrecibida(1,i)=vfimpar(i);
end
for i=2:2:length(v)
vrecibida(i)=vfpar(i);
end
function [vrecibida,vgmsk]=gmskdem(v,vmsk);
res=50;
br=270833;
for i=1:length(v)
t(i)=(i-1)/br; %Creamos un vector de tiempos para el filtro
end
alpha=sqrt(2*log(2))/(0.3*br/res);
h=(sqrt(pi)/alpha)*exp(-pi^2/alpha^2.*t.^2); %resp. imp. del filtro
Vgmsk=conv(vmsk,h); %Filtrado
vgmsk=Vgmsk/max(Vgmsk); % Escalado
vf=vgmsk;
for i=1:length(vmsk)/res
int(i)=sum(vf(res*(i-1)+1+35:res*(i-1)+res+35))/(res-1);
end
for i=1:length(vmsk)/res
l=i/2-floor(i/2);
if abs(int(i)) > 0.55*std(vf(res*(i-1)+1+35:res*(i-1)+res+35))
if ((l==0.5) & (sign(int(i))>0))|((l==0) & (sign(int(i))<0))
vfimpar(i+1)=1;
vfpar(i+1)=0;
elseif ((l==0.5) & (sign(int(i))<0))|((l==0) & (sign(int(i))>0))
vfimpar(i+1)=0;
vfpar(i+1)=1;
Página 147
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
end
elseif abs(int(i))< 0.55*std(vf(res*(i-1)+1+35:res*(i-1)+res+35))
int2(i)=sum(vf(res*(i-1)+1+35:res*(i-1)+res/2+1+35))/(res/2);
if int2(i)<0
vfimpar(i+1)=1;
vfpar(i+1)=1;
elseif int2(i)>0
vfimpar(i+1)=0;
vfpar(i+1)=0;
end
end
end
vfimpar(1)=vfimpar(2);
for i=1:2:length(v)
vrecibida(1,i)=vfimpar(i);
end
for i=2:2:length(v)
vrecibida(i)=vfpar(i);
end
function e2=burst2(B2,N_tramas);
for j=1:4*N_tramas+4
e2(j,1:58)=B2(8*j-7,4:61);
e2(j,59:116)=B2(8*j-7,88:145);
end
function c2=deshacer(e,N_tramas);
%Volvemos a reordenar las tramas recibidas después de la
%demodulación
for n=1:N_tramas
for k=1:456
B=4*n-3 + mod((k-1),8);
for j=1:57
I2(B,j)=e(B,j);
I2(B,57+j)=e(B,59+j);
end
end
end
Página 148
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
function [u2,T2,p2]=viterbi(c2,N_tramas,u);
N=50;
for i=1:N_tramas
for j=1:2:2
n(1,(j+1)/2)=sum(xor(c2(i,j:j+1),[0,0]));
n(2,(j+1)/2)=sum(xor(c2(i,j:j+1),[1,1]));
end
for j=3:2:8
n(1,(j+1)/2)=sum(xor(c2(i,j:j+1),[0,0]))+n(1,(j-1)/2);
n(2,(j+1)/2)=sum(xor(c2(i,j:j+1),[1,1]))+n(1,(j-1)/2);
end
for j=3:2:8
n(3,(j+1)/2)=sum(xor(c2(i,j:j+1),[0,1]))+n(2,(j-1)/2);
n(4,(j+1)/2)=sum(xor(c2(i,j:j+1),[1,0]))+n(2,(j-1)/2);
end
for j=5:2:8
n(5,(j+1)/2)=sum(xor(c2(i,j:j+1),[0,0]))+n(3,(j-1)/2);
n(6,(j+1)/2)=sum(xor(c2(i,j:j+1),[1,1]))+n(3,(j-1)/2);
n(7,(j+1)/2)=sum(xor(c2(i,j:j+1),[0,1]))+n(4,(j-1)/2);
n(8,(j+1)/2)=sum(xor(c2(i,j:j+1),[1,0]))+n(4,(j-1)/2);
end
for j=7:2:8
n(9,(j+1)/2)=sum(xor(c2(i,j:j+1),[1,1]))+n(5,(j-1)/2);
n(10,(j+1)/2)=sum(xor(c2(i,j:j+1),[0,0]))+n(5,(j-1)/2);
n(11,(j+1)/2)=sum(xor(c2(i,j:j+1),[1,0]))+n(6,(j-1)/2);
n(12,(j+1)/2)=sum(xor(c2(i,j:j+1),[0,1]))+n(6,(j-1)/2);
n(13,(j+1)/2)=sum(xor(c2(i,j:j+1),[1,1]))+n(7,(j-1)/2);
n(14,(j+1)/2)=sum(xor(c2(i,j:j+1),[0,0]))+n(7,(j-1)/2);
n(15,(j+1)/2)=sum(xor(c2(i,j:j+1),[1,0]))+n(8,(j-1)/2);
n(16,(j+1)/2)=sum(xor(c2(i,j:j+1),[0,1]))+n(8,(j-1)/2);
end
for j=9:2:378
n(1,(j+1)/2)=min(sum(xor(c2(i,j:j+1),[0,0]))+n(1,(j-1)/2),...
sum(xor(c2(i,j:j+1),[1,1]))+n(9,(j-1)/2));
n(2,(j+1)/2)=min(sum(xor(c2(i,j:j+1),[1,1]))+n(1,(j-1)/2),...
sum(xor(c2(i,j:j+1),[0,0]))+n(9,(j-1)/2));
Página 149
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
n(3,(j+1)/2)=min(sum(xor(c2(i,j:j+1),[0,1]))+n(2,(j-1)/2),...
sum(xor(c2(i,j:j+1),[1,0]))+n(10,(j-1)/2));
n(4,(j+1)/2)=min(sum(xor(c2(i,j:j+1),[1,0]))+n(2,(j-1)/2),...
sum(xor(c2(i,j:j+1),[0,1]))+n(10,(j-1)/2));
n(5,(j+1)/2)=min(sum(xor(c2(i,j:j+1),[0,0]))+n(3,(j-1)/2),...
sum(xor(c2(i,j:j+1),[1,1]))+n(11,(j-1)/2));
n(6,(j+1)/2)=min(sum(xor(c2(i,j:j+1),[1,1]))+n(3,(j-1)/2),...
sum(xor(c2(i,j:j+1),[0,0]))+n(11,(j-1)/2));
n(7,(j+1)/2)=min(sum(xor(c2(i,j:j+1),[0,1]))+n(4,(j-1)/2),...
sum(xor(c2(i,j:j+1),[1,0]))+n(12,(j-1)/2));
n(8,(j+1)/2)=min(sum(xor(c2(i,j:j+1),[1,0]))+n(4,(j-1)/2),...
sum(xor(c2(i,j:j+1),[0,1]))+n(12,(j-1)/2));
n(9,(j+1)/2)=min(sum(xor(c2(i,j:j+1),[1,1]))+n(5,(j-1)/2),...
sum(xor(c2(i,j:j+1),[0,0]))+n(13,(j-1)/2));
n(10,(j+1)/2)=min(sum(xor(c2(i,j:j+1),[0,0]))+n(5,(j-1)/2),...
sum(xor(c2(i,j:j+1),[1,1]))+n(13,(j-1)/2));
n(11,(j+1)/2)=min(sum(xor(c2(i,j:j+1),[1,0]))+n(6,(j-1)/2),...
sum(xor(c2(i,j:j+1),[0,1]))+n(14,(j-1)/2));
n(12,(j+1)/2)=min(sum(xor(c2(i,j:j+1),[0,1]))+n(6,(j-1)/2),...
sum(xor(c2(i,j:j+1),[1,0]))+n(14,(j-1)/2));
n(13,(j+1)/2)=min(sum(xor(c2(i,j:j+1),[1,1]))+n(7,(j-1)/2),...
sum(xor(c2(i,j:j+1),[0,0]))+n(15,(j-1)/2));
n(14,(j+1)/2)=min(sum(xor(c2(i,j:j+1),[0,0]))+n(7,(j-1)/2),...
sum(xor(c2(i,j:j+1),[1,1]))+n(15,(j-1)/2));
n(15,(j+1)/2)=min(sum(xor(c2(i,j:j+1),[1,0]))+n(8,(j-1)/2),...
sum(xor(c2(i,j:j+1),[0,1]))+n(16,(j-1)/2));
n(16,(j+1)/2)=min(sum(xor(c2(i,j:j+1),[0,1]))+n(8,(j-1)/2),...
sum(xor(c2(i,j:j+1),[1,0]))+n(16,(j-1)/2));
end
[a,l]=min(n(1:16,189)');
l3=(l/2)-floor(l/2);
if l3==0
u2(189)=1;
else
u2(189)=0;
end
for j=188:-1:1
l1=ceil(l/2);
l2=l1+8;
for h=1:16
if (h~=l1)&(h~=l2)
n(h,j)=10;
end
end
[a,l]=min(n(1:16,j)');
l3=(l/2)-floor(l/2);
if l3~=0
u2(i,j)=0;
else
u2(i,j)=1;
end
Página 150
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
end
function T=declasif(d,N_tramas);
for i=1:N_tramas
%__________Clase Ia____________%
%Clase de importancia 1:
T(i,6)=d(i,1);
T(i,53)=d(i,2);
T(i,109)=d(i,3);
T(i,165)=d(i,4);
T(i,221)=d(i,5);
%Clase de importancia 2:
T(i,5)=d(i,6);
T(i,12)=d(i,7);
T(i,17)=d(i,8);
%Clase de importancia 3:
T(i,4)=d(i,9);
T(i,11)=d(i,10);
T(i,16)=d(i,11);
T(i,22)=d(i,12);
T(i,43)=d(i,13);
T(i,99)=d(i,14);
T(i,155)=d(i,15);
Página 151
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
T(i,211)=d(i,16);
T(i,52)=d(i,17);
T(i,108)=d(i,18);
T(i,164)=d(i,19);
T(i,220)=d(i,20);
T(i,10)=d(i,21);
T(i,26)=d(i,22);
T(i,30)=d(i,23);
T(i,42)=d(i,24);
T(i,98)=d(i,25);
T(i,154)=d(i,26);
T(i,210)=d(i,27);
T(i,41)=d(i,28);
T(i,97)=d(i,29);
T(i,153)=d(i,30);
T(i,209)=d(i,31);
T(i,40)=d(i,32);
T(i,96)=d(i,33);
T(i,152)=d(i,34);
T(i,208)=d(i,35);
T(i,39)=d(i,36);
T(i,95)=d(i,37);
T(i,151)=d(i,38);
T(i,207)=d(i,39);
%Clase de importancia 4:
T(i,51)=d(i,40);
T(i,107)=d(i,41);
T(i,163)=d(i,42);
T(i,219)=d(i,43);
T(i,3)=d(i,44);
T(i,21)=d(i,45);
T(i,33)=d(i,46);
T(i,38)=d(i,47);
T(i,94)=d(i,48);
T(i,150)=d(i,49);
T(i,206)=d(i,50);
%___________Clase Ib____________%
T(i,25)=d(i,51);
T(i,29)=d(i,52);
T(i,45)=d(i,53);
T(i,101)=d(i,54);
Página 152
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
T(i,157)=d(i,55);
T(i,213)=d(i,56);
T(i,37)=d(i,57);
T(i,93)=d(i,58);
T(i,149)=d(i,59);
T(i,205)=d(i,60);
T(i,47)=d(i,61);
T(i,103)=d(i,62);
T(i,159)=d(i,63);
T(i,215)=d(i,64);
%Clase de importancia 5:
T(i,2)=d(i,65);
T(i,9)=d(i,66);
T(i,15)=d(i,67);
T(i,36)=d(i,68);
T(i,20)=d(i,69);
T(i,24)=d(i,70);
T(i,32)=d(i,71);
T(i,44)=d(i,72);
T(i,100)=d(i,73);
T(i,156)=d(i,74);
T(i,212)=d(i,75);
T(i,50)=d(i,76);
T(i,106)=d(i,77);
T(i,162)=d(i,78);
T(i,218)=d(i,79);
T(i,56:3:92)=d(i,80:92);
T(i,112:3:148)=d(i,93:105);
T(i,168:3:204)=d(i,106:118);
T(i,224:3:260)=d(i,119:131);
T(i,46)=d(i,132);
T(i,102)=d(i,133);
T(i,158)=d(i,134);
T(i,214)=d(i,135);
T(i,49)=d(i,136);
T(i,105)=d(i,137);
T(i,161)=d(i,138);
T(i,217)=d(i,139);
T(i,55:3:91)=d(i,140:152);
T(i,111:3:147)=d(i,153:165);
T(i,167:3:203)=d(i,166:178);
Página 153
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
T(i,223:3:232)=d(i,179:182);
%__________Clase II____________________%
T(i,235:3:259)=d(i,183:191);
%Clase de importancia 6:
T(i,1)=d(i,192);
T(i,8)=d(i,193);
T(i,14)=d(i,194);
T(i,28)=d(i,195);
T(i,31)=d(i,196);
T(i,35)=d(i,197);
T(i,34)=d(i,198);
T(i,13)=d(i,199);
T(i,19)=d(i,200);
T(i,18)=d(i,201);
T(i,23)=d(i,202);
T(i,48)=d(i,203);
T(i,104)=d(i,204);
T(i,160)=d(i,205);
T(i,216)=d(i,206);
T(i,54:3:90)=d(i,207:219);
T(i,110:3:146)=d(i,220:232);
T(i,166:3:202)=d(i,233:245);
T(i,222:3:258)=d(i,246:258);
T(i,7)=d(i,259);
T(i,27)=d(i,260);
end
function fichero2=guardar(T2);
for i=0:N_tramas-1
for j=1:260
f2(264*i+j+4)=T2(i+1,j);
end
end
for i=0:N_tramas-1
f2(264*i+1:264*i+4)=[1,1,0,1];
end
fid = fopen(fichero2,'w');
F2 = bin2str(f2');
Página 154
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
fprintf(fid,'%c',F2);
fclose(fid);
function fichero2=gsm(fichero,snr);
clear all;
%Primero abrimos el fichero de entrada y lo leemos
[f,F]=abrir(fichero);
%En p2,p1,p0 vamos a tener los bits de paridad de los 50 primeros bits de
%la trama:
[p2,p1,p0]=crc(d,N_tramas,N);
%En u ya vamos a tener reordenados los 189 bits que van a entrar al
%codificador convolucional
u=reord(d,p2,p1,p0,N_tramas,N);
%Modulación
Vgmsk=gmskmod(B,N_tramas);
%Añadimos ruido
Vgmsk=setsnr(Vgmsk,snr);
%Demodulación
B2=gmskdem(Vgmsk,N_tramas);
Página 155
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
fichero2=guardar(T2,N_tramas);
Página 156
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Apéndice 3.- ACRÓNIMOS Y ABREVIATURAS
Página 157
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Conferencia de Administraciones Postales y
de Telecomunicaciones Europeas
Página 158
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
M MS Mobile Station
Estación Móvil
MSC Mobile Switching Center
Centro de Conmutación de Móviles
Página 159
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
RPE Regular Pulse Exciting
Excitación por Pulsos Regulares
Página 160
Trabajo Final de Carrera Estudio y Simulación con Matlab de
Rafael Casañas Ávila la Interfaz de radio de GSM
Página 161