Cómo generar un archivo .xst desde la línea de comandos + Xilinx-ISE

0

Estoy tratando de aprender cómo generar archivos de bits desde la línea de comandos. ¿Hay una manera de generar el archivo de script .xst desde las herramientas de línea de comandos? Solo puedo encontrar una mención de que sea algo que la GUI genera automáticamente.

Para agregar algo de contexto, compilo y genero un archivo de bits para un diseño simple en la GUI, luego uso la herramienta 'Ver registro de línea de comandos' para generar los comandos que usó la herramienta. Luego use "Archivos de proyecto de limpieza". Solo intento ejecutar los mismos comandos manualmente desde la línea de comandos. El primer comando es:

xst -ifn "C:/Users/Documents/XilinxProjects/SingleItemTest/item.xst" -ofn "C:/Users/Documents/XilinxProjects/SingleItemTest/item.syr" 

Lo que me da:

ERROR:Xst:427 - Entry File C:/Users/Documents/XilinxProjects/SingleItemTest/item.xst not found
    
pregunta nhoughto

1 respuesta

1

Nuestra PoC-Library puede ejecutar Xilinx XST desde la línea de comandos a través de Python3. Estamos utilizando archivos de plantilla para XST, porque cada dispositivo de destino puede tener otras opciones de XST.

Aquí hay un archivo * .xst para una ejecución XST de 7 Series:

set -xsthdpdir "xst"
run
-ifn {prjFile}
-use_new_parser {UseNewParser}
-ifmt {InputFormat}
-ofn {OutputName}
-ofmt {OutputFormat}
-p {Part}
-top {TopModuleName}
-opt_mode {OptimizationMode}
-opt_level {OptimizationLevel}
-power {PowerReduction}
-iuc {IgnoreSynthesisConstraintsFile}
-uc {SynthesisConstraintsFile}
-keep_hierarchy {KeepHierarchy}
-netlist_hierarchy {NetListHierarchy}
-rtlview {GenerateRTLView}
-glob_opt {GlobalOptimization}
-read_cores {ReadCores}
-sd {SearchDirectories}
-write_timing_constraints {WriteTimingConstraints}
-cross_clock_analysis {CrossClockAnalysis}
-hierarchy_separator {HierarchySeparator}
-bus_delimiter {BusDelimiter}
-case {Case}
-slice_utilization_ratio {SliceUtilizationRatio}
-bram_utilization_ratio {BRAMUtilizationRatio}
-dsp_utilization_ratio {DSPUtilizationRatio}
-lc {LUTCombining}
-reduce_control_sets {ReduceControlSets}
-fsm_extract {FSMExtract}
-fsm_encoding {FSMEncoding}
-safe_implementation {FSMSafeImplementation}
-fsm_style {FSMStyle}
-ram_extract {RAMExtract}
-ram_style {RAMStyle}
-rom_extract {ROMExtract}
-shreg_extract {ShRegExtract}
-rom_style {ROMStyle}
-auto_bram_packing {AutoBRAMPacking}
-resource_sharing {ResourceSharing}
-async_to_sync {ASyncToSync}
-use_dsp48 {UseDSP48}
-iobuf {IOBuf}
-max_fanout {MaxFanOut}
-bufg {BufG}
-register_duplication {RegisterDuplication}
-register_balancing {RegisterBalancing}
-optimize_primitives {OptimizePrimitives}
-use_clock_enable {UseClockEnable}
-use_sync_set {UseSyncSet}
-use_sync_reset {UseSyncReset}
-iob {PackIORegistersIntoIOBs}
-equivalent_register_removal {EquivalentRegisterRemoval}
-slice_utilization_ratio_maxmargin {SliceUtilizationRatioMaxMargin}

Fuente: enlace

    
respondido por el Paebbels

Lea otras preguntas en las etiquetas