ISE中FPGA工程實現流程

在使用FPGA時,設計輸入文件通常是原理圖、HDL或者IP核,最終獲得的是FPGA內部配置信息。數據庫

中間的過程由ISE逐步實現,整體來講,能夠分爲3步:佈局

一、綜合(synthesis)spa

二、執行(implement)翻譯

三、生成配置文件(generate programming file)設計

 

1、綜合(synthesis)code

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

 

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

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。原理

 

2、執行(implement)配置

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

通常分爲3步:

一、translate

二、map

三、place&route

 

一、翻譯(translate)

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

 

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

 

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

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

 

二、映射(map)

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

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

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

 

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

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

 

三、place&route

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

 

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

 

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

輸出文件:ncd

相關文章
相關標籤/搜索