перевод К.Староверова
Двунаправленный преобразователь уровня для шины I2C и других систем
Подключение микросхем с дифференциальными логическими уровнями
1.1 Логические уровни шины I2C
Ниже представлен обзор дифференциальных логических уровней, используемых в шинных системах I2C. Шина I2C использует два типа логических уровней:
- фиксированные уровни,
- уровни по отношению к напряжению питания.
а) Фиксированные уровни реализованы для микросхем, выполненных не по технологии КМОП, и/или микросхем с напряжением питания выше 5В, например, 12В. Используются следующие фиксированные уровни для сигналов ввода-вывода:
- входное напряжение НИЗКОГО уровня VIL |
не менее -0.5В |
не более 1.5В |
- входное напряжение ВЫСОКОГО уровня VIH |
не менее 3В |
не более VDDmax+0.5В |
- выходное напряжение НИЗКОГО уровня VOL |
не менее 0В |
не более 0.4В |
- выходное напряжение ВЫСОКОГО уровня VOH выход с открытым стоком, напряжение на котором определяется уровень VDD через внешний подтягивающий резистор. |
б) Уровни по отношению к напряжению питания реализованы для КМОП-микросхем и/или для микросхем с напряжением питания до 5В. Используются следующие уровни:
- входное напряжение НИЗКОГО уровня VIL |
не менее -0.5В |
0.3 VDD |
- входное напряжение ВЫСОКОГО уровня VIH |
не менее 0.7VDD |
не более VDDmax+0.5В |
- выходное напряжение НИЗКОГО уровня VOL |
не менее 0В |
не более 0.4В |
- выходное напряжение ВЫСОКОГО уровня VOH выход с открытым стоком, уровень на котором определяется уровнем VDD через внешний подтягивающий резистор. |
Логические уровни на линиях шины зависят от подтягивающих резисторов к VDD, тока утечки и, при наличии, последовательных резисторов с линиями ввода-вывода микросхем. Их значения необходимо выбрать таким образом, чтобы при установлении низкого уровня минимальный запас по помехоустойчивости составлял 0.1 VDD и 0.2 VDD при установлении высокого уровня.
1.2 Подключение микросхем к шине I2C с различным напряжением питания и совместимыми с 5В-ым напряжением линиями ввода-вывода
Из значений, представленных в 1.1, можно сделать вывод, что микросхемы с фиксированными уровнями и микросхемы с уровнями по отношению к 5В-ому питанию могут быть подключены к одним и тем же линиям шины без использования дополнительных компонентов. Кроме того, микросхемы с уровнями по отношению к 3.3В-ому питанию также могут быть подключены к этим же линиям шины, но при условии, что выводы данных микросхем совместимы с 5В-ым напряжением. Данная возможность объясняется тем, что подтягивающие резисторы подключены к 5В-ому питанию (см. рисунок 1).
Рисунок 1. Шинная система I2C с 3,3В-ыми микросхемами (совместимые с 5В) и 5В-ыми микросхемами, которые подключены к одним линиям шины
Данное решение является наиболее простым, но требует, чтобы низковольтные микросхемы были совместимы с напряжением 5В, что усложняет процесс их производства. Низковольтные микросхемы с напряжением питания 2В также удовлетворяют требованиям шины I2C и могут быть подключены к шинной системе на рисунке 1.
Если микросхемы с напряжением питания менее 2,7В подключены к линиям шины через последовательные сопротивления, то особое внимание нужно уделить выполнению требования по запасу помехоустойчивости 0.1 VDD при установлении низкого уровня, что необходимо в соответствии с требованиями шины I2C. Запас устойчивости 0.2 VDD при установлении высокого уровня не зависит от напряжения питания.
Микросхемы с напряжением питания менее 2В не удовлетворяют требованию по запасу устойчивости 0.1 VDD, т.к. низкий уровень на линиях шины равен 0,4В, а их входной уровень 0.3 VDD меньше, чем 0.6В. Данная проблема будет разрешена в следующем обновлении требований к шине I2C.
1.3 Микросхемы с различными логическими уровнями, подключенные через двунаправленный преобразователь уровня
Для подключения двух каскадов шинной системы I2C с различным напряжением питания и различными логическими уровнями необходим двунаправленный преобразователь уровня. В шинной системе на рисунке в левом каскаде имеются подтягивающие резисторы и микросхемы подключены к 3,3В-ому напряжению питания, а в правом каскаде предусмотрены подтягивающие резисторы и микросхемы с 5В-ым напряжением питания. Микросхемы каждого каскада содержат входы с логическими уровнями по отношению к напряжению питания и выходы с открытым стоком.
Рисунок 2. Двунаправленный преобразователь уровня соединяет два каскада шинной системы I2C
Преобразователи уровня в каждой линии шины идентичны и состоят одного N-канального МОП-транзистора: T1 на линии последовательной передачи данных SDA и T2 на линии синхронизации SCL. Затворы (З) подключены к наименьшему напряжению VDD1, истоки (И) к линиям шины каскада пониженного напряжения, а стоки (С) к линиям шины каскада повышенного напряжения. У многих МОП-транзисторов имеется внутренне соединение подложки с истоком. Если же этого соединения нет, то его нужно выполнить внешне. Диод между стоком (С) и подложкой внутри МОП-транзистора указывает на наличие n-p-перехода стока и подложки.
1.3.1 Описание преобразования уровня
Преобразователь уровня можно описать в виде трех состояний, в которых он может находиться:
- Состояние 1. Линия шины не подтягивается к низкому уровню ни одной из микросхем, а линия шины каскада пониженного напряжения подтягивается резисторами Rp к 3.3В. Затвор и исток МОП-транзистора имеют потенциал 3,3В, т.о. напряжение VGS меньше порогового напряжения и МОП-транзистор не пропускает ток. Это позволяет выполнить подтягивание линии шины каскада повышенного напряжения с помощью резистора Rp к 5В. Таким образом, линии шин обеих каскадов находятся в высоком состоянии, но имеют различные уровни напряжений.
- Состояние 2. 3.3В-ая микросхема устанавливает низкий уровень на линии шины. Исток МОП-транзистора принимает низкий потенциал, но напряжение на затворе остается равным 3.3В. Напряжение VGS становится выше порогового и МОП-транзистор переходит в проводящее состояние. В этом случае линия шины каскада повышенного напряжения также подтягивается к низкому уровню через проводящий МОП-транзистор. Таким образом, линии обеих каскадов перешли в низкое состояние с одним и тем же уровнем напряжения.
- Состояние 3. 5В-ая микросхема устанавливает низкий уровень на линии шины. Через диодный переход исток-подложка МОП-транзистора каскада пониженного напряжения вначале снижается напряжение до тех пор, пока напряжение VGS перейдет пороговый уровень, а затем, МОП-транзистор перейдет в проводящее состояние. Теперь, линия шины каскада пониженного напряжения подтягивается к низкому уровню через проводящий МОП-транзистор, открытый 5В-ой микросхемой. Таким образом, линии шины обеих каскадов находятся в низком состоянии и имеют один и тот же уровень напряжения.
Данные три состояния показывают, что логические уровни передаются в обоих направлениях шинной системы, независимо от каскадов управления. В состояниях 2 и 3 выполняется функция "монтажного И" между линиями шины обеих каскадов, что указывает на соответствие требованиям шины I2C.
К VDD1 и VDD2 может быть приложено другое напряжение, отличающееся от 3,3В и 5В, соответственно, например, 2В к VDD1 и 10В к VDD2. Для нормальной работы необходимо соблюдать условие превосходства или равенства VDD2 относительно VDD1. МОП-транзисторы допускают, чтобы напряжение VDD2 было меньше VDD1 в процессе снятия/подачи питании при условии неактивности в этот момент шинной системы.
Максимальное значение VDD2 ограничивается только характеристиками используемого МОП-транзистора. При использовании повышенных напряжений необходимо принять во внимание замедление падающих фронтов, возникающих при переходе в состояние 2 или 3, что происходит за счет увеличения времени разряда емкости линии шины.
Минимально возможное напряжение питания VDD1 зависит от порогового напряжения VGS(th) МОП-транзисторов. Если пороговое напряжение примерно на 1В ниже наименьшего VDD1, то преобразователь уровня будет работать корректно. Например, если наименьшее напряжение VDD1 равно 3В, то приемлемо использовать транзисторы с пороговым напряжением VGS(th) не более 2В.
1.3.2 Защита каскада пониженного напряжения от выбросов повышенного напряжения
Если шинную систему I2C необходимо подключить, например, к внешней шине, на линиях которой вероятно появление выбросов напряжения повышенного уровня, то в этом случае преобразователь уровней может выступать в качестве схемы защиты от выбросов напряжения, но при условии, что характеристики используемых транзисторов позволяют работать с данными выбросами. В этом случае каскад пониженного напряжения является защищенной частью, а каскад повышенного напряжения подключается к линиям внешней шины (см. рисунок 2). Если в данном применении преобразование уровней не требуется, то VDD1 и VDD2 могут быть соединены вместе.
1.3.3 Преобразователь уровня для организации межточечных соединений
Схема на рисунке 2 также может использоваться в качестве однонаправленного преобразователя уровня, включенного между выходным сигналом и одним или более входами, которые характеризуются более высокими или низкими логическими уровнями по отношению к выходному сигналу. Если выходной сигнал генерируется двухтактным каскадом, то резистор Rp в выходной части схемы (каскад повышенного или пониженного напряжения) может быть исключен. Rp во входной части схемы должен остаться. Механизм защиты и изоляции, описанный в 2.3.2 и 2.3.4, относится также и к данному случаю.
1.3.4 Изоляция обесточенного каскада пониженного напряжения
Дополнительной особенностью схемы преобразователя уровня на рисунке 2 является изоляция каскада пониженного напряжения при снятии напряжения VDD1. В этом случае VDD1 равно около 0В и МОП-транзисторы отключены, т.к. VGS ниже порогового напряжения. Работа каскада повышенного напряжения не блокируется и он остается в работе. Чтобы гарантировать запас помехоустойчивости, МОП-транзисторы должны обладать минимальным пороговым напряжением VGS(th), например 0.4В, а напряжение VDD1 должно быть ниже указанного значения. Функция изоляции поддерживается, даже если преобразование уровней не требуется. В этом случае напряжения VDD1 и VDD2 должны иметь одно и тоже значение ,например, 3.3В или 5В.
1.3.5 Усовершенствованная схема для изоляции выключенного каскада повышенного напряжения
Если после выключения питания необходимо изолировать каскад повышенного напряжения, схему преобразователя уровня необходимо изменить, как показано на рисунке 3.
Рисунок 3. Шинная система I2C с изоляцией каскада повышенного напряжения при выключенном питании
Если напряжение VDD2 отключено, то транзисторы T3 и T4 переходят в непроводящее состояние и каскад повышенного напряжения становится изолированным от другой части шинной системы. Подтягивающие резисторы Rp к VDD3 являются необязательными. Они могут использоваться для предотвращения плавания потенциала на стоках МОП-транзисторов при установлении высокого уровня (можно использовать резисторы с высоким сопротивлением). VDD3 желательно подключить к наибольшему напряжению питания. Если VDD3 имеет более низкое значение, то необходимо обратить внимание на достаточность высоких логических уровней на линиях шины.
Изоляция каскада пониженного напряжения при отключении VDD1 выполнена таким же способом, как и в схеме на рисунке 2 (см. описание в 2.3.4), но теперь независимо от значения VDD2.
Поскольку данная схема преобразователя уровня является симметричной, то в качестве каскада пониженного или повышенного напряжения может выступать левая или правая часть схемы на рисунке 3. К этой схеме могут быть подключены еще каскады с повышенным, пониженным или тем же напряжением питания с помощью дополнительных МОП-транзисторов, включенных тем же способом, что и в остальных каскадах на рисунке 3. Каждый каскад изолирован от остальной части шинной системы при отключении его напряжения, при этом, остальная часть каскадов остается функционировать.
2. Характеристики МОП-ьранзисторов
Ниже представлены требования к наиболее важным характеристикам МОП-транзисторов, используемых в качестве двунаправленных преобразователей уровней в шинных системах I2C с максимальными уровнями 6В и минимальными 2,7В. Значения приведены для справки и могут быть адаптированы под другие напряжения питания, логические уровни и/или другие применения.
Тип: N-канальный МОП-транзистор с режимом обогащения
Пороговое напряжение затвора: VGS(th) |
не менее 0.1В, не более 2В |
Сопротивление открытого канала: RDS(on) |
не более 100 Ом при токе стока ID= 3 мА, VGS= 2.5В |
Входная емкость: Ciss |
не более 100 пФ при VDS= 1В, VGS = 0В |
Время переключения: ton toff |
не более 50 нс |
Допустимый ток стока: ID |
10 мА или более |
Номиналы подтягивающих резисторов и последовательных резисторов здесь не приводятся, они зависят от наихудших уровней напряжения питания и логических уровней, протяженности и загруженности линий шины, а также требований по временам нарастания и спада фронтов. Номиналы данных резисторов необходимо рассчитать для каждой шинной системы отдельно. Хорошим подходом для расчета является поддержание примерно одинаковых значений RC различных каскадов; это позволяет достичь минимальных расхождений во временах установления и удержания.
В таблице 1 представлены МОП-транзисторы, которые могут использоваться в преобразователе уровней. В справочнике SC07 компании Philips представлены полные характеристики данных транзисторов. BSN10 или BSN20 - недорогие транзисторы, которые обладают хорошими характеристиками для преобразования уровней 3В/5В, изоляции и защиты.
Таблица 1
Тип транзистора |
VGS(th) |
RDS(on) |
Ciss |
Корпус |
BSN10 |
не менее 0.4В не более 1.8В |
25 Ом (тип.) |
15 пФ |
TO-92 |
BSN20 |
не менее 0.4В не более 1.8В |
25 Ом (тип.) |
15 пФ |
SOT23 |
BSS83 |
не менее 0.1В не более 2.0В |
70 Ом (тип.) |
1.5 пФ (тип.) |
SOT143 |
BSS88 |
не менее 0.4В не более 1.2В |
15 Ом |
50 пФ (тип.) |
TO-92 |
3. Осциллограммы логических уровней
На рисунках 4, 5, 6, 7 и 8 представлены осциллограммы логических уровней для схемы на рисунке 2. На рисунке 9 представлены осциллограммы сигналов для схемы на рисунке 3. В качестве МОП-транзисторов T1, T2, T3 и T4 используется BSN10. В каскаде пониженного напряжения номинал Rp равен 3,3 кОм, емкость линии шины равна 50 пФ, а в каскаде повышенного напряжения - 4,7 кОм и 30 пФ, соответственно. Показаны осциллограммы только для линий синхронизации SCL. У управляющих микросхем выполняется управление падающим фронтом на выходах. Длительность падающего фронта до 50 нс.
3.1 Преобразование уровня с 3В до 5В
Рисунок 4. Преобразование уровня с 3В до 5В (200 нс/дел.)
Рисунок 5. Падающий фронт с рисунка 4 в увеличенном масштабе (25 нс/дел.)
На рисунке 4 показано преобразование уровня из каскада пониженного напряжения в каскад повышенного напряжения с временным масштабом 200 нс/дел. 3В-ая микросхема управляет линией SCL1 и форма этого сигнала смещается к 5В-ому уровню на линии SCL2. При нарастании фронта на уровне приблизительно 2В МОП-транзистор отключается и уровни в каждом каскаде плавно нарастают по своей собственной кривой до конечного значения. На рисунке 5 показана форма падающего фронта в увеличенном масштабе (развертка 25 нс/дел.). На уровне около 2В во время падающего фронта SCL1 МОП-транзистор переходит в проводящее состояние и соединяет обе линии шинных каскадов. На это затрачивается примерно 25 нс (см. отрезок от 100 до 125 нс по оси времени), что объясняется необходимостью разряда линии SCL2 до достижения уровня линии SCL1. Этим демонстрируется увеличение длительности спада уровня на линии SCL1, но оно находится в допустимых пределах в соответствии с требованиями шины I2C (300 нс). После этого, напряжения на линиях SCL1 и SCL2 плавно снижаются до низкого уровня.
Емкостная связь через МОП-транзистор между SCL1 и SCL2 оказывает некоторое отрицательное влияние на форму сигналов:
- небольшой выброс на SCL1 в процессе нарастания фронта SCL2 (рисунок 4),
- замедление в начале падающего фронта SCL2, вызванное спаданием фронта SCL1 (рисунок 5).
3.2 Преобразование уровня с 5В до 3В
Рисунок 6. Преобразование уровня с 5В до 3В (200 нс/дел.)
Рисунок 7. Падающий фронт с рисунка 6 в увеличенном масштабе (25 нс/дел.)
На рисунке 6 представлены осциллограммы напряжений при преобразовании уровня в направлении от каскада повышенного напряжения к каскаду пониженного напряжения с временным масштабом 200 нс/дел. Линией SCL2 управляет 5В-ая микросхема и размах сигнала этой линии понижается до 3В на линии SCL1. При снижении напряжения приблизительно менее 2В МОП-транзистор отключится и уровни на линиях в каждом каскаде начнут плавно нарастать по собственной кривой до конечного значения. На рисунке 7 показаны падающие фронты в увеличенном масштабе (25 нс/дел.). На уровне около 2В падающего фронта на SCL2 МОП-транзистор перейдет в проводящее состояние и соединит лини обеих шинных каскадов. После этого на линиях SCL2 и SCL1 будет один и тот же уровень напряжения, который плавно уменьшится до низкого уровня. Емкостная связь через МОП-транзистор между SCL1 и SCL2 вносит некоторые искажения в формы сигналов:
- небольшой выброс на SCL1 во время нарастания фронта на SCL2 (см. рисунок 6),
- замедление в начале падающего фронта на SCL1, вызванное падающим фронтом на SCL2 (см. рисунок 7).
3.3 Осциллограммы сигналов при отключении питания шинных каскадов
На рисунках 8 и 9 представлены осциллограммы логических сигналов при отключении каскада шинной системы на рисунках 2 и 3, соответственно.
Рисунок 8. Осциллограммы при отключении питания каскада пониженного напряжения на рисунке 2
Рисунок 9. Осциллограммы при отключении питания каскада повышенного напряжения на рисунке 3
На рисунке 8 представлена ситуация, когда VDD1 равно 0В, т.к. в шинной системе на рисунке 2 отключено питание каскада пониженного напряжения. Каскад повышенного напряжения продолжает функционировать и сигнал синхронизации присутствует на линии SCL2. На линии SCL1 сохраняется низкий уровень с небольшими положительными и отрицательными колебаниями напряжения, вызванных емкостью сток-исток непроводящего МОП-транзистора T2.
На рисунке 9 представлена ситуация, когда напряжение VDD2 равно 0В, т.к. с каскада повышенного напряжения шинной системы с рисунка 3 снято питание. Каскад пониженного напряжения продолжает функционировать и на линии SCL1 присутствует сигнал синхронизации. На линии SCL2 сохраняется низкий уровень напряжения с некоторыми положительными и отрицательными отклонениями, вызванных емкостной связью через закрытый переход сток-исток транзистора T4. Подтягивающие резисторы к VDD3 не используются, а напряжение на общих стоках достигает высокого уровня на SCL1 минус падение напряжения на внутреннем диодном переходе сток-подложка транзистора T2. Во время присутствия низкого уровня транзистор T2 находится в проводящем состоянии и общие стоки (С) имеют тот же уровень, что и SCL1.
Если подтягивающие резисторы к VDD3 присутствуют, то высокий уровень общих стоков (С) будет образован путем подтягивания потенциала к уровню VDD3, когда уровень SCL1 - высокий (аналогично SCL2 на рисунке 4). В этом случае также имеется возможность подключить микросхемы каскада повышенного напряжения непосредственно к общим стокам (С). Данные микросхемы питаются напряжением VDD3, которое в данном случае не отключено.
Использование рассмотренных выше схем преобразования уровня позволяет расширить возможности шинных систем I2C по подключению, снятию напряжения питания и защиты микросхем, подключенных к шине I2C с различным напряжением питания и различными логическими уровнями.
Документация:
|
|
77 Kb Engl Исходный файл |
|