Site des Oraux

Informatique temps réel et réseaux de terrains (30) :: post
Années :: 2005 :: 2006 :: 2007 :: 2008 :: Toutes

Post nº30 (id3842) envoyé par jeanne  le 29 Jun 2008, 14:08
Alors comme OS, j'ai présenté l'iPhone OS, et les outils de développement qui y sont attachés (XCode et Instruments). Toutes mes sources provenaient de developpers.apple.com/iphone
J'ai parlé de plein de sujets du cours, mais sans jamais aller dans les détails. Il a bien aimé.

Question supplémentaire: la même que Tim, système de monitoring pour des soins intensifs. Donc en gros adapter les labos. On a discuté des débits d'information, et de savoir si c'était limitant ou pas (savoir évaluer combien d'octets/seconde pour un ECG, ...)

Post nº29 (id3831) envoyé par Lau  le 28 Jun 2008, 12:12
présentation du protocole LonTalk (LonWorks)

et comme question supplémentaire: l'ordonancement

Post nº28 (id3645) envoyé par Tim  le 17 Jun 2008, 23:15
Alors comme reseau j'ai présenté le BITBUS, un petit résumé de ceci (http://www.bitbus.org/dnl/BITBUS%20Interconnect%20Specification.PDF) lui convient parfaitement.

La question qu'il m'a posé était la suivante "vous voulez réaliser un système de monitoring avec différents capteurs (tension artérielle, temperature corporelle, ECG, MEG,...), comment faites vous?" En gros il faut adapter ce qu'on a fait au dernier labo a cette situation.

Sinon il est bien sur très sympa et il cote largement.

Post nº27 (id3585) envoyé par Xavier  le 14 Jun 2008, 10:46
salut

moi j'ai présenté les 2 cours ensemble (archi et temps réel)
voir section architecture pour cette partie ;)

comme pour archi j'ai présenté le intel pentium I MMX je me suis dit que j'allais etendre sur le debug de celui ci... mais les infos manquaient donc j'ai fais de la théorie et donné les exemples du pentium

ici j'ai simplement repris son cours sur les debuggers et les emulateurs... j'ai fait un "resumé" en 15 minutes...

voila
il m'a juste posé comme question pendant mon exposé: comment on fait pour placer les breakpoints... => on remplace l'opcode

et ma grosse question:
il m'a demande de lui parler de l'ordonnancement temps réel et d'étendre ca aux réseaux (CAN etait mon projet d'année il savait que ct mon truc)

donc je lui ai fait un ptit resume sur l'ordonnancement que je lui ai présenté... ca ct bon ^^
et pour l'extension vers les réseaux : je suis parti sans préjugés et je suis resté général ...

j'ai envisage reseau monomaitre ou multimaitre... j'ai conclu multimaitre difficile (il m'a dit que ca ne se faisait pas si simplement en effet ^^)
j'ai parle d'un reseau du type can ou ethernet broadcast ou j'ai dit qu'il est difficile d'assurer qu'il n'y ait pas de conflits
alors j'ai parle d'un reseau du type token ring ou token bus avec un jeton et ca ct je pense ce qu'il attendait... en effet si on envisage un train qui parcoure le reseau, on connait le temps qu'il met pour faire un tour (et hop on est parti dans l'ordonnancement)

voila il etait fort satisfait il m'a mis 17

bon courage à tous

Xavier

Post nº26 (id3583) envoyé par Bocko The Chocobo  le 14 Jun 2008, 10:39
J'ai présenté le Intel XScale PXA 270 (le proço de mon PPC, en fait) pour les deux cours. Il a juste posé quelques questions pendant ma présentation pour la partie temps réel où je parlais de la debug unit (faut juste être un poil logique et se référer au chapitre en question dans le cours).

Sinon pour la question après présentation, j'ai juste dû lui parler de l'ordonnancement temps réel. J'ai suivi la structure du cours en lui expliquant les différents algorithmes avec les schémas et les problèmes qui y sont liés. Au final, j'ai eu le temps de parler que de la partie clock-driven mais il m'a fait faire un rapprochement avec le cours du premier quadri : j'avais dit qu'on faisait face à un gros plantage du système quand un problème survenait en section critique (masque d'interruption non levé donc le système réagit plus à rien) >> Quelle solution pour retomber sur ses pattes ?
>> Première idée : un timer ??? non car s'il déborde on sait pas lire l'interruption
>> Deuxième idée : un reset >> oui et comment ? Il y a un système prévu pour ça >> le watchdog (yes je m'en suis souvenu !!!) donc on fait un reset à chaud :p

Voilà donc rien de bien méchant et pour répéter les autres, il est super sympa ;)

Bonne chance aux suivants ^^

Post nº25 (id3573) envoyé par Laurent H  le 13 Jun 2008, 20:36
I) Présentation du RTOS VxWorks. Sources :
http://www.windriver.com/
http://research.microsoft.com/~mbj/Mars_Pathfinder/Authoritative_Account.html
http://mars.jpl.nasa.gov/MPF/mpf/sci_desc.html#ATMO
http://www.slac.stanford.edu/exp/glast/flight/sw/vxdocs/vxworks/guide/
http://www.cs.stevens.edu/~quynh/courses/cs520-fa07/cs520.html

