999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

軟核處理器MicroBlaze的CAN總線接口電路設(shè)計(jì)

2017-03-31 01:23:54

唐 明

(中國西南電子技術(shù)研究所,成都 610036)

軟核處理器MicroBlaze的CAN總線接口電路設(shè)計(jì)

唐 明

(中國西南電子技術(shù)研究所,成都 610036)

針對某綜合化通信導(dǎo)航識別設(shè)備,提出了一種以Xilinx公司的FPGA代替?zhèn)鹘y(tǒng)單片機(jī)和外圍擴(kuò)展芯片實(shí)現(xiàn)CAN總線接口電路的設(shè)計(jì)方法,通過MicroBlaze軟核處理器實(shí)現(xiàn)了CAN總線通信節(jié)點(diǎn)的SoC片上系統(tǒng)設(shè)計(jì),并給出了詳細(xì)的軟件設(shè)計(jì)流程。這些方法和技術(shù)已在實(shí)際工程中成功應(yīng)用。

MicroBlaze軟核處理器;CAN總線;SJA1000

引 言

CAN(Controller Area Network)——控制器局域網(wǎng)絡(luò),屬于工業(yè)現(xiàn)場總線的一種,與一般的串行通信總線相比,CAN總線的數(shù)據(jù)通信具有突出的可靠性、實(shí)時(shí)性和靈活性。具體表現(xiàn)在:CAN總線(2.0B規(guī)范)允許高達(dá)1 Mbps的通信速率,支持多主通信模式,有高抗電磁干擾性,而且能夠檢測出通信過程中產(chǎn)生的任何錯(cuò)誤,已被廣泛應(yīng)用到自動化控制系統(tǒng)中[1]。

在某綜合化通信導(dǎo)航識別設(shè)備中,由于設(shè)備集成度較高,要求以最小的體積和功耗實(shí)現(xiàn)多達(dá)33個(gè)CAN總線節(jié)點(diǎn)電路[2]。傳統(tǒng)的單片機(jī)或微處理器加上獨(dú)立的CAN控制器的電路設(shè)計(jì)已不能滿足上述要求,因此本文設(shè)計(jì)了一種基于FPGA的SoC片上系統(tǒng),一方面減少了電路的復(fù)雜程度,節(jié)省了節(jié)點(diǎn)電路的體積和功耗;另一方面,F(xiàn)PGA豐富的邏輯資源、超高的性能和可編程性極大地提高了整個(gè)設(shè)備的可靠性、靈活性和可擴(kuò)展性。

1 MicroBlaze簡介

“嵌入式開發(fā)工具”是指用來產(chǎn)生、編輯、編譯、鏈接、加載和調(diào)試高級編程語言代碼的工具。Xilinx Embedded Development Kit(Xilinx嵌入式開發(fā)套件,簡稱EDK)是Xilinx FPGA嵌入式開發(fā)工具,支持IBM PowerPC硬核處理器和MicroBlaze軟核處理器。

MicroBlaze是一款由Xilinx公司開發(fā)的嵌入式軟核處理器,采用32位RISC優(yōu)化結(jié)構(gòu),用于開發(fā)基于Xilinx系列FPGA的嵌入式工程。它符合IBM CoreConnect標(biāo)準(zhǔn),能夠與PPC405系統(tǒng)無縫連接[3]。在FPGA內(nèi)部可以集成多個(gè)MicroBlaze處理器,極大地增加了FPGA開發(fā)的靈活性。MicroBlaze處理器的優(yōu)勢主要有:用戶可以根據(jù)不同的需要靈活定制系統(tǒng)特性和外設(shè);減小系統(tǒng)復(fù)雜性、降低功耗和成本;占用FPGA資源比較少。

2 系統(tǒng)軟硬件設(shè)計(jì)

2.1 CAN總線節(jié)點(diǎn)的組成

通常情況下,每個(gè)CAN總線節(jié)點(diǎn)電路都可以被劃分為3個(gè)不同的功能塊[4],如圖1所示。CAN總線收發(fā)器實(shí)現(xiàn)CAN協(xié)議控制器到物理總線之間的接口,將CAN控制器輸入/輸出的單端信號轉(zhuǎn)換為物理總線上的差分信號,其性能直接決定了總線接口的性能、系統(tǒng)總線長度和系統(tǒng)節(jié)點(diǎn)數(shù),是決定整個(gè)CAN總線網(wǎng)絡(luò)通信性能的關(guān)鍵因素之一。

圖1 CAN總線節(jié)點(diǎn)的組成

CAN協(xié)議控制器執(zhí)行CAN總線規(guī)范里規(guī)定的總線通信協(xié)議,通常用于協(xié)議解析、報(bào)文數(shù)據(jù)緩存和驗(yàn)收濾波,對外與主控制器和CAN總線收發(fā)器均有接口。主控制器通過對CAN協(xié)議控制器編程,控制總線的工作方式與工作狀態(tài),執(zhí)行數(shù)據(jù)的對外發(fā)送和接收,從而實(shí)現(xiàn)具體的功能應(yīng)用,如讀取傳感器數(shù)據(jù)、控制傳動裝置和處理人機(jī)接口等。

