1,653 research outputs found

    Méthodologie de vérification automatique basée sur l'utilisation des tests structurels de transition avec insertion de registres à balayage

    Get PDF
    Au cours des dernières décennies, l’évolution de la technologie n'a cessé d’introduire de nouveaux défis dans la vérification des circuits intégrés (IC). L'industrie estime que la vérification fonctionnelle prend environ 50% à 70% de l'effort total d’un projet. Et, malgré les budgets et les efforts investis dans la vérification, les résultats obtenus ne sont pas satisfaisants. La vérification basée sur la simulation, également appelée vérification dynamique, est la technique la plus utilisée dans la vérification fonctionnelle. Par contre, ce type de vérification a clairement échoué à suivre le rythme de croissance de la complexité. Par conséquent, des solutions innovantes sont requises, avec la concurrence sur les produits et les services ainsi que l’implacable loi du temps de mise sur le marché. Plusieurs techniques ont été développées pour surmonter les défis de la vérification dynamique, allant de techniques entièrement manuelles à des techniques plus avancées. Les techniques manuelles et semi-manuelles ne peuvent être utilisées pour les designs complexes, et les approches les plus avancées qui sont couramment utilisés dans l'industrie ont besoin de compétences particulières et beaucoup d’efforts afin d'atteindre une bonne productivité de vérification. Au niveau du test par contre, l'utilisation d'approches basées sur des modèles de pannes et sur les concepts de conception en vue du test (DFT), a conduit au développement d’outils automatiques de génération de test (ATPG) efficaces. L'infrastructure de test qui en résulte a grandement aidé la communauté du test à résoudre plusieurs problèmes. Dans cette thèse, nous nous intéressons principalement à la productivité du processus de vérification, plus particulièrement la vérification de circuits séquentiels. Nous proposons une nouvelle méthodologie qui explore la combinaison du test et de la vérification, plus précisément l'utilisation des tests structurels de transition dans le processus de vérification RT basée sur la simulation. Cette méthodologie a pour but de réduire le temps et les efforts requis pour vérifier un circuit et d'améliorer la couverture résultante, induisant des améliorations significatives de la qualité de la vérification et de sa productivité. La base de la méthodologie proposée est l'intuition (qui est devenu une observation), selon laquelle ce qui est difficile à tester (« Hard Fault ») est probablement difficile à vérifier (« Dark Corner »). L'objectif est de tirer profit des outils de test efficaces tels que les outils ATPG, et les techniques DFT tels que l’insertion des registres a balayage afin de simuler efficacement la fonctionnalité du design avec un minimum de temps et d'efforts. Sur la base de tous ces concepts, nous avons développé un environnement de vérification RTL automatisé composé de trois outils de base: 1) un extracteur de contraintes qui identifie les contraintes fonctionnelles de conception, 2) un outil générateur de banc d'essai, et 3) un détecteur d’erreurs basé sur une observabilité élevée. Les résultats expérimentaux montrent l'efficacité de la méthode de vérification proposée. Les couvertures de code et d’erreurs obtenues suite à la simulation avec l’environnement proposé sont égales à, et la plupart des fois plus élevé que, celles obtenues avec d'autres approches connues de vérification. En plus des améliorations de couverture, il y a une réduction remarquable de l'effort et du temps nécessaire pour vérifier les designs

    Contribution à la méthodologie de conception système : application à la réalisation d'un microsystème multicapteurs communicant pour le génie civil

    Get PDF
    Ce travail de thèse porte sur la problématique de conception et de réalisation d'un microsystème multicapteur communicant pour une application Génie Civil. Ces travaux ont associé le LAAS-CNRS et EDF R&D. Il présente et définit la problématique de recherche et de développement de nouvelles générations d'outils pour la conception système et traite conjointement un exemple d'application proposant notamment une solution de mesure de microdéplacement sur site. Ce manuscrit fait d'abord le point sur la dynamique de développement microsystème et rappelle les méthodes de conception et d'intégration de systèmes à base de composants COTS. Le projet qui nous concerne est ensuite présenté et analysé par la méthode de l'analyse du besoin pour établir un cahier des charges, porte d'entrée de la démarche générale de conception. Il montre, sur l'exemple proposé, les étapes que nous avons conduites pour atteindre le stade des spécifications validées. La méthodologie de conception amont proposée associe la démarche Top-Down et SysML pour réduire au maximum le lien entre le cahier des charges et la première représentation modélisée du système. Cette modélisation amont, indépendante de l'implémentation, est effectuée sous l'outil HiLeS et ouvre la voie de la première vérification du système, par le biais de la logique temporelle. Ensuite, les choix d'agrégation, de sélection et d'implémentation des composants sont décrits et permettent d'aboutir à la modélisation fonctionnelle sous VHDL-AMS et au prototypage virtuel. Enfin, ce travail présente les étapes d'intégration et les choix de composants qui mènent au prototype réel. Une première validation de ce prototype réalisé est effectuée par des mesures sur site. ABSTRACT : The study described in this thesis focuses on the design and realisation of a wireless multisensor microsystem for Civil Engineering. It defines the problem associated with the realisation of a new generation of system design tools. A possible solution is presented and used for the design of an autonomous micro-displacement measuring system. This microsystem has been developed in a joint collaboration between the LAAS-CNRS and EDF R&D. Initially, this manuscript examines the trends in microsystem development and points out the methods of design and integration of systems containing COTS components. The aim of this project is then presented and analysed using the requirement analysis method in order to establish the specifications of the micro-displacement measuring system. These specifications are then utilised in the general design methodology. The proposed design methodology associates Top-Down and SysML approaches to fill the gap between the system specifications and the first system model. This high level model, which is independent of the implementation, is made using the HiLeS software tool and opens the way for the first system model verification, via temporal logic. Then, aggregation, selection, and implementation choices for components enable the functional modelling under VHDL-AMS and virtual prototyping. Finally, this work presents the component choices and the integration steps that have lead to the realisation of a prototype which has been validated by laboratory tests

    CSP dynamiques pour la génération de tests de systèmes réactifs

    Get PDF
    International audienceNon disponibl

    Méthodes et outils de la conception amont pour les systèmes et les micro-systèmes

    Get PDF
    Ce travail de thèse porte sur l'élaboration de modèles de haut-niveau de systèmes pluridisciplinaires à base d'électronique. L'objectif est de réaliser des prototypes virtuels de ces systèmes et de vérifier formellement leur comportement dès les premières étapes du cycle de conception. Grâce à une approche descendante et au formalisme HiLeS, nous réalisons des représentations hiérarchiques qui associent des réseaux de Petri à un ensemble de blocs et de canaux interagissant mutuellement. Nous avons développé l'outil HiLeS Designer pour rendre utilisable le formalisme avec plusieurs améliorations opérationnelles telles que le couplage avec un outil d'analyse de réseaux de Petri (TINA) et la compatibilité avec VHDL-AMS. Nous proposons donc, une plate-forme de conception amont autour de l'outil HiLeS Designer avec des passerelles vers TINA et VHDL-AMS. L'utilisation de cette plate-forme nous à permis d'identifier plusieurs perspectives de développement, notamment vers la conduite de projet. ABSTRACT : This work concerns the development of high-level models of multi-disciplinary systems based on electronics. The objective is to construct virtual prototypes of those systems and to verify their behavior since the early stages of the design process. Using a top-down approach and the HiLeS formalism we obtain hierarchical models that associate Petri nets and a group of blocks and channels interacting mutually. We developed HiLeS Designer, a software tool that implements the formalism with several complementary improvements such as an interface to a Petri nets analysis tool (TINA) and compatibility with VHDL-AMS. These two aspects are the base of our formal verification and virtual prototyping approach. We propose a high-level systems design platform that integrates HiLeS Designer, TINA and VHDL-AMS. Using this platform on two case studies allowed us to identify possible improvements to our project and prospective evolutions

    Génération automatique de mélodie par la programmation par contraintes

    Get PDF
    La programmation par contraintes est un type de programmation déclarative, un paradigme naturellement adapté au traitement de problèmes musicaux. En effet, la composition musicale s’apparente à un processus déclaratif pendant lequel le compositeur travaille pour créer de la musique qui respecte les règles générales de l’art et les critères plus spécifiques du style adopté tout en y incorporant ses propres contraintes. Le parallèle entre cet exercice et la résolution d’un problème de satisfaction de contraintes se fait donc instinctivement. La principale difficulté se trouve au niveau de la modélisation du problème. Une pièce musicale est composée de plusieurs dimensions entre lesquelles existent beaucoup d’interactions. Il est pratiquement impossible pour un système informatique de représenter précisément toutes ces dépendances. Les systèmes de contraintes conçus pour traiter de problèmes musicaux se concentrent alors sur des dimensions en particulier. Parmi ces problèmes, on retrouve la génération de mélodie qui concerne donc les hauteurs et les durées des notes d’une ligne mélodique accompagnée par une suite d’accords. La modélisation d’un tel problème se concentre sur une séquence de notes et ne présente donc aucun élément de polyphonie ou d’instrumentation par exemple, ce qui simplifie la situation. L’objectif de ce projet est de concevoir un système de génération automatique de mélodie selon une suite d’accords donnée qui utilise les informations d’un corpus pour guider la composition. Deux des principaux défis de ce type de problème sont l’organisation des variables et le contrôle de la structure globale de la mélodie générée. Pour relever le premier, nous avons émis l’hypothèse qu’un système structuré hiérarchiquement offrait le plus de flexibilité et permettrait donc d’exprimer les contraintes plus facilement. En ce qui concerne la structure du résultat, nous avons mis au point un algorithme de détection de patrons répétitifs basé sur des arbres des suffixes qui permet au système de répliquer les éléments de la structure d’une mélodie existante.----------ABSTRACT: Constraint programming belongs to the declarative programming paradigm which is naturally suited to tackle musical problems. Musical composition can be seen as a declarative process during which the composer works to create music respecting the general and specific rules of the chosen style and also adds his own touch. The connection between this process and resolving a constraint satisfaction problem is made instinctively. The main challenge of this field is modeling the problem because of all the different dimensions which interact together in a music piece. It is virtually impossible for a computer-based system to provide a view of the same quality a human composer would have. Thus, constraint systems designed to tackle musical problems usually focus on specific dimensions. One of these problems consists of generating a melody given a chord sequence, which only involves note durations and pitches, there is no concept of polyphony or instrumentation, for example. The goal of this project is to design and implement a system able to generate a melody given a chord sequence, using information from a corpus to guide composition. Two of the main challenges of this kind of problems are the variables arrangement and the control of the global structure of the melody. Regarding variables, we made the assumption that a hierarchical organization would improve the system’s flexibility which would make it easier to express constraints. For the structure, we designed an algorithm which uses suffix trees to detect repeating patterns in existing melodies and made the system able to replicate them in the result. Our system is made of hierarchically organized blocs. The melody is made of bars which contain chords under which are located the notes. Each block has a variable number of notes which needs to be fixed first in order to instantiate the corresponding variables. This means that the system has to work in two phases. The first one assigns a rhythm pattern to every bar, which decides both the number of notes and their durations. The second phase fixes the pitch of every note of the melody

    Détection, Explications et Restructuration de défauts de conception : les patrons abîmés.

    Get PDF
    Models driven engineering considers models first class entities for the software development. The models driven processes must be able to take into account the know-how of experts, generally expressed in terms of analysis, architectural of design patterns. To choose the right pattern and to ensure its correct integration within a model constitute curbs with the systematic use of the good design practices. In order to reduce these tasks, we propose an approach based on the automatic inspection of models. In the same manner that there are code review activities aiming at checking the absence of bad coding practices in a program, we have tooled a design review activity identifying, explaining and correcting the bad design practices in a model. A spoiled pattern is comparable with a design pattern, its instantiations solving the same types of problems, but with a different and certainly improvable architecture. Experiments were carried out in order to collect spoiled patterns, allowing us to propose a catalog of bad practices, complementary to the GoF catalog. The detection of the instantiations of spoiled patterns in a UML model is related with a wide graph homomorphism. Graphs UML having typed vertexes, detection is based on local and global structural properties allowing the solving of this NP-Complete problem by successive filtering. Thus, this algorithm is able to detect all the possible instantiations of a spoiled pattern, by managing moreover prohibited and optional edges. The model fragment semantics is given by its intent which is validated by the designer. The intent of the detected fragments and the benefit of a replacement by the adequate pattern are deduced by requests on an ontology conceived for this purpose. The transformation of the fragments into instantiations of design pattern is carried out thanks to model refactoring automatically deduced from the structural differences between a spoiled pattern and an design pattern.L'ingénierie des modèles considère les modèles comme des entités de première classe pour le développement logiciel. Les processus dirigés par les modèles se doivent d'être capables de prendre en compte le savoir-faire d'experts, généralement exprimé en termes de patrons, qu'ils soient d'analyse, de conception ou d'architecture. Choisir le bon patron et assurer sa bonne intégration au sein d'une modélisation constitue des freins à l'utilisation systématique des bonnes pratiques de conception. Afin d'alléger ces tâches, nous proposons une approche basée sur l'inspection automatique des modèles. De la même manière qu'il existe des revues de code visant à vérifier l'absence de mauvaises pratiques de codage dans un programme, nous avons outillé une activité de revue de conception identifiant, expliquant et corrigeant les mauvaises pratiques de conception dans un modèle. Un patron abîmé est comparable à un patron de conception, ses contextualisations résolvant les mêmes types de problèmes, mais avec une architecture différente et certainement améliorable. Des expérimentations ont été menées afin de collecter des patrons abîmés, nous amenant à proposer un catalogue de mauvaises pratiques, complémentaire au catalogue du GoF. La détection des contextualisations de patrons abîmés dans un modèle UML est apparentée à un morphisme de graphe étendu. Les graphes UML ayant des sommets typés, la détection s'appuie sur des particularités structurelles locales et globales permettant de résoudre ce problème NP-Complet par des filtrages successifs. Cet algorithme est ainsi capable de détecter toutes les contextualisations possibles d'un patron abîmé, en gérant de plus les arcs interdits et facultatifs. La sémantique d'un fragment de modèle est donnée par son intention et celle-ci est validée par le concepteur. L'intention des fragments détectés et les bénéfices d'un remplacement par le patron adéquat sont déduits par des requêtes sur une ontologie conçue à cet effet. La transformation des fragments en contextualisations de patrons de conception est réalisée grâce à des restructurations de modèles déduites automatiquement des différences structurelles entre un patron abîmé et un patron de conception

    Résolution du problème inverse de conception d'actionneurs électromagnétiques par association de méthodes déterministes d'optimisation globale avec des modèles analytiques et numériques

    Get PDF
    Les travaux présentés dans cette thèse apportent une nouvelle méthodologie de résolution du problème inverse de conception des actionneurs électromagnétiques. Après avoir abordé les aspects généraux du problème, nous choisirons de le résoudre avec des méthodes déterministes d'optimisation globale, ne nécessitant aucun point de départ, utilisant tout type de variables et assurant le caractère exact de l'optimum trouvé. Étant jusqu'alors utilisées seulement avec des modèles simples, nous les appliquerons en les associant avec des modèles analytiques de type champ, reposant sur des hypothèses moins restrictives, donc plus complexes, nécessitant d'étendre notre algorithme d'optimisation. Un logiciel complet de calcul par éléments finis a ensuite été créé, puis doté d'une procédure d'évaluation du couple moyen dans le cas d'un moteur à aimant. Le problème initial a été reformulé et résolu en intégrant la contrainte numérique de couple, le modèle analytique servant de guide au nouvel algorithme. ABSTRACT : The work presented in this thesis brings a new methodology to solve the inverse problem of electromagnetic actuators design. After treating the general aspects of the problem, we will choose to solve it with deterministic methods of global optimization, which do not require any starting point, use each kind of variables and ensure to obtain the global optimum. Being hither to used only with simple models, we apply them with models basedon an analyticalresolution of the magnetic field, using less restrictive hypotheses. Sothey are more complex,and require an extension of our optimization algorithm. A full finite elements software was created, and equipped with a procedure which permit the evaluation of the average torque in the particular case of a magnet machine. The initial problem was then reformulated and solve by integrating the numerical constraint of couple, the analytical model being used as guide with the new algorith

    Un cadriciel pour la vérification en ligne, générique, flexible et évolutive de configurations de systèmes communicants complexes

    Get PDF
    Les systèmes communicants complexes constituent une base fondamentale de la vie d'aujourd'hui. Ils supportent de plus en plus de services et d'usages critiques, essentiels tant aux entreprises et administrations qu'à la société en général. L'exemple-type est celui d'Internet avec l'ensemble de ses services et usages variés, architectures et média allant de petits équipements mobiles comme les smartphones aux systèmes critiques à grande échelle comme les clusters de serveurs et le cloud. Il devient dès lors indispensable d'en garantir le fonctionnement effectif et continu. Pour ce faire, une vision consiste en la mise en œuvre de systèmes de gestion autonomes et adaptifs, capables de reconfigurer dynamiquement et en permanence ces systèmes afin de maintenir un état de fonctionnement désiré face à des conditions opérationnelles, instables et de moins en moins prévisibles. Un frein à l'exploitation effective des solutions de reconfiguration dynamique réside dans le manque de méthodes et de moyens garantissant l'effectivité et la sûreté de ces changements dynamiques de configurations. La contribution générale des travaux de cette thèse fournit des concepts, des méthodes et des outils qui favorisent la mise en œuvre d'une vérification en ligne de configurations. Notre démarche pour construire ce cadriciel a consisté dans un premier temps à définir un langage de haut niveau dédié à la spécification et la vérification de configurations. Nous avons architecturé dans un deuxième temps, un service de vérification générique, flexible et évolutive at runtime capable de manipuler les concepts définis dans ce langage. Enfin, nous avons défini une architecture de composants intermédiaires d'intégration de l'existant. Ce cadriciel permet de supporter un processus de vérification opérationnelle de configurations qui commence, en phase de conception par une spécification rigoureuse de modèles de configurations, puis se poursuit en phase d'exécution du système de gestion à travers une vérification automatique de configurations basée sur ces modèles. Le cadriciel a fait l'objet d'un prototype que nous avons expérimenté sur une série de cas issus de deux contextes applicatifs différents : la vérification de configurations d'un middleware orienté messages dans un environnement JMX et la vérification de configurations de machines virtuelles dans un environnement CIM/WBEM (standards du DMTF). Les résultats ont montré la faisabilité de l'approche ainsi que la capacité du cadriciel à soutenir une vérification en ligne, flexible et évolutive de configurations favorisant l'intégration de l'existant.Complex networked systems are a fundamental basis of today's life. They increasingly sup- port critical services and usages, essential both to businesses and the society at large. The evident example is the Internet with all its services and usages in a variety of forms, architectures and media ranging from small mobile devices such as smartphones to large-scale critical systems such as clusters of servers and cloud infrastructures. It is therefore crucial to ensure their effective and continuous operation. A vision to do this consists in the development of autonomous and adaptive management solutions, capable of dynamically and continuously reconfiguring these systems in order to maintain a desired state of operation in the face of unstable and unpredictable operational conditions. A main obstacle to the effective deployment of dynamic reconfiguration solutions is the lack of methods and means to ensure the effectiveness and safety of these dynamic con- figuration changes. The overall contribution of this thesis is to provide concepts, methods and tools to enable an online configuration verification. Our approach to build this framework was first to define a high-level language dedicated to the specification and verification of configurations. Second, we designed a generic flexible and adaptable runtime verification service, able to manipulate the concepts defined in this language. Finally, we defined an architecture of adapters for integrating existing systems and platforms. This allows our framework to support a runtime configuration verification process that starts at design time with a rigorous specification of configuration models and continues at runtime through automatic checking of configurations based on these models. The framework has been implemented in a prototype that has been experienced on a series of experiments from two different application domains: the verification of a messaging middle- ware's configurations in a JMX environment and the verification of virtual machines' configurations in a CIM/WBEM (DMTF standards) environment. The results showed the feasibility of our approach and the framework's ability to support a flexible and adaptable online verification of configurations that can be integrated with existing management solutions
    • …
    corecore