一種基于fpga的本地總線電路的制作方法
【技術(shù)領(lǐng)域】
[0001 ]本發(fā)明主要涉及通信技術(shù)領(lǐng)域,特指一種基于FPGA的本地總線電路。
【背景技術(shù)】
[0002]傳統(tǒng)的嵌入式處理器電路主要由嵌入式處理器、復(fù)位電路、電源電路、只讀存儲(chǔ)器(如Flash、EPR0M等)、隨機(jī)存儲(chǔ)器(如SRAM,DRAM)、接口電路等組成。一般情況下,本地總線電路中各器件之間以星形或菊花鏈的拓?fù)湫褪脚c處理器相連,組成本地總線電路。在這個(gè)電路中,遇到BGA封裝的器件時(shí),會(huì)以較長的PCB走線分支與BGA封裝的器件引腳相連。處理器運(yùn)行所需的程序,數(shù)據(jù)等存儲(chǔ)在只讀存儲(chǔ)器中。處理器在啟動(dòng)及運(yùn)行過程中,將只讀存儲(chǔ)器中的程序以及數(shù)據(jù)讀出,在隨機(jī)存儲(chǔ)器中運(yùn)行,實(shí)現(xiàn)整個(gè)電路的正常運(yùn)行。但是這種本地總線存在以下不足:1)本地總線上如果有BGA封裝的器件,那么BGA器件下方將很難走線,一般是以PCB走線分支的方式與BGA器件的引腳相連;2)本地總線上掛載的器件較多時(shí),處理器需要驅(qū)動(dòng)多個(gè)器件,負(fù)載較重;3)各個(gè)器件間的互聯(lián)拓?fù)湟话銥樾切位蚓栈ㄦ湥苋菀桩a(chǎn)生信號(hào)完整性問題,導(dǎo)致總線工作速度較難提升;4)沒有相應(yīng)的Flash寫保護(hù)功能;4)數(shù)據(jù)的校驗(yàn)必須在處理器中進(jìn)行;5)—旦設(shè)計(jì)完成,就很難對(duì)存儲(chǔ)器的存儲(chǔ)拓?fù)浣Y(jié)構(gòu)進(jìn)行修改,而這個(gè)拓?fù)浣Y(jié)構(gòu)就是存儲(chǔ)系統(tǒng)的存儲(chǔ)結(jié)構(gòu)。
【發(fā)明內(nèi)容】
[0003]本發(fā)明要解決的技術(shù)問題就在于:針對(duì)現(xiàn)有技術(shù)存在的技術(shù)問題,本發(fā)明提供一種結(jié)構(gòu)簡(jiǎn)單、PCB走線方便順暢、工作效率高的基于FPGA的本地總線電路。
[0004]為解決上述技術(shù)問題,本發(fā)明提出的技術(shù)方案為:
一種基于FPGA的本地總線電路,包括處理器以及外圍電路,還包括FPGA芯片,所述處理器通過FPGA芯片與所述外圍電路相連;所述FPGA芯片包括第一邏輯功能單元和第二邏輯功能單元,所述第一邏輯功能單元用于將處理器的地址總線以及控制總線緩沖后一一對(duì)應(yīng)映射至外圍電路的地址總線和控制總線上,所述第二邏輯功能單元用于實(shí)現(xiàn)處理器的數(shù)據(jù)總線與外圍電路的數(shù)據(jù)總線之間的數(shù)據(jù)同步以及對(duì)應(yīng)映射。
[0005]作為上述技術(shù)方案的進(jìn)一步改進(jìn):
所述第一邏輯功能單元包括緩沖單元以及同步數(shù)據(jù)選擇器,所述處理器的地址總線以及控制總線經(jīng)所述緩沖單元緩沖后一一映射至外圍電路的地址總線和控制總線上;所述同步數(shù)據(jù)選擇器用于處理器的數(shù)據(jù)總線與外圍電路的數(shù)據(jù)總線之間的數(shù)據(jù)同步以及邏輯對(duì)應(yīng)映射。
[0006]所述外圍電路包括電源電路、復(fù)位電路、只讀存儲(chǔ)器、隨機(jī)存儲(chǔ)器以及接口電路。
[0007]所述第二邏輯功能包括相互連接的組合邏輯和寄存器,所述組合邏輯與所述只讀存儲(chǔ)器相連,所述寄存器與所述處理器相連;所述處理器向所述寄存器寫入預(yù)設(shè)值后使組合邏輯輸出用于解鎖只讀存儲(chǔ)器的解鎖電平。
[0008]所述第二邏輯功能包括計(jì)數(shù)器,所述計(jì)數(shù)器與所述只讀存儲(chǔ)器相連,所述計(jì)數(shù)器的的輸入端連接有兩個(gè)使能信號(hào)端,其中一個(gè)使能信號(hào)端用于輸入使能信號(hào),另一個(gè)使能信號(hào)端用于發(fā)送連續(xù)多個(gè)脈沖至計(jì)數(shù)器以使只讀存儲(chǔ)器處于解鎖狀態(tài)。
[0009]與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn)在于:
本發(fā)明的基于FPGA的本地總線電路,處理器通過FPGA(可編程邏輯器件)對(duì)各外圍電路進(jìn)行操作,各電路之間的信號(hào)互連拓?fù)溆蒄PGA控制,同時(shí)根據(jù)處理器本地總線控制器信號(hào)的引腳排列特點(diǎn),來對(duì)FPGA引腳進(jìn)行配置,使兩者之間的PCB走線方便、順暢、信號(hào)拓?fù)浜?jiǎn)單;而且可工作在更高的速度下,提高了系統(tǒng)的工作效率。另外通過在FPGA中實(shí)現(xiàn)了只讀存儲(chǔ)器的寫保護(hù)功能,避免了處理器的誤操作將只讀存儲(chǔ)器的內(nèi)容擦除或改寫。
【附圖說明】
[0010]圖1為本發(fā)明的結(jié)構(gòu)示意圖。
[0011 ]圖2為本發(fā)明中FPGA芯片連接只讀存儲(chǔ)器的結(jié)構(gòu)示意圖。
[0012]圖3為本發(fā)明中第一邏輯功能單元的方框結(jié)構(gòu)圖。
[0013]圖4為本發(fā)明中第二邏輯功能單元的方框結(jié)構(gòu)圖。
[0014]圖5為本發(fā)明中只讀存儲(chǔ)器的電路原理圖。
【具體實(shí)施方式】
[0015]以下結(jié)合說明書附圖和具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步描述。
[0016]如圖1至圖5所示,本實(shí)施例的基于FPGA的本地總線電路,包括處理器以及外圍電路,還包括FPGA芯片,處理器通過FPGA芯片與外圍電路相連;FPGA芯片包括第一邏輯功能單元和第二邏輯功能單元,第一邏輯功能單元用于將處理器的地址總線以及控制總線緩沖后一一對(duì)應(yīng)映射至外圍電路的地址總線和控制總線上,第二邏輯功能單元用于實(shí)現(xiàn)處理器的數(shù)據(jù)總線與外圍電路的數(shù)據(jù)總線之間的數(shù)據(jù)同步以及對(duì)應(yīng)映射。本發(fā)明的基于FPGA的本地總線電路,處理器通過FPGA(可編程邏輯器件)對(duì)各外圍電路進(jìn)行操作,各外圍電路之間的信號(hào)互連拓?fù)溆蒄PGA控制,同時(shí)根據(jù)處理器本地總線控制器信號(hào)的引腳排列特點(diǎn),來對(duì)FPGA引腳進(jìn)行配置,使兩者之間的PCB走線方便、順暢、信號(hào)拓?fù)浜?jiǎn)單;而且可工作在更高的速度下,提高了系統(tǒng)的工作效率。
[0017]本實(shí)施例中,外圍電路包括電源電路、復(fù)位電路、只讀存儲(chǔ)器、隨機(jī)存儲(chǔ)器以及接口電路。其中圖2示出了只讀存儲(chǔ)器(Flashl和Flash2)通過FPGA芯片與處理器的連接方式,其中AddrBUS_I^PAddrBUS_L分別為FPGA兩側(cè)的地址總線,DataBUS_I^PDataBUS_R分別為FPGA兩側(cè)的數(shù)據(jù)總線,Ctr_I^PCtr_R分別是兩側(cè)的控制信號(hào)線,如片選、讀寫使能,其中GP10由處理器提供。另外其它外圍電路與處理器互連的方式與只讀存儲(chǔ)器的連接方式相同。
[0018]如圖3和圖4所示,本實(shí)施例中,F(xiàn)PGA芯片通過編程實(shí)現(xiàn)了兩個(gè)邏輯功能單元。其中第一邏輯功能單元用于控制兩片F(xiàn)lash的地址、數(shù)據(jù)和控制信號(hào)與處理器(CPU)的地址、數(shù)據(jù)和控制信號(hào)的連接拓?fù)浼皶r(shí)序關(guān)系。邏輯功能單元2用于實(shí)現(xiàn)Flash寫保護(hù)功能。
[0019]本實(shí)施例中,第一邏輯功能單元包括緩沖單元以及同步數(shù)據(jù)選擇器,處理器的地址總線以及控制總線經(jīng)緩沖單元緩沖后一一映射至外圍電路的地址總線和控制總線上;