If wanted to, you could pretty much figure our schedule out for the next 20 years.
Each year all the teams of a division play all the teams of two other divisions - one in the AFC and one the NFC (so we will play every team in the league at least once every three years). It simply rotates by division. The only two teams on our schedule that aren't predetermined are the NFC teams from the "off" divisions. Those teams are determined by finish (firsts play firsts, seconds play seconds, etc.).
So for example, next year since we play the entire NFC Central, we will play the first place finishers in the NFC West and NFC South.