II) même question que les autres : les problèmes liés au debug temps réel, les solutions apportées, en particulier l'analyseur logique et la synchronisation de ses signaux avec le code source. En gros, résumer les chap.7, 8 et 9.

Bonne m... !

Laurent

Post nº24 (id3530) envoyé par Michael  le 11 Jun 2008, 19:57
J'ai présenté le bus I²C (bus reliant des circuits intégrés dans une télé par ex) mais je n'ai pas parlé de ses gros défauts, certains sont évidents, par ex, il est bcp moins fiable que CAN (du fait qu'on ne code pas les données, faible immunité aux bruits...)==> on ne l'utilise que pour de petites distances. Mais d'autres sont moins évident : parler du fait que si un composant qui ralentit l'émission du maître(en maintenant le bus d'horloge à l'état bas) se plante (le bus reste alors à l'état bas), le maitre ne reprendra jamais la main et le système est bloqué... il ne reste plus qu'a retiré la prise.

Sinon ma question portait sur les RTOS (chapitre 5) et faire le lien avec µcos2 et ce qu'on a fait aux labos.

Post nº23 (id3514) envoyé par Billy  le 11 Jun 2008, 11:47
Salut à tous,

Apparemment, une question que Mathys aime beaucoup poser (au moins 4 fois sur la journée) est la suivante

1) expliquer les problèmes liés au débug d'un dispositif temps réel
2) Quelles solutions peut-on envisager pour concilier debug et temps réel.

Quelques idées:

1) En gros il y a 2 grands aspects: le premier est lié au fait que les opérations de debug sont incompatibles avec le temps réel, le second est lié au fait que le programme de debug doit tourner sur le même support physique que le prog TR .

aspect 1)lors du débug, on souhaite afficher l'état de variables en RAM ou dans des registres (traçage de l'exécution), observer si des branchements sont réalisés etc. Toutes ces opérations conduisent à un ralentissement de l'exécution du code.
L'exécution pas à pas ou l'introduction de breakpoints est totalement contradictoire avec les timing imposés par le processus temps réel. voir chap 7 slides 9 à 16
Vous pouvez aussi parler des run time check cf chap 7 slides 33 à 36

aspect 2)voir chap 7 slides 49 à 52

2) Il faut parler des émulateurs (chap 8). Présenter un peu émulateur ICE et ONCE. Dans les 2 cas, le programme de debug ne tourne plus sur le même support physique que le programme TR, donc les problèmes présentés au 1) aspect 2) ne se posent plus.
L'émulateur ICE présente bcp plus de fonctionnalités. Parler un peu de ces fonctionnalités et surtout de la RAM d'émulation qui est très utile! (Surtout si elle est à double entrée!)

Question subsidiaire: comment faire si on n'a pas les moyens pour un émulateur?
2 solutions:
- instrumenter le code : par ex faire clignoter des LEDs pour signaler quand on effectue un branchement. En gros, il s'agit de légèrement modifier le prog TR pour qu'il fournisse au monde extérieur des manifestations lors des étapes de son exécution. Si on demande de faire des choses simples, le ralentissement sera faible.

- améliorer la "cohabitation" entre le prog de debug et le prog TR sur le même µC en installant un RTOS. Les 2 parties seront bien cloisonnées et ne se marcheront plus sur les pieds. Il faut juste alors avoir un µC disposant de + de ressources, mais c'est toujours 10000 fois moins cher qu'un émulateur! La difficulté est apparemment d'établir les priorités entre tâches de debug et tâches TR.

Post nº22 (id3504) envoyé par Nico J  le 11 Jun 2008, 05:44
J'ai présenté le Profibus (doc disponible sur techniques de l'ingénieur).

