Difference between revisions of "User:Pmcg521"
From REU@MU
Line 66: | Line 66: | ||
<tr><td> Began formulating research poster. Working on process queue structure.</td></tr> | <tr><td> Began formulating research poster. Working on process queue structure.</td></tr> | ||
<tr><td> Continue outlining research paper for submission to EWiLi Embedded Systems conference.</td></tr> | <tr><td> Continue outlining research paper for submission to EWiLi Embedded Systems conference.</td></tr> | ||
− | <tr><th style="font-family:verdana; border-bottom: 2px solid #000000; border-top: 2px solid #000000">'''Week 6: July 3-7''</th></tr> | + | <tr><th style="font-family:verdana; border-bottom: 2px solid #000000; border-top: 2px solid #000000">'''Week 6: July 3-7'''</th></tr> |
<tr><td> Major change of working state: switch from 64-bit to 32-bit for compatibility and teachability reasons.</td></tr> | <tr><td> Major change of working state: switch from 64-bit to 32-bit for compatibility and teachability reasons.</td></tr> | ||
<tr><td> Migrating all code from non-working 64-bit to working 32-bit.</td></tr> | <tr><td> Migrating all code from non-working 64-bit to working 32-bit.</td></tr> | ||
<tr><td> Processes create and context switch among one core. Push to resolve multiple cores.</td></tr> | <tr><td> Processes create and context switch among one core. Push to resolve multiple cores.</td></tr> | ||
− | <tr><th style="font-family:verdana; border-bottom: 2px solid #000000; border-top: 2px solid #000000">'''Week 7: July 10-14''</th></tr> | + | <tr><th style="font-family:verdana; border-bottom: 2px solid #000000; border-top: 2px solid #000000">'''Week 7: July 10-14'''</th></tr> |
<tr><td> Expanding startup code to include change in privilege level.</td></tr> | <tr><td> Expanding startup code to include change in privilege level.</td></tr> | ||
<tr><td> Finished outlining poster. Begin testing ethernet driver and multiple core threading.</td></tr> | <tr><td> Finished outlining poster. Begin testing ethernet driver and multiple core threading.</td></tr> | ||
− | <tr><th style="font-family:verdana; border-bottom: 2px solid #000000; border-top: 2px solid #000000">'''Week 8: July 17-21''</th></tr> | + | <tr><th style="font-family:verdana; border-bottom: 2px solid #000000; border-top: 2px solid #000000">'''Week 8: July 17-21'''</th></tr> |
<tr><td> Studied simple Linux-style multi-core scheduling algorithms using mutual exclusion.</td></tr> | <tr><td> Studied simple Linux-style multi-core scheduling algorithms using mutual exclusion.</td></tr> | ||
<tr><td> Create a method of scheduling across multiple cores with Xinu.</td></tr> | <tr><td> Create a method of scheduling across multiple cores with Xinu.</td></tr> | ||
− | <tr><th style="font-family:verdana; border-bottom: 2px solid #000000; border-top: 2px solid #000000">'''Week 9: July 24-28''</th></tr> | + | <tr><th style="font-family:verdana; border-bottom: 2px solid #000000; border-top: 2px solid #000000">'''Week 9: July 24-28'''</th></tr> |
<tr><td> Studied technical documentation on how Raspberry Pi CPU mailboxes have worked in the past.</td></tr> | <tr><td> Studied technical documentation on how Raspberry Pi CPU mailboxes have worked in the past.</td></tr> | ||
<tr><td> Test core mailboxes and work out kinks corresponding to core setup.</td></tr> | <tr><td> Test core mailboxes and work out kinks corresponding to core setup.</td></tr> | ||
<tr><td> Finished final version of research poster: Utilizing Multi-core threading on Embedded Xinu.</td></tr> | <tr><td> Finished final version of research poster: Utilizing Multi-core threading on Embedded Xinu.</td></tr> | ||
<tr><td> Finished research paper and submitted it to EWiLi conference.</td></tr> | <tr><td> Finished research paper and submitted it to EWiLi conference.</td></tr> | ||
− | <tr><th style="font-family:verdana; border-bottom: 2px solid #000000; border-top: 2px solid #000000">'''Week 10: July 3-7''</th></tr> | + | <tr><th style="font-family:verdana; border-bottom: 2px solid #000000; border-top: 2px solid #000000">'''Week 10: July 3-7'''</th></tr> |
<tr><td> Expand material of final presentation.</td></tr> | <tr><td> Expand material of final presentation.</td></tr> | ||
</table> | </table> |
Revision as of 17:56, 31 July 2017
Patrick J. McGee
Error creating thumbnail: Unable to save thumbnail to destination |
|
Logs
Week 1: May 30-June 2 |
---|
Began attempts to boot the full version of Embedded Xinu kernel with Raspberry Pi 3 |
Researched a Linaro Cross-Compiler to use for its Cortex A-53 ARM processor with ARMv8 architecture |
Drew diagrams of the boot sequence and compilation for better understanding of the Pi 3's mechanisms |
Traced through the dynamics of written Assembly code in the full research version of Xinu |
Week 2: June 5-9 |
Tested the LED program in updated Assembly code. Began testing the Serial Port Transceiver driver for the Pi 3 |
Read about Raspberry Pi bare metal programming via online sources |
Read about how the Raspberry Pi 3 controls the frequency of its UART pins |
Read ARM processor documentation about configuring UART clock frequency |
Used the oscilloscope in attempt to obtain the clock frequency of the UART pin |
Week 3: June 12-16 |
Read an online textbook about the ARM processor of the Pi 3. |
Successfully controlled the PL011 UART with a 48MHz frequency. Began porting full version of Xinu. |
Read ARM64 documentation on registers to use with process interrupt handling. |
Began working on the context switch for the 64-bit architecture. |
Finishing work on the files necessary for context switching and rescheduling. |
Week 4: June 19-23 |
Continue working on the boot functions of our implementation. Finished the Research Conduct course. |
Read about register manipulation in the ARM guide. Continue working on process creation. |
Begin researching physical memory space in the Pi 3. |
Read guides to porting from ARM32 to ARM64. Digging deep for a solution to a memory allocation problem. |
Read about ATAGS and what steps need to be taken to ensure the proper accessible RAM amount. |
Week 5: June 26-30 |
Narrowed down the memory issue to an Aarch64-specific register-load requirement. Working on the fix. |
Fixed memory issue - now allocating nearly all available memory. |
Presentation by Dr. Kim Factor on tips to create a good research poster. |
Began formulating research poster. Working on process queue structure. |
Continue outlining research paper for submission to EWiLi Embedded Systems conference. |
Week 6: July 3-7 |
Major change of working state: switch from 64-bit to 32-bit for compatibility and teachability reasons. |
Migrating all code from non-working 64-bit to working 32-bit. |
Processes create and context switch among one core. Push to resolve multiple cores. |
Week 7: July 10-14 |
Expanding startup code to include change in privilege level. |
Finished outlining poster. Begin testing ethernet driver and multiple core threading. |
Week 8: July 17-21 |
Studied simple Linux-style multi-core scheduling algorithms using mutual exclusion. |
Create a method of scheduling across multiple cores with Xinu. |
Week 9: July 24-28 |
Studied technical documentation on how Raspberry Pi CPU mailboxes have worked in the past. |
Test core mailboxes and work out kinks corresponding to core setup. |
Finished final version of research poster: Utilizing Multi-core threading on Embedded Xinu. |
Finished research paper and submitted it to EWiLi conference. |
Week 10: July 3-7 |
Expand material of final presentation. |