МИР ПЕРИФЕРИЙНЫХ УСТРОЙСТВ ПК

технический журнал для специалистов сервисных служб

  • Увеличить размер шрифта
  • Размер шрифта по умолчанию
  • Уменьшить размер шрифта

Интерфейс 1-Wire и его использование в чипах для идентификации картриджей печатающих устройств


 

Сейчас уже трудно найти принтер или копировальный аппарат, в котором использовался бы картридж без чипа. Чипование картриджей приняло поистине массовый характер, и это в значительной степени усложняет жизнь сервисных служб, ведь теперь каждая новая модель принтера или копира требует к себе особого подхода при заправке. Каждая заправка картриджа должна сопровождаться заменой чипа, или его программированием. Но так как замена чипов для большинства пользователей кажется слишком дорогим удовольствием, то значительная часть сервисных служб вынуждена выбирать путь программирования чипов. А это требует вполне определенных знаний и навыков.

Для доступа к чипам, размещенным на картриджах печатающих устройств, в настоящее время используется несколько типов интерфейсов. Применение того или иного интерфейса обусловлено, в первую очередь, предпочтениями фирмы-производителя, но, кроме того, здесь учитываются: и требования к скорости передачи данных, и требования к устойчивости информации и сложности доступа к ней, и требования к простоте сопряжения чипа с контактной площадкой, и требования к количеству соединительных проводников. К наиболее используемым на текущий момент времени, можно отнести следующие типы интерфейсов:

- I2C Bus

- SPI

- 1-Wire Bus

- RFID

В некоторых популярных публикациях встречается упоминание симметричной линии, которая применяется для передачи данных от чипов, размещенных на картриджах некоторых принтеров Hewlett Packard. Редакция не располагает достоверной информацией о том, какой именно тип микросхем памяти используется в картриджах HP и каким образом информация из этой памяти передается на принтер. Поэтому обсуждение данного вопроса мы отложим до получения более конкретных данных, хотя, судя по количеству контактов на чипах большинства принтеров HP, логично предположить, что в них используется интерфейс 1-Wire, который и является темой данного обзора.

Одним из наиболее используемых интерфейсов является I2C. Картриджные чипы, основой которых являются микросхемы EEPROM интерфейса I2C, могут выглядеть совершенно по-разному (рис.1).

Рис.1

Чипы на базе интерфейса I2C можно встретить в изделиях практически любого производителя. Так, например, чипы данного типа широко используют Lexmark, Minolta, Epson. Кроме того, на их основе реализованы чипы для принтеров Hewlett Packard Busines InkJet. Мы уже не говорим о давних традициях применения I2C фирмой Xerox, разработавшей микросхемы Xerox01 и Xerox90, в основе которых лежит технология I2C. Микросхемы Xerox01 и Xerox90 (или их аналоги), в частности используются в таких аппаратах, как:

Sharp AR-163

Sharp AR-5012

Xerox DC-220

Sharp AR-275

Sharp AR-5015

Fujitsu 6600

Xerox DocuPrint 4525

Xerox WorkCentre Pro 315/320

Xerox DC420

Xerox 6100

Epson LP-9600

Epson EPL N-4000

Xerox DC-265 (в блоке фиксации)

Sharp AR-255

Sharp AR-5316/5320

Xerox DC-555

Xerox 535

Minolta QMS-4032

Sharp AR-162

Lexmark-812

Sharp AR-1818

Genicom mL-450

Xerox WC45 (для фотобарабана и блока фиксации)

Вторым типом интерфейса, широко используемым для чипования картриджей, является однопроводный интерфейс, обозначаемый как 1-Ware. Этот интерфейс можно встретить в таких популярных моделях копировальных аппаратов и принтеров, как Xerox 5915, Xerox 5921, Xerox WC 415/420, а также в некоторых моделях принтеров Lexmark, Minolta, Epson. Чипы с интерфейсом 1-Wire также могут выглядеть по-разному, но количество контактов в них меньше, чем в чипах на базе I2C. Разработчиками и основными производителями аппаратуры, базирующейся на интерфейсе 1-Wire, являются такие лидеры электронной промышленности, как Dallas Semiconductor и Maxim.

