Archive for the ‘hardware’ Category

Segementing how a microprocessor manages more than 64K of memory

April 25, 2013

Segmenting is a memory management technique which microprocessors use to address more than 64kilobytes memory.In this example I will demonstrate how
Intel 8086 accomplishes addressing more than 65K memory.

A memory word is addressed by addressing by  adding a segment pointer and a word address as shown
in the picture.

The possibility of addressing one megabyte doesn’t necessary mean that the processor has a physical memory of 1MB.
You can make a program as if the processor had 1MB of memory and the
processor can fetch the segment that is being addressed from the computers hard drive.


Read other people’s blogs about on Technorati about: , , , , ,

Läs även andra bloggares åsikter om: , , , , ,

Writen by: Rikard Grossman-Nielsen
Technorati token: F6U8ZD2JJGDG


The general parts of a microprocessor and a chart which describes the history and classification of processors

September 29, 2012
Basic Parts of a Microprocessor.

Basic Parts of a Microprocessor.

If we start in the upper half of the schematics you will find components all microprocessors must have: a control unit, an arithmetic unit (AE in th picture), an different kinds of registers.

The control unit is built around a microcode program in most microprocessors. The microcode is stored in a rom. This has two advantages first a rom increase the ammount of logic which you can implement per square inch, second it is easy to upgrade the microcode within the rom to implement new features and bug fixes.

If we look to the right we will find the data and adress registers of the processor. The dataregisters are 8bit wide and the adressregisters are 16bits wide. Among the adress registers you can find registers such as PC(Program Counter), SP(Stack Pointer) and others. The program counter points to the memory adress of the next instruction for the microprocessor to perform and decode. The stack pointer points to the stack where the data and instructions are stored.

Furthermore you can find i/o registers which are used for the processorer to perform i/o operations directly without acessing the random acess memory. One examole of such an operation is a DMA(Direct Memory Acess operation).

Outside the dotted box you cand find the chips which are needed to make a complete computers systems.
These are:
-ROM and RAM chips
-UART chips for serial communication
-PIO chip for parallel communication
-DAC(Digital Analog Converter) chip, which converts signals between analog and digital form.

There also one chip micro computer chips where all of the above chips are integrated in order to fit a complete computer onto one single chip.

Read other people’s blogs about on Technorati about: , , , , ,

Läs även andra bloggares åsikter om: , , , , ,

Writen by: Rikard Grossman-Nielsen
Technorati token: F6U8ZD2JJGDG

How microprocessors handle interrupts:interrupt management

July 31, 2012

Intetrrupts are made asynchronously to the main code which is executed whereas polling is performed syncronously to the application being executed. The main advantage of interrupts are that they give a short reponse time if we assume that several interrupts are not made at the same time. In realtime systems which must respond to events very fast interrupts must be used to achieve a quick enoguh response.

The three disadvantages of interrupts are:

1. They require extra hardware, especially if interrupt management is to be done outside the processor.
2. Each time an interrupt is made, a time is needed to handle the interrupt. This ammount of time is called overhead.
3. The interrupt routine is exected aschynorously to the the main thread which means that it’s diffciult to know how much memeory that needs to be allocted for interrupt management.

Read other people’s blogs about on Technorati about: , , , , ,

Läs även andra bloggares åsikter om: , , , , ,

Writen by: Rikard Grossman-Nielsen,
ITService-GNR (ITTjänst-GNR),
Technorati token: F6U8ZD2JJGDG

How microprocessor perform I/O mangament:polling, direct memory acess and interrupts

May 9, 2012

This post will be abou the first method called polling. The next two posts will cover the other methods.
The first method is called polling. Polling is also called programmed I/O, and it’s also the simplest one to implement from a hardware perspective. I/O units are connected to the system data and an address buss in a  regular fashion trough necessary circuitry. Depending on the type of microprocessor they can also be connected to certain lines on the control buss.

The goal with a communication schedule is to have a well ordered procedure to decide what I/O unit is to be served by the processor next. Polling is a synchronous method since it doesn’t interrupt the program which is currently executed by the microprocessor. When polling is used the microprocessor will on regular intervals ask each unit connected to the data buss if it needs to be served.  The sensing if a unit needs to be served is in practice done by sensing a flag bit in the status registry of the unit.

The advantages of polling are:
1. It requires very little hardware and no dedicated lines.
2. it’s synchronous with the execution of the prgoram. This is a big advantage since the programmer know s exctly when an external unit is polled and who long time it takes to serve that unit.

The disadvantages of polling are:
1. It requires special hardware if interrupt management is to be done outside the microprocessor.
2. Each time an interrupt is made, there’s an overhead time to manage the interrupt

Description of polling techonology

Description of polling techonology

Read other people’s blogs about on Technorati about: , , , cpu, , ,

Läs även andra bloggares åsikter om: , , , , , ,

Writen by: Rikard Grossman-Nielsen
Technorati token: F6U8ZD2JJGDG

Different kinds of roms and their applications.

March 31, 2012

There are four types of ROM: regular ROM, PROM, EPROM and EAROM.

