[發(fā)明專利]基于BURST和流水線的CPU和FPGA接口方法有效
| 申請(qǐng)?zhí)枺?/td> | 201110315468.6 | 申請(qǐng)日: | 2011-10-18 |
| 公開(kāi)(公告)號(hào): | CN102508798A | 公開(kāi)(公告)日: | 2012-06-20 |
| 發(fā)明(設(shè)計(jì))人: | 陳慶旭;葉品勇;魏建功;余華武 | 申請(qǐng)(專利權(quán))人: | 國(guó)電南京自動(dòng)化股份有限公司 |
| 主分類號(hào): | G06F13/20 | 分類號(hào): | G06F13/20 |
| 代理公司: | 南京縱橫知識(shí)產(chǎn)權(quán)代理有限公司 32224 | 代理人: | 董建林 |
| 地址: | 210009 江蘇*** | 國(guó)省代碼: | 江蘇;32 |
| 權(quán)利要求書: | 查看更多 | 說(shuō)明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 burst 流水線 cpu fpga 接口 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及一種基于BURST和流水線的CPU和FPGA接口方法,能夠用于CPU和FPGA需要有大量數(shù)據(jù)進(jìn)行交互的各種場(chǎng)合。
背景技術(shù)
隨著FPGA(Field?Programmable?Gate?Array)的應(yīng)用日漸廣泛,很多系統(tǒng)采用了CPU+FPGA的構(gòu)架方式。CPU和FPGA之間有大量的數(shù)據(jù)需要進(jìn)行交互,如何提高CPU讀寫FPGA的效率已經(jīng)成為很多應(yīng)用中的一個(gè)瓶頸問(wèn)題。
目前,F(xiàn)PGA一般通過(guò)雙口RAM和CPU進(jìn)行交互,通過(guò)雙口RAM的緩沖以解決FPGA和CPU的速度和并行性等問(wèn)題。雙口RAM可以采用專用的雙口RAM芯片或者利用FPGA的邏輯模擬出來(lái)的雙口RAM,前者由于成本高,容量小,所以一般更多的是采用后者的方式。
為了便于說(shuō)明,在下面的時(shí)序討論以某MPC8247應(yīng)用系統(tǒng)為例,CPU的讀寫頻率100MHz,但是具體的原理可以適用于其他各種頻率的CPU。根據(jù)FPGA的編譯信息可以知道,F(xiàn)PGA的邏輯資源模擬出來(lái)雙口RAM的輸出延時(shí)一般在12ns到17ns之間。考慮到地址的建立時(shí)間、數(shù)據(jù)的保持時(shí)間等因素,CPU每次讀取FPGA雙口RAM應(yīng)該需要至少4個(gè)時(shí)鐘周期,也就是40ns,才能夠?qū)PGA的雙口RAM進(jìn)行正常讀寫。圖1是用傳統(tǒng)方式CPU對(duì)FPGA進(jìn)行讀寫的示意圖,CPU的每次讀寫都需要等待大約40ns的時(shí)間。整個(gè)FPGA的輸出過(guò)程沒(méi)有重疊,連續(xù)讀取8次所需要的時(shí)間至少為320ns。
即使CPU讀取FPGA數(shù)據(jù)采用了DMA方式,由于CPU對(duì)FPGA進(jìn)行讀寫的時(shí)候,地址數(shù)據(jù)總線已經(jīng)被DMA占用,CPU無(wú)法對(duì)SDRAM和FLASH等外設(shè)進(jìn)行操作,所以此時(shí)CPU已經(jīng)相當(dāng)于處于等待狀態(tài),所以此時(shí)CPU的效率仍然比較低。
發(fā)明內(nèi)容
為了解決現(xiàn)有技術(shù)中CPU和FPGA之間有大量的數(shù)據(jù)需要進(jìn)行交互,但是兩者之間的交換效率較低,不能滿足實(shí)際使用需要的問(wèn)題。本發(fā)明提出了一種CPU采用BURST方式結(jié)合流水線技術(shù)對(duì)FPGA進(jìn)行讀寫的方法,在CPU和FPGA有大量數(shù)據(jù)進(jìn)行交互的場(chǎng)合,采用這種方式能夠大大的降低了CPU讀寫FPGA所需要的時(shí)間,提高CPU讀寫FPGA的效率。
為了解決上述問(wèn)題,本發(fā)明所采取的技術(shù)方案是:
一種基于BURST和流水線的CPU和FPGA接口方法,其特征在于:包括以下步驟:
(1)、CPU對(duì)FPGA采用BURST的方式進(jìn)行讀寫,采用這種方式后,CPU能夠?qū)PGA進(jìn)行連續(xù)多次讀寫;
(2)、在FPGA內(nèi)部采用了內(nèi)部地址寄存器的方式,在CPU開(kāi)始讀寫的時(shí)候,F(xiàn)PGA把當(dāng)前的讀寫地址鎖存到FPGA內(nèi)部的地址寄存器中;
(3)、對(duì)于讀操作,F(xiàn)PGA在當(dāng)前讀周期完成之前,自動(dòng)把地址寄存器的值加1,輸出下一個(gè)數(shù)據(jù);對(duì)于寫操作,則在當(dāng)前寫周期完成后,把地址寄存器的值加1;
(4)、在后面的過(guò)程中,每個(gè)時(shí)鐘周期,F(xiàn)PGA都把地址寄存器自動(dòng)加1。
前述的一種基于BURST和流水線的CPU和FPGA接口方法,其特征在于:對(duì)于讀操作,CPU采用了BURST方式能夠連續(xù)對(duì)FPGA進(jìn)行多次讀操作,CPU第一次讀數(shù)據(jù)的時(shí)候,整個(gè)周期需要40ns,F(xiàn)PGA在20ns的時(shí)候開(kāi)始輸出數(shù)據(jù),由于FPGA的數(shù)據(jù)輸出延時(shí)為20ns,所以40ns的時(shí)候,CPU可以讀到第一個(gè)數(shù)據(jù);在FPGA的內(nèi)部,在30ns的時(shí)候設(shè)計(jì)邏輯自動(dòng)把當(dāng)前地址加1,開(kāi)始輸出下一個(gè)地址的內(nèi)容,由于FPGA的數(shù)據(jù)輸出延時(shí)為20ns,在50ns的時(shí)候,CPU能夠讀到第二個(gè)數(shù)據(jù),在以后的時(shí)間內(nèi),依此類推,F(xiàn)PGA可以在每個(gè)時(shí)鐘周期內(nèi)輸出一個(gè)數(shù)據(jù)。
前述的一種基于BURST和流水線的CPU和FPGA接口方法,其特征在于:對(duì)于寫操作不需要考慮FPGA的數(shù)據(jù)輸出延時(shí)時(shí)間,F(xiàn)PGA內(nèi)部的地址寄存器的值只需要在本次寫周期完成后再加1。
前述的一種基于BURST和流水線的CPU和FPGA接口方法,其特征在于:對(duì)于連續(xù)8次讀操作,?CPU讀取FPGA數(shù)據(jù)所需要的時(shí)間為110ns。
本發(fā)明的有益效果是:?BURST方式是CPU為了提高讀寫效率而采用的一種連續(xù)讀寫方式,一般根據(jù)CPU的不同,BURST的長(zhǎng)度可以配置為4個(gè)或者8個(gè)。目前這種技術(shù)一般僅應(yīng)用于CPU和SDRAM的之間的讀寫,CPU采用BURST方式能夠?qū)DRAM的多個(gè)地址進(jìn)行讀寫,提高了CPU對(duì)SDRAM的讀寫效率。本發(fā)明把BURST方式引入到了CPU對(duì)FPGA的讀寫過(guò)程,在FPGA中采用了流水線技術(shù),大大提高了CPU讀寫FPGA的速度。
附圖說(shuō)明
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于國(guó)電南京自動(dòng)化股份有限公司,未經(jīng)國(guó)電南京自動(dòng)化股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110315468.6/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
- 調(diào)整下行調(diào)制編碼方式的方法
- 一種數(shù)據(jù)傳輸?shù)姆椒把b置
- 關(guān)鍵字管理程序、關(guān)鍵字管理系統(tǒng)和關(guān)鍵字管理方法
- 一種小區(qū)切換時(shí)的干擾優(yōu)化方法
- 協(xié)議數(shù)據(jù)單元數(shù)目的指示方法、獲取方法、移動(dòng)通信設(shè)備
- 一種TD-SCDMA系統(tǒng)中的特殊幀傳輸方法
- 一種CPU的硬件優(yōu)化方法
- 一種數(shù)據(jù)調(diào)度方法及裝置
- 一種BURST漂移檢測(cè)方法及裝置
- 一種基于AXI的數(shù)據(jù)傳輸方法和裝置





