TP5 Enoncé DMA MEM MEM. objectif Utiliser un canal DMA pour faire un transfert d’une zone mémoire vers une autre zone mémoire On fera le transfert sans.

Slides:



Advertisements
Présentations similaires
Module Systèmes d’exploitation
Advertisements

GEF 435 Principes des systèmes dexploitation Le matériel des ordinateurs Revue Pt II (Tanenbaum 1.4)
Premier programme en C :
Le Concept du programme enregistré
Introduction au langage C
Gestion de FICHIERS.
La pile un élément essentiel
13 – 16 Décembre 2005 Laurence Viry Introduction à MPI MPI_2.
Plan de formation Chapitre 1 : Présentation de SAP
Les structures de données
Jc/md/lp-01/05Boot Loader1 BOOT LOADER. jc/md/lp-01/05Boot Loader2 Objectif du chapitre Introduire la notion de Boot Loader Donner un aperçu de lorganisation.
MENU DE L’AIDE Cliquer ici pour aide RESEAUX DE CONTACTS
Systèmes d’entrée/sortie
Système d’exploitation : Assembleur
Chapitre 8 : L’architecture de base des ordinateurs
Architecture de base d’un ordinateur
Concepts de base : la Classe Pour faire une comparaison simple, une classe serait a priori, une structure C avec des variables et des fonctions.
Les piles Djamal Rebaïne.
Calcul et implantation des filtres numériques RIF et RII dans un DSP
Points importants de la semaine Les enregistrements.
Les Classes les structures en C (struct) regroupent des variables : structuration de l'analyse mais problèmes de cohérence problèmes de sécurité d'accès.
Quest-ce quune classe dallocation? Une classe dallocation détermine la portée et la durée de vie dun objet ou dune fonction.
LA BASE DE REGISTRE par Bernard Maudhuit. La Base de Registre 1/ Notions élémentaires.
Le Système Processeur David Saint-Mellion.
Les fichiers binaires en C++
Les pointeurs Modes d’adressage de variables. Définition d’un pointeur. Opérateurs de base. Opérations élémentaires. Pointeurs et tableaux. Pointeurs et.
Test et débogage Tests unitaires. Gestion d’erreurs. Notion d’état, de pré-condition et de post-condition. Assertion. Traces de programme. Débogueur et.
Points importants de la semaine Les allocations programmées de mémoire. Les enregistrements.
Points importants de la semaine La représentation cachée. Les enregistrements.
Périphériques et bus système
INSTRUCTIONS COMPLEMENTAIRES ROLE DES DIFFERENTS ELEMENTS
ΜP David Saint-Mellion.
Structures de données IFT Abder Alikacem Gestion des exceptions Module 2 Département dinformatique et de génie logiciel Édition Septembre 2009.
Plan cours La notion de pointeur et d’adresse mémoire.
Ipchains TP 1 TP 2 TP 3 Installer un serveur web sur votre poste,
Quel que soit le soin apporté à l'écriture de votre programme, il contiendra toujours quelques erreurs, ou bogues, qui l'empêcheront de fonctionner comme.
Etude de cas: carte 80C552++ ‘APPALACHES’
Tutorat en bio-informatique
Programmation Système et Réseau
Sif Cours 9 n 7. Communication série u Concepts généraux u Programmation des ports séries n Le matériel u Chapitre 10 CSA u Article dans MSDN: F.
Exemple de mise en oeuvre
Novembre 2014J.Callot L.Piedfort1 TP1 Enoncé. novembre 2014J.Callot L.Piedfort2 Objectifs Générer un environnement de travail avec Code Warrior Prendre.
L’Audio sur PC Comparaison Numérique vs Analogique Comparaison Audio sur PC vs Hardware dédié (DSP) Rmq: beaucoup de simulitudes avec la vidéo, mais débit.
1 IFT 099 Introduction à la programmation. 2 Plan du cours (sem. 1) 1.Introduction - les ordinateurs 2.La programmation procédurale 3.La programmation.
Microcontrôleurs PIC. 1ère séance Présentation du PIC16F876 Outils de programmation du PIC Le langage C Exemples d’applications simples 2ème séance Présentation.
02/10/2013JC LP MD1 COURS_3. 02/10/2013JC LP MD2 Direct Memory Access DMA.
DMA MEM MEM Enoncé polling novembre 2014J.Callot L.Piedfort1.
Traitement d’obsolescence TVM 430 Emulation logicielle de 3 XPC
Progression - Quelques rappels
16 décembre 2014J.Callot L.Piedfort1 Chapitre_3 K60 DMA.
18/09/2013JC LP MD1 Cours_2. 18/09/2013JC LP MD2 Mapping de configuration.
TP1 Enoncé 12/08/2013 JC/LP/MD.
Simulateur de microcontrôleur Intel 80C51
Patricia Renault UPMC 2005/2006
Cours Système LI324 Les Interruptions Cours Système LI324
Représentation digitale des données Trois formats de base: 1) Décimale: base 10 (Une constante i.e dimension d ’1 vecteur) 2) Binaire: base 2 ( Mask, set/reset.
Taper sur Echap pour sortir à tout moment. Cliquer ici pour la suite Cliquer ici pour la suite.
Chapitre 1 : systèmes d’exploitation
Réalisation d’un logiciel de Chiffrement RSA.
Chapitre 4 La représentation des nombres.
13/08/2013JC/LP/MD1 TP2 Enoncé. 13/08/2013JC/LP/MD2 Objectif Gérer la liaison série en polling Envoi d’un caractère § au démarrage Faire l’écho des caractères.
Chapitre 9 Les caractères.
Semaine 5 Registres spéciaux et périphériques internes Projet initial en ingénierie informatique et travail en équipe INF1995 Jérôme Collin et al.
14/08/2013JC/LP/MD1 TP3 Enoncé. 14/08/2013JC/LP/MD2 Objectif Gérer la liaison série avec la réception en interruption On utilisera le Hardware Vector.
14/08/2013JC/LP/MD1 TP4 Enoncé. 14/08/2013JC/LP/MD2 Objectif Utiliser un canal convertisseur analogique digital Ecrire un programme qui convertit la tension.
Architecture d’un ordinateur
(R&D) Valpré, Septembre 2006David Etasse Comment optimiser l’usage d’un lien Ethernet Gigabit en acquisition de données ? « FASTER »
DMA MEMMEM Enoncé polling novembre 2014 J.Callot L.Piedfort.
Chapitre_3 K60 DMA 16 décembre 2014 J.Callot L.Piedfort.
Transcription de la présentation:

TP5 Enoncé DMA MEM MEM

objectif Utiliser un canal DMA pour faire un transfert d’une zone mémoire vers une autre zone mémoire On fera le transfert sans interruption (polling sur DMA_done) puis le transfert avec interruption

Travail à effectuer Etudier le chapitre eDMA du user manual (U.M.) Utiliser le canal 4 du eDMA_A pour faire le transfert d’un texte: SourceData[] = {"Hello World\r"}; vers l’adresse en SRAM: 0x On vérifiera le transfert dans la fenêtre mémoire du debugger Le premier programme sera fait en testant le « done » Le deuxième programme gérera l’IT fin de major loop

Remarque Il faut bien comprendre la notion de minor loop et de major loop (figure du U.M.) Minor loop: ce qui peut être fait sans besoin de réarmer le transfert –Dans le cas d’un transfert mémoire à mémoire, on peut utiliser minor loop de la taille du transfert car la mémoire est toujours prête –Dans le cas d’un périphérique la minor loop doit être de la taille d’un transfert élémentaire (ex 1 octet pour le sérialiseur) car il faudra attendre entre 2 transferts que le périphérique soit prêt

Remarque Pour éviter les problèmes rencontrés avec le compilateur pour les registres de type écriture d’un 1 pour faire le « clear » des possibilités hardware on été crées à cet effet. C’est a travers des registres spécifiques que l’on effectuera des« set » et des « clear » de certains registres.

Registres spéciaux (1) ERQRH et ERQRL accessibles à travers SERQR pour le set et CERQR pour le clear d’un bit de request EEIRH et EEIRL accessibles à travers SEEIR pour le set et CEEIR pour le clear d’un bit d’erreur IRQRH et IRQRL accessibles à travers de CIRQ pour le clear d’un bit d’interrupt request ERH et ERL accessibles a travers CER pour le clear d’un bit erreur

Accès au TCD De la même façon on peut accéder àux 2 bits START et DONE d’un TCD a travers des registres spéciaux SSBR permet de positionner le bit de start d’un TCD CDSBR permet de resetter le bit de done d’un TCD

Principaux points à étudier pour le TP Le TCD (à resetter au démarrage, puis à initialiser) Le registre de contrôle du bloc DMA Rechercher l’adresse du TCD du canal 4 du DMA_A Le vecteur d’IT du canal 4 du DMA_A Initialiser les IT Dans le programme d’IT resetter la cause de l’IT