基于pci接口的apb總線訪問方法
【專利摘要】本發明屬于計算機通信【技術領域】,針對PCI接口與APB接口進行相互通信的需求,提出了一種基于基于PCI接口的APB總線訪問方法,首先通過PCI模塊對將主機的PCI訪問請求轉換為內部用戶信號,接著通過使用控制邏輯,對內部用戶信號進行翻譯,構建符合APB時序的讀寫操作時序并輸出至APB接口,最后通過對APB接口的響應信號進行監測,完成PCI數據的傳輸。解決了兩個接口之間無法相互訪問的問題。通過在實際工程中的應用,該方法能夠使PCI接口穩定的、正確的與APB接口進行訪問。
【專利說明】基于PCI接口的APB總線訪問方法
【技術領域】
[0001]本發明屬于計算機通信【技術領域】,涉及FPGA邏輯電路設計的相關技術,尤其涉及一種基于PCI接口的APB總線訪問方法。
【背景技術】
[0002]在開發通信系統時,當主機為PCI (Peripheral Component Interconnect)接口,子板為APB (Advanced Peripheral Bus)接口時,板卡之間需要實現數據交互訪問。。
[0003]PCI接口工作在33MHz或66MHz頻率下,地址數據信號復用;而APB接口工作在80MHz或更高頻率下,地址數據信號未復用,并且讀操作數據及寫操作數據也是未復用,讀寫操作均需要響應信號來結束操作。
[0004]綜上所述,PCI接口和APB接口存在差異,PCI接口與APB接口不能正常交互訪問,不能滿足系統對于通信的要求。
【發明內容】
[0005]本發明提出了一種基于PCI接口的APB總線訪問方法,該方法方便實現了的PCI接口對APB接口正常的讀寫訪問,用來支持PCI主機與APB接口的板卡(設備)進行通信。
[0006]本發明的第一種技術解決方案如下:
[0007]基于PCI接口的APB總線訪問方法,其特征在于:包括以下步驟,
[0008]IlPCI接口將PCI設備請求信號發送至PCI模塊,所述請求信號是地址數據復用信號,地址數據復用信號的讀寫復用,地址數據復用信號的地址是32位;
[0009]2】PCI模塊將請求信號轉換為第一地址信號、數據信號和讀寫復用信號,再將轉換得到的信號發送至信號產生模塊;
[0010]3】信號產生模塊接收到第一地址信號、數據信號和讀寫復用信號后,產生控制信號,
[0011]并根據讀寫復用信號產生讀信號和寫信號,讀信號和寫信號中的一個為有效信號;根據接收到的第一地址信號產生第二地址信號,第二地址信號是12位;
[0012]若第一地址信號中包括PCI設備設定的正確地址,則第二地址信號中包括該正確地址;
[0013]讀信號用于讀第二地址信號對應的數據,寫信號用于將所述數據信號的信息寫到第二地址信號對應的地址中;
[0014]所述控制信號包括讀控制和寫控制;
[0015]讀控制用于控制讀信號讀包括正確地址的第二地址信號;
[0016]寫控制用于控制寫信號將數據信號寫到包括正確地址的第二地址信號對應的地址中;
[0017]第二地址信號、數據信號、讀信號、寫信號、讀控制和寫控制是非復用信號,信號產生模塊將第二地址信號、數據信號、讀信號、寫信號、讀控制和寫控制發送至同步模塊
[0018]4】同步模塊按照APB接口的時鐘對接收到的第二地址信號、數據信號、讀信號、寫信號、讀控制和寫控制進行時鐘同步,然后發送至轉換模塊;
[0019]5】轉換模塊按照APB接口的時序對接收到的經過時鐘同步的第二地址信號、數據信號、讀信號、寫信號、讀控制和寫控制進行時序轉換,然后通過APB接口發送至APB設備;
[0020]6]APB設備接收到經過時序轉換的第二地址信號、數據信號、讀信號、寫信號、讀控制和與控制后,
[0021]判斷讀信號和寫信號中的有效信號,
[0022]若讀信號有效,則進行以下操作:
[0023]a)根據讀控制的信息,讀取相應的第二地址信號的數據,讀取完成后,得到相應的數據信息,然后通過APB接口向同步模塊發送數據信息和讀取完成的響應信號;
[0024]b)同步模塊按照PCI接口的時鐘對接收到的數據信息和響應信號進行時鐘同步,然后發送至PCI模塊;
[0025]c)PCI模塊對接收到的數據信息和響應信號進行信號復用得到復用信號,然后按照PCI接口的時序對復用信號進行時序轉換,然后發送至PCI設備;
[0026]若寫信號有效,則進行以下操作:
[0027]a)根據寫控制的信息,將數據信號寫到第二地址信號對應的地址中,寫完后,通過APB接口向同步模塊發送寫完的響應信號;
[0028]b)同步模塊按照PCI接口的時鐘對接收到的響應信號進行時鐘同步,然后發送至PCI模塊;
[0029]c)PCI模塊按照PCI接口的時序對完成時鐘同步的響應信號進行時序轉換,然后發送至PCI設備。
[0030]上述步驟3】中的讀控制還用于控制讀信號的開始時間、控制讀信號的次數以及控制讀信號的持續時間。
[0031]上述步驟3】中的寫控制還用于控制寫信號的開始時間、控制寫信號的次數以及控制寫信號的持續時間。
[0032]本發明的第二種技術解決方案如下:
[0033]基于PCI接口的APB總線訪問系統,其特征在于:包括PCI設備、設置在PCI設備上的PCI接口、與PCI接口通信連接的PCI模塊、與PCI模塊通信連接的信號產生模塊、與信號產生模塊通信連接的同步模塊、與同步模塊通信連接的轉換模塊、與轉換模塊通信連接的APB接口,所述APB接口設置在APB設備上;
[0034]所述PCI模塊:用于將PCI設備對APB設備進行訪問請求的請求信號轉換為第一地址信號、數據信號和讀寫復用信號,所述請求信號是地址數據復用信號,地址數據復用信號的讀寫復用,地址數據復用信號的地址是32位;按照PCI接口的時序對由同步模塊發送至PCI接口的信號進行時序轉換;若由同步模塊發送至PCI接口的信號包括至少兩種信號,PCI模塊用于對由同步模塊發送至PCI接口的信號進行信號復用;
[0035]所述信號產生模塊:根據接收到的由PCI模塊發送至信號產生模塊的第一地址信號、數據信號和讀寫復用信號,產生控制信號、讀信號、寫信號、第二地址信號;讀信號和寫信號中的一個為有效信號,第二地址信號對應的地址的位數是12位,若第一地址信號中包括PCI設備設定的正確地址,則第二地址信號中包括該正確地址;
[0036]讀信號用于讀第二地址信號對應的數據,寫信號用于將所述數據信號的信息寫到第二地址信號對應的地址中;
[0037]所述控制信號包括讀控制和寫控制;
[0038]讀控制用于控制讀信號讀包括正確地址的第二地址信號;
[0039]寫控制用于控制寫信號將數據信號寫到包括正確地址的第二地址信號對應的地址中;
[0040]第二地址信號、數據信號、讀信號、寫信號、讀控制和寫控制是非復用信號;
[0041]所述同步模塊:按照APB接口的時鐘對由信號產生模塊發送至同步模塊的非復用信號進行時鐘同步;按照PCI接口的時鐘對APB設備完成的訪問請求信號進行時鐘同步;
[0042]所述轉換模塊:按照APB接口時序的對時鐘同步后的非復用信號進行時序轉換;
[0043]所述APB設備:接收到經過時序轉換后的非復用信號,對非復用信號中的讀信號和寫信號,判斷讀信號和寫信號中的有效信號,
[0044]若讀信號有效,則根據讀控制的信息,讀取相應的第二地址信號的數據,讀取完成后,得到相應的數據信息,然后通過APB接口向同步模塊發送數據信息和讀取完成的響應信號,將數據信息和讀取完成的響應信號稱為APB設備完成的訪問請求信號;
[0045]若寫信號有效,則根據寫控制的信息,將數據信號寫到第二地址信號對應的地址中,寫完后,通過APB接口向同步模塊發送寫完的響應信號,將該響應信號稱為APB設備完成的訪問請求信號。
[0046]上述讀控制還用于控制讀信號的開始時間、控制讀信號的次數以及控制讀信號的持續時間。
[0047]上述寫控制還用于控制寫信號的開始時間、控制寫信號的次數以及控制寫信號的持續時間。
[0048]本發明具有以下技術效果:
[0049]1、本發明實現了的PCI接口對APB接口正常的讀寫訪問,控制簡單,易
[0050]于硬件邏輯實現;
[0051]2、本發明通用性高,能夠有效的簡化使用者的設計;
[0052]3、本發明可保證PCI接口端能夠正常的、穩定的、正確的對APB接口進
[0053]行讀寫訪問。
【專利附圖】
【附圖說明】
[0054]圖1PCI讀操作示意圖;
[0055]圖2PCI寫操作示意圖。
【具體實施方式】
[0056]本發明提出了一種采用FPGA邏輯電路設計的PCI接口與APB接口的訪問方法,可以支持由主機接口作為PCI主設備對下層APB設備進行讀寫訪問的功能。
[0057]本發明提供了一種基于PCI接口的APB總線訪問方法,參見圖1,PCI讀操作示意圖,包括以下步驟,
[0058]1、基于PCI接口的APB總線訪問方法,其特征在于:包括以下步驟,
[0059]I]PCI接口將PCI設備請求信號發送至PCI模塊,所述請求信號是地址數據復用信號,地址數據復用信號的讀寫復用,地址數據復用信號的地址是32位;
[0060]2】PCI模塊將請求信號轉換為第一地址信號、數據信號和讀寫復用信號,再將轉換得到的信號發送至信號產生模塊;
[0061]3】信號產生模塊接收到第一地址信號、數據信號和讀寫復用信號后,產生控制信號,
[0062]并根據讀寫復用信號產生讀信號和寫信號,讀信號和寫信號中的一個為有效信號;根據接收到的第一地址信號產生第二地址信號,第二地址信號是12位;
[0063]若第一地址信號中包括PCI設備設定的正確地址,則第二地址信號中包括該正確地址;
[0064]讀信號用于讀第二地址信號對應的數據,寫信號用于將所述數據信號的信息寫到第二地址信號對應的地址中;
[0065]所述控制信號包括讀控制和寫控制;
[0066]讀控制用于控制讀信號讀包括正確地址的第二地址信號;
[0067]寫控制用于控制寫信號將數據信號寫到包括正確地址的第二地址信號對應的地址中;
[0068]第二地址信號、數據信號、讀信號、寫信號、讀控制和寫控制是非復用信號,信號產生模塊將第二地址信號、數據信號、讀信號、寫信號、讀控制和寫控制發送至同步模塊
[0069]4】同步模塊按照APB接口的時鐘對接收到的第二地址信號、數據信號、讀信號、寫信號、讀控制和寫控制進行時鐘同步,然后發送至轉換模塊;
[0070]5】轉換模塊按照APB接口的時序對接收到的經過時鐘同步的第二地址信號、數據信號、讀信號、寫信號、讀控制和寫控制進行時序轉換,即將經過經過時鐘同步的信號翻譯為符合APB接口時序的APB接口信號、適合APB總線的讀操作,然后通過APB接口發送至APB設備;
[0071]6]APB設備接收到經過時序轉換的第二地址信號、數據信號、讀信號、寫信號、讀控制和與控制后,
[0072]判斷讀信號和寫信號中的有效信號,
[0073]若讀信號有效,則進行以下操作:
[0074]a)根據讀控制的信息,讀取相應的第二地址信號的數據,讀取完成后,得到相應的數據信息,然后通過APB接口向同步模塊發送數據信息和讀取完成的響應信號;
[0075]b)同步模塊按照PCI接口的時鐘對接收到的數據信息和響應信號進行時鐘同步,然后發送至PCI模塊;
[0076]c)PCI模塊對接收到的數據信息和響應信號進行信號復用得到復用信號,然后按照PCI接口的時序對復用信號進行時序轉換,然后發送至PCI設備;
[0077]若寫信號有效,則進行以下操作:
[0078]a)根據寫控制的信息,將數據信號寫到第二地址信號對應的地址中,寫完后,通過APB接口向同步模塊發送寫完的響應信號;
[0079]b)同步模塊按照PCI接口的時鐘對接收到的響應信號進行時鐘同步,然后發送至PCI模塊;
[0080]c)PCI模塊按照PCI接口的時序對完成時鐘同步的響應信號進行時序轉換,然后發送至PCI設備。
[0081]其中,步驟3】中的讀控制還用于控制讀信號的開始時間、控制讀信號的次數以及控制讀信號的持續時間;寫控制還用于控制寫信號的開始時間、控制寫信號的次數以及控制寫信號的持續時間。
[0082]本發明還提供了基于PCI接口的APB總線訪問系統,包括PCI設備、設置在PCI設備上的PCI接口、與PCI接口通信連接的PCI模塊、與PCI模塊通信連接的信號產生模塊、與信號產生模塊通信連接的同步模塊、與同步模塊通信連接的轉換模塊、與轉換模塊通信連接的APB接口,所述APB接口設置在APB設備上;
[0083]PCI模塊:用于將PCI設備對APB設備進行訪問請求的請求信號轉換為第一地址信號、數據信號和讀寫復用信號,所述請求信號是地址數據復用信號,地址數據復用信號的讀寫復用,地址數據復用信號的地址是32位;按照PCI接口的時序對由同步模塊發送至PCI接口的信號進行時序轉換;若由同步模塊發送至PCI接口的信號包括至少兩種信號,PCI模塊用于對由同步模塊發送至PCI接口的信號進行信號復用;
[0084]信號產生模塊:根據接收到的由PCI模塊發送至信號產生模塊的第一地址信號、數據信號和讀寫復用信號,產生控制信號、讀信號、寫信號、第二地址信號;讀信號和寫信號中的一個為有效信號,第二地址信號對應的地址的位數是12位,若第一地址信號中包括PCI設備設定的正確地址,則第二地址信號中包括該正確地址;
[0085]讀信號用于讀第二地址信號對應的數據,寫信號用于將所述數據信號的信息寫到第二地址信號對應的地址中;
[0086]控制信號包括讀控制和寫控制;
[0087]讀控制用于控制讀信號讀包括正確地址的第二地址信號;
[0088]寫控制用于控制寫信號將數據信號寫到包括正確地址的第二地址信號對應的地址中;
[0089]第二地址信號、數據信號、讀信號、寫信號、讀控制和寫控制是非復用信號;
[0090]同步模塊:按照APB接口的時鐘對由信號產生模塊發送至同步模塊的非復用信號進行時鐘同步;按照PCI接口的時鐘對APB設備完成的訪問請求信號進行時鐘同步;
[0091]轉換模塊:按照APB接口時序的對時鐘同步后的非復用信號進行時序轉換;
[0092]APB設備:接收到經過時序轉換后的非復用信號,對非復用信號中的讀信號和寫信號,判斷讀信號和寫信號中的有效信號,
[0093]若讀信號有效,則根據讀控制的信息,讀取相應的第二地址信號的數據,讀取完成后,得到相應的數據信息,然后通過APB接口向同步模塊發送數據信息和讀取完成的響應信號,將數據信息和讀取完成的響應信號稱為APB設備完成的訪問請求信號;
[0094]若寫信號有效,則根據寫控制的信息,將數據信號寫到第二地址信號對應的地址中,寫完后,通過APB接口向同步模塊發送寫完的響應信號,將該響應信號稱為APB設備完成的訪問請求信號。
[0095]本發明的基于PCI接口的APB總線訪問系統中,讀控制還用于控制讀信號的開始時間、控制讀信號的次數以及控制讀信號的持續時間;寫控制還用于控制寫信號的開始時間、控制寫信號的次數以及控制寫信號的持續時間。
[0096]本發明的原理:本發明將PCI設備的PCI請求數據通過PCI模塊翻譯為用戶應用信號(即將復用信號轉換為非復用信號),用戶應用信號包括數據傳輸狀態、讀寫操作、地址片選擇、地址、讀數據、寫數據等信號。并將用戶應用信號通過同步模塊進行同步,接著將同步后的信號通過轉換模塊后送往APB設備的APB接口,最后通過對APB接口的響應信號進行監測,完成PCI請求數據的傳輸。
[0097]本方法通過下述步驟實現,具體參照附圖給出說明。
[0098]1.邏輯電路單元:
[0099]一個PCI模塊①,用于將主機的PCI訪問請求轉換為內部用戶信號;
[0100]一個信號產生模塊②,用于將pCI模塊①產生的信號規整為讀寫信號,同時還產生控制信號;
[0101 ] 一個同步模塊③,用于對流向APB接口的信號按照APB接口的時鐘進行時鐘同步,對由APB設備發出的流向PCI接口的信號;按照PCI接口的時鐘進行時鐘同步;
[0102]一個轉換模塊④,用于將同步模塊③產生的流向APB設備的信號按照APB接口時序進行時序轉換。
[0103]2.處理流程:
[0104]a、PCI讀操作,如圖1,
[0105]主機的PCI讀操作通過PCI模塊①,產生內部用戶信號;
[0106]將上步驟中生成的信號通過讀寫信號產生模塊②,產生易于操作的讀請求、地址、控制?目號等;
[0107]通過同步模塊③,將上步驟產生的信號(讀請求、地址、控制信號)同步至APB時鐘域;
[0108]通過轉換模塊④,將上步驟產生的信號翻譯為適合APB總線的讀操作;
[0109]將APB總線的響應信號和讀數據通過同步模塊③同步后,返回給PCI核。
[0110]b、PCI寫操作,如圖2,
[0111]主機的PCI寫操作通過PCI模塊①,產生內部用戶信號;
[0112]將上步驟中生成的信號通過讀寫信號產生模塊②,產生易于操作的寫請求、地址、寫數據、控制信號等;
[0113]通過同步模塊③,將上步驟產生的信號(寫請求、地址、寫數據、控制信號)同步至APB時鐘域;
[0114]通過轉換模塊④,將上步驟產生的信號翻譯為適合APB總線的讀操作;
[0115]將APB總線的響應信號通過同步模塊③同步后,返回給PCI模塊。
【權利要求】
1.基于PCI接口的APB總線訪問方法,其特征在于:包括以下步驟, HPCI接口將PCI設備請求信號發送至PCI模塊,所述請求信號是地址數據復用信號,地址數據復用信號的讀寫復用,地址數據復用信號的地址是32位; 2】PCI模塊將請求信號轉換為第一地址信號、數據信號和讀寫復用信號,再將轉換得到的信號發送至信號產生模塊; 3】信號產生模塊接收到第一地址信號、數據信號和讀寫復用信號后,產生控制信號,并根據讀寫復用信號產生讀信號和寫信號,讀信號和寫信號中的一個為有效信號;根據接收到的第一地址信號產生第二地址信號,第二地址信號是12位; 若第一地址信號中包括PCI設備設定的正確地址,則第二地址信號中包括該正確地址; 讀信號用于讀第二地址信號對應的數據,寫信號用于將所述數據信號的信息寫到第二地址信號對應的地址中; 所述控制信號包括讀控制和寫控制; 讀控制用于控制讀信號讀包括正確地址的第二地址信號; 寫控制用于控制寫信號將數據信號寫到包括正確地址的第二地址信號對應的地址中; 第二地址信號、數據信號、讀信號、寫信號、讀控制和寫控制是非復用信號,信號產生模塊將第二地址信號、數據信號、讀信號、寫信號、讀控制和寫控制發送至同步模塊 4】同步模塊按照APB接口的時鐘對接收到的第二地址信號、數據信號、讀信號、寫信號、讀控制和寫控制進行時鐘同步,然后發送至轉換模塊; 5】轉換模塊按照APB接口的時序對接收到的經過時鐘同步的第二地址信號、數據信號、讀信號、寫信號、讀控制和寫控制進行時序轉換,然后通過APB接口發送至APB設備; 6]APB設備接收到經過時序轉換的第二地址信號、數據信號、讀信號、寫信號、讀控制和與控制后, 判斷讀信號和寫信號中的有效信號, 若讀信號有效,則進行以下操作: a)根據讀控制的信息,讀取相應的第二地址信號的數據,讀取完成后,得到相應的數據信息,然后通過APB接口向同步模塊發送數據信息和讀取完成的響應信號; b)同步模塊按照PCI接口的時鐘對接收到的數據信息和響應信號進行時鐘同步,然后發送至PCI模塊; c)PCI模塊對接收到的數據信息和響應信號進行信號復用得到復用信號,然后按照PCI接口的時序對復用信號進行時序轉換,然后發送至PCI設備; 若寫信號有效,則進行以下操作: a)根據寫控制的信息,將數據信號寫到第二地址信號對應的地址中,寫完后,通過APB接口向同步模塊發送寫完的響應信號; b)同步模塊按照PCI接口的時鐘對接收到的響應信號進行時鐘同步,然后發送至PCI豐吳塊; c)PCI模塊按照PCI接口的時序對完成時鐘同步的響應信號進行時序轉換,然后發送至PCI設備。
2.根據權利要求1所述的基于PCI接口的APB總線訪問方法,其特征在于:所述步驟3】中的讀控制還用于控制讀信號的開始時間、控制讀信號的次數以及控制讀信號的持續時間。
3.根據權利要求2所述的基于PCI接口的APB總線訪問方法,其特征在于:所述步驟3】中的寫控制還用于控制寫信號的開始時間、控制寫信號的次數以及控制寫信號的持續時間。
4.基于PCI接口的APB總線訪問系統,其特征在于:包括PCI設備、設置在PCI設備上的PCI接口、與PCI接口通信連接的PCI模塊、與PCI模塊通信連接的信號產生模塊、與信號產生模塊通信連接的同步模塊、與同步模塊通信連接的轉換模塊、與轉換模塊通信連接的APB接口,所述APB接口設置在APB設備上; 所述PCI模塊:用于將PCI設備對APB設備進行訪問請求的請求信號轉換為第一地址信號、數據信號和讀寫復用信號,所述請求信號是地址數據復用信號,地址數據復用信號的讀寫復用,地址數據復用信號的地址是32位;按照PCI接口的時序對由同步模塊發送至PCI接口的信號進行時序轉換;若由同步模塊發送至PCI接口的信號包括至少兩種信號,PCI模塊用于對由同步模塊發送至PCI接口的信號進行信號復用; 所述信號產生模塊:根據接收到的由PCI模塊發送至信號產生模塊的第一地址信號、數據信號和讀寫復用信號,產生控制信號、讀信號、寫信號、第二地址信號;讀信號和寫信號中的一個為有效信號,第二地址信號對應的地址的位數是12位,若第一地址信號中包括PCI設備設定的正確地址,則第二地址信號中包括該正確地址; 讀信號用于讀第二地址信號對應的數據,寫信號用于將所述數據信號的信息寫到第二地址信號對應的地址中; 所述控制信號包括讀控制和寫控制; 讀控制用于控制讀信號讀包括正確地址的第二地址信號; 寫控制用于控制寫信號將數據信號寫到包括正確地址的第二地址信號對應的地址中; 第二地址信號、數據信號、讀信號、寫信號、讀控制和寫控制是非復用信號; 所述同步模塊:按照APB接口的時鐘對由信號產生模塊發送至同步模塊的非復用信號進行時鐘同步;按照PCI接口的時鐘對APB設備完成的訪問請求信號進行時鐘同步;所述轉換模塊:按照APB接口時序的對時鐘同步后的非復用信號進行時序轉換; 所述APB設備:接收到經過時序轉換后的非復用信號,對非復用信號中的讀信號和寫信號,判斷讀信號和寫信號中的有效信號, 若讀信號有效,則根據讀控制的信息,讀取相應的第二地址信號的數據,讀取完成后,得到相應的數據信息,然后通過APB接口向同步模塊發送數據信息和讀取完成的響應信號,將數據信息和讀取完成的響應信號稱為APB設備完成的訪問請求信號; 若寫信號有效,則根據寫控制的信息,將數據信號寫到第二地址信號對應的地址中,寫完后,通過APB接口向同步模塊發送寫完的響應信號,將該響應信號稱為APB設備完成的訪問請求信號。
5.根據權利要求4所述的基于PCI接口的APB總線訪問系統,其特征在于:所述讀控制還用于控制讀信號的開始時間、控制讀信號的次數以及控制讀信號的持續時間。
6.根據權利要求5所述的基于PCI接口的APB總線訪問系統,其特征在于:所述寫控制還用于控制寫信號的開始時間、控制寫信號的次數以及控制寫信號的持續時間。
【文檔編號】G06F13/38GK104484298SQ201410727824
【公開日】2015年4月1日 申請日期:2014年12月3日 優先權日:2014年12月3日
【發明者】田園, 李大鵬, 李玉發, 蒲愷 申請人:中國航空工業集團公司第六三一研究所