In several area's of Intel's atom e38xx data sheet, and programmers volume 3 datasheets I see references to the word EPROM. For example in programmer's architecture manual volume 3 I find this, The EPROM containing the software-initialization code must be located at this address.

I thought the first code of execution lies in the flash device? Can I assume they mean flash? In the intel atom data sheet it shows memory map and in the DOS section there are two eprom sections. I know the device supports to SPI flash so I assume this is MMIO to the SPI flash even though it calls it EPROM.

  • \$\begingroup\$ Consider that the Atom's heritage is the x86 line most well known for use in PC's, and that those (as well as most other designs of that era) originally started up from parallel PROMs or EPROMs (or even more primitive means), the usage may be historic. From a software perspective, EPROM and flash differ mostly in write process but little in read. However, there is the question if access is serial or parallel, and if code actually runs from the device or if gets copied (shadowed, cached) to RAM for use. \$\endgroup\$ Jan 6, 2017 at 17:42
  • \$\begingroup\$ @Chris Stratton I believe it get's shadowed to 0xFFFF0000 - 0xFFFFFFF0 and read's are same as reads to the DOS area below 1MByte and writes just write to the shadowed DRAM. I'm a little confused on it all still. Like for instance In non descriptor mode I don't know how exactly it fills those regions because the bios regions are supposed to be set by a base and limit in the flash descriptor? I also can not find a direct 1 to 1 MMIO map for the eprom/flash (which is SPI or serial 4 pin) address space. \$\endgroup\$ Jan 6, 2017 at 17:56
  • \$\begingroup\$ It does not matter what it is called. What you need is provide memory capability at the prescribed address. If you only need to read the information at the given address, you can use ROM, RAM, PROM, EEPROM, FLASH, etc.. If you would like to modify the information at the given address, then you have to be able to write to the address. \$\endgroup\$
    – Guill
    Jan 13, 2017 at 20:55
  • \$\begingroup\$ The reason you are given the instruction to locate "the initialization code" at a given address, is because the internal CPU code will transfer control to that address, after it completes its function. If you don't "catch" program control there, your micro will go to "never-never land." \$\endgroup\$
    – Guill
    Jan 13, 2017 at 21:01


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.