ROM stands for read only memory. A ROM can’t be changed, which means that once it has been manufcatured the contents of it can’t be changed.
The fact thaht ROMs are permanent gives them a security over programs stored in regular memory which can be changed by powerloss, viruses,
hackers and accidental misstakes. A typical application of a ROM might be an industrial machine that reapets the same sequence over and over
to manufcature auto parts. Another example might be the boot up software for a regular PC, which performs the same task each time the power is turned on.
ROMs however also have som disadvantages. One is that it takes a long time to manufacture a rom, which means that you might loose revenues due to cost delays. Abnother one is that the unit price of a ROM is quite high which means that you have to order at least something like thousand units, this fact makes the intial investment cost high. Once the ROM has been manfactured and in error has been discovered in the information store you can’t change the contents, this means making misstakes are very expensive.

To solve the problems of rom three other types of user programmable ROMs has been developed: PROM, EPROM and EAROM.
PROM stands for Programmable ROM. Information is program into a prom by burning of different electrical connection points. Depending of what’s is burned you code either ao one or a zero into the rom. PROMs are relatively cheap to manfucaturer which means that misstakes are not as expensive. PROMs are often used for testing phases where
you need to try out many different programs before finding the right one. When the right program has been found an eletrically compatbile ROM can take the place of PROM giving the final product a greater relability. However if you need to make frequent changes you have to discared one PROM each time which will be a vaste of money in the long run. Therefore there are ROMs which can be erased and reprogrammed by the user.

EPROM stands from electrically programmable ROM. You can erasure the contents of a an EPROM by submitting it to ultraviolet let for five to ten minutes. The circuits are however relatively expensive per unit and aren’t pin compatbile with PROMS and ROMS, this means that you have to change a design of the circuit board when you wish to make the final product which often uses ROMs. EPROMs loose their charge of many years pass by which means that if you have applications which will run for many years you should choose ROMs or PROMs instead.

Finally there are EAROM which stands for Electrically alterabkle ROM. These ROMS can be both written and read. However writing is very slow so it can be considered as a read often memory. EARoms is an expensive and complex technolog and is therefore most oftenly used for industrial and military applications.
To sum it up the kind of ROM you will use depends on the application type.

Circuit diagram of a 16K static ROM (83164).

Intel 2164 a 64kbit dynamic ROM, with an access time of 150ms.

Deletion of an Intel 2716 16K EPROM. The deletion is performed by directing UV light onto the window of the circuit.

Read other people’s blogs about on Technorati about: , , , PROM, , ,

Läs även andra bloggares åsikter om: , , , , ,

Technorati token: F6U8ZD2JJGDG

A lesson on the difference beetween static and dynamic ram

March 13, 2012

The static ram stores information as long as the power is turned on. This type of memory doesn’t need timing since it’s asynchronous.

Dynamic ram on the other needs to be recharged at regular intervals to maintain it’s information. The recharging is timed by an external timing crystal. This type typically needs to be refreshed
every few milliseconds. The refresh is done by reading the information and thereafter writing it back so that memory cell is kept up to date. The refresh is typically done several rows or columns at a time.

Dynamic ram is more cost effective to produce since it has a greater component density than static ram. On the other hand static ram is more reliable since it doesn’t need to refreshed at regular intervals.

Read other peoples blogs about on Technorati about: , , , , , , ,

Läs även andra bloggares åsikter om: , , , , ,

Technorati token: F6U8ZD2JJGDG

Intel 8080 and the way the 40pins limits it’s IO performance.

February 23, 2012

Another lesson on microprocessors and the intel8080 especially. The Intel 8080 has 40pins which enables it communicate with the outside world. The processors is 16bit bits internally but it only has enough pins on the databuss to fetch 8bits at a time. The processor is able to process 16bit instructions by fetching two 8bit memory positions after each other through use of a technology called multiplexing. The problem is that the multiplexing technology is slow so at best the intel 8080 is only a little bit faster than an 8bit processor of similar specifications. The only way of speeding up the Intel 8080 and making it able to load 16bits at a time from memory would be to give it more pins to communicate with the outside world.

A nice video on microprocessors

February 18, 2012

I found a nice video from Intel on how microprocessors are manufactured. The video describes the manufacturing process of a microprocessor in laymen terms.
Click this link to see the video.

Läs även andra bloggares åsikter om , , , , , ,

Comparing netbook chipsets AMD C50 and AMD C60

February 15, 2012

My netbook Acer Aspire One 522 has an AMD C60 chipset. There’s also a sibling to this chipset called AMD C50. The difference between these two chipsets are that the AMD C60 has a turbo function for the processor and the GPU which means that it can speed up when there’s a need for extra speed. The downside is that this turbo function makes the components hotter so you can only use the turbo for a limited amount of time. otherwise the chips will overheat. You can also check out this link for a more detailed comparison of the two chipset.

Läs även andra bloggares åsikter om , , , , , , ,

It is an interesting fact that microprocessor of different architecture perform roughly the same.

February 8, 2012

I’ve read some more on how 8080 process JMP instructions. I’ve also read a comparsion on the architecture of motorola 6800, z80 and in8080. The 6800 has a few number of registers compared to z80 and intel8080 which have a similar number of registers. It is an interesting fact that these microprocessors have roughly the same performance but with different designs. You should also note that roughly the same speed is meant as an average and thah some of these might perfom better than the other hen it comes to certain operations.

Läs även andra bloggares åsikter om , , , ,

%d bloggers like this: