The main function of a network interface card is to encapsulate data and translate it into electronic signals to be sent on the Ethernet cable to its destination. In order to complete this task, the data originates from the motherboard, which transfers information to the device through its expansion slot. As discussed, the current standard is PCIe, and most NICs drop into x1 or x4 slots. It is still possible to purchase PCI-based NICs for backwards compatibility. Standard PCI slots can still be found on modern motherboards, allowing legacy cards to work in newly upgraded computers.
Once the data is on the card, it is directed towards the controller chip, which is similar in concept to a low-end CPU. Data received by the controller is read and encapsulated with the information of the destination prior to being sent out on the line. If the data is received from the Ethernet cable, the controller is responsible for stripping the first three layers of encapsulation prior to handing the data off to the computer. The RJ45 jack is responsible for generating and receiving the electronic signals that are put on the network cable.
The firmware is stored on a chip known as an EPROM (erasable/programmable read-only memory) that can be manually updated to provide more functionality and code fixes.