Создайте и справьтесь с выполнением задачи в модели Simulink
SoC Blockset / Выполнение Задачи Процессора
Блок Task Manager симулирует выполнение программных задач, когда они, как ожидали бы, будут вести себя на процессоре SoC. С Task Manager можно добавить и удалить задачи из модели, которая может или управляться таймером или событийно-управляемая. Задачи могут быть представлены в модели как уровни для управляемых таймером задач, или подсистемы вызова функций, для событийно-управляемых задач, содержали в одном блоке Model. Task Manager выполняет отдельные задачи на основе их параметров, таких как период, длительность, триггер, приоритет, или ядро процессора, и комбинация той задачи с состоянием других задач и их приоритеты в под управлением модели.
Блок Task Manager не может использоваться в модели, на которую ссылаются. Для получения дополнительной информации о моделях, на которые ссылаются смотрите блок Model.
Блок Task Manager предоставляет три метода, чтобы задать длительность задачи в симуляции:
Вероятностная модель длительности задачи задана в маске блока.
От записи файла данных или предыдущей симуляции задачи или от задачи на устройстве SoC.
Input port на блоке, который можно соединить с более динамическими моделями длительности задачи.
Task1
— Вызов функции от Task1Сигнал вызова функции, который может инициировать управляемые таймером и событийно-управляемые задачи, представленные как уровень или подсистемы вызова функций в блоке процессора Model, соответственно.
Для порта уровня от управляемой таймером подсистемы, чтобы показать на блоке Model, устанавливают Block Parameters> Main> Schedule rates и выбирают порты. Для порта вызова функции от событийно-управляемой подсистемы, содержавшейся в блоке Function-Call Subsystem, чтобы показать на блоке Model, включайте Inport в блок процессора Model, соединенный с триггерным портом вызова функции подсистемы. В Inport проверяйте Block Parameters> Signal Attributes> Output function call.
Task1
порт должен быть соединен или с портом вызова функции или с запланированным портом сигнала уровня на блоке Model.
Чтобы создать или удалить порт управляющего сигнала для задачи, добавьте или удалите задачу из блока Task Manager путем нажатия кнопок Add или Delete в диалоговой маске блока.
Task1
Событие
— Передайте уведомление о событииПорт сообщения, который инициировал связанную событийно-управляемую задачу. Task1Event
порт получает сообщение от блока Memory Channel или из блока IO Data Source. Для получения дополнительной информации о сообщениях смотрите Основанную на сообщении Коммуникацию (Simulink).
Показать
порт, затем Task1
Событие
должны были установить Type на Task1
Event-driven
.
Типы данных: rteEvent
Task1
Dur
— Длительность задачиПоложительный сигнал значения, который задает длительность выполнения задачи в настоящее время. Для получения дополнительной информации об определении длительности задачи смотрите Длительность Задачи.
Чтобы включить этот порт, установите параметр Specify task duration via на Input port
.
Типы данных: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
Enable task simulation
— Включите симуляцию длительности задачиon
(значение по умолчанию) | off
Включите или отключите симуляцию длительности задачи. Если вы очищаете этот параметр, задачи симулируют использование генератора вызова функции, наследовавшего их период от основного шага расчета модели для событийно-управляемых задач или от диалогового окна для управляемых таймером задач.
List of tasks
— Список задачTask1
(значение по умолчанию)Список задач сгенерирован блоком Task Manager. Каждая задача имеет набор параметров, перечисленных в Main и вкладках Simulation диалоговой маски блока.
Add
— Добавьте задачуДобавьте задачу в блок Task Manager. Во время развертывания каждая задача инкапсулируется как поток выполнения в сгенерированном коде. Свойства потока взяты из параметров Main для той задачи. В процессе моделирования задача использует комбинацию Main и параметров Simulation для той задачи.
Delete
— Удалите существующую задачуУдалите задачу из Task Manager.
Чтобы включить этот параметр, задайте по крайней мере две задачи.
Name
— Имя задачиTask1
(значение по умолчанию) | вектор символовУникальное имя задачи. Имя задачи должно только содержать алфавитно-цифровые символы и символы нижнего подчеркивания.
Type
— Инициируйте тип задачиTimer-driven
(значение по умолчанию) | Event-driven
Задайте задачу, как управляется таймером или событийно-управляемый. Для получения дополнительной информации о таймере - и событийно-управляемые задачи, смотрите Управляемую Таймером Задачу и Событийно-управляемые Задачи, соответственно.
Чтобы включить этот параметр, установите Type
к Timer-driven
.
Period
TimerPeriod
(значение по умолчанию) | положительная скалярная величинаЗадайте триггерный период времени для управляемых таймером задач.
Core
— Ядро процессора, чтобы выполнить задачу
(значение по умолчанию) | неотрицательное целое числоЗадайте количество ядра процессора, где задача выполняется. Для получения дополнительной информации о выборе ядер и базовой визуализации выполнения, смотрите Многожильное Выполнение и Базовую Визуализацию.
Priority
— Приоритет задачи в планировщике
(значение по умолчанию) | положительное целое числоЗадайте приоритет планировщиков для событийно-управляемой задачи между 1
и 99
. Более высокие приоритетные задачи могут вытеснить более низкие приоритетные задачи, и наоборот. Область значений приоритета задач ограничивается аппаратными атрибутами. Для получения дополнительной информации о приоритете задач смотрите Приоритет задач и Вытеснение.
Чтобы включить этот параметр, установите Type
к Event-driven
.
Drop tasks that overrun
— Пропустите задачи, которые переполняютсяoff
(значение по умолчанию) | on
Выберите этот параметр, чтобы обеспечить задачи понизиться, вместо того, чтобы нагнать, после экземпляра переполнения. Для получения дополнительной информации о переполнениях задачи смотрите Переполнения Задачи и Контрмеры.
Play recorded task execution sequence
— Включите воспроизведение из файлаВыберите этот параметр для блока Task Manager, чтобы воспроизвести записанные данные о выполнении, обеспеченные от заданного параметра Имени файла. Для получения дополнительной информации о воспроизведении выполнения задачи смотрите, что Воспроизведение Выполнения Задачи использует Записанные Данные.
Specify task duration via
— Источник времени выполнения задачиDialog
(значение по умолчанию) | Input port
| Record task execution statistics
Задайте источник времени выполнения для выполнения задачи.
Dialog
- Используйте нормально распределенную вероятностную модель с Mean, Deviation, Min и Max, заданным в диалоговой маске блока.
Input port
– Когда установлено от Input port, входной порт блока динамически задает длительность выполнения.
Record task execution statistics
– Используйте нормально распределенную вероятностную модель со средним значением и отклонением, обеспеченным в файле, заданном File name.
Для получения дополнительной информации о конфигурировании длительности задачи смотрите Длительность Задачи.
Add
— Добавляет распределениеДобавляет распределение к набору нормальных распределений, который генерирует длительность выполнения. Для получения дополнительной информации о конфигурировании длительности задачи смотрите Длительность Задачи.
Только максимальные пять распределений могут быть присвоены одной задаче.
Delete
— Удалите распределениеУдалите распределение из набора нормальных распределений.
Percent
— Вероятность распределения
(значение по умолчанию) | положительная скалярная величинаЗадайте вероятность каждого нормального распределения. Взвешенная сумма Percent нормальных распределений определяет вероятность длительности задачи. Для получения дополнительной информации о конфигурировании длительности задачи смотрите Длительность Задачи.
Сумма Percent для всех распределений в одной задаче должна равняться 100
.
Mean
— Средняя длительность задачи в симуляции1e-06
(значение по умолчанию) | положительная скалярная величинаЗадайте среднюю длительность задачи в процессе моделирования задачи. Симулированная длительность задачи использует нормальное распределение с заданным Средним значением и значениями параметров SD как приближение первого порядка поведения задачи. Для получения дополнительной информации о конфигурировании длительности задачи смотрите Длительность Задачи.
SD
— Стандартное отклонение длительности задачи в симуляции
(значение по умолчанию) | положительная скалярная величинаЗадайте длительность стандартного отклонения задачи в процессе моделирования задачи. Симулированная длительность задачи использует нормальное распределение с заданным Средним значением и SD как приближение первого порядка поведения задачи. Для получения дополнительной информации о конфигурировании длительности задачи смотрите Длительность Задачи.
Min
— Нижний предел длительности задачи1e-06
(значение по умолчанию) | положительная скалярная величинаНижний предел распределения длительности задачи. Для получения дополнительной информации о конфигурировании длительности задачи смотрите Длительность Задачи.
Max
— Верхний предел длительности задачи1e-06
(значение по умолчанию) | положительная скалярная величинаВерхний предел распределения длительности задачи. Для получения дополнительной информации о конфигурировании длительности задачи смотрите Длительность Задачи.
File name
— Файл, содержащий данные о планировании диагностикиДанные в этом файле задают значения параметров SD и Mean. То, когда Игра записала параметр последовательности выполнения задачи, выбрано, заданный файл CSV обеспечивает явную синхронизацию выполнения задачи. Файл CSV содержит диагностические данные планировщика задач, ранее зарегистрированного от аппаратной платы. Для получения дополнительной информации о конфигурировании длительности задачи смотрите Длительность Задачи.
Чтобы включить этот параметр, установите параметр Specify task duration via на Recorded task execution statistics
.
Чтобы автоматически сгенерировать код С для вашего проекта и выполниться на устройстве SoC, используют инструмент SoC Builder. Смотрите Генерируют Проект SoC. У вас должна быть лицензия Embedded Coder®, чтобы сгенерировать и выполнить код С для вашего устройства SoC.
Задачи в блоке Task Manager выполняются как потоки в сгенерированном коде. Параметры задачи в блоке Task Manager задают приоритет и ядро выполнения потока.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.