上海婦科疾病研究所 上海女性不孕醫(yī)院 上海引產(chǎn)醫(yī)院 無痛引產(chǎn)痛不痛 上海人流醫(yī)院 白癜風(fēng)治療醫(yī)院 上海小兒腦癱醫(yī)院 上海女子醫(yī)院
完结小说排行榜,小说改编的网页游戏,好看的小说完本推荐

国产精品无码毛片AV_亚洲毛片精品在线_全球黄色短视频在线免费观看_亚洲一区二区爱av_成年人免费观看网址_欧美美女性爱喷水网址_亚洲毛片av无码不卡_国产无码视频在线观看_高清国语自产拍在线播放_女人午夜免费黄片

用戶名: 密碼:
主頁 設(shè)為首頁 加入收藏
      產(chǎn)品中心       技術(shù)中心       下載中心        社區(qū)新聞        誠聘英才       大學(xué)計(jì)劃        關(guān)于我們       技術(shù)論壇
  您的當(dāng)前位置:ADSP開源社區(qū) >> 技術(shù)中心 >> TigerSAHRC 今天是:
技術(shù)中心  
SigmaDSP
SHARC
A2B音頻總線
Blackfin
ADI操作系統(tǒng)
ADSP-218X
TigerSAHRC
ADI DSP仿真器
產(chǎn)品導(dǎo)航
ADI DSP仿真器
SigmaDSP開發(fā)板
ADI A2B總線開發(fā)板
SHARC DSP開發(fā)板
銷售網(wǎng)絡(luò)
TigerSAHRC  
FPGA與TS201總線接口設(shè)計(jì)
[ 作者: ] [ 來源:ADSP開源社區(qū) ] [ 發(fā)布時(shí)間:2011-3-28 ]
      在雷達(dá)信號(hào)處理、數(shù)字圖像處理等領(lǐng)域中,信號(hào)處理的實(shí)時(shí)性至關(guān)重要。由于FPGA芯片在大數(shù)據(jù)量的底層算法處理上的優(yōu)勢及DSP芯片在復(fù)雜算法處理上的優(yōu)勢,DSP+FPGA的實(shí)時(shí)信號(hào)處理系統(tǒng)的應(yīng)用越來越廣泛。ADI公司的TigerSHARC系列DSP芯片浮點(diǎn)處理性能優(yōu)越,故基于這類DSP的DSP+FPGA處理系統(tǒng)正廣泛應(yīng)用于復(fù)雜的信號(hào)處理領(lǐng)域。同時(shí)在這類實(shí)時(shí)處理系統(tǒng)中,F(xiàn)PGA與DSP芯片之間數(shù)據(jù)的實(shí)時(shí)通信至關(guān)重要。

  TS201 DSP的外部總線接口有兩種協(xié)議:慢速協(xié)議和高速流水協(xié)議。流水線協(xié)議適合與快速同步設(shè)備連接,文中采用此協(xié)議,實(shí)現(xiàn)DSP與FPGA之間的通信。

