Le but de cet ensemble de cours « U-boot Complete Analysis » est de vous faire apprécier toutes les connaissances logicielles et matérielles impliquées dans le développement embarqué, étape par étape tout au long de l’analyse du processus d’un excellent logiciel bootloader, et contrairement à ces cours théoriques abstraits et difficiles dans les universités, nous pouvons modifier et exécuter le code à tout moment lors de l’analyse spécifique de you-boot pour tester notre compréhension des connaissances. Tant que vous allez jusqu’au bout de ce processus, lorsque votre propre débogage et écriture u-boot fonctionne entièrement sur la carte de développement, vous êtes essentiellement au niveau intermédiaire ou supérieur de l’intégration. Puisque les bases du logiciel et du matériel sont posées, en continuant à apprendre le développement du noyau et des pilotes de logiciels comme Linux et Android, vous n’aurez plus l’impression de ne pas comprendre ou d’avoir du mal à commencer. Les première et deuxième saisons de ce cours sont la base de tout le cours, et en gros, après avoir appris les première et deuxième saisons, vous pouvez écrire un bootloader vous-même.
Introduction du conférencier
Tegyin Circuits intégrés Bootloader Expert dans le domaine sous-jacent des systèmes d’exploitation
Dans le processus d’enseignement embarqué, je ressens profondément le manque de développeurs embarqués dans l’enseignement professionnel actuel de premier cycle : comme la majeure en électronique n’a pas étudié systématiquement des cours professionnels informatiques tels que « système d’exploitation » et « principes de compilation », il est difficile de comprendre un ensemble de structures logicielles énormes comme Linux et son système de compilation et de développement, ainsi que son mécanisme de fonctionnement abstrait à une étape avancée. De même, les étudiants en informatique ne peuvent rester qu’au niveau du développement logiciel pur en raison d’un manque de connaissances approfondies en technologie des circuits électroniques et d’une expérience relativement insuffisante dans la gestion du matériel.
Ce n’est que lorsqu’un développeur possède toutes les connaissances matérielles concrètes et les connaissances abstraites logicielles de base qu’il peut devenir un excellent ingénieur en développement de systèmes embarqués. Ainsi, dans le processus d’enseignement et de pratique, il accorde une grande attention à la relation interactive entre le matériel et le logiciel, afin que les élèves sachent ce que c’est et pourquoi.
Phase 1 - Prologue
Sélection des versions u-boot
Phase 2 - analyse de start.s
Le vecteur anomalie du you-boot et le principe du mécanisme de démarrage de V210
Utilisez le désassemblage objdump pour voir le code d’en-tête de you-boot et la gestion du vecteur d’exception
ENTRÉE et autres macros, ainsi que le réglage des registres CPSR
Base du coprocesseur CP15, correspondance de l’adresse vectorielle de l’anomalie VBAR
cpu_init_cp15 Analyse des sous-processus : opérations de cache
cpu_init_cp15 Analyse des sous-processus (suite) : Prédiction de branchement, opération MMU
cpu_initcrit analyse du sous-processus, expérience 1 : Modifier le code source du u-boot pour afficher l’état de fonctionnement avec des lumières LED
Expérience 1 (suite) : Analyse de circuit de l’entrée et sortie GPIO
Expérience 1 (suite) : Le principe de création d’une image U-boot clignotante, analyse du code source MKV210
Expérience 1 (suite) : Utilisez l’outil de déversement hexagonal pour analyser le code hexadécimal de l’image
Aperçu du processus de compilation, de liaison et d’assemblage
Expérience 2 : Écris ton propre programme de démarrage : myboot
Expérience 2 (suite) : Le principe de liaison de deux fichiers ou plus
Expérience 2 (suite) : Démontez et analysez votre propre myboot
Expérience 2 (suite) : Utilisez Makefile pour compiler automatiquement myboot
Expérience 2 (suite) : Améliorer notre Makefile
Expérience 2 (suite) : Variables d’automatisation dans Makefile
Phase 3 - Analyse lowlevel_init.s
Jugement du modèle de puce, jugement de la méthode de réinitialisation
Maintien d’E/S, jugement de mode de réinitialisation, initialisation d’interruption
Initialisation UART et principes de communication asynchrone
Analyse UART 1
Analyse UART 2
Analyse UART 3
Analyse UART 4
Expérience 3 : Utiliser l’UART pour afficher les données dans une mémoire spécifiée
Fondamentaux de la mémoire DDR 1
Fondements de la mémoire DDR 2
Fondamentaux de la mémoire DDR 3
Connexion matérielle mémoire DDR sur carte ouverte V21011
Connexion matérielle de mémoire DDR sur carte ouverte V2102
Structure interne du DDR2-Dispositif1
Structure interne du DDR2-Dispositif2
Machine à états finis actionnée par DDR2
Registres DDR2 MRS et EMRS
Temps de lecture et d’écriture DDR2
Télécharger:Touristes, si vous voulez voir le contenu caché de ce post, s’il vous plaît Répondre |