Question : Quels sont les avantages de travailler avec un Os temps réel, et mise en relation avec le labo (qu'est-ce qu'on y a fait et manière dont on l'a fait).

Pour info, l'OS utilisé au labo est un mix entre un OS préemptif et non-préemptif. C'est à dire que les tâches doivent rendre la main à l'OS en s'adressant à celui-ci. Mais à chaque tic (15/s), l'OS reprend de toute façon la main pour faire quelques actions du genre augmenter les compteurs des tâches qui restent passives en attente pendant un labs de temps, cependant l'OS redonne la main à la tâche courante si elle n'est pas terminée, même si une autre tâche a une priorité supérieur. C'est donc une sorte d'OS hybride.


Post nº21 (id3450) envoyé par Scatt  le 08 Jun 2008, 12:44
Donc, pour ma présentation (j'avais imprimé mes slides et je l'ai fait donc sans ordi), j'ai fait un truc sur l'ordonnancement, en donnant un exemple d'un système multi-tâches et en expliquant différents ordonnancements possibles. (J'ai repris intégralement certains schéma de son cours, mais ça n'avait pas l'air de le déranger). Par contre, mon système n'était pas parfaitement adapté à l'ordonnancement event-driven, et je pense qu'il aurait été préférable, pour moi, de ne pas en parler, plutôt que de trouver un cas où ça aurait éventuellement pu être intéressant (pour l'event-driven) mais qu'il n'a pas trouvé adapté à ce type d'ordonnancement.

Puis, deuxième question (au moins 20 bonnes minutes de préparation): qu'est-ce que t'as fait au labo? Bon, ben ca se passe de commentaire si ce n'est que le chapitre 7.1 et 14 sont vos amis pour cette question.


Post nº20 (id3220) envoyé par Seishiro  le 29 Jun 2007, 14:04
cfr mon post en µP...

j'ajoute juste + de détails pour la question CAN:

Il m'a demandé comment le rendre maitre-esclave sans connaitre aucune adresse (si on les connait, on peut y aller avec de l'ordonnancement multi-cycle). Il faut répondre que la trame question est envoyée par le maitre avec le bit RTR à l'état récessif (=1) à un esclave.
Et il m'a demandé après comment s'assurer que seul l'esclave visé reçoive la trame, il faut répondre alors que le champ d'arbitrage de la trame renferme un ID particulier et qu'on ne peut pas se tromper lors de la réception du message.
Et puis, il m'a demandé un ou 2 trucs sur les labos plus spécifiquement mais comme j'y étais présent que physiquement, je lui ai dit que c t trop loin et que je m'en souvenais plus^^ C'est alors qu'il a bien voulu me laisser enfin repartir...

Voilà, j'ai fait mon devoir d'ingénieur imposteur en m'assurant que les générations futures prolongeront l'imposture le + loin possible^^

Post nº19 (id3216) envoyé par anonyme  le 29 Jun 2007, 11:53
Copie de ce que j'ai posté dans architectures des micro-p :