1. DSP流水線協(xié)議

  流水線協(xié)議用來提供流水線方式的數(shù)據(jù)傳輸。在該傳輸協(xié)議下,每個(gè)時(shí)鐘周期可以傳輸一個(gè)數(shù)據(jù)?刂屏魉協(xié)議進(jìn)行數(shù)據(jù)傳輸?shù)闹饕盘?hào)包含以下引腳:

  RD——數(shù)據(jù)傳輸讀信號(hào);
  WRH和WRL——數(shù)據(jù)傳輸寫信號(hào);
  BRST——突發(fā)方式數(shù)據(jù)傳輸指示;
  ADDR——地址總線;
  DATA——數(shù)據(jù)總線。
  流水線協(xié)議數(shù)據(jù)傳輸有兩種方式:普通流水線協(xié)議和突發(fā)流水線協(xié)議。ADSP TS201的數(shù)據(jù)總線位寬可以通過SYSCON寄存器設(shè)置為32位或者64位,但是有時(shí)候需要傳輸?shù)臄?shù)據(jù)位寬可能是32位,64位或者128位,這樣就有可能出現(xiàn)數(shù)據(jù)總線位寬和數(shù)據(jù)位寬不一致的情況,如果總線位寬小于數(shù)據(jù)位寬,DSP采用突發(fā)流水協(xié)議傳輸,否則采用普通流水線協(xié)議。

  1.1 普通流水線協(xié)議

  圖1是DSP使用普通流水協(xié)議,寫FPGA內(nèi)部寄存器時(shí)序圖,流水深度為1,在時(shí)鐘沿1地址線、WRx(WRH和WRL)同時(shí)有效,一個(gè)時(shí)鐘周期后,在時(shí)鐘沿2數(shù)據(jù)線有效,地址線、WRx無效。

  1.2 突發(fā)流水線協(xié)議

  因?yàn)閿?shù)據(jù)總線位寬小于數(shù)據(jù)位寬,那么它只能通過兩次傳輸來完成。但是如果DSP沒有任何指示信號(hào),F(xiàn)PGA并不知道當(dāng)前傳輸是高32位數(shù)據(jù),還是低32位數(shù)據(jù),這時(shí)候另外一個(gè)信號(hào)BURST就顯得尤為重要了。

  引腳BRST可以用來指示多個(gè)傳輸過程合成一個(gè)傳輸過程,圖2是DSP通過32位數(shù)據(jù)總線寫64位數(shù)據(jù)時(shí)序圖。

  由圖2可以看出,數(shù)據(jù)傳輸機(jī)制與普通流水協(xié)議相同,只多了一個(gè)BRST指示信號(hào),它與地址1同時(shí)有效,表示本次數(shù)據(jù)沒有傳輸完畢,下次要傳輸?shù)臄?shù)據(jù)與本次傳輸?shù)臄?shù)據(jù)是一個(gè)整體,即BRST有效時(shí)傳輸是低32位數(shù)據(jù),無效時(shí)傳輸?shù)氖歉?2位數(shù)據(jù),這樣就實(shí)現(xiàn)了在32位數(shù)據(jù)總線上傳輸64位數(shù)據(jù),如果沒有BRST信號(hào),該過程會(huì)被認(rèn)為是2次32位傳輸。

  同理,如果用32位數(shù)據(jù)總線傳輸128位數(shù)據(jù),在傳輸前3個(gè)32位數(shù)據(jù)的時(shí)候,BRST信號(hào)有效,傳輸最后一個(gè)32位數(shù)據(jù)BRST無效。

  注意:使用流水協(xié)議時(shí),流水深度由傳輸類型(讀數(shù)據(jù)還是寫數(shù)據(jù))決定。在寫數(shù)據(jù)傳輸中,流水深度固定為1;在讀數(shù)據(jù)傳輸中,流水線深度可由用戶編程決定,即由系統(tǒng)配置寄存器SYSCON決定,在1~4之間可變。

