Кіріспе

Freescale Semiconductor компаниясы өндірген микроконтроллерлер тізбегі. 68HC12 (сондай-ақ 6812 немесе HC12 деп қысқартылатын) – Motorola Semiconductor компаниясының (кейін Freescale, одан кейін NXP) микроконтроллерлер отбасы. Алғаш рет 1990 жылдардың ортасында ұсынылған архитектура, Freescale 68HC11-дің жақсартылған нұсқасы болып табылады. HC11 үшін жазылған бағдарламалар көбінесе HC12-мен үйлесімді, оған бірнеше қосымша командалар бар. Алғашқы 68HC12 түрлері 8 МГц максималды шина жылдамдығына және 128 КБ дейінгі флэш жад көлеміне ие болды.

68HC12 архитектурасы

68HC11 сияқты, 68HC12 процессорында екі 8 биттік A және B аккумуляторлары (A және B бірге қосылғанда 16 биттік D аккумуляторы ретінде қарастырылады, бұл 16 биттік операцияларды жүргізуге мүмкіндік береді), екі 16 биттік X және Y регистрлері, 16 биттік бағдарлама санағышы, 16 биттік стек көрсеткіші және 8 биттік жағдай кодын тіркеуіш бар. 68HC11 процессорынан өзгешелігі, бұл процессордың 16 биттік ішкі дерек жолдары бар.

68HC12 процессоры 68HC11 нұсқауларының бірқатарын 6809 процессорына жақын жаңа форматтармен толықтырады және ауыстырады. Одан да маңыздысы, нұсқау кодтамаларын әлдеқайда тығыздығырақ етіп өзгертеді және 6809 сияқты көптеген индекстеу мүмкіндіктерін қосады, олардың кейбіреулері тіпті икемдірек. Соның нәтижесінде код өлшемдері әдетте 30%-ға кішірейеді.

HCS12/MC9S12 туындылары

2000 жылдан бастап, отбасы MC9S12 туындыларын қосу арқылы кеңейтілді, олардың шина жылдамдығы 25 МГц-ге дейін және жад көлемі 512 КБ-қа дейін жетеді. Freescale компаниясы 2004 жылдың қыркүйегінде MC9S12NE64 микроконтроллерін таныстырды, оны "санаудағы алғашқы бір чипті жылдам Ethernet Flash микроконтроллері" деп мәлімдеді. Ол 25 МГц HCS12 процессоры, 64 КБ FLASH EEPROM, 8 КБ RAM және 10/100 Мбит/с Ethernet контроллерімен жабдықталған.

XGATE

XGATE копроцессоры – 16 биттік RISC процессоры, ол негізгі шина сағатынан екі есе жоғары жылдамдықпен жұмыс істейді. Ол S12X ядросынан жұмысты тек үзілістерді өңдеу арқылы босатады және фонолық циклді іске қоспайды. XGATE-тің алғашқы нұсқалары жоғары басымдыққа ие үзілістердің қазіргі уақытта өңделіп жатқан үзілісті үзуіне жол бермейді, бірақ 9S12XEP100 (және басқаларында) қолданылатын "XGATEV3" мұндай мүмкіндік береді. S12X ядросы XGATE ядросында бағдарламалық үзілістерді тудыра алады, сондай-ақ керісінше де мүмкін. S12X және XGATE ядроларының перифериялық құрылғыларға қол жеткізуін синхрондау үшін семафор жүйесі іске асырылған. Әдетте XGATE коды құрылғы іске қосылғанда RAM-ға көшіріліп, жылдамдықты арттыру мақсатында RAM-нан орындалады. XGATE-тің 64 Кбайт адрестік кеңістігінің жартысы бар, беттеу (paging) қарастырылмаған. Регистрлер бірдей мекенжайларды бөліседі, бірақ флэш және RAM ядролар арасында әртүрлі мекенжайларда көрінеді. (Толық мәліметтер үшін деректер жинағына қараңыз.)