<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于A(yíng)RM嵌入式系統的PC/104總線(xiàn)設計

基于A(yíng)RM嵌入式系統的PC/104總線(xiàn)設計

作者: 時(shí)間:2008-02-20 來(lái)源: 收藏

  當前已經(jīng)進(jìn)入嵌入式系統全面應用時(shí)代,基于處理器和嵌入式Linux的嵌入式系統以其設計靈活、軟硬件可裁剪、性能優(yōu)越、成本低等特點(diǎn)和優(yōu)勢,倍受設計者和使用者青睞。其在低功耗、低成本應用領(lǐng)域確立了其市場(chǎng)領(lǐng)導地位;同時(shí)隨著(zhù)x86架構的不斷成熟和x86處理器的應用范圍越來(lái)越廣,人們逐步開(kāi)始認識到其本身架構的限制,在工業(yè)控制領(lǐng)域嵌入式處理器將有望取代傳統的X86處理器。

本文引用地址:http://dyxdggzs.com/article/79033.htm

  PCI04總線(xiàn)是一種近年來(lái)在國際上廣泛流行的專(zhuān)門(mén)為嵌入式系統而定義的工業(yè)控制總線(xiàn),被IEEE協(xié)會(huì )定義為IEEE-P996,該系列產(chǎn)品已廣泛應用于通信設備、車(chē)輛導航、工程控制等各種領(lǐng)域。由于PC或PC/AT的主板和擴展卡的尺寸及功耗標準都太大,。ISA總線(xiàn)不能滿(mǎn)足嵌入式系統的發(fā)展的需要。PC/104作為從。ISA總線(xiàn)轉變而來(lái)的接口總線(xiàn),主要是為了適應嵌入式系統發(fā)展的需要,但是這種早期的總線(xiàn)結構是建立在Intel的x86架構之上的,在體系結構下,還沒(méi)有一個(gè)統一的標準可以提供對PC/104總線(xiàn)的支持,因為ARM在體系架構、總線(xiàn)時(shí)序、電氣性能等方面和x86都有很大的區別。本文將提出一種在A(yíng)RM處理器上支持PC/104總線(xiàn)的解決方案。

  l 系統總體設計

  系統的工作原理:PC/104總線(xiàn)上的1/O和Memory各16 MB空間用nGCS2和nGCS3選通,分別映射到的S3C24lO存儲空間Bank2和Bank3的ROM/SRAM上。由于S3C24:10和CPLD在電平模式、制造工藝上都和PC/104總線(xiàn)標準有差異,故選用器件74LVHl62245做3.3~5 V電平轉換器Buffer的方式來(lái)調整電氣特性,進(jìn)行TTL電平和LVTTL電平的轉換,并增強驅動(dòng)能力。PC/104總線(xiàn)上的8個(gè)中斷請求信號IRQ[3:11]經(jīng)bairer直接連接到S3C:2410的EINT[O:7];將S3C2410地址線(xiàn)SAddr[1:23]通過(guò)Buffer直接連接到Pc/104總線(xiàn)的Addr[1:19]和LAddr[17:23],.Addr0由控制器給出,當總線(xiàn)為8位數據傳輸時(shí)有效。由于復雜可編程器件CPLD的集成度高,與專(zhuān)用集成電路相比,具有設計靈活、開(kāi)發(fā)周期短、設計制造成本低、大大節省了硬件資源優(yōu)點(diǎn),可選用他來(lái)做PC/104總線(xiàn)的控制器,主要是完成S3C2410讀寫(xiě)時(shí)序向PC/104總線(xiàn)讀寫(xiě)時(shí)序的轉換,對輸入控制信號譯碼,提供PC/104總線(xiàn)和S3C2410處理器的控制信號,同時(shí)產(chǎn)生PC/104所需要的時(shí)鐘信號。S3C2410數據總線(xiàn)D[O:15]經(jīng)CPLD輸出到Buffer(Buffer上的數據傳輸方向由控制信號Data dir控制),連接到PC/104的數據總線(xiàn)上。因此總線(xiàn)控制設計的關(guān)鍵是保證控制器CPLD的時(shí)序的正確。其原理框圖如圖1所示。

  

 

  2 PC/104總線(xiàn)控制器的實(shí)現

  2.1 PC/104總線(xiàn)簡(jiǎn)介

  PC/104模塊具有獨特的堆疊式總線(xiàn)擴展方式、體積小、功耗低、可靠性高等特點(diǎn),由J1/P1,64針單列雙排插針或插孔,和J2/P2,40針單列雙排插針或插孔組成,總共104根總線(xiàn)信號,PCI04因此得名;標準模塊的機械尺寸是3.6X3.8 in,即96X90 lnln。當總線(xiàn)工作在16位的數據模式下,兒/P1和J2/P2引腳的信號都應有效,在8位數據模式下,只有J1/P1引腳信號有效,J2/P2上的信號無(wú)效。104個(gè)引腳的組成:20根地址線(xiàn);7根鎖存地址線(xiàn);16根數據線(xiàn);11個(gè)中斷請求;32根控制線(xiàn);14跟地和電源線(xiàn);2個(gè)key;1個(gè)8 MHz的BCLK和1個(gè)14 MHz的OSC;總線(xiàn)的工作電壓為5 V。PC/104總線(xiàn)的I/O讀寫(xiě)時(shí)序如圖2所示。

  

 

  2.2 ARM$3C2410處理器簡(jiǎn)介

  S3C2410是韓國三星電子公司的一款基入ARM920T內核的16/32位RISC嵌入式處理器,主要面向手持設備及高性?xún)r(jià)比、低功耗的應用,最高工作頻率為203 MI-Iz。ARM920T核由ARM920TDMI、存儲管理單元(MMU)和高速緩存3部分組成。其中MMU可以管理虛擬內存,高速緩存由獨立的16 kB地址和16 kB數據高速Cache組成,他支持嵌入式Linux,Windows ce等嵌入式操作系統。S3C2410將系統的存儲空間分成8組(Bank),每組的大小為128 M,共1 G。Bank0~Bank5的開(kāi)始地址固定,用于ROM/SREM。Bank7的開(kāi)始地址是Bank6的結束地址,靈活可變,其主要用于ROM/SRAM/SDRAM。S3C2410采用nGCS[7:0]8個(gè)通用的片選信號來(lái)選則這些組。讀寫(xiě)時(shí)序圖如圖3所示。

  

 

  2.3 PC/104總線(xiàn)控制器的設計

  本設計采用。Xilinx公司XC95144XL的CPLD,共144個(gè)引腳,其中可編程的引腳數117個(gè),滿(mǎn)足PC/104總線(xiàn)控制器上輸入輸出控制信號數目的要求;器件正常工作電壓3.3 V,I/O端口的負載電流可達24 mA,延遲時(shí)間tpD=5 ns,工作頻率f=178 MHz,可與S3C2410的AHB總線(xiàn)的時(shí)鐘頻率HCLK匹配。VHDL是電子設計的主流硬件描述語(yǔ)言,具有很強的電路描述和建模的能力,從而大大簡(jiǎn)化了硬件設計的任務(wù),提高了設計的效率和可靠性,并在語(yǔ)言的易讀性和層次化結構化設計方面,表現了強大的生命力和應用潛力。Max+PlusⅡ界面友好,使用便捷。因此選擇用VHDL語(yǔ)言編寫(xiě)有限狀態(tài)機來(lái)實(shí)現PC/104總線(xiàn)控制器,通過(guò)Max+P1usⅡ開(kāi)發(fā)工具進(jìn)行邏輯波形驗證。

  2.3.1 控制器內部狀態(tài)圖

  在PC/104總線(xiàn)的設計中,設計的重點(diǎn)是總線(xiàn)控制器的實(shí)現,能否完成PC/104總線(xiàn)驅動(dòng),關(guān)鍵在于控制器能否正常運行。PC/104總線(xiàn)控制器的工作流程:控制器等待選通信號有效,如果nGCS有效則鎖存地址并保持ARM總線(xiàn)狀態(tài),然后進(jìn)行讀寫(xiě)操作判斷,最后把數據和相應得控制信號加在PC/104總線(xiàn)上,完成操作后釋放ARM總線(xiàn)。其狀態(tài)轉換圖如圖4所示。

  

 

  2.3.2 I/o空間讀寫(xiě)邏輯仿真波形

  本設計的有限狀態(tài)機采用VHDL語(yǔ)言設計,主要完成PC/104總線(xiàn)控制器的狀態(tài)圖轉換,從邏輯仿真波形上看:ARM讀操作時(shí),n0E信號有效(低電平),從總線(xiàn)上讀人數據,同時(shí)使總線(xiàn)控制信號有效;寫(xiě)操作時(shí),nWE信號有效(低電平),把數據直接寫(xiě)到總線(xiàn)上,同時(shí)也使總線(xiàn)控制信號有效,圖5的仿真波形基本符合本設計的S3C24lO和PC/104總線(xiàn)讀寫(xiě)時(shí)序要求。

  3嵌入式Linux下的驅動(dòng)程序開(kāi)發(fā)

  為了在Linux 2.6操作系統下實(shí)現本文所述的功能,必須為總線(xiàn)控制器提供一個(gè)驅動(dòng)程序。在Linux中,所有的硬件設備都像常規文件一樣看待,他們可以使用和操作文件相同的,標準的系統調用進(jìn)行打開(kāi)、關(guān)閉和讀寫(xiě)。用戶(hù)程序通過(guò)相應的系統調用來(lái)訪(fǎng)問(wèn)硬件設備,設備驅動(dòng)程序的作用正是為這些系統調用提供接口。為了能對PC/104總線(xiàn)上的地址空間進(jìn)行隨機、連續訪(fǎng)問(wèn),把PC/104總線(xiàn)設計成塊設備。

  

 

  設備驅動(dòng)程序本質(zhì)上說(shuō)就是一組相關(guān)函數的集合。在驅動(dòng)程序模塊化編程中,首先需要調用入口函數im-modLde()完成設備驅動(dòng)程序的初始化工作:利用函數

