Chaîne de transmission GSM Simulation système sous ADS et analyse vectorielle Virgile Garcia Matthieu Gautier 1
SOMMAIRE 1 Prise en main du logiciel... 2 1.1 Les projets sous ADS... 3 1.2 Conception d un système sous ADS... 3 1.3 Simulation... 4 1.3.1 Les contrôleurs de simulation... 6 1.3.2 Harmonic Balance... 7 1.3.3 Circuit Enveloppe... 8 1.3.4 DATA FLOW simulation controller... 11 1.4 Analyse des résultats... 11 2 Application : génération d un signal RF modulé...13 2.1 Créer la schématique... 13 2.2 Etude de la source temporelle... 15 2.3 Etude de la source fréquentielle... 16 2.4 Etude du signal modulé... 17 3 Etude de signaux GSM...20 3.1 La modulation GMSK... 21 3.2 Etude des effets de la propagation du signal avec l analyseur de spectre vectoriel (en simulation)... 21 3.3 Analyse d une trame TDMA... 26 3.4 Analyse d un signal GSM pour une liaison montante et descendante.... 34 1 Prise en main du logiciel Cette partie est une présentation concise de l utilisation du logiciel et de ses possibilités. 2
1.1 Les projets sous ADS A l ouverture du logiciel la fenêtre principale suivante apparaît. figure 1. fenêtre principale C est à partir de cette fenêtre que les projets sont gérés. ADS utilise des répertoires appelés projets pour organiser et stocker les données générées lors de la création, la simulation et l analyse de systèmes. Un projet contient par exemple les circuits, les layouts, ou encore tous les résultats de simulations effectuées... Lors de l ouverture d un projet, la fenêtre suivante s ouvre. Projet figure 2. fenêtre projet. Le projet est un répertoire défini avec la syntaxe «nom_prj». Dans chaque projet des sous répertoires sont créés (voir figure 2), chacun d entre eux correspondant à un type de fichier (circuit, résultat de simulation ). 1.2 Conception d un système sous ADS Apres avoir ouvert un projet la conception d un système peut être constituée d une seule 3
structure ou bien dans le cas de système complexe, de plusieurs systèmes incorporés comme un sous réseau dans un fichier. Pour créer un système, il faut ouvrir une fenêtre appelée «schématique». Pour cela, il suffit de cliquer sur l icône correspondant («New Schematic Window») de la fenêtre principale, ou bien sur l onglet «window/new schematic» de cette même fenêtre. Il est aussi possible de créer un nouveau design dans l onglet file de la fenêtre principale («File/New Design»). Dans ce dernier cas, à l ouverture de la fenêtre, deux types de «schématiques» sont possibles : schematic RF/analog Design (traitement analogique) ou schematic DSP Design (analyse numérique). Dans cette fenêtre il est possible de : Créer et modifier des circuits et des «layout» Ajouter des variables et des équations Placer et configurer des composants, des contrôleurs de simulations Générer un layout à partir d un système et inversement Ajouter des commentaires Une fois la «schématique» ouverte, il est alors possible de placer des composants, des sources de mesures, des contrôleurs de simulations Pour cela, il suffit de chercher l élément voulu dans la bibliothèque correspondante. Chacun d entre eux dispose d un certain nombre de paramètres réglables. Lorsqu un élément est placé sur la schématique une définition de celui-ci est disponible en appliquant un double clic sur cet élément puis en sélectionnant le bouton «Help». Bibliothèque 1. Sélectionner un composant 2. Définir son orientation 3. Placer le composant 4. Définir ses paramètres figure 3. fenêtre schématique Une fois tous les éléments placés et correctement configurés, il faut les relier en plaçant des fils (bouton «insert wire»). 1.3 Simulation ADS propose des outils appelés contrôleurs pour simuler et optimiser un système. 4
La simulation d un système numérique (ex. DSP) nécessite l utilisation d un «Data Flow controller» qui se trouve dans la librairie «Common components» (icône «DF»). Pour une simulation analogique RF plusieurs contrôleurs variables sont disponibles suivant le type d analyse que l on souhaite obtenir (AC, DC, paramètre[s], temporel, fréquentiel et ils se trouvent dans les bibliothèques «simulation-x»). 1. Cliquer et placer le contrôleur 2. Cliquer et configurer les paramètres 3. Cliquer pour simuler figure 4. simuler un système Lorsqu une simulation est exécutée, son avancement et les éventuels messages d erreurs sont affichés dans la fenêtre «Status/Summary» : figure 5. résultat de la simulation 5
1.3.1 Les contrôleurs de simulation Un ou plusieurs contrôleurs peuvent être placés dans un «design» suivant le type de simulation recherché. Ces éléments permettent de sélectionner la plage temporelle ou fréquentielle de simulation ainsi que le type de résultats obtenus. La liste des principaux contrôleurs disponibles est décrite dans le tableau suivant : Type de contrôleur description Utilisation typique Data Flow simulation Analyse de signaux numériques et controller temporels lors d une simulation DSP utilisant le simulateur ptolemy DC simulation Il exécute un contrôle et une analyse du controller comportement en régime continu AC simulation Permet d obtenir la fonction de transfert controller en petit signal tel que le gain ou le bruit en tension et courant S parameter simulation Fournit les paramètres S linéaires, controller paramètres de bruit linéaires, transimpédance et transmittance Harmonic balance Utilise des techniques non linéaires de simulation controller balance harmonique pour trouver un état stable du système dans le domaine fréquentiel Circuit enveloppe Utilise une combinaison des techniques simulation controller d analyse dans le domaine temporel et fréquentiel pour rapporter une analyse rapide et complète d un signal complexe, tel qu un signal RF avec une modulation complexe LSSP simulation Etend l analyse en paramètres S pour de controller forts signaux pour visualiser le comportement non linéaire tous les systèmes type DSP Tous les systèmes RF/analog filtres, amplificateurs filtres, oscillateurs, amplificateurs mélangeur, oscillateur, récepteur, ampli. de puissance mélangeur, oscillateur, Ampli. de puissance, récepteur, amplificateur de puissance 6
Transient/ Simulation controller Résout un système non linéaire dans le domaine temporel utilisant des modèles simplifiés tenant compte de la dépendance en fréquence du comportement des éléments distribués mélangeur, ampli de puissance, «switch» Au cours du TP vous utiliserez surtout les contrôleurs «DataFlow», «Harmonic Balance» et «circuit enveloppe». 1.3.2 Harmonic Balance Le contrôleur de simulation «Harmonic Balance» (HB) est un outil d analyse dans le domaine fréquentiel pour étudier les distorsions dans les circuits et systèmes non linéaires. Pour une étude HB, il faut impérativement utiliser des sources contrôlées en fréquence qui se trouvent dans la bibliothèque «frequency domain source». figure 6. contrôleur HB Il faut définir les fréquences que l on souhaite étudier et l ordre des harmoniques pris en compte. Il permet de calculer les composantes fréquentielles contenues dans les signaux en tension et courant du circuit, d évaluer la distorsion due aux harmoniques et à l inter modulation et les performances en termes de bruit non linéaire. «Harmonic Balance» présente de nombreux avantages par rapport à une analyse avec le contrôleur «transient». En effet, HB capture directement la réponse spectrale stationnaire alors que la méthode traditionnelle en temporel nécessite le besoin d intégrer beaucoup de périodes de la sinusoïde à la fréquence la plus basse pour atteindre l état stable. Il résout assez rapidement les problèmes aux hautes fréquences alors que «transient» ne peut pas les traiter ou alors avec un coût temporel excessif. Enfin, il est plus approprié pour étudier les phénomènes hautes fréquences où les modèles sont élaborés «pour et dans» le domaine fréquentiel. 7
1.3.3 Circuit Enveloppe Ce contrôleur est le plus approprié à une analyse rapide et complète d un signal complexe tel qu un signal numérique modulé. Il combine les caractéristiques dans les domaines fréquentiels et temporels en permettant aux ondes en entrée d être représentées comme la somme d une porteuse RF décrite et simulée dans le domaine fréquentiel et une enveloppe de modulation représentée quant à elle dans le domaine temporel. figure 7. contrôleur simulation enveloppe. Le processus d analyse avec le contrôleur d enveloppe est le suivant : 1) Transformation du signal d entrée figure 8. définition du signal d entrée Chaque signal modulé peut être représenté comme une porteuse modulée par une enveloppe, A(t)*exp j[f(t)]. L amplitude et la phase de l enveloppe échantillonnée sont utilisées comme signal d entrée pour l analyse harmonique balance. 8
2) Analyse dans le domaine fréquentiel figure 9. Analyse dans le domaine fréquentiel. L analyse harmonique balance est exécutée à chaque pas temporel. Cette procédure crée une succession de spectre qui caractérise la réponse du circuit pur chacun des points temporels. 3) Analyse dans le domaine temporel figure 10. Analyse dans le domaine temporel. «Circuit Enveloppe» fournit une solution complète de l état non stationnaire du circuit par une série de Fourier avec des coefficients temporels variables. 4) Extraction des données du domaine temporel figure 11. extraction des données du domaine temporel. 9
En sélectionnant l harmonique désirée dans le spectre (fc dans l exemple), il est possible d analyser : L amplitude en fonction du temps (démarrage d un oscillateur ) La phase en fonction du temps (fréquence instantanée d un VCO df/dt ) L amplitude et la phase en fonction du temps (constellation, BER,EVM ) 5) Extraction des données du domaine fréquentiel figure 12. extraction des données dans le domaine fréquentiel. En appliquant une transformée de Fourier du spectre temporel sélectionné, il est possible d analyser : -Le rapport de puissance du canal adjacent (ACPR) -Le rapport de la puissance de bruit (NPR) -L ordre supérieur d inter modulation Les étapes de la simulation sont les suivantes: -Définir la modulation du signal en bande de base -Prédéfinir les sources -Equations -Les données I et Q en fonction du temps pour les simulations DSP -Définir la fréquence de la porteuse RF, le pas temporel et la durée de la simulation -Calculer les coefficients de Fourier -Post-process et visualisation des résultats 10
Ou encore : -Définir le signal d entrée avec la modulation d amplitude de phase ou de fréquence, I et Q -Définir le pas temporel -Simuler et calculer les coefficients de Fourier temporel -Calculer les transformées de Fourier et visualiser le spectre en fréquence du signal (module, phase). 1.3.4 DATA FLOW simulation controller Ce contrôleur est utilisé pour contrôler le flux des signaux numériques et temporels pour toutes les simulations de systèmes numériques avec ADS. Il permet de contrôler la plage temporelle et le nombre de symboles simulés. figure 13. contrôleur de simulation Data Flow 1.4 Analyse des résultats Les résultats des simulations effectuées sont enregistrés dans le fichier «dataset» qui est stocké dans le répertoire data du projet. L icône «data display» permet d accéder à la fenêtre d analyse des résultats. Dans cette fenêtre, il est possible de tracer des graphes, d écrire des équations pour effectuer des calculs, utiliser des marqueurs et illustrer les analyses avec des annotations. La procédure à suivre pour ouvrir une fenêtre d analyse est représentée sur la figure 14 (voir page suivante). 11
1. Cliquer pour ouvrir la fenêtre data display 2. Cliquer et choisir le type de graphique 3. Sélectionner les données à tracer et les options du traceur figure 14. ouverture fenêtre d analyse. 12
2 Application : génération d un signal RF modulé Le but de cette application est de vous familiariser et de prendre en main le logiciel de CAO en concevant et en analysant un système simple. Pour cela il vous sera demandé de générer un signal RF avec une modulation pi/4dqpsk. Le système sera composé d une source en fréquence, d une source de donnée binaire pseudo aléatoire, d un modulateur et enfin d un filtre. L architecture du système est représentée sur la figure 15. figure 15. Topologie du système 2.1 Créer la schématique Dans un premier temps, créez un nouveau projet que vous nommez TP_source_mod et ouvrez la fenêtre schématique. Quand vous placez un élément, la signification de ses différents paramètres est disponible en cliquant sur l icône help de sa fenêtre de paramétrage. Vous accédez à cette fenêtre en appliquant un double clic sur l élément. A chaque fois que vous changez un paramètre, cliquez sur l icône «apply» pour le valider. Pour déplacer la zone de texte décrivant les paramètres d un élément appuyer sur F5 et sélectionner l élément. Placez les différents éléments nécessaires et pour chacun d entre eux examinez en détails leurs caractéristiques. Dans la bibliothèque «source-freq domain» sélectionnez la source P_1tone et placez cette source sur la schématique. Réglez les paramètres de la puissance et de la fréquence : 13
P_1Tone PORT1 Num=1 Z=50 Ohm P=polar(dbmtow(PRF),0) Freq=RFfreq P=polar(dbmtow(PRF),0), la fonction dbmtow convertit la puissance de dbm en watt. Les valeurs numériques de la puissance et la fréquence seront ensuite définies dans la déclaration des variables. Vous trouverez la source de donnée binaire pseudo aléatoire dans la bibliothèque «source-time domain» (DT LFSR). Réglez les paramètres suivants la configuration suivante : DT VtLFSR_DT SRC2 Vlow=-1 V Vhigh=1 V Rate=2*sym_rate Delay=0 nsec Taps=bin("10000000000000100") Seed=bin("10101010101010101") Rout=1 Ohm Cette source génère une séquence aléatoire de bits qui se répète après 8191 bits. Le modulateur au format pi/4dqpsk se trouve dans la bibliothèque «system mod/demod». PI4DQPSK_ModTuned MOD1 Fnom=RFfreq Rout=50 Ohm SymbolRate=sym_rate Delay=0 nsec Le filtre se trouve dans la bibliothèque «filter band pass» : BPF_RaisedCos BPF1 Alpha=0.5 Fcenter=RFfreq SymbolRate=sym_rate DelaySymbols=Filt_delay_syms Exponent=0.5 DutyCycle=100 SincE=no Apres avoir placé et paramétré les éléments, il faut alors déclarer les variables utilisées. Pour cela cliquez sur l icône «VAR» de la fenêtre «schématique» et ajoutez les variables 14
suivantes ci-après. Var Eqn VAR VAR1 numpts=256*10 sam_per_sym=10 tstep=1/(sym_rate*sam_per_sym) PRF=10 _dbm RFfreq=800 MHz Filt_delay_syms=15 sym_rate=24.3 khz Cela correspond à un débit de symboles de 24.3 khz, le nombre d échantillon temporel par symbole est 10. Le nombre de points simulés est représenté par numpts et le nombre de symbole simulés=numpts/sam_per_sym. 2.2 Etude de la source temporelle Dans un premier temps, vérifiez les données générées par la source pseudo aléatoire. Pour cela il est nécessaire d effectuer une simulation dans le domaine temporel, comme le montre la figure suivante. Vous trouverez le contrôleur de simulation temporel dans la librairie «Simulation-Transient» (Icône «trans»). figure 16. schématique de la simulation transient Pour désactiver un bloc cliquez sur l icône représentant un élément barré par une croix rouge puis cliquez sur l élément souhaité. Placez une charge de 50 ohms en sortie du système et les masses. Placez enfin une étiquette sur le fil ou l on veut visualiser la tension (pour cela cliquez sur l icône «wire pin label», tapez le nom Vload, cliquez sur le fil et le label se positionne sur le fil). Paramétrez le simulateur (time setup, freq ). Allez dans le menu 15
Output et cliquez sur add/remove, sélectionnez Vload et Add, cela permettra de visualiser la tension Vload. Une fois que vous avez tout paramétré correctement, sauvegardez (icône «save curent design») et simulez le système (icône «Simulate»). Ouvrez une fenêtre «display» et tracez Vload en fonction (vs sous ADS) du temps. Utilisez les marqueurs pour calculer le débit. Vérifiez que la séquence générée correspond bien à celle définie dans le modèle utilisé dans la «schématic» (débit, séquence ). Vous devez obtenir les résultats présentés sur la figure 17. figure 17. résultat de la simulation Pour visualiser les calculs dans un tableau, cliquez sur l icône qui se trouve sur la barre des taches à gauche de la fenêtre «display» et dans le menu «data set et equation», sélectionner équation. La liste des équations de votre fenêtre «display» apparaît alors dans le cadre et sélectionnez celles dont vous voulez visualiser le résultat dans le tableau. 2.3 Etude de la source fréquentielle Désactivez la source de données binaires et connectez la source fréquentielle, choisissez le simulateur harmonique balance, et vérifiez que la source émet bien une puissance de 10dBm à 800MHz. 16
figure 18. schématique de la simulation harmonique balance. 2.4 Etude du signal modulé Placez maintenant le modulateur DQPSK, et utilisez le simulateur d enveloppe. figure 19. schématique de la simulation d enveloppe. 17
Simulez le système et dans la fenêtre display data, visualisez le spectre de l enveloppe. Pour cela utilisez l éditeur d équation comme indiquez ci-dessous. Attention à bien respecter la syntaxe pour utiliser les variables (majuscules et minuscules). Eqn Eqn spectre=dbm(fs(vload[1],,,,,"kaiser")) = figure 20. spectre sans filtre. Sauvegardez ces résultats. Placez maintenant le filtre et relancez la simulation. Comparez le spectre avec le précédent. Tracez également la constellation. Eqn sym_rate = 24.3 khz Eqn spectre = dbm(fs(vload[1],,,,,"kaiser")) Eqn const = constellation(real(vload[1]),imag(vload[1]),sym_rate,) figure 21. résultats obtenus avec le filtre. 18
Calculez la puissance sur une plage de 40 KHz puis la DSP, pour cela utilisez la fonction chanel_power_vr (une définition des fonctions est disponible dans la fenêtre de l éditeur d équation, en cliquant sur «functions help»). Attention la fonction chanel_power_vr ne donne pas directement la DSP! Commentez et concluez. 19
3 Etude de signaux GSM Dans cette partie, vous analysez la transmission de signaux GSM à l aide d exemples déjà modélisés sous ADS. Certaines questions vous guideront dans cette partie mais à vous de faire preuve d initiative et d analyser en détails ces exemples en apportant les modifications que vous jugerez utiles. Dans un premier temps vous étudierez la modulation GMSK puis vous regarderez plus précisément les canaux de transmission et l analyse en lien montant et descendant. Quelques rappels sur la norme GSM et la modulation GMSK sont indiqués ci-dessous. figure 22. norme GSM et DCS 20
3.1 La modulation GMSK Faites une copie du projet gsm_prj qui se trouve dans le répertoire examples\com_sys\gsm_prj sous votre répertoire utilisez la fonction Copy project de la fenêtre principale. Dans le répertoire «network», ouvrez les fichiers modem.dsn et «gsm_sys.dsn». Cet exemple présente la modulation GMSK. Regardez les différents éléments du système ainsi que leur configuration. Certains éléments sont des sous-systèmes (comme par exemple le modulateur), avec l icône suivant, vous pouvez accédez à ces sous systèmes. Vous commencerez par étudier la schématique nommée «modem». Analysez et commentez ensuite l évolution du signal pour les différentes étapes de la modulation. Enfin, étudiez le système GSM_sys. 3.2 Etude des effets de la propagation du signal avec l analyseur de spectre vectoriel (en simulation) Après avoir étudié en détail ce système, vous remplacerez la liaison filaire entre l émetteur et le récepteur par un système prenant en compte la propagation du signal entre ces éléments. Dans la bibliothèque «antennas & Propagation», sélectionnez les éléments suivants : «Antbase, Prop GSM, AntMob» et positionnez les sur la schématique comme indiqué sur la figure 16. Vous trouverez l analyseur de spectre VSA_89600_1_sink dans la bibliothèque «Instruments». 21
figure 23. schématique avec prise en compte de la propagation du signal. Paramétrez l antenne de la BTS avec un gain de 15 dbi et l antenne mobile avec un gain de 4 dbi. Pour la propagation commencez par regarder l affaiblissement direct en espace libre, c'est-à-dire configurez l élément «PropGSM» avec «type=nomultipath» et «pathloss=yes». Simulez ce système pour différentes distances entre les 2 antennes 10, 100 et 1000 m. La distance se règle dans l élément «AntMobile».Concluez. Lors de la première simulation lisez la partie fonctionnement du VSA 89600 afin d utiliser correctement cet outil (page 23). Pour une distance fixe, vous pouvez regarder ce qui se passe pour différents modèles de propagation. 22
Fonctionnement du VSA_89600 : Lorsque vous lancez la simulation la fenêtre suivante s ouvre : figure 24. fenêtre du simulateur VSA Cet outil d analyse est un analyseur de spectre vectoriel identique à celui que l'on peut utiliser en mesure réelle. Le menu Input permet de sélectionner si vous travaillez sur une trace enregistrée (data from recording) ou en mesure directe (data from hardware). «Range Coupling» et «Trigger» sont des paramètres qui ne sont pas réglables en simulation, avec le VSA. En mesure, par contre, ils permettent de configurer l appareil en fonction du signal mesuré (amplitude, synchronisation.) Le menu MeasSetup permet de configurer la mesure : fréquence centrale, span (plage de mesure) RBW (résolution), moyennage. Il est aussi possible dans ce menu de démoduler le signal (cf partie 3-3). Le menu Display permet de paramétrer la fenêtre d affichage. Le menu Trace permet de choisir le type de graphique tracé. 23
Le menu Marker permet de positionner des marqueurs et d utiliser des fonctions de calculs. Affichez une seule fenêtre d analyse à l écran («single») et sélectionnez le spectre. Pour cela cliquez sur Trace/data/spectrum. Positionnez le pointeur de la souris sur le graphe et cliquez sur le bouton droit et Y auto scale. Puis dans le menu MeasSetup réglez le span à 2 MHz, le nombre de point de mesure à 3200 et la résolution à 3KHz. Placez un marqueur sur le pic (menu Markers/search/peak). Mesurez la puissance sur une bande de 200 khz, la bande passante occupée et le rapport de puissance avec les canaux adjacents. Pour cela allez dans le menu Markers/calculation, une fenêtre s ouvre, configurez les trois calculs de la manière suivante : 24
figure 25. fenêtre de paramétrage des calculs Une fois ces paramètres réglés vous devez obtenir l écran suivant avec le spectre et les résultats des calculs en dessous de la courbe. GSM). figure 26. spectre avec l OBW et l ACPR Comparez les résultats de l ACPR avec la norme GSM (cf figure 27 tableau norme 25
figure 27. ACPR norme GSM Rajoutez un modèle de propagation urbain et relancez les mêmes simulations (pour ces 3 distances). Que constatez-vous? A une distance fixe, (par exemple 500m) vous pouvez comparer le spectre pour différents modèles de propagation. 3.3 Analyse d une trame TDMA Rappel : Définition des slots et des trames pour la norme GSM. figure 28. définition des trames GSM. 26
Copiez le projet ads2003c\examples\gsm\measurement_tch (utilisez copy project) sous votre répertoire. Les deux pages suivantes représentent la schématique complète du système. 27
28
29
Avant d analyser ce système, regardez comment la trame est constituée (durée des slots, composition des slots ). Simulez le système pour différentes configurations (en désactivant certains slots). Lors de la simulation vous visualiserez le diagramme de l œil et la constellation directement sur des fenêtres de visualisation. Une fois la simulation terminée ouvrez les fichiers data set correspondant et analysez le spectre et le signal en bande de base. Commentez les résultats. L analyse du signal va maintenant être effectuée en démodulant le signal à l aide de l analyseur VSA89600. Modifiez la schématique comme indiqué sur la figure 29 suivante : figure 29. schématique modifiée Effectuez la simulation, la fenêtre d analyse du VSA 89600 s ouvre. Dans le menu MeasSetup, sélectionnez Demodulator/DigitalDemod. Ensuite toujours dans le menu MeaSetup cliquez sur Demod properties, la fenêtre de paramétrage de la démodulation apparaît. 30
Dans Format, cliquez sur Preset to Standard et selectionnez cellular/gsm. Dans Search décochez Pulse Search et activez Sync search. figure 30. fenêtre de paramétrage de la démodulation. Changez l affichage en choisissant 4 fenêtres avec la configuration grid 2x2. Normalement vous devez obtenir l écran suivant avec la constellation, le spectre, le vecteur erreur et un tableau récapitulatif de la qualité de la transmission (erreur de phase, amplitudes ). figure 31. fenêtre d analyse du simulateur. 31
Les tableaux suivants présentent quelques définitions des calculs effectués par le logiciel. Pour plus de détails sur le fonctionnement du 89600, une aide est disponible en cliquant sur Help/tutorials. 32
Regardez les différents types de diagrammes disponibles. 33
3.4 Analyse d un signal GSM pour une liaison montante et descendante. Dans cette partie, vous étudierez deux sources GSM. La première génère un signal au format GSM d une liaison montante (mobile vers station de base), la seconde délivre un signal suivant le format descendant. Créez un nouveau projet. Analyse de la voie montante : Dans la fenêtre «schématique», prenez la source GSM qui se trouve dans : DesignGuide\RFsystem\Additional Analog/RF Sources\ GSM/EDGE \reverse Link (GSM) (barre des taches en haut de la fenêtre schématique) Expliquez le fonctionnement de ce composant. Un descriptif de ce composant est détaillé pages 35-36 Ouvrez la fenêtre d analyse et les différentes courbes et équations. Simulez le système pour différentes configurations (avec et sans saut de fréquences, différents trafics ) 34
Component Name: GSM_EDGE_Uplink_GMSK_Src Parameter(s): (name: description, type, range of usage) Carrier_Freq: The center frequency of the output RF spectrum (if frequency hopping is not used, Carrier_Freq is the carrier frequency of the modulated signal), real. Pav: Relative average output power of the modulator, real. Slot_x: Specifies whether a data burst is to be transmitted within slot x of each frame. Use a 1 for a full-rate channel, 2 for a halfrate channel on sub-channel 0, 3 for a half-rate channel on subchannel 1, and 0 for no traffic, integer, >= 0 and <= 3. TSC_Num: The training sequence code that is inserted into each data burst, integer, >= 0 and <= 7. Symbol_Rate: The modulation symbol rate. This design and its sub-designs expect a symbol rate of 270.8333... ksym/s, real, > 0. Frequency_Hop: Enables or disables frequency hopping, string, "Yes" or "No". Mobile_Allocation: Specifies the number of RF channels utilized for frequency hopping, integer, >= 1 and <= 64. Channel_Spacing: The frequency difference (measured in terms of 200 khz channels) between the channels making up the Mobile_Allocation, integer, > 1. Hopping_Sequence_Num: The hopping sequence number, integer, >= 0 and <= 63. Mobile_Allocation_Offset: The RF channel index offset for this mobile, integer, >= 0 and <= (Mobile_Allocation - 1). Delay_Time: The first TDMA frame begins precisely 6 modulation symbol periods after Delay_Time, real, >= 0. Input(s): None. Output(s): Modulated GMSK signal, ports 1 and 2. Description: GSM_EDGE_Uplink_GMSK_Src generates a TDMA GMSK modulated user/mobile station (MS) signal. This component is intended for use with envelope simulations. GSM utilizes an 8 slot frame to implement TDMA. Each slot has a duration of 156.25 symbol periods. The slots of a frame are identified as slot zero through seven. A single physical channel is equivalent to the same slot of each frame being utilized to transmit a data burst. A MS may be allocated one or more physical channels, depending upon the uplink data bandwidth required by the MS. The 156.25 symbol periods of a slot include a guard period that is at least 8.25 symbol periods in duration and tail bits/symbol periods that precede and follow the portion of the slot during which useful data is transmitted. See section 5 of [1] for an overview of the TDMA aspect of the GSM system. In regard to this component, the number of physical channels that will form the transmitted MS signal depends upon the Slot_x parameters. If the Slot_x parameter is set to 1, a full-rate traffic channel is allocated to slot x. If Slot_x is set to 2 or 3, a half-rate traffic channel is allocated to slot x, with a 2 corresponding to sub-channel 0 and a 3 to subchannel 1. If Slot_x is set to 0 no traffic is allocated to slot x. Although the GSM system utilizes four different types of data bursts for transmission during a slot (namely: Normal, Frequency Correction, Synchronization, and Access Bursts), this component only implements a Normal Burst. See section 5.2 of [2] (and the GSM_EDGE_Uplink_GMSK_IQ design) for more information. The GSM system utilizes channels having a bandwidth of 200 khz. If frequency hopping is not enabled, the Carrier_Freq parameter specifies the carrier frequency of the generated signal. If frequency hopping is enabled, the carrier frequency of the generated signal changes from frame to frame in accordance with a frequency hopping algorithm - see section 6 of [1] for an overview of frequency hopping and section 6.2 (specifically, 6.2.3) for details of the frequency hopping algorithm. The number of channels utilized when frequency hopping is enabled is determined by the Mobile_Allocation parameter. For example, if the Mobile_Allocation parameter is set to N, the transmitted signal will hop amongst N 200 khz wide channels whose centre frequencies are separated from one another by 200 khz x Channel_Spacing. If N is an even number, the Carrier_Freq parameter specifies the mid-point of the band of N channels; whereas, if N is an odd number, the Carrier_Freq parameter specifies the center frequency of the center channel of the band of N channels. The GSM_EDGE_Uplink_GMSK_Src component is able to operate with 4, 8 or 16 samples per modulated symbol. The number of samples per modulated symbol will depend upon the size of the time-step of the simulation. If frequency hopping is no enabled 4 samples per symbol can be used, however, if frequency hopping is enabled, 8 or 16 samples per symbol will have to be used, with reference to the value of the Mobile_Allocation parameter. A quadrature modulator is used here to implement GMSK. The GSM_EDGE_Uplink_GMSK_IQ sub-component generates the required I and Q modulating signals. See the GSM_EDGE_Uplink_GMSK_IQ sub-component for more information. GMSK modulation as implemented here is described in section 2 of [4]. Besides the limitations described above, this component does not implement the logical channel combinations and mapping described in section 6.5 of [2], or those aspects of the specifications describing the cordless telephone system (CTS) and COMPACT mode. All references are to Release 5 of the following GSM/EDGE specifications: [1] 3GPP TS 45.001 V5.3.0 (2002-04) "Physical Layer On the Radio Path" [2] 3GPP TS 45.002 V5.5.0 (2002-04) "Multiplexing and Multiple Access On the Radio Path" [3] 3GPP TS 45.003 V5.5.0 (2002-04) "Channel Coding" [4] 3GPP TS 45.004 V5.0.0 (2001-11) "Modulation" (Note: this document states that it is from Release 4, however its version indicates that it is from Release 5, and the 3GPP document status table states that it is from Release 5) [5] 3GPP TS 45.005 V5.3.0 (2002-04) "Radio Transmission and Reception" A helpful document for interpreting the above specifications is [6] 3GPP TR 21.995 V5.3.0 (2002-03) "Vocabulary for 3GPP Specifications" The timing of the output signal is referenced to the start of the first frame (or part thereof) transmitted. The start of the symbol period of the first symbol (the first tail bit/symbol period) of slot zero is precisely 6 symbol periods after Delay_Time. The power of the transmitted signal is ramped up and down over the course of three bit/symbol periods just before the start of the data burst and after the data burst. The Normal Burst has a duration of 148 symbol periods, including the tail bits/symbols at the start and end of the burst. During the ramp up and ramp down dummy bits are used to determine the output state of the modulator. The shape of the ramp up and ramp down is derived by time windowing the modulator output with a raised cosine window. Each normal burst transmitted includes an embedded training sequence code. The same training sequence code is embedded within all bursts that are transmitted. The training sequence code is specified by the TSC_Num parameter and is selected from a family of 8 (indexed 0 through 7) different codes. See section 5.2 of [2]. The data portion of each normal burst is generated randomly using an independent identically distributed number gnerator. 35
Component Name: GSM_EDGE_Uplink_GMSK_IQ Parameter(s): (name: description, type, range of usage) SymRate: The modulation symbol rate. This design expects a symbol rate of 270.8333... ksym/s, real, > 0. Slotx: Specifies whether a data burst is to be transmitted within slot x of each frame. A value other than 0 will result in slot x containing a data burst, integer. TSCNum: The training sequence code number that is inserted into each data burst, integer, >= 0 and <= 7. FrequencyHop: Enables or disables frequency hopping, string, "Yes" or "No". MobileAllocation: Specifies the number of RF channels utilized for frequency hopping, integer, >= 1 and <= 64. ChannelSpacing: The frequency difference (measured in terms of 200 khz channels) between the channels making up the MobileAllocation, integer, > 1. HoppingSequenceNum: The hopping sequence number, integer, >= 0 and <= 63. MobileAllocationOffset: The RF channel index offset for this mobile, integer, >= 0 and <= (Mobile_Allocation - 1). DelayTime: The first TDMA frame begins precisely 6 modulation symbol periods after this time, real, >= 0. Input(s): None. Output(s): In-phase baseband GMSK signal, ports 1 and 2. Quadrature baseband GMSK signal, ports 3 and 4. Description: GSM_EDGE_Uplink_GMSK_IQ generates the in-phase and quadrature baseband signals that toegether form a baseband GSM TDMA GMSK modulated user/mobile station (MS) signal. This component is a sub-component of the GSM_EDGE_Uplink_GMSK_Src component that is intended for use with envelope simulations. See the notes accompanying the GSM_EDGE_Uplink_GMSK_Src design for more information. The operations performed within this component can be categorized using three broad categores - those operations that pertain to TDMA, those that pertain to FDMA, and those that pertain to GMSK signaling. The notes accompanying the GSM_EDGE_Uplink_GMSK_Src design give an overview of the TDMA and FDMA aspects of the RF GMSK modulated signal that it produces. Since the GSM_EDGE_Uplink_GMSK_Src design performs quadrature modulation using a fixed carrier frequency (i.e. frequency hopping is implemented at baseband, not during modulation/upconversion), all of the same TDMA and FDMA aspects apply to the complex baseband GMSK signal formed by the in-phase and quadrature outputs of this component. The primary TDMA elements are implemented using: an 8 element array that is used to determine whether data is to be transmitted during each of the 8 slots of a frame; three alternative 26 element arrays that are used to determine whether data is to be transmitted during each of the 26 frames of a 26 frame multiframe; a raised cosine window at port 6 of the FDD7P component to ramp the output signals' amplitude on and off during a period of 3 symbols prior to and following the 148 symbols of a burst; a time-step counter (that is reset after each frame) from which a symbol trigger and counter, slot trigger and counter, and frame counter are derived and used to control the signal generation. As stated, frequency hopping is implemented by shifting the spectrum of a baseband GMSK signal to the appropriate location in the spectrum according to the frequency hopping algorithm - see section 6.2.3 of [2]. The complete algorithm is implemented. The algorithm utilizes the frame number associated with each TDMA frame as described in sections 3.3.2.2.1 and 4.3.3 of [2]. It is assumed that the first TDMA frame is frame number (FN) zero. Moreover, it is assumed that the output of the frequency hopping sequence algorithm, namely the Mobile Allocation Index (MAI) has a one-to-one, from lowest frequency to highest frequency, correspondence with each of the channels that make up the MobileAllocation. That is, if MobileAllocation is set to N, the zero'th channel is the lowest of the N channels that make up the band of channels amongst which frequency hopping may occur, with the N-1 channel being the highest channel in the band (MAI takes on a value between 0 and N-1). The actual spectrum shifting of the baseband GMSK signal is carried out using a complex multiplication using the derived MAI in combination with the ADS global variable 'time'. GMSK modulation for GSM is described in section 2 of [4]. The specification provides for differential encoding, filtering using a Gaussian pulse shape and frequency modulation by the aggregate phase formed at the output of the Gaussian pulse shaping filter. In place of a frequency modulator, it is possible to use a quadrature modulator to form the same modulated signal. Furthermore, since the Gaussian filter has a finite length, its output can be determined using a finite number of input bits to form an address into a look-up table of prototype waveforms. For instance, see the ADS GSM signal processing component GSM_Rom.dsn, as well as: A. Bodas & K. Feher, "Low Complexity GSM Modulator for Integrated Circuit Implementation" 1996 Proceedings Ninth Annual IEEE International ASIC Conference and Exhibit 103, A.E. Jones & J.G. Gardiner, "Generation of GMSK Using Direct Digital Synthesis" 1992 IEE Colloquium on Implementations of Novel Hardware for Radio Systems 7/1, and Yik-Chung Wu & Tung-Sang Ng, "New Implementation of a GMSK Demodulator in Linear Software Radio Receivers" vol. 2, 2000 The 11th IEEE International Symposium on Personal, Indoor and Mobile Communications 1049. The starting point for the GMSK modulator is the formation of the bit stream that is to be transmitted during a slot that is active. The bit stream is derived with the aid of an array that forms a template of a normal burst. The template contains the bits that are fixed for every burst, namely: the dummy bits that precede and follow the tail bits of the burst, the tail bits themselves, and the Training Sequence Code bits as specified by the TSCNum parameter. The data bits of the burst are generated by an indepedent identically distributed random number generator that produces zeros and ones with equal probability. The data bits are stored for the duration of a symbol period at port 3 of the FDD7P component. The data bits are differentially encoded, with the resultant bits stored in-turn for the duration of a symbol period at port 4 of the FDD7P component. Using the current differentially encoded bit, and the past four encoded bits, a 5 bit index is generated and stored for the duration of a symbol period at port 7 of the FDD7P component. Using this 5 bit index a base address is formed to reference a prototype waveform representing the aggregate phase of 5 consecutive symbols over the course of the symbol period of the center symbol of the 5 symbols. To this 5 symbol aggregate phase must be added the contribution due to the symbols that preceded the current 5 symbol block. This contribution is calculated once per symbol period and is stored at port 5 of the FDD7P component. Once the aggregate phase is determined, it is used to calculate the amplitude of the in-phase and quadrature components that together form the baseband GMSK signal and appear at ports 1 and 2, respectively, of the FDD7P component. All references are to Release 5 of the following GSM/EDGE specifications: [1] 3GPP TS 45.001 V5.3.0 (2002-04) "Physical Layer On the Radio Path" [2] 3GPP TS 45.002 V5.5.0 (2002-04) "Multiplexing and Multiple Access On the Radio Path" [3] 3GPP TS 45.003 V5.5.0 (2002-04) "Channel Coding" [4] 3GPP TS 45.004 V5.0.0 (2001-11) "Modulation" (Note: this document states that it is from Release 4, however its version indicates that it is from Release 5, and the 3GPP document status table states that it is from Release 5) [5] 3GPP TS 45.005 V5.3.0 (2002-04) "Radio Transmission and Reception" A helpful document for interpreting the above specifications is [6] 3GPP TR 21.995 V5.3.0 (2002-03) "Vocabulary for 3GPP Specifications" 36
Analyse de la voie descendante : Ouvrez un nouveau projet. Dans la fenêtre «schématique», prenez la source GSM qui se trouve dans : DesignGuide\RFsystem\Additional Analog/RF Sources\ GSM/EDGE \Forward Link (GSM). La principale différence entre la voie montante et le voie descendante est la présence d un signal balise (BCCH) émis par la station de base pour se synchroniser avec un mobile. La description des éléments utilisés dans ce système se trouve sur les 3 pages suivantes. 37
Component Name: GSM_EDGE_Downlink_GMSK_Src Parameter(s): (name: description, type, range of usage) Carrier_Freq: The center frequency of the output RF multicarrier signal, real. Pav: Relative average output power of the modulator, real. BCCH_Channels: The number of BCCH physical channels (slots) to be transmitted. The BCCH physical channels are always associated with the C0 RF carrier and utilize, in order, slot 0, 2, 4 and 6, depending upon the number of BCCH physical channels, integer, >= 0 and <= 4. BCCH_Gain: Relative gain of BCCH physical channel(s) and dummy bursts on C0, real, >= 0.0. C0_Channel_Number: Index of the RF channel for the C0 (BCCH carrier) RF carrier, integer, >= 0 and <= (Mobile_Allocation - 1). Slot_Usage_BCCH_Tr0: An 8 element array that specifies whether a data burst (traffic) is to be transmitted using each of the physical channels (slots) associated with the Tr0 group of traffic channels. A value other than 0 will result in the associated slot being filled with a data burst and having a relative gain as specified by the value entered. Note: Slots 0, 2, 4, or 6 may be specified to be filled with data bursts if not otherwise allocated for BCCH data, 8 element real array, each element >= 0.0. Slot_Usage_Trx: An 8 element array that specifies whether a data burst (traffic) is to be transmitted using each of the physical channels (slots) associated with the Trx group of traffic channels. A value other than 0 will result in the associated slot being filled with a data burst having a relative gain as specified by the value entered, 8 element real array, each element >= 0.0. TSC_Num: The training sequence code that is inserted into each data burst, integer, >= 0 and <= 7. Symbol_Rate: The modulation symbol rate. This design and its sub-designs expect a symbol rate of 270.8333... ksym/s, real, > 0. Frequency_Hop: Enables or disables frequency hopping, string, "Yes" or "No". Mobile_Allocation: Specifies the number of RF channels utilized for frequency hopping, integer, >= 1 and <= 64. Channel_Spacing: The frequency difference (measured in terms of 200 khz channels) between the channels making up the Mobile_Allocation, integer, > 1. Hopping_Sequence_Num: The hopping sequence number, integer, >= 0 and <= 63. Delay_Time: The first TDMA frame begins precisely 6 modulation symbol periods after this time, real, >= 0. R_Out: The output resistance of the signal source, real, >= 0.01. Input(s): None. Output(s): RF GMSK modulated multicarrier signal, ports 1 and 2. Description: GSM_EDGE_Downlink_GMSK_Src generates a TDMA multicarrier GMSK modulated base station (BS) signal. The output multicarrier signal can contain from 1 to 8 modulated carriers. This component is intended for use with envelope simulations. GSM_EDGE_Downlink_GMSK_Src has two sub-components: GSM_EDGE_Downlink_GMSK_BCCH_IQ.dsn, and GSM_EDGE_Downlink_GMSK_IQ.dsn. See the notes accompanying these sub-component designs files for more information regarding their operation. GSM utilizes an 8 slot frame to implement TDMA. Each slot has a duration of 156.25 symbol periods. The slots of a frame are identified as slot zero through seven. A single physical channel is equivalent to the same slot of each successive frame being utilized to transmit a data burst (note: this says nothing about the carrier frequency of the data burst). A mobile station (MS) may be allocated one or more physical channels, depending upon the required downlink data bandwidth. The 156.25 symbol periods of a slot include a guard period that is 8.25 symbol periods in duration and tail bits/symbol periods that precede and follow the portion of the slot during which useful data is transmitted. The frames of all downlink RF carriers are time aligned - see section 4.3.1 of [2]. See section 5 of [1] for an overview of the TDMA aspect of the GSM system. The number of physical channels that will form the transmitted BS signal depends upon the BCCH_Channels, SlotUsage_BCCH_Tr0 and SlotUsage_Trx parameters. The BCCH_Channels parameter determines the number of physical channels that are allocated to carry broadcast control channel (BCCH - a logical channel) information. The BCCH_Channels parameter will typically be set to one, however, up four physical channels can be allocated for BCCH information. These BCCH physical channels, whether one or up to four, are associated with an RF carrier identified as channel C0. The C0 RF carrier never hops. The BCCH channels are utilize slot(s) 0, 2, 4 and 6, depending upon the number of BCCH channels. Slot 0 is always allocated a BCCH channel first, then in order of decreasing priority, slot 2, 4 and 6. The BCCH channel that is assigned to slot 0, also includes synchronization and frequency correction information. The SlotUsage_BCCH_Tr0 and SlotUsage_Trx parameters determine the number of physical channels that are allocated for data traffic. A physical channel is allocated for data traffic by setting its corresponding element of one of the parameter arrays to a non-zero value - with the first element of each array corresponding to slot 0, the second to slot 1, and so on. The non-zero value entered also specifies the relative power of that traffic channel. Each...Trx group of traffic channels refers to a set of channels having a common RF carrier. The SlotUsage_BCCH_Tr0 parameter determines the status of the physical channel traffic group whose size is reduced due to the existence of any BCCH channels. That is, if the BCCH_Channels parameter is set to one, the value of the first element of the SlotUsage_BCCH_Tr0 array is ignored. Each physical channel that is allocated for data traffic results in a Normal Burst being transmitted. See section 5.2 of [2] (and the GSM_EDGE_Downlink_GMSK_BCCH_IQ and GSM_EDGE_Downlink_GMSK_IQ designs) for more information. The timing of the output signal is referenced to the start of the first frame (or part thereof) transmitted. The start of the symbol period of the first symbol (the first tail bit/symbol period) of slot zero is precisely 6 symbol periods after Delay_Time (recall that all downlink frames are time aligned). The power of the transmitted signal is ramped up and down over the course of three bit/symbol periods just before the start of each data burst and after the data burst. The Normal Burst has a duration of 148 symbol periods, including the tail bits/symbols at the start and end of the burst. During the ramp up and ramp down dummy bits are used to determine the output state of the modulator. The shape of the ramp up and ramp down is derived by time windowing the each burst that is to be transmitted with a raised cosine window. Each Normal Burst transmitted includes an embedded training sequence code. The same training sequence code is embedded within all bursts that are transmitted. The training sequence code is specified by the TSC_Num parameter and is selected from a family of 8 (indexed 0 through 7) different codes. See section 5.2 of [2]. The data portion of each normal burst is generated randomly using an independent identically distributed number gnerator. The GSM system utilizes channels having a bandwidth of 200 khz. The Mobile_Allocation parameter specifies the number of RF channels (each having a bandwidth of 200 khz) that are available for the downlink. The centre frequency of the RF channels are spaced 200 khz x Channel_Spacing apart. The Carrier_Freq parameter specifies the centre frequency of the band of RF channels. If N is an even number, the Carrier_Freq parameter specifies the mid-point of the band of N channels; whereas, if N is an odd number, the Carrier_Freq parameter specifies the center frequency of the center channel of the band of N channels. The band of RF channels is indexed from the channel lowest in frequency to the channel highest in frequency, with the index running from 0 to N-1. The C0_Channel_Number parameter specifies the index of the RF channel that is to be the C0 carrier. The BCCH physical channels are transported on the C0 carrier at all times, whether frequency hopping is enabled or disabled. If frequency hopping is NOT enabled, each group of traffic channels is associated with a single RF carrier, with the Tr0 group being matched with the C0 carrier, and each successive traffic group being matched with the next higher RF channel (rolling over to the channel having index 0 if index N-1 is exceeded). If frequency hopping is enabled, the carrier frequency of each physical channel (other than those associated with BCCH logical channels) changes from frame to frame in accordance with a frequency hopping algorithm - see section 6 of [1] for an overview of frequency hopping and section 6.2 (specifically, 6.2.3) for details of the frequency hopping algorithm. The physical channels of each traffic group that coincide with the BCCH physical channels, i.e. those physical channels occupying the same slot, hop over a frequency range that does NOT include the C0 carrier. Whereas, the physical channels of each traffic group (including all of the Tr0 traffic channels) that do not coincide with the BCCH physical channels hop over the entire frequency range defined by the Mobile_Allocation parameter. The GSM_EDGE_Downlink_GMSK_Src component is able to operate with 4, 8 or 16 samples per modulated symbol. The number of samples per modulated symbol depends upon the size of the time-step of the simulation. If frequency hopping is not enabled, 4 samples per symbol can be used, however, if frequency hopping is enabled, 8 or 16 samples per symbol will have to be used, with reference to the value of the Mobile_Allocation parameter. A quadrature modulator is used to implement GMSK. The GSM_EDGE_Downlink_GMSK_IQ and GSM_EDGE_Downlink_GMSK_BCCH_IQ sub-components generate the required I and Q modulating signals. See both of these sub-component for more information. GMSK modulation as implemented here is described in section 2 of [4]. Besides the limitations described above, this component does not implement the logical channel combinations and mapping described in section 6.5 of [2] (other than iv and vi of section 6.4.1 that apply to the BCCH channel(s)), or those aspects of the specifications describing the cordless telephone system (CTS) and COMPACT mode. All references are to Release 5 of the following GSM/EDGE specifications: [1] 3GPP TS 45.001 V5.3.0 (2002-04) "Physical Layer On the Radio Path" [2] 3GPP TS 45.002 V5.5.0 (2002-04) "Multiplexing and Multiple Access On the Radio Path" [3] 3GPP TS 45.003 V5.5.0 (2002-04) "Channel Coding" [4] 3GPP TS 45.004 V5.0.0 (2001-11) "Modulation" (Note: this document states that it is from Release 4, however its version indicates that it is from Release 5, and the 3GPP document status table states that it is from Release 5) [5] 3GPP TS 45.005 V5.3.0 (2002-04) "Radio Transmission and Reception" A helpful document for interpreting the above specifications is [6] 3GPP TR 21.995 V5.3.0 (2002-03) "Vocabulary for 3GPP Specifications" 38
Component Name: GSM_EDGE_Downlink_GMSK_BCCH_IQ Parameter(s): (name: description, type, range of usage) SymRate: The modulation symbol rate. This design expects a a symbol rate of 270.8333... ksym/s, real, > 0. BCCHChannels: The number of BCCH physical channels (slots) to be transmitted. The BCCH physical channels are always associated with the C0 RF carrier and utilize, in order, slot 0, 2, 4 and 6, depending upon the number of BCCH physical channels, integer, >= 0 and <= 4. BCCHGain: Relative gain of BCCH physical channel(s) and dummy bursts on C0, real, >= 0.0. SlotUsage: An 8 element array that specifies whether a data burst (traffic) is to be transmitted using each of the physical channels (slots) associated with the Tr0 group of traffic channels. A value other than 0 will result in the associated slot being filled with a data burst and having a relative gain as specified by the value entered. Note: Slots 0, 2, 4, or 6 may be specified to be filled with data bursts if not otherwise allocated for BCCH data, 8 element real array, each element >= 0.0. TSCNum: The training sequence code that is inserted into each data burst, integer, >= 0 and <= 7. FrequencyHop: Enables or disables frequency hopping, string, "Yes" or "No". MobileAllocation: Specifies the number of RF channels utilized for frequency hopping, integer, >= 1 and <= 64. ChannelSpacing: The frequency difference (measured in terms of 200 khz channels) between the channels making up the Mobile_Allocation, integer, > 1. HoppingSequenceNumber: The hopping sequence number, integer, >= 0 and <= 63. MobileAllocationOffset: The RF channel index offset for the C0 carrier and the Tr0 group of traffic channels, integer, >= 0 and <= (MobileAllocation - 1). Delay: The first TDMA frame begins and is output precisely 4 modulation symbol periods after this time, real, >= 0. Input(s): None. Output(s): In-phase baseband GMSK signal, ports 1 and 2. Quadrature baseband GMSK signal, ports 3 and 4. Description: GSM_EDGE_Downlink_GMSK_BCCH_IQ generates the in-phase and quadrature GMSK baseband signals that together form the GSM TDMA GMSK signal made up from those physical channels allocated for the transmission of broadcast control channel (BCCH) information and the physical channels of the Tr0 traffic channel group. This component is a sub-component of the GSM_EDGE_Downlink_GMSK_Src component that is intended for use in envelope simulations. See the notes accompanying the GSM_EDGE_Uplink_GMSK_Src design for more information. The operations performed within this component can be grouped into three broad categores - those operations that pertain to TDMA, those that pertain to FDMA, and those that pertain to GMSK signaling. The notes accompanying the GSM_EDGE_Uplink_GMSK_Src design provide an overview of the TDMA and FDMA aspects of the basestation multicarrier RF GMSK modulated signal that it produces. Since the GSM_EDGE_Uplink_GMSK_Src design performs quadrature modulation using a fixed carrier frequency (i.e. frequency hopping is implemented at baseband, not during modulation/upconversion), all of the TDMA and FDMA aspects that are described there apply to the complex baseband GMSK signal formed by the in-phase and quadrature outputs of this component. The primary TDMA elements are implemented by: an 8 element array that is used to determine whether data is to be transmitted during each of the 8 slots of a frame, and if so, the relative power at which the data is transmitted; a raised cosine window at port 6 of the FDD7P component to ramp the output signals' amplitude on and off during a period of 3 symbols prior to and following the 148 symbols of a burst; a time-step counter (that is reset after each frame) from which a symbol trigger and counter, slot trigger and counter, and frame counter are derived and used to control signal generation, GMSK modulation for GSM is described in section 2 of [4]. The specification provides for differential encoding, filtering using a Gaussian pulse shape and frequency modulation by the aggregate phase formed at the output of the Gaussian pulse shaping filter. In place of a frequency modulator, it is possible to use a quadrature modulator to form the same modulated signal. Furthermore, since the Gaussian filter has a finite length, its output can be determined using a finite number of input bits to form an address into a look-up table of prototype waveforms. For instance, see the ADS GSM library signal processing component 'GSM_ROM.dsn', as well as: A. Bodas & K. Feher, "Low Complexity GSM Modulator for Integrated Circuit Implementation" 1996 Proceedings Ninth Annual IEEE International ASIC Conference and Exhibit 103, A.E. Jones & J.G. Gardiner, "Generation of GMSK Using Direct Digital Synthesis" 1992 IEE Colloquium on Implementations of Novel Hardware for Radio Systems 7/1, and Yik-Chung Wu & Tung-Sang Ng, "New Implementation of a GMSK Demodulator in Linear Software Radio Receivers" vol. 2, 2000 The 11th IEEE International Symposium on Personal, Indoor and Mobile Communications 1049. The starting point for the GMSK modulator is the formation of the bit stream that is to be transmitted during a slot that is active. The bit stream is derived with the aid of an array that forms a template of the type of burst to be transmitted. The template contains the bits that are fixed for every burst - for instance, in the case of a normal burst: the dummy bits that precede and follow the tail bits of the burst, the tail bits themselves, and the Training Sequence Code bits as specified by the TSCNum parameter. The data bits of the burst are generated by an indepedent identically distributed random number generator that produces zeros and ones with equal probability. The data bits are stored for the duration of a symbol period at port 3 of the FDD7P component. The bits to be transmitted are differentially encoded in-turn, with each encoded bit being stored for the duration of a symbol period at port 4 of the FDD7P component. Using the current differentially encoded bit, and the past four encoded bits, a 5 bit index is generated and stored for the duration of a symbol period at port 7 of the FDD7P component. Using this 5 bit index a base address is formed to reference a prototype waveform that is the aggregate phase of 5 consecutive symbols over the course of the symbol period of the center symbol of the 5 symbols. To this 5 symbol aggregate phase must be added the contribution due to the symbols that preceded the current 5 symbol block. This contribution is calculated once per symbol period and is stored at port 5 of the FDD7P component. Once the aggregate phase is determined, it is used to calculate the amplitude of the in-phase and quadrature components of the baseband GMSK signal. The spectrum of this complex signal is then shifted, if necessary, to the C0 channel or to the desired channel as given by the frequency hopping algorithm. All references are to Release 5 of the following GSM/EDGE specifications: [1] 3GPP TS 45.001 V5.3.0 (2002-04) "Physical Layer On the Radio Path" [2] 3GPP TS 45.002 V5.5.0 (2002-04) "Multiplexing and Multiple Access On the Radio Path" [3] 3GPP TS 45.003 V5.5.0 (2002-04) "Channel Coding" [4] 3GPP TS 45.004 V5.0.0 (2001-11) "Modulation" (Note: this document states that it is from Release 4, however its version indicates that it is from Release 5, and the 3GPP document status table states that it is from Release 5) [5] 3GPP TS 45.005 V5.3.0 (2002-04) "Radio Transmission and Reception" A helpful document for interpreting the above specifications is [6] 3GPP TR 21.995 V5.3.0 (2002-03) "Vocabulary for 3GPP Specifications" a series of burst templates (normal, dummy, synchronization and frequency correction) for constructing the burst to be transmitted. The physical channels (slots) that transport BCCH information do not hop. As a result of having a fixed carrier frequency, the spectrum of these channels is shifted to the C0 frequency. The C0 frequency is determined by the value of the MobileAllocationOffset parameter. Frequency hopping is implemented by shifting the spectrum of the baseband GMSK signal over the duration of each slot to the appropriate location in the spectrum according to the frequency hopping algorithm - see section 6.2.3 of [2]. The complete algorithm is implemented. The algorithm utilizes the frame number associated with each TDMA frame as described in sections 3.3.2.2.1 and 4.3.3 of [2]. It is assumed that the first TDMA frame is frame number (FN) zero. Moreover, it is assumed that the output of the frequency hopping sequence algorithm, namely the Mobile Allocation Index (MAI) has a one-to-one, from lowest frequency to highest frequency, correspondence with each of the contiguous channels that make up the MobileAllocation (as is described in the notes accompanying the GSM_EDGE_Downlink_GMSK_Src design). The actual spectrum shifting of the baseband GMSK signal is carried out through a complex multiplication using the derived MAI in combination with the ADS global variable 'time'. 39
Variables : The BCCH channel of slot 0 implements the logical channel combination iv) given in section 6.4.1 of [2] - specifically: FCCH + SCH + BCCH + CCCH. The BCCH channel at slots 2, 4 and 6, if any, implement the logical channel combination vi) given in section 6.4.1 of [2] - specifically: BCCH + CCCH. See Table 3 of 9 in [2] for details regarding the mapping of these logical channels onto physical channels. The frame format for the iv) logical channel combination is shown in Figure 8a of [2]. The BCCH channel(s) have a 51 frame multiframe format - see Figure 8a of [2]. The appropriate burst format is determined based upon the current location within the 51 frame multiframe. The iv) logical channel combination consists of three different types of bursts: 1) Frequency Correction 2) Synchronization 3) Normal The last frame of the 51 frame multiframe is an idle frame, thus a Dummy burst is selected for transmission during this frame. The kburst variable is always assigned a burst, however, the assigned burst may or may not be transmitted. If the slot is part of a BCCH then kbcchburst is the burst selected. If the slot is a traffic channel a Normal burst is assigned. The default burst assigned to a slot is a Dummy burst. The trig_output variable is used to control whether the burst is transmitted. The trig_output variable is used to control whether a burst is transmitted during a slot. The controlling parameters are the type of channel/slot (i.e. BCCH or traffic channel) and the RF carrier. If the current RF channel is C0, the assigned burst is always transmitted. The BCCHs will always map to RF channel C0. The traffic channels, if any, will always map to CO if frequency hopping is disabled. If frequency hopping is enabled, the traffic channels will only periodically map to C0. Any slots that are not associated with a BCCH or a traffic channel (a dummy burst) are handled like a traffic channel - if frequency hopping is disabled these unassociated slots will always be transmitted since they are assigned to C0. When frequency hopping is enabled, these unassociated slots are transmitted only when their RF carrier is C0. The mobile allocation determines the range of permissible RF carriers. If frequency hopping is disabled, the C0ChannelNumber parameter is used for all channels (see kmaindex below). Using the range of permissible RF carriers, as given by kma, the carrier applicable to each slot is: a) C0ChannelNumber (kc0) for BCCH slots; b) C0ChannelNumber (kc0) for all slots, if frequency hopping is disabled; or c) determined by the frequency hopping algorithm. 40
Component Name: GSM_EDGE_Downlink_GMSK_IQ Parameter(s): (name: description, type, range of usage) SymRate: The modulation symbol rate. This design expects a a symbol rate of 270.8333... ksym/s, real, > 0. BCCHChannels: The number of BCCH physical channels (slots) to be transmitted. The BCCH physical channels are always associated with the C0 RF carrier and utilize, in order, slot 0, 2, 4 and 6, depending upon the number of BCCH physical channels, integer, >= 0 and <= 4. BCCHGain: Relative gain of BCCH physical channel(s) and dummy bursts on C0, real, >= 0.0. SlotUsage: An 8 element array that specifies whether a data burst (traffic) is to be transmitted using each of the physical channels (slots) associated with this group of traffic channels. A value other than 0 will result in the associated slot being filled with a data burst and having a relative gain as specified by the value entered, 8 element real array, each element >= 0.0. TSCNum: The training sequence code that is inserted into each data burst, integer, >= 0 and <= 7. C0ChannelNumber: Index of the RF channel for the C0 (BCCH carrier) RF carrier, integer, >= 0 and <= (MobileAllocation - 1). FrequencyHop: Enables or disables frequency hopping, string, "Yes" or "No". MobileAllocation: Specifies the number of RF channels utilized for frequency hopping, integer, >= 1 and <= 64. Channel_Spacing: The frequency difference (measured in terms of 200 khz channels) between the channels making up the MobileAllocation, integer, > 1. HoppingSequenceNumber: The hopping sequence number, integer, >= 0 and <= 63. MobileAllocationOffset: The RF channel index offset for this group of, traffic channels, integer, >= 0 and <= (MobileAllocation - 1). Delay: The first TDMA frame begins and is output precisely 4 modulation symbol periods after this time, real, >= 0. Input(s): None. Output(s): In-phase baseband GMSK signal, ports 1 and 2. Quadrature baseband GMSK signal, ports 3 and 4. Description: GSM_EDGE_Downlink_GMSK_IQ generates the in-phase and quadrature GMSK baseband signals that together form the GSM TDMA GMSK signal made up from those physical channels of the same traffic channel group. This component is a sub-component of the GSM_EDGE_Downlink_GMSK_Src component that is intended for use in envelope simulations. See the notes accompanying the GSM_EDGE_Uplink_GMSK_Src design for more information. The operations performed within this component can be grouped into three broad categores - those operations that pertain to TDMA, those that pertain to FDMA, and those that pertain to GMSK signaling. The notes accompanying the GSM_EDGE_Uplink_GMSK_Src design provide an overview of the TDMA and FDMA aspects of the basestation multicarrier RF GMSK modulated signal that it produces. Since the GSM_EDGE_Uplink_GMSK_Src design performs quadrature modulation using a fixed carrier frequency (i.e. frequency hopping is implemented at baseband, not during modulation/upconversion), all of the TDMA and FDMA aspects that are described their apply to the complex baseband GMSK signal formed by the in-phase and quadrature outputs of this component. The primary TDMA elements are implemented by: an 8 element array that is used to determine whether data is to be transmitted during each of the 8 slots of a frame, and if so, the relative power at which the data is transmitted; a raised cosine window at port 6 of the FDD7P component to ramp the output signals' amplitude on and off during a period of 3 symbols prior to and following the 148 symbols of a burst; a time-step counter (that is reset after each frame) from which a symbol trigger and counter, slot trigger and counter, and frame counter are derived and used to control signal generation, a burst template for constructing the burst to be transmitted. If frequency hopping is disabled, all of the physical channels of the traffic group are shifted to the RF channel specified by the MobileAllocationOffset parameter. If frequency hopping is enabled, the spectrum of the baseband GMSK signal is shifted over the duration of each slot to the appropriate RF channel according to the frequency hopping algorithm - see section 6.2.3 of [2]. The complete algorithm is implemented. The algorithm utilizes the frame number associated with each TDMA frame, as described in sections 3.3.2.2.1 and 4.3.3 of [2]. It is assumed that the first TDMA frame is frame number (FN) zero. The range of RF channels over which the traffic channels may hop depends upon whether a BCCH channel coincides with each traffic channel, i.e. they have the same slot number. For those traffic channels that have the same slot number as a BCCH channel, frequency hopping avoids the C0 RF channel. For those traffic channels that have a slot number that does not coincide with a BCCH channel, frequency hopping is over the entire range of RF channels as given by the MobileAllocation parameter. Thus, the traffic channels that have the same slot number as a BCCH channel hop over a range of RF channels that is one less than the range for the traffic channels that have a slot number that does not coincide with a BCCH channel. In either case, it is assumed that the output of the frequency hopping sequence algorithm, namely the Mobile Allocation Index (MAI) has a one-to-one, from lowest frequency to highest frequency, correspondence with each of the contiguous channels that make up the MobileAllocation, with the C0 RF channel being skipped in the case of the traffic channels that have a reduced hopping frequency range. The actual spectrum shifting of the baseband GMSK signal is carried out through a complex multiplication using the derived MAI in combination with the ADS global variable 'time'. GMSK modulation for GSM is described in section 2 of [4]. The specification provides for differential encoding, filtering using a Gaussian pulse shape and frequency modulation by the aggregate phase formed at the output of the Gaussian pulse shaping filter. In place of a frequency modulator, it is possible to use a quadrature modulator to form the same modulated signal. Furthermore, since the Gaussian filter has a finite length, its output can be determined using a finite number of input bits to form an address into a look-up table of prototype waveforms. For instance, see the ADS GSM library signal processing component 'GSM_ROM.dsn', as well as: A. Bodas & K. Feher, "Low Complexity GSM Modulator for Integrated Circuit Implementation" 1996 Proceedings Ninth Annual IEEE International ASIC Conference and Exhibit 103, A.E. Jones & J.G. Gardiner, "Generation of GMSK Using Direct Digital Synthesis" 1992 IEE Colloquium on Implementations of Novel Hardware for Radio Systems 7/1, and Yik-Chung Wu & Tung-Sang Ng, "New Implementation of a GMSK Demodulator in Linear Software Radio Receivers" vol. 2, 2000 The 11th IEEE International Symposium on Personal, Indoor and Mobile Communications 1049. The starting point for the GMSK modulator is the formation of the bit stream that is to be transmitted during a slot that is active. The bit stream is derived with the aid of an array that forms a template of the type of burst to be transmitted. The template contains the bits that are fixed for every burst - for instance, in the case of a normal burst: the dummy bits that precede and follow the tail bits of the burst, the tail bits themselves, and the Training Sequence Code bits as specified by the TSCNum parameter. The data bits of the burst are generated by an indepedent identically distributed random number generator that produces zeros and ones with equal probability. The data bits are stored for the duration of a symbol period at port 3 of the FDD7P component. The bits to be transmitted are differentially encoded in-turn, with each encoded bit being stored for the duration of a symbol period at port 4 of the FDD7P component. Using the current differentially encoded bit, and the past four encoded bits, a 5 bit index is generated and stored for the duration of a symbol period at port 7 of the FDD7P component. Using this 5 bit index a base address is formed to reference a prototype waveform that is the aggregate phase of 5 consecutive symbols over the course of the symbol period of the center symbol of the 5 symbols. To this 5 symbol aggregate phase must be added the contribution due to the symbols that preceded the current 5 symbol block. This contribution is calculated once per symbol period and is stored at port 5 of the FDD7P component. Once the aggregate phase is determined, it is used to calculate the amplitude of the in-phase and quadrature components of the baseband GMSK signal. The spectrum of this complex signal is then shifted, if necessary, to the C0 channel or to the desired channel as given by the frequency hopping algorithm. All references are to Release 5 of the following GSM/EDGE specifications: [1] 3GPP TS 45.001 V5.3.0 (2002-04) "Physical Layer On the Radio Path" [2] 3GPP TS 45.002 V5.5.0 (2002-04) "Multiplexing and Multiple Access On the Radio Path" [3] 3GPP TS 45.003 V5.5.0 (2002-04) "Channel Coding" [4] 3GPP TS 45.004 V5.0.0 (2001-11) "Modulation" (Note: this document states that it is from Release 4, however its version indicates that it is from Release 5, and the 3GPP document status table states that it is from Release 5) [5] 3GPP TS 45.005 V5.3.0 (2002-04) "Radio Transmission and Reception" A helpful document for interpreting the above specifications is [6] 3GPP TR 21.995 V5.3.0 (2002-03) "Vocabulary for 3GPP Specifications" 41
Variables : The kburst variable is always assigned a burst, however, the assigned burst may or may not be transmitted. If the current slot is a traffic channel, or, may be a traffic channel ('kslotstatus' of 2), a Normal burst is assigned, otherwise a Dummy burst is assigned to the slot. The variable 'outputcontrol' controls whether a burst is transmitted during a slot by setting its value so that the amplitude of the output signal is equal to zero or is proportional to the desired relative gain of the slot. If frequency hopping is not enabled, the slots allocated for data traffic are enabled by setting 'outputcontrol' to be equal to the desired relative gain as specified by the appropriate SlotUsage array element. If frequency hopping is enabled, the 'outputcontrol' variable must reflect that not only must the component output data bursts at the appropriate amplitude during the slots allocated for data traffic, but it must also output a dummy burst at the appropriate amplitude whenever the RF channel of a non-traffic slot coincides with the C0 carrier. When frequency hopping is enabled, eventhough the GSM_EDGE_Downlink_GMSK_BCCH_IQ sub-component is responsible for transmitting the BCCH channels, it AND this sub-component share the responsibility of ensuring that non-bcch channels on the C0 RF carrier are always filled with data bursts, whether traffic or dummy bursts. The mobile allocation determines the range of permissible RF carriers. If frequency hopping is disabled, the MobileAllocationOffset parameter determines the RF channel for all slots assigned data traffic. If frequency hopping is enabled, two alternative RF channel ranges exist, one for slots/physical channels that coincide with BCCH channels and one for slots/ physical channels that do not coincide with BCCH channels. In the former case, the RF channel range is equal in size to MobileAllocation, whereas, in the latter case, the RF channel range does not include the C0 RF carrier, i.e. one less channel that can be utilized for hopping. The kmaindexselect variable is assigned the appropriate RF channel index, either kmaindex, in the case of no frequency hopping and a non-bcch coincident slot in the case of frequency hopping, or kmaindex_radj, in the case of a BCCH coincident slot in the case of frequency hopping. The 'outputcontrol' variable is dependent upon the 'kslotstatus' array and the current RF channel ('kmaindexselect'), in combination with the amplitude assigned to each slot in the 'kslotgain' array. If frequency hopping is not enabled, the 'kslotgain' array alone is used to set the amplitude of the output signal - the relative gain for traffic channels being drawn from the SlotUsage array and for nontraffic channels being equal to zero. If frequency hopping is enabled, the 'kslotstatus' array elements will be either 0, 1 or 2, with a 2 indicating that the slot coincides with a BCCH channel, a 1 indicating that the slot is a traffic channel and a 0 indicating that the slot does not coincide with a BCCH channel, nor is it a traffic channel. If a slot is a traffic channel, whether coincident with a BCCH or not (i.e. a 'kslotstatus' of either 1 or 2), its corresponding element in the 'kslotgain' array is set to the desired relative gain for the channel. If a slot is not a traffic channel, whether coincident with a BCCH channel or not, its corresponding element in the 'kslotgain' array is set to zero. Using the above assignment procedure, 'outputcontrol' is equal to the appropriate 'kslotgain' element, except in the case of a slot that is not coincident with a BCCH channel and does not carry traffic (i.e. 'kslotstatus' of 0), and where frequency hopping results in transmission on the C0 RF carrier. In this exceptional case, the 'outputcontrol' variable must be assigned a value equal to the relative gain of the BCCHchannel ('BCCHGain'). 42
Annexe ADS : 43
44