Однопроводный интерфейс очень удобен тем, что имеет минимум контактов и соединительных линий, что в значительной степени упрощает сопряжение чипа, находящегося на картридже с контактными площадками на принтере или на копировальном аппарате.

Интерфейс 1-Ware разрабатывался, в первую очередь, как средство идентификации и, во-вторых, как средство простой и дешевой коммуникации с различными портативными и мобильными устройствами, преимущественно мультимедийными и MP3-устройствами. Нас, конечно же, будет интересовать применение интерфейса именно для идентификации, т.е. для передачи информации в память (или из памяти), находящейся на картридже принтера или копировального аппарата.

Dallas Semiconductor предлагает целый ряд различных устройств, ориентированных на работу с интерфейсом 1-Wire, и среди них:

- EEPROM и NVRAM;

- статическая оперативная память (SRAM);

- ПЗУ (ROM);

- электронные ключи;

- датчики температуры и температурные ключи;

- аналого-цифровые преобразователи;

- таймеры и счетчики реального времени.

Общие сведения

Для передачи данных в интерфейсе 1-Wire используется всего две линии. Одна из них является общим проводом, а вторая – линией передачи данных. По этой единственной линии может осуществляться двунаправленная передача данных, т.е. обеспечивается и запись, и чтение данных. А, кроме того, эта линия данных используется и для питания микросхем с интерфейсом 1-Wire. В состоянии покоя на линии данных устанавливается высокий уровень, соответствующий напряжению питания чипа. А в момент передачи данных на этой линии формируются импульсы, сглаживанием которых можно также получать необходимое питающее напряжение. Для такого сглаживания импульсных сигналов, в составе микросхем имеются диод и фильтрующий конденсатор, представляющие собой цепь питания микросхем.

Каждая микросхема, выпускаемая для однопроводного интерфейса, имеет внутренний 64-битный идентификатор, который является уникальным для каждой микросхемы.

Общая внутренняя структура устройства с интерфейсом 1-Wire представлена на рис.2.

Рис.2

Так как для идентификации картриджа, на чипе размещается микросхема памяти, и чаще всего это EEPROM (электрически перепрограммируемое ПЗУ), то именно на этом примере мы и станем обсуждать интерфейс 1-Wire.

Одной из самых часто используемых для чипования картриджей микросхем памяти является DS2431, которую можно считать классическим вариантом памяти для интерфейса 1-Wire. Эта микросхема представляет собой EEPROM емкостью 1024 бит, с полнофункциональной поддержкой интерфейса 1-Wire . Кроме 1024 байт памяти микросхема поддерживает еще 16 байтов, образующих сбой группу регистров управления, пользовательских и идентификационных регистров. В составе микросхемы имеется сверхоперативная память емкостью 64 бит, представляющая собой кэш, ускоряющий процесс доступа к ячейкам EEPROM. Микросхема DS2431 может выпускаться в различных типах корпусов, таких кА TO-92, TSOC-6 и CSP-6 (рис.3).

Рис.3

Блок-схема EEPROM DS2431 представлена на рис.4.

Рис.4

К четырем основным элементам микросхемы DS2431 относятся:

- 64-разрядное "прожигаемое" ПЗУ;

- 64-разрядная сверхоперативная память (кэш);

- четыре 32-байтные страницы памяти;

- 64-разрядная страница регистров.

Особенности архитектуры

1) "Прожигаемое" ПЗУ (Lasered ROM) предназначено для хранения уникального идентификатора микросхемы. Этот идентификационный код состоит из 64 разрядов, и его структура графически представлена на рис.5. Первые (младшие) 8 разрядов определяют код устройства, т.е. указывают, к какому типу оно относится (ROM, EEPROM, SRAM, ключ, датчик и т.п.). Следующие 48 разрядов являются уникальным серийным номером микросхемы. Следующие 8 разрядов являются CRC-кодом предыдущих 56 бит. Этот CRC-код вычисляется в соответствии полиномом X8+X5+X4+1. Применение CRC-кода гарантирует целостность идентификатора микросхемы.

