Список суфіксів файлів Xilinx (для ISE)


15

Я попросив Xilinx про такий список, але у них немає повного списку. Я хочу переконатися, що всі вхідні файли знаходяться в контролі джерела, а всі вихідні файли - ні. Це з 13,1-13,2 з ISE та PlanAhead

Деяка інформація, яку вони надають, - це список вихідних файлів PAR та файли ISE Design Suite в Посібнику користувача Інструменти командного рядка, список вихідних файлів звідси .

Редагувати 19 серпня 2011 року: згадується 13.2 та редагувати PlanAhead 7 вересня 2011 року: видалено посилання EDK, оскільки деякі відповіли


1
Наскільки я знаю, вони рухаються писати з нуля всі програмні засоби, які вони вже є ... тому, ймовірно, такий список застаріває через півтора року
подвійноE

Ви не створюєте вхідні файли, а знаєте їхні назви та суфікси? Вам не потрібно знати назви вихідних файлів, щоб переконатися, що вхідні файли знаходяться в контролі джерела. Я не знайомий з вашим робочим процесом, тому це мене трохи бентежить.
Кевін Вермер

3
Більшість керування версіями працює на чорному списку, а не на принципі білого списку, щоб визначити, які файли є кандидатами на контроль версій. Наприклад, у Mercurial є .hgignoreфайл, який містить перелік регулярних виразів із зазначенням, які файли потрібно виключити. Subversion використовує властивість з ім'ям, svn:ignoreяке впливає лише на каталог, на який він встановлений. Таким чином, щоб інші користувачі не перевіряли весь смітник для збирання (що часто спричиняє зіткнення під час оновлень та злиття), ви повинні мати список суфіксів, які потрібно виключити .
Майк Десимоне

@Kevin Vermeer: ​​Не зовсім так. Є й інші утиліти, такі як CoreGen, які генерують деякі файли. І у них є і вихідні дані (наприклад, звіти), і входи (наприклад, настройки для генератора)
Брайан Карлтон,

Як @Arash зазначив, вони переписали своє програмне забезпечення у травні 2012 року, яке зараз називається Vivado press.xilinx.com/…
Брайан Карлтон

Відповіді:


12

Швидка відповідь: Такого списку немає ніде.

Довга відповідь: я міг би вам сказати, але тоді я помиляюся. Я використовую інструменти Xilinx протягом останніх 15 років і кожен раз, коли вони виходять з новою версією (або навіть новим пакетом обслуговування), речі змінюються. Іноді навіть просто зміна різних параметрів XST / MAP / PAR призведе до створення нових файлів. Тож навіть якщо я дав вам список, він, ймовірно, застарів або просто помилився.

Я створив власні файли для створення моїх FPGA (я не використовую графічне середовище ISE), і досить добре задокументовано, що таке вхідні файли до різних інструментів (XST, MAP тощо). Все інше не потрібно, і тому його не потрібно перевіряти в системі управління джерелами. Мої файли мають опцію "очистити", яка видаляє всі зайві файли. Тому коли Xilinx випускає нову версію, я просто перекомпілюю і "очищую". Будь-який файл, який залишається (і явно не є чимось мені потрібним), вважається небажаним, і я додаю ці файли до списку «очистити» речі, які потрібно видалити.


3
Так, це, на жаль, часто ВЕЛИЧЕЗНА проблема з інтеграцією фантазійних IDE в структуровану інженерну практику.
Кріс Страттон

1
@David Kessner Добрий пост. Будь-який шанс ви могли опублікувати один із своїх файлів?
Джим Клей

@JimClay Вибачте, але я не можу. Мало того, що мої файли є складнішими та заплутанішими для більшості людей, вони також зроблені для моєї роботи, і, таким чином, захищені авторським правом та ін.

9

Ось початок вікі спільноти для суфіксів. Я згоден з @David Kessner. Xilinx також має цей список із документа інструментарію командного рядка та опублікував список тут і тут (для версії програмного забезпечення для Earliers).

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,,

2
Файл sdc вказаний як вихідний, але зазвичай це вхідний файл до аналізатора синхронізації (TimeQuest у світі Altera). Файл, як правило, написаний від руки і тому повинен знаходитись у контролі версій.
trondd

2

Я створив проект на Github під назвою X-MimeTypes, який має на меті створити основу, яку спільнота може використати раз і назавжди, створити належну базу знань про типи файлів, що використовуються в галузі EDA.

Цей підхід має деякі переваги перед просто переліком усіх відомих файлів у списку, як це було зроблено у попередній відповіді:

  • Її на Github, таким чином, її відкритість і її версія контролюється, щоб ви могли переглянути повну історію.
  • Використовуваний формат відповідає формату mimetype в базі даних OpenDesktop. Знову ж таки, у використанні такого підходу є багато переваг.

    • Це доведено.
    • Його можна продовжити. Поточні розширення дозволяють позначати кожен тип як створений чи ні. Дуже корисно для контролю версій та операцій очищення тощо.
    • У Linux ви можете додати цей файл до бази даних mime вашої системи, і всі програми розпізнають типи у файлі.
    • Він підтримує можливість класифікувати файли за допомогою магічних заголовків тощо. Прикладом того, чому це потрібно, є двійковий файл конфігурації Xilinx, який закінчується * .bin. Стандартна база даних типу mime визначає .bin-файл як додаток / октет-потік , таким чином він буде оброблятися як звичайний бінарний файл і не буде сприйматися як файл бінарної конфігурації Xilinx. Специфікація mimetype легко вирішує цю проблему за допомогою магічних заголовків. Таким чином, можливим правильним визначенням mimetype для файлу Xilinx .bin є:
  <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>
  • Будь-хто може надсилати помилки до сховища, клонувати його тощо.
  • Його не конкретно для постачальника.

Типи MIME EDA можна отримати тут .

Такий проект справді вимагає сили натовпу, тому кожен невеликий внесок зробить базу кориснішою для багатьох дизайнерів FPGA.


1

Ще одне рішення для сортування вхідних файлів із вихідних файлів:

1) Побудуйте FPGA

2) імпортувати все до системи контролю версій (наприклад, git init; git add.; Git commit -m "init";)

3) перезапустити збірку FPGA

4) всі модифіковані файли ("статус git") після другого запуску, швидше за все, є вихідними файлами (включаючи файли журналів, ...), а не змінені один раз - це вхідні файли.

Це я роблю, коли отримую каталог або zip-файл із повідомленням "це проект, будь ласка, виправте це ..."


4) переважно працює. Але іноді вони оновлюють файли з останнім часом, складеним у самому файлі. Це робить цей крок не таким хорошим, як хотілося б.
Brian Carlton

1
@Brian Carlton Ви говорите про вхідні файли, які оновлюються з часом модифікації. Напр. Файли XCO від Coregen. Дійсно, тут провалюється мій метод. Я не дозволяю інструментам змінювати такі файли, роблячи "chmod -w" для цих файлів у Makefile.
vermaete
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.