Lista de sufijos de archivos Xilinx (para ISE)

15

Le pedí a Xilinx una lista así, pero no tienen una lista completa. Deseo asegurarme de que todos los archivos de entrada estén en control de código fuente y todos los archivos de salida no. Esto es con 13.1-13.2 con ISE y PlanAhead

Parte de la información que proporcionan es la lista de archivos de salida PAR y los archivos de ISE Design Suite en la Guía del usuario de las herramientas de línea de comandos, la lista de archivos fuente de here .

Edita el 19 de agosto de 2011: mencioné 13.2 y PlanAhead Edición: 7 de septiembre de 2011: se eliminó la referencia de EDK ya que algunos respondieron

    
pregunta Brian Carlton

4 respuestas

9

Aquí está el comienzo de una wiki de la comunidad para los sufijos. Estoy de acuerdo con @David Kessner. Xilinx también tiene esta lista del documento de herramientas de línea de comandos y publicó una lista aquí y here (para la primera versión de su software).

File Suffix,Input or output,description
asy,output,symbol file
awc,,
bat,input,batch file. Some are generated by PlanAhead
bgn,,bitgen report file
bin,,
bit,output,FPGA bitstream
blc,output,NGCBuild report file
bld,output,build report from NGDBuild
bmm,,blockram files
bsb,,
cdc,input,ChipScope file 
cel,,
cfi,input and output,provides info to Support for Platform Flash PROM Design Revisioning
cgc,,ChipScope file
cgp,,Coregen project file
cmd,,
cmd_log,output,log file
cpj,,
css,output,HTML file
csv,output,pin list
ctj,,trigger file for ChipScope
dat,,
data,,
dbg
do,input,simulation script
drc,output,design rule check
edf,output,EDIF netlist
edif,,see edf
edn,,an EDIF file suffix
f,,used for functional simulation
filter,,used in ISE to filter messages
gise,output,"contain generated data, such as process status" per http://www.xilinx.com/support/documentation/sw_manuals/xilinx11/ise_c_understanding_ise_project.htm
hdx,,used in PlanAhead for partitions
html,,report file
ipf,input,impact (programmer) project
isc,output,Configuration data in IEEE 1532 format.
jobs,,
js,output,JavaScript for some HTML report
lfp,,
ll,output, Readback information; created by bitgen
log,output,log file
lso,input,library search order input  to XST.
lst,,
make,outout,from EDK tools
map,output,report file
mcs,output,prom file
mhs,,(EDK) Defines system
mrp,output,report file from map
mhs,,(EDK)
mif,input,memory initalization
mpd,,MicroProcessor Definition (EDK)
msd,output,Mask information from bitgen; used for verification
msk,output,mask information from bitgen; related to .bit
ncd,output,Native Circuit Description; after map process; used as bitgen input
ncf,,constraints for a core
new,,
ngc,output,used by NGDbuild
ngc_xst,output,
ngd,output,
ngo,output,intermediate netlist from NGDBuild
ngr,output,RTL schematic generated from XST
nky,,encryption key file, used by bitgen
nlf,output,ASCII NetGen NetGen log file that contains information on the NetGen run
nmc,,physical macros; used by NGDBuild
opt,,EDK generation options
pad,output,list of I/O pads/pins
par,output,Place and route log
pcf,,physical constraints file; used by bitgen
pdf,output,Acrobat document for core
ppr,,PlanAhead project file
prj,input,project file
prm,,PROM file generation control file
prn,output,exported ChipScope .csv file. Often lacks that suffix.
psg,output,PlanAhead strategy file
ptxw,,twx file which project navigator uses for parsing 
pwr,,
pxml,,associated with partitions
rba,output,read back file created by bitgen; binary
rbb,output,read back file created by bitgen; ascii
rbd,output,read back file created by bitgen; data only
rbt,output,bit file in different format
restore,,
rtf,output,Documentation
runs,,directory in PlanAhead
rst,,
scr,,XST synthesis script
sdbl,,
sdbx,,Installation files
sdc,input,timing file [thanks @trondd]
sedif
sh,input,Linux shell script. Some are generated by PlanAhead
srcs,,directory in PlanAhead
srp,output,Synthesis log file
stx,,
sym,output,Core symbol file
tsi,,
txt,output,log file
twr,output,timing report
twx,output,
ucf,input,constraints file
unroutes,output,report file
urf,input,User Rules File; used by NGDBuild
ut,,
v,input or output,Verilog file for code. Output of coregen
vdbl,,
vbdx,,
veo,output,Verilog timing simulation file
vhd,input or output,input source VHDL file; output from Coregen
vho,output,VHDL timing simulation.
wcfg,input,ISim waveform configuration file
xaw,output,generated by Coregen
xbcd,,    
xco,,use by Coregen to regenerate cores. Contains core's parameters
xdc,,
xdl,,
xise,,created by coregen
xlsx,,some report
xml,,some are output reports
xmp,,(EDK)
xmsgs,output,log file
xpa,,
xpe,,
xpi,,
xreport,output,report file
xrpt,output,report file, others are inputs to PlanAhead
xsf,,symbol file for Mentor
xst,output,associated with HTML file?
xsl,,
xst,,
unroutes,output,report file
wbd,output,Waveform Database
wxbt,,
y,,
    
