Behatolását a BIOS ROM mastering spi vaku №1

SPI interfész: Történelmi háttér

Mint ismeretes, a sebesség a chip, csak olvasható memória
(Flash ROM), használt BIOS támogatás, gyakorlatilag nincs hatása a
A számítógép teljesítményének. Ez annak a ténynek köszönhető, hogy az elején
anyai táblák, BIOS átírása (vagy kicsomagolt) a működési
Memória Shadow RAM és elérésekor a BIOS az operációs rendszer ülésén, a program működik
RAM helyett a chip Flash ROM. Ezért, ellentétben a
processzor, memória, grafikus alrendszert, amely kíséri evolúció
a termelékenység növekedését, Flash ROM chip, és azok kapcsolódási fejlesztését
a másik irányba. Itt a fő kritérium a költségcsökkentés,
energiafogyasztás és lábnyom az alaplapon. A fő módszer
E célok elérése érdekében - csökkentve a vezetékek száma közötti chip BIOS
és a vezérlő általában szerepel a „déli híd” chipset. A szempontból
BIOS chip csatlakozás, három generáció lehet azonosítani szülő
táblák:

Megjegyezzük, hogy az LPC-interfész is támogatja modern chipset és
alaplap tervező lehet használni, hogy csatlakoztassa a BIOS chip
mint egy LPC és SPI. Terjedelme SPI interfész nem korlátozódik
számítógépes alaplap. A figyelmes olvasó figyelmét
hogy mivel az átmenet a soros adat formátum, mind a fenti
interfészek használata több órajel ciklust az olvasási és írási műveletek,
mint elődje, ami tele van csökken a teljesítmény. De ez nem
Ez akkor fordul elő, mivel ez a körülmény növekvő frekvencia eltolás és
optimalizálása adatformátum. Az ISA busz működik frekvencián 5-8MHz, LPC on
33MHz, SPI a 33-50 MHz-es.

chip architektúrát SPI Flash ROM

A cél a nyolc chip kapcsolatok leírása mind a parancsok és
Más részletek a [5].

SPI vezérlő architektúra

Bit 0 (SPI Ciklus folyamatban) - alkalmazunk, hogy meghatározzuk
a művelet végrehajtása az SPI buszon. A „0” azt jelenti, hogy az abroncs SPI ingyenes, és a program
lehet kezdeni a következő ciklust. „1” azt jelenti, hogy a gumiabroncs SPI osztályok, komplett
tranzakciót. Ezt a bitet és megtisztította a hardver, csak a
olvasás.

Bit 1 (fenntartva) - nem használják.

Bit 2 (Ciklus Kész állapot) - beállítása „1” hardver, míg
tranzakció befejeződik az SPI buszon. Visszaállításához, a program kell írni „1”
aktív bit.

3. bit (vaku Cycle Error) - beállítása „1” a hardver, ha
végző tranzakció történt hibák: védelem az indítási kísérlet felvétel vagy
befejezését követően az előző tranzakció előtt. Visszaállításához, a program kell
hogy írjon „1” ebben a kicsit.

Bit 5-7 (fenntartva) - nem használt.

Bit 8 (fenntartva) - nem használják. Amint fent jeleztük, bitek 8-31
tekinthető a 32 bites szó megfelel a bit regiszter 0-23 Software
A szekvenálás vakuvezérlés.

Bit 10 (Atomic Cycle Sequence) - az átviteli teljesítése érdekében
tranzakció rekord „1” ez a bit megakadályozza a külső események beavatkozni
folyamatok játszódnak le az SPI interfész mindaddig, amíg meg nem teljes három
fázis: átadását az előtag parancsot, az átadás a mag csapat és a befejezése
végrehajtása a központi csapat.

Vegye figyelembe, hogy ezzel megvalósult egy védekezési mechanizmus ellen
véletlen torzítási tartalommal BIOS chip. Az úgynevezett előtag
parancs (például írásengedélyezés) meg kell előznie a parancsokat, hogy a változás
chip tartalmat (például írása, törlése). Miután megkapta a parancsot kódot tartalmazó
„1” ez a bit, mind a három fázis, a vezérlő végrehajtja a hardver, anélkül
CPU beavatkozása befejezéséig az alapcsapat.

11. bit (Sequence Prefix Opcode Pointer) - segítségével az előtag
parancs (ha kicsit 10 beállítása „1”, mint fent.), ez a bit közül választ
bájtokat kell továbbítani előtag parancs SPI chip
Flash-t. A „0” kiválasztja az alsó bájt előtag Opcode Configuration Regisztráció
Regisztráció, ha „1” - a vezető.

Bit 12-14 (Ciklus Opcode Pointer) - Ez a bit mező kiválasztja az egyik
nyolc bájt, amelyet a továbbiakban a alapcsapat a chip
SPI Flash-t. Ezek bájtok a nyilvántartásban Opcode Menükonfiguráció
Regisztráció.

