Trezor is a HD (Hierarchical Deterministic) wallet. The following terms are commonly used when we talk about HD wallet:
- Seed Phrase - Also known as Recovery Phrase or Mnemonic Seed
- Private Key
- Public Key
- Bitcoin address - Also known as hash of public key
Your wallet generates a random seed phrase and gives it to you when you get started with the wallet. Then the wallet uses various hashing algorithms and fixed standard to generate private keys hierarchically from the seed phrase. In the simplest words, hierarchically means adding a sequence number to the input to generate the private keys. For example, 0 is used for first private key, 1 is used for next private key and so on.
In short, we can say your wallet can create billions of private keys using a single seed phrase by just incrementing a number in the input. Then all private keys are stored in the wallet.
Now, when you request a bitcoin address from your wallet, it will take the first private key, create public key from it using Elliptic Curve Multiplication. Then create a hash of public key and give it you. That hash of public key is known as Bitcoin address.
You can use same address any number of time (although it isn't consider very privacy-friendly). Alternatively, you can request a new address and your wallet will use second private key, create second public key from it using ECC Multiplication, hash it and create second address.
This happens everytime you create a new address. So each address belongs to different public and private key pair.
PS: I am preparing a detailed thread which will explain how the entire conversion from seed phrase to bitcoin address happens in most simplest words so everyone can understand the technicality. The thread will be up by next Sunday. In the meanwhile, if things are still unclear to you, you can ask further.