Задайте, как выровнять типы данных входных данных для формирования uint8
вектор выводится в байтах. Выравнивание может происходить на 1, 2, 4 или 8-байтовых контурах. На основе значения выравнивания каждое значение данных сигнала начинается с кратных значений выравнивания. Алгоритмы выравнивания для каждого элемента в векторе выхода начинаются с байта контура заданного значением выравнивания. Выравнивание байтов устанавливает контуры относительно начальной точки вектора.
Чтобы получить самую плотную упаковку без отверстий между типами данных в различных комбинациях типов данных, выберите 1
.
Вы можете иметь несколько типов данных различной длины. В таких случаях 2-байтовое выравнивание может привести к 1-байтовым погрешностям между uint8
или int8
значения и другой тип данных. В реализации пакета блок копирует данные в буфер выходных данных 1 байт за раз.
Например, предположим, что вы задаете этот массив ячеек для Input port data types (cell array):
{'uint32','uint32','uint16','double','uint8','double','single'}
Предположим, что вы Byte alignment на 2
. Каждое новое значение начинается с 2 байтов от предыдущего контура данных. Когда сигналы являются скалярными значениями,:
Первое значение сигналов в векторе начинается с 0 байт.
Второе значение сигналов начинается с 2 байтов.
Третье значение сигналов начинается с 4 байтов.
Четвертое значение сигналов начинается с 6 байтов.
Пятое значение сигналов начинается с 8 байтов.
Шестое значение сигналов начинается с 10 байт
Седьмое значение сигналов начинается с 12 байтов.
Алгоритм упаковки оставляет 1-байтовую погрешность между uint8
значение данных и двойное значение.