Рис.5

2) Память для хранения данных и внутренние регистры микросхемы размещаются в едином линейном адресном пространстве, распределение которого представлено в таблице 1. Все адресное пространство не имеет ограничений для операций чтения. Все ячейки памяти образуют матрицу, состоящую из 18 строк по 8 байт в каждой. Первые 16 строк делятся на 4 равные страницы памяти (по 4 строки на странице). Таким образом, объем страницы равен 32 байта. Именно эта память и является областью данных. Каждая из четырех страниц может быть защищена от записи, независимо от остальных страниц.

Таблица 1.

Адреса

Тип

Описание

0000h – 001Fh 

R/(W)

Страница памяти 0

0020h – 003Fh 

R/(W)

Страница памяти 1

0040h – 005Fh 

R/(W)

Страница памяти 2

0060h – 007Fh

R/(W)

Страница памяти 3

0080h

R/(W)

Регистр  защиты для страницы памяти 0

0081h

R/(W)

Регистр  защиты для страницы памяти 1

0082h

R/(W)

Регистр  защиты для страницы памяти 2

0083h

R/(W)

Регистр  защиты для страницы памяти 3

0084h

R/(W)

Регистр защиты копирования

0085h

R

Регистр производителя

0086h

R/(W)

Регистр пользователя/ID производителя

0087h

R/(W)

Регистр пользователя/ID производителя

0088h – 008Fh

NA

Резерв

Примечание:

В поле "тип": R – означает возможность чтения

Wозначает возможность записи

3) Управляющие регистры и резервная область занимают последние две строки адресного пространства (16 байтов). Управляющие регистры позволяют защищать страницы памяти от записи и выполнять другие функции.

Два "пользовательских" регистра (User byte/Manufacturer ID) предназначены для того, чтобы в них можно было записать идентификатор заказчика. Таким образом, заказчик, приобретающий чипы DS2431, может "прошить" в них свой уникальный идентификатор, который можно будет декодировать с помощью прикладных программ.

8 байтов последней строки памяти зарезервированы для будущих применений.

4) Сверхоперативная память, добавленная в состав микросхемы DS2431, имеет объем 8 байт. Запись в EEPROM осуществляется в два этапа. Во-первых, данные сначала записываются в сверхоперативную память. В нее записывается одна строка, длиной в 8 байт. Только после этого строка данных копируется из сверхоперативной памяти в основную память. Такая запись с промежуточным сохранением данных в оперативной памяти, позволяет провести проверку корректности записываемых данных прежде, чем они будут переписаны в основную память. Контроль корректности данных осуществляется с помощью генератора CRC (циклического избыточного кода).

5) Генератор СRC осуществляет быстрый контроль данных, записанных в сверхоперативную память. Контроль может осуществляться как при чтении, так и при записи данных. CRC вычисляется в соответствии с полиномом: X16+X15+X2+1. CRС, вычисленный генератором микросхемы DS2431 анализируется устройством MASTER. Если MASTER определяет, что в данных имеется ошибка, то процедура записи или чтения может быть выполнена повторно. Код CRC 16-бит, сформированный генератором не надо путать с CRC, хранящимся в 64-разрядном идентификационном коде.

Управление микросхемой EEPROM осуществляется с помощью команд, которые формируются устройством MASTER.

Для управления и для доступа к ПЗУ микросхемы DS2431 используется семь команд. Этими командами являются:

- Read ROM (чтение ПЗУ – чтение 64 идентификационного кода);

- Match ROM (сравнение ПЗУ – устройство MASTER указывает идентификационный код того устройства, которое должно "откликнуться" на запрос);

- Search ROM (поиск идентификатора);

- Skip ROM (игнорирование ПЗУ – пропускает передачу идентификационного кода);

- Resume (повтор);

- Overdrive Skip ROM (игнорирование ПЗУ при работе на повышенной скорости передачи данных);

- Overdrive Match ROM (сравнение ПЗУ при работе на повышенной скорости передачи данных).

Для работы с памятью используются следующие команды:

