Özyeğin Üniversitesi, Çekmeköy Kampüsü Nişantepe Mahallesi Orman Sokak 34794 Çekmeköy İstanbul

Telefon : +90 (216) 564 90 00

Fax : +90 (216) 564 99 99

info@ozyegin.edu.tr

Ağu 17, 2020 - Ağu 20, 2020

Thesis Defense - Deniz İskender (MSCS)

 

 

Deniz İskender - M.Sc. Computer Science

Prof. Fatih Uğurdağ - Advisor 

Prof. Sezer Gören Uğurdağ - Co-advisor

 

Date: 20.08.2020

Time: 10:00

Location: This meeting will be held ONLINE. Please send an e-mail to gizem.bakir@ozyegin.edu.tr in order to participate in this defense.

 

                                 

A C-COMPILER AND WORST-CASE EXECUTION TIME ANALYZER FOR  VERYSIMPLECPU

 

  

Thesis Committee:

 

Prof. Fatih Uğurdağ, Özyeğin University

Assoc. Prof. Hasan Sözer, Özyeğin University

Asst. Prof. Onur Demir, Yeditepe University

 

 

Abstract:

VerySimpleCPU (VSCPU) is a microcontroller (MCU), initially developed at Özyeğin Univ., and later on, also at Yeditepe Univ. It proved to be a great teaching tool since 2012. VSCPU, more recently, proved to be also a research tool. RISC-V could be an alternative to VSCPU, where the emphasis is on microprocessors (uPs). Even the MCU version of RISC-V is harder to teach and manipulate than VSCPU. RISC-V's software toolchain is also very difficult to manipulate. Like any other CPU, a compiler would have made VSCPU a much more usable CPU. This thesis gave VSCPU its first compiler (a C-compiler), hence making it the very first Turkish CPU with a compiler. In addition, this thesis also contributed to our VSCPU toolchain a Worst-Case Execution Time (WCET) analyzer. Most microcontroller applications are hard real-time, and real-life execution of the code on the CPU may not easily catch the worst-case execution time. The best approach is doing WCET analysis, which needs to be at least customized for the CPU it targets in order to come up with accurate estimates. Besides the compiler and WCET works, this thesis has a third part, namely, optimization. Most open-source compiler components are for uPs, which have instructions that support stack based operations. However, MCUs usually do not have such instructions and, hence, can be better in area, power consumption, and clock frequency. The solution we used was to emulate a stack based processor on VSCPU through extra code generated by the compiler. However, that makes the program footprint larger, hence making the memory larger and program slower. Keeping the memory as small as possible is important especially in the case of implementing MCUs on FPGAs, which is our common VSCPU use case. The optimized compiler maps stack frames to heap frames and achieves 40% smaller program footprint.

 

Bio: 

Deniz İskender was born in 1992. He received a B.Sc. degree in Computer Science from Ozyegin University in 2015. He worked at OBSS as a Java software developer between 2015 and 2017.  He has experience in computer science, computer engineering, and software.  

 

--------------------------------

Kişisel Verilerin Korunması/Aydınlatma Metni

Özyeğin Üniversitesi Fen Bilimleri Enstitüsü bünyesindeki programlarda, izleyici olarak katılınan online platformlarda gerçekleştirilen aleni akademik faaliyetlerin sadece idari ve yasal yükümlülüklerin yerine getirilmesi amacıyla kayıt altına alındığı, söz konusu kayıt ile elde edilen kişisel verilerin ilgililer tarafından başka bir amaçla kullanılamayacağı hususunda şahsınızı aydınlatır, toplantıya gönüllü katılım ile bu hususu beyan ve taahhüt etmiş olduğunuzu belirtir, gereğini önemle rica ederiz. 

Fen Bilimleri Enstitüsü