Motherboard Forums

Thread Tools Display Modes

Re: understanding physical address usage

Yousuf Khan
Posts: n/a
      01-13-2009, 12:41 AM
Daniel Chicayban Bastos wrote:
> The processor’s I/O address space is separate and distinct from
> the physical-memory address space. The I/O address space consists
> of 2^16 (64K) individually addressable 8-bit I/O ports, numbered 0
> through FFFFH. I/O port addresses 0F8H through 0FFH are
> reserved. Do not assign I/O ports to these addresses. The result
> of an attempt to address beyond the I/O address space limit of
> FFFFH is implementation-specific; see the Developer’s Manuals for
> specific processors for more details.

These are also known as i/o ports, because each of the addresses in this
map were known as port registers.

> So, these 64K do not eat up my main memory, correct? However,
> memory-mapped i/o do, right? So I'd like to find out what sort of
> addresses the various hardware parts need and see what I am left with
> for kernel code and data, and user code and data.

There's two ways hardware can use up your memory map. One way is the way
video cards use it up, by reserving a part of the memory map and putting
its own ram in that location. They call this an aperture. The memory
addresses reserved by this method typically a fixed in size and location
(though often adjustable prior to boot with the BIOS setup screens).

Another way devices can use memory is to time-share the system memory.
This is how DMA and bus-mastering devices work. The device locks down a
part of the memory making it inaccessible even to the processor during
that time, and transfer data in and out. Once that operation is done,
then it releases the memory and the CPU can go in there and operate on
that data. It frees up the CPU from having to do the menial and
time-consuming task of transferring data for a device, by letting the
device itself do the transferal. The memory addresses that DMA can use
span the entire memory range, since they don't lock down the whole
memory for the complete duration of time that the computer is on.

Yousuf Khan
Reply With Quote

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off

Similar Threads
Thread Thread Starter Forum Replies Last Post
Trampoline for Virtual to Physical address mapping karthikbg Embedded 2 01-24-2007 02:53 AM
How to map physical address of cs8900a under linux device driver? Aimingoo Embedded 2 05-23-2006 07:59 PM
How to map physical address of CS8900A under linux driver? Aimingoo Embedded 0 05-23-2006 12:49 PM
size of physical memory is given by size of address registers in CPU or size of address bus?? Arunaabh Intel 4 05-06-2006 05:05 PM
ASIC Physical Synthesis, Physical Compilation requirement in India, Bangalore abdul Hardware 0 12-14-2003 11:48 AM

All times are GMT. The time now is 11:58 AM.

Welcome to Motherboard Point