dernière fournée :
j'ai présenté le processeur ARM10E et en particulier le 1022E. Je me suis plutot axé sur le fonctionnement du pipeline et de la prefetch unit. J'ai en plus ajouté deux slides sur le fonctionnement des caches instructions et données. Ca s'est bien deroulé et peu de questions m'ont été posées pendant la présentation. Les deux questions importantes étaient quels sont les interractions entre MMU et caches dans le micro-p et si il y avait du snooping (sincèrement je ne sais pas ce que c'est ^^).
Comme j'ai la grande joie de faire partie du cartel des électriciens-électroniciens, j'ai ensuite présenté un ppt sur un réseau de terrain dénommé Flexray qui devrait remplacer les réseaux actuellement utilisés dans l'industrie automobile. De nouveau, la présentation était suffisante et très peu (p-e 1 ou 2) questions m'ont été posées.
Comme j'avais couvert pas mal de matières des cours pendant les présentations, il m'a posé une seule grosse question ayant pour but de mettre en commun les deux cours. Expliquer pourquoi en ne regardant que les bus externes d'un micro-p ont ne sais pas exactement ce qu'il se passe + solutions. Reponse : parler des caches internes (instruction + donnée avec algo type Write back), des mmu internes (=> adresses prog différentes adresses phys vue sur les bus) => tenir une table de correspondance à jour dans le débugger (statique si linker crée code absolu, dynamique sinon), accès aux registres, exécution dans le désordre, pipelines parrallèles,...
Solutions : emulateurs type ONCE et ICE, rajouter instructions pour créer évenement externe sur bus de communication, parrallèle, leds...( endroits stategiques comme début d'une tache, interruptions, branchements,...), pour le débuggage pur et dure; lancer les run-time cheks

Post nº18 (id2981) envoyé par Claire  le 20 Jun 2007, 11:07
J'ai fait ma présentation sur l'I2C: généralités, composition de la trame, arbitrage, puis comparaison avec CAN (le principe d'arbitrage est le même mais la trame de CAN fait qu'on rend les adresses basses prioritaires alors que c'est impossible avec I2C)
Il m'a posé quelques petites question sur le CAN (comment fonctionne le système des masques pour qu'un maître reçoive une certaine ID)

Ensuite il m'a demandé de parler de la réentrance: comment ça se passe pendant l'appel et l'exécution d'une fonction réentrante, dans quel cas ça peut poser problème (débordement de pile) et faire le lien avec l'ordonnancement (dans les OS "priority driven", lorsque le noyau et préemptif ou non)

Post nº17 (id2954) envoyé par Fab  le 16 Jun 2007, 20:34
Présentation sur Inter Integrated Circuit Bus (I²C), un réseau qui se rapproche pas mal de CAN + des petites questions sur la présentation (s'agit-il d'un broadcast ou d'un unicast? etc...)

Puis question : faire un point de différences et des similitudes entre I²C et le réseau CAN + petites questions pour compléter ce qu'on a écrit

Voilà, il est franchement sympa et pas chien du tout..

Bonne chance à tous

Post nº16 (id2951) envoyé par Véro  le 16 Jun 2007, 17:23
Pésentation sur l'AFDX, il pose des questions, des liens avec le cours. Dans le cas de ma présentation c'était principalement lié au modèle OSI et TCP/IP.
Question: parler moi de ce que vous avez fait au labo. Donc il veut qu'on lui dise les grands principes: on utilise un CAN multi-maître pr envoyer des messages et en recevoir. Puis on est passé au CAN maître-esclave, expliquer le principe. Puis il a posé 2,3 questions plus précises pour savoir comment on avait concretement envoyer des messages.

Post nº15 (id2935) envoyé par Valérie  le 16 Jun 2007, 10:19
Présentation sur le bitbus, il m'a posé pas mal de petites questions.
Ensuite question sur les labos: la réentrance dans les premiers labos. liens avec la préemption.

Post nº14 (id2934) envoyé par cteller  le 16 Jun 2007, 09:44
Alors, pour ma part, je n'avais que ce cours à présenter... et pas le cours de MicroP...

1) J'ai présenté un réseau de terrain pour la domotique --> Konnex (KNX)

2) Résumer le chapitre 5 sur l'ordonnacement temps réel...

Voilà...

Post nº13 (id2433) envoyé par ollai  le 22 Aug 2006, 16:46
Pour la postérité...

J'ai fait une présentation sur le réseau de terrain FlexRay, très intéressant et bcp de sources dispos (www.flexray.com)

Ensuite, question sur l'éditeur de lien. Expliquer la diapo avec le schéma avec les modules, les ressourses CPU et externes.
Faire une comparaison avec les labos (avions-nous toutes les ressources à dispositions ?). J'ai parlé de l'éditeur de lien en lui-même, des variables globales, des fonctions réentrantes et non réentrantes et ce qui change pour le stockage...

Enfin voilà :)

Olivier

Post nº12 (id2394) envoyé par Yorel  le 23 Jun 2006, 17:13
J'ai réalisé une présentation sur le Intel Xscale PXA 270, qui est utilisé dans de nombreux PDA. Il y a bcp de documentations sur le site d'intel, wikipédia, ... (ndapn: Le fichier est ici). Ma présentation se penchait également surles débogueurs. Cela faisait office de la partie sur l'Informatique temps réel. Le problème était la surcharge de mes slides, ... J'avais peur d'oublier, ... mais il est clair qu'elles doivent être plus nettes.

Pour la question, c'était sur CAN et ce qu'on a vu aux labo's.

Résultat : 15. Mouais... :-)