- Write Scratchpad (запись в сверхоперативную память);

- Read Scratchpad (чтение сверхоперативной памяти);

- Copy Scratchpad (копирование из сверхоперативной памяти в основную память);

- Read Memory (чтение основной памяти).

Процедура доступа к данным из основной памяти микросхемы EEPROM состоит из следующих последовательных этапов:

1) Инициализация шины.

2) Выполнение команд доступа к ПЗУ для считывания идентификационного кода.

3) Передача команд доступа к памяти.

4) Передача данных.

Аппаратная часть интерфейса

Шина 1-Wire допускает многоточечное (multidrop) подключение различных устройств (рис.6), хотя при чиповании картриджей, конечно же, используется одноточечное соединение.

Рис.6

Аппаратная часть интерфейса 1-Wire представлена на рис.7.

Рис.7

Каждое устройство, подключенное к шине должно иметь выход с открытым коллектором, или выход с тремя состояниями. В неактивном состоянии на шине устанавливается высокий уровень. Смещение на шине создается подтягивающим резистором, номинал которого зависит от выбранной скорости обмена данными и от количества устройств на шине. Для микросхемы DS2431 величина сопротивления подтягивающего резистора должна быть максимум 2.2 кОм при любой скорости.

Сигналы интерфейса 1-Wire

Для обмена данными с памятью используется безопасный протокол передачи, гарантирующий целостность передаваемых данных. Такой протокол передачи данных на шине 1-Wire включает в себя четыре типа операций:

- инициализация (Initialization или Reset Sequence);

- запись нуля (Write-Zero);

- запись единицы (Write-One);

- чтение данных (Read-Data).

При описании операций шины вводятся понятия MASTER и SLAVE. MASTER – это ведущее устройство, которое активизирует различные операции на шине, осуществляет чтение и запись данных, управляет процессом передачи и задает скорость потока данных. Чаще всего Master'ом является микроконтроллер или микропроцессор, расположенный на управляющей плате принтера. SLAVE – это ведомое устройство, предназначенное для выполнения какой-либо функции. В примере чипования картриджа, устройством SLAVE является микросхема памяти EEPROM, размещенная на картридже. Все операции на шине 1-Wire инициируются устройством MASTER, за исключением импульса Presence, который генерируется микросхемой EEPROM во время операции инициализации.

Большинство микросхем памяти, разработанных для интерфейса 1-Wire, поддерживают две разных скорости передачи данных:

- стандартная скорость (Standard Speed или Regular Speed) – 15.4 Кбит/с;

- повышенная скорость (Overdrive Speed) – 111 Кбит/с.

Некоторые устройства могут поддерживать и несколько более высокие скорости передачи данных:

- для стандартной скорости – до 16.3 Кбит/с;

- для повышенной скорости- до 142 Кбит/с.

Если устройства не могут установить повышенную скорость обмена данными, то тогда осуществляется обмен на стандартной скорости.

В состоянии покоя, на линии интерфейса установлено напряжение высокого уровня (VPUP) Величина этого напряжения может достигать значения 6В. Шина переходит из стояния покоя в активное состояние, когда напряжение на ней опускается с уровня VPUP до уровня VTL за время tF.

Шина переходит из активного состояния в неактивное, когда напряжение на ней увеличивается с уровня VIL до уровня VTH за время tR. При этом время нарастания напряжения (tR) зависит от величины сопротивления резистора RPUP и емкости нагрузки на шине 1-Wire. На рис.8 показаны основные уровни напряжений шины 1-Wire, и их взаимное расположение.

Рис.8

Величины этих напряжений представлены в табл.2.

Таблица 2.

Параметр

Описание

Значение

мин

макс

VIHMASTER

Напряжение высокого уровня MASTER'а

не определено

VTH

Напряжение перехода с низкого уровня на высокий

1.0В

4.9 В

VTL

Напряжение перехода с высокого уровня на низкий

0.46В

4.4 В

VIL

Напряжение низкого уровня входа

-

0.3В

Инициализация

