Embedded real-time systems in general and specifically embedded multiprocessor system-on-chip design and programming, hardware/software codesign, computer architecture, and computer communication protocols
"Finalist" in Mentor Graphics Catapult C synthesis contest in 2011
Publications
Journal Articles
Mohamed A. Bamakhrama and Todor P. Stefanov. "On the Hard-Real-Time Scheduling of Embedded Streaming Applications". Design Automation for Embedded Systems, Special Issue on EMSOFT 2011 PDF | DOI
Peer-Reviewed Conference Proceedings
Jiali Teddy Zhai, Mohamed A. Bamakhrama, and Todor Stefanov. "Exploiting Just-enough Parallelism when Mapping Streaming Applications in Hard Real-time Systems". In Proceedings of the 50th Design Automation Conference (DAC 2013), pp. 170:1–170:8, May 29-June 7, 2013, Austin, TX, USA. PDF | DOI
Mohamed A. Bamakhrama. "Embedded Multiprocessor System-on-Chip for Access Network Processing". Master Thesis, Technische Universität München, Munich, Germany. 2007. PDF
Teaching
Teaching Assistant for Computersystemen en Telematica: 2011, 2012
Teaching Assistant for Digital Technique: 2010/2011, 2011/2012, 2012/2013
DaedalusRT: is a system-level design (SLD) framework for designing hard-real-time embedded streaming systems. It accepts as an input a set of sequential applications written in a constrained form of the C programming language (called static affine nested loop programs (SANLPs)). After that, it performs the following steps:
Automatic parallelization: In this step, each application is parallelized automatically which results in two representations: one based on the polytope model and the other based on cyclo-static dataflow (CSDF)
Analysis: In this step, the framework performs hard-real-time schedulability analysis on the CSDF representation to determine the minimum number of processors needed to schedule the applications and the mapping of tasks to processors
System Synthesis: In the last step, the framework synthesizes a multiprocessor system-on-chip (MPSoC) platform which runs the parallelized applications.
darts: is a toolbox for hard-real-time schedulability analysis of applications modeled as acyclic Cyclo-Static Dataflow (CSDF) graphs. It constitutes a part of the DaedalusRT framework. You can get the source code of this toolbox from here
microblaze-pmbus: is a system on FPGA which demonstrates a PMBus driver implementation for Xilinx Microblaze processors. The current driver has the following limitations: 1) "read-only" functionality (i.e., reading current, voltage, and power) from the PMBus controller without "write" functionality, and 2) Support for Xilinx ML605 boards only using TI UCD9240 controller chip. For background information, you can look here
Contact
You can visit me or send "snail" mail using the following address: