www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 模擬 > 模擬
[導(dǎo)讀] 介紹了PCI橋接口芯片PCI9052和CAN接口芯片SJA1000,給出了基于PCI總線的CAN總線適配卡軟硬件的設(shè)計思路、過程及實現(xiàn)方法。

現(xiàn)場總線CAN(Controller Area Network控制器局域網(wǎng)絡(luò))以其高性能、高可靠性及獨特的設(shè)計,越來越受到人們的重視和青睞,不但在汽車行業(yè)中應(yīng)用廣泛,而且在工業(yè)控制、機器人、醫(yī)療器械、傳感器等領(lǐng)域發(fā)展迅速。為了擴(kuò)展CAN總線的功能,與計算機相連,可設(shè)計具有CAN接口和PC接口的CAN適配卡,用來收集CAN總線上各個節(jié)點的信息,轉(zhuǎn)發(fā)給PC機,并可將PC機的命令和數(shù)據(jù)轉(zhuǎn)發(fā)給各個節(jié)點以及完成對CAN總線上的用戶系統(tǒng)的部分監(jiān)控和管理工作。 

    PCI總線是Intel公司推出的一種先進(jìn)的高性能32/64位局部總線,可同時支持多組外圍設(shè)備,不受制于處理器,數(shù)據(jù)吞吐量大 (33MHz總線頻率、32位傳輸時峰值可高達(dá)132MB/s)。目前PCI是處于主流的計算機總線。以往的CAN卡一般都是基于ISA總線的,由于ISA總線傳輸速率低,CAN卡必須增加中繼控制功能,才能夠適應(yīng)CAN的高速傳輸,導(dǎo)致造價高、體積大、傳輸速率低,不利于CAN總線的推廣應(yīng)用。由于PCI總線傳輸速度快,而且支持熱插拔、電源管理等功能,不但能滿足CAN總線的高速數(shù)據(jù)傳輸,性能高、功能強,而且體積小、價格低、使用方便、應(yīng)用范圍廣。 

    CAN卡的設(shè)計包括硬件設(shè)計和軟件設(shè)計。 

1 硬件設(shè)計 

    PCI總線是一種獨立于CPU的局部總線,不同于傳統(tǒng)的ISA總線。由于PCI總線規(guī)范定義了嚴(yán)格的電氣特性和時序要求,開發(fā)難度比ISA總線的開發(fā)難度大。實現(xiàn)PCI接口的方案一般有兩種:采用可編程邏輯器件和專用總線接口器件。采用可編程邏輯器件實現(xiàn)PCI接口的最大好處是比較靈活,可把PCI時序模塊和功能模塊結(jié)合在一起,可以利用的器件也比較多(如Altera公司的CPLD器件、Xilinx公司的FPGA器件等),還可以購買由廠家提供的用VHDL、AHDL等硬件描述語言編制的PCI核心設(shè)計模塊,但其設(shè)計難度還是很高,因為PCI總線對負(fù)載要求、傳輸數(shù)據(jù)的建立時間的要求都比較苛刻,同時還需要器件內(nèi)部實現(xiàn)用于配置的各類寄存器,以及完成邏輯校驗、地址譯碼等工作的寄存器(大致需要15000個門電路)。此外,還需加入FIFO、用戶寄存器組和后端設(shè)備接口等部分。設(shè)計這種PCI總線接口會導(dǎo)致將大量的人力、物力投入到復(fù)雜的邏輯驗證和時序分析的工作上,開發(fā)周期較長。采用專用接口器件雖然沒有采用可編程邏輯器件那么靈活,但能夠有效地降低接口設(shè)計的難度,縮短開發(fā)時間。專用接口器件具有較低的成本和很高的通用性,能夠優(yōu)化數(shù)據(jù)傳輸,提供配置空間,具備用于突發(fā)傳輸功能的片內(nèi)FIFO,提供擴(kuò)展局部總線等優(yōu)點,并且許多公司還提供配套的開發(fā)工具(例如評估板或驅(qū)動程序開發(fā)軟件),使用很方便,開發(fā)周期短。目前市場上常見的有PLX、AMCC、Cypress等公司的PCI橋芯片,各個型號的PCI接口芯片的大致特點如表1所示。 

    PCI設(shè)備可分為主模式和從模式。主模式橋芯片可以進(jìn)行DMA操作,而從模式只能接受讀寫操作。根據(jù)PCI提供的傳輸數(shù)據(jù)帶寬(最大132MB/s)和CAN總線(最大1Mbps)的要求,加上經(jīng)濟(jì)和開發(fā)難度與周期上的考慮(主模式橋芯片較昂貴,開發(fā)難度較大),又因不需要DMA功能,采用從模式橋芯片足以滿足傳輸數(shù)據(jù)的需要。此外,選擇芯片不僅考慮性能和經(jīng)濟(jì)上的要求,而且還需要考慮硬件開發(fā)和驅(qū)動程序開發(fā)的難易。如果不提供足夠的芯片說明和應(yīng)用樣例及開發(fā)工具,將大大增加開發(fā)難度和延長開發(fā)周期。因此,采用PLX公司的PCI總線目標(biāo)接口芯片PCI9052作為CAN卡中的PCI接口芯片,負(fù)責(zé)與計算機之間的數(shù)據(jù)通信。

    PCI9052是PLX公司開發(fā)的低價格PCI總線從模式接口芯片,低功耗,符合PCI2.1規(guī)范,提供的局部總線(Local Bus)可通過編程設(shè)置為8/16/32位的(非)復(fù)用總線。其主要特點有: 

    (1)直接數(shù)據(jù)轉(zhuǎn)換模式  PCI9052支持PCI到Local Bus的內(nèi)存映射和I/O映射的突發(fā)讀寫。 

    (2)ISA接口邏輯  PCI9052支持通過8/16位內(nèi)存映射或I/O映射從PCI到ISA總線的單周期讀、寫訪問。方便從ISA卡向PCI卡的轉(zhuǎn)換。 

    (3)中斷產(chǎn)生器  由Local Bus的兩個中斷信號可以產(chǎn)生一個PCI中斷信號:INTA#。 

    (4)局部總線  PCI9052提供的局部總線不但可編程,而且與PCI總線的時鐘相互獨立運行,可實現(xiàn)異步操作,總線操作自動實現(xiàn)時序同步。兩總線的異步運行方便了高、低速設(shè)備的兼容。局部的運行時鐘頻率范圍0~40MHz、TTL電平,可由PCI提供或由用戶自行提供;PCI的運行時鐘頻率范圍0~33MHz。 

    (5)串行EEPROM  用于存放PCI BUS和Local Bus的部分配置信息。 

    (6)4個局部設(shè)備片選  基址和地址范圍可以由串行EEPROM或主控設(shè)備進(jìn)行設(shè)置。 

    (7)5個局部地址空間  基址和地址范圍及其映射可以由串行EEPROM或主控設(shè)備進(jìn)行設(shè)置。 

    (8)Big/Little Endian模式的字節(jié)交換  適合不同計算機體系。 

    (9)局部總線等待狀態(tài)  除了等待信號LRDYi#用于握手之外,PCI9052還有一個內(nèi)部等待產(chǎn)生器(包括地址到數(shù)據(jù)周期、數(shù)據(jù)到數(shù)據(jù)周期和數(shù)據(jù)到地址周期的等待)。 

    (10)延遲讀模式  PCI9052支持PCI2.1規(guī)范的延遲讀模式。 

    (11)FIFO  PCI9052包括一個64Byte的寫FIFO和一個32Byte的讀FIFO,從而支持預(yù)取模式、即突發(fā)操作。 

    (12)PCI鎖定機制  主控設(shè)備可以通過鎖定信號占有對PCI9052的唯一訪問權(quán)。 

    由于CAN總線的迅猛發(fā)展,許多芯片廠商開發(fā)了很多系列的CAN通信控制器芯片。如表2所示。 

    由于PCI9052可以啟動局部總線的讀寫,CAN卡不再需要微控制器,采用CAN通信控制器即可,本CAN卡采用SJA1000。SJA1000支持BasicCAN和PeliCAN模式,具有FIFO、支持熱插拔等功能,不但可以實現(xiàn)CAN總線接口功能,而且芯片可以根據(jù)晶振的頻率,輸出可編程的CLKOUT信號,該信號正好可作為PCI9052的局部總線的總線頻率,節(jié)省了器件,方便了設(shè)計。CAN總線的總線頻率可為12MHz、16MHz或24MHz,PCI9052自動實現(xiàn)局部總線與PCI總線的訪問同步。CAN總線收發(fā)器采用82C250。該芯片是CAN總線控制器和物理總線的接口,可以提供對CAN總線的差動發(fā)送和接受能力,具有抗瞬間干擾、保護(hù)總線的能力,可以通過調(diào)整CAN總線上通訊脈沖的邊沿斜率來降低射頻干擾。 

    由于PCI設(shè)備在計算機中的硬件資源是系統(tǒng)動態(tài)分配的,因此在設(shè)計出基本的硬件框架后,要進(jìn)行PCI配置設(shè)計。CAN卡的硬件資源為映射SJA1000內(nèi)部寄存器的內(nèi)存映射空間和一個中斷源。PCI9052提供5個局部地址空間,可以選用其中的一個作為SJA1000的地址空間,分配32個8位地址。同時設(shè)置相應(yīng)的初始化,PCI配置寄存器中的寄存器PCIBAR2設(shè)置為0XFFFFFFE0,向系統(tǒng)請求分配內(nèi)存的數(shù)量為32,類型為不可預(yù)讀,其它寄存器的值可設(shè)置為0。設(shè)置局部地址空間的范圍為0X00000000~0X00000020。PCI9052提供2個局部中斷源,利用LINTi1即可,注意的是:LINTi1信號線沒有驅(qū)動能力,SJA1000的INT引腳也沒有驅(qū)動能力,因此該信號線必須加上拉電阻,否則該信號線的電平不確定,工作肯定不正常。SJA1000提供電平觸發(fā)中斷信號,因此PCI9052的中斷觸發(fā)模式設(shè)置為電平觸發(fā)。利用PCI9052的局部設(shè)備片選CS0#作為SJA1000的片選信號。CS0#片選信號的起始地址和地址范圍由CS0 Base Address寄存器設(shè)置,值為0X00000002。另外,PCI9052的LRDYi#信號為局部總線數(shù)據(jù)準(zhǔn)備信號,SJA1000的寄存器地址映射成地址,數(shù)據(jù)傳輸不存在延遲等待,因此LRDYi#引腳可接地,表示SJA1000的寄存器總是立即可讀寫。PCI9052寄存器的初始值由串行EEPROM提供,在PCI9052加電后讀取。EEPROM必須采用支持連讀功能的芯片,本設(shè)計采用Microchip的93LC46B。用PLX公司提供的開發(fā)工具PlxMon可對93LC46B進(jìn)行讀寫。 

    PCI9052的硬件調(diào)試可采用PlxMon。利用它可以對PCI設(shè)備的配置資源進(jìn)行檢驗。利用PLX提供的SDK,可以對PCI9052的局部寄存器、局部總線及EEPROM進(jìn)行讀寫,這樣可以調(diào)試硬件。借助開發(fā)工具,不必開發(fā)PCI設(shè)備的調(diào)試軟件,可節(jié)省很多時間。同時,SDK也為驅(qū)動程序的開發(fā)提供了程序框架,加快了開發(fā)進(jìn)度。 

    CAN卡的電路框圖如圖1所示。 

 

 

2 軟件設(shè)計 

    軟件設(shè)計包括驅(qū)動程序的設(shè)計和COM組件程序設(shè)計。 

    由于PCI設(shè)備的中斷、I/O端口、映射內(nèi)存等資源都是動態(tài)分配的,必須編寫驅(qū)動程序管理硬件,才能供用戶編程使用。為了通用性和兼容性,CAN卡驅(qū)動程序的開發(fā)采用支持Windows XP、Windows2000和Windows98的WDM驅(qū)動程序。開發(fā)工具采用Visual C++6.0和Win2000 DDK。由于CAN卡上沒有微控制器,因此對CAN總線端口的所有操作都是由驅(qū)動程序來完成的。這不僅可以由計算機來實現(xiàn)復(fù)雜的功能,例如,錯誤檢測、斷點續(xù)傳等,同時節(jié)省了硬件,而且有利于CAN卡的升級——只要更換驅(qū)動程序即可。驅(qū)動程序的功能主要是配置SJA1000的CAN接口、收發(fā)CAN總線上的數(shù)據(jù)、對CAN總線進(jìn)行實時監(jiān)測、接收用戶程序的收發(fā)命令。收發(fā)數(shù)據(jù)和CAN總線錯誤均采用中斷處理,驅(qū)動程序可以快速響應(yīng),通過事件(Event)內(nèi)核對象直接通知給用戶程序。由于WDM驅(qū)動程序運行在系統(tǒng)的內(nèi)核態(tài),編寫非常復(fù)雜,限于篇幅,僅給出軟件的框圖(見圖2)。 

 

 

    為了方便用戶的使用,還應(yīng)編寫相應(yīng)的API函數(shù)或ActiveX控件等其它應(yīng)用層的程序提供給用戶。由于ActiveX控件基于先進(jìn)的COM技術(shù),具有良好的封裝性、使用靈活性等特點,可使用戶編程簡單、方便,因此在CAN卡的設(shè)計中編寫了ActiveX控件。ActiveX控件負(fù)責(zé)與驅(qū)動程序的通信,通過控件的事件把CAN卡接收的數(shù)據(jù)通知給用戶程序,利用控件的屬性設(shè)置CAN通信控制器,按照設(shè)置的方法發(fā)送用戶程序的數(shù)據(jù)。 

    根據(jù)以上的設(shè)計,開發(fā)了名為Can1000的CAN卡。經(jīng)使用證明,該卡設(shè)計簡單明了、性能較高、成本低廉、驅(qū)動程序和ActiveX控件使用方便,達(dá)到了設(shè)計和用戶的要求。 

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