DSP C6678 SRIO介面除錯

2021-09-28 17:39:20 字數 737 閱讀 3607

設計的板子到了srio除錯階段了,在板子上,一片v6和兩片6678通過4xsrio互聯,中間沒有switch,總算搞定了相互之間的通訊。

首先,感謝ti論壇提供的srio程式範例,但是其硬體平台是evm板,更多的只能用於loopback測試,但是可以在其基礎上修改。

1.初始化dsp的srio,主要是對serdes進行配置,然後是lane和speed的配置,最後需要等待fpga的link建立,我們在建立時候碰到一點困難,每次建立並不都是4x,一直沒有找到問題,我們使用了乙個別的辦法來保證link為4x。

2.資料傳送,dsp上提供的資料傳送方法主要有兩種,directio和message,主要區別為directio需要tx和rx雙方知道位址對映關係,而message是通過message中mail資訊得到資料需要儲存的位址,我們使用的為directio方法,6678上提供了8組lsu來進行directio資料傳送,每個lsu有6個暫存器,當5th暫存器寫完後,資料會傳送出去,第6個暫存器主要用於檢測當前的lsu狀態。lsu還有16(32)個影子暫存器

3.swrite/nwrite/nread:對dsp來說,初始化完srio後,fpga便可以通過srio來傳送資料,但是要注意,designer並不知道什麼時候fpga會傳送資料,所以通常會先傳送乙個doorbell資訊來告知dsp,fpga要傳送資料了,doorbell可以觸發中斷,對於nread來說,fpga傳送這個命令後,dsp會自動的將請求的資料傳送出去,designer也並不知道資料傳送出去,這些都需要doorbell來支援。

667 優美的排列 II

題目描述 給定兩個整數 n 和 k,你需要實現乙個陣列,這個陣列包含從 1 到 n 的 n 個不同整數,同時滿足以下條件 如果這個陣列是 a1,a2,a3,an 那麼陣列 a1 a2 a2 a3 a3 a4 an 1 an 中應該有且僅有 k 個不同整數 如果存在多種答案,你只需實現並返回其中任意一...

ACWing 667 遊戲時間

讀入兩個整數a aa和b bb,表示遊戲的開始和結束時間,以小時為單位。計算遊戲持續時間。已知遊戲可以在一天開始,在另一天結束,最長持續24 2424 小時。輸入格式 共一行,包含兩個整數a aa和bbb。輸出格式 輸出格式為o jogo durou x hora s 其中x xx為遊戲持續時間。資...

關於DSP C6727外部中斷的用法

dsp c6727 沒有提供專門的外部中斷引腳,使用mcasp amutein引腳作為外部中斷引腳,利用mcasp的amutein事件觸發dmax,使dmax產生相應的中斷遞交給cpu 可用中斷 int9,int10,int11,int12,int13,int15 詳細步驟如下 1,配置cfgmca...