一種fpga電路及其設(shè)計(jì)方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及可編程集成電路設(shè)計(jì)領(lǐng)域,尤其是一種FPGA電路及其設(shè)計(jì)方法。
【背景技術(shù)】
[0002]FPGA(Field-ProgrammabIe Gate Array),即現(xiàn)場可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點(diǎn)。
[0003]一般來說,F(xiàn)PGA由如下部分組成:輸入輸出單元、可配置邏輯單元、內(nèi)部存儲單元、全局時鐘網(wǎng)絡(luò)單元、乘法器、布線資源(Routing Resource)等其他資源。通過以上的單元模塊,用戶可以自由編程實(shí)現(xiàn)自己所需要的功能電路。同時,在應(yīng)用FPGA做設(shè)計(jì)時,不僅僅需要滿足功能的需要,很多時候需要滿足時序的設(shè)計(jì)要求,比如:需要設(shè)計(jì)一個電路設(shè)計(jì),并且對設(shè)計(jì)的最大頻率有嚴(yán)格的要求,但是在進(jìn)行設(shè)計(jì)的過程中,在某些地方或者路徑上的設(shè)計(jì)不符合這個最小延遲要求,這個時候,往往需要利用flip_flop(觸發(fā)器)資源的調(diào)整來改變該設(shè)計(jì)的整體時序。
[0004]對于目前的FPGA資源,flip_f1p只在輸入輸出單元,可配置邏輯單元等模塊中,在routing資源中不存在對應(yīng)的f Iip_f 1p資源。所以,設(shè)計(jì)時最短路徑是從一個f Iip_f 1p經(jīng)過routing然后到另外的f Iip_f lop。這種情況下,它的延遲是包含從第一個f Iip_f 1p到routing之間的組合邏輯延遲11,以及routing的延遲t2,和routing到第二個f I ip_f 1p之間的組合邏輯延遲t3,這三個部分。引入的路徑相對比較長,一般情況下,能夠滿足需要,但是遇到高速信號時,這種結(jié)構(gòu)可能無法滿足設(shè)計(jì)的需求。
【發(fā)明內(nèi)容】
[0005]本發(fā)明解決的主要技術(shù)問題是:本發(fā)明提供了一種FPGA電路以及設(shè)計(jì)方法,解決了現(xiàn)有的FPGA設(shè)計(jì)中對于設(shè)計(jì)關(guān)鍵路徑延遲較長,無法達(dá)到對于高速信號電路設(shè)計(jì)的設(shè)計(jì)要求的技術(shù)問題。
[0006]為解決上述技術(shù)問題,本發(fā)明采用以下技術(shù)方案:
[0007]本發(fā)明提供了一種FPGA電路,包括:輸入輸出單元、布線單元和可配置邏輯單元,所述布線單元包括第一多路選擇器;所述可配置邏輯單元包括組合邏輯電路;
[0008]所述第一多路選擇器的輸入端與所述輸入輸出單元的輸出端連接,所述第一多路選擇器的輸出端與所述組合邏輯電路的輸入端之間通過寄存器電路直接連接。
[0009]在本發(fā)明的另一實(shí)施例中,所述寄存器電路設(shè)置于所述布線單元中,所述寄存器電路的輸入端與所述第一多路選擇器的輸出端連接,所述寄存器電路的輸出端與所述組合邏輯電路的輸入端連接。
[0010]在本發(fā)明的另一實(shí)施例中,所述布線單元還包括:緩沖器單元和第二多路選擇器;
[0011]所述緩沖單元,用于接收所述第一多路選擇器輸出的輸出信號,并將所述輸出信號作為第二輸出信號發(fā)送至所述第二多路選擇器;
[0012]所述寄存器,用于將所述輸出信號作為第一輸出信號發(fā)送至所述第二多路選擇器;
[0013]所述第二多路選擇器,用于接收選擇信號,并當(dāng)所述選擇信號為指示選取所述第一輸出信號的第一選擇信號時,從所述第一輸出信號和所述第二輸出信號中選取所述第一輸出信號發(fā)送至所述組合邏輯電路;
[0014]當(dāng)所述選擇信號為指示選取所述第二輸出信號的第二選擇信號時,從所述第一輸出信號和所述第二輸出信號中選取所述第二輸出信號發(fā)送至所述組合邏輯電路。
[0015]在本發(fā)明的另一實(shí)施例中,所述寄存器設(shè)置于所述可配置邏輯單元中,所述第一多路選擇器將輸出的所述輸出信號直接發(fā)送至所述可配置邏輯單元中的寄存器,所述寄存器將接收到的所述輸出信號發(fā)送至所述組合邏輯電路。
[0016]在本發(fā)明的另一實(shí)施例中,所述寄存器由至少一個觸發(fā)器組成。
[0017]為了解決上述技術(shù)問題,本發(fā)明還提供了一種FPGA電路設(shè)計(jì)方法,所述FPGA電路包括輸入輸出單元、布線單元和可配置邏輯單元,所述方法包括:
[0018]在所述布線單元上設(shè)置第一多路選擇器,在所述可配置邏輯單元上設(shè)置組合邏輯電路;
[0019]在所述第一多路選擇器與所述組合邏輯電路之間設(shè)置寄存器電路,并將所述寄存器電路的輸入端與所述輸入輸出單元的輸出端連接,所述寄存器電路的輸出端與所述組合邏輯電路的輸入端連接。
[0020]在本發(fā)明的另一實(shí)施例中,所述通過在所述第一多路選擇器與所述組合邏輯電路之間設(shè)置寄存器電路包括:將所述寄存器電路設(shè)置于所述布線單元中,通過所述寄存器電路將所述第一多路選擇器輸出的輸出信號發(fā)送至所述組合邏輯電路。
[0021]如權(quán)利要求6所述的FPGA電路設(shè)計(jì)方法,其特征在于,所述通過在所述第一多路選擇器與所述組合邏輯電路之間設(shè)置寄存器電路還包括:將所述寄存器設(shè)置于所述可配置邏輯單元中,所述第一多路選擇器將輸出的所述輸出信號直接發(fā)送至所述可配置邏輯單元中的寄存器,所述寄存器將接收到的所述輸出信號發(fā)送至所述組合邏輯電路。
[0022]在本發(fā)明的另一實(shí)施例中,當(dāng)將所述寄存器設(shè)置于所述布線單元中時,還包括:在所述布線單元中設(shè)置緩沖單元和第二多路選擇器;
[0023]通過所述緩沖單元接收所述第一多路選擇器輸出的輸出信號,并將所述輸出信號作為第二輸出信號發(fā)送至第二多路選擇器;
[0024]所述寄存器將所述輸出信號作為第一輸出信號發(fā)送至所述第二多路選擇器;
[0025]所述第二多路選擇器接收選擇信號選擇將所述第一輸出信號或者第二輸出信號發(fā)送至所述組合邏輯電路。
[0026]在本發(fā)明的另一實(shí)施例中,所述第二多路選擇器接收選擇信號選擇將所述第一輸出信號或者第二輸出信號發(fā)送至所述組合邏輯電路具體包括:
[0027]當(dāng)所述選擇信號為指示選取所述第一輸出信號的第一選擇信號時,從所述第一輸出信號和所述第二輸出信號中選取所述第一輸出信號發(fā)送給所述組合邏輯電路;
[0028]當(dāng)所述選擇信號為指示選取所述第一輸出信號的第一選擇信號時,從所述第一輸出信號和所述第二輸出信號中選取所述第一輸出信號發(fā)送至所述組合邏輯電路。
[0029]本發(fā)明的有益效果:
[0030]本發(fā)明提供了一種FPGA電路及其設(shè)計(jì)方法,通過第一多路選擇器將輸入輸出單元輸出信號發(fā)送至所述寄存器電路,所述寄存器電路將所述輸出信號發(fā)送至組合邏輯電路,通過設(shè)置寄存器電路將所述輸出信號從輸入輸出單元輸出端直接發(fā)送給組合邏輯電路,使得將由原來的輸入輸出寄存器到可配置邏輯單元寄存器的關(guān)鍵路徑替換為由輸入輸出寄存器到寄存器電路的關(guān)鍵路徑。
[0031]進(jìn)一步地,所述寄存器電路為設(shè)置在布線單元中,這樣的設(shè)置使得關(guān)鍵路徑改變?yōu)閺妮斎胼敵鰡卧苯拥讲季€單元中的寄存器電路,也即是相當(dāng)于將可配置邏輯單元中的寄存器提前至布線單元中,從而有效地縮短了兩寄存器之間的關(guān)鍵路徑,也從而有效地減少了在設(shè)計(jì)電路時關(guān)鍵路徑的最小延遲,進(jìn)一步的提高了整個設(shè)計(jì)的時鐘頻率。
【附圖說明】
[0032]圖1為本發(fā)明實(shí)施例一提供的一種FPGA電路結(jié)構(gòu)圖;
[0033]圖2為本發(fā)明實(shí)施例一提供的另一種FPGA電路結(jié)構(gòu)圖;
[0034]圖3為普通routing情況下FPGA電路設(shè)計(jì)的信號路徑結(jié)構(gòu)示意圖;
[0035]圖4為本發(fā)明實(shí)施例一提供的一種FPGA電路的關(guān)鍵路徑的結(jié)構(gòu)不意圖;
[0036]圖5為圖4所提供的FPGA電路的關(guān)鍵路徑的具體電路結(jié)構(gòu)圖;
[0037]圖6為本發(fā)明實(shí)施例二提供的一種FPGA電路設(shè)計(jì)方法的流程圖。
【具體實(shí)施方式】
[0038]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例只是本發(fā)明中一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的