Freescale 68HC12

A Wikipédiából, a szabad enciklopédiából
Dragon12-P mikrokontroller próbakártya, amelyet 68HC12-es mag működtet. A mikrokontroller a lyukpanel alá van szerelve.

A 68HC12 (vagy 6812, vagy HC12) egy a Freescale Semiconductor által gyártott mikrovezérlő család. A cég az 1990-es évek közepén jelentette meg. Az architektúra a Freescale 68HC11 továbbfejlesztése. A HC11-esre írt programok kompatibilisek a HC12-es eszközzel is, annak csak néhány újabb utasítása van. Az első 68HC12 változatok maximális buszsebessége 8 MHz volt és legfeljebb 128 KiB flash memóriával rendelkeztek.

A családba tartozó további csipeket nagyobb memóriával szerelték fel, és később perifériavezérlő koprocesszort is kaptak. Az autóiparban alkalmazzák.

A 68HC12 architektúra[szerkesztés | forrásszöveg szerkesztése]

Elődjéhez hasonlóan a 68HC12-es is két 8 bites akkumulátorregiszterrel rendelkezik – ezek jele egyszerűen A és B; amelyek összekapcsolva egy 16 bites, D-vel jelölt akkumulátorként is használhatók, ezt a processzor 16 bites utasításai használják. A processzornak van még két 16 bites címregisztere, az X és az Y, egy 16 bites programszámlálója, egy 16 bites veremmutatója és egy 8 bites feltételkód-regisztere (ill. állapotszava).

A HCS12/MC9S12 származékai[szerkesztés | forrásszöveg szerkesztése]

2000 elején a családot kibővítették az MC9S12 sorozatú változatokkal, amelyek 25 MHz-es buszsebességgel és nagyobb, max. 512 KiB-os flashmemóriával rendelkeztek.

Az MC9S12NE64 mikrovezérlőt 2004-ben vezette be a Freescale,[1] azt állítva, hogy ez az ipar első egycsipes, gyors Ethernet kapcsolatot biztosító, flashmemóriás mikrovezérlője. Ezt egy 25 MHz HCS12 CPU működteti, 64 KiB flash EPROM memóriát és 8 KiB RAM-ot tartalmaz, valamint egy 10/100 Mbit/s sebességű Ethernet vezérlőt.

Az MC9S12X változatai[szerkesztés | forrásszöveg szerkesztése]

A 2004-ben bevezetett MC9S12XDP512 buszsebessége már 40 MHz és XGATE sorozatú perifériavezérlő processzort kapott, amely képes bizonyos feladatokat átvenni a fő processzortól, tehát azzal párhuzamosan működni. Az S12X változat CPU-ja több újabb utasítást is kapott, amelyek tovább növelik a teljesítményt.

A Freescale 2006 májusában bemutatta a továbbfejlesztett MC9S12XEP100 vezérlőt, amely az S12X család újabb tagja volt; 50 MHz buszsebességgel működik, memóriavédelmi és szegmentált memóriaelérést biztosító funkciókkal rendelkezik, és hardveresen képes EPROM memóriát emulálni (emulált EPROM funkciót ellátó hardvere van). A HCS12 típusú termékeknek egy processzoruk van, a HCS12X típusban van csak kiegészítő XGATE perifériakezelő processzor.

Az S12X család két módszert alkalmazhat a 64 KiB-nál nagyobb memóriák elérésére:

  • Lapozott memóriaterületek az alap 64 KiB helyi memóriatérképen: PPAGE a lapozott programadatok, RPAGE a RAM, EPAGE a globális lapozható EEPROM/flash számára.
  • A globális címzés lehetővé teszi 8 MiB címterület címzését/elérését. A GPAGE a speciális opkódokkal együtt (gldaa és társai) használható.

XGATE[szerkesztés | forrásszöveg szerkesztése]

Az XGATE koprocesszor egy 16 bites RISC processzor, amely a buszsebesség kétszeresének megfelelő órajelen működik. Ez tehermentesíti az S12X magot, csak megszakításokat kezel és nem futtat a fő processzort terhelő ciklusokat. Az XGATE első verziói nem engedték meg, hogy a magasabb prioritású megszakítások megszakítsák az aktuálisan kiszolgálás alatt lévő megszakítást, azonban az 9S12XEP100 csipekben és a többiekben szereplő „XGATE-v3” koprocesszor már megengedi ezt. Az S12X triggerelheti a szoftver-megszakításokat az XCORE magban és ez a lehetőség kölcsönös (fordítva is működik). Egy szemaforrendszeren keresztül az S12X és XCORE magok szinkronizálják a periféria-hozzáféréseket.

Általában az XCODE kódja a RAM-ba másolódik az indítási folyamat alatt és futási időben a processzor a RAM-ból hajtja végre a kódot, a sebességnövekedés miatt. Az XGATE a 64 KiB memóriaterület egy részét képes csak elérni, és nem kezeli a lapozást. Regiszterei memóriacímekre vannak leképezve, de a flash és RAM memóriákat a két mag különböző címeken éri el.

Jegyzetek[szerkesztés | forrásszöveg szerkesztése]

  1. MC9S12NE64 Data Sheet (angol nyelven) (pdf). HCS12 Microcontrollers. Freescale, 2006. június 27

Fordítás[szerkesztés | forrásszöveg szerkesztése]

Ez a szócikk részben vagy egészben a CIKKCIME című angol Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel.

Források[szerkesztés | forrásszöveg szerkesztése]

További információk[szerkesztés | forrásszöveg szerkesztése]

Kapcsolódó szócikkek[szerkesztés | forrásszöveg szerkesztése]