国产肉体XXXX裸体137大胆,国产成人久久精品流白浆,国产乱子伦视频在线观看,无码中文字幕免费一区二区三区 国产成人手机在线-午夜国产精品无套-swag国产精品-国产毛片久久国产

新聞中心

EEPW首頁 > 汽車電子 > Champ-av3主板的開發(fā)和應用

Champ-av3主板的開發(fā)和應用

——
作者:南京電子技術研究所 張 西 吳 甜 時間:2007-11-09 來源:電子報 收藏

引言 

    是一種功能強大的,內嵌vxWorks操作系統,具有專門的算法庫,運行速度快、實時性好,町以配合多種子卡來適應不同的接口要求,十分適用于雷達、聲納、人工智能等應用場合。  
    集成了4片Motorola公司的MPC7447/A處理芯片,每片處理器各自擁有256 MB的SDRAM存儲空間。4片處理器通過MV64360橋片掛在內部64位100 MHz的PCI-x數據總線上,通過這條總線,4片MPC7447/A可以方便快速地傳輸數據,共享資源。它還具有專門的OBIC模塊,對多處理器之間的聯系進行管理。同時,板上還具備兩個安裝子卡的接口,支持多種PMC(PCI Mezzanine Card)子卡,使得數據的出入接口靈活,便于用戶擴展功能。 

    1 硬件結構 

    硬件結構框圖如圖1所示。



  

    提供4個高性能的處理模塊,每個模塊包括1個1 GHz的MPC7447/A處理器、256 MB的SDRAM和MV64360 PCI橋片。這4個模塊通過構成回路的PCI-X總線掛在一起,彼此可以進行高速的互連。而MV64360 PCI橋片則給MPC7447/A、SDRAM和PCI-X總線提供丫通暢的連接接口。 

    在多處理器共同工作時,會碰到需要將數據發(fā)送給多個處理器或者數據從多個處理器流水通過的問題,這個問題常常比處理器的運算能力更限制板子的性能。本板的四方回路式結構很好地解決了這個問題。 

    1.1 存儲器類型和存儲空問的分配 

    Champ-av3在地址空問分配上獨具特色,它的存儲空間全部統一編址,因此任何一個處理器都能訪問到其他處理器的存儲空間,也能訪問兩個PMC子卡的存儲空問和VME總線的空間。而任何一個子卡模塊或VME主控器也能隨意訪問這些處理器的存儲空問。它的存儲空間分配方式見表1。

 

    Champ-av 3的每個處理模塊都有128 MB或256 MB的SDRAM,它具有雙倍的傳輸速率,在125 MHz工作頻率下,數據傳輸速率可達2.0 GB/s。每個SDRAM都可以被所有的處理器訪問,VME總線也可以通過PCI到VME的轉換接口訪問到它。 

    為了分擔SDRAM的壓力,板上還有一片256 kB的高速SRAM,可以專門用來存儲外圍設備的一些狀態(tài)字。例如在DMA傳輸時,DMA控制器可以一邊從SDRAM中訪問數據,一邊從SRAM中獲取外圍設備狀態(tài)。 

    在Champ-av3板上,靠近A處理模塊處有一片64 MB或128 MB、32 bit的Flash存儲空間,它可以被擦除100萬次,數據保存可達20年以上。為了防止意外擦除,板上提供硬件跳線器。實際應用中值得注意的是,這片Flash存儲器只能由A處理模塊直接訪問,A處理模塊將Flash存儲器中的數據讀到自己的存儲空間后,其他處理模塊才能共享。這一點也可以從表1的存儲空間分配表看出。 

    Champ-av3主板的處理器讀取存儲器時,先從存儲器搬人高速緩沖存儲器,再進行訪問,而外部設備只能直接訪問存儲器。所以在訪問數據時一定要注意,最新數據究竟是在存儲器中還是在高速緩沖存儲器中。這里需要提及兩個函數cacheFlush()和cacheIn-validate()。它們是編程中經常需要使用的指令。在外部器件讀取數據之前,需要將數據從高速緩沖存儲器cacheFlush()到存儲器中,以保證外部器件讀到當前的最新數據;在外部器件向存儲器寫了數據后,需要將數據從存儲器cacheInvalidate()到高速緩沖存儲器中,以保證處理器讀到的是最新數據。在DMA傳數和處理器之間共享數據時必須注意這種數據的及時刷新。 

    1.2 接口 

    Champ-av3有兩個網口:網口0是百兆網,它與前面板上的RJ45連接器和后面板上的P2插座都連在一起;網口1是干兆網,它只與后面板上的P2插座連接。這兩個網口的接口都在A處理模塊上,但是基于vx-Works共享空間網絡特點,所有的處理模塊都可以通過一個網口通信。這個特點也可以推廣到多板系統。  

    本板還具有VME64主從接口能力。VME64接口通過PCI-PCI橋掛到A、B處理模塊之間,在DMA方式下,本地存儲器與VME總線之間可以有50 MB/s的傳輸速率。 

    板上還有3個串口:串口1是EIA-232電平,與前面板后面板都相連;串口2、3有EIA-232和EIA-422兩種傳輸電平,串口2與后面板的P2插座相連,串口3與后面板的P0插座相連。需要注意,串口2、3只有B處理模塊能夠直接使用。 

    同時,板上還具備兩個安裝PMC子卡的接口,它們都符合PCI和PCI-X總線標準,其中PCI-X總線接口支持64 bit、66 MHz或100 MHz的傳輸速率,可以具有800 MB/s的峰值傳輸能力。本板支持多種PMC子卡,使得數據的出入接口靈活,便于用戶擴展功能。 

    2 軟件設計 

    Champ-av3提供一套與硬件相結合的軟件包,可以對板子進行初始化和板內自檢。板內自檢包括上電自檢和初始自檢,可以保證95%的檢測范圍。  

    用戶編程的開發(fā)環(huán)境在tornarlo2.0以上的版本中進行,編程語言址C/C++。但除了用C語言編寫應用程序外,還有一些軟包但需要深入了解。 

    1 ) vxWorks BSP  

    vxWorks BSP(板級支持包)支持Tronado2.02和tronado2.2,開發(fā)環(huán)境,主機操作系統要求足Windows和Solaris,使用GNU編譯器。BSP還包含一系列功能函數,可以進行更改系統時鐘、初始化硬件、串口等操作。 

    需要指出的是,雖然4個處理模塊的存儲器空間是可以共享的,但是BSP的初始設定對共享加了權限限制,使A處理模塊只可以訪問B、C、D處理模塊的頭64 MB空間,B、C、D處理模塊也可以訪問A處川模塊的頭64 MB空間,但B、C、D處理模塊彼此之間小能訪問。如果需要改變設置,可以到sysLib.c程序的sysH-wlnit子程序中用sysPhysMemAdd函數更改。 

    2)BSL文件 

    BSL(板級支持庫)文件支持對板子進行較為低級的操作和控制,它不依賴操作系統,也就是說基于vx-Works操作系統的BSP可以使用BSL,而不需要操作系統的應用也可以使用BSL。BSL的功能主要有以下幾大類:板信息類函數:可以控制和獲得板子的狀念信息;DMA類函數:對存儲器直接進行訪問的函數;Flash管理類函數:只有A處理器才能管理Flash;中斷類函數:處理器之間的中斷有多種方式,。它們都由板內中斷控制器(OBIC模塊)統一管理;PCI、VME總線類函數;串口調用類函數:只有B處理器才能使用。 

    3)IXLibs-AV 庫函數  

    這是被優(yōu)化的運算函數庫,提供32位浮點數據構成的向量和矩陣運算。專門有資料顯示這些運算的耗時,因為MPC7447/A的主頻可以達到1 GHz,它的運算速度非??欤枰⒁獾氖沁@些資料僅僅顯示運算時間,在實際算法運行時,數據從存儲空間搬人高速緩沖存儲器還需要額外的時間,這足由于Champ-av3的存儲傘問的構造方式決定的。所以必須綜合數據的更新率、數據量和運算時問這3個因素,才能真正估算算法的牦時。 

    IXLibs-AV庫函數可以簡化運算,但使用時最好先對函數進行驗證。因為它雖然足以C語言的方式應用,但有些參數的調用卻不像按C語言的習慣那樣使用,而且編譯和運行時不會出現任何提示。 

    3 處理模塊之問協同工作方式 
  
    多處理芯片涉及協同工作問題,彼此之間的握手信息可以有多種方式傳遞。  


    1)FIFO-IPI中斷 

    每個處理器都擁有1個16位寬度、32位深度的FIFO,用來存儲FIFO_IPI中斷。只要這個FIFO不空,就會產生INT_ID_FIFO_NOT_EMPTY中斷向量。BSL中專門有這類調用函數。這種中斷的優(yōu)點是不會丟失,還可以攜帶不同的中斷信息。 

    2)IPI中斷 

    每個處理器擁有8個相互獨立的IPI中斷:INT_ID_IPIO~INT_ID_IPI7。IPI中斷無奇存,這意味著如果不能及時響應巾斷,后一個中斷會丟失。但是IPI中斷支持廣播式中斷,1個處理器可以向所有的處理器(包括自己)發(fā)送中斷。 

    此外,還有若十種方法如硬件信號量也可以同步多處理器系統。上述這些方式都是通過OBIC模塊統一管理的,每個處理器都有與OBIC的獨立通道,因此,這些方式的產生和響應不占用CPU總線周期。即使當阿系統正在頻繁進行傳數工作,也不會影響系統的同步。 

    4 軟件程序運行時問估算 

    軟件程序的耗時估算是前期工作不可缺少的一步,大致可分為數據傳輸耗時和算法運算耗時。
        
    數據傳輸耗時主要指DMA傳輸數據的時間,雖然數據可以異地共享,但會額外花費時間,尤其在共享數據量很大的時候。所以對于大數據量,一般采用DMA方式傳到各個處理模塊的本地存儲器,以供它們各自訪問。這就涉及到DMA傳輸數據的耗時估算。經過實測,同一個DMA通道傳輸數據量與耗時之比是常數,但是啟動1個DMA通道的傳輸耗時與啟動多個DMA通道的傳輸耗時之比不是常數。例如:A處理器啟動1個DMA,傳輸10 MB數據給B處理器,大約需要25.196 ms;而A處理器同時啟動3個DMA,分別傳輸10 MB數據給B、C、D處理器,只需要37.383 ms。從此叮以看出,選擇適當的DMA傳輸方式,可以大大降低傳輸耗時。 

    Champ-av3的存儲空間構造方式特殊,由于高速緩沖存儲器空間遠小于存儲空間,所以算法的耗時和參與運算的數據量并不成正比。除了了解算法本身的運算時間外,最好充分考慮數據的更新率和運算數據量。如果算法允許,可以將數據拆成小包運算,減少算法耗時。 

    5 Champ-av3板的應用 

    圖2所示是一則Champ-av3主板的硬件應用實例。它的輸入信號是同步數據流,PMC子卡1有64位可用戶自定義的IO口,而且接口電平可以有多種選擇。數據進入子卡后可以在大容量的FPGA中進行預處理,然后通過PCI總線進入主板。需要注意的是PCI總線是64位的,所以數據在預處理時最好拼接成64位,這樣除了可以提高PCI總線傳輸速率,還便于存儲器存放數據。而主板調用這些數據時,由于是C語言編程,可以以C語言允許的數據形式任意調用。  


  

    輸出信號是異步數據流,PMC子卡2通過PCI總線與主板連接,任何一個處理模塊都可以控制它,通過它傳輸或接收數據。PMC子卡2最多可以有4對雙向星形結構連接方式,因此它可以實現點對多傳輸方式,但在這種傳輸方式下,傳輸速率最好不要超過50 MB/s。 

    由于A處理模塊對Flash存儲器的特殊控制地位,讓它處在主控地位是比較方便的。A處理模塊負責所有的控制流程,其他模塊可以在A處理模塊的控制下運行程序,并行處理數據。 

    6 結束語 

    Champ-av3板內部有4片MPC7447/A處理器,每片主頻都是1 GHz,所以本板的運算速度很快,可以滿足目前大多數數字信號處理的要求。而且它配備各種子卡,有靈活的接口方式,所以是一種功能強大、通用性好的硬件平臺,適用于多種數字信號處理方面的開發(fā)應用。 


linux操作系統文章專題:linux操作系統詳解(linux不再難懂)


評論


相關推薦

技術專區(qū)

關閉