2.2 系統(tǒng)硬件設(shè)計(jì)

如圖1所示,本文所設(shè)計(jì)的CAN總線接口電路的主控制器選用MicroBlaze處理器,CAN協(xié)議控制器選用SJA1000,總線收發(fā)器選用SN65HVD230QD,其中,MicroBlaze處理器和SJA1000均以軟核的形式嵌入到一片F(xiàn)PGA芯片內(nèi),該FPGA選用Xilinx公司的Spartan3A芯

片,主要實(shí)現(xiàn)總線數(shù)據(jù)的收發(fā)、內(nèi)部協(xié)議的解析處理和傳感器的控制,是整個(gè)CAN總線接口電路的核心器件。

基于MicroBlaze軟核處理器的CAN總線接口電路基本組成如圖2所示。其中,MicroBlaze處理器、存儲控制單元(Memory Controller)、離散量輸入/輸出(GPIO)、中斷控制器(Interrupt Controller)等均可在EDK套件的XPS集成開發(fā)環(huán)境下以通用軟核調(diào)用的方式直接連接在相應(yīng)內(nèi)部總線上[5]。SJA1000軟核使用Verilog語言編寫,并利用XPS開發(fā)環(huán)境連接在PLB/OPB總線上。至此,CAN總線接口電路的FPGA內(nèi)部邏輯設(shè)計(jì)已完成。

具有兩路冗余能力的CAN總線收發(fā)器部分電路如圖3所示。

圖3 CAN總線收發(fā)器電路圖

FPGA與總線收發(fā)器之間采用光耦器件HCPL063L作隔離,這樣做的好處有兩個(gè):一是增強(qiáng)CAN總線接口電路的抗干擾能力,提高了數(shù)據(jù)收發(fā)的可靠性,有利于系統(tǒng)達(dá)到最大的通信速率或距離;二是當(dāng)外部信號出錯(cuò)造成器件燒毀時(shí),可保證FPGA相應(yīng)引腳不被燒毀。需要注意的是,光耦器件兩側(cè)的電源應(yīng)獨(dú)立設(shè)計(jì),否則達(dá)不到完全隔離的效果。CAN總線收發(fā)器SN65HVD230QD的RS腳為工作模式選擇,可通過串接電阻R13將芯片設(shè)定為斜率控制模式,選擇1 kΩ的電阻表示CAN總線工作于高速模式,此時(shí)總線的抗射頻干擾能力較弱,需選用屏蔽雙絞線作為物理總線。

2.3 系統(tǒng)軟件設(shè)計(jì)

使用MicroBlaze軟核處理器對CAN總線通信模塊的軟件控制流程主要包括節(jié)點(diǎn)初始化、數(shù)據(jù)報(bào)文的發(fā)送和接收。由于設(shè)備對各個(gè)節(jié)點(diǎn)的數(shù)據(jù)實(shí)時(shí)性要求較高,因此CAN總線數(shù)據(jù)的接收采用中斷方式。

2.3.1 節(jié)點(diǎn)初始化

系統(tǒng)上電后,首先對MicroBlaze處理器和SJA1000進(jìn)行初始化,以確定總線速率、工作模式、濾波方式等。MicroBlaze處理器的初始化主要包括使能內(nèi)部Cache、使能內(nèi)部中斷、初始化GPIO等。SJA1000的初始化主要包括設(shè)置總線工作方式、節(jié)點(diǎn)驗(yàn)收濾波方式、驗(yàn)收代碼寄存器(ACR)、驗(yàn)收屏蔽寄存器(AMR)、波特率參數(shù)、輸出控制寄存器(OCR)、中斷使能寄存器(IER)等。對SJA1000的初始化需注意,所有設(shè)置只能在復(fù)位模式下才能進(jìn)行,設(shè)置完成后,須回到正常工作狀態(tài),方可進(jìn)行正常的數(shù)據(jù)通信。

2.3.2 報(bào)文發(fā)送

發(fā)送報(bào)文時(shí),MicroBlaze處理器將要發(fā)送的信息按要求組幀,傳送到SJA1000的發(fā)送緩沖器,然后將命令寄存器里的“發(fā)送請求”標(biāo)志置位,即可完成一次報(bào)文發(fā)送。當(dāng)SJA1000正在發(fā)送報(bào)文時(shí),發(fā)送緩沖器被寫鎖定,因此,每發(fā)送一次報(bào)文到發(fā)送緩沖器之前,必須檢查狀態(tài)寄存器中的“發(fā)送緩沖器狀態(tài)”標(biāo)志是否釋放。MicroBlaze處理器向CAN總線發(fā)送報(bào)文的流程如圖4所示。

2.3.3 報(bào)文接收

