1. 程式人生 > >ISE中FPGA工程實現流程

ISE中FPGA工程實現流程

配置信息 slices 利用 後綴 要求 The 合並 位置 報文

在使用FPGA時,設計輸入文件一般是原理圖、HDL或者IP核,最終得到的是FPGA內部配置信息。

中間的過程由ISE逐步實現,總體來說,可以分為3步:

1、綜合(synthesis)

2、執行(implement)

3、生成配置文件(generate programming file)

一、綜合(synthesis)

綜合是將設計輸入轉為網表的過程。

網表提取出了設計輸入文件中器件或端口的連接方式,如下圖:

Net1: t.p1,b1.a;  
Net2: t.p2,b1.b;  
Net3: t.p3,b1.c;  
Net4: b1.d,b2.e;  
Net5: t.p4,b2.f;  
Net6: b2.g,t.p5; 

在ISE中,可以選擇自帶的XST用於綜合,生成的網表文件後綴為ngc,也可以選擇synplify用於綜合,生成的網表文件後綴為edf。

二、執行(implement)

執行是利用網表與約束文件,生成對應型號的FPGA所需的配置信息。

一般分為3步:

1、translate

2、map

3、place&route

1、翻譯(translate)

將網表文件與約束文件轉為一種新的數據庫文件,把兩個文件的信息放到一個文件中,便於後續處理。

註:約束文件一般由用戶編寫,例如FPGA引腳配置就是一種約束。

輸入文件:網表文件(ngc或edf)、約束文件(ucf)

輸出文件:xilinx數據庫文件(ngd)、translate報文(bld)

2、映射(map)

將數據庫文件裏的信息映射成具體的FPGA基元(Slices,RAM和IOBs)

一般MAP過程會根據約束信息,剔除多余邏輯、合並組合邏輯等。最終生成xilinx私有電路文件ncd,包含了設計與FPGA基元具體的映射關系。

對於大部分FPGA而言,MAP時,順便也完成了後面基元的布局(Place)工作。

輸入文件:xilinx數據庫文件(ngd)

輸出文件:xilinx私有電路描述文件(ncd)、物理約束文件(pcf)【約束各個基元之間的位置關系等】、map過程報告(mrp)

3、place&route

負責放置基元的實際位置,並布線。

布線時,根據時序約束不斷布線,直到滿足時序要求。

輸入文件:xilinx私有電路文件(ncd)、物理約束文件(pcf)

輸出文件:ncd

ISE中FPGA工程實現流程