在系統中注冊和PC/104相關(guān)的幾個(gè)中斷,關(guān)聯(lián)中斷服務(wù)例程,并設置中斷等級;利用函數setexternal irq(int irq,int edge,int pulIup)設置中斷的觸發(fā)模式,和是否利用處理器的內部上拉;其中最重要的一個(gè)工作就是向內核注冊設備,調用函數
,注冊成功后,該設備獲得系統分配的主設備號、自定義的次設備號,并建立起與文件系統的關(guān)聯(lián);在本應用中只需要定義write()、read()兩個(gè)文件操作,因此文件系統接口可定義為:

 

  

 

  最后驅動(dòng)程序卸載時(shí)調用出口函數Clearnup rood-ule(),通過(guò)函數

釋放相應的資源。

 

  4 結 語(yǔ)

  本文重點(diǎn)描述對PC/104控制器的設計,從滿(mǎn)足系統的時(shí)序要求出發(fā),采用CPLD器件和VHDL語(yǔ)言完成對PC/104總線(xiàn)上信號的驅動(dòng),同時(shí)在嵌入式Linux環(huán)境下編寫(xiě)驅動(dòng)程序,提供了一套完整的基于A(yíng)RM嵌入式系統上實(shí)現PC/104總線(xiàn)的方案,該方案將在實(shí)踐應用中進(jìn)一步驗證和完善。本文成功地把工業(yè)控制計算機技術(shù)中的嵌入式PC/104總線(xiàn)結構在S3C2410處理器上實(shí)現,該系統具有體積小、功耗低,克服了傳統PC機的缺點(diǎn);采用CPLD通過(guò)VHDL語(yǔ)言實(shí)現PC/104總線(xiàn)控制器,縮短開(kāi)發(fā)的成本和周期,提高了開(kāi)發(fā)的靈活性。



關(guān)鍵詞: ARM

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>