Процедура инициализации шины 1-Wire должна проходить каждый раз перед началом обмена данными между MASTER и SLAVE. Процесс инициализации состоит из двух последовательных этапов:

1. Формирование импульса RESET (импульс сброса);

2. Формирование импульса PRESENCE (импульс присутствия).

Импульс RESET генерируется устройством MASTER и сообщает устройству SLAVE о начале цикла обмена данными. Кроме того, импульс RESET своей длительностью задает скорость обмена данными. Если длительность импульса RESET составляет 480 мкс или больше, устройство переводится в режим стандартной скорости. Если же длительность сигнала RESET составляет менее 80 мкс, то обмен данными будет осуществляться на повышенной скорости (Overdrive Mode). Для формирования импульса RESET устройство MASTER переводит шину в низкий уровень на время tRSTL.

Импульс PRESENCE генерируется устройством SLAVE (в нашем случае микросхемой EEPROM) и следует сразу же за импульсом RESET. Импульсом PRESENCE устройство SLAVE подтверждает свою готовность к приему данных, подтверждает корректность идентификационного кода и возможность приема команд управления памятью.

После окончания импульса RESET, устройство MASTER освобождает шину и переходит в режим приема. Уровень напряжения на шине начинает возрастать, стремясь достигнуть величины VPUP. Это обеспечивается резистором RPUP. После того, как напряжение на шине достигнет величины VTH, устройство SLAVE начинает отсчет времени, и через период tPDH формирует импульс PRESENCE. Для генерации импульса PRESENCE устройство SLAVE переводит шину в низкий уровень на время tPDL. В свою очередь, устройство MASTER опрашивает состояние шины через период tMSP. И если в момент опроса шины MASTER'ом она установлена в низкий уровень, то это и будет означать, что устройство SLAVE "откликнулось" на импульс RESET и готово к обмену данными.

После окончания импульса PRESENCE шина возвращается в высокий уровень. Период времени, отводимый на формирование импульса PRESENCE и на последующий возврат к высокому уровню на шине, обозначается как tRSTH. Только после окончание периода tRSTH, микросхема EEPROM - DS2431, будет готова к обмену данными с устройством MASTER.

Временная диаграмма формирования импульсов RESET и PRESENCE представлена на рис.9.

Рис.9

Чтение и запись данных

Процедура записи подразумевает передачу данных от устройства MASTER к устройству SLAVE. Процедура чтения подразумевает передачу данных от устройства SLAVE к устройству MASTER. Все циклы доступа к EEPROM, как на чтение, так и на запись, начинаются с того, что устройство MASTER переводит шину в низкий уровень, т.е. напряжение на шине становится ниже уровня VTL. В этот момент времени запускается внутренний таймер микросхемы DS2431, с помощью которого определяется временной интервал, соответствующий либо записи нуля, либо записи единицы, либо процедуре чтения.

Процесс записи "1" выглядит следующим образом. MASTER "сбрасывает" шину в низкий уровень (ниже уровня VTL) на короткий период времени, а затем освобождает ее. Далее за счет резистора RPUP напряжение на шине начинает расти и достигает значения VTH. За счет внутреннего таймера микросхема DS2431 определяет время, прошедшее с момента, когда напряжение шины стало ниже значения VTL, до момента, когда напряжение стало выше значения VTH. Если это время не превышает значения tW1L (см. рис.10), то устройство SLAVE "считает", что была записана "1". Общая длительность процедуры записи"1" соответствует периоду времени tSLOT.

Рис.10

Процесс записи "0" выгладит практически также. Исключением является только длительность периода между моментами пересечения уровней VTL и VTH. Период времени, обозначенный, как tW0L, имеет значительно большую длительность (см. рис.11), но в то же самое время. общая длительность процедуры записи"0" соответствует периоду времени tSLOT. При рассмотрении периода tSLOT, стоит обратить внимание на то, что в его составе имеется отрезок времени, обозначенный, как tREC (время восстановления шины 1-Wire). Следующий цикл записи или чтения может быть осуществлен только после того, как шина 1-Wire восстановится после записи "0".

Рис.11

Процедура чтения

Процедура чтения начинается так же, как и процедура записи "1". Если MASTER осуществляет чтение из EEPROM, то он "сбрасывает" шину 1-Wire в низкий уровень, т.е. устанавливает на ней напряжение меньшее, чем VTL. Этот низкий уровень шины должен длиться не меньше чем период времени tRL. Именно это и будет означать, что MASTER осуществляет чтение из устройства SLAVE.

Если EEPROM в цикле чтения должно выдать "0", то микросхема DS2431 начинает удерживать шину в низком уровне и одновременно запускает свой внутренний таймер. После того, как таймером будет отсчитан соответствующий период времени, больший, чем tMSR, микросхема DS2431 освобождает шину.

Если же EEPROM в цикле чтения должно выдать "1", то микросхемой DS2431 шина не удерживается в низком уровне, и после окончания периода tRL напряжение на шине начинает нарастать за счет резистора RPUP. В результате, к моменту опроса шины устройством MASTER (через период времени tMSR), на ней устанавливается высокий уровень, соответствующий "1".

После того, как чтение из EEPROM будет завершено, MASTER ожидает окончания цикла, чтобы начать следующую операцию. Общая длительность цикла чтения, составляет период tSLOT. Временная диаграмма цикла чтения представлена на рис.12. На временной диаграмме необходимо обратить внимание на то, что период нарастания напряжения обозначен, как , а не как tR. Дело в том, что время нарастания в цикле чтения измеряется не до уровня VTH, а до уровня VIHMASTER. Поэтому длительность  несколько больше, чем tR.

Рис.12

Значения временных интервалов, представленных на всех диаграммах, приводятся в табл.3.

Таблица 3.

Параметр

Standard Speed, мкс 

Overdrive Speed, мкс 

min

max

min

max

tSLOT

65

-

9

-

tRSTL

540

640

53

80

tPDH

15

63

2

7

tPDL

60

240

8

26

tMSP

70

75

8.1

10

tW0L

60

120

7

16

tW1L

5

15-tR 

1

2-tR 

tRL

5

15-d

1

2-d

tMSR

tRL+d

15

tRL+d

2

tREC

5

-

2

-

Основные электрические характеристики микросхемы DS2431 представлены в табл.4.

Таблица 4.

Параметр

Значение

Напряжение на линии I/O

от -0.5В до +6В

Максимальный ток линии I/O

20 мА

Входная емкость

от 100 до 800 пФ

Ток программирования

1 мА

Время программирования

12.5 мс

Количество циклов чтения/записи

200.000

Период хранения данных

10 лет

Кроме микросхемы DS2431, достаточно широкое применение получила еще такая микросхема EEPROM, как DS2432. Основным отличием микросхемы DS2432 от рассмотренной в данном обзоре DS2431, является использование технологии SHA-1 (Secure Hash Algorithm), которая позволяет кодировать данные при записи и чтении, что значительно повышает секретность данных, хранящихся в EEPROM. Об этой технологии мы расскажем в следующих наших публикациях. Чипы с DS2432 используются в следующих аппаратах:

Konica-Minolta PagePro 1300W/1350/1380/1400

Konica-Minolta MC2400W

Xerox Phaser 6120

Konica Minolta bizhub C250

Konica Minolta bizhub C350

EPSON EPL-6200

Кроме шины 1-Wire, Dallas Semiconductor предлагает и, так называемую, шину UniqueWare, которая практически полностью напоминает шину 1-Wire, но используется, в основном, для микросхем ПЗУ и микросхем EPROM (электрически программируемых ПЗУ). Наиболее известной микросхемой EPROM, разработанной для шины UniqueWare, является DS2502UNW, которая нашла свое применение в таких аппаратах, как Xerox WCP 415/420, Xerox 5915, Vivace 186/256/346 и др.

  https://justmedia.ru/news/russiaandworld/smsrassylki-avtomaticheskiy-format

Профессиональная инфракрасная паяльная станция

Диагностика, поиск неисправностей и ремонт в современных системных платах.
www.xprt.ru

Яндекс.Метрика
Рейтинг@Mail.ru Яндекс цитирования