respondido por el Brian Carlton
11

Respuesta rápida: no existe tal lista en ninguna parte.

Respuesta larga: podría decirte, pero entonces estaría equivocado. He estado utilizando las herramientas Xilinx durante los últimos 15 años y cada vez que salen con una nueva versión (o incluso un nuevo paquete de servicios) las cosas cambian. A veces, incluso simplemente cambiando varias opciones XST / MAP / PAR causará que se generen nuevos archivos. Así que incluso si te diera una lista, probablemente estaría desactualizada o simplemente fuera de lugar.

He creado mis propios makefiles para compilar mis FPGA (no estoy usando el entorno GUI de ISE), y está bastante bien documentado cuáles son los archivos de entrada a las distintas herramientas (XST, MAP, etc.). No se requiere todo lo demás y, por lo tanto, no es necesario ingresar al sistema de control de origen. Mis archivos make tienen una opción de "limpieza" que elimina todos los archivos adicionales. Entonces, cuando Xilinx lanza una nueva versión, simplemente la compilo de nuevo y la "limpia". Cualquier archivo que permanezca (y obviamente no es algo que necesito) se considera basura, y agrego esos archivos a la lista de "limpieza" de cosas para eliminar.

    
respondido por el user3624
2

He creado un proyecto en Github llamado X-MimeTypes que tiene como objetivo proporcionar una base que la comunidad pueda utilizar de una vez por todas, crear una base de conocimientos adecuada sobre los tipos de archivos utilizados en la industria EDA.

Este enfoque tiene algunas ventajas sobre la simple lista de todos los archivos conocidos en una lista como se hizo en la respuesta anterior:

  • Está en Github, por lo tanto está abierto y su versión controlada para que puedas ver un historial completo.
  • El formato utilizado coincide con el de la base de datos mimetype de OpenDesktop. Una vez más, hay muchas ventajas en el uso de este enfoque.

    • Está probado.
    • Se puede extender. Las extensiones actuales permiten que cada tipo se marque como generado o no. Muy útil para el control de versiones y las operaciones de limpieza, etc.
    • En Linux, puede agregar este archivo a la base de datos mime de su sistema y todos los programas reconocerán los tipos en el archivo.
    • Admite la capacidad de clasificar archivos mediante encabezados mágicos, etc. Un ejemplo de por qué es necesario es un archivo de configuración binario de Xilinx que termina con * .bin. La base de datos de tipo mime estándar define un archivo .bin como application / octet-stream , por lo que se manejará como un archivo binario normal y no se seleccionará como un archivo de configuración binario de Xilinx. La especificación de mimetype resuelve fácilmente este problema usando encabezados mágicos. Por lo tanto, una posible definición correcta de tipo MIME para un archivo .bin de Xilinx es:
  <mime-type type="application/vnd.xilinx.bitgen.binary_configuration_file">
    <comment xml:lang="en">Xilinx Binary Configuration File</comment>
    <glob pattern="*.bin"/>
    <magic priority="60">
      <match type="string" value="\xff\xff\xff\xff" offset="0"/>
    </magic>  
    <x:generated>true</x:generated>
  </mime-type>
  • Cualquiera puede archivar errores en el repositorio, clonarlo, etc.
  • No es un proveedor específico.

Se puede acceder a los tipos de mime EDA aquí .

Tal proyecto realmente requiere el poder de la multitud, por lo tanto, cada contribución pequeña hará que la base de datos sea más útil para muchos diseñadores FPGA que existen.

    
respondido por el Jaco Naude
1

Otra solución para ordenar los archivos de entrada de los archivos de salida es:

1) Construye el FPGA

2) importa todo en un sistema de control de versiones (por ejemplo, git init; git add.; git commit -m "init";)

3) vuelva a ejecutar la compilación FPGA

4) todos los archivos modificados ('estado de git') después de la segunda ejecución tienen más probabilidades de ser archivos de salida (inc. archivos de registro, ...) y los archivos de entrada no modificados una vez.

Esto es lo que hago cuando recibo un directorio o archivo zip con el mensaje "este es el proyecto, por favor, corríjalo ..."

    
respondido por el vermaete

Lea otras preguntas en las etiquetas