Weekly Log #1 – Intro

It was the first week of internship and I reported in for work on Monday 7th Jan. The first item on the agenda was an introduction to the work place, the expectations and the responsibilities of the job. Furthermore the work timings and other details were given out. My responsibilities Read more

http://www.sxc.hu/photo/1160562

Optimising C for T3RAS

After lots of testing i found certain variances that can help in speeding up code. These are a few simple practices. Know your target. If the T3RAS core you’re compiling for contains hardware features like multiplier and barrel shifting, include it when compiling your code using -mattr=barrel,mul . Both instructions Read more

http://www.sxc.hu/photo/1160562

T3RAS LLVM Backend Features

The T3RAS backend in llvm is based on the microblaze 6.3 architecture set but without hardware support for floating points and without hardware division. The T3RAS backend contains 3 variants (T3RAS1T, T3RAS2T, T3RAS4T) which is described below. To list all variants and features of T3RAS, simply run: llvm-as < /dev/null Read more

http://www.sxc.hu/photo/1160562

LLVM Backend Port Progress

While i was successful in making sure the backend appeared with the right name and features that were needed, there were still many shortcomings that needed to be addressed. After a while of copying, modifying and adapting code, I was finally able to change the names and variants. Instead of Read more

http://www.sxc.hu/photo/1160562

LLVM

Finally managed to compile LLVM and clang for microblaze. I find using configure –target= or -target doesnt work while using –enable-targets=”mblaze” worked. I found the documentation to be very poor on this and does not mention anything about the other options available in configure such as using –enable-targets.  I also Read more

First Day

First day at aeste, tried to set up workplace but had to leave the PC to download the eclipse addon overnight. Will compile the tools and check eclipse tomorrow.

LwIP on AVR32

Since the basic function for HAL is able to run without serious problem. I have to put HAL on hold and start to do net layer for AVR32. However, I will come back to HAL when bugs ‘fly’ out or when the time I want to increase the performance of Read more

AVR32 Development

These two weeks, my task is writing a Hardware Abstraction Layer (HAL) for AVR32. So I need to work on AVR32 along with AVR32 studio and development board. The AVR32 is 32-bit micro-controller family developed by Atmel. Atmel provides most of the drivers for the on-chip peripherals and on-board components Read more