Объявление

Свернуть
Пока нет объявлений.

CAN 2.0 А

Свернуть
X
Свернуть

  • CAN 2.0 А

    1. Введение
    CAN (Controller Area Network) - это последовательный протокол связи с эффективной поддержкой распределения контроля в реальном времени и очень высоким уровнем безопасности.
    Основное назначение: организация передачи информации в сложных условиях, таких как среды с высоким уровнем различного рода помех. Этот протокол передачи применяется в автомобильной электронике, машинных устройствах управления, датчиках при передаче информации со скоростями до 1 Мбит/сек.
    Протокол CAN можно разделить на следующие уровни:
    • объектный уровень
    • канальный уровень
    • физический уровень
    Объектный и канальный уровни включают весь сервис и функции передачи данных определяемых ISO/OSI моделью. Область объектного уровня включает:
    • Поиск сообщений для передачи.
    • Фильтрация сообщений, полученных от канального уровня
    • Обеспечение связи между прикладным уровнем и аппаратными средствами.
    Объектный уровень можно реализовывать различными способами.
    Область канального уровня главным образом - протокол передачи, т.е. управление кадрами, выполнение арбитража, проверка и сигнализация ошибок, типизация ошибок. Внутри канального уровня решается, является ли шина свободной для начала новой передачи. Все что находится внутри канального уровня, не имеет ни какой свободы к модификации.
    Область физического уровня - фактическая передача бит между различными узлами. Внутри одной сети физический уровень должен быть одинаков для всех узлов. Физический уровень можно реализовать различными способами.
    2. Основные характеристики протокола
    • каждое сообщение имеет определенный приоритет
    • существуют гарантированные времена ожидания
    • гибкость конфигурации
    • групповой приём с временной синхронизацией
    • система непротиворечивости данных
    • multimaster
    • обнаружение и сигнализация ошибок
    • автоматическая ретрансляция разрушенных сообщений
    • различие между временными ошибками и постоянными отказами узлов и автономное отключение дефектных узлов
    Сообщения
    Информация по шине посылается в фиксированном формате сообщений различной, но фиксированной длины. Когда шина свободна, любой узел может начать передачу нового сообщения.
    Информационная маршрутизация
    В CAN нет ни какой информации относительно конфигурации сети (например, адреса узла). Это имеет несколько важных следствий:
    Гибкость системы:
    Узел может быть добавлен в CAN - сеть, без каких либо изменений в программном или аппаратном обеспечении, какого - либо узла в сети.
    Маршрутизация сообщений:
    Содержание сообщения определяется идентификатором. Идентификатор не указывает адреса сообщения, а описывает значение данных так, чтобы все узлы сети были способны решить фильтрацией сообщений, нужны им эти данные или нет.
    Передача группе:
    Как следует из фильтрации сообщений, любое число узлов может одновременно получать и реагировать на одно и тоже сообщение.
    Непротиворечивость данных:
    Внутри сети CAN гарантировано, что сообщение принято всеми узлами или ни одним узлом.
    Скорость передачи информации
    Скорость передачи информации в CAN - сети может быть различной для каждой сети. Однако в каждой конкретной сети скорость передачи информации фиксирована.
    Приоритеты
    Идентификатор и RTR - бит определяют статический приоритет сообщения в течение доступа к шине.
    Удаленный запрос данных
    Посылая кадр удаленного запроса данных, узел может потребовать данные от другого узла. Кадр данных и кадр удаленного запроса данных должны иметь одинаковый идентификатор.
    Multimaster
    Когда шина свободна, любой узел может начать передачу сообщения. Доступ к шине получает узел, передающий кадр с наивысшим приоритетом.
    Арбитраж
    Когда шина свободна, любой узел может начать передачу сообщения. Если два или больше узла начинают передавать сообщения в одно и тоже время, конфликт при доступе к шине будет решен поразрядным арбитражем используя идентификатор и RTR - бит. Механизм арбитража гарантирует, что ни время, ни информация не будут потеряны. Если кадр данных и кадр удаленного запроса данных начинают передаваться в одно время, то кадр данных имеет более высокий приоритет, чем кадр удаленного запроса данных. В течение арбитража каждый передатчик сравнивает уровень переданного бита с уровнем, считываемым с шины. Если эти уровни одинаковы, узел может продолжать посылать данные дальше. Если был послан уровень лог. '1' (recessive), а с шины считан уровень лог. '0' (dominant), то узел теряет право дальнейшей передачи данных и должен прекратить посылку данных на шину.
    Безопасность
    Чтобы достичь высокой безопасности передачи данных, приняты мощные меры нахождения ошибок, сигнализации ошибок и самотестирование в каждом CAN - узле.
    Обнаружение ошибок
    Для обнаружения ошибок приняты следующие меры:
    • текущий контроль (передатчики сравнивают уровни битов, которые переданы, с уровнями на шине).
    • побитовое заполнение
    • проверка кадра сообщения
    Эффективность обнаружения ошибок
    Механизмы обнаружения ошибок имеют следующие возможности:
    • обнаружение всех глобальных ошибок
    • обнаружение всех локальных ошибок передатчиков
    • обнаружение до 5 случайно распределённых ошибок в сообщении
    • обнаружение последовательной группы ошибок длиной до 15
    • обнаружение любого числа нечетных ошибок в сообщении
    Общая остаточная вероятность ошибки для необнаруженных, разрушенных сообщений, меньше чем:
    скорость появления ошибки * 4.7*10Е-11
    Сигнализация ошибки и время восстановления
    Разрушенные сообщения помечаются узлом, обнаружившим ошибку. Такие сообщения прерываются и будут переданы снова. Время восстановления от обнаружения ошибки до начала следующего сообщения в большинстве случаев = 29 * время передачи одного бита, если не имеется никаких дальнейших ошибок.
    Типизация ошибок
    Узлы CAN способны отличить временные ошибки от постоянных отказов. Дефектные узлы будут отключены.
    Соединения
    Линия связи по протоколу CAN - это шина, к которой может быть подключён ряд узлов. Количество узлов не имеет никакого теоретического предела. Фактически количество узлов будет ограничено временами задержек и/или электрической нагрузкой на линии шины. Способ, которым выполнена шина, не установлен в данной спецификации. Например, это может быть одиночный провод (+земля), два дифференциальных провода, оптическое стекловолокно.
    Уровни шины
    Шина может принимать одно из дополняющих друг друга значений: "dominant" и "recessive". В случае одновременной подачи "dominant" бита и "recessive" бита, возникающее в результате значение шины будет "dominant".
    (Прим. переводчика: далее считается что "recessive" = лог. "1", а "dominant" = "0").
    Подтверждение
    Все приёмники проверяют непротиворечивость принимаемого сообщения и подтверждают непротиворечивое сообщение.
    Режим "сна" / пробуждения
    Чтобы уменьшить потребляемую мощность системы, узел CAN может быть переведен в режим "сна". Режим "сна" заканчивается при любом действии на шине или внутреннем состоянии системы. При пробуждении запускается внутренняя синхронизация, канальный уровень ждёт стабилизации генератора системы, а затем будет ожидать самосинхронизации к действиям на шине (синхронизация к действиям на шине заканчивается после принятия последовательности 11 битов с лог. "1"). Для пробуждения узла из режима покоя может использоваться некоторое сообщение пробуждения со специальным идентификатором.
    3. Передача сообщений
    При передаче информации с помощью протокола CAN используется четыре типа кадров. Кадр данных содержит данные, передаваемые передатчиком приёмнику (ам). Кадр удаленного запроса данных передается на шину для запроса передачи кадра данных с тем же самым идентификатором. Кадр ошибки передаётся при обнаружении ошибки на шине. Кадр перегрузки используется для обеспечения дополнительной задержки между предшествующим и последующим кадрами данных или кадрами удаленного запроса данных. Кадры данных и кадры удаленного запроса данных отделяются от предшествующих кадров межкадровым пространством.
    3.1 Кадр данных (DATA FRAME)
    Кадр данных состоит из 7 различных полей: "Начало кадра", "поле арбитража", "поле контроля", "поле данных", "поле CRC", "поле подтверждения", "конец кадра".
    Нажмите на изображение для увеличения. 

