AES is one most important block ciphers used right now. AES has several modes of operation like CBC, ECB. This post is about GCM (Galois Counter Mode). This is used in several specifications. For example, This is I and E in PCIe IDE :)

GCM provides authenticated encryption. Basically, It keeps things secret and makes sure nobody played around with these secret. I read the NIST document for GCM but I think the best resource I found is paper.

From Wiki, This is one-liner description

Like in normal counter mode, blocks are numbered sequentially, and then this block number is combined with an initialization vector (IV) and encrypted with a block cipher E, usually AES. The result of this encryption is then XORed with the plaintext to produce the ciphertext. Like all counter modes, this is essentially a stream cipher, and so it is essential that a different IV is used for each stream that is encrypted.

Basically, It computes The cipher from the IV and Counter and do G(128) multiplication to get the final cipher then calculate the Auth Tag to be sent with that data. Example image

In paper, They have a good example of packet based GCM encryption. This is very similar to what PCIe IDE does. Example image