|
(21), (22) Заявка: 2005126873/09, 25.08.2005
(24) Дата начала отсчета срока действия патента:
25.08.2005
(43) Дата публикации заявки: 27.02.2007
(46) Опубликовано: 10.04.2009
(56) Список документов, цитированных в отчете о поиске:
DE 4107052 A1, 10.09.1992. RU 2146399 C1, 10.03.2000. DE 3917979 A1, 06.12.1990. RU 2189623 C2, 20.09.2002. JP 2001101015 A, 13.04.2001. US 2004/0003134 A1, 01.01.2004.
Адрес для переписки:
445043, Самарская обл., г. Тольятти, ул. Заставная, 2, корп.3/1, ОАО “АВТОВАЗ”, ДТР, ПЛО, А.П. Голикову, рег. 188
|
(72) Автор(ы):
Шпилев Сергей Алексеевич (RU)
(73) Патентообладатель(и):
Открытое акционерное общество “АВТОВАЗ” (RU)
|
(54) СПОСОБ ДОВОДКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ БЛОКА УПРАВЛЕНИЯ ДВС
(57) Реферат:
Изобретение относится к области двигателестроения и может быть использовано для защиты программного обеспечения (ПО) блока управления двигателем внутреннего сгорания транспортного средства (далее – БУ ДВС ТС) от несанкционированного изменения. Техническим результатом является повышение степени защиты программного обеспечения. Способ доводки ПО БУ ДВС транспортного средства на работающем ДВС заключается в том, что переписывают во внешнее двухпортовое ОЗУ программное обеспечение БУ ДВС ТС, запускают ДВС, уточняют входящий в ПО массив данных с калибровочными таблицами и константами при работе ДВС в различных рабочих режимах, записывают уточненные данные во внешнее двухпортовое ОЗУ, а по окончании процесса доводки записывают доведенное ПО в ЭСППЗУ микроконтроллера БУ ДВС ТС, причем перед запуском ДВС разделяют ПО на исполняемый код и массив данных с калибровочными таблицами и константами, переписывают во внешнее двухпортовое ОЗУ указанный массив данных, записывают в ЭСППЗУ исполняемый код, программно закрывают ЭСППЗУ от считывания, а по окончании процесса доводки изменяют массив данных с калибровочными таблицами и константами и добавляют измененные адреса данных к исполняемому коду, после чего записывают доведенное ПО в ЭСППЗУ микроконтроллера БУ ДВС ТС и программно закрывают ЭСППЗУ микроконтроллера БУ ДВС ТС от считывания. 1 з.п. ф-лы, 1 ил.
Изобретение относится к области двигателестроения и может быть использовано для защиты программного обеспечения блока управления (далее – БУ) двигателем внутреннего сгорания (далее – ДВС) транспортного средства (далее – ТС).
Программное обеспечение БУ ДВС ТС включает в себя сведения, необходимые для управления ДВС:
– исполняемый код (другими словами, программу управления) с адресами массива данных;
– массив данных с константами и калибровочными таблицами, используемый исполняемым кодом в зависимости от режима работы ДВС.
Доводка программного обеспечения БУ ДВС ТС заключается в подборе констант и массива данных для выполнения норм токсичности и достижения требуемых пусковых и ездовых качеств.
Проблемой для производителей ТС и фирм, профессионально занимающихся разработкой программного обеспечения для БУ ДВС ТС, является несанкционированное изменение содержания калибровочных таблиц, известное как чип-тюнинг (термин см., например, журнал За рулем , б/99 г., стр.128). Вследствие изменения значений калибровочных таблиц ДВС ТС может выйти из строя или работать в аварийном режиме.
Для выполнения несанкционированного чип-тюнинга необходимо, как минимум, располагать информацией об исполняемом коде, массиве данных с таблицами и константами и файлом описания данных для калибровки.
Следует отметить, что утечка информации о программном обеспечении может происходить уже на стадии проведения доводки программного обеспечения на работающем в составе системы управления БУ ДВС ТС.
Из уровня техники известны, см., например, описание к патенту RU 2146399 C1, G11C 16/06, G06K 19/00, G06F 7/10, публ. 10.03.2000 г., энергонезависимые стираемые перепрограммируемые запоминающие устройства (далее – ЭСППЗУ), предназначенные для хранения информации в условиях отсутствия подвода электрической энергии. Такие устройства нашли применение в БУ ДВС ТС (см., например, заявку DE 3917979 A1, 5 G06F 9/44, F02P 5/15, F02D 41/26, публ. 06.12.1990 г.), где они используются для записи и хранения упомянутого выше программного обеспечения БУ ДВС ТС.
Конструктивно ЭСППЗУ БУ ДВС ТС может быть интегрировано в микроконтроллер (см. журнал АБС , март 1999 г., стр.18-19). В этом случае в состав микроконтроллера входит (см. журнал АБС , март 2003 г., стр.9) микропроцессор, ЭСППЗУ и оперативное запоминающее устройство (далее – ОЗУ).
За прототип заявляемого способа взят способ доводки программного обеспечения БУ ДВС ТС на работающем ДВС, см. патент Германии DE 4107052, МКИ5 G06F 13/00, F02D 41/26, 43/04, публ. 10.09.1992 г. Способ заключается в том, что БУ ДВС ТС снабжают внешним двухпортовым ОЗУ, к первому из портов которого подключают персональный компьютер, а ко второму – микроконтроллер БУ ДВС ТС, подключают БУ ДВС к системе управления ДВС, записывают во внешнее двухпортовое ОЗУ программное обеспечение, запускают ДВС, осуществляют перевод ДВС в режим, работа ДВС в котором требует корректировки, уточняют данные калибровочных таблиц при работе ДВС в выбранном режиме работы и записывают уточненные данные во внешнее ОЗУ, а по окончании процесса доводки записывают доведенное программное обеспечение в ПЗУ БУ ДВС.
Задачей заявляемого изобретения является создание способа доводки программного обеспечения БУ ДВС ТС на работающем ДВС с повышенной степенью защиты программного обеспечения от несанкционированного копирования и изменения.
Указанная задача решается в способе доводки программного обеспечения БУ ДВС ТС на работающем ДВС, при котором БУ ДВС ТС снабжают внешним двухпортовым ОЗУ, к первому из портов которого подключают персональный компьютер, а ко второму – микроконтроллер БУ ДВС ТС, снабженный ЭСППЗУ, подключают БУ ДВС к системе управления ДВС, записывают во внешнее двухпортовое ОЗУ программное обеспечение БУ ДВС ТС, запускают ДВС, осуществляют перевод ДВС в режим, работа ДВС в котором требует корректировки, уточняют данные калибровочных таблиц при работе ДВС в выбранном режиме работы, записывают уточненные данные во внешнее ОЗУ, а по окончании процесса доводки записывают доведенное программное обеспечение в ЭСППЗУ микроконтроллера БУ ДВС.
Указанная задача решается тем, что программное обеспечение БУ ДВС ТС разделяют на два файла, первый из которых содержит массив данных с калибровочными таблицами и константами, а второй файл содержит исполняемый код, переписывают во внешнее двухпортовое ОЗУ массив данных с калибровочными таблицами и константами, записывают в ЭСППЗУ микроконтроллера исполняемый код, программно закрывают ЭСППЗУ микроконтроллера от считывания, а по окончании процесса доводки программного обеспечения изменяют массив данных с калибровочными таблицами и константами, после чего добавляют измененные адреса данных к исполняемому коду, массив данных и исполняемый код соединяют в один файл доведенного программного обеспечения, записывают доведенное программное обеспечение в ЭСППЗУ микроконтроллера БУ ДВС ТС и программно закрывают ЭСППЗУ микроконтроллера от считывания программного обеспечения. При этом в варианте реализации изобретения массив данных может быть разбит на отдельные фрагменты, которые могут быть размещены в различные места исполняемого кода.
В результате предлагаемого способа в массиве данных и исполняемом коде доведенного программного обеспечения изменяется адресация данных, благодаря чему даже в случае разблокирования ЭСППЗУ микроконтроллера для считывания программного обеспечения существенно затрудняется нахождение данных калибровочных таблиц, используемых при чип-тюнинге .
Изобретение поясняется чертежом, где изображена блок-схема устройства доводки программного обеспечения БУ ДВС ТС.
Изобретение может быть успешно реализовано в устройстве доводки программного обеспечения БУ ДВС ТС, см. чертеж, включающей в себя БУ ДВС ТС 1, снабженный микроконтроллером 2 с ЭСППЗУ 3, персональный компьютер 4 и двухпортовое ОЗУ 5 с первым и вторым портами 6, 7.
Для реализации изобретения выполняют следующие действия:
– БУ ДВС ТС 1 снабжают внешним двухпортовым ОЗУ 5, к первому из портов которого подключают персональный компьютер 4, а ко второму – микроконтроллер БУ ДВС ТС 1;
– подключают БУ ДВС к системе управления ДВС;
– разделяют программное обеспечение БУ ДВС ТС на исполняемый код и массив данных с калибровочными таблицами и константами;
– переписывают во внешнее двухпортовое ОЗУ 5 массив данных с калибровочными таблицами и константами;
– записывают в ЭСППЗУ микроконтроллера исполняемый код;
– программно закрывают ЭСППЗУ микроконтроллера от считывания;
– запускают ДВС;
– переводят ДВС в нужный рабочий режим;
– уточняют данные калибровочных таблиц;
– записывают уточненные данные во внешнее двухпортовое ОЗУ 5;
– по окончании процесса доводки записывают в запоминающее устройство персонального компьютера 4 исполняемый код и массив данных с калибровочными таблицами и константами;
– изменяют массив данных с калибровочными таблицами и константами таким образом, чтобы в результате изменения изменились адреса данных;
– добавляют измененные адреса данных к исполняемому коду;
– записывают доведенное программное обеспечение, включающее в себя измененный массив данных (с калибровочными таблицами и константами) и исполняемый код, в ЭСППЗУ 3 микроконтроллера 2 БУ ДВС ТС 1;
– программно закрывают ЭСППЗУ 3 микроконтроллера 2 БУ ДВС ТС 1 от считывания программного обеспечения.
В предпочтительном варианте реализации изобретения массив данных могут изменять посредством персонального компьютера 4, разбив его на отдельные фрагменты, которые размещают затем в различные места исполняемого кода.
Формула изобретения
1. Способ доводки программного обеспечения блока управления (далее – БУ) двигателя внутреннего сгорания (далее – ДВС) транспортного средства (далее – ТС) на работающем ДВС, при котором переписывают во внешнее двухпортовое оперативное запоминающее устройство (далее – ОЗУ) программное обеспечение БУ ДВС ТС, запускают ДВС, уточняют входящий в программное обеспечение массив данных с калибровочными таблицами и константами при работе ДВС в различных рабочих режимах, записывают уточненные данные во внешнее двухпортовое ОЗУ, а по окончании процесса доводки записывают доведенное программное обеспечение в энергонезависимое стираемое перепрограммируемое запоминающее устройство (далее – ЭСППЗУ) микроконтроллера БУ ДВС ТС, отличающийся тем, что перед запуском ДВС разделяют программное обеспечение на исполняемый код и массив данных с калибровочными таблицами и константами, переписывают во внешнее двухпортовое ОЗУ массив данных с калибровочными таблицами и константами, записывают в ЭСППЗУ микроконтроллера исполняемый код, программно закрывают ЭСППЗУ микроконтроллера от считывания, а по окончании процесса доводки изменяют массив данных с калибровочными таблицами и константами и добавляют измененные адреса данных к исполняемому коду, после чего записывают доведенное программное обеспечение в ЭСППЗУ микроконтроллера БУ ДВС ТС и программно закрывают ЭСППЗУ микроконтроллера БУ ДВС ТС от считывания.
2. Способ по п.1, отличающийся тем, что массив данных разбивают на отдельные фрагменты, которые записывают в различные места исполняемого кода.
РИСУНКИ
|
|