Название:	data_frame.gif 
Просмотров:	2 
Размер:	5.3 Кб 
ID:	1339 alt="" />
    Начало кадра (Start of Frame)

    Отмечает начало кадра данных или кадра удаленного запроса данных. Состоит из бита с лог. '0'.
    Узлу разрешено начинать передачу только при свободной шине (см. простой шины). Все узлы должны быть синхронизированы по началу фронта, вызванного полем "начало кадра" (см. аппаратная синхронизация) узла, начавшего работу первым.
    Поле арбитража (Arbitration Field)
    Состоит из идентификатора и RTR-бита.
    Нажмите на изображение для увеличения. 

Название:	arbitration_field.gif 
Просмотров:	1 
Размер:	3.3 Кб 
ID:	1340 alt="" />
    Идентификатор (Identifier)
    Имеет длину 11 бит. Эти биты должны быть переданы в порядке от ID10 до ID4. Самый старший бит ID0. 7 старших битов не должны быть все битами с лог '1'.
    RTR-бит (RTR - bit)
    Бит запроса передачи.
    В кадре данных RTR-бит - "0". Внутри кадра удаленного запроса данных - "1".
    Поле контроля (CONTROL FIELD)
    Включает 6 бит. Это - код длины данных (4бита) и 2 бита зарезервированные под будущие расширения. Зарезервированные биты должны быть "0".
    Нажмите на изображение для увеличения. 

Название:	control_field.gif 
Просмотров:	1 
Размер:	4.5 Кб 
ID:	1341 alt="" />
    Код длины данных (DLC)
    Показывает количество байт в поле данных. Код длины данных имеет размер 4 бита и передаётся внутри контрольного поля.
    Допустимые значения: 0.......8.
    Другие значения использоваться не могут.
    Поле данных (DATA FIELD)
    Включает данные, передаваемые внутри кадра данных. Оно может содержать от 0 до 8 байт, каждый из которых содержит 8 бит.
    CRC поле (CRC FIELD)
    Содержит CRC - последовательность, сопровождаемую разделителем.
    Нажмите на изображение для увеличения. 

