Boîte à outils "Modnum"
eng - fr

Date de la dernière mise à jour
28 Juin 2013
Téléchargements
src : versions sources. win-32bits : binaires windows. lnx-32bits : binaires linux.
Qu'est ce ?
- "MODulations NUMériques" contient une librarie de calcul "open source"
pour la modélisation et la simulation des systèmes de communication.
- Cette boîte à outils propose des blocs et schémas Scicos ainsi que des fonctions
de modulations MDP/MAQ pour la construction de chaînes de communication.
- Des composants utilisés dans les systèmes de communication à étalement de spectre sont
aussi inclus (générateurs de séquences de Gold, PN et quasi-chaotiques).
- Cette boîte à outils dispose aussi de divers "oscilloscopes" Scicos, comme
un oscilloscope pour l'observation de diagrammes de l'oeil, de constellations
et un analyseur de spectres.
- Des schémas et des blocs constitutifs de synthétiseurs de fréquence à rapport
de division entier et fractionnaire (Détecteur phase/fréquence, OCT, modulateurs
Sigma-Delta et autres) sont fournis.
- Cette boîte à outils concerne aussi la simulation de systèmes chaotiques et
donne des schémas des systèmes de Chua, de Rössler, de Van Der Pol, et bien d'autres.
Nouveautés
6 Juin 2013 : Modnum_43 Beta
Modnum_43 Beta est disponible pour ScicosLab et Nsp.
Cette version inclut diverses corrections depuis la dernière version et le jeu complet des blocs Scicos et des
diagrammes de la boîte à outils pour la dernière version de Nsp que vous pouvez télécharger ici.
8 Septembre 2011 : Modnum_422 Mise à jour
Modnum_422 est disponible pour ScicosLab 4.4.1 en paquets binaires. Cette version inclut des corrections mineures.
20 Décembre 2009 : Modnum_422
Modnum_422 est disponible. Celà inclut des corrections mineures depuis la dernière version et fonctionne avec
ScicosLab
4.4 :
- Scripts builder ScicosLab/Scicos : amélioration des vérifications des versions ScicosLab/Scicos.
- Bloc Scicos Integrateur de Symbole : correction d'un bogue majeur.
- Palette Scicos Sinks : la taille des fenêtres peuvent maintenant être informées via les boîtes de dialogue.
- Script de simulation ScicosLab 'qpsk_teb_sim' : correction d'un bogue mineur.
10 Juillet 2009 : Modnum_421
Modnum_421 est disponible. Cette version inclut :
- Corrections majeures pour beaucoup de blocs Scicos
Cela concerne principalement de bonnes séquences d'appel sur les flags 1 et 2 dans les fonctions
de calcul. Cela est fait afin de respecter le formalisme Scicos pour la simulation des sous-systèmes
discrets. Des corrections ont aussi été faites à cause de divers problèmes en relation avec la génération
de code Scicos. Pour la prochaine version, les interfaces Scicos-Modnum seront testées avec le
'Centre de Tests Scicos'.
- Corrections mineures pour les interfaces ScicosLab
Les binaires Linux ont aussi été corrigés pour utiliser Modnum aussi bien avec l'interface x11
de ScicosLab qu'avec l'interface gtk.
- Réorganisation des palettes
Une nouvelle palette 'Signal' apparait dans Modnum.
Elle est dédicacée au traitement numérique du signal. La plupart des blocs qui
sont dans cette palette sont basés sur le travail de la boîte à outils de traitement
du signal de Scilab par C.Bunk.
- Nouveaux blocs Scicos
Trois nouveaux blocs sont ajoutés pour cette version :
- Dec2Bin
Ce bloc est un convertisseur de nombre entiers en bits.
Il est dans la palette Integer.
- Bin2Dec
C'est le bloc qui va de pair avec le bloc Dec2Bin.
Il est dans la palette Integer.
- Correlation
Ce bloc peut-être utilisé pour réaliser des traitements numériques
sur des signaux discrets.
Il est fourni dans la palette Signal.
- Extension de la licence GPL pour tous les fichiers sources en C.
L'extention de la licence GPL à tous les fichiers de la boîte à outil sera faîte
dès que possible pour permettre d'inclure Modnum dans des projets GPL et vice verca.
- Possibilité d'utiliser le logiciel GPL FFTW.
Cela est possible via le script configure (version source seulement) : par défaut celui-ci
cherche la librairie FFTW. Si celle-là est trouvée, alors les blocs FFT, convolution et analyseur
de spectre utiliseront cette librairie au lieu d'utiliser les fft standards de ScicosLab.
Pour cette version, les binaires de Modnum utilisent toujours les fft standards de ScicosLab.
- Un nouvel ensemble de fonctions d'interfaçages pour le logiciel GPL Nsp.
Cette fonctionnalité est en cours de développement.
Pour l'instant, les fonctions suivantes ont été interfacées avec succès dans Nsp :
genint, genrayl, upsmpl, downsmpl, modpsk, demodpsk, modqam, demodqam, gengold, genpn,
spread, despread, nfilter, awgn, intsym, calc_fft. Pour construire et charger Modnum dans
Nsp, deux méthodes sont fournies. La première est l'utilisation du script configure comme celà :
./configure -with-nspsrc=DIRNSP -with-gtk2
La deuxième passe par l'utilisation du script builder_nsp.sce à éxécuter dans Nsp.
Ce script est présent dans le répertoire racine de la boîte à outils.
- Possibilité d'utiliser le compilateur croisé MinGW.
Tous les fichiers C de Modnum peuvent être compilés avec MinGW32 pour produire
les dlls. Par exemple, avec une distribution Linux Debian, on peut faire :
./configure -host=i586-mingw32msvc
- Mise à jour de la documentation
15 Décembre 2008 : Modnum_42
Modnum_42 est disponible. Cette version propose :
- Intégration Scicos 4.3
- Générateur de code
Les librairies de Modnum sont maintenant déclarées d'une manière interne dans Scicos.
La génération de code Scicos peut donc être utilisée avec Modnum : les librairies sont liées
automatiquement et déclarées dans les Makefile du code Standalone.
- Palettes
Les palettes de Modnum sont pleinement intégrées dans l'éditeur graphique de Scicos.
Elles sont toutes regroupées dans une seule palette principale 'Modnum' qui contient
tous les sous ensembles de blocs Modnum (Communication, Filter, Integer, NonLinear, Pll, Sinks, Sources, Tools)
- Documentation et Démos
La documentation et les démonstrations de la boîte à outils sont intégrées dans le menu 'Help'
de Scicos.
- Nouveaux blocs Scicos
Trois nouveaux blocs sont présents dans cette version :
- Additionneur numérique
Ce bloc est un additionneur numérique avec une sortie de retenue. Avec ce bloc
on peut construire des accumulateurs numériques traditionnellement utilisés dans
les implémentation des modulateurs Sigma-Delta.
Ce bloc est dans la palette Modnum 'Integer'.
- Erreur de phase d'un diviseur de fréquence
Pour calculer des échantillons de bruit de phase d'un diviseur de fréquence fractionnaire modulé
Sigma-Delta.
Il est fourni dans la palette 'Pll'.
- Oscillateur bruité en phase
Ce bloc génère des événements d'un oscillateur bruité en phase par une méthode de calcul
continue utilisant une détection de passage à zéro.
Cette méthode devrait améliorer la précision de calcul des spectres de sorties des modèles
de synthétiseurs.
Il est fourni dans la palette Modnum 'Sources' sous le nom PEVTDLY_c (Phase modulator).
- Bloc réécrit
- Bloc générateur aléatoire de nombres entiers
De nouvelles options ont été ajoutées pour donner le minimum et le maximum de la forme temporelle
de sortie.
(Palette Modnum 'Sources')
- Réorganisation interne
Les fichiers sources de Modnum ont totallement été réarrangés. Modnum est maintenant
une librairie de calcul indépendante et propose des interfaces pour différents environnements
tel que Scicos et Scilab.
Deux jeux d'interfaces sont donc disponibles :
- Modnum toolbox for Scilab : fonction d'interfacages pour scilab (fonctions prompt scilab)
- Modnum toolbox for Scicos : blocs d'interfacages pour scicos
Une description des répertoires de Modnum est donnée dans les fichiers README.
- Construction avec GNU Autotools
Modnum peut être construit par un script './configure' généré par les outils GNU autotools.
Sans options, les makefiles contruisent seulement la librairie principale de calcul.
Pour construire les interfaces Scilab/Scicos, l'option '-with-scisrc=PREFIX' doit être
utilisée pour définir le répertoire des sources de Scilab. Notez que cela fonctionne pour le
moment uniquement pour la famille scilab 4.x. La construction avec scilab 5.x sera faite dans une
prochaine version. D'autres options telles que '-with-gtk2', '-with-fftw',... existent.
Utilisez './configure -help' pour en savoir plus.
- Correction des bogues
- Mise à jour de la documentation
Une nouvelle version de "Modnum" est disponible. RC42
Celle ci corrige et remplace la version précédente et fonctionne dans les versions de Scicos >=4.2.1.
La boîte à outils a été réorganisée afin de rendre autonome la librairie de routines
de calcul bas-niveau de l'environnement Scilab.
"Modnum_42" sera bientôt présentée dans son intégralité comme une version officielle
dès que la version candidate aura été pleinement testée sous GNU Linux et Windows.
06 Décembre 2007 : Mise à jour modnum_412
"modnum_412" corrige et remplace "modnum_41".
Cette version devient donc la version supportée pour la correction
des bogues et l'installation sous windows/linux.
Cette version a été réalisée pour la nouvelle version de scicos : scicos
4.2.
Cette version inclut :
- Fonctions scilab interfacées/librairie "modnumlib"
- Un nouveau jeu de fonctions Scilab pour la modélisation et la simulation de système
à étalement de spectre en séquence directe est maintenant disponible. Celui-ci a été
fait à partir de la libraire de routines bas-niveaux de modnum.
Pour exemple, vous pouvez consultez le script de simulation scilab
CDMA_sim.
- De nouvelles fonctions apparaissent dans la librairie de routines bas niveaux : un canal awgn,
un générateur de bruit de Rayleigh (fonction scilab et bloc scicos), une autocorrelation
discrète,...
- Windows Installer
- Réalisé à partir du logiciel "Inno Setup", un fichier éxécutable est maintenant
disponible pour l'installation des binaires de la boîte à outils sous windows.
- Mise à jour de la documentation
- L'aspect de la documentation de "modnum" est identique à l'aspect de la documentation
de scicos 4.2.
- Implémentation des icônes des blocs de "modnum" dans le nouveau afficheur de
palette "Pal Tree" de scicos 4.2.
- Corrections de bogues
- Compilation révisée de la version source pour les personnes utilisant
les versions sources de scilab sous linux et qui ont utilisées la
fonctionnalité "make install".
- Inclusions de certains fichiers en-tête (.h) de scilab dans la boîte à outils
pour éviter des erreurs de compilation de la version source concernant
les fonctionnalités nouveau graphique (NG).
- Révisions des fonctions de calcul en C des blocs utilisant des allocations
dynamiques : l'allocation se fait maintenant systématiquement sur
flag = 4 et la désallocation sur flag = 5. Cela élimine des fuites de
mémoires lors d'utilisations intensives des blocs de "modnum" dans scicos.
- Utilisation de la fonction "stacksize" de scilab révisée lors de la construction
de la version et du chargement des versions binaires : permet d'executer "modnum"
sur des unités de calculs à faible ressources mémoires.
Pour plus d'informations concernant le maintien et le développement de la
boite à outils veuillez à présent vous référez au fichier Version.txt que vous
trouverez à la racine du répertoire de modnum.
Celui-ci vous indiquera quel est le numéro "subversion" de développement de"modnum"
dont vous disposez.
26 Mai 2007 : Mise à jour modnum_41
Depuis "modnum_3", Modnum a été revue et l'archive a été renommée en
"modnum_41".
(le numéro de version de l'archive Modnum suit le numéro de version de Scicos).
Des modifications profondes sont intervenues dans le processus de construction
de la boîte à outils ainsi que dans les routines des oscilloscopes pour permettre
sa future "vie" dans les prochaines versions de Scilab/Scicos (versions >=5).
Cette mise à jour a été faite proche du développement actuel de
Scilab/Scicos à l'INRIA dans le projet METALAU.
Les principales nouveautés de cette version mise à jour sont :
- Nouveaux blocs
- Oscilloscope analyseur de spectre
Cet oscilloscope est basé sur la méthode d'autocorrelation
détaillée dans la macro Scilab "pspect" (de la libraire
Scilab de traitement du signal de C. Bunk).
- Bloc modulateur/démodulateur de symboles générique
Ces blocs permettent d'utiliser des constellations arbitraires.
- Bloc filtre Gaussien/Racine de cosinus surélevé/Cosinus surélevé
Ils ont été dupliqués à partir du bloc "RIF générique" pour des facilités
d'utilisation.
Une nouvelle palette (palette Filtre) apparaît dans Modnum.
Celle-ci est dédicacée au filtrage numérique du signal.
- Blocs réécrits
- Blocs convertisseur Analogique/Numérique et Numérique/Analogique
Les anciens blocs fortran (CAN_f/CNA_f) ont été réécrits en langage C
et ils incluent maintenant des déséquilibres non-linéaires statiques.
- Bloc Oscillateur discret Contrôlé en Tension
Des erreurs numériques ont été détectées dans les blocs OCT concernant
le calcul des dates des fronts.
- Blocs buffer discret et buffer d'événements discret
Ces blocs ont été totalement réécrits pour permettre des facilités
d'utilisation.
On peut maintenant utiliser des variables globales pour exporter
les résultats de Scicos dans l'espace de travail de Scilab.
- Blocs oscilloscopes
Les oscilloscopes dédicacés à l'analyse des résultats simulés des systèmes de communication
ont été réécrits en utilisant les fonctions bas niveaux du nouveau graphique (NG) de Scilab.
- Oscilloscope diagramme de l'oeil
- Oscilloscope vectoriel
- Oscilloscope de trajectoire/diagramme de la constellation
- Blocs révisés et correction de bogues
- Bloc élévateur de cadence
- Bloc générateur aléatoire
- Blocs modulateur/démodulateur de symboles par états de phase et d'amplitude en quadrature
- La librairie "modnumlib" des fonctions de calculs bas-niveau est maintenant sous licence GPL
- Les fonctions du générateur de documentation ne sont plus présentes dans Modnum
Modnum ne concerne maintenant que les systèmes de communication.
Pour les personnes qui ont réussis à utiliser le générateur de documentation
intégré à modnum_3, veuillez contacter alan.layec@cermics.enpc.fr
pour avoir une
version linux autonome du générateur de documentation.
- La documentation Scilab html est mise à jour
La plupart des diagrammes et blocs sont maintenant documentés en Français
et Anglais.
(il reste encore beaucoup de choses à faire concernant ce point, mais le travail
est en pleine progression)
- Le processus de construction via le script builder et la compilation windows des routines a été révisée
Cela permet une compilation correcte avec les outils inclus dans Scilab (comme par exemple
ilib_for_link).
Grâce à cela, des DLLs appropriées peuvent être générées avec le script builder
et une version windows binaire de Modnum peut être téléchargée sur ce site web.
Contenu
Figure 1:
Organisation interne de la boîte à outils
 |
Cette boîte à outils contient plusieurs éléments :
- Une librairie de routines de calcul bas-niveau (en langage C) incluant des fonctions communes
aux communications bande de base ainsi que des fonctions pour CPF trois états.
- Un ensemble de palettes Scicos, incluant des blocs avec fonctions de calcul en C
et fonctions d'interface étendues :
- Palette Communication pour les transmissions MDP/MAQ,
- Palette Filter pour le filtrage du signal numérique,
- Palette Integer pour réaliser des opérations sur les nombres entiers,
- Palette Non-Linear avec des non-linéarités fréquemment rencontrées dans les processeurs de signaux numériques,
- Palette PLL pour la conception des synthétiseurs de fréquence à rapport de
division entier et fractionnaire,
- Palette Signal pour le traitement du signal numérique,
- Palette Sinks pour l'affichage des signaux tramés et les trajectoires 3D,
- Palette Sources pour le calcul de processus aléatoires (et autres).
- Beaucoup d'exemples de diagrammes Scicos et de scripts Scilab de simulation.
Installation
- Sur les plate-formes Linux, le script de compilation utilise gcc/g77 pour construire la boîte à outils.
- Sur les plate-formes Windows, le script de compilation est capable d'utiliser :
- MSVC pour la construction de la boîte à outils
ou
- lcc-win32 (voir ScicosLab-x.x/lcc/Readme_LCC.txt pour les instructions d'installation).
- Une future amélioration du script de construction devrait aussi réaliser la compilation
de la boîte à outils sur plate-formes Solaris/HP-Unix.
Les instructions d'installation sont données dans le fichier README situé à
la racine du répertoire de la boîte à outils.
Grâce à l'amélioration du processus de construction, le support
de l'installation des versions sources pour windows et linux est
maintenant assuré.
Documentation
Les versions source et binaire incluent une documentation au format HTML.
Deux langues sont supportées : l'anglais et le français.
Vous pouvez consulter la documentation des interfaces avec les liens suivants :
- Toolbox ScicosLab
- Toolbox Scicos
Copies d'écran
alan
2013-06-27