vivado中symthsis(综合)和implementation(执行)具体是为了完成什么操作?
1.synthesis
首先,同學(xué)你綜合的單次拼錯(cuò)了,綜合是synthesis,不是symthsis。
綜合(synthesis)的概念是:將高級抽象層次的電路描述轉(zhuǎn)化成較低層次的描述。
也就是說將語言描述的電路邏輯轉(zhuǎn)化成與門、或門、非門、觸發(fā)器等基本邏輯單元的互連關(guān)系。也就是我們常說的門級網(wǎng)表。
以四選一電路為例,綜合過程將Verilog代碼翻譯成了門級互連網(wǎng)表。
四選一電路的綜合過程綜合的概念很重要,利用Verilog 做電路設(shè)計(jì)時(shí)我們總是強(qiáng)調(diào)可綜合的概念,可綜合就是我們的這段代碼可以被翻譯成門級電路,不可綜合就是代碼不能被翻譯成與之對應(yīng)的門級電路。
綜合是創(chuàng)造性的轉(zhuǎn)化過程,它不但能翻譯我們的電路,還能夠優(yōu)化我們的電路,比如去除電路描述中冗余的電路結(jié)構(gòu),或者復(fù)用功能相同的電路結(jié)構(gòu)。
2.implementation
implementation正確的翻譯應(yīng)該是“實(shí)現(xiàn)”,implementation是一個(gè)place和route的過程,也就是布局布線。
綜合后生成的門級網(wǎng)表只是表示了門與門之間虛擬的連接關(guān)系,并沒有規(guī)定每個(gè)門的位置以及連線的長度等。布局布線就是一個(gè)將門級網(wǎng)表中的門的位置以及連線信息確定下來的過程。
布局布線過程在解釋布局布線之前,我們先回顧一下FPGA的結(jié)構(gòu),我們知道FPGA可重復(fù)編程的基礎(chǔ)是擁有巨量的可配置邏輯塊(CLB)、豐富的布線資源以及其他資源
①布局
布局的過程就是將門級網(wǎng)表中的每一個(gè)門“安置”到CLB中的過程,這個(gè)過程是一個(gè)映射的過程。
②布線
布線是利用FPGA中豐富的布線資源將CLB根據(jù)邏輯關(guān)系連接在一起的過程。
邏輯門的映射位置不是隨意的,是FPGA設(shè)計(jì)軟件經(jīng)過算法計(jì)算后精心排列的一般的布局布線策略是占用最少的CLB并且連線盡量短,也就是面積和速度最優(yōu)。
布局布線策略有兩種:速度優(yōu)先和面積優(yōu)先,往往不能同時(shí)達(dá)到兩者皆最優(yōu),所以布局布線時(shí)需要在速度最優(yōu)和面積最優(yōu)之間做出選擇。
以上節(jié)選自我的專欄文章
羅成:快速理解FPGA設(shè)計(jì)流程及工具軟件至于門級和版圖的對應(yīng)關(guān)系,可以參見我的另一篇專欄文章
羅成:如何通俗理解FPGA與Verilog HDL?總結(jié)
以上是生活随笔為你收集整理的vivado中symthsis(综合)和implementation(执行)具体是为了完成什么操作?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阳光灿烂的日子
- 下一篇: 科技改变世界,科技改变世界杯