Post nº11 (id2151) envoyé par Dim  le 12 Jun 2006, 22:11
Présentation sans questions particulières (c'était sur le bitbus... slides à la demande :-)

Après deuxième question spécialement pour moi (le seul informaticien de 5ème à avoir pris ce cours en option...) : parler des ordonnancements et (surtout) expliquer les nouveautés/redites/contradictions par rapport au cours d'OS de Remiche... En gros, pour vous (le commun des mortels :p), ca aurait été un truc genre "ordonnancement" de manière générale...

Tout sympa, pas de surprise, de stress, ni rien

Dim

Post nº10 (id2063) envoyé par Nath  le 08 Jun 2006, 18:43
Bon d'abord présentation du microP. J'avais pris un microC de Motorola.
J'ai parlé du pieline, de l'EMAC (MAC amélioré), de la cache et en deux mots du contrôleur CAN. + question genre "pourquoi on code le signe sur 8bits" (apparemment ct louche), la gamme de température sur laquelle le microP fonctionne est-elle large ou pas comparé à d'habitude? ...
Les questions sur première partie: comme j'avais parlé du CAN il m'a demandé quelles sont les détections d'erreur et pourquoi on peut faire du CAN que sur une faible distance.
Ensuite la deuxième partie: idem que tout le monde. Il ne vous demonte pas et vous aide à aller dans le bon sens même si cette Q reste assez floue...
Bonne m****!!!

Post nº9 (id2055) envoyé par fab  le 08 Jun 2006, 15:48
Pareil que les trois autres de la matinée pour la question, mais la réponse a dû un peu différer (quand on rame il nous embarque dans une autre direction...).
Après les palabres préliminaires sur le bit CRC et la manière d ordonnancer les questions, il m a demandé comment faisait un esclave pour savoir qu on s adresse à lui? --> "Grâce à son ID" ai-je répondu, mais il m a demandé à quel niveau intervient la reconnaissance d'ID. Je pensais que c était l OS, mais apparement faut pas aller si haut... (-->couche #2???) Restant assez perplexe, il m a aiguillé par un "C'est comme vous avez fait labo" (phrase assassine!). Du coup ça avait un rapport avec la configuration de mailboxes et tuti quanti.
A+

Post nº8 (id2054) envoyé par Max  le 08 Jun 2006, 15:22
Il m'a également demandé si j'avais présenté qqch sur ce cours => réponse non, on était pas au courant... Pour la question, elle est identique à celle de Kevin qui a à peu près tout résumé. En tout cas, il est pointilleux et veut toujours savoir ce qu'il se passe à quel moment...

Post nº7 (id2050) envoyé par anonyme  le 08 Jun 2006, 13:33
Reprennons donc ce que j'ai dit pour le cours de µp : IL FAUT PARLER DES DEUX COURS DANS SA PRESENTATION! Bon ceci étant dit...

J'ai eu comme question un truc assez original...
Il m'a demandé d'appliquer la théorie de l'ordonnancement temps réel synchrone au bus CAN (en le rendant au passage sous une forme maitre-esclave alors que CAN est multi-maître à la base).

J'ai donc repris l'ordonnancement multi-cycles , en considérant que chaque tâche était un bloc de la forme:

-le maitre envoie une requête à l'esclave correspondant à cette tâche(trame question avec le RTR=1)
-l'esclave correspondant répond
-le maître traite l'information

Et on passe à la tâche suivante...

Pour la gestion d'événements asynchrones, j'ai consideré qu'à ce moment là , un esclave pouvait prendre l'initiative d'envoyer un message avec un champ d'arbitrage dominant pour avoir la priorité sur les autres.
Il m'a dit qu'on peut aussi travailler par une forme de polling qui consiste à envoyer une trame question à toutes les ID qui correspondent aux signaux asynchrones.

Post nº6 (id1464) envoyé par Jonathan  le 24 Jun 2005, 21:47
Présentation sur RapidIO : ICI

Deuxième question : Tout sur l'ordonancement temps réel + uCOS II

Post nº5 (id1447) envoyé par Alex  le 24 Jun 2005, 17:11
ordonnancement temps réel : résumé du chapitre et µcos2

Post nº4 (id1446) envoyé par fini...statarius  le 24 Jun 2005, 15:47
Voilà la présentation + 1 quest OS

A mon avis, si vous avez un OS, il vous donne une question réseau pr la partie question théorique et vice versa...
Il aime qu'on lui explique dans les grandes lignes avec les principes pr la queestion théorique...

courage aux derniers ;)

Post nº3 (id1421) envoyé par Greg  le 23 Jun 2005, 12:11
J'ai passé les deux cours ensemble mais j'ai eu une question sur elec 365 : Résumer les labos et dire ce que je propose pour les améliorer. En ce qui concerne les présentations, pas de surprise.


Post nº2 (id1389) envoyé par caribou  le 21 Jun 2005, 15:42
presentation
puis ordonnancement temps réel, attention aux interruptions...

Post nº1 (id1045) envoyé par Philippe  le 03 Jun 2005, 14:13
bonjour,

on, lola et moi , a eu exam ce matin
pas de surprise
presentation
puis preparer question , pas bcp de temps, 15 min?
on a eu tous les 2, resume du chapitre 5
petite question;
on peut avoir 2 tache de meme priorite? oui
alors ca marche comment? robin ...
difference mode preemptif et mode non preemptif
fonction reentrante
expliquer micro cos2

bonne merde


oraux.pnzone.net - infos - 1ms