140 likes | 280 Views
OS Implementation On SOPC Midterm Presentation. Performed by: Ariel Morali Nadav Malki Supervised by: Ina Rivkin. Project Goals. Assemble a SOPC system, using Nios II processor on Altera’s DE2 board, based on Cyclone II FPGA. Implement Micrium’s µC OS-II.
E N D
OS Implementation On SOPCMidterm Presentation Performed by: Ariel Morali NadavMalki Supervised by: Ina Rivkin
Project Goals • Assemble a SOPC system, using Nios II processor on Altera’s DE2 board, based on Cyclone II FPGA. • Implement Micrium’s µC OS-II. • Use the system to create a web server.
Achievements • Learning and using Altera’s environment: Quartus II, SOPC Builder & Nios II IDE. Done • Creating a small SOPC with nios II, uart and OnChip memory. Done • Adding more peripherals to the system, like external SDRAM memory (8 MB). Done
Achievements • Learning Micrium’s µC OS-II: Requirements, functionality, implementation flow etc. Done • Using µC OS-II to Run two processes simultaneously. Done
Implementation flow • The on-chip memory is not sufficient to support the OS. For that reason we added the SDRAM 8MB external memory. In order to do that we added a SDRam controller to the SOPC, and assigned the appropriate pins.
Implementation flow NIOS II CPU and Peripherals as seen in the SOPC Builder
Implementation flow System Schematics as seen in Quartos
Implementation flow • We created a new project in the nios II IDE, and added a system library supporting the µC OS-II.
Implementation flow • We configured the system library properties. For example, We changed the memory used by the OS to SDRAM memory.
Implementation flow • The OS can be configured via the RTOS options window. For example we can include\disinclude code for Mutexes, Semaphores etc.
Implementation flow 5. We wrote a C++ code which uses the OS functions in order to run several processes simultaneously.
Demonstration You will see two processes running simultaneously: • A snake running through the red leds and the 7 segment displays, with higher priority. • A countdown displaying in the green leds and on the screen, with lower priority. Terminates when done.
Project Schedule • Add three new peripherals: VGA, Keyboard and Ethernet. Until 15.11.09 • learn how to use them with µC. Until 29.11.09 • Write a small program that demonstrates the use of the new peripherals. Until 13.12.09 • Final presentation and report. Until 27.12.09