Fedi people! Does anyone know what are the “pre-fetch” and “fetch” cycles on the Intel 8086 architecture exactly? I can't find resources where both are clearly separated. I'm starting to think my professor invented those terms to make us suffer.

It is urgent, this homework is for tomorrow, and I started doing it late. Boosts are appreciated.

Nevermind, I think someone in my class found what they actually mean. Pre-fetch is the preloading of instruction into a stack, also known as “pipelining“. The fetch cycle, or fetch-execute in the case of the 8086, is where the whole instruction cycle begins, the results of execution are stored and the cycle continues with the next instruction in the pipeline.

@avalos and wait til you get tot the branch prediction part. BTW, some of this you can find on the Intel software developer manual, not the friendliest read if you're starting though.

@mrkz Does 8086/8088 have branch prediction? We will only learn about that one.

@avalos nah, that stuff is more recent that those museum pieces. what i would suggest you to do is to learn about addressing modes for x86 later on, there are interesting and a bit of a headache at fist, but learning them will help you understand better the boot process for x86 :)

@avalos I'm not familiar with 8086 specifically but:

"fetch" means get the instruction from memory (using the address in the IP register). This is a very common in CPUs.

"pre-fetch" for the 8086 I think is described in this forum, but that first comment doesn't have link to any docs

In modern processors, "pre-fetching" is done for all memory, not just instructions, the distinction is probably important wrt to grading

Sign in to participate in the conversation
Mastodon 🐘

Discover & explore Mastodon with no ads and no surveillance. Publish anything you want on Mastodon: links, pictures, text, audio & video.

All on a platform that is community-owned and ad-free.
Hosted by Stuxhost.