Friday 13 February 2009

C++ and MicroCodes

So yesterday I was given a new project to get cracking on a program that was originally written to display and update micro codes into a BIOS ROM file. The program is written in C++. I've got a little background in the language, but not enough. So I've got my work cut out for me as some people would say.

So microcodes, what are they? Microcodes are made by the CPU engineer up building of a processor. These microcodes act as a fix or a workaround for errors within the processor. They can be stored in a high speed memory usually embedded into the processor itself. They translate machine instructions into sequences of detailed circuit-level operations. Now Wikipedia says they are not supposed to be visible or changeable by a normal programmer of an assembly programmer but this isn't strictly true. These codes can be embedded into the BIOS ROM and flashed to the BIOS PROM, where the microcodes will then be utilized.

So what do I have to do? My job entails taking the current program we have for displaying and updating these microcodes and adapting it to be able to upload microcode blocks into the ROM that may be larger than the microcodes it's replacing. The current program will overwrite adjacent sectors in the ROM, removing other microcodes. So I'm basically going to be working a fix.

So here I go, I've just finished installing Microsoft Visual Studio 2008 and I'm looking forward to doing more programming.

No comments:

Post a Comment

Feel free to comment, only users with Google Accounts are allowed. All comments are moderated before posting.