Название:	crc_field.gif 
Просмотров:	2 
Размер:	2.6 Кб 
ID:	1342 alt="" />
    CRC-последовательность (CRC Sequence):
    Для вычисления CRC полинома, полином, коэффициенты которого задаются потоком, состоящим из значений, бит полей: "начало кадра ", "поле арбитража", "поле контроля", "поле данных" (если имеется) (самые младшие 15 коэффициентов полинома =0), должен быть разделён полином следующего вида:
    x^15+x^14+x^10+x^8+x^7+x^4+x^3+1
    Остаток этого полиномиального деления есть CRC-последовательность, передаваемая по шине.
    CRC-разделитель (CRC Delimiter):
    CRC-последовательность сопровождается CRC-разделителем, который всегда равен лог. "1".
    Поле подтверждения (ACK FIELD)
    Длина 2 бита. Содержит область подтверждения (1 бит) и разделитель подтверждения (1 бит). В поле подтверждения передающий узел посылает два бита с лог. "1". Приемник, получивший правильное сообщение, информирует об этом передатчик, посылая бит с лог. "0" (т.е. перезаписывая бит в области подтверждения с лог. "1" на бит с лог. "0").
    Нажмите на изображение для увеличения. 

Название:	ask_field.gif 
Просмотров:	1 
Размер:	2.7 Кб 
ID:	1343 alt="" />
    Область подтверждения (ACK Slot)
    Все узлы, получившие соответствующую CRC-последовательность, сообщают об этом внутри области подтверждения перезаписью бита с лог. "1" на бит с лог. "0".
    Разделитель подтверждения (ACK Delimiter)
    Второй бит области подтверждения должен быть - лог. "1". Следовательно, область подтверждения окружена битами с лог. "1" (CRC-разделитель и разделитель подтверждения).
    Конец кадра (END OF FRAME)
    Каждый кадр данных и кадр удаленного запроса данных разграничены последовательностью флагов, состоящей из семи битов с лог. "1".
    3.2 Кадр удаленного запроса данных (REMOTE FRAME)
    Узел может инициализировать передачу кадра данных другим узлом, посылая кадр удаленного запроса данных.
    Этот кадр состоит из 6 полей:
    "Начало кадра", "поле арбитража", "поле контроля", "поле CRC", "поле подтверждения", "конец кадра".
    В отличие от кадра данных , RTR бит = "1". Здесь нет поля данных, зависящего от значения "кода длины данных", внутри этого поля может быть записано любое из допустимых значений (0…….8).
    Полярность RTR бита показывает, является ли передаваемый кадр кадром данных или кадром удаленного запроса данных
    3.3. Кадр ошибки (ERROR FRAME)
    Состоит из двух различных полей. Первое поле является суперпозицией флагов ошибки различных узлов, второе поле - поле разделителя ошибки.
    Нажмите на изображение для увеличения. 

Название:	error_frame.gif 
Просмотров:	2 
Размер:	3.4 Кб 
ID:	1344 alt="" />
    Для корректного завершения кадра ошибки, узлу в состоянии "пассивной ошибки" может быть необходим доступ к шине, поэтому шина должна быть свободной, по крайней мере, три времени передачи бита. Следовательно, шина не должна быть загружена на 100%.
    Флаг ошибки (Error Flag):
    Существует 2 формы флага ошибки: активный и пассивный флаг ошибки.
    1. активный флаг ошибки состоит из 6 последовательных бит с лог. "0".
    2. пассивный флаг ошибки состоит из 6 последовательных бит с лог. "1, если они не перезаписаны битами с лог. "0" других узлов.
    Узел в состоянии "активной ошибки" при обнаружении ошибки передает активный флаг ошибки. Форма флага ошибки нарушает закон кодирования битового потока методом разрядного заполнения (см. раздел "Кодирование битового потока"). Вследствие этого все узлы обнаруживают условие ошибки и начинают передавать флаг ошибки. В результате, последовательность бит с лог. "0", контролируемая на шине является суперпозицией флагов ошибок отдельных узлов. Общая длина этой последовательности - от 6 до 12 бит с лог. "0".
    Узел в состоянии "пассивной ошибки" при обнаружении ошибки передает пассивный флаг ошибки, он ждет последовательности из 6 одинаковых бит, определяющих начало флага пассивной ошибки. Когда эта последовательность будет обнаружена, флаг пассивной ошибки будет завершен.
    Разделитель ошибки (Error Delimiter)
    Разделитель ошибки состоит из 8 бит с лог. "1". После передачи флага ошибки каждый узел посылает биты с лог. "1" и контролирует шину, пока не обнаружит бит с лог. "1". Впоследствии он начинает передавать 7 бит с лог. "1".
    3.4. Кадр перегрузки (OVERLOAD FRAME)
    Кадр перегрузки содержит два битовых поля: флаг перегрузки и разделитель перегрузки.
    Нажмите на изображение для увеличения. 