接收報(bào)文時(shí),MicroBlaze處理器收到SJA1000產(chǎn)生的接收中斷后,即開始取出接收緩沖器里的數(shù)據(jù),然后通過對命令寄存器的相應(yīng)標(biāo)志位發(fā)送一個(gè)釋放接收緩沖器的命令,之后再檢查狀態(tài)寄存器中的“接收緩沖器狀態(tài)”標(biāo)志,從而保證所有數(shù)據(jù)均被取出。MicroBlaze處理器從CAN總線接收報(bào)文的流程如圖5所示。接收流程需注意,在處理接收報(bào)文的過程中需同時(shí)對總線關(guān)閉、接收溢出、錯(cuò)誤報(bào)警等異常情況進(jìn)行處理,只有在總線完全正常的情況下,才開始進(jìn)行數(shù)據(jù)接收操作。

3 仿真、驗(yàn)證結(jié)果

系統(tǒng)調(diào)試驗(yàn)證時(shí),上位機(jī)選用周立功公司的USBCAN II,其調(diào)試界面為ZLGCANTest,如圖6所示,可以看到,本文設(shè)計(jì)的CAN總線節(jié)點(diǎn)與上位機(jī)的數(shù)據(jù)通信正常,可正常接收上位機(jī)的數(shù)據(jù),亦可發(fā)送數(shù)據(jù)至上位機(jī),使其正常解析出發(fā)送數(shù)據(jù)。

圖4 報(bào)文發(fā)送流程圖

圖5 報(bào)文接收流程圖

圖6 上位機(jī)數(shù)據(jù)收發(fā)調(diào)試界面

結(jié) 語

[1] 饒?jiān)茲?現(xiàn)場總線CAN原理與應(yīng)用技術(shù)[M].北京:北京航空航天大學(xué)出版社,2007.

[2] 楊斌,李阜東.CAN總線在航空模塊化綜合系統(tǒng)中

CAN Bus Interface Based on MicroBlaze Soft-core Processor

Tang Ming

(Southwest China Institute of Electronic Technology,Chengdu 610036,China)

A design method of CAN bus interface circuit is proposed in the integrated communication navigation and identification avionics,which is based on FPGA instead of the traditional single chip microcomputer and peripheral expansion chip Xilinx.MicroBlaze soft-core processors is used to implement the CAN communication note,and its detailed software design is listed.These methods have been used in the practical projects.

MicroBlaze soft-core processor;CAN bus;SJA1000

TN919.5

A

主站蜘蛛池模板: 国产va在线观看免费| 暴力调教一区二区三区| 亚洲精品无码日韩国产不卡| 精品超清无码视频在线观看| 无码免费视频| 午夜欧美理论2019理论| 精品撒尿视频一区二区三区| 欧美成人影院亚洲综合图| 91精品伊人久久大香线蕉| 日本三区视频| 性视频一区| 国产性爱网站| 国产一区二区三区视频| 日韩精品成人在线| 不卡午夜视频| 日本成人在线不卡视频| 老熟妇喷水一区二区三区| 欧洲av毛片| 欧美在线三级| 色综合天天娱乐综合网| 无码中文字幕乱码免费2| 亚洲六月丁香六月婷婷蜜芽| 亚洲精品中文字幕无乱码| 制服丝袜国产精品| 伊人久久大香线蕉影院| 欧美一级片在线| 国产一级视频久久| 一本大道在线一本久道| 污网站免费在线观看| 国产精品自在在线午夜| 亚洲日本中文字幕天堂网| 日韩AV无码免费一二三区 | 亚洲国产黄色| 91欧美亚洲国产五月天| 国产欧美综合在线观看第七页| 91网址在线播放| 亚洲成AV人手机在线观看网站| 国产一区二区精品福利| 国产成人一区免费观看| 婷婷久久综合九色综合88| 欧美精品色视频| 亚洲手机在线| 美女视频黄频a免费高清不卡| 91福利片| 91原创视频在线| 国产黑丝一区| 高h视频在线| 色综合天天视频在线观看| 国产精品永久免费嫩草研究院| 久久精品国产精品一区二区| h视频在线观看网站| 丰满人妻久久中文字幕| 亚洲天堂啪啪| 国产精品区视频中文字幕| 日韩成人在线视频| 国产欧美视频在线观看| 国产激爽爽爽大片在线观看| 国产偷国产偷在线高清| 国产国模一区二区三区四区| 男人天堂伊人网| 亚洲最大情网站在线观看| av午夜福利一片免费看| 毛片一级在线| 国产噜噜在线视频观看| 国产va在线观看免费| 亚洲性视频网站| 精久久久久无码区中文字幕| 国产精品嫩草影院视频| 国产精品夜夜嗨视频免费视频| 欧美.成人.综合在线| 国产美女一级毛片| 久久国产乱子| 永久成人无码激情视频免费| 亚洲AV色香蕉一区二区| 无码粉嫩虎白一线天在线观看| 女人18一级毛片免费观看| 国产91丝袜在线播放动漫| 亚洲av色吊丝无码| 亚洲综合九九| 日韩毛片在线视频| 无码福利日韩神码福利片| 一区二区三区成人|