This article is a mirror article of machine translation, please click here to jump to the original article.

View: 17104|Reply: 5

2014 The latest UBOOT is fully analytic embedded development

[Copy link]
Posted on 11/6/2014 5:16:49 PM | | | |
The purpose of this set of "u-boot complete analysis" course is to take you to appreciate all the software and hardware knowledge involved in embedded development step by step through the whole process analysis of an excellent bootloader software, and unlike those abstract and difficult theoretical courses in universities, we can modify and run the code at any time during the specific analysis of u-boot to test our understanding of knowledge. As long as you go all the way down this process, when your own debugging and writing u-boot is fully running on the development board, you are basically at the intermediate level or above of embedding. Since the foundation of software and hardware has been laid, when you continue to learn the kernel and driver development of software such as Linux and Android, you will no longer feel like you don't understand or difficult to get started. The first and second seasons of this course are the basis of the whole course, and basically after learning the first and second seasons, you can write a bootloader by yourself.

Lecturer introduction

Tegyin
Embedded circuitry
bootloader
Expert in the underlying field of operating systems

In the process of embedded teaching, I deeply feel the lack of embedded developers in the current undergraduate professional teaching: because the electronics major has not systematically studied computer professional courses such as "operating system" and "compilation principles", it is difficult to understand a set of huge software structures such as Linux and its compilation and development system and its abstract working mechanism in the later stage. Similarly, computer majors can only stay at the level of pure software development due to lack of comprehensive knowledge of electronic circuit technology and relatively insufficient experience in dealing with hardware.

Only when a developer has all the underlying concrete hardware knowledge and the upper abstract software knowledge can he become an excellent embedded system development engineer. Therefore, in the process of teaching and practice, he pays great attention to the interactive relationship between hardware and software, so that students know what it is and why.

Stage 1 - Prologue


u-boot version selection


Phase 2 - start.s analysis


The anomaly vector of u-boot and the principle of the boot mechanism of V210


Use the objdump disassembly to see u-boot's header code and exception vector handling


ENTRY and other macros, and the setting of CPSR registers


CP15 coprocessor base, VBAR anomaly vector base address mapping


cpu_init_cp15 Subprocess Analysis: Cache operations


cpu_init_cp15 Subprocess Analysis (continued): Branch prediction, MMU operation


cpu_initcrit sub-process analysis, experiment 1: Modify the u-boot source code to display the running status with LED lights


Experiment 1 (continued): Circuit analysis of GPIO input and output


Experiment 1 (continued): The principle of making a U-boot flashing image, MKV210 source code analysis


Experiment 1 (continued): Use the hexdump tool to analyze the hex-decimal code of the image


Overview of the compilation, linking, assembly process


Experiment 2: Write your own boot program: myboot


Experiment 2 (continued): The linking principle of two or more files


Experiment 2 (continued): Disassemble and analyze your own myboot


Experiment 2 (continued): Use Makefile to automatically compile myboot


Experiment 2 (continued): Improve our Makefile


Experiment 2 (continued): Automation variables in Makefile


Phase 3 - lowlevel_init.s analysis


Chip model judgment, reset method judgment


IO hold, reset mode judgment, interrupt initialization


UART initialization and asynchronous communication principles


UART analysis 1


UART analysis 2


UART analysis 3


UART analysis 4


Experiment 3: Use UART to display data in a specified memory


Fundamentals of DDR memory 1


Fundamentals of DDR memory 2


Fundamentals of DDR memory 3


DDR memory hardware connection on V210 open board1


DDR memory hardware connection on V210 open board2


Internal structure of DDR2-Device1


Internal structure of DDR2-Device2


DDR2-operated finite state machine


DDR2 MRS and EMRS registers


DDR2 read and write timings


Download
Tourists, if you want to see the hidden content of this post, pleaseReply




Previous:De4dot visualization tool
Next:Books that need to be read for PHP and web front-end development
Posted on 11/17/2014 8:18:50 PM |
Ahhhh
Posted on 9/22/2017 11:28:15 PM |
xuexixuexixuexixuexixuexixuexi
Posted on 7/15/2019 10:40:49 AM |
Thank you~~~~~~~~
Posted on 7/17/2019 1:33:54 PM |
Thank you for sharing, learning...
Posted on 7/15/2020 10:14:48 AM |
100000000000
Disclaimer:
All software, programming materials or articles published by Code Farmer Network are only for learning and research purposes; The above content shall not be used for commercial or illegal purposes, otherwise, users shall bear all consequences. The information on this site comes from the Internet, and copyright disputes have nothing to do with this site. You must completely delete the above content from your computer within 24 hours of downloading. If you like the program, please support genuine software, purchase registration, and get better genuine services. If there is any infringement, please contact us by email.

Mail To:help@itsvse.com