Название:	over_frame.gif 
Просмотров:	1 
Размер:	4.0 Кб 
ID:	1345 alt="" />
    Имеются два вида перегрузки, которые оба приводят к передаче кадра перегрузки.
    1. Внутреннее состояние приёмника, которое требует задержки следующего кадра данных или кадра удаленного запроса данных.
    2. Обнаружение бита с лог. "0" в течение поля перерыва (см. межкадровое пространство).
    Передача кадра перегрузки из-за состояния 1 возможна только в первом битовом интервале перерыва, в то время как кадры перегрузки по состоянию 2 начинают передаваться на следующем битовом интервале после обнаружения бита с лог. "0".
    Для больших задержек может быть послано несколько кадров перегрузки.
    Флаг перегрузки (Overload flag)
    Состоит из 6 бит с лог. "0". Формат соответствует активному флагу ошибки.
    Форма флага перегрузки нарушает фиксированную форму поля перерыва. Поэтому, другие узлы также обнаруживают состояние перегрузки и в свою очередь начинают передавать флаг перегрузки.
    В случае обнаружения бита с лог. "0" в течение третьего бита перерыва, некоторые узлы не будут корректно интерпретировать флаг перегрузки, первый (из шести) бит с лог. "0" будет принят за поле "начало кадра". Шестой бит флага перегрузки с лог. "0" нарушает закон кодирования битового потока методом разрядного заполнения (см. раздел "Кодирование битового потока методом разрядного заполнения").
    Разделитель перегрузки (Overload Delimiter)
    Состоит из 8 бит с лог. "1".
    Разделитель перегрузки имеет такую же форму, как и разделитель ошибки. После передачи флага перегрузки узел контролирует шину, пока не обнаружит бит с лог. "1". В этой точке времени все узлы уже закончили передавать флаг перегрузки и начинают передавать 7 бит с лог. "1".
    4. Межкадровое пространство (INTERFRAME SPACE)
    Кадры данных и кадры удаленного запроса данных отделяются от предшествующих кадров любого типа (кадра данных, кадра удаленного запроса данных, кадра ошибки, кадра перегрузки). Это разделяющее битовое поле называется межкадровым пространством.
    Нажмите на изображение для увеличения. 

Название:	interf_space.gif 
Просмотров:	1 
Размер:	2.2 Кб 
ID:	1346 alt="" />
    Кадрам перегрузки и кадрам ошибки не предшествует межкадровое пространство; несколько кадров перегрузки также не отделяются межкадровым пространством.
    Межкадровое пространство содержит поля "перерыв" и "простой шины", и для узла в состоянии "пассивной ошибки", который был передатчиком предыдущего сообщения, дополнительное поле - "приостановка передачи" (поле "приостановка передачи" находится между полями "перерыв" и "простой шины").
    Нажмите на изображение для увеличения. 

