關於PCI9054除錯應用的幾點經驗總結

2021-05-23 16:54:25 字數 1890 閱讀 5293

最近一直在弄pci9054,現在基本上已經弄完了,寫點經驗總結:

我用的pci9054+fpga的板子,首先說說製版上的注意問題,我沒有畫過板,是我們一位上司在畫,但是中間跟他一起發現和解決了一些問題,還是有點感觸。

板子設計中:

1、pci時鐘線,論壇上有人說pci clk時鐘線要足夠長,大約在1500mil±100mil,我一直不知道原因,後來我們乙個老師點撥了我們說是,想這種並行線,每根資料資料線的值達到的時間不一樣,因此只能靠時鐘沿來將他們同步,如果你太短,時鐘很快就來了,但是有些資料線訊號還沒有到來,那麼就會造成並行資料的紊亂。聽了覺得有道理,具體是不是這回事有待考證。

2、test引腳,這是乙個測試引腳,當他有效的時候,按資料手冊上說的,除了乙個usero/..../引腳之外,其他的引腳都將掛起,事實上就是9054不工作。論壇上有人說,在除錯過程中,test腳需要先拉高才能在開機的時候進入作業系統的介面,之前我們設計的那塊板子也是這種情況,板子插上去,但是開機在bios檢測的時候,在螢幕的左上角總是顯示乙個游標,進入不了系統,我以為是這個原因,因為我們板子的test腳是懸空的。後來照那樣做了,發現確實可以進入系統,但是其他問題依然存在。後來仔細一想也是,既然test拉高是讓9054不工作,在開機的時候我不插板子,等到pc機啟動之後我再插板子,豈不是一樣。(當時覺得自己好sb!!)

3、eeprom的edi/o腳,資料手冊上說了,如果沒有eeprom,那麼這個腳需要拉低,9054以暫存器預設值進行啟動。如果有eeprom,不管是空白還是已經寫入資料,都應該將其拉高。(後面這點資料手冊上沒有說,是在論壇上看到的)之前我們的板子出現的問題是,板子開機進入系統後插入,能找到裝置,但是發現暫存器的值並不是eeprom裡面的值,而是暫存器預設值,而且本地配置暫存器的很多值都不能用plxmon進行設定。因為我們的板子這個引腳直接連線到9054,沒有拉高,但是後來拉高了,問題依然存在,所以究竟需不需要拉高,還有待考證。

4、本地時鐘線,lclk,之前對於這個時鐘一直有個誤區,現在看來真的很sb,居然會認為這個時鐘是由9054提供的,因為之前買了塊板子做實驗,用fpga程式設計的時候這個引腳是輸入的,所以一直沒有仔細看它提供的原理圖。其實pci9054是有兩個時鐘域,乙個是pci端的時鐘域,這個時鐘是固定的,pci協議規範要求的33mhz,也是乙個輸入時鐘,由pci bus端的主裝置提供;另外乙個是local端的時鐘域,這個時鐘是使用者自己選擇的,但是資料手冊上說最大支援50mhz,不知道這個限制究竟是由什麼決定,個人感覺是因為pci 9054 內的資料fifo決定,因為在各種傳輸方式下的fifo都是16個(for local——>pci)或者32個lword(for pci------>local),按33和50的最大公約數來計算,就是每從本地端寫入50個lword,pci端取走33個lword,然後還剩下17個lword在fifo,這樣的話,就有可能導致fifo會滿。這只是我的個人理解,我也沒有試過高於50m的,也不知道會出現什麼問題,比較疑惑的是,如果高於50m的話,也可以用插入內部等待的方式來平衡fifo兩端的速率問題。

5、本地位元組使能訊號lbe[3:0]#,本來按資料手冊上說的,當他們都有效是表示本地為32位匯流排,而且是低電平有效,但是我們那塊板子不知道為什麼把它通過4k7的電阻拉高了,而且在pci target以及pci dma方式下,也就是9054作為本地匯流排的主機時,並沒有因為他們拉高了而出現什麼異常,這點讓我很疑惑。後來我用pci initiator方式配置9054內部暫存器時,卻發現,能從9054中把暫存器的值讀出來,但是缺寫不進去。後來在論壇上找到了一位大哥,他提醒了我,當我把它們拉低後,發現,資料果然聽話的寫進了暫存器,心中那個爽呀,呵呵,當然要謝謝那位大哥了。

6、論壇上也有人問過第5點中描述的問題,但是他們說最終解決時得益於那個wait訊號,有的說開始沒連,後來連了問題解決,有的說連了沒置為無效,也就是拉高,後來拉高了問題解決,我的wait訊號是一直拉高的,也沒試過拉低後是否會出現那種問題。

好啦,先說說這板子設計的6點吧,以後再說說關於程式設計的......

PCI9054 DMA設定流程

1 設定方式暫存器 設定dma通道的傳輸方式,暫存器dmamode0或者dmamode1的位9 0 表示塊傳輸,1 表示散 聚傳輸 4 設定傳輸計數暫存器 以位元組位單位設定傳輸資料量。5 設定描述暫存器 設定dma傳輸的方向 在散 聚方式下,位0表示傳輸引數的載入位址,0 pci位址,1 loca...

除錯研華PCI1245E記錄

除錯研華板卡可是費了不少功夫,主要是板卡 主機板 系統 外部接線各種問題的解決 1.主機板篇 現在很多電腦都 只能 支援win10系統,嘗試換成了win10可以正常使用,安裝軟體的底層驅動能夠正常運轉。2.研華板卡篇 第一次接觸到板卡,用研華軟體可以控制正方向轉動,反方向無反應?一共兩台電腦,原電腦...

關於POS終端安全 PCI做了哪些要求?

關於pci對pos終端的要求我十分憂慮,因為我很難找到合適的方式來保障公開鎖著的pos系統抽屜的物理鑰匙的安全。pci合規只是要求我把鑰匙藏起來,或者以其他安全方式儲存起來嗎?關於pos終端安全,pci的合規要求又是什麼呢?pci dss包含一些關於物理pos安全的要求。通常,pos終端被建在很難提...