exponenta event banner

dlhdl.Класс ProcessorConfig

Пакет: dlhdl

Настройка пользовательского процессора глубокого обучения

Описание

Используйте dlhdl.ProcessorConfig для настройки пользовательского процессора, который затем передается в dlhdl.buildProcessor для создания пользовательского процессора глубокого обучения.

Создание

dlhdl.ProcessorConfig создает пользовательский объект конфигурации процессора, который можно использовать для задания параметров процессора. Затем параметры процессора используются dlhdl.buildProcessor класс для создания и создания кода для пользовательского процессора глубокого обучения.

dlhdl.ProcessorConfig(Name,Value) создает пользовательский объект конфигурации процессора с дополнительными параметрами, заданными одним или несколькими аргументами «имя-значение».

Свойства

развернуть все

Свойства системного уровня

Имя инструмента синтеза, указанное как символьный вектор.

Пример: Xilinx Vivado

Укажите имя семейства микросхем целевого устройства в качестве символьного вектора

Пример: 'Zynq'

Укажите целевую частоту платы в МГц.

Пример: 220

Укажите имя целевой платы в виде символьного вектора.

Пример: 'Xilinx Zynq ZC706 evaluation kit'

Укажите имя битового потока, конфигурация процессора которого должна быть получена в виде символьного вектора.

Пример: Bitstream, zcu102 _ single

Модуль обработки conv Свойства

Этот параметр представляет собой число параллельных потоков ядра свертки 3 на 3, которые являются частью conv модуль в пределах dlhdl.ProcessorConfig объект.

Этот параметр является матрицей 3D, представляющей размер входного изображения, ограниченный conv размер BRAM модуля в пределах dlhdl.ProcessorConfig объект.

Этот параметр является матрицей 3D, представляющей размер выходного изображения, ограниченный conv размер BRAM модуля в пределах dlhdl.ProcessorConfig объект.

Этот параметр представляет собой положительное целое число, представляющее максимальный размер входного и выходного элемента в составе conv модуль в пределах dlhdl.ProcessorConfig объект.

Этот параметр представляет собой символьный вектор, представляющий тип данных ядра модуля.

Модуль обработки fc Свойства

Этот параметр представляет собой число параллельных потоков fc MAC, являющихся частью fc модуль в пределах dlhdl.ProcessorConfig объект.

Этот параметр представляет собой целое число без знака, представляющее размер оперативной памяти кэша, ограниченный значением fc размер BRAM модуля в пределах dlhdl.ProcessorConfig объект.

Этот параметр представляет собой целое число без знака, представляющее размер оперативной памяти кэша, ограниченный значением fc размер BRAM модуля в пределах dlhdl.ProcessorConfig объект.

Этот параметр представляет собой символьный вектор, представляющий тип данных ядра модуля.

Модуль обработки adder Свойства

Этот параметр представляет собой целое число без знака, представляющее размер оперативной памяти кэша, ограниченный значением adder размер BRAM модуля в пределах dlhdl.ProcessorConfig объект.

Этот параметр представляет собой целое число без знака, представляющее размер оперативной памяти кэша, ограниченный значением adder размер BRAM модуля в пределах dlhdl.ProcessorConfig объект.

Этот параметр представляет собой символьный вектор, представляющий тип данных ядра модуля.

Примеры

Создать ProcessorConfig Объект

Создайте пользовательскую конфигурацию процессора. Сохранить ProcessorConfig объект в hPC.

hPC = dlhdl.ProcessorConfig

Результат:

hPC = 

                    Processing Module "conv"
                            ConvThreadNumber: 16
                             InputMemorySize: [227  227    3]
                            OutputMemorySize: [227  227    3]
                            FeatureSizeLimit: 2048
                              KernelDataType: 'single'

                      Processing Module "fc"
                              FCThreadNumber: 4
                             InputMemorySize: 25088
                            OutputMemorySize: 4096
                              KernelDataType: 'single'

                   Processing Module "adder"
                             InputMemorySize: 40
                            OutputMemorySize: 40
                              KernelDataType: 'single'

                     System Level Properties
                              TargetPlatform: 'Xilinx Zynq UltraScale+ MPSoC ZCU102 Evaluation Kit'
                             TargetFrequency: 200
                               SynthesisTool: 'Xilinx Vivado'
                             ReferenceDesign: 'AXI-Stream DDR Memory Access : 3-AXIM'
                     SynthesisToolChipFamily: 'Zynq UltraScale+'
                     SynthesisToolDeviceName: 'xczu9eg-ffvb1156-2-e'
                    SynthesisToolPackageName: ''
                     SynthesisToolSpeedValue: ''

Изменение свойств ProcessorConfig Объект

Изменение TargetPlatform, SynthesisTool, и TargetFrequency свойства hPC.

hPC.TargetPlatform = 'Xilinx Zynq ZC706 evaluation kit';
>> hPC.SynthesisTool = 'Xilinx Vivado';
>> hPC.TargetFrequency = 180;
hPC

Результат:

hPC = 

                    Processing Module "conv"
                            ConvThreadNumber: 16
                             InputMemorySize: [227  227    3]
                            OutputMemorySize: [227  227    3]
                            FeatureSizeLimit: 2048
                              KernelDataType: 'single'

                      Processing Module "fc"
                              FCThreadNumber: 4
                             InputMemorySize: 25088
                            OutputMemorySize: 4096
                              KernelDataType: 'single'

                   Processing Module "adder"
                             InputMemorySize: 40
                            OutputMemorySize: 40
                              KernelDataType: 'single'

                     System Level Properties
                              TargetPlatform: 'Xilinx Zynq ZC706 evaluation kit'
                             TargetFrequency: 180
                               SynthesisTool: 'Xilinx Vivado'
                             ReferenceDesign: 'AXI-Stream DDR Memory Access : 3-AXIM'
                     SynthesisToolChipFamily: 'Zynq UltraScale+'
                     SynthesisToolDeviceName: 'xczu9eg-ffvb1156-2-e'
                    SynthesisToolPackageName: ''
                     SynthesisToolSpeedValue: ''

Восстановить ProcessorConfig объект для zcu102_single bitstream

Получить ProcessorConfig объект для zcu102_single битовый поток и сохранить объект в hPC.

hPC = dlhdl.ProcessorConfig('Bitstream','zcu102_single')

Результат:

hPC = 

                    Processing Module "conv"
                            ConvThreadNumber: 16
                             InputMemorySize: [227  227    3]
                            OutputMemorySize: [227  227    3]
                            FeatureSizeLimit: 2048
                              KernelDataType: 'single'

                      Processing Module "fc"
                              FCThreadNumber: 4
                             InputMemorySize: 25088
                            OutputMemorySize: 4096
                              KernelDataType: 'single'

                   Processing Module "adder"
                             InputMemorySize: 40
                            OutputMemorySize: 40
                              KernelDataType: 'single'

                     System Level Properties
                              TargetPlatform: 'Xilinx Zynq UltraScale+ MPSoC ZCU102 Evaluation Kit'
                             TargetFrequency: 220
                               SynthesisTool: 'Xilinx Vivado'
                             ReferenceDesign: 'AXI-Stream DDR Memory Access : 3-AXIM'
                     SynthesisToolChipFamily: 'Zynq UltraScale+'
                     SynthesisToolDeviceName: 'xczu9eg-ffvb1156-2-e'
                    SynthesisToolPackageName: ''
                     SynthesisToolSpeedValue: ''
Представлен в R2020b