Название:	interf_space2.gif 
Просмотров:	1 
Размер:	3.4 Кб 
ID:	1347 alt="" />
    Поле перерыва (Intermission)
    Состоит из 3 бит с лог. "1". В течение перерыва никакому узлу нельзя начинать передачу кадра данных или кадра удаленного запроса данных. Единственно возможное действие - это сигнализация состояния перегрузки.
    Простой шины (Bus Idle)
    Простой шины может иметь произвольную длину. Если шина опознана как свободная, любой узел, который имеет что - либо для передачи может начать передачу. Сообщение, которое было задержано для передачи другого сообщения, начинает передаваться в первом бите после поля перерыва.
    Обнаружение бита с лог. "0" на шине в течение этого поля интерпретируется как поле "начало кадра".
    Приостановка передачи
    Узел в состоянии "пассивной ошибки", после передачи сообщения, посылает 8 бит с лог. "1" после поля перерыва, перед началом передачи дальнейших сообщений или определением занятости шины. Если тем временем началась передача (вызванная другим узлом), узел станет приёмником этого сообщения.
    5. Определение передатчика / приемника
    Передатчик
    Узел, передающий сообщение называется передатчиком этого сообщения. Узел является передатчиком до тех пор, пока он не потерял арбитраж.
    Приёмник
    Узел называется приёмником сообщения, если он не передатчик сообщения и шина занята.
    6. Корректность сообщения
    Точка времени, в которой сообщение является корректным, различна для передатчиков и приёмников сообщений.
    Передатчик
    Сообщения пригодно для передатчика, если нет ошибок до конца кадра. Если сообщение разрушено, ретрансляция будет происходить автоматически и согласно приоритетам. Чтобы решить приоритеты доступа к шине с другими сообщениями, ретрансляция должна начаться, как только шина освободится.
    Приёмник
    Сообщение корректно для приёмника, если нет ошибок до конца кадра.
    7. Кодирование битового потока
    Следующие поля: "начало кадра", "поле арбитража", "поле контроля", "поле данных" и "поле CRC" кодированы методом разрядного заполнения. Всякий раз, когда передатчик передает пять последовательных бит идентичной величины в битовом потоке, он автоматически вставляет дополняющий бит противоположного значения в фактически передаваемый битовый поток.
    Оставшиеся битовые поля кадра данных или кадра удаленного запроса данных ("разделитель CRC", "поле подтверждения" и "конец кадра") имеют фиксированную форму и не кодируются. Кадр ошибки и кадр перегрузки также имеют фиксированную длину и не кодируются методом разрядного заполнения.
    8. Обработка ошибок
    Существует пять типов не взаимоисключающих ошибок:
    • разрядная ошибка Узел, который посылает что - либо на шину также контролирует шину. Разрядная ошибка может быть обнаружена во время передачи бита, если переданное значение отличается от значения, прочитанного с шины.
      Исключение:
      При посылке бита с лог. "1" в течение поля арбитража или области подтверждения разрядная ошибка не возникает, если контролируется бит с лог. "0". Передатчик, посылающий флаг пассивной ошибки и обнаруживший бит с лог. "0" не интерпретирует его как разрядную ошибку.
    • ошибка заполнения Ошибка заполнения обнаруживается во время приема последовательности из шести бит одинакового разрядного уровня в поле сообщения, которое должно быть кодировано методом разрядного заполнения.
    • ошибка CRC Последовательность CRC состоит из результата вычисленного передатчиком. Приёмники вычисляют CRC таким же образом, как и передатчик. Ошибка CRC обнаруживается при несовпадении расчетного результата CRC - последовательности в приёмнике и присланной CRC - последовательности передатчика.
    • ошибка формата Ошибка формата обнаруживается, когда разрядное поле фиксированного формата содержит один или несколько лишних бит.
    • ошибка подтверждения Ошибка подтверждения обнаруживается передатчиком всякий раз, когда нет контроля бита с лог. "0" в течение области подтверждения.
      9. Сигнализация ошибок
      Узел, обнаруживший состояние ошибки сигнализирует об этом передачей флага ошибки. Для узла в состоянии "активной ошибки" это передача флага активной ошибки, для узла в состоянии "пассивной ошибки" это передача флага пассивной ошибки. Всякий раз при обнаружении разрядной ошибки, ошибки заполнения, ошибки формата и ошибки подтверждения узел начинает передавать флаг ошибки в следующем бите. Всякий раз, когда обнаружена ошибка CRC, передача флага ошибки будет начата после разделителя подтверждения, если не была начата передача флага ошибки для другого состояния.
      10. Типизация ошибок
      Узел может быть в одном из трех состояний:
    • активной ошибки
    • пассивной ошибки
    • отключения от шины
    В состоянии "активной ошибки" узел может взаимодействовать с шиной, посылая флаг активной ошибки при обнаружении ошибки. В состоянии "пассивной ошибки" узел не должен слать флаг активной ошибки. Он принимает участие во взаимодействии с шиной, но при обнаружении ошибки должен послать флаг пассивной ошибки. После передачи сообщения об ошибке, узел в состоянии "пассивной ошибки" будет ждать инициализации дальнейшей передачи (см. приостановка передачи).
    В состоянии отключения от шины узлу не разрешено оказывать влияние на шину.
    Для типизации ошибок у каждого узла - CAN есть два счетчика:
    1. счетчик ошибок передачи
    2. счетчик ошибок приема
    (Прим. переводчика: Правила модификации счетчиков здесь не приводятся. Но хочется обратить внимание на то, что при наличии ошибок, счетчики увеличиваются быстрей, чем уменьшаются при приемах или передачах без ошибок).
    Узел находится в состоянии "пассивной ошибки", если счетчик ошибок передачи и / или счетчик ошибок приема больше или равен 128.
    Узел отключается от шины, если счетчик ошибок передачи или приема больше или равен 256.
    Узел, находившиеся в состоянии "пассивной ошибки" переходит в состояние "активной ошибки", если счетчик ошибок передачи и счетчик ошибок приема меньше или равен 127.
    Узлу, который находится в состоянии "отключения от шины", разрешается перейти в состояние "активной ошибки", с установкой обоих счетчиков в 0, после того, как на шине будут проконтролированы 128 прохождений 11 последовательных битов с лог. "1".
    Обратите внимание:
    1. Величина счетчика ошибки большая, чем 96 указывает на серьезные нарушения на шине. Это можно использовать для проверки состояния шины.
    2. Запуск / Пробуждение:
    Если в некоторый момент времени активен только один узел, и если этот узел передает некоторое сообщение, он не получит подтверждения, обнаруживается ошибка и происходит повтор сообщения. Из-за этого он может перейти в состояние "пассивной ошибки", но не может перейти в состояние "отключения от шины".
    10. Требования к синхронизации
    Номинальная скорость передачи информации в битах
    Номинальная скорость передачи информации в битах - число битов за секунду, передаваемое в отсутствии пересинхронизации идеальным передатчиком.
    Номинальное время передачи бита
    номинальное время передачи бита = 1 / номинальную скорость передачи информации
    Номинальное время передачи бита можно представить как время, разделенное на отдельные не перекрывающиеся сегменты времени. Это сегменты:
    - Сегмент синхронизации (SYNC_SEG)
    - Сегмент времени распространения (PROP_SEG)
    - Сегмент TSEG1 (PHASE_SEG1)
    - Сегмент TSEG2 (PHASE_SEG2)
    Нажмите на изображение для увеличения. 

