<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于FPGA與ADSP TS201的總線接口設(shè)計方案

          基于FPGA與ADSP TS201的總線接口設(shè)計方案

          作者: 時間:2012-03-27 來源:網(wǎng)絡(luò) 收藏

          本文引用地址:http://www.ex-cimer.com/article/257618.htm

          2 設(shè)計

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

          為了使所設(shè)計的模塊通用化,可設(shè)流水深度、數(shù)據(jù)總線位寬、寄存器位寬、寄存器地址可設(shè)。筆者建議采用參數(shù)化設(shè)計,使用參數(shù)傳遞語言GENERIC將參數(shù)傳遞給實體,在實體內(nèi)部使用外if…else結(jié)構(gòu),這樣在一個程序中可以包含各種情況,但不會增加邏輯的使用量。下面以個別情況為例,詳細介紹。 function ImgZoom(Id)//重新設(shè)置圖片大小 防止撐破表格 { var w = $(Id).width; var m = 650; if(w

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

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

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

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

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

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

          綜上所述,流水深度加深一級,F(xiàn)PGA就晚一個時鐘周期驅(qū)動數(shù)據(jù)總線。可以看出,雖然流水深度在1~4之間可設(shè),但是總能保證一個時鐘周期傳輸一個數(shù)據(jù)。 function ImgZoom(Id)//重新設(shè)置圖片大小 防止撐破表格 { var w = $(Id).width; var m = 650; if(w

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

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

          3 DSP設(shè)置

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

          4 結(jié)束語

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


          上一頁 1 2 下一頁

          關(guān)鍵詞: FPGA ADSP TS201總線

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();