Разделы новостей
Последние новости:
Железо
Софт
Интернет
Наука и техника
Электронная коммерция

Разделы статей



Коммуникационные контроллеры семейства Motorola 683xx

И.И. ШАГУРИН Краткое содержание

  • Коммуникационный контроллер MC68360
  • Центральный процессор CPU32+
  • Коммуникационный процессор CPM
  • Модуль системного интерфейса SIM60
  • Коммуникационный контроллер MC68302
  • Коммуникационный контроллер MC68356

        Более 30 лет компания Motorola разрабатывает и выпускает высококачественные компоненты для систем связи, являясь мировым лидером в этой области. На базе этих компонентов компания Motorola производит широкий спектр аппаратуры для проводной и беспроводной связи. Успехи многих ведущих производителей телекоммуникационного оборудования, таких как фирмы ATT, Alcatel, Ericsson, Nokia, в значительной степени определяются использованием в их продукции изделий и технологий компании Motorola.








    Разместить статью на этом сайте






        В конце 80-х годов компания Motorola начала выпуск нового класса микроконтроллеров, ориентированных на использование в системах телекоммуникации. Они получили название коммуникационных контроллеров. Такие контроллеры широко применяются в цифровых автоматических телефонных станциях, в системах сотовой связи, в аппаратуре обслуживания локальных сетей и других видах связной аппаратуры. Большой набор коммуникационных контроллеров входит в состав семейства 683xx ( более 10 моделей ). В 1996 году начался выпуск высокопроизводительных коммуникационных контроллеров в составе семейства PowerPC ( модели MPC860, MPC850 ). В настоящем обзоре рассматриваются контроллеры, входящие в состав семейства 683хх, которые имеют наиболее массовое применение в современных системах телекоммуникации ( годовой объем выпуска составляет около 3 млн.).
        В семейство 683хх входят три базовых модели коммуникационных контроллеров: MC68302, MC68356, MC68360. Эти контроллеры содержат центральный процессор CPU32+ или CPU68000 и специализированный коммуникационный процессор, реализующий различные протоколы обмена информацией. Первый из этих контроллеров - MC68302, содержит процессор 68000 и коммуникационный процессор CP. Его развитием является контроллер MC68356, в который введен 24-разрядный цифровой процессор сигналов ( ЦПС ), функционально аналогичный ЦПС типа DSP5602, выпускаемому компанией Motorola.
    1. Коммуникационный контроллер MC68360 ( QUICC )

        Наиболее широкими возможностями обладает контроллер MC68360, использующий 32-разрядный процессор CPU32+ и модуль коммуникационного процессора CPM, который является расширенным вариантом СP. Этот контроллер, который получил название QUICC ( Quad Integrated Communications Controller ), рассматривается в данном обзоре наиболее подробно.
        Контроллер MC68360 и его модификации MC68EN360, MC68MH360 имеют модульную структуру ( рис.1 ), в которую входят центральный процессор CPU32+, модуль коммуникационного процессора CPM и модуль системной интеграции SIM60, соединенные общей внутренней шиной.

    Рис. 1. Общая структура контроллера MC68360. Центральный процессор CPU32+

        Процессор CPU32+ имеет архитектуру, принятую в микропроцессорах семейства 68000, что позволяет использовать большой объем программного обеспечения, созданный для этого семейства. Процессор обеспечивает работу с 32-разрядными шинами адресов и данных, аналогично MС68020 и более поздним моделям семейства 68000.
        Архитектура процессора ориентирована на раздельное выполнение двух классов задач: управление работой системы с помощью супервизора( операционной системы ) или решение прикладных задач пользователя.. В режиме супервизора разрешается выполнение любых команд, реализуемых процессором, и доступ ко всем его регистрам. В режиме пользователя запрещается выполнение ряда команд и доступ к некоторым регистрам, чтобы не допустить такие изменения состояния системы, которые могут помешать выполнению других пользовательских программ или нарушить режим работы процессора, установленный супервизором.
        Режим функционирования определяется значением бита супервизора S в регистре состояния SR ( рис.2 ). При включении процессор устанавливается в режим супервизора ( S = 1 ). Затем операционная система определяет режим дальнейшего функционирования процессора. Если предполагается его использование в режиме пользователя, то изменяется значение бита S в регистре SR. В режиме пользователя изменение S не допускается. В этом случае переход в режим супервизора происходит при возникновении исключительных ситуаций, прерывающих нормальное выполнение программы, или путем сброса ( RESET ) процессора в начальное состояние.
        Регистровая модель процессора CPU32+ приведена на рис.2. Модель пользователя содержит восемь регистров данных D7-0, восемь регистров адреса A7-0, програмный счетчик PC и регистр состояния SR, в котором доступен только младший байт CCR, хранящий признаки результата выполненной команды ( C - перенос, V - переполнение, Z - нуль, N - знак, X - расширение ). Один из регистров адреса - A7, служащий в качестве указателя стека, дублирован для обслуживания процедур, выполняемых в различных режимах. В режиме пользователя указателем стека служит регистр USP ( A7 ), в режиме супервизора - регистр SSP ( A7 ).
        Регистровая модель супервизора содержит все регистры пользователя, регистр состояния SR, включая его старший ( системный ) байт, где содержатся маска прерываний I2-0 и биты управления режимом S ( супервизор или пользователь ), T1-0 ( пошаговый режим с остановом после каждой команды или после команды ветвления ). В модель супервизора входят также регистр VBR, хранящий базовый адрес таблицы векторов исключений и два 3-разрядных регистра SFC, DFC, в которые заносится код адресного пространства, поступающий на внешние выводы FC2-0 при выполнении специальной команды MOVES. Эти сигналы позволяют выделить отдельные разделы памяти для хранения программ и данных супервизора и пользователя.

    Рис.2. Регистровая модель процессора CPU32+

        Процессор CPU32+ выполняет набор из 158 команд ( табл.1 ), которые реализуют пересылку данных, арифметические и логические операции, сдвиги, операции сравнения и тестирования, битовые операции, операции управления и условной установки байтов. Часть команд выполняется только в режиме супервизора. Это привилегированные команды, попытка выполнения которых в режиме пользователя вызывает прерывание программы.

        Таблица 1. Набор команд процессора CPU32+

    Мнемокод Выполняемая операция
    ABCD Сложение двоично-десятичных чисел
    ADD Сложение двоичных чисел
    ADDA Сложение с содержимым регистра адреса
    ADDI, ADDQ Сложение с непосредственным операндом
    ADDX Сложение с учетом переноса
    AND Логическая операция И
    ANDI Логическая операция И с непосредственным операндом
    ANDI CCR Операция И с непосредственным операндом и содержимым CCR
    ANDI SR Операция И с непосредственным операндом и содержимым SR*
    ASL Арифметический сдвиг влево
    ASR Арифметический сдвиг вправо
    Всс Условное ветвление
    BCHG Тестирование бита и инверсия его значения
    BCLR Тестирование бита и установка его в "0"
    BGND Ввод в BDM-режим отладки
    BKPT Останов в контрольной точке
    BRA Безусловное ветвление
    BSET Тестирование бита и установка его в "1"
    BSR Вызов подпрограммы
    BTST Тестирование бита
    CHK, CHK2 Проверка операнда на попадание в заданный диапазон
    CLR Установка нулевого значения операнда
    CMP Сравнение операндов
    CMPA Сравнения с одержимым регистра адреса
    CMPI Сравнение с непосредственным операндом
    CMPM Сравнение массивов данных
    CMP2 Сравнение с верхним и нижним пределами
    DBcc Организация циклов с условным выходом
    DIVS, DIVSL Деление операндов со знаком
    DIVU, DIVUL Деление операндов без знака
    EOR Логическая операция Исключающее ИЛИ
    EORI Операция Исключающее ИЛИ с непосредственным операндом
    EORI CCR Операция Исключающее ИЛИ с непосредственным операндом и содержимым регистра CCR
    EORI SR Операция Исключающее ИЛИ с непосредственным операндом и содержимым регистра SR*
    EXG Обмен содержимым регистров
    EXT, EXTB Расширение знака операнда
    ILLEGAL Прерывание при неправильном коде команды
    JMP Безусловный переход
    JSR Переход к подпрограмме
    LEA Загрузка в регистр эффективного адреса EA
    LINK Организация связи стеков
    LPSTOP Останов в энергосберегающем режиме*
    LSL Логический сдвиг влево
    LSR Логический сдвиг вправо
    MOVE Пересылка операндов
    MOVEA Пересылка содержимого регистр адреса
    MOVEC Пересылка содержимого служебных регистров* (USP,VBR,SFC,DFC)
    MOVEM Пересылка содержимого группы регистров
    MOVEP Пересылка по 8-разрядной шине данных
    MOVEQ Пересылка непосредственного короткого операнда
    MOVES Пересылка с выдачей кода адресного пространства*
    MOVE CCR Пересылка содержимого регистра CCR
    MOVE SR Пересылка содержимого регистра SR*
    MOVE USP Пересылка содержимого регистра USP*
    MULS Умножение операндов со знаком
    MULU Умножение операндов без знака
    NBCD Изменение знака двоично-десятичного числа
    NEG Изменение знака двоичного числа
    NEGX Изменение знака с вычитанием переноса
    NOP Отсутствие операции
    NOT Логическая операция НЕ
    OR Логическая операция ИЛИ
    ORI Операция ИЛИ с непосредственным операндом
    ORI CCR Операция ИЛИ с непосредственным операндом и содержимым CCR
    ORI SR Операция ИЛИ с непосредственным операндом и содержимым SR*
    PEA Загрузка в стек эффективного адреса EA
    RESET Установка начального состояния*
    ROL Циклический сдвиг влево
    ROR Циклический сдвиг вправо
    ROXL Циклический сдвиг влево с расширением
    ROXR Циклический сдвиг вправо с расширением
    RTD Возврат из подпрограммы с вводом или исключением заданного числа ячеек в стеке
    RTE Возврат из подпрограммы обслуживания исключения*
    RTS Возврат из подпрограммы
    RTR Возврат из подпрограммы с восстановлением признаков
    SBCD Вычитание двоично-десятичных чисел
    Scc Условная установка байта
    STOP Останов выполнения программы*
    SUB Вычитание двоичных чисел
    SUBI, SUBQ Вычитание непосредственного операнда
    SUBX Вычитание с учетом заема
    SWAP Перестановка байтов в слове
    TAS Тестирование операнда с установкой в І1І его старшего разряда
    TBLS,TBLSN Линейная интерполяция, знаковая
    TBLU,TBLUN Линейная интерполяция, беззнаковая
    TRAP Прерывание
    TRAPcc Условное прерывание
    TRAPV Прерывание при переполнении
    TST Тестирование операнда
    UNLK Операция, обратная LINK

        *) Выполняются только в режиме супервизора.

        В набор команд включены команды интерполяции, которые вычисляют значения линейной функции в 255 промежуточных точках отрезка, для которого задаются конечные значения. Таким образом исключается необходимость хранения в памяти промежуточных значений линейных функций. Процесор CPU32+ не имеет специальных команд ввода-вывода данных. Для обращения к внешним устройствам их адрес формируется и выдается на адресную шину, как при выборке ячеек памяти. Процессор реализует способы адресации операндов, указанные в табл.2.

        Табл. 2. Способы адресации, реализуемые процессором CPU32+
    Адресация Формирование адреса*
    Регистровая An или Dn -> операнд
    Косвенно-регистровая (КР) An -> адрес
    КР с постинкрементом An -> адрес, An + k -> An
    КР с предекрементом An - k -> An, An -> адрес
    КР со смещением An + d16 -> адрес
    КР c индексированием An + Xn + d8 -> адрес
    КР с базовым смещением и индексированием An + Xn*s + bd -> адрес
    Прямая ( абсолютная ) a16 или a32 -> адрес
    Относительная PC + d16 -> адрес
    Относительная с индексированием PC + Xn*s + d16 -> адрес
    Относительная с базовым смещением и индексированием PС + Xn*s + bd -> адрес
    Непосредственная Im -> операнд

        * Примечания:

  • k - число байтов в адресуемом операнде.
  • d8,d16 - 8- или 16-разрядное смещение ( со знаком ), заданное в команде.
  • a16,a32 - 16- или 32-разрядный адрес, заданный в команде.
  • s = 1,2,4 или 8 - масштабный множитель индекса.
  • bd - 32-разрядное базовое смещение.
  • Im - непосредственный операнд, заданный в команде.

        Процессор CPU32+ реализует обслуживание программных исключений, возникающих при выполнении некоторых команд, и аппаратных исключений, которые вызываются внешними запросами или внутренними сигналами, формируемыми при возникновении ряда ситуаций ( табл.3 ).

        Причинами программных исключений являются:

  • команды RESET, TRAP, TRAPcc, TRAPV ( при значении признака V =1 ), CHK,CHK2 ( при выходе операнда за границы заданного диапазона );
  • привилегированные команды ( табл.1 ), выполняемые в режиме пользователя (нарушение привилегии );
  • команды DIVS, DIVU, выполняемые при нулевом делителе ( деление на нуль );
  • выборка команды, содержащей неправильный код операции ( не соответствующий набору кодов, используемых процессором );
  • установка значения признаков трассировки T1,T0; в этом случае процессор работает в пошаговом режиме, выполняя после каждой команды подпрограмму обслуживания, которая выводит на экран дисплея содержимое определенных регистров и ячеек памяти и позволяет изменять его в процессе отладки программы;
  • выборка команды, содержащей в коде операции 1111 ( переход к эмуляции команд арифметического сопроцессора ) или 1010 ( переход к эмуляции произвольных команд, не входящих в набор команд CPU );
  • выборка команды по нечетному адресу ( все команды содержат целое число слов, поэтому выдача нечетного адреса является ошибкой ).

        Причинами аппаратных исключений являются:

  • поступление внешнего сигнала установки начального состояния RESET ;
  • поступление внешнего сигнала ошибки обращения к шине BERR ;
  • поступление внешних запросов прерывания на входы IRQ7-1;
  • отсутствие сигналов подтверждения DSACK0,1 или AVEC, которые должны поступить от запросивших прерывание устройств ( ложное прерывание );
  • поступление запроса от устройства, которое не может передать в процессор свой вектор прерывания ( неинициализированное прерывание ).

        Во всех этих ситуациях процессор заносит в стек кадр определенного формата, содержимое которого обеспечивает возвращение к прерванной программе. Стековый кадр имеет размер от 4 до 12 байт, и содержит текущие значения регистров PC и SR, код формата Fe и адрес вектора прерывания Av, а также дополнительную информацию, которая помогает подпрограмме обслуживания определить причину исключения.

        Таблица 3. Виды исключений, их номера и адреса векторов
    Номер Ne Адрес Av Вид исключения
    0 $000 Установка начального состояния (загрузка SSP)
    - $004 Установка начального состояния (загрузка РС)
    2 $008 Ошибка обращения к шине
    3 $00C Неправильный (нечетный) адрес команды
    4 $010 Неправильный код операции
    5 $014 Деление на нуль (команды DIVU,DIVS)
    6 $018 Команда CHK, CHK2
    7 $01C Команда TRAPV, TRAPcc
    8 $020 Нарушение привилегии
    9 $024 Режим трассировки
    10 $028 Код эмуляции 1010 (A- код операции)
    11 $02C Код эмуляции 1111 (F - код операции)
    12 $030 Останов в контрольной точке
    13 $034 Резервировано
    14 $038 Ошибка формата стекового кадра
    15 $03C Неинициализированное прерывание
    16 - 23 $040 - 05C Резервировано
    24 $060 Ложное прерывание
    25 - 31 $064 - 07C Автовекторные прерывания Li = 1-7
    32 - 47 $080 - 0BC Команды TRAP с номерами Nt = 1-15
    48 - 63 $0C0 - 0FC Резервировано
    64 - 255 $100 - 3FF Векторные прерывания пользователя


        После загрузки стека в PC заносится из памяти вектор исключения Ve - начальный адрес подпрограммы обслуживания. Эти вектора хранятся в таблице, базовый адрес которой содержится в регистре VBR. Каждое исключение имеет свой номер Ne, который принимает значения от 0 до 255 ( табл.3 ). Значение Ne, сдвинутое на два разряда влево, дает относительный адрес вектора в таблице исключений. Таблица может иметь объем до 1024 байт и содержать адреса входов для 254 подпрограмм обслуживания.
        Любое исключение вызывает установку бита супервизора S = 1 в регистре состояния SR. При этом процессор переходит к выполнению подпрограммы обслуживания в режиме супервизора. После ее завершения возврат к прерванной программе осуществляется командой RTE, выполняемой только в режиме супервизора, которая восстанавливает содержимое PC и SR, считывая их из стекового кадра. Если при этом считанный из стека код формата Fe не соответствует коду исключения, вызвавшего подпрограмму обслуживания, то реализуется исключение "ошибка формата" ( номер Ne =14 ).
        Процессор обслуживает запросы прерывания от внешних устройств, которые поступают на входы IRQ7-1 модуля SIM. Каждый запрос имеет свой приоритет: высший (Li = 7) - запрос IRQ7, низший (Li = 1) - запрос IRQ1. Обслуживание этих запросов обеспечивает контроллер прерываний, который входит в блок конфигурации и контроля модуля SIM ( рис.1 ). Обслуживаются запросы, приоритет которых не меньше содержащейся в регистре SR маски прерываний I2-0 ( рис.2). В этом случае после выполнения текущей команды осуществляется цикл прерывания, в ходе которого процессор выдает сигнал подтверждения соответствующего запроса IACK7-1, получает от запросившего устройства номер вектора Ne, формирует стековый кадр, выбирает из таблицы и загружает в PC вектор исключения Ve Адресация подпрограмм обслуживания запросов IRQ7-1 может производиться двумя способами. При автовекторном прерывании каждому запросу с уровнем Li соответствует номер исключения Ne = 24 + Li, в соответствии с которым формируется один из семи адресов Av от $064 до $07C ( табл.3 ). Для реализации такого прерывания необходимо подать сигнал AVEC = 0 на вход контроллера. При векторном прерывании внешнее устройство, запросившее прерывание, Устанавливает сигнал подтверждения DTACK = 0 и передает в процессор 8-разрядное значение номера Ne. Таким способом получаются значения Ne до 255 и обеспечивается обращение к подпрограммам c адресами векторов Av до $3FF.
        Характерной особенностью процессора CPU32+ является реализация специального режима отладки BDM ( back-ground debug mode ), который позволяет выполнять комплексную отладку микроконтроллерных систем без использования сложных и дорогостоящих схемных эмуляторов. Работа процессора в режиме BDM разрешается, если при начальной установке ( RESET ) подать сигнал BKPT = 1 на соответствующий вход контроллера.. В этом случае подача сигнала BKPT = 0 в процессе дальнейшего функционирования микроконтроллера вызывает остановку выполнения текущей программы и переход под управление внешней системы отладки, которая через специальный последовательный BDM - порт вводит в контроллер команды отладки. Возможен также программный ввод процессора в режим отладки BDM с помощью команды BGND.
        В режиме BDM процессор выполняет команды системы отладки, поступающие через специальный синхронный последовательный BDM-порт. В качестве системы отладки используется персональный компьютер с необходимым программным обеспечением (интегрированная среда программирования и отладки). От системы отладки на вход DSI процессора поступают команды, адреса и данные; процессор выдает на вход DSI данные или информацию о состоянии, принимаемые системой. Синхросигналы обмена подаются на вход DSCLK процессора.

        В режиме BDM процессор выполняет следующие команды отладки:

  • запись в регистры адреса A или данных D ( команды WAREG, WDREG ) и чтение из них ( команды RAREG, RDREG );
  • запись в системные регистры PC, SSP, USP, SR, VBR, SFC, DFC и чтение из них ( команды WSREG, RSREG );
  • запись или чтение содержимого ячейки памяти ( команды WRITE, READ );
  • заполнение блока ячеек памяти ( команда FILL, следующая за командой WRITE, которая задает начальный адрес блока );
  • вывод содержимого блока ячеек памяти ( команда DUMP, следующая за командой READ, которая задает начальный адрес блока );
  • вызов подпрограммы пользователя ( команда CALL, содержащая адрес ячейки памяти, из которой вводится новое содержимое PC );
  • выдача сигнала RESET для периферийных устройств при сохранении состояния процессора ( команда RST ), отсутствие операции ( команда NOP );
  • выход из режима отладки и возврат к выполнению программы ( команда GO ).

        Команды системы отладки поступают на вход DSI в виде 16-разрядного последовательного кода, задающего вид операции, разрядность операндов, код регистра, к которому производится обращение. После команд WAREG, WDREG, WSREG, FILL на вход DSI последовательно поступает операнд в виде одного или двух 16-разрядных слов. После команд RAREG, RDREG, RSREG, DUMP процессор последовательно выдает на выход DSI считываемый операнд. После команд READ, WRITE, CALL на вход DSI сначала поступает 32-разрядный адрес в виде двух последовательно передаваемых 16-разрядных слов, а затем производится ввод ( при команде WRITE ) или вывод ( по команде READ ) операнда. После приема команды процессор выдает сообщения о поступлении неправильной команды, - продолжении выполнения команды, если результат еще не готов ( например, идет прием адреса ), возникновении ошибки обращения к шине.
        Использование режима BDM обеспечивает значительное упрощение процесса отладки систем, реализованных на базе контроллеров семейства M683xx. Коммуникационный процессор CPM

        Специфические особенности функционирования и применения MC68360 и его модификаций MC68EN360, MC68MH360 связаны с наличием в их составе коммуникационного процессора CPM, который содержит большой набор интерфейсных блоков, обеспечивающих возможности подключения контроллера к линиям связи с различными протоколами обмена.
        Модуль CPM подключается к внутренней шине и работает под управлением собственного RISC-контроллера с минимальным вмешательством процессора CPU32+. Основное назначение CPM - обеспечить разнообразные каналы параллельной и последовательной передачи данных между микропроцессорной системой, управление которой осуществляет CPU32+ через интерфейсный модуль SIM60, и внешними устройствами, подключенными с помощью линий связи с различными протоколами обмена. Коммуникационный контроллер может работать в режиме ведомого ( slave ). В этом режиме его CPU отключается, и модуль CPM функционирует под управлением внешнего процессора. Таким образом можно реализовать систему из нескольких CPM ( контроллеров в режиме ведомого ), работающих под управлением одного ведущего процессора.

    Рис.3. Структура модуля коммуникационного процессора СPM

        В состав CPM ( рис.3 ) входят RISC-контроллер, двухпортовое ОЗУ ( ДП-ОЗУ ) и большой набор периферийных устройств. Все устройства CPM соединены общей периферийной шиной. Обращение к ДП-ОЗУ производится как со стороны микропроцессорной системы через внутреннюю шину, так и со стороны различных устройств CPM через периферийную шину. Процессор СPU32+ может обращаться к этим устройствам путем чтения или записи содержимого определенных регистров. Набор периферийных устройств СPM включает:

  • четыре связных последовательных интерфейса SCC1 - 4;
  • два управляющих последовательных интерфейса SMC1,2;
  • периферийный последовательный интерфейс SPI;
  • блок последовательного обмена ( БПО ), обеспечивающий передачу с временным разделением данных;
  • периферийный параллельный порт PIP, реализующий стандартный протокол обмена типа CENTRONICS;
  • три параллельных порта A, B, C, обеспечивающих различные протоколы квитированного и неквитированного обмена;
  • четыре 16-разрядных таймера ( могут конфигурироваться как два 32-разрядных );
  • двухканальный блок независимого прямого доступа к памяти IDMA.

        Кроме того, при использовании ДП-ОЗУ можно реализовать шестнадцать 16-разрядных T-таймеров и четырнадцать каналов последовательного прямого доступа к памяти SDMA. Модуль CPM содержит также блок из четырех генераторов синхроимпульсов ГСи1-4, обеспечивающих работу интерфейсов SCC1-4, SMC1,2.
        Следует отметить, что CPM в моделях MC68360 и MC68EN360, MC68MH360 имеют одинаковые структуры и режимы функционирования. Эти контроллеры также полностью совместимы по внешним выводам. Различие между ними состоит только в наборе протоколов обмена, реализуемых интерфейсами SCC. В MC68EN360 интерфейсы SСС могут обеспечивать протокол обмена по локальным сетям ETHERNET. В MC68MH360 реализуется протокол HDLC с многоканальным обменом, а для SCC1 также протокол сети ETHERNET.
        RISC-контроллер имеет регистр команд CR, в который процессор CPU32+ записывает команды, вызывающие инициализацию или прекращение работы различных устройств CPM. Команды CPU поступают в CPM относительно редко: в начале работы контроллера, при изменении режима работы устройств СPM, включении в систему новых внешних устройств и т.п. Основную часть рабочего времени CPM самостоятельно принимает и передает данные, обращаясь при необходимости к CPU c запросами на прерывание или прямой доступ к памяти. При этом RISC-контроллер выдает последовательность микрокоманд для соответствующих устройств, обеспечивая необходимый режим их функционирования и реализацию заданного протокола обмена.
        ДП-ОЗУ емкостью 2,5 Кбайт делится на системное ОЗУ и ОЗУ параметров. В системном ОЗУ хранятся данные и команды, записываемые и считываемые CPU; микропрограммы новых процедур обслуживания, которые расширяют функциональные возможности RISC-контроллера, реализуя дополнительные протоколы обмена; 8-байтные дескрипторы блоков данных, передаваемых устройствами CPM. Дескрипторы, используемые SCC, SCM, SPI, PIP, задают начальный адрес передаваемого блока, указывают его размер ( до 64 Кбайт ), содержат управляющие биты, задающие режим обмена, и биты состояния, указывающие наличие ошибок при передаче. В ОЗУ параметров хранятся начальные адреса дескрипторов блоков и параметры, определяющие режим работы устройств CPM или отражающие их текущее состояние. Параметры, определяющие функционирование устройств CPM, вводятся в них из ДП-ОЗУ при поступлении от CPU команд инициализации. Изменение ( запись ) параметров со стороны CPU разрешается только при отключенном состоянии соответствующего устройства.
        Часть ДП-ОЗУ может использоваться для создания дополнительных таймеров, которые реализуются в виде двух таблиц. В ОЗУ параметров размещается таблица таймерных параметров, в системном ОЗУ - таблица таймеров ( T-таймеры ). CPM позволяет реализовать до шестнадцати 16-разрядных T-таймеров, которые переключаются сигналами таймерных меток. Период следования меток программируется CPU. Каждый таймер занимает в таблице четыре байта: два указывают его содержимое в момент запуска по команде CPU и два - текущее содержимое, которое уменьшается на 1 при поступлении таймерной метки. Режим работы ( одноразовый или периодический запуск ) и начальное содержимое таймеров задаются CPU путем записи в таблицу параметров ДП-ОЗУ и ввода в регистр CR команды установки таймера. Когда текущее содержимое T-таймера становится равным 0, устанавливается соответствующий признак в регистре таймерных событий RTER. Если регистр маски RTMR разрешает прерывание, то формируется запрос к CPU, вызывающий подпрограмму обслуживания. Таким образом использование T-таймеров позволяет осуществлять 16 вариантов одноразового или периодического вызова процедур обслуживания.
        Кроме T-таймеров, размещаемых в ДП-ОЗУ, CPM содержит блок из четырех 16-разрядных таймеров, которые можно попарно каскадировать для получения двух 32-разрядных таймеров. Каждый таймер содержит счетчик TCNT, регистры захвата TCR и сравнения TRR. Переключение TCNT производится либо сигналами таймерного делителя частоты, либо внешними синхросигналами, либо сигналами другого таймера ( при их каскадировании ). Возможна остановка счетчика внешним сигналом TGATE со сбросом в нуль или сохранением текущего состояния. При поступлении сигнала на вход TIN таймера текущее состояние TCNT фиксируется в регистре TCR, откуда может быть считано CPU ( режим захвата ). При записи числа в регистр TRR компаратор сравнивает его с текущим содержимым счетчика TCN и формирует выходной сигнал TOUT при их совпадении ( режим сравнения ). Захват и совпадение вызывают установку соответствующих признаков, которые вызывают прерывание CPU, если это разрешено содержимым регистра режима таймера TMR.
        Путем записи соответствующего содержимого в регистры таймеров CPU может программировать каждый из них на выполнение различных процедур обслуживания внешних устройств: измерение временных интервалов, формирование сигналов управления, генерацию импульсов и др.
        Прямой доступ к памяти ( ПДП ) реализуется с помощью двухканального контроллера IDMA, который программируется на работу в режиме пересылки одиночного блока данных или пересылки цепочки блоков - однократной или повторяющейся. При этом выполняются одноадресные циклы передачи "внешнее устройство - память" или двухадресные циклы "память - память". При тактовой частоте Ft = 25 МГц и 32-разрядной шине данных скорость обмена составляет 50 Мбайт/ с для передач "устройство - память" и 25 Мбайт/с для передач "память - память". Каждый канал IDMA осуществляет пересылку блоков данных по внутреннему или внешнему запросу, формируя необходимые адреса и сигналы управления обменом.
        Канал IDMA может работать под управлением CPU ( одиночная пересылка ) или RISC-контроллера CPM ( пересылка цепочки блоков ). Если канал запрограммирован на пересылку цепочки блоков, то его запуск инициализируется CPU путем ввода соответствующей команды в регистр CR. Предварительно в ДП-ОЗУ параметров записываются дескрипторы пересылаемых блоков. Если ПДП инициируется внешним сигналом DREQ, то канал IDMA выполняет пакетную или поцикловую пересылку. При пакетной пересылке канал начинает передачу операндов при поступлении сигнала DREQ = 0 и продолжает ее до установки DREQ = 1 или до конца блока. При поцикловой передаче каждый отрицательный перепад сигнала DREQ вызывает пересылку очередного операнда.
        Для последовательного обмена с внешними устройствами CPM использует четыре связных интерфейса SCC1-4, два управляющих интерфейса SMC1,2 и периферийный интерфейс SPI. Эти интерфейсы вырабатывают запросы на прием и передачу данных, которые поступают в контроллер последовательного прямого доступа SDMA, реализованный на базе ДП-ОЗУ. Контроллер SDMA содержит 14 каналов, каждая пара каналов обслуживает запросы приема и передачи одного из интерфейсов. При поступлении запроса канал выбирает из ДП-ОЗУ дескриптор, задающий параметры блока памяти, в который заносятся принимаемые данные или считываются данные для передачи. При одновременном запросе обслуживание выполняется в приоритетном порядке: SCC1 - SCC4, SMC1, SMC2, SPI.
        Интерфейсы SCC, SMC, SPI инициализируются командами, вводимыми CPU в регистр команд RISC-контроллера. После инициализации интерфейс работает со своей таблицей параметров, размещенной в ДП-ОЗУ. В этой таблице содержатся начальные адреса таблиц дескрипторов, обеспечивающих обращение к блокам памяти при передаче или приеме данных, значения функциональных кодов FC3-0, выдаваемых при записи и считывании, максимальное число принимаемых байтов, а также значения ряда параметров, определяющих текущее состояние интерфейса. Если интерфейс программируется для реализации одного из стандартных протоколов обмена, то таблица дополняется специфическими параметрами, используемыми при данном протоколе. В процессе работы интерфейс последовательно выбирает блоки памяти, адресуемые дескрипторами из его таблицы, обеспечивая пересылку цепочки блоков данных.
        Каждый последовательный интерфейс может непосредственно подключаться к выводам портов A, B или C для обмена данными с внешними устройствами. Интерфейсы SCC, SMC могут соединяться для совместной работы в режиме временного разделения каналов с помощью специального устройства ( БВР ), входящего в состав блока последовательного обмена БПО.
        Наиболее сложные протоколы последовательной пересылки реализуют интерфейсы SCC1-4, каждый из которых программируется путем загрузки соответствующего содержимого в регистр режима GSMR. В зависимости от этого содержимого SCC обеспечивает один из следующих протоколов обмена:

  • HDLC/SDLC - стандартный протокол синхронного обмена, который начинается байтом флага $7E = 01111110, за которым следуют два адресных байта, один управляющий байт, произвольное число информационных байтов и два байта контрольной суммы, после которых снова передаются байты флага;
  • UART - широко распространенный протокол асинхронного или синхронного обмена с заданным числом информационных бит ( от 5 до 8 ) и программируемым контролем четности; асинхронный обмен инициируется старт-битом и завершается заданным числом стоп-битов ( от 1 до 2 ), синхронный обмен инициируется и завершается подачей одного или двух синхросимволов;
  • AppleTalk - протокол, используемый компанией Apple Computers для последовательной связи компьютеров, реализованных на базе микропроцессоров семейства Motorola 68000;
  • BYSINC - протокол последовательного синхронного обмена с передачей двух синхросимволов, используемый компанией IBM.

        Кроме вышеперечисленных, SCC может также реализовать протоколы Profibus, ATM, Signaling System #7, многоканальный GCI, асинхронный HDLC. Эти протоколы выполняются, если предварительно загрузить в ДП-ОЗУ специальные микропрограммы, поставляемые компанией МОТОРОЛА. При этом объем ДП-ОЗУ, предоставляемый пользователю, несколько сокращается.
        Принимаемые данные поступают на вход RXD приемника SCC, передаваемые данные - на выход TXD его передатчика. При обмене данными между SCC и модемом используются управляющие сигналы, подаваемые на выводы порта C:
    RTS - выходной сигнал готовности SCC для передачи данных;
    CTS - входной сигнал готовности внешнего устройство ( модема ) к приему данных;
    CD - входной сигнал готовности внешнего устройства ( модема) к передаче данных, поступающих в SCC.
        Кроме перечисленных протоколов, SCC обеспечивает "прозрачный" ( транспарентный ) режим синхронного обмена, при котором производится прием или передача потока 8-битовых символов, в конце которого может следовать контрольная сумма. Синхронизация обмена осуществляется с помощью синхросимволов, передаваемых в начале и конце потока данных, или внешними сигналами, определяющими начало и конец передачи.
        Каждый SCC программируется на определенный способ кодирования данных. Возможно использование следующих способов кодирования: NRZ ( без возврата к нулю ), NRZI ( без возврата к нулю с инвертированием ), FM0, FM1 ( частотная модуляция 0 или 1 ), манчестерский и дифференциальный манчестерский коды.
        Приемник и передатчик SCC имеют буферную память, в которую заносятся поступающие данные перед тем, как они будут переписаны в ОЗУ или переданы внешнему устройству. Буферная память организована в виде очереди данных емкостью 32 ( для SCC1 ) или 16 байт ( для остальных SCC ). Таким образом снижается вероятность потери данных из-за переполнения SCC, когда новые данные поступают до того, как будут переписаны или переданы предыдущие.
        В модели MC68EN360 интерфейсы SCC1-4 могут реализовать протокол обмена для локальной сети ETHERNET. При этом CPM формирует необходимую служебную информацию и обеспечивает прием и выдачу управляющих сигналов разрешения приема RENA ( на входе CD ), запроса на передачу TENA ( на выходе RTS ), возникновения конфликтов CLSN ( на входе CTS ). В этом режиме SCC1 обеспечивает скорость обмена до 10 Мбит/с, одновременно SCC2-4 могут вести обмен со скоростью до 2 Мбит/с.
        В модели MC68MH360 реализован режим многоканального обмена QMC, при котором один SCC может обеспечить до 32 каналов пересылки данных по протоколу HDLC со скоростью обмена до 2 Мбит/с. Данный режим может использоваться также для пересылки по сети ETHERNET. Для реализации QMC проведена модификация CPM: объем ДП-ОЗУ расширен до 2,7 Кбайт, изменено содержимое памяти микропрограмм. В модифицированном CPM модели MC68MH360 интерфейсы SCC1-4 не выполняют обмен по протоколу BYSINC, а параллельный порт PIP не поддерживает протокол CENTRONICS.
        Таким образом, модификации MC68EN360, MC68MH360 отличаются от MC68360 набором реализуемых протоколов обмена.
        Управляющие интерфейсы SMC1,2 обеспечивают более простые протоколы обмена, чем SCC. Они могут программироваться на реализацию протокола UART, транспарентного ( "прозрачного" ) обмена или для передачи служебной информации при обмене по шине GCI ( IOM-2 ). Программирование осуществляется загрузкой соответствующего содержимого в регистр режима SMCMR. Приемник ( вход SMRXD ) и передатчик ( выход SMTXD ) SMC имеют буферную память для сохранения двух последовательно поступивших символов, чтобы уменьшить вероятность потери данных из-за несвоевременной записи - считывания
        Протокол UART реализуется SMC только в асинхронном режиме с программируемым числом информационных бит ( от 5 до 14 ), стоп-бит ( 1 или 2 ) и контролем четности. При транспарентном обмене SMC обеспечивает пересылку данных разрядностью от 4 до 16 бит в синхронном режиме с формированием и проверкой контрольной суммы. Запуск приемника и передатчика производится подачей сигнала на вход синхронизации SMSYNC. Обмен завершается после пересылки последнего блока в цепочке.
        При программировании на пересылку служебной информации SMC используется в режиме временного разделения, выполняя функции контроллера шины GCI. В этом случае SMC может принимать и передавать либо 8-битовые данные канала управления ( monitor ), либо 4- или 6-битовые данные канала команда/индикация ( C/I ) в кадре протокола пересылки по шине GCI, называемой также IOM-2. При этом SMC использует специфический 2-байтовый формат дескрипторов, которые непосредственно содержат принятые или передаваемые данные. В данном случае пересылка производится без обращения к внешнему ОЗУ.
        Синхронный периферийный интерфейс SPI может работать в режиме ведущего или ведомого, обеспечивая из одного сдвигового регистра одновременно прием - передачу данных, поступающих на выводы SPIMOSI ( выход ведущего - вход ведомого ), SPIMISO ( вход ведущего - выход ведомого ). Синхронизация передачи каждого бита осуществляется синхроимпульсами, которые выдаются ведущим SPI на выход SPICLK и принимаются ведомым SPI. Как и остальные интерфейсы, SPI использует дескрипторы из системной памяти ДП-ОЗУ для выборки блоков внешнего ОЗУ, в которых размещаются принимаемые и передаваемые данные.
        Каждый последовательный интерфейс может программироваться для работы в режиме кольцевой пересылки или ретрансляции, которые служат для проверки правильности функционирования
        Входящий в состав CPM блок последовательного обмена ( БПО ) обеспечивает либо непосредственный обмен данными между SCC1-4, SMC1,2 и внешними устройствами, либо обмен в режиме мультиплексирования временного разделения. Для этого в БПО имеется коммутатор последовательных каналов, который подключает входы - выходы интерфейса либо непосредственно к выводам портов A, B, C, либо к блоку временного разделения, который обеспечивает различные протоколы обмена для двух каналов. Каждый из интерфейсов SCC, SMC программируется CPU на работу в одном из этих режимов путем записи соответствующего содержимого в его регистр управления.
        Синхросигналы обмена поступают от блока, содержащего четыре генератора синхроимпульсов ( ГСИ ), которые могут переключаться внешними сигналами или тактовыми импульсами от генератора ( ГТИ ), имеющегося в модуле SIM. Частота синхроимпульсов программируется CPU. Для каждого интерфейса возможно восемь вариантов получения синхросигналов - от одного из четырех ГСИ или от внешних источников, подключаемых к выводам CLK порта A.
        Блок временного разделения ( БВР ), входящий в состав БПО, содержит два канала последовательного обмена TDMa, TDMb, которые принимают и передают кадры, состоящие из нескольких пакетов данных. Интерфейсы SCC1-4, SMC1,2 являются источниками и приемниками этих пакетов. Порядок подключения интерфейсов и формат кадров обмена для каналов TDMa,b определяется содержимым специальной памяти БВР-ОЗУ емкостью 256 байт, в которую загружаются управляющие слова, обеспечивающие маршрутизацию пересылаемых данных. Каждое управляющее слово определяет характеристики одного из пакетов в пересылаемом кадре данных. Последовательность управляющих слов, записанных в БВР-ОЗУ, задает маршрут пересылки для приемника или передатчика каналов TDMa,b. БВР-ОЗУ делится на разделы, содержимое которых задает от двух до восьми маршрутов пересылки. Возможны различные варианты использования каналов TDMa,b с фиксированными и изменямыми маршрутами приема и передачи, реализуемые при соответствующем программировании БВР-ОЗУ:
        При обмене каналы TDMa,b используют выводы портов A, B, C, на которые поступают входные данные для приемников L1RXDa,b и выходные данные от передатчиков L1TXDa,b, внешние синхроимпульсы для приема L1RCLKa,b и передачи L1TCLKa,b, входные сигналы, синхронизирующие начало приема L1RSYNCa,b или передачи L1TSYNCa,b. При реализации некоторых протоколов обмена БВР формирует выходные сигналы запроса на обмен L1RQa,b, строб-сигналы L1ST1-4, принимает сигналы подтверждения обмена L1GRa,b ( поступают на входы L1TSYNCa,b.).
        Каждый канал обеспечивает пересылку кадров, содержащих до 64 пакетов длиной до 16 байт каждый. Канал может быть запрограммирован на реализацию протоколов, используемых в таких широко распространенных сетях передачи данных, как ISDN, T1/CEPT, PCM. Форматы кадров, реализуемых при пересылке в сети ISDN по шинам типа IDL и GCI, показаны на рис.4. При использовании шины IDL пересылаемый кадр состоит из информационных ( несущих ) пакетов B1, B2 и служебных ( сигнальных ) пакетов D1, D2. При использовании шины GCI в кадр включаются также управляющий ( контрольный ) пакет M и пакет команд/индикации C/I. В процессе приема и передачи тактирование осуществляется синхроимпульсами, поступающими на вход L1RCLK, начало обмена задается сигналом L1RSYNC. В случае использования шины IDL канал выдает также сигнал запроса L1RQ перед передачей служебных пакетов D1, D2 и ожидает поступления сигнала разрешения L1GR на вход L1TSYNC.


        Разнообразие каналов последовательного обмена и протоколов их обслуживания делает контроллер MC68360 эффективным средством для реализации телекоммуникационного оборудования различного назначения. В качестве примера на рис.5 приведена структура терминального адаптера сети ISDN, который использует для обмена шину IDL. Связные интефейсы SCC3, SCC4 обеспечивают передачу данных ( пакет B2 ) и служебной информации ( пакет D ). Пакеты передаются по одному из каналов БВР ( TDMa или TDMb ). Пакет B1 содержит речевые данные, поступающие от цифрового телефона. Контроль работы адаптера осуществляется с помощью персонального компьютера, который подключается к интерфейсу SCC2, реализующему обмен по стандарту RS-232. В режиме отладки адаптера компьютер может подключаться к BDM-порту контроллера. При использовании контроллера MC68EN360 возможно подключение адаптера к локальной сети Ethernet. Дополнительные схемы ( кодеки, трансиверы, драйверы ) обеспечивают необходимое преобразование сигналов для обеспечения связи адаптера с различными абонентами сети ISDN.

    Рис.5. Структура терминального адаптера сети ISDN

        Модуль CPM содержит 16-разрядный порт A, 18-разрядный порт B, 12-разрядный порт C, а также периферийный параллельный порт PIP, совмещенный с портом B. Эти порты могут служить для параллельного ввода- вывода данных под управлением CPU. Внешние выводы портов совмещены с выводами других блоков CPM: таймеров, последовательных интерфейсов, ГСИ, каналов IDMA. Функциональное назначение выводов программируется путем записи соответствующего содержимого в регистры управления портов. Периферийный порт PIP обеспечивает пересылку 8- или 16-разрядных данных без квитирования или с квитированием, которое выполняется с помощью строб-сигналов, поступающих на выводы порта B. При импульсном квитировании PIP может реализовать протокол интерфейса CENTRONICS, широко используемый для связи с принтерами и другими внешними устройствами. Порт C можно запрограммировать для приема внешних запросов прерывания. В этом случае входные сигналы порта являются запросами, которые поступают в контроллер прерываний CPM и могут вызвать обслуживание исключения CPU32+.
        Контроллер прерываний, входящий в состав CPM, принимает и анализирует запросы, поступающие от различных устройств CPM, и вырабатывает внутренний запрос векторного прерывания CPU. Причинами запросов могут быть внешние сигналы, поступающие на входы порта C, и сигналы от различных блоков CPM: интерфейсов SCC1-4, SMC1,2, SPI, таймеров и Т-таймеров, реализованных в ДП-ОЗУ, каналов прямого доступа IDMA, SDMA, периферийного порта PIP. Каждый из этих запросов имеет фиксированный приоритет и номер вектора прерывания Ne, в соответствии с которым вызывается требуемая подпрограмма обслуживания. Модуль системного интерфейса SIM60

        Модуль системной интеграции содержит блоки, обеспечивающие нормальное функционирование процессора и совместную работу контроллера с другими устройствами цифровой системы. Эти блоки осуществляют генерацию тактовых импульсов, контроль правильности работы системы, интерфейс с внешними устройствами, тестирование контроллера.
        В состав модуля SIM60 ( рис.1 ) входят генератор тактовых импульсов, блок конфигурации и контроля, блок внешнего интерфейса, блок генерации сигналов выборки кристалла, контроллер динамического ОЗУ, блок тестирования и отладки, реализующий протокол JTAG. Модуль связан с процессором с помощью внутренней шины. Для подключения внешней памяти и других устройств системы служат 74 внешних вывода, большинство которых имеет альтернативные функции. Назначение выводов определяется режимом работы соответствующих блоков. В состав блоков входят регистры, содержимое которых определяет функционирование модуля SIM60 и процессора. Запись и считывание содержимого этих регистров позволяют CPU32+ контролировать работу блоков.
        Генератор тактовых импульсов ( ГТИ ) обеспечивает формирование этих импульсов для различных модулей контроллера, а также вырабатывает синхросигналы CLKO1,2 для внешних устройств. В зависимости от значения сигналов, подаваемых при начальной установке контроллера, ГТИ работает либо при подаче на вход EXTAL внешних синхросигналов, либо при подключении к выводам EXTAL, XTAL кварцевого резонатора с частотой Fq = 4,2 МГц или 32 Кгц. Входящие в состав ГТИ умножители и делители частоты позволяют получить набор внутренних и внешних тактовых сигналов различной частоты.
        Контроллеры MC86360 выпускаются в двух вариантах: с напряжением питания Vп = 5 В и максимальной частотой Ft до 33 МГц, и с Vп = 3,3 В и частотой Ft до 25 МГц. Потребляемая мощность для первого варианта не превышает 2 Вт, для второго - 0,6 Вт. В режиме останова с выключением ГТИ потребление мощности снижается до 2 мВт.
        Подключение контроллера к общей системной шине производится с помощью блока внешнего интерфейса. Контроллер имеет 32-разрядные шины адреса A31-0 и данных D31-0. Передача данных сопровождается посылкой контрольного бита четности для каждого байта. Эти биты поступают на выводы PRTY3-0. Если при чтении обнаруживается нарушение четности, то выдается сигнал ошибки PERR = 0. В цикле обращения к внешней памяти контроллер выдает и принимает сигналы, управляющие процессом обмена: AS# , DS# - выходные стробсигналы адреса и данных; FC3-0 - выходные сигналы, указывающие тип выполняемого цикла; SIZ1,0 - выходные сигналы, указывающие число передаваемых байтов; R/W - выходной сигнал, определяющий вид цикла ( чтение или запись ); DSACK1,0 - входные сигналы, подтверждающие готовность внешнего устройства к обмену и указывающие разрядность используемой шины данных ( 8 или 16 бит ); RMC - выходной сигнал, формируемый при выполнении команды TAS, когда реализуется комбинированный цикл "чтение-модификация-запись", при котором запрещен захват шины; AVEC - входной сигнал подтверждения запроса автовекторного прерывания.
        Блок выборки кристаллов расширяет возможности подключения различных типов памяти и внешних устройств, обеспечивая для них отдельные сигналы выборки и режимы обмена. Он формирует сигналы разрешения выборки CS7-0 определенных разделов адресуемой памяти ( банков ), для которых могут быть реализованы заданные режимы обмена. Управление формированием сигналов CS7-0 производится с помощью соответствующих регистров блока, содержимое которых задает базовые адреса и режимы обращения для каждого из банков.
        Контроллер динамического ОЗУ позволяет непосредственно подключать к шине контроллера микросхемы динамической памяти. При этом на выводы блока выдаются необходимые сигналы выборки строк RAS7-0 и столбцов CAS7-0, которые обеспечивают адресацию и периодическую регенерацию содержимого ДОЗУ.
        Блок конфигурации и контроля ( БКК ) задает режим работы других блоков и модулей, определяет назначение ряда внешних выводов. С помощью этого блока обеспечивается определенная конфигурация цифровой системы, реализуемой на базе контроллера, выполняется ряд функций контроля правильности её работы. БКК содержит сторожевое устройство ( watchdog ),и таймер периодических прерываний и контроллер прерываний. Сторожевое устройство вызывает прерывание, если выполняемая процессором программа в течении заданного промежутка времени не произведет в специальном 8-разрядном регистре SWSR смену кода 01010101 -> 10101010 или 1010101 -> 01010101. Таймер периодических прерываний обеспечивает выполнение требуемых процедур обслуживания в заданные моменты времени. Контроллер прерываний организует обслуживание внешних запросов IRQ7-1 и внутренних запросов от различных блоков модуля SIM. Модуль SIM60 позволяет реализовать захват шины, с помощью которого обеспечивается совместное использование шины несколькими устройствами системы. Контроллер при этом отключается от шины, и управление обменом осуществляется другим устройством. Чаще всего захват шины служит для организации прямого доступа к памяти - непосредственного обмена значительными массивами информации между памятью и внешним устройством, например, накопителем на магнитных дисках. Захват производится с помощью сигналов:

  • BR - входной сигнал запроса на захват шины, при поступлении которого контроллер завершает выполнение текущего цикла обмена, останавливает выполнение команд и переводит свои выводы в отключенное состояние;
  • BG - выходной сигнал разрешения захвата, который вырабатывается контроллером после его отключения от шины;
  • BGACK - входной сигнал подтверждения захвата, который поступает от внешнего устройства, принявшего управление шиной.     Модуль SIM60 имеет входы для приема системных сигналов останова HALT и ошибки обращения к шине BERR. Выходной сигнал сброса RESETS формируется при поступлении команды RESET ( программный сброс ), сигнал RESETH - при аппаратных сбросах, вызываемых двойной ошибкой шины или сторожевым устройством. Входные сигналы RESETS, RESETH вызывают установку начального состояния модулей контроллера.
        Блок тестирования и отладки (БТО) обеспечивает тестирование контроллера в соответствии с международным стандартом JTAG ( IEEE 1149.1 ). В БТО входит специальный последовательный порт TAP ( test access port ) для ввода тестовых комбинаций ( входных сигналов ) и вывода данных об ответной реакции ( состоянии выходов ) контроллера. При тестировании используются следующие выводы TAP:
  • TCK - вход синхросигналов, используемых в режиме тестирования;
  • TMS - вход управляющего сигнала, определяющего режим работы TAP;
  • TDI - вход для последовательного ввода тестовых команд и сигналов;
  • TDO - выход для последовательного вывода данных о состоянии всех входов и выходов контроллера;
  • TRS - вход тестового сброса, устанавливающий TAP в начальное состояние. Тестирование выполняется методом сканирования границ ( boundary scan ), при котором все входы и выходы контроллера подключаются к отдельным разрядам общего сдвигового регистра тестовых данных, вход которого соединен с выводом TDI, выход - с выводом TDO. Таким образом обеспечивается возможность подачи на входы контроллера необходимых тестовых сигналов, которые последовательно вводятся через вход TDI, и считывания получаемых при этом выходных сигналов, которые последовательно выводятся через выход TDO. Различные процедуры тестирования осуществляются при поступлении определенных тестовых команд, которые предварительно последовательно вводятся через вывод TDI. В состав TAP входят два сдвиговых регистра: регистр команд и регистр тестовых данных. В зависимости от значения сигнала TMS производится выбор одного из этих регистров, в результате чего обеспечивается последовательный ввод ( через TDI ) и вывод ( через TDO ) тестовых команд или данных. Ввод и вывод выполняются при поступлении синхросигналов TCK. Кроме того, БТО обеспечивает вывод сигналов IFETCH, IPIPE1,0, указывающих текущее состояние ( состояние конвейера выполнения команд ), и перевод всех выводов модуля SIM60 в отключенное состояние при подаче сигнала TRIS = 1. Эти сигналы используются в процессе отладки системы. Коммуникационный контроллер MC68302

        Контроллер MC68302 ( рис.6 ) содержит центральный процессор CPU68000, коммуникационный процессор CP и блок системной интеграции SIB. Контроллер может функционировать в режиме ведущего, когда его работой управляет CPU6800, и в режиме ведомого, когда CPU68000 отключается, а CP и SIB работают под внешним управлением. Второй режим используется в случаях, когда требуется обеспечить общее управление несколькими CP.

    Рис.6. Структура коммуникационного контроллера MC68302

        Процессор CPU68000 аналогичен микропроцессору MC68000. Он реализует почти такой же набор команд ( табл.1 ) и способов адресации ( табл.2 ), как процессор CPU32+ ( не реализуются команды BGND, CMP2, CHK2, MOVEC, MOVES, LPSTOP, TBLS, TBLSN, TBLU, TBLUN и способы адресации с базовым смещением bd ). Процессор CPU68000 обеспечивает обслуживание указанных в табл.3 видов исключений, кроме исключения с номером Ne = 14 ( "ошибка формата" ). При обслуживании процессор загружает в стек только содержимое регистров PC и SR.
        Для связи MC68302 с другими устройствами системы используется блок системной интеграции SIB, который во многом аналогичен модулю интеграции SIM60. Блок SIB обеспечивает прием и выдачу адреса A31-1, данных D15-0, функционального кода FC2-0, сигналов управления обменом AS, R/W, UDS, LDS, RMC, DTACK, а также сигналов разрешения выборки CS3-0 для четырех блоков памяти. Кроме того SIB формирует сигнал IAC = 1 при выполнении циклов обращения к внутреннему ДП-ОЗУ или регистрам CP, SIB, и сигнал BCLR = 0, если какой-либо канал SDMA запрашивает доступ к памяти. Сигналы BR, BG, BGACK позволяют реализовать захват шины, а системные сигналы RESET, HALT, BERR обеспечивают сброс в начальное состояние, останов и прерывание при ошибке обращения к шине. При подаче сигнала FRZ = 0 останавливается работа CPU68000 и таймеров. Сигналы DISCPU, BUSW, подаваемые при установке контроллера в начальное состояние, определяют режим CPU: отключение процессора ( работа MC68302 в качестве ведомого ), работа с 8- или 16-разрядной шиной данных.
        В состав блока SIB входят генератор тактовых импульсов ( ГТИ ), контроллеры прерываний и прямого доступа, таймеры и порты A, B.
        ГТИ работает при подключении кварцевого резонатора к выходам XTAL, EXTAL. При напряжении питания Vп = 5 В максимальная тактовая частота MC68302 составляет Ft = 25 МГц, потребляемая мощность около 330 мВт; при Vп = 3,3 В максимальная частота Ft = 20 МГц и мощность около 100 мВт. Формируемые тактовые импульсы выдаются на выход CLKO контроллера.
        Два 16-разрядных таймера 1 и 2 могут работать в режиме захвата, фиксируя время поступления сигналов на входы TIN1, TIN2, или в режиме совпадения, выдавая сигналы на выходы TOUT1, TOUT2 в заданные моменты времени. Отдельный 16-разрядный сторожевой таймер ( С-таймер ) служит для формирования через заданные промежутки времени сигналов на выходе WDOG. Если этот выход подключить к выводу сброса RESET или к одному из входов прерывания IRQ7, 6 или 1, то будут осуществляться периодические прерывания или сбросы. Можно запрограммировать С-таймер для контроля поступления сигнала подтверждения обмена DTACK. В этом случае прерывание или сброс будут выполняться, если при обращении к шине сигнал DTACK = 0 не поступает в течении заданного промежутка времени.
        Контроллер независимого прямого доступа IDMA обеспечивает работу одного канала обмена, который функционирует так же, как канал IDMA в MC68360 под управлением CPU. Пересылка блока данных выполняется по внешнему запросу DREQ = 0 или инициируется программно путем установки значения бита запуска STR = 1 в регистре режима CMR. Другие биты в этом регистре задают различные варианты режима работы канала: разрядность передаваемых данных ( байт или слово ), вид передачи ( пакетная, поцикловая, с ограниченной загрузкой шины ), с формированием запроса прерывания после передачи блока и др.
        Кроме CMR контроллер IDMA содержит регистры, в которые записываются начальные адреса и функциональные коды источника и приемника данных, число байтов в передаваемом блоке ( до 64 Кбайт ). Информация о текущем состоянии контроллера IDMA может быть считана из регистра CSR. При обмене по внешнему запросу необходимые сигналы запроса DREQ, подтверждения DACK, завершения DONE поступают на выводы PA13-15 порта A.
        Порты A ( 16-разрядный ) и B ( 12-разрядный ) служат для параллельного обмена данными. Каждый порт содержит регистр данных и регистр направления передачи, с помощью которых осуществляется ввод или вывод информации, аналогично тому, как это реализуют порты в MC68360. Регистры управления портов определяют функциональное назначение выводов портов: если i-ый бит имеет значение 0, то вывод PAi или PBi является входом или выходом порта, если бит имеет значение 1, то соответствующий вывод порта A используется для передачи сигналов CP, а вывод порта B - для сигналов таймеров или подтверждения прерываний.
        В состав коммуникационного процес



    www.gaw.ru

    Электронные компоненты 21-03-2007
    Интернет :: Больше чем Опера 30-09-2008 Электронные компоненты
    Виджеты в Opera являются своеобразными аналогами плагинов в других браузерах и представляют собой небольшие сетевые приложения. В отличие от того же Firefox, где плагины встраиваются в оболочку, здесь виджеты имеют определенную степень независимости и загружаются отдельно.Тем не менее и плагины, и виджеты пользуются кодом браузера. Главное их отличие заключается в существовании в виде самостоятельного окна, обладании собственным интерфейсом (хотя...


    Интернет :: Google Chrome: кто на новенького? 30-09-2008 Электронные компоненты
    Первого сентября все дети пошли в школу, а уже со 2 сентября 2008 года пользователи Всемирной Сети получили возможность ходить в интернет с помощью нового браузера Google Chrome. В этот день на официальной странице нового браузера Google Chrome www.google.com/chrome была активирована ссылка для скачивания приложения, и программа стала общедоступна. Перед этим продолжительное время на сайте был доступен лишь комикс-анонс, подробно описывающий техн...


    Оборудование :: Компьютерный конструктор 23-08-2008 Электронные компоненты
    Ежемесячно PC World предлагает готовые конфигурации ПК, по которым можно собрать компьютер самостоятельно, либо приобрести его в специализированных магазинах.Несмотря на ожидаемое увеличение спроса на ПК в "школьный" сезон, стоимость комплектующих практически не изменилась. Мало того, на некоторые составляющие (например, оперативная память) цена незначительно снизилась. Кроме этого, заметно упали в цене двухъядерные процессоры от компании AMD. К ...


    Оборудование :: Популярный формат 23-08-2008 Электронные компоненты
    С удешевлением производства мониторов постоянно увеличиваются требования к размеру их диагонали. И если несколько лет назад стандартными размерами экрана были 14 дюймов, то на данный момент самым ходовым товаром являются дисплеи с диагональю 20-22”. Именно о них и пойдет речь.Samsung SyncMaster 2263UWДанная модель монитора представляет собой многофункциональное устройство, которое помимо своих основных функций наделено всеми необходимыми характер...

    Практикум :: Вспомнить все 23-05-2008 Электронные компоненты
    Часто память просто отказывается помнить совершенно насущную информацию – вплоть до простых, но совершенно необходимых вещей. Одна из них – пароли. Самые разные – для входа в систему, почтовые логины, пароли к архивам и документам. Пароль к ICQ, наконец. Если вы забыли или потеряли пароль, на помощь придут программы для восстановления паролей.Advanced Mailbox Password RecoveryКак уже видно из названия, программа способна восстанавливать забытые п...
  •  

     
    Copyright by www.scripts.net.ua.
    Rambler's Top100 Рейтинг@Mail.ru