Week 03 – TCP/IP Stack, MMC Cards, TCP/IP MDD Demo & SD Card Not Detected by Computer

The PICDEM.NET 2 has a stand-alone Ethernet controller, ENC28J60 but the project is not going to use that stand-alone Ethernet controller. The project will use the Ethernet driver for the PIC18F97J60, which is the ETH97J60. It is interesting to note that the PICDEM.NET 2 has two Integrated Connector Modules (ICMs), one for the PIC18F97J60 and one for the ENC28J60. For this project I will be only using the first one. The source code for the TCP/IP Stack Demo Application is Read more

Week2: PIC18 Schematic, SPI Bus and ICSP Header

After some more thought and discussion with my supervisor, it was decided that we should program the Spartan-6 FPGA using the Slave Serial method. This would be slightly easier to implement and is closer to the original design brief, which is to have a master PIC18 and slave Spartan-6 during configuration. However, given the considerable overlap between Slave Serial and SPI configuration pins, there is still some room for changes at a later date if necessary. This week, my task Read more

Cross Compiler

Seems that the instructions to build the GCC cross-compiler that were previously on our wiki were lost when we turned it off. So, just to keep things documented, here are the instructions that successfully compile binutils, newlib and gcc for our platform. Setup some environment variables and un-tar the archives. $ export TARGET=microblaze $ export PREFIX=$HOME/mb $ export PATH=$PREFIX/bin:$PATH $ mkdir $HOME/buildbin/ $HOME/buildgcc/ $ tar -C $HOME -zxf binutils.tar.gz $ tar -C $HOME -zxf newlib.tar.gz $ tar -C $HOME -zxf Read more

9- HDMI half done!

The above picture WAS NOT made by photoshop! Yesterday night my HDMI design displayed not only a red screen but a green and color patterned screen as well! In this post I will describe the structure of my HDMI transmitter, the outcome of my testing and finally the features that it’s lacking. Here is the list of modules that bring this device to life: 1- Encoder: This module is the heart of the HDMI. It receives video data, Audio/Auxiliary data Read more

Week 0111

After a week of struggling RC4 seems to be ready and operating, here are some results: The key sent by a master (here it’s simply “Key” wrapped many times, creative isn’t it?) Then the message that needs to be encrypted (here “Plaintext”, yet again cunning) And finally the result ! Of course it’s hard to tell whether it’s true by simply looking at the cyphertext so here is the proof. It does match! Now, a few technical details: Generation of Read more

W03-Object File Format + Basic processor class

There are 2 part of my tasks for the week. The first task is to searching of available Java library that able to read object file format that is either Elf, S-Record or Intel-Hex. This step is very crucial for my entire project. If I couldn’t find any of these library on web, the worst case is I have to translate binary raw file format as the input before passing it to the processor.  Frankly speaking, I have never come Read more

Week 4: Setting up the test bench continued

It is almost unbelievable that it has been a month since I joined Aeste. This week has been my least productive week so far because I’d been trying to resolve non-important but work-hindering problems. During week 3, I managed to compile the remoteproc framework independently and the last thing that I needed to do is to just insert the module into any working kernel. Firstly, I tried to insert into a debian distribution. Unfortunately the debian’s kernel is quite old Read more

Taylor’s Engineering Fair 2013

I was invited to be an external judge at the Taylor’s Engineering Fair 2013 last week. I was assigned judging for their Capstone Project Prize, which is essentially a culmination of all the student’s knowledge. While most of the teams were quite okay, I was disappointed with several teams who exhibited little cooperation and teamwork. I got particularly cheesed when a group member took a phone call while the others were presenting their group work. I was also particularly hard Read more

Week 02 – microSD Card, SDHC Card, microSDHC Card & a Bold Hypothesis

I continued working on the task with the SD cards. I first tested out the read and write example code in Microchip’s manual on Implementing File I/O Functions Using Microchip’s Memory Disk Drive File System Library (AN1045). The code can be found on page 10 on the manual. The files that I included in the MPLAB project are FSconfig.h, FSIO.h, HardwareProfile.h, salloc.h, SD-SPI.h, Makefile, 18f97j60_g.lkr, FSIO.c, salloc.c, SD-SPI.c and also writeReadDemo.c which is the example code that I gotten from the Microchip’s Read more

Week1: Spartan-6 Configuration Interfaces

Another week, another intern. I started on 28 June and was told by my supervisor that I’ll be working mainly with Jia Xien in contributing to the hardware and firmware aspects of Aeste’s current project. After going through the basic tutorials on Git and C, I dove right into my task of the week: researching and weighing configuration interfaces for an FPGA. If you’re feeling an onset of TL;DR-itis, feel free to skip to the last paragraph.

(more…)