Bit 15 (fenntartva) - nem használják.

Bit 16-21 (Data Byte Count) - meghatározza a bájtok számát az adatok
adatokat olvas vagy ír műveleteket. Az összeg egyenlő a mező plusz 1.
Például: 000000b = 1 bájt, 111111b = 64 bájt.

Bit 22 (Data Cycle) - állítja a rendelkezésre álló adatok bájt az utasítás. "0"
Ez azt jelenti, adatok nem állnak rendelkezésre (például törli parancs), „1” azt jelenti, hogy
adatok jelen van (pl olvassa status paranccsal, az adatok
státusz regiszter tartalmát).

Bit 23 (SPI SMI # engedélyezése) - engedélyt, így megszakítás kérés
System Management Interrupt tranzakció után, 0 = komplett dohányzás,
1 = engedélyezve.

Bit 24-26 (SPI Cycle frekvencia) - meghatározza az átviteli sebesség
szinkronizálást végző tranzakciók SPI. Vannak két érték
(A többi fenntartva): 000B = 20MHz, 001B = 33MHz.

Bit 27-31 (fenntartva) - nem használt.

Megjegyezzük, hogy a pre-töltő nyolc byte regisztrációhoz Opcode Menü
Konfigurációs regiszter és két byte előtag Opcode Configuration Regisztráció
Regisztráció elvégzi a BIOS alatt platform indulásakor. Ezért, képződése során a bit
mezők, válassza ki a parancsot kód és a prefix kódot, a program kell olvasnia
ezek a feljegyzések és megtalálja, amit azok számát kódok
műveleteket. kitöltését változik, még a alaplapok
Egy modell, különböző változatai a BIOS. Néhány közművek felülírja
Flash-tartalmának megváltoztatására e nyilvántartások.

Részletes leírása valamennyi nyilvántartás és SPI vezérlő parancsokat van megadva [3].
Leírás parancs SPI flash chip van megadva [4-7]. A dokumentumban szereplő információk
a fenti is szemlélteti példák assembler tartalmazza a cikk.

Mechanizmusok hozzáférés Flash ROM és írásvédelem

Általában kezdeményezni törlés vagy felülírás műveletek mikroáramkör
BIOS szoftvert kell elvégezni négy lépésből áll:

A részletek ezen eljárások, a védelmi mechanizmusok, amelyek akadályozzák őket
jogosulatlan végrehajtását, és természetesen, a biztonsági rés e mechanizmusok.

információforrások

Az elektronikus dokumentumok elérhető a honlapon
developer.intel.com.

1) Az Intel alacsony Pin Count (LPC) interfész specifikáció. Revision 1.1. dokumentum
Szám 251289-001.
2) Az Intel P965 Express Chipset Family Adatlap - A Intel 82P965 Memory
Controller Hub (MCH). Dokumentum száma: 313053-001.
3) Az Intel I / O Controller Hub 8 (ICH8) családi adatlapot - Az Intel 82801HB
ICH8 és 82801HR ICH8R I / O vezérlő Hub. Dokumentum száma: 313056-001.

Az elektronikus dokumentumok elérhető a honlapon
www.superflash.com vagy
ssti.com.

4) 1 Mbit SPI soros flash SST25VF010 adatlap. Dokumentum száma:
S71233-01-000.
5) 8 Mbit SPI soros flash SST25VF080B adatlap. Dokumentum száma:
S71296-01-000.

Az elektronikus dokumentumok elérhető a honlapon
winbond.com.tw.

6) W25X10A, W25X20A, W25X40A, W25X80A 1M-bites, 2M-bites, 4M-bites és 8M-bites
Soros flash memória 4 KB ágazatokban és kettős kimenet SPI adatlap.

Az elektronikus dokumentumok elérhető a honlapon
macronix.com.

7) MX25L802 8M-bites [8Mx1] CMOS soros flash EEPROM adatlap.

Az elektronikus dokumentumok elérhető a honlapon
datakey.com.

8) SPI EEPROM interfész specifikáció. Cikkszáma 223-0017-004 Revision H.

Az elektronikus dokumentumok elérhető a honlapon
vtitechnologies.com.

9) SPI interfész specifikáció. Műszaki megjegyzés 15.

Az elektronikus dokumentumok elérhető a honlapon
pcisig.com.

[11], [12] pcisig.com oldalon csak a tagok számára a PCI
Special Interest Group. Segítségével keresők, megtalálja
Ezen dokumentumok ingyenesen letölthető.
10) PCI BIOS specifikáció. Revision 2.1.
11) PCI Local Bus Specification. Revision 3.0.
12) PCI-to-PCI híd architektúra specifikációja. Revision 1.1.

Itt található az ezt a cikket egy ismerősének: