dlhdl.ProcessorConfig class

Пакет: dlhdl

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

Описание

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

Создание

The 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 Свойства

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

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

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

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

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

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

Этот параметр является беззнаковым целым числом, представляющим размер BRAM кэша, ограниченный 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 bitstream и сохраните объект в 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