











Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
An introduction to programming the intel 82573l gigabit ethernet network interface controller (nic). It covers the history of token ring and ethernet technologies, their differences, and the features of the intel 82573l nic. The document also includes instructions on accessing the nic's registers and some troubleshooting tips.
Typology: Slides
1 / 19
This page cannot be seen from the preview
Don't miss anything!












host-1 host-2 host-3 host-
Token Ring Media Access Unit
Technology developed by IBM in the 1960s
host-1 host-2 host-
host-
HUB “Collision Domain”
CSMA/CD = “Carrier Sense Multiple Access/Collision Detection”
ETHERNET
Ethernet is the most widely used data sending protocol. Each computer listens to the cable before sending data over the network. If the network is clear, the computer will transmit. If another PC is already transmitting data, the computer will wait and try again when the line is clear. If two computers transmit at the same time a collision occurs. Each computer then waits a random amount of time before attempting to retransmit. The delay caused by collisions and retransmitting is minimal and does not normally affect the speed of transmission on the network.
TOKEN RING
The Token Ring protocol was developed by IBM but it has become obsolete in the face of ethernet technology. The computers are connected so that data travels around the network from one computer to another in a logical ring. If a computer does not have information to transmit, it simply passes the a token on to the next workstation. If a computer wishes to transmit and receives an empty token, it attaches data to the token. The token then proceeds around the ring until it comes to the computer for which the data is meant.
Posted by Heather C Moll (Last Updated March 24 2004)
D-Link 24-port 10/100/1000-Mbps Ethernet Switched Hub
computer science department’s Local Area Network
anchor
anchor
anchor
anchor
anchor
anchor
anchor
anchor
PCI/PCI-e Bus
MAC/Controller
MDI interface
SM Bus interface EEPROM
Flash interface
LED indicators
S/W Defined pins
MDIO interface interface
#include <linux/pci.h> #include <asm/io.h> #define E1000_STATUS 0x unsigned int iomem_base, iomem_size; void *io;
// remap the device’s i/o-memory into kernel space devp = pci_get_device( VENDOR_ID, DEVICE_ID, NULL ); if ( !devp ) return –ENODEV; iomem_base = pci_resource_start( devp, 0 ); iomem_size = pci_resource_len( devp, 0 ); io = ioremap_nocache( iomem_base, iomem_size ); if ( !io ) return –ENOSPC;
// read and display the nic’s STATUS register device_status = ioread32( io + E1000_STATUS ); printk( “ Device Status Register = 0x%08X \n”, status );
Many companies do an excellent job of providing information to help customers use their products... but in the end there's no substitute for real-life experiments: putting together the hardware, writing the program code, and watching what happens when the code executes. Then when the result isn't as expected -- as it often isn't -- it means trying something else or searching the documentation for clues.
-- Jan Axelson, author, Lakeview Research (1998)