Week #8 – SSL Client

This week I worked on the Generic HTTP Client with SSL. Initially I tried to run the original program provided by the MICROCHIP TCPIP stack. I enabled the STACK_USE_SSL_CLIENT in TCPIP ETH97.h found in TCPIP Config.h . Then I added the RSA.c and ARCFOUR.c files which were necessary in order Read more…

WEEK #7 – Git Commit

I made my first commit in git this week, by creating a repository and adding all the necessary files to the project. First I had to go through the git flow chart which was a very helpful graphical aid in understanding the branches associated with github. I first added the Read more…

WEEK #6 – Telnet Server

Happy Chinese New Year to everyone. The week started off with a telnet server module. The initial application was provided by microchip, and I tried to run the program. In order to run this application the user has to uncomment STACK_USE_TELNET_SERVER and define AN0String in the main application. Going through Read more…

Week 5 – TCP/IP Layer

I continued where I left off from last week; setting up the physical layer for Ethernet connection. After taking a good look at the documentation available, I realized that there were a minimum of 3 commands required to get the line up and running. These commands were, including TCPIP.h header Read more…

Week 4 – Ethernet Layer

This week I started work on the network connections from the chip, mainly the ETHERNET communication from MCU to network. I was fairly new to the subject but not completely as I have completed my Data Communication module already, hence was familiar to the OSI model and other network conventions. Read more…

Week 3 – SPI Comms

This week I worked on SPI (Series Peripheral Interface) communication from the PIC18F97J60 to 25LC256 series EEPROM which comes with the PICDEM.NET2 development board. It was a completely new area for me and I was reading up a lot about the basics of SPI communication supported by the PIC. I Read more…

Week 2 – UART Comms

The second week of internship was not very productive. I still faced difficulties with the UART communication. In order to understand the flow of data better I tried to write the UART code in assembly language. I came to realize that there was more to coding than just writing lines. Read more…

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…