Network Card Operations
Computer Bus and NIC Functionality
The NIC must have a transceiver of the correct type to transmit on its intended hardware media. Therefore when moving a NIC from one type network such as 10 Base2 and 10BaseT to the other, the adapter must be configured to use the correct transceiver (there are two connectors to support both types of network). The NIC has a permanent media access control (MAC) address which is used in order to tell what card data is for. The NIC converts between the parallel data format of the computer's internal data bus and the serial data stream on the network.
The card slots are used to put additional cards such as video cards, sound cards, internal modems, or network cards into. Some motherboards today include video and sound without the addition of a extra card. These cards slots today are mostly PCI type card slots. When talking about cards that are plugged into a PC you are talking about the expansion bus. The expansion bus is a means of a microprocessor extending its communication ability further into the outside world. It is a data exchange means between add on cards and the microprocessor and the motherboard. These busses commonly support 16 or 32 bit parallel communications as noted below. The larger the parallel bus, normally the faster the interface will be. There have been several types of expansion buses.
- ISA - Industry Standard Architecture. Used when the original 8088 8bit microprocessor based personal computers were produced. (16 bit).
- EISA - Extended ISA used when the 80286 thorough 80486 series microprocessors were being produced. It is backward compatible with ISA. This bus is still used but is being phased out and is almost gone today. Established in 1988. (32 bits)
- MCI - Microchannel architecture by IBM and used mainly on IBM brand computers. Established in 1988. (16 or 32 bits).
- PCI - Peripheral Component Interconnect. The popular expansion bus of choice. It is significantly faster than EISA. This is a 32bit bus with plug and play capability from Intel.
- AGP - Accelerated Graphics Port. This bus is developed for fast video cards. It is currently up to 4X mode speed.
The current popular expansion bus is the PCI (Peripheral Component Interconnect) bus for all cards except the graphics cards. For graphics cards, the bus of choice is AGP. Most motherboards today have one AGP slot and several PCI slots. Your expansion cards will plug into these card slots. Be sure you get cards that match the available type of slots on your motherboard. Other popular computer buses include NuBus for the Apple Macintosh, VESA local bus, and PCMCIA (PC Card).
Configuration of a PC involves configuration of a PC's resources. These resources include various mechanisms the microprocessor and/or the system will use to talk to a add on component such as a network card, video card or sound card. Each component requires resources of the following type to talk to the rest of the system.
- IRQ- Interrupt Request
- Bus I/O Port - Normally 0x300, 0x280, or 0x310 for network interface cards
- Bus memory address
With the advent of the plug and play standard, these resources are automatically allocated on newer systems, but you may need to allocate these resources manually if you configure an older system. Normally these resources may be configurable using jumpers, DIP (Dual in-line Package) switches or software which will set internal memory to store specific values on the device you are configuring. In DOS, Windows 3.1, or Windows95 a program called msd.exe will determine available IRQs. On Windows NT, Under Administrative tools, use Windows NT Diagnostic Tool, or issue the command "WINMSD.EXE".
Typical IRQ Uses
|2||Secondary IRQ controller or video|
|3||COM2, COM4, or bus mouse|
|5||LPT2 or sound|
|8||Real time clock|
|9||Unassigned, Redirected IRQ2*, sound card, third IRQ controller|
|10||Primary SCSI controller|
|11||Secondary SCSI controller|
|14||Primary Hard Drive Controller|
|15||Secondary Hard Drive Controller|
I/O Ports serve as the address that the microprocessor uses when communication with the device
|300||Network Interface card|
|310||Network Interface card|
|320||Hard disk controller|
|3c0||EGA/VGA video adapter|
|3d0||CGA(Obsolete) video adapter|
|3f0||floppy disk controller|
Network cards typically use port hexadecimal addresses 280, 300, 320, or 360.
Some cards such as the network interface card will require a buffer memory area due to the speed and quantity of information that must be transferred between the card and the rest of the system. These addresses are normally unique for each card. Network interface cards typically use D8000 for their base memory address.
Other card enhancements to improve throughput to/from the card
- Direct Memory Access (DMA) - A controller that can transfer information between system memory and the card. This relieves the microprocessor of performing this activity thus speeding up operation of the computer.
- Bus mastering - The card moves data into system memory by taking control of the computer system data bus. The microprocessor does not need to be involved. This is similar to DMA.
- Shared memory - Memory that is on the card that the computer system can see the same as system memory. Both the microprocessor and the card can read and write information from and to this memory.
- RAM buffering - This involves a high speed RAM (Random Access Memory) buffer on the card where data from the computer system can be stored while waiting for transmission on the network.
- Onboard microprocessor - The card may include its own microprocessor handling card operations and data transfer. The computer system does not need to process data from the network since it may be done on the card.
Most operating systems today use drivers that work with the operating system to interface with the various cards that are installed. Usually when a card in installed on a system, a driver program must also be installed to enable the computer to use the card.