2. FPGA設(shè)計(jì)

  由于DSP的協(xié)議是相對(duì)固定的,F(xiàn)PGA只需按照協(xié)議進(jìn)行設(shè)計(jì)即可,下面以DSP訪問FPGA內(nèi)部寄存器為例詳細(xì)介紹。筆者建議采用同步設(shè)計(jì),主要信號(hào)、輸出信號(hào)都由時(shí)鐘沿驅(qū)動(dòng),可以有效避免毛刺。

  為了使所設(shè)計(jì)的模塊通用化,可設(shè)流水深度、數(shù)據(jù)總線位寬、寄存器位寬、寄存器地址可設(shè)。筆者建議采用參數(shù)化設(shè)計(jì),使用參數(shù)傳遞語言GENERIC將參數(shù)傳遞給實(shí)體,在實(shí)體內(nèi)部使用外if…else結(jié)構(gòu),這樣在一個(gè)程序中可以包含各種情況,但不會(huì)增加邏輯的使用量。下面以個(gè)別情況為例,詳細(xì)介紹。

  2.1 32位數(shù)據(jù)總線,32位寄存器,寫操作

  前面提過,DSP采用流水協(xié)議寫FPGA時(shí),流水深度固定為1,F(xiàn)PGA在前一時(shí)鐘沿采到地址、WRx信號(hào)有效,在下一時(shí)鐘沿就鎖存數(shù)據(jù),如圖3所示,F(xiàn)PGA在時(shí)鐘沿1采到地址總線上的地址與寄存器地址一致,WRx信號(hào)為低,寫標(biāo)志信號(hào)S_W_FLAG置高,由于采用同步設(shè)計(jì),F(xiàn)PGA只有在時(shí)鐘沿2才能采到S_W_FLAG為高,一旦采到S_W_FLAG為高,F(xiàn)PGA就鎖存數(shù)據(jù)總線上的數(shù)據(jù),即在時(shí)鐘沿2鎖存數(shù)據(jù)。

      2.2 32位數(shù)據(jù)總線,32位寄存器,讀操作

  與寫寄存器不一樣,讀寄存器時(shí)流水深度在1到4之間可設(shè),需要注意的是,為避免總線沖突,DSP不讀時(shí),F(xiàn)PGA數(shù)據(jù)總線應(yīng)保持三態(tài)。

  如果流水深度設(shè)置為1,F(xiàn)PGA在前一時(shí)鐘沿采到地址、RD信號(hào)有效,應(yīng)確保在下一時(shí)鐘沿?cái)?shù)據(jù)已經(jīng)穩(wěn)定的出現(xiàn)在數(shù)據(jù)總線上,否則DSP不能正確讀取數(shù)據(jù),如圖3所示,在時(shí)鐘沿1采到地址總線上的地址與寄存器地址一致,RD信號(hào)為低,驅(qū)動(dòng)數(shù)據(jù)總線,在時(shí)鐘沿2數(shù)據(jù)已穩(wěn)定出現(xiàn)在數(shù)據(jù)總線上,DSP可以讀取。

  如果流水深度設(shè)置為2,F(xiàn)PGA在前一時(shí)鐘沿采到地址、RD信號(hào)有效,應(yīng)確保隔一時(shí)鐘周期后,數(shù)據(jù)穩(wěn)定的出現(xiàn)在數(shù)據(jù)總線上,這樣就像寫操作一樣,需要加一個(gè)標(biāo)志,當(dāng)條件滿足,標(biāo)志為高,一旦標(biāo)志為高,輸出數(shù)據(jù),如圖4所示。

  綜上所述,流水深度加深一級(jí),F(xiàn)PGA就晚一個(gè)時(shí)鐘周期驅(qū)動(dòng)數(shù)據(jù)總線?梢钥闯,雖然流水深度在1~4之間可設(shè),但是總能保證一個(gè)時(shí)鐘周期傳輸一個(gè)數(shù)據(jù)。

  2.3 32位數(shù)據(jù)總線,64位寄存器

  前面提到,突發(fā)流水協(xié)議與普通流水協(xié)議數(shù)據(jù)傳輸機(jī)制是一樣的,只是多了一個(gè)指示信號(hào)BRST,當(dāng)寫操作時(shí),F(xiàn)PGA如果在前一時(shí)鐘沿采到地址、WRx、BRST信號(hào)有效,在下一時(shí)鐘沿就鎖存數(shù)據(jù)到寄存器低位,而如果在前一時(shí)鐘沿采到地址、WRL有效,而BRST信號(hào)無效,在下一時(shí)鐘沿就鎖存數(shù)據(jù)到寄存器高位。同樣,當(dāng)讀操作時(shí),F(xiàn)PGA如果采到地址、RD、BRST信號(hào)有效,就將寄存器低位驅(qū)動(dòng)到數(shù)據(jù)總線上,而如果采到地址、RD有效,BRST而信號(hào)無效,就將寄存器高位驅(qū)動(dòng)到數(shù)據(jù)總線上,具體在哪個(gè)時(shí)鐘沿驅(qū)動(dòng),由流水深度決定。

3. DSP設(shè)置

  ADSP TS201與FPGA通信時(shí),DSP是否采用流水協(xié)議,數(shù)據(jù)總線位寬,以及流水深度都可以通過系統(tǒng)配置寄存器SYSCON進(jìn)行設(shè)置,SYSCON詳細(xì)設(shè)置見文獻(xiàn)[3],以32位數(shù)據(jù)總線訪問64位寄存器為例,一級(jí)流水,SYSCON設(shè)置為

4. 結(jié)束語

  文中實(shí)現(xiàn)了DSP通過外部總線接口訪問FPGA內(nèi)部寄存器,但是如果需要傳輸?shù)臄?shù)據(jù)量很大,或者DSP與FPGA的時(shí)鐘不同步,就不能用寄存器來實(shí)現(xiàn),需要借助于雙口RAM或者FIFO,讀者可以在本文的基礎(chǔ)上加以改進(jìn)。

聯(lián)系我們 | 關(guān)于我們 | 免責(zé)聲明 | 誠征英才 | 友情鏈接
Copyright 2019 All rights reserved  本網(wǎng)頁版權(quán)屬Open ADSP所有
北京海淀區(qū)中關(guān)村大街32號(hào)新中發(fā)市場3659 郵編100100
電話 18611096839 
粵ICP備14035876號(hào)-1