Название:	nominal.gif 
Просмотров:	1 
Размер:	2.4 Кб 
ID:	1348 alt="" />
    SYNC SEG
    Эта часть времени передачи бита используется, чтобы синхронизировать различные узлы на шине. Ожидается, что фронт сигнала находится внутри этого сегмента.
    PROP SEG
    Эта часть времени передачи бита используется, чтобы компенсировать физическую задержку времён внутри сети.
    Это удвоенная сумма времени распространения сигнала по шине, входной задержки компаратора, и выходной задержки формирователей.
    TSEG1 и TSEG2.
    Эти сегменты используются, чтобы компенсировать ошибки смещения фазы сигнала. Эти сегменты могут быть удлинены или укорочены пересинхронизацией.
    Точка считывания (Sample point)
    Точка считывания - точка времени, в которой уровень шины читается и интерпретируется, как величина соответствующего бита. Ее место - в конце TSEG1.
    Время обработки информации
    Время обработки информации - отрезок времени, начинающийся с точки считывания, зарезервированный для вычисления уровня бита.
    Квант времени
    Квант времени - фиксированная единица времени, полученная из периода генератора. Существует программируемый делитель, оперирующий целочисленными величинами, изменяющимися, по крайней мере, от 1 до 32. Начиная с минимального кванта времени, квант времени может иметь длительность:
    квант времени = m * минимальный квант времени ,где m - величина делителя.
    минимальный квант времени = 1 / f генератора.
    Длительность отрезков времени
    • SYNC_SEG - 1 квант времени .
    • PROP_SEG - программируем, 1,2, ..., 8 квантов.
    • TSEG1 - программируем, 1,2, ..., 8 квантов.
    • TSEG2 - максимум из TSEG1 и времени обработки информации
    • время обработки информации - меньше или равно 2 квантам.
    12. Синхронизация
    Аппаратная синхронизация
    После аппаратной синхронизации внутреннее время передачи бита перезапускается с SYNC_SEG. Таким образом, аппаратная синхронизация вынуждает фронт находиться внутри сегмента SYNC_SEG.
    Ширина перехода пересинхронизации
    В результате пересинхронизации TSEG1 может быть удлинен, или TSEG2 может быть сокращен. Количество удлинения или сокращения сегментов TSEGx (x=1,2) имеет верхний предел, связанный с шириной перехода пересинхронизации. Ширина перехода пересинхронизации должна быть программируема между 1 и min(4, TSEG1).
    Синхронизация информации может быть получена из переходов от одного бита к другому. Максимальная длина между двумя переходами, которые могут использоваться для пересинхронизации - 29 времен передачи бита.
    Фазовая ошибка фронта Фазовая ошибка фронта определяется позицией фронта относительно SYNC_SEG, измеряется в квантах времени. Знак фазовой ошибки определяется следующим образом:
    • e = 0, если фронт сигнала находится внутри SYNC_SEG.
    • e> 0, если фронт сигнала перед точкой считывания.
    • e < 0, если фронт сигнала после точки считывания предыдущего бита.
    Пересинхронизация Эффект пересинхронизации - также как и от аппаратной синхронизации, когда величина фазовой ошибки фронта сигнала, которая вызывает пересинхронизацию - меньше или равна программируемой величине ширины перехода пересинхронизации. Когда величина ошибки фазы больше чем ширина перехода пересинхронизации,
    • и если ошибка фазы положительна, то TSEG1 удлиняется на время равное: время передачи бита * ширину перехода пересинхронизации.
    • и если ошибка фазы отрицательна, то TSEG2 - сокращается на время равное: время передачи бита * ширину перехода пересинхронизации.
    Правила синхронизации Синхронизация и пересинхронизация - две формы синхронизации. На них действуют следующие правила:
    1. Позволяется только одна синхронизация внутри одного интервала передачи бита.
    2. Для синхронизации будет использоваться фронт только, если величина, полученная в предыдущей точке считывания (предыдущая величина на шине) отличается от величины на шине сразу после фронта.
    3. Синхронизация выполняется всякий раз, по фронту "1" -> "0" в течение простоя шины.
    4. Все другие фронты "1" -> "0" (и фронты "0" -> "1" в случае низких скоростей), выполняемые по правилам 1 и 2, будут использоваться для пересинхронизации.

      Возможность размещать комментарии к сообщениям отключена.

    Метки статей

    Свернуть

    Меток пока нет.

    Новые статьи

    Свернуть

    • Стандартный параллельный интерфейс на PC
      admin
      Основным назначением интерфейса Centronics (аналог-ИРПР-М) является подключение к компьютеру принтеров различных типов. Поэтому распределение контактов разъема, назначение сигналов, программные средства управления интерфейсом ориентированы именно на это использование. Вто же время с помощью данного интерфейса можно подключать к компьютеру и другие внешние устройства, имеющие разъем Centronics, а также специально разработанные УС.

      Основным достоинством использования Centronics для подключения УС по сравнению с ISA является значительно меньший риск вывести компьютер из строя. Главный недостаток этого подхода - значительно меньшая скорость обмена. Назначение 36 контактов разъема Centronics приведено в таблице 1.

      Таблица 1. Назначение контактов разъемов Centronics

      1 /STROBE Out Strobe (Строб)
      2 D0 Out Data Bit 0
      3 D1 Out Data Bit 1
      4 D2 Out Data Bit 2
      5 D3 Out Data Bit 3
      6 D4 Out Data Bit 4
      7 D5 Out Data Bit 5
      8 D6 Out Data Bit 6
      9 D7 Out Data Bit 7
      10 /ACK In Acknowledge (Подтверждение)
      ...
      08.02.2017, 22:45
    • Современные микросхемы драйверов RS-485 фирмы MAXIM
      admin
      Журнал «Схемотехника» №10 2002 г.
      Олег Николайчук
      Целью настоящей статьи является ознакомление читателей с современными микросхемами драйверов сети RS485 фирмы MAXIM, их основными параметрами и особенностями.
      Интерфейс RS485 наиболее часто используется при создании современных локальных сетей различного назначения, как в промышленных изделиях, так и в любительской практике. Основными преимуществами интерфейса являются:
      • Относительно низкая себестоимость микросхем драйверов, что снижает стоимость аппаратной реализации сетевых диспетчеров, т.е. узлов связи между сетевой средой (линиями связи) и ядром станции (узла) сети, т.е. микроконтроллерной или микропроцессорной системой;
      • Использование в сетях на базе интерфейса RS485 всего трех проводов (третий, общий, не всегда является обязательным), что значительно снижает себестоимость всей системы, поскольку известно, что себестоимость сетевой среды современных локальных сетей практически всегда составляет более 60% от стоимости всей системы;
      • Микросхемы драйверов имеют малые габаритные размеры. Наиболее часто используются микросхемы, выполненные в корпусе DIP8 со стандартным расположением выводов, ставшим , промышленным стандартом. Микросхемы драйверов используют всего несколько дискретных элементов для цепей защиты, использование которых не является обязательным. Малые габаритные размеры микросхем драйверов и минимальное количество обвязки экономит площадь печатной платы, что также положительно сказывается на стоимости системы;
      • Современные микросхемы имеют достаточно низкое энергопотребление, многие из них при отсутствии активности в сети автоматически переходят в режим экономии, что снижает энергопотребление системы;
      • Современные микросхемы драйверов имеют повышенную нагрузочную способность. Если раннее большинство микросхем было насчитано на работу с 32 станциями, то современные модели обеспечивают нормальное функционирование до 256 станций;
      • В настоящее время выпускаются микросхемы в высокой предельной скоростью передачи. Это позволяет создавать высокоскоростные сети, и снижает количество ошибок в сети за счет улучшения формы передаваемого сигнала;
      • Драйверы интерфейса RS485 имеют достаточно простое управление. Особенности организации сетей, их схемотехника, способы управления доступом к каналу и примеры программирования достаточно описаны [1-11].
      • Микросхемы интерфейса RS485 выпускают многие фирмы мира [12]. Однако несомненным лидером в разработке и выпуске новых микросхем драйверов является известная фирма MAXIM [13]. В настоящее время фирма выпускает более 80 типов микросхем драйверов интерфейса RS485/422.
      Все микросхемы драйверов можно условно разделить на 4 группы: микросхемы с питанием +5 В, микросхемы с расширенным диапазоном питания от 3 до 5.5 В, низковольтные микросхемы с питанием 3.3 В и микросхемы со встроенной оптической изоляцией. Основные технические характеристики этих групп микросхем приведены в таблицах 1 — 4 соответственно.
      В приведенных таблицах приняты следующие обозначения:
      В колонке «Разрешение RxD»: P — обозначает, что управляющий вход приемника переключает его либо в открытое состояние, либо переводит его в режим энергосбережения, O — означает, что управляющий вход тоько включает/выключает приемник.
      В колонке «Режим»: H — означает полудуплексный режим, т.е. интерфейс RS485, F — обозначает полный дуплексный режим, т.е. интерфейс RS422.
      Прежде чем приступить к анализу таблиц, определим критерии отбора микросхем для последующего рассмотрения. Мы ставим своей целью ознакомление читателя с широко используемыми микросхемами интерфейса RS485 (но не RS422), т.е. с микросхемами, работающими в полудуплексном режиме, которые в колонке «Режим» имеют символ «H». У этих микросхем входы приемника объединены с выходами передатчика и образуют две линии приема/передачи, «A» и «B». Мы не будем рассматривать ряд микросхем, содержащих только приемники или только передатчики, поскольку их применение также весьма ограничено. И наконец, мы будем рассматривать только микросхемы, выпускаемые в корпусе с восемью выводами (кроме микросхем со встроенной оптической изоляцией и микросхем в корпусе 6/5/SO), как наиболее распространенные и используемые.
      Таблица 1. Микросхемы драйверов интерфейса RS485/422 с питанием +5 В
      ТИП Нали чие TxD Нали чие RxD Разре шение TxD Разре шение RxD Состо яние RxD Режим Быстро действие, Mbps Кол-во стан ций Защ ита ESD Пит ание, V Ток потре бления, mA Ток эко номии, чA Корпус
      MAX1481 1 1 NC F 0.25 256 - 5 0.3 0.1 10/µMAX
      MAX1482 1 1 O F 0.25 256 - 5 0.02 0.1 14/PDIP.300
      14/SO.150
      MAX1483 1 1 O H 0.25 256 - 5 0.02 0.1 8/µMAX
      8/PDIP.300
      8/SO.150
      MAX1484 1 1 NC F 12 256 - 5 0.3 - 10/µMAX
      MAX1485 1 1 - NC H- F 0.25 256 - 5 0.3 - 10/µMAX
      MAX1486 1 1 - NC H- F 12 256 - 5 0.3 - 10/µMAX
      MAX1487 MAX1487E 1 1 O H 2.5 128 -
      ±15kV
      5 0.23 - 8/µMAX
      8/PDIP.300
      8/SO.150
      MAX3040 4 0 - - - 0.25 - ±10kV 5 1 0.002 16/SO.150
      16/SO.300
      16/TSSOP
      MAX3041 4 0 - - - 2.5 - ±10 kV 5 1 0.002 16/SO.150
      16/SO.300
      16/TSSOP
      MAX3042B 4 0 - - - 20 - ±10 kV 5 1 0.002 16/SO.150
      16/SO.300
      16/TSSOP
      MAX3043 4 0 - - - 0.250 - ±10 kV 5 1 0.002 16/SO.150
      16/SO.300
      16/TSSOP
      ...
      08.02.2017, 22:45
    • Системный контроллер ввода-вывода для сопряжения шин PCI и ISA
      admin
      Журнал «Chip News» №6 2001 г.
      Ракович Н. Н.
      Мы уже беседовали на страницах журнала о продукции компании Winbond [Л.1], выпускающей широкую гамму разнообразных микросхем, начиная с памяти и микроконтроллеров и заканчивая приборами для мобильных средств связи и распознавания речи. Примерно в середине этого списка находятся ИС для компьютеров. В данной статье рассмотрим контроллеры ввода-вывода W83С553F и W83С554F, которые выполняет функции моста между шинами PCI и ISA. Тема эта должна быть интересна хотя бы уже потому, что смена поколений компьютеров требует от разработчиков встроенных плат с интерфейсом ISA стремительной модернизации оборудования, с тем, чтобы не потерять своих заказчиков.

      Терминология (более чем кратко)....
      08.02.2017, 22:45
    • Реализация последовательной асинхронной передачи данных в микроконтроллерах PIC
      admin
      Введение.
      Серия PIC16Cxx от Microchip Technology, Inc. - это второе поколение высокопроизводительных восьмиразрядных микроконтроллеров на базе EPROM. Некоторые микроконтроллеры из этой серии (например PIC16C71 и PIC16C84) не имеют встроенного последовательного асинхронного порта. Эта статья содержит описание последовательного асинхронного интерфейса ( полудуплексное RS-232 соединение ) с программной обработкой прерывания для микроконтроллеров PIC16Cxx. Эти микроконтроллеры могут работать на очень большой скорости, с минимальной длительностью такта 250нс ( при частоте 16МГц ). Для тестирования RS-232 режима предлагается использовать простой цифровой вольтметр / систему опроса данных ( Digital Volt Meter / Analog Data Acquisition Systems ) выполненный на PIC16C71, Этот прибор принимает команды от ПК и передает обратно восмибитные значения с выбранного АЦП канала.

      Реализация.
      Ниже приведено подробное описание реализации полудуплексного RS-232 интерфейса с программной обработкой прерывания для PIC16C71. В программе примера в качестве передающего выхода используется RB7, а для приема – RTCC/RA4. Конечно, и вход и выход соединяются через соответствующий преобразователь уровней сигнала RS-232 / ТТЛ. Описание преобразователя уровней напряжения дано в разделе Аппаратная часть.

      Режим передачи. Передающий режим в программе напрямую связан с и...
      08.02.2017, 22:45
    • Простой конвертер RS-232-TTL
      admin

      Журнал «Схемотехника» №1 2000 г.
      Александр Нечаев
      При разработке различного рода электронных устройств с использованием микроконтроллеров очень часто оказывается полезной возможность подключения их к персональному компьютеру через последовательный порт. Однако напрямую это сделать невозможно, поскольку по стандарту...
      08.02.2017, 22:45
    • Программирование портов ввода/вывода LPT и ISA
      admin
      Данный материал основан на моём (его) личном опыте работы с материнской платой неизвестного (нет, не солдата) производителя. Чипсет - SIS. Если вдруг в Вашем случае дело будет обстоять другим образом, напишите мне. Также хочу сразу предупредить - я не профессиональный программист!!! Поэтому не ругайте меня за отсутствие проф. терминов, может быть кривых объяснений или ещё каких недочётов,...
      08.02.2017, 22:45
    Обработка...
    X