CODESYS форум

Добро пожаловать на официальный форум CODESYS
Deutsche Version English version russian version 
Текущее время: Чт авг 17, 2017 4:56 am

Часовой пояс: UTC+01:00




Начать новую тему  Ответить на тему  [ 4 сообщения ] 
Автор Сообщение
 Заголовок сообщения: Измеренное быстродействие
СообщениеДобавлено: Чт дек 06, 2007 9:14 am 
Не в сети

Зарегистрирован: Ср дек 05, 2007 1:04 pm
Сообщения: 0
Интересует сильно вопрос быстродействия.

В разделе "Технические данные CoDeSys SP" измеренное быстродействие у контроллеров Hitachi SH почти в 2.5 раза уступает ARM-у. и это не смотря на все примочки у SH - быструю внутреннюю шину и суперскалярную архитектуру.

На что тут грешить, на используемый в CoDeSys генератор машинного кода (неоптимальность сгенеренного файла проекта), реализацию самого ядра или используемый для теста SH один из слабых в линейке Hitachi?
(Запускали тесты на SH2 - производительность уж точно не уступает ARM, а то и повыше при тех же тактовых частотах)

В общем, сомнения одолевают нас! Помогите разобраться.


Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: Чт дек 13, 2007 3:37 pm 
Не в сети
Site Admin

Зарегистрирован: Ср июл 20, 2005 2:32 pm
Сообщения: 153
В этих технических документах приведены данные по контроллеру в целом, а не только по процессору. Очень сильно быстродействие зависит от того, как подключена память, как сделана подсистема ввода/вывода, какая ОС установлена, что работает параллельно и др. и пр. Процессор тут не является самым узким местом. Указанные величины носят оценочный характер. По ним можно грубо прикинуть, что в принципе можно получить.
На сегодняшний день самые популярные процессоры среди изготовителей оборудования с CoDeSys имеют ядро ARM и PowerPС. Обычно выбор определяет цена, доступность и в первую очередь наличие у разработчиков соответствующего опыта. С SH никаких проблем нет, просто так сложилось исторически. Возможно, вашими усилиями на нем будет сделан самый лучший и самый популярный контроллер с CoDeSys :D


Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: Пт дек 14, 2007 9:49 am 
Не в сети

Зарегистрирован: Ср дек 05, 2007 1:04 pm
Сообщения: 0
Популярность ядра ARM, безусловно, сомнений не вызывает. Да и особенности реализации, как аппаратной, так и программной части, естественно, вносят наибольший вклад в быстродействие. Более медленная память и богатство обслуживаемой перефирии существенно скажутся на быстродействии. Но в характеристиках быстродействия, если я правильно понимаю, время выполнения 1000 лог. операций не есть время программного цикла при выполнении 1000 операций. Для PLC это разные вещи, и время тут может отличаться существенно! Или я не правильно трактую представленную информацию?
Хотелось бы, конечно, сравнивать быстродействие при прочих равных (память, периферия, софт системы I/O). А тут основным показателем является встроенный компилятор CoDeSys. Ведь при разработке PLC я буду использовать для компиляции именно компиллер той платформы, которую выберу я. А вот исполнимый код программы уже реализуется встроенным компилятором CoDeSys. Вряд ли одним компилятором можно окучить все платформы сразу, это мы понимаем. Скорее всего он будет оптимален для нескольких, и поддерживать остальные на приемлемом уровне.
Вот и хочется сделать выбор в пользу Наибыстрейшего :D

Так что в общем информация обнадеживает. Спасибо за разъяснение.


Вернуться к началу
 Заголовок сообщения:
СообщениеДобавлено: Пт дек 14, 2007 1:18 pm 
Не в сети
Site Admin

Зарегистрирован: Ср июл 20, 2005 2:32 pm
Сообщения: 153
Все верно.
* как померить? Частотомером по переключению выхода ПЛК не померить столь малые величины, тут задержки всего канала подключатся - ерунда будет. Поэтому мерим программно. Конечно, не 1000 команд, а гораздо больше, чтобы можно было точно померить стандартными таймерами МЭК. Затем вычитаем время пустых циклов, делим на число команд и получаем усредненное время выполнения 1000 шт. Естественно во время работы идут прерывания, работает ОС. Поэтому получаем общие показатели быстродействия, зависящие от многих факторов кроме процессора.
* при отладке компиляторов используются некие готовые эволюционные платы. Естественно они сделаны разными фирмами очень по-разному для разных процессоров. Что на них получено то и есть. Никто не ставил цели сделать их однотипными для корректного сравнения процессоров.
* все компиляторы в CoDeSys делаются с нуля с учетом специфики данного процессора (точнее процессорного семейства). Реализация стандартных МЭК компонентов и операторов включена в систему исполнения. Практически получается что прикладная МЭК программа большую часть времени выполняет именно их. Код, генерируемый CoDeSys, играет роль связки. (Типовая МЭК программа строится путем соединения готовых блоков). Поэтому очень важно какой компилятор Си использует изготовитель контроллера при создании системы исполнения. Если он не умеет использовать расширенные возможности выбранного процессора, то и прикладная программа будет работать соот-но.
* 1000 логических IL команд = полная ерунда. Это абсолютно не говорит о скорости работы в системах непрерывного регулирования, управления движением (fpu двойной точности), скорости ввода/вывода и др. Поэтому PLCopen разработан проект стандарта по измерению быстродействия ПЛК, который позволит проводить адекватное сравнение. Компания 3S прииняла в этом самое активнейшее участие. Первая практическая реализация этих тестов уже сделана в CoDeSys в виде дополнительного компонента (автоматический генератор тестов). Остается надеяться, что этот стандарт найдет широкое применение. Подробнее об этом см. статью Виталиса Нейфельда в журнале Пром. АСУ и контроллеры N11 2007.


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 4 сообщения ] 

Часовой пояс: UTC+01:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB