Создайте и справьтесь с выполнением задачи в модели Simulink
SoC Blockset / Выполнение Задачи Процессора
Блок Task Manager моделирует выполнение программных задач, когда они, как ожидали бы, будут вести себя на процессоре SoC. С Диспетчером задач можно добавить и удалить задачи из модели, которая может или управляться таймером или событийно-управляемая. Задачи могут быть представлены в модели как уровни для управляемых таймером задач, или подсистемы вызова функций, для событийно-управляемых задач, содержали в одном блоке Model. Диспетчер задач выполняет отдельные задачи на основе их параметров, таких как период, длительность, триггер, приоритет, или ядро процессора, и комбинация той задачи с состоянием других задач и их приоритеты в под управлением модели.
Блок Task Manager не может использоваться в модели, на которую ссылаются. Для получения дополнительной информации о моделях, на которые ссылаются смотрите блок Model.
Блок Task Manager предоставляет три метода, чтобы задать длительность задачи в симуляции:
Вероятностная модель длительности задачи задана в маске блока.
От записи файла данных или предыдущей симуляции задачи или от задачи на устройстве SoC.
Входные порты на блоке, который можно соединить с более динамическими моделями длительности задачи.
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 в диалоговой маске блока.
Task1Event
— Уведомление о событииУведомление о событии, которое инициировало связанную событийно-управляемую задачу. Порт Task1Event
получает уведомление о событии от блока Memory Channel или из блока IO Data Source как сущность. Для получения дополнительной информации о сущностях смотрите Сущности в Модели SoC Blockset.
Чтобы показать порт
, затем Task1Event
нужно было установить Type на Task1
Event-driven
.
Типы данных: rteEvent
Task1Dur
— Длительность задачиПоложительный сигнал значения, который задает длительность выполнения задачи в настоящее время. Для получения дополнительной информации об определении длительности задачи смотрите Длительность Задачи.
Чтобы включить этот порт, установите параметр 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 диалоговой маски блока.
Добавление
Добавьте задачуДобавьте задачу в блок Task Manager. Во время развертывания каждая задача инкапсулируется как поток выполнения в сгенерированном коде. Свойства потока взяты из параметров Main для той задачи. Во время симуляции задача использует комбинацию Main и параметров Simulation для той задачи.
Удаление
Удалите существующую задачуУдалите задачу из Диспетчера задач.
Чтобы включить этот параметр, задайте по крайней мере две задачи.
Имя
Имя задачиTask1
(значение по умолчанию) | вектор символовУникальное имя задачи. Имя задачи должно только содержать алфавитно-цифровые символы и символы нижнего подчеркивания.
Ввод
Инициируйте тип задачиTimer-driven
(значение по умолчанию) | Event-driven
Задайте задачу, как управляется таймером или событийно-управляемый. Для получения дополнительной информации о таймере - и событийно-управляемые задачи, смотрите Управляемую Таймером Задачу и Событийно-управляемые Задачи, соответственно.
Чтобы включить этот параметр, установите Type
на Timer-driven
.
Period
— TimerPeriod0.1
(значение по умолчанию) | положительная скалярная величинаЗадайте триггерный период времени для управляемых таймером задач.
Core
— Ядро процессора, чтобы выполнить задачу0
(значение по умолчанию) | неотрицательное целое числоЗадайте количество ядра процессора, где задача выполняется. Для получения дополнительной информации о выборе ядер и базовой визуализации выполнения, смотрите Многожильное Выполнение и Базовую Визуализацию.
Priority
— Приоритет задачи в планировщике10
(значение по умолчанию) | положительное целое числоЗадайте приоритет планировщиков для событийно-управляемой задачи между 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
Задайте источник информации о синхронизации для выполнения задачи.
Диалоговое окно-
Используйте нормально распределенную вероятностную модель с Mean, Deviation, Min и Max, заданным в диалоговой маске блока.
Input port
– Когда установлено от Входного порта, входной порт блока динамически задает длительность выполнения.
Record task execution statistics
– Используйте нормально распределенную вероятностную модель со средним значением и отклонением, обеспеченным в файле, заданном File name.
Для получения дополнительной информации о конфигурировании длительности задачи смотрите Длительность Задачи.
Добавление
Добавляет распределениеДобавляет распределение к набору нормальных распределений, который генерирует длительность выполнения. Для получения дополнительной информации о конфигурировании длительности задачи смотрите Длительность Задачи.
Только максимальные пять дистрибутивов могут быть присвоены одной задаче.
Удаление
Удалите распределениеУдалите распределение из набора нормальных распределений.
Percent
— Вероятность распределения100
(значение по умолчанию) | положительная скалярная величинаЗадайте вероятность каждого нормального распределения. Взвешенная сумма Percent нормальных распределений определяет вероятность длительности задачи. Для получения дополнительной информации о конфигурировании длительности задачи смотрите Длительность Задачи.
Сумма Percent для всех дистрибутивов в одной задаче должна равняться 100
.
Среднее значение
Средняя длительность задачи в симуляции1e-06
(значение по умолчанию) | положительная скалярная величинаЗадайте среднюю длительность задачи во время симуляции задачи. Моделируемая длительность задачи использует нормальное распределение с заданным Средним значением и значениями параметров SD как приближение первого порядка поведения задачи. Для получения дополнительной информации о конфигурировании длительности задачи смотрите Длительность Задачи.
SD
— Стандартное отклонение длительности задачи в симуляции0
(значение по умолчанию) | положительная скалярная величинаЗадайте длительность стандартного отклонения задачи во время симуляции задачи. Моделируемая длительность задачи использует нормальное распределение с заданным Средним значением и SD как приближение первого порядка поведения задачи. Для получения дополнительной информации о конфигурировании длительности задачи смотрите Длительность Задачи.
Min
Нижний предел длительности задачи1e-06
(значение по умолчанию) | положительная скалярная величинаНижний предел распределения длительности задачи. Для получения дополнительной информации о конфигурировании длительности задачи смотрите Длительность Задачи.
Max
Верхний предел длительности задачи1e-06
(значение по умолчанию) | положительная скалярная величинаВерхний предел распределения длительности задачи. Для получения дополнительной информации о конфигурировании длительности задачи смотрите Длительность Задачи.
FileName
Файл, содержащий данные о планировании диагностикиДанные в этом файле задают значения параметров 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. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.