Изобретение относится к смарт-картам, в частности к операционной системе смарт-карты и способу ее работы.
С постоянным развитием технологии смарт-карт существует надежда, что смарт-карта будет способна охватывать еще более широкие и гибкие функции. Например, SIM-карта имеет не только традиционную функцию идентификации абонента, но и функции платежной карты, карты доступа, карты синхронизации и так далее, т.е. действительно многофункциональной карты. Однако операционная система традиционной смарт-карты поддерживает только одномодовый контактный режим связи или одномодовый бесконтактный режим связи, что сильно снижает гибкость использования смарт-карты.
В настоящее время уже разработан один вид операционной системы смарт-карты, поддерживающей два интерфейса (контактный и бесконтактный). Однако, когда эта операционная система смарт-карты находится в бесконтактном поле бесконтактного терминального устройства, напряжение будет появляться за счет соединения ее антенны, и система примет одномодовый бесконтактный режим связи для осуществления только бесконтактной связи, т.к. питание подается бесконтактным терминальным устройством; а когда на эту операционную систему смарт-карты подается питание от контактного источника питания, а именно путем соединения с аппаратным средством источника питания, обеспеченным контактным терминальным устройством, то система примет одномодовый контактный режим связи для осуществления только контактной связи. Другими словами, существует очень большие ограничения, т.к. система может поддерживать только один режим связи в соответствии со способом подачи питания.
Целью настоящего изобретения является разработка операционной системы смарт-карты и способа ее работы для решения существующих проблем традиционной операционной системы смарт-карты, заключающихся в невозможности одновременного поддержания контактной и бесконтактной связи.
Для решения вышеуказанной технической задачи предлагается операционная система смарт-карты, включающая модуль контактной связи, модуль бесконтактной связи и модуль обработки команд, которая дополнительно включает модуль выбора операционного режима, соединенный с модулем обработки команд.
Модуль выбора операционного режима определяет первый или второй операционный режим в соответствии со способом подачи питания системы и сообщает об этом модулю обработки команд.
Модуль обработки команд отдельно обрабатывает бесконтактные команды, полученные модулем бесконтактной связи, в первом операционном режиме или одновременно обрабатывает контактные команды, полученные модулем контактной связи, и бесконтактные команды, полученные модулем бесконтактной связи, во втором операционном режиме.
Дополнительно система может включать модуль управления источником питания, соединенный с модулем выбора операционного режима, причем модуль управления источником питания обнаруживает доступные источники питания, отдавая предпочтение контактному источнику питания, в случае его обнаружения, для подачи напряжения на систему, а затем сообщает модулю выбора операционного режима определенный способ подачи питания на систему.
Дополнительно система также может включать модуль управления синхронизацией, который соединен с модулем обработки команд, при этом модуль управления синхронизацией обнаруживает доступные источники синхронизации, отдавая предпочтение источнику синхронизации в соответствии с предварительно заданным уровнем приоритета для обеспечения синхронизации для модуля обработки команд.
Дополнительно система также может включать модуль инициализации, при этом модуль инициализации включает подмодуль общей инициализации, подмодуль инициализации первого операционного режима и подмодуль инициализации второго операционного режима, причем подмодуль общей инициализации используется для инициализации регистров общего назначения и глобальных переменных; подмодуль инициализации первого операционного режима используется для инициализации модуля бесконтактной связи и модуля обработки команд на базе первого операционного режима; подмодуль инициализации второго операционного режима используется для инициализации модуля бесконтактной связи, модуля контактной связи и модуля обработки команд на базе второго операционного режима.
Модуль обработки команд может дополнительно включать подмодуль переключения контекста и первый подмодуль памяти, причем первый подмодуль памяти используется для раздельного хранения контекста контактного канала и контекста бесконтактного канала; подмодуль переключения контекста используется для выбора контекста соответствующего канала, сохраненного в первом подмодуле памяти, в соответствии с каналом, где расположены команды, подлежащие обработке.
Модуль обработки команд может дополнительно включать подмодуль запросов для параллельного запроса, действительно ли модуль контактной связи получил контактную команду и действительно ли модуль бесконтактной связи получил бесконтактную команду.
Модуль контактной связи может дополнительно включать подмодуль получения контактной связи, подмодуль отправки контактной связи и подмодуль памяти контактной связи, причем подмодуль памяти контактной связи используется для хранения идентификатора получения контактной связи; подмодуль получения контактной связи используется для получения контактной команды и установки идентификатора получения контактной связи; подмодуль отправки контактной связи используется для отправки ответа на контактную команду и сброса идентификатора получения контактной связи.
Модуль бесконтактной связи может дополнительно включать подмодуль получения бесконтактной связи, подмодуль отправки бесконтактной связи и подмодуль памяти бесконтактной связи, причем подмодуль памяти бесконтактной связи используется для хранения идентификатора получения бесконтактной связи; подмодуль получения бесконтактной связи используется для получения бесконтактной команды и установки идентификатора получения бесконтактной связи; подмодуль отправки бесконтактной связи используется для отправки ответа на бесконтактную команду и сброса идентификатора получения бесконтактной связи.
Модуль обработки команд может дополнительно включать подмодуль управления ждущего режима для управления операционной системой смарт-карты, находящейся в неактивном состоянии или переведенной в неактивное состояние на заданное время, и для запуска системы на базе прерывания, сгенерированного модулем контактной связи или модулем бесконтактной связи после получения команды.
Также предлагается способ работы смарт-карты, включающий оценку способа подачи питания на систему, когда на систему подают питание, и выбор первого операционного режима, если напряжение подается от бесконтактного источника питания, или выбор второго операционного режима, если напряжение подается от контактного источника питания; и отдельную обработку полученной бесконтактной команды в первом операционном режиме или параллельную обработку полученных контактной и бесконтактной команд во втором операционном режиме.
Дополнительно, контактный источник питания может быть предпочтен для работы в качестве источника питания системы, если в одно и то же время имеются как бесконтактный, так и контактный источники питания.
Дополнительно, предварительно можно устанавливать уровни приоритета источника синхронизирующих импульсов, а доступный источник синхронизирующих импульсов для системы выбирают на базе этих приоритетов, когда на систему подают питание или когда текущий источник синхронизирующих импульсов пропадает, и источники питания существуют, чтобы обеспечить синхронизацию системы.
Дополнительно, во втором операционном режиме и до того, как обрабатывать контактную команду или бесконтактную команду, в первую очередь можно оценивать, действительно ли канал, в котором должна быть обработана команда, является идентичным с тем каналом, который поддерживается контекстом текущего канала, и если нет, то команду обрабатывают после переключения контекста канала, в противном случае команду обрабатывают непосредственно.
Дополнительно, во втором операционном режиме выполняют параллельный запрос, действительно ли получена контактная и бесконтактная команды, и обрабатывают обнаруженные контактную и бесконтактную команды.
Дополнительно, во втором операционном режиме могут быть осуществлены следующие действия: задают идентификатор контактной команды или идентификатор бесконтактной команды, если получена контактная команда или бесконтактная команда; сбрасывают идентификатор контактной команды или идентификатор бесконтактной команды, если отправлен ответ на контактную команду или бесконтактную команду; выполняют параллельно запрос идентификатора контактной команды и идентификатора бесконтактной команды, чтобы определить, действительно ли контактная и бесконтактная команды получены, затем обрабатывают контактную или бесконтактную команду и отправляют соответствующий ответ.
Дополнительно, систему можно перевести в ждущий режим для неактивного состояния или неактивного состояния на заданное время и систему запускают после получения команды.
Настоящее изобретение имеет следующие преимущества.
При применении технического решения по настоящему изобретению операционная система смарт-карты может выбирать одномодовый бесконтактный операционный режим или смешанный операционный режим на базе выбранного способа подачи питания. В одномодовом бесконтактном операционном режиме система обрабатывает полученные бесконтактные команды, в смешанном операционном режиме система может одновременно поддерживать как контактные, так и бесконтактные операции связи и сохранять эти два способа связи с корректной обработкой вне зависимости один от другого, за счет чего гибкость использования смарт-карты существенно улучшается.
Изобретение поясняется чертежами.
Фиг.1 - блок-схема операционной системы смарт-карты по примеру осуществления настоящего изобретения.
Фиг.2 - блок-схема модуля инициализации по примеру осуществления настоящего изобретения, в исполнительном примере этого изобретения.
Фиг.3 - блок-схема модуля обработки команд по примеру осуществления настоящего изобретения, в исполнительном примере этого изобретения.
Фиг.4 - блок-схема алгоритма одномодового бесконтактного режима работы по примеру осуществления настоящего изобретения.
Фиг.5 - блок-схема модуля контактной связи по примеру осуществления настоящего изобретения, в исполнительном примере этого изобретения.
Фиг.6 - блок-схема модуля бесконтактной связи по примеру осуществления настоящего изобретения.
Фиг.7 - блок-схема алгоритма обработки команды в модуле обработки команд в смешанном операционном режиме по примеру осуществления настоящего изобретения.
Ниже настоящее изобретение поясняется более подробно со ссылками на чертежи и примеры.
Операционная система смарт-карты по настоящему изобретению определяет два операционных режима: одномодовый бесконтактный операционный режим или контактный и бесконтактный смешанный операционный режим (далее - смешанный операционный режим). Когда питание подается от бесконтактного источника питания с бесконтактного терминального устройства, система примет одномодовый бесконтактный операционный режим для осуществления бесконтактной связи, но когда питание подается от контактного источника питания посредством контактного терминального устройства, система примет смешанный операционный режим, в котором одновременно поддерживается контактная и бесконтактная связь.
Как показано на фиг.1, операционная система смарт-карты включает модуль управления источником питания 102, модуль управления синхронизацией 103, модуль внутренней синхронизации 105, модуль контактной связи 106, модуль бесконтактной связи 107 и модуль управления 109, где модуль управления 109 в свою очередь включает модуль инициализации 101, модуль выбора операционного режима 104 и модуль обработки команд 108. Модуль инициализации 101, как показано на фиг.2, в свою очередь включает подмодуль общей инициализации 1011, подмодуль инициализации смешанного операционного режима 1012 и подмодуль инициализации одномодового бесконтактного операционного режима 1013. Модуль обработки команд 108, как показано на фиг.3, в свою очередь включает подмодуль запросов 1081, подмодуль переключения контекста 1082, подмодуль памяти обработки команд 1083, подмодуль обработки контактных команд 1084, подмодуль обработки бесконтактных команд 1085 и подмодуль управления ждущего режима 1086.
Согласно настоящему осуществлению модуль бесконтактной связи 107 соответствует стандарту ISO 14443-3/4 и поддерживает протоколы типа А и типа В, а модуль контактной связи 106 соответствует стандарту ISO 7816-3/4 и поддерживает протоколы Т=0/Т=1.
В настоящем осуществлении соответственно используемые контактные связи и бесконтактной связи являются независимыми. Это сделано потому, что контактные данные и бесконтактные данные могут поступать одновременно во время контактной и бесконтактной связи, и, таким образом, может быть обеспечено, что все данные корректно получены, если контактная и бесконтактная связь соответственно используют независимые каналы. Канал контактных данных приспособлен под вывод С7 стандарта 7816, а канал бесконтактных данных приспособлен под неиспользуемые выводы С4 и С8 стандарта 7816. Эта конструкция гарантирует соответствие действующим стандартам.
После подачи питания на операционную систему смарт-карты происходит следующее.
Подмодуль общей инициализации 1011 производит инициализацию общих регистров системы и глобальных переменных.
Поскольку общая инициализация является обычным действием, необходимым для нормальной работы операционной системы смарт-карты, то она будет описана в подробностях. В частности, по настоящему осуществлению в течение инициализации выполняется следующее:
- контактный источник питания соотносится для работы как источник питания для инициализации модуля управления источником питания 102;
- назначение приоритетов источников синхронизации во время инициализации модуля управления синхронизацией 103 в следующем порядке - первым является контактный внешний источник синхронизации, затем идет бесконтактный внешний источник синхронизации и последним является внутренний источник синхронизации;
- производится инициализация модуля выбора операционного режима 104;
- инициализируется контекст контактного канала в модуле обработки команд 108;
- инициализируется контекст бесконтактного канала в модуле обработки команд 108;
- контекст текущего канала в модуле обработки команд 108 устанавливается как контекст контактного канала;
- идентификатор канала в модуле обработки команд 108, который используется для идентификации текущего действующего канала, устанавливается как контактный канал;
- идентификатор контактной команды в модуле контактной связи 106 устанавливается как «0», в котором указанный идентификатор контактной команды используется для идентификации того, действительно ли получена контактная команда, инициализация идентификатора контактной команды как «0» обозначает, что контактная команда не получена;
- идентификатор бесконтактной команды в модуле бесконтактной связи 107 устанавливается как «0», в котором указанный идентификатор бесконтактной команды используется для идентификации того, действительно ли получена бесконтактная команда, инициализация идентификатора бесконтактной команды как «0» обозначает, что бесконтактная команда не получена.
После инициализации операционной системы смарт-карты осуществляются следующие действия.
А1. Модуль управления синхронизацией 103 определяет источник синхронизации в соответствии с заданными приоритетами источников синхронизации и выборочно выводит доступный источник синхронизации для модуля управления.
Источники синхронизации могут подразделяться в зависимости от ввода на внешние источники синхронизации и внутренние источники синхронизации. Здесь, в свою очередь, внешние источники синхронизации подразделяются на контактные внешние источники синхронизации и бесконтактные внешние источники синхронизации, которые обеспечиваются соответственно контактными терминальными устройствами и бесконтактными терминальными устройствами; а внутренние источники синхронизации обеспечиваются модулем внутренней синхронизации 105 в самой операционной системе смарт-карты. Здесь может и не существовать внешних источников синхронизации, но всегда имеются внутренние источники синхронизации, за исключением того, когда система находится в ждущем режиме.
Функцией модуля управления синхронизацией 103 является выбор, в соответствии с заданными приоритетами источников синхронизации, текущего существующего источника синхронизации из внешних источников синхронизации (здесь могут только существовать контактные внешние синхронизаторы или бесконтактные внешние синхронизаторы или и те и другие в одно и то же время) и внутренних источников синхронизации для обеспечения синхронизации работы модуля управления 109.
Когда на систему подается питание или когда источники питания существуют, в то время как текущий рабочий синхронизатор модуля управления 109 внезапно исчезает, модуль управления синхронизацией 103 определяет и затем выбирает доступный источник синхронизации для модуля управления 109 в соответствии с заданными приоритетами источников синхронизации.
Вышеуказанные заданные приоритеты могут соответственно регулироваться в случае необходимости. Приоритеты в настоящем осуществлении определяются так, что наиболее стабильный контактный внешний источник синхронизации предпочитается для использования в качестве операционного источника синхронизации для системы, когда имеется контактный внешний источник синхронизации. Что касается внутреннего источника синхронизации, то он всегда существует, когда система не находится в ждущем режиме, и это является удобным с некоторой точки зрения, и поскольку его использование требует повышенных затрат энергии, подаваемой на операционную систему смарт-карты, то его приоритет задается на самом низком уровне.
А2. Модуль управления источником питания 102 обнаруживает способ подачи питания системы и непосредственно уведомляет модуль выбора операционного режима 104 о способе подачи питания, когда существует только обособленный бесконтактный источник питания или обособленный контактный источник питания системы. Если бесконтактный и контактный источники питания существуют одновременно, один из них будет выбран системой в соответствии с предварительно заданными приоритетами, а о выбранном способе подачи питания будет уведомлен модуль выбора операционного режима 104.
Когда бесконтактный и контактный источники питания существуют одновременно, модуль управления источником питания 102 будет выбирать один из них для системы. Это может предотвратить микросхему от отклонений от нормальной работы (например, от перезагрузки) в результате одновременной подачи питания к системе от двух источников питания.
С точки зрения того, что контактный источник питания имеет относительно удовлетворительную и стабильную подачу питания, а система с контактным источником питания может работать параллельно с контактными и бесконтактными командами, когда модуль выбора операционного режима 104 выбирает смешанный операционный режим, то контактный источник питания предпочтителен по настоящему осуществлению. Когда система работает в одномодовом бесконтактном операционном режиме, модуль управления источником питания 102 выберет для системы контактный источник питания и уведомит модуль выбора операционного режима 104, если имеется любой доступный контактный источник питания для системы, обнаруженный модулем управления источником питания 102.
Модуль выбора операционного режима 104 выбирает операционный режим системы на базе способа подачи питания по уведомлению от модуля управления источником питания 102. Когда модуль управления источником питания 102 уведомляет о бесконтактном способе подачи питания, модуль выбора операционного режима 104 выберет для системы одномодовый бесконтактный операционный режим, а когда модуль управления источником питания 102 уведомляет о контактном способе подачи питания, модуль выбора операционного режима 104 выберет для системы смешанный операционный режим. Подробное пояснение последует далее со ссылкой на выбранный операционный режим.
I. Одномодовый бесконтактный операционный режим.
После выбора для системы одномодового бесконтактного операционного режима модуль выбора операционного режима 104 отправляет команду инициализации одномодового бесконтактного операционного режима на подмодуль инициализации одномодового бесконтактного операционного режима 1013, f подмодуль инициализации одномодового бесконтактного операционного режима 1013 выполнит инициализацию одномодового бесконтактного операционного режима для модуля бесконтактной связи 107 и модуля обработки команд 108. А именно, подмодуль инициализации одномодового бесконтактного операционного режима 1013 выполнит следующее.
В1. Установка регистров в модуле бесконтактной связи 107, которые требуются для бесконтактной связи, и отправка команды на модуль бесконтактной связи 107 на получение и отправку в режиме прерывания, а также отправка команды на модуль бесконтактной связи 107 для генерации прерывания, чтобы уведомить модуль обработки команд 108 после получения им бесконтактной команды.
В2. Установка контекста текущего канала в модуле обработки команд 108 как контекста бесконтактного канала и установка идентификатора канала как бесконтактного канала, а затем уведомление модуля обработки команд 108 о переходе в одномодовый бесконтактный операционный режим.
Когда модуль обработки команд 108 работает в одномодовом бесконтактном операционном режиме, а именно после инициализации одномодового бесконтактного операционного режима модуля бесконтактной связи 107 и модуля обработки команд 108 с помощью подмодуля инициализации одномодового бесконтактного операционного режима 1013, подмодуль управления ждущего режима 1086 позволяет системе перейти в ждущий режим и ожидать генерацию прерывания модулем бесконтактной связи 107; после генерации прерывания модулем бесконтактной связи 107, подмодуль управления ждущего режима 1086 запускает систему и уведомляет подмодуль обработки бесконтактных команд 1085 для обработки бесконтактной команды, а подмодуль обработки бесконтактных команд 1085 отправляет ответ на модуль бесконтактной связи 107 после обработки бесконтактной команды и ожидает заданное время после отправки ответа; если модуль бесконтактной связи 107 опять генерирует прерывание в это заданное время, то обработка бесконтактной команды продолжается подмодулем обработки бесконтактных команд 1085, в противном случае подмодуль управления ждущего режима 1086 уведомляется о разрешении перехода системы в ждущий режим и ожидания следующего прерывания, генерируемого модулем бесконтактной связи 107 (подмодуль обработки бесконтактных команд 1085 также может немедленно уведомлять подмодуль управления ждущего режима 1086 о разрешении перехода системы в ждущий режим после отправки ответа и ожидании следующего прерывания, генерируемого модулем бесконтактной связи 107).
Т.о., как можно увидеть, когда система работает в одномодовом бесконтактном операционном режиме, выполняются следующие операции, как показано на фиг.4:
- операция S301, подмодуль управления ждущего режима 1086 переводит систему в ждущий режим и ожидание для прерывания, генерируемого модулем бесконтактной связи 107;
- операция S302, модуль бесконтактной связи 107 получает бесконтактную команду и генерирует прерывание для уведомления подмодуля управления ждущего режима 1086;
- операция S303, подмодуль управления ждущего режима 1086 запускает систему и уведомляет подмодуль обработки бесконтактных команд 1085 для обработки бесконтактной команды;
- операция S304, подмодуль обработки бесконтактных команд 1085 считывает и обрабатывает бесконтактную команду на базе синхронизации, обеспечиваемой модулем управления синхронизацией 103;
- операция S305, подмодуль обработки бесконтактных команд 1085 отправляет на модуль бесконтактной связи 107 ответ на бесконтактную команду;
- операция S306, подмодуль обработки бесконтактных команд 1085 ожидает заданное время и возвращается к операции S304, если модуль бесконтактной связи 107 опять генерирует прерывание в течение заданного времени, в противном случае уведомляет подмодуль управления ждущего режима 1086 и возвращается к операции S301.
II. Смешанный операционный режим.
После выбора для системы модулем выбора операционного режима 104 смешанного операционного режима он отправляет команду инициализации смешанного операционного режима на подмодуль инициализации смешанного операционного режима 1012, который выполнит инициализацию смешанного операционного режима для модуля контактной связи 106, модуля бесконтактной связи 107 и модуля обработки команд 108, а именно, подмодуль инициализации смешанного операционного режима 1012 соответственно выполнит следующее.
С1. Установка регистров в модуле контактной связи 106, требуемых для контактной связи, отправка команды на модуль контактной связи 106 на получение в режиме прерывания, отправку в режиме запроса и работу в смешанном операционном режиме, а затем отправка модулей контактной связи 106 ответа контактной переустановки на контактное терминальное устройство, с которого подается питание на систему.
В настоящем осуществлении на модуль контактной связи 106 подаются команды для получения в режиме прерывания и отправки в режиме запроса во время инициализации смешанного операционного режима, однако, на практике, режимы действия, приспособленные для получения и отправки контактных данных, не ограничены. Модуль контактной связи 106 может осуществлять отправку и получение в режиме прерывания или в режиме запроса. Как показано на фиг.5, модуль контактной связи 106 дополнительно включает подмодуль получения контактной связи 1061, подмодуль памяти контактной связи 1064 и подмодуль отправки контактной связи 1065, где подмодуль получения контактной связи 1061 дополнительно включает порт получения контактной связи 1062 и блок управления получения контактной связи 1063, причем подмодуль получения контактной связи 1061 имеет два следующих режима работы.
Режим запроса: блок управления получения контактной связи 1063 постоянно определяет, действительно ли имеются данные, поступающие на порт получения контактной связи 1062, и если такие данные обнаружены, блок управления получения контактной связи 1063 сохранит обнаруженные данные по назначенному адресу в подмодуле памяти контактной связи 1064.
Режим прерывания: после получения данных на порт получения контактной связи 1062 генерируется прерывание для уведомления блока управления получения контактной связи 1063 для сохранения данных по назначенному адресу в подмодуле памяти контактной связи 1064.
В связи с тем, что порт получения контактной связи 1062 может получать только ограниченный объем байтов и этот объем может быть меньше размера контактной команды, например, когда контактная команда содержит 5 байтов, а порт получения контактной связи 1062 может получить только 1 байт за один раз, то если данные получены в режиме запроса, будет возможно, что данные в 1 байт не могут быть выгружены сразу по их поступлению, а затем они будут стерты следующими данными. Это может гарантировать, что система получит контактную команду корректно в режиме прерывания независимо от состояния системы. Поэтому, в настоящем осуществлении, подмодуль получения контактной связи 1061 адаптирован к режиму прерывания, не ограничиваясь на практике этим простым режимом работы для получения контактных данных.
Когда модуль контактной связи 106 работает в смешанном операционном режиме, блок управления получения контактной связи 1063 генерирует прерывание для уведомления блока обработки команд 108 после получения контактной команды (целью генерации прерывания является то, что если система находится в это время в ждущем режиме, то блок обработки команд 108 запустит систему на базе этого прерывания, и процесс получения контактной команды не начнется вследствие этого прерывания в смешанном операционном режиме), и устанавливает идентификатор контактной команды в подмодуле памяти контактной связи 1064 как «1» для идентификации того, что контактная команда была получена.
Подмодуль отправки контактной связи 1065, дополнительно включающий порт отправки контактной связи 1066 и блок управления отправки контактной связи 1067, имеет два следующих режима работы.
Режим запроса: блок управления отправки контактной связи 1067 берет контактные данные для отправки на порт отправки контактной связи 1066 и затем постоянно определяет, действительно ли еще имеются данные на порте отправки контактной связи 1066 до тех пор, пока данные не будут отправлены.
Режим прерывания: блок управления отправки контактной связи 1067 берет контактные данные для отправки на порт отправки контактной связи 1066, а порт отправки контактной связи 1066 генерирует прерывание для уведомления блока управления отправки контактной связи 1067 после отправки данных.
В настоящем осуществлении подмодуль отправки контактной связи 1065 адаптирован к режиму запроса, не ограничиваясь на практике этим простым режимом работы для отправки контактных данных.
Когда модуль контактной связи 106 работает в смешанном операционном режиме, блок управления отправки контактной связи 1067 после отправки ответа на контактную команду, сбросит контактную команду и идентификатор контактной команды в подмодуле памяти контактной связи 1064.
С2. Установка регистров в модуле бесконтактной связи 107, требуемых для бесконтактной связи, отправка команды на модуль бесконтактной связи 107 на получение и отправку в режиме прерывания и работу в смешанном операционном режиме.
В настоящем осуществлении на модуль бесконтактной связи 107 подается команда на получение и отправку в режиме прерывания во время инициализации смешанного операционного режима, однако, на практике, режимы действия, приспособленные для получения бесконтактных данных, не ограничены. Модуль бесконтактной связи 107 может получать и отправлять в режиме прерывания или в режиме запроса. Как показано на фиг.6, модуль бесконтактной связи 107 дополнительно включает подмодуль получения бесконтактной связи 1071, подмодуль памяти бесконтактной связи 1074 и подмодуль отправки бесконтактной связи 1075, где подмодуль получения бесконтактной связи 1071, дополнительно включающий порт получения бесконтактной связи 1072 и блок управления получения бесконтактной связи 1073, имеет два следующих режима работы.
Режим запроса: блок управления получения бесконтактной связи 1073 постоянно определяет, действительно ли имеются данные, поступающие на порт получения бесконтактной связи 1072, и если такие данные обнаружены, сохраняет данные по назначенному адресу в подмодуле памяти бесконтактной связи 1074.
Режим прерывания: после получения данных на порт получения бесконтактной связи 1072 генерируется прерывание для уведомления блока управления получения бесконтактной связи 1073 для сохранения данных по назначенному адресу в подмодуле памяти бесконтактной связи 1074.
В настоящем осуществлении подмодуль получения бесконтактной связи 1071 адаптирован к режиму прерывания, не ограничиваясь на практике этим простым режимом работы для получения бесконтактных данных.
Когда модуль бесконтактной связи 107 работает в смешанном операционном режиме, блок управления получения бесконтактной связи 1073 получает бесконтактную команду и затем генерирует прерывание для уведомления блока обработки команд 108 (целью генерации прерывания является то, что если система находится в это время в ждущем режиме, то блок обработки команд 108 запустит систему на базе этого прерывания, и процесс получения бесконтактной команды не начнется вследствие этого прерывания в смешанном операционном режиме), и устанавливает идентификатор бесконтактной команды как «1» для идентификации того, что бесконтактная команда получена.
Подмодуль отправки бесконтактной связи 1075, дополнительно включающий порт отправки бесконтактной связи 1076 и блок управления отправки бесконтактной связи 1077, имеет два следующих режима работы.
Режим запроса: блок управления отправки бесконтактной связи 1077 берет бесконтактные данные для отправки на порт отправки бесконтактной связи 1076 и затем постоянно определяет, действительно ли еще имеются данные до тех пор, пока данные не будут отправлены.
Режим прерывания: блок управления отправки бесконтактной связи 1077 берет бесконтактные данные для отправки на порт отправки бесконтактной связи 1076, а порт отправки бесконтактной связи 1076 генерирует прерывание для уведомления блока управления отправки бесконтактной связи 1077 после отправки данных.
В настоящем осуществлении подмодуль отправки бесконтактной связи 1075 адаптирован к режиму прерывания, не ограничиваясь на практике этим простым режимом работы для отправки бесконтактных данных.
Когда модуль бесконтактной связи 107 работает в смешанном операционном режиме, блок управления отправки бесконтактной связи 1077 после отправки ответа на бесконтактную команду сбросит бесконтактную команду и идентификатор бесконтактной команды в подмодуле памяти бесконтактной связи 1074.
С3. Уведомление модуля обработки команд 108 перейти в смешанный операционный режим, и затем модуль обработки команд 108 переходит в смешанный операционный режим.
Модуль обработки команд 108 посредством следующих операций будет обрабатывать команды, как показано на фиг.7, после уведомления о переходе в смешанный операционный режим:
- операция S401, подмодуль запросов 1081 запрашивает, действительно ли сохраненный в подмодуле памяти контактной связи 1064 идентификатор получения контактной команды равен «0», и если да, переходит к операции S405, в противном случае - к операции S402;
- операция S402, подмодуль запросов 1081 уведомляет подмодуль переключения контекста 1082, что модуль контактной связи 106 получил контактную команду и подмодуль переключения контекста 1082 оценивает, действительно ли сохраненный идентификатор канала в подмодуле памяти обработки команд 1083 является контактным каналом, и если да, то осуществляет переход к операции S404, или в противном случае, когда идентификатор канала является бесконтактным каналом, осуществляет переход к операции S403;
- операция S403, подмодуль переключения контекста 1082 устанавливает идентификатор канала как контактного канала и переключает контекст канала на контекст контактного канала. Здесь переключение контекста канала на контекст контактного канала означает, что контекст текущего канала, т.е. контекст бесконтактного канала, сохраняется в подмодуле памяти обработки команд 1083, который затем использует сохраненный контекст контактного канала для обновления контекста текущего канала;
- операция S404, подмодуль переключения контекста 1082 уведомляет подмодуль обработки контактных команд 1084, что модуль контактной связи 106 получил контактную команду; подмодуль обработки контактных команд 1084 считывает контактную команду из подмодуля памяти контактной связи 1064 и обрабатывает ее, а затем отправляет ответ на контактную команду на модуль контактной связи 106 соответственно идентификатору канала в подмодуле памяти обработки команд 1083 и возвращается к операции S401;
- операция S405, подмодуль запросов 1081 запрашивает, действительно ли сохраненный в подмодуле памяти бесконтактной связи 1074 идентификатор получения бесконтактной команды равен «0», и если да, переходит к операции S409, в противном случае - к операции S406;
- операция S406, подмодуль запросов 1081 уведомляет подмодуль переключения контекста 1082, что модуль бесконтактной связи 107 получил бесконтактную команду и подмодуль переключения контекста 1082 оценивает, действительно ли сохраненный идентификатор канала в подмодуле памяти обработки команд 1083 является бесконтактным каналом, и если да, то осуществляет переход к операции S408 или, в противном случае, когда идентификатор канала является контактным каналом, осуществляет переход к операции S407;
- операция S407, подмодуль переключения контекста 1082 устанавливает идентификатор канала как бесконтактного канала и переключает контекст канала на контекст бесконтактного канала. Здесь переключение контекста канала на контекст бесконтактного канала означает, что контекст текущего канала, т.е. контекст контактного канала, сохраняется в подмодуле памяти обработки команд 1083, который затем использует сохраненный контекст бесконтактного канала для обновления контекста текущего канала;
- операция S408, подмодуль переключения контекста 1082 уведомляет подмодуль обработки бесконтактных команд 1085, что модуль бесконтактной связи 107 получил бесконтактную команду; подмодуль обработки бесконтактных команд 1085 считывает контактную команду из подмодуля памяти бесконтактной связи 1074 и обрабатывает ее, а затем отправляет ответ на бесконтактную команду на модуль бесконтактной связи 107 соответственно идентификатору канала и возвращается к операции S401;
- операция S409, подмодуль запросов 1081 уведомляет подмодуль управления ждущего режима 1086, что в настоящее время не имеется команд для обработки, и затем подмодуль управления ждущего режима 1086 переводит систему в ждущий режим и ожидает прерывания, генерируемого модулем контактной связи 106 или модулем бесконтактной связи 107, для запуска системы на базе этого прерывания и возвращается к операции S401 после осуществления запуска системы.
Во время вышеописанной процедуры может быть запрос подмодуля 1081, действительно ли идентификатор получения бесконтактной команды равен «0», и если да, то затем запрашивает еще раз, действительно ли идентификатор получения контактной команды равен «0». Конкретные операции зависят от практических требований.
При использовании на практике модуль контактной связи 106 и модуль бесконтактной связи 107 могут не устанавливать идентификатор получения контактной команды и идентификатор получения бесконтактной команды соответственно, при этом подмодуль запросов 1081 запрашивает напрямую по назначенным адресам для сохранения контактной команды и бесконтактной команды в подмодуле памяти контактной связи 1064 и в подмодуле памяти бесконтактной связи 1074, действительно ли сохранены контактная и бесконтактная команды, и если да, то уведомляет подмодуль обработки контактных команд 1084 для считывания и обработки обнаруженных команд, тем самым может быть достигнута раздельная обработка контактной и бесконтактной команд.
В настоящем осуществлении для сохранения энергии модуль обработки команд 108 позволяет системе переход в ждущий режим, когда не найдено никакого идентификатора получения контактной команды или идентификатора получения бесконтактной команды. Однако, на практике, на систему также может подаваться команда перехода в ждущий режим в то время, когда модуль обработки команд 108 сохраняет запрос идентификатора получения контактной команды или идентификатора получения бесконтактной команды.
Очевидно, что специалист в данной области техники может сделать различные изменения и модификации настоящего изобретения, не отходя при этом от духа и объема правовой охраны настоящего изобретения. При этом если эти изменения и модификации настоящего изобретения попадают в пределы признаков формулы или являются эквивалентами, то они также охватываются настоящим изобретением.
название | год | авторы | номер документа |
---|---|---|---|
ОПЕРАЦИОННАЯ СИСТЕМА СМАРТ-КАРТЫ И СПОСОБ ЕЕ РАБОТЫ | 2007 |
|
RU2388043C2 |
УСТРОЙСТВО С НЕСКОЛЬКИМИ ИДЕНТИФИКАТОРАМИ | 2016 |
|
RU2708947C2 |
СПОСОБ ПЕРЕДАЧИ РАСШИРЕННОГО НАБОРА ДАННЫХ ОТ БЕСКОНТАКТНОГО ПЛАТЕЖНОГО УСТРОЙСТВА К ТЕРМИНАЛУ | 2017 |
|
RU2696885C2 |
БЕСПРОВОДНОЙ ОБМЕН ДАННЫМИ | 2006 |
|
RU2429528C2 |
СПОСОБ, СИСТЕМА И УСТРОЙСТВО ДЛЯ ПРОВЕРКИ ДОСТОВЕРНОСТИ ПРОЦЕССА ТРАНЗАКЦИИ | 2013 |
|
RU2644132C2 |
СИСТЕМА И СПОСОБ УПРАВЛЕНИЯ СЕРВИСОМ ПРЕДОСТАВЛЕНИЯ ВИРТУАЛЬНЫХ КАНАЛОВ | 2022 |
|
RU2825320C2 |
АППАРАТУРА И СПОСОБ ОСУЩЕСТВЛЕНИЯ ПЛАТЕЖА, ИНТЕГРИРОВАННОГО С ДОСТАВКОЙ ЭЛЕКТРОННЫХ ТОВАРОВ | 2006 |
|
RU2427915C2 |
СПОСОБ ПРОВЕДЕНИЯ ТРАНСАКЦИЙ, КОМПЬЮТЕРИЗОВАННЫЙ СПОСОБ ЗАЩИТЫ СЕТЕВОГО СЕРВЕРА, ТРАНСАКЦИОННАЯ СИСТЕМА, СЕРВЕР ЭЛЕКТРОННОГО БУМАЖНИКА, КОМПЬЮТЕРИЗОВАННЫЙ СПОСОБ ВЫПОЛНЕНИЯ ОНЛАЙНОВЫХ ПОКУПОК (ВАРИАНТЫ) И КОМПЬЮТЕРИЗОВАННЫЙ СПОСОБ КОНТРОЛЯ ДОСТУПА | 2000 |
|
RU2252451C2 |
Способ, система и устройство криптографической защиты каналов связи беспилотных авиационных комплексов | 2018 |
|
RU2704268C1 |
СПОСОБ, УСТРОЙСТВО И ЗАЩИЩЕННЫЙ ЭЛЕМЕНТ ДЛЯ ВЫПОЛНЕНИЯ БЕЗОПАСНОЙ ФИНАНСОВОЙ ТРАНЗАКЦИИ В УСТРОЙСТВЕ | 2013 |
|
RU2639690C2 |
Изобретение относится к операционной системе смарт-карты и способу ее работы, когда при подаче питания на систему модуль выбора операционного режима (104) оценивает способ подачи питания на систему и выбирает первый операционный режим, если напряжение подают от бесконтактного источника питания, или выбирает второй операционный режим, если напряжение подают от контактного источника питания; в первом операционном режиме модуль обработки команд (108) отдельно обрабатывает полученную бесконтактную команду, а во втором операционном режиме параллельно обрабатывает контактную команду, полученную модулем контактной связи (106), и бесконтактную команду, полученную модулем бесконтактной связи (107). Операционная система смарт-карты способна одновременно поддерживать контактную связь и бесконтактную связь. Технический результат - значительно повышает гибкость использования смарт-карты. 2 н. и 12 з.п. ф-лы, 7 ил.
1. Операционная система смарт-карты, включающая модуль контактной связи, модуль бесконтактной связи и модуль обработки команд, отличающаяся тем, что дополнительно включает модуль выбора операционного режима, соединенный с модулем обработки команд, при этом модуль выбора операционного режима определяет первый или второй операционный режим в соответствии со способом подачи питания системы и сообщает об этом модулю обработки команд, и модуль обработки команд отдельно обрабатывает бесконтактные команды, полученные модулем бесконтактной связи, в первом операционном режиме, или одновременно обрабатывает контактные команды, полученные модулем контактной связи, и бесконтактные команды, полученные модулем бесконтактной связи, во втором операционном режиме, при этом модуль обработки команд дополнительно включает подмодуль переключения контекста и первый подмодуль памяти, где первый подмодуль памяти используется для раздельного хранения контекста контактного канала и контекста бесконтактного канала, а подмодуль переключения контекста используется для выбора контекста соответствующего канала, сохраненного в первом подмодуле памяти, в соответствии с каналом, где расположены команды, подлежащие обработке.
2. Система по п.1, отличающаяся тем, что дополнительно включает модуль управления источником питания, соединенный с модулем выбора операционного режима, причем модуль управления источником питания обнаруживает доступные источники питания, отдавая предпочтение контактному источнику питания, в случае его обнаружения, для подачи напряжения на систему, а затем сообщает модулю выбора операционного режима определенный способ подачи питания на систему.
3. Система по п.1, отличающаяся тем, что дополнительно включает модуль управления синхронизацией, который соединен с модулем обработки команд, при этом модуль управления синхронизацией обнаруживает доступные источники синхронизации, отдавая предпочтение источнику синхронизации в соответствии с предварительно заданным уровнем приоритета для обеспечения синхронизации для модуля обработки команд.
4. Система по п.1, отличающаяся тем, что дополнительно включает модуль инициализации, при этом модуль инициализации включает подмодуль общей инициализации, подмодуль инициализации первого операционного режима и подмодуль инициализации второго операционного режима, причем
подмодуль общей инициализации используется для инициализации регистров общего назначения и глобальных переменных;
подмодуль инициализации первого операционного режима используется для инициализации модуля бесконтактной связи и модуля обработки команд на базе первого операционного режима;
подмодуль инициализации второго операционного режима используется для инициализации модуля бесконтактной связи, модуля контактной связи и модуля обработки команд на базе второго операционного режима.
5. Система по п.1, отличающаяся тем, что модуль обработки команд дополнительно включает подмодуль запросов для параллельного запроса, действительно ли модуль контактной связи получил контактную команду и действительно ли модуль бесконтактной связи получил бесконтактную команду.
6. Система по п.1, отличающаяся тем, что модуль контактной связи дополнительно включает подмодуль получения контактной связи, подмодуль отправки контактной связи и подмодуль памяти контактной связи, причем
подмодуль памяти контактной связи используется для хранения идентификатора получения контактной связи;
подмодуль получения контактной связи используется для получения контактной команды и установки идентификатора получения контактной связи;
подмодуль отправки контактной связи используется для отправки ответа на контактную команду и сброса идентификатора получения контактной связи.
7. Система по п.1, отличающаяся тем, что модуль бесконтактной связи дополнительно включает подмодуль получения бесконтактной связи, подмодуль отправки бесконтактной связи и подмодуль памяти бесконтактной связи, причем
подмодуль памяти бесконтактной связи используется для хранения идентификатора получения бесконтактной связи;
подмодуль получения бесконтактной связи используется для получения бесконтактной команды и установки идентификатора получения бесконтактной связи;
подмодуль отправки бесконтактной связи используется для отправки ответа на бесконтактную команду и сброса идентификатора получения бесконтактной связи.
8. Система по п.1, отличающаяся тем, что модуль обработки команд дополнительно включает подмодуль управления ждущего режима для управления операционной системой смарт-карты, находящейся в неактивном состоянии или переведенной в неактивное состояние на заданное время, и для запуска системы на базе прерывания, сгенерированного модулем контактной связи или модулем бесконтактной связи после получения команды.
9. Способ работы смарт-карты, включающий следующие этапы:
оценивают способ подачи питания на систему, когда на систему подают питание, и выбирают первый операционный режим, если напряжение подают от бесконтактного источника питания, или выбирают второй операционный режим, если напряжение подают от контактного источника питания;
отдельно обрабатывают полученную бесконтактную команду в первом операционном режиме или параллельно обрабатывают полученные контактную и бесконтактную команды во втором операционном режиме, причем во втором операционном режиме и до того, как обрабатывать контактную команду или бесконтактную команду, в первую очередь оценивают, действительно ли канал, в котором должна быть обработана команда, является идентичным тому каналу, который поддерживается контекстом текущего канала, и если нет, то команду обрабатывают после переключения контекста канала, в противном случае команду обрабатывают непосредственно.
10. Способ по п.9, отличающийся тем, что контактный источник питания предпочитают для работы в качестве источника питания системы, если в одно и тоже время имеются как бесконтактный, так и контактный источники питания.
11. Способ по п.9, отличающийся тем, что предварительно устанавливают уровни приоритета источника синхронизирующих импульсов, а доступный источник синхронизирующих импульсов для системы выбирают на базе этих приоритетов, когда на систему подают питание, или когда текущий источник синхронизирующих импульсов пропадает, и источники питания существуют, чтобы обеспечить синхронизацию системы.
12. Способ по п.9, отличающийся тем, что во втором операционном режиме выполняют параллельный запрос, действительно ли получена контактная и бесконтактная команды, и обрабатывают обнаруженные контактную и бесконтактную команды.
13. Способ по п.9, отличающийся тем, что во втором операционном режиме
задают идентификатор контактной команды или идентификатор бесконтактной команды, если получена контактная команда или бесконтактная команда;
сбрасывают идентификатор контактной команды или идентификатор бесконтактной команды, если отправлен ответ на контактную команду или бесконтактную команду;
выполняют параллельно запрос идентификатора контактной команды и идентификатора бесконтактной команды, чтобы определить, действительно ли контактная и бесконтактная команды получены, затем обрабатывают контактную или бесконтактную команду и отправляют соответствующий ответ.
14. Способ по п.9, отличающийся тем, что систему переводят в ждущий режим для неактивного состояния или неактивного состояния на заданное время, и систему запускают после получения команды.
Способ приготовления мыла | 1923 |
|
SU2004A1 |
Приспособление для настройки радиоприемника | 1936 |
|
SU48654A1 |
US 6145749 A, 14.11.2000 | |||
Печь для непрерывного получения сернистого натрия | 1921 |
|
SU1A1 |
Авторы
Даты
2009-05-27—Публикация
2007-06-25—Подача