亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于IEC 1158 標(biāo)準(zhǔn)的現(xiàn)場(chǎng)總線(xiàn)芯片設(shè)計(jì)*

        2022-04-19 10:49:22張立國(guó)李福昆吳鵬飛
        電子技術(shù)應(yīng)用 2022年4期
        關(guān)鍵詞:狀態(tài)機(jī)極性寄存器

        張立國(guó) ,劉 強(qiáng) ,嚴(yán) 偉 ,李福昆 ,吳鵬飛 ,王 博

        (1.燕山大學(xué) 電氣工程學(xué)院,河北 秦皇島 066000;2.北京大學(xué) 軟件與微電子學(xué)院,北京 100871)

        0 引言

        現(xiàn)場(chǎng)總線(xiàn)(Field bus)是一種工業(yè)數(shù)據(jù)總線(xiàn),主要解決工業(yè)現(xiàn)場(chǎng)的智能化儀器儀表、控制器、執(zhí)行機(jī)構(gòu)等現(xiàn)場(chǎng)設(shè)備間的數(shù)字通信以及這些現(xiàn)場(chǎng)控制設(shè)備和高級(jí)控制系統(tǒng)之間的信息傳遞問(wèn)題[1-6]。

        IEC 1158 標(biāo)準(zhǔn)定義的現(xiàn)場(chǎng)總線(xiàn)通信模型由物理層、數(shù)據(jù)鏈路層、應(yīng)用層、用戶(hù)層四部分構(gòu)成[7]。其中,物理層負(fù)責(zé)數(shù)據(jù)傳輸并可為現(xiàn)場(chǎng)設(shè)備供電,總線(xiàn)數(shù)據(jù)采用曼徹斯特編碼技術(shù)進(jìn)行編碼[8-15]。本文所設(shè)計(jì)的現(xiàn)場(chǎng)總線(xiàn)芯片主要實(shí)現(xiàn)物理層功能以及部分?jǐn)?shù)據(jù)鏈路層功能,實(shí)現(xiàn)現(xiàn)場(chǎng)設(shè)備與總線(xiàn)連接。并內(nèi)置AXI4 總線(xiàn)接口,實(shí)現(xiàn)與CPU 高速、安全的數(shù)據(jù)交互。

        目前已有的符合IEC1158 標(biāo)準(zhǔn)的現(xiàn)場(chǎng)總線(xiàn)芯片有中科博微的FBC0409、美國(guó)Smar 公司的FB3050、日本Yamaha公司的YTZ420 等。但上述芯片均不具備協(xié)議擴(kuò)展能力,僅能應(yīng)用于符合IEC 1158 標(biāo)準(zhǔn)的特定現(xiàn)場(chǎng)總線(xiàn)系統(tǒng)中,應(yīng)用領(lǐng)域單一。且由于與CPU 交互時(shí)均使用私有協(xié)議,導(dǎo)致通用性較差。此外,受私有協(xié)議帶寬限制,以及這些私有協(xié)議不具備突發(fā)傳輸能力,導(dǎo)致芯片與CPU 進(jìn)行數(shù)據(jù)交互的時(shí)延較大。

        為了解決上述問(wèn)題,本文設(shè)計(jì)了一種符合IEC 1158現(xiàn)場(chǎng)總線(xiàn)標(biāo)準(zhǔn)的現(xiàn)場(chǎng)總線(xiàn)芯片。采用標(biāo)準(zhǔn)AXI 總線(xiàn)接口與CPU 進(jìn)行數(shù)據(jù)交互,總線(xiàn)位寬為32 位,總線(xiàn)頻率100 MHz,提供3.2 Gb/s 總線(xiàn)帶寬,實(shí)現(xiàn)芯片與CPU 的高速且安全數(shù)據(jù)傳輸。同時(shí),芯片內(nèi)置豐富的控制寄存器和狀態(tài)寄存器,可通過(guò)AXI 總線(xiàn)配置芯片工作模式或監(jiān)控芯片運(yùn)行狀態(tài),包括實(shí)現(xiàn)協(xié)議擴(kuò)展。此外,對(duì)于使用雙絞線(xiàn)作為現(xiàn)場(chǎng)總線(xiàn)傳輸介質(zhì)的現(xiàn)場(chǎng)總線(xiàn)協(xié)議,本芯片設(shè)計(jì)有極性糾正電路,可自動(dòng)偵測(cè)雙絞線(xiàn)載波變化,并在必要情況下進(jìn)行實(shí)時(shí)極性糾正,使得現(xiàn)場(chǎng)設(shè)備接入總線(xiàn)時(shí),即使正負(fù)極顛倒也能正常工作。

        1 IEC 1158 現(xiàn)場(chǎng)總線(xiàn)模型

        IEC 1158 標(biāo)準(zhǔn)的通信模型基于ISO(International Organization for Standardization,國(guó)際標(biāo)準(zhǔn)化組織)的OSI(Open System Interconnection Reference Model,開(kāi)放式系統(tǒng)互聯(lián)通信參考模型)7 層模型,取其物理層、數(shù)據(jù)鏈路層、應(yīng)用層,并增加用戶(hù)層[9-13]。

        其中,物理層為現(xiàn)場(chǎng)設(shè)備供電,且采用Manchester 編碼技術(shù)對(duì)數(shù)據(jù)進(jìn)行編碼傳輸,支持點(diǎn)對(duì)點(diǎn)、總線(xiàn)型、菊花鏈型、樹(shù)型拓?fù)浣Y(jié)構(gòu),數(shù)據(jù)傳輸速率為32.25 kb/s。

        數(shù)據(jù)鏈路層為系統(tǒng)管理內(nèi)核和總線(xiàn)訪問(wèn)子層訪問(wèn)總線(xiàn)媒體提供服務(wù),負(fù)責(zé)鏈路活動(dòng)調(diào)度、數(shù)據(jù)的接收與發(fā)送、活動(dòng)狀態(tài)的探測(cè)與響應(yīng)以及總線(xiàn)上各設(shè)備間的鏈路時(shí)間同步。

        應(yīng)用層定義在設(shè)備間交換數(shù)據(jù)、命令、事件信息以及請(qǐng)求應(yīng)答中的信息格式。

        用戶(hù)層組成用戶(hù)所需的應(yīng)用程序,如規(guī)定的功能塊、設(shè)備描述,實(shí)現(xiàn)網(wǎng)絡(luò)管理、系統(tǒng)管理等。

        目前符合IEC 1158 標(biāo)準(zhǔn)的現(xiàn)場(chǎng)總線(xiàn)協(xié)議主要有基金會(huì)現(xiàn)場(chǎng)總線(xiàn)(Foundation Fieldbus,F(xiàn)F)和PROFIBUS-PA 等。

        2 芯片架構(gòu)設(shè)計(jì)

        本文所設(shè)計(jì)的芯片架構(gòu)如圖1 所示,實(shí)現(xiàn)了IEC 1158 物理層規(guī)范及部分鏈路層功能,如CRC 校驗(yàn)等。

        圖1 芯片架構(gòu)設(shè)計(jì)圖

        芯片結(jié)構(gòu)主要包括AXI 總線(xiàn)接口模塊、中斷控制器、直接存儲(chǔ)器訪問(wèn)控制器(Direct Memory Access,DMA)、隨機(jī)存取存儲(chǔ)器(Random Access Memory,DMA)、寄存器堆棧、CRC 校驗(yàn)?zāi)K、地址識(shí)別模塊、幀編解碼模塊、曼徹斯特(Manchester)編解碼模塊、總線(xiàn)收發(fā)模塊以及時(shí)鐘模塊。

        3 CPU 交互方式

        AXI 總線(xiàn)協(xié)議是ARM 公司提出的先進(jìn)微控制器總線(xiàn)體系結(jié)構(gòu)(Advanced Microcontroller Bus Architecture,AMBA)總線(xiàn)協(xié)議中最重要的部分。AXI 總線(xiàn)協(xié)議由AXIFull、AXI-Lite、AXI-Stream 協(xié)議構(gòu)成。其中AXI-Full 適用于大量數(shù)據(jù)隨機(jī)讀寫(xiě),且支持突發(fā)傳輸;AXI-Lite 用于數(shù)據(jù)量較小的隨機(jī)讀寫(xiě),適用于操作寄存器;AXIStream 適用于無(wú)地址的順序讀寫(xiě)。

        AXI 總線(xiàn)有5 個(gè)獨(dú)立傳輸通道,分別是地址通道(寫(xiě)地址通道、讀地址通道)、數(shù)據(jù)通道(寫(xiě)數(shù)據(jù)通道、讀數(shù)據(jù)通道)以及應(yīng)答通道。每次進(jìn)行數(shù)據(jù)傳輸之前,CPU 先通過(guò)地址通道告知AXI 從機(jī)設(shè)備需要操作的存儲(chǔ)器地址,隨后CPU 或AXI 從設(shè)備將數(shù)據(jù)傳輸數(shù)據(jù)通道。在傳輸完成后,接收方通過(guò)應(yīng)答通道回復(fù)發(fā)送方,從而確保數(shù)據(jù)透明傳輸。

        本課題芯片采用AXI-Full 總線(xiàn)進(jìn)行數(shù)據(jù)傳輸、使用AXI-Lite 總線(xiàn)進(jìn)行芯片配置和狀態(tài)反饋。

        其中,AXI-Full 總線(xiàn)通過(guò)雙通道DMA 控制器掛載發(fā)送緩存RAM 和接收緩存RAM,緩存RAM 與AXI-Full總線(xiàn)的總線(xiàn)位寬均為32 位,AXI 總線(xiàn)工作頻率為100 MHz,提供3.2 Gb/s 帶寬,保證CPU 與芯片間高速低時(shí)延的數(shù)據(jù)傳輸。AXI-Full 總線(xiàn)地址通道為10 位,擁有1 KB的RAM 尋址能力。

        AXI-Lite 總線(xiàn)位寬同樣為32 bit,與芯片內(nèi)部的控制寄存器和狀態(tài)寄存器相連,用于配置芯片的地址、工作模式、中斷響應(yīng)、測(cè)試模式等功能,并將芯片的工作狀態(tài)如地址信息、所處的工作模式、中斷屏蔽信息等傳輸給CPU,以便實(shí)時(shí)監(jiān)控芯片工作狀態(tài)。

        4 現(xiàn)場(chǎng)總線(xiàn)數(shù)據(jù)傳輸

        符合IEC 1158 協(xié)議規(guī)范的現(xiàn)場(chǎng)總線(xiàn)的數(shù)據(jù)幀一般由前導(dǎo)碼、數(shù)據(jù)和特征碼(起始符、結(jié)束符)構(gòu)成[8],其中,前導(dǎo)碼由8 位二進(jìn)制數(shù)10101010 構(gòu)成,接收端通過(guò)檢測(cè)前導(dǎo)碼進(jìn)行判斷數(shù)據(jù)傳輸起始;起始符表示幀數(shù)據(jù)開(kāi)始,數(shù)據(jù)幀中的數(shù)據(jù)緊跟在起始符之后;結(jié)束符標(biāo)志著一幀的結(jié)束,芯片檢測(cè)到結(jié)束符后復(fù)位接收狀態(tài)。

        考慮到符合1158 規(guī)范的現(xiàn)場(chǎng)總線(xiàn)協(xié)議的特征碼各不相同,因此,本文所設(shè)計(jì)的芯片設(shè)計(jì)有特征碼寄存器,CPU 可配置相應(yīng)寄存器以使芯片能夠識(shí)別不同現(xiàn)場(chǎng)總線(xiàn)協(xié)議的特征碼,實(shí)現(xiàn)協(xié)議擴(kuò)展。

        4.1 數(shù)據(jù)發(fā)送過(guò)程

        發(fā)送數(shù)據(jù)時(shí),CPU 將需要發(fā)送的數(shù)據(jù)編碼成位寬為32 位的數(shù)據(jù),隨后通過(guò)AXI-Full 總線(xiàn)發(fā)送給芯片內(nèi)部的發(fā)送緩存RAM。通過(guò)32 位AXI 總線(xiàn)傳輸數(shù)據(jù)到RAM中后,將有效數(shù)據(jù)字節(jié)數(shù)寫(xiě)入芯片內(nèi)部相應(yīng)寄存器,芯片可根據(jù)寄存器值將RAM 中相同字節(jié)的數(shù)據(jù)發(fā)送到總線(xiàn)。配置完數(shù)據(jù)字節(jié)數(shù)后,CPU 配置芯片內(nèi)部控制寄存器的發(fā)送使能位使能芯片發(fā)送。芯片若偵測(cè)到發(fā)送使能信號(hào),則向DMA 請(qǐng)求數(shù)據(jù),DMA 根據(jù)發(fā)送數(shù)據(jù)總量寄存器的值從發(fā)送緩存RAM 中讀取相應(yīng)字節(jié)的數(shù)據(jù),之后數(shù)據(jù)進(jìn)入數(shù)據(jù)處理流水線(xiàn),為數(shù)據(jù)添加特征碼、計(jì)算CRC 校驗(yàn)碼、添加CRC 幀尾,對(duì)數(shù)據(jù)進(jìn)行Manchester 編碼以及數(shù)據(jù)串行化發(fā)送等。

        發(fā)送行為由發(fā)送狀態(tài)機(jī)控制,發(fā)送狀態(tài)機(jī)各狀態(tài)符號(hào)及說(shuō)明如表1 所示。

        表1 發(fā)送狀態(tài)機(jī)符號(hào)說(shuō)明

        發(fā)送狀態(tài)機(jī)狀態(tài)轉(zhuǎn)移圖如圖2 所示。狀態(tài)機(jī)輸入信號(hào)有發(fā)送使能信號(hào)send_en、DMA 控制器輸出的數(shù)據(jù)有效信號(hào)din_v、CRC 幀尾計(jì)算模塊輸出的CRC 有效信號(hào)crc_v。

        圖2 發(fā)送狀態(tài)機(jī)狀態(tài)轉(zhuǎn)移圖

        IDLE 狀態(tài)下,若收到來(lái)自CPU 的發(fā)送使能能信號(hào),狀態(tài)機(jī)進(jìn)入RQ 狀態(tài);在RQ 狀態(tài)下,發(fā)送器向DMA 控制器發(fā)送數(shù)據(jù)請(qǐng)求信號(hào),并進(jìn)入PR 狀態(tài)。在PR 狀態(tài)下,若偵測(cè)到輸入數(shù)據(jù)有效信號(hào)為高電平,則將來(lái)自DMA的數(shù)據(jù)及數(shù)據(jù)有效信號(hào)延遲2 個(gè)時(shí)鐘周期;并讀取前導(dǎo)碼寄存器值,對(duì)其進(jìn)行Manchester 編碼后傳輸?shù)浆F(xiàn)場(chǎng)總線(xiàn)上,發(fā)送完成后進(jìn)入FS 狀態(tài)。在FS 狀態(tài)下,讀取起始符寄存器,進(jìn)行Manchester 編碼后將起始符傳輸?shù)浆F(xiàn)場(chǎng)總線(xiàn)上,隨后進(jìn)入DT 狀態(tài)。在DT 狀態(tài)下開(kāi)始發(fā)送經(jīng)過(guò)延時(shí)的數(shù)據(jù),同時(shí)啟動(dòng)閑談定時(shí)器。數(shù)據(jù)發(fā)送完成則進(jìn)入FE 狀態(tài),或閑談定時(shí)器溢出后,恢復(fù)到IDLE 狀態(tài);FE 狀態(tài)下發(fā)送經(jīng)過(guò)Manchester 編碼的幀結(jié)束符,發(fā)送完成后回到IDLE 狀態(tài)。

        4.2 數(shù)據(jù)接收過(guò)程

        芯片的總線(xiàn)數(shù)據(jù)接收模塊偵測(cè)現(xiàn)場(chǎng)總線(xiàn)的載波變化,若偵測(cè)到電平變化為10101010,則認(rèn)為現(xiàn)場(chǎng)設(shè)備與總線(xiàn)為正接狀態(tài),則直接將接收到的數(shù)據(jù)輸入到后續(xù)處理模塊;若偵測(cè)到01010101,則認(rèn)為現(xiàn)場(chǎng)設(shè)備與現(xiàn)場(chǎng)總線(xiàn)反接,芯片將接收到的數(shù)據(jù)輸入到極性糾正電路。然后對(duì)糾正后的數(shù)據(jù)進(jìn)行Manchester 解碼,進(jìn)行地址識(shí)別以及CRC 校驗(yàn),并將數(shù)據(jù)輸送給DMA 控制器。DMA 控制器將8 位數(shù)據(jù)封裝成32 位數(shù)據(jù)寫(xiě)入接收緩存RAM,同時(shí),將接收到的字節(jié)數(shù)寫(xiě)入接收數(shù)據(jù)總量寄存器中,并在數(shù)據(jù)全部寫(xiě)入RAM 后,根據(jù)目的地址匹配結(jié)果和CRC 校驗(yàn)結(jié)果判斷是否為本機(jī)數(shù)據(jù)以及數(shù)據(jù)是否正確。符合判斷要求則產(chǎn)生中斷信號(hào),并將中斷類(lèi)型寫(xiě)入中斷類(lèi)型寄存器,否則不產(chǎn)生中斷信號(hào)。CPU 檢測(cè)到中斷后讀中斷類(lèi)型寄存器的值,若為數(shù)據(jù)就緒中斷,則CPU 讀接收數(shù)據(jù)總量寄存器,并將字節(jié)數(shù)轉(zhuǎn)化為AXI 總線(xiàn)讀取次數(shù),將數(shù)據(jù)讀取到內(nèi)存,并還原數(shù)據(jù)。

        數(shù)據(jù)接收過(guò)程由接收狀態(tài)機(jī)控制,接收狀態(tài)機(jī)各狀態(tài)符號(hào)及說(shuō)明如表2 所示。

        表2 接收狀態(tài)機(jī)符號(hào)說(shuō)明

        接收狀態(tài)機(jī)狀態(tài)轉(zhuǎn)移圖如圖3 所示。狀態(tài)機(jī)輸入信號(hào)為接收引腳電平信號(hào)rx。

        圖3 接收狀態(tài)轉(zhuǎn)移圖

        系統(tǒng)啟動(dòng)后狀態(tài)機(jī)處于IDLE 狀態(tài),當(dāng)偵測(cè)到接收引腳rx 有載波時(shí),接收狀態(tài)機(jī)和結(jié)束符狀態(tài)機(jī)分別進(jìn)入PR 狀態(tài)和FE 狀態(tài)。在PR 狀態(tài)下,對(duì)接收的數(shù)據(jù)進(jìn)行Manchester 解碼并與前導(dǎo)碼比較并判斷是否極性反接。若極性反接,則將后續(xù)數(shù)據(jù)數(shù)據(jù)極性糾正電路后進(jìn)行解碼,若所有位全部與前導(dǎo)碼匹配,則結(jié)束符狀態(tài)機(jī)進(jìn)入FS 狀態(tài),接收狀態(tài)機(jī)進(jìn)入FE,否則,均回到IDLE狀態(tài)。FE 狀態(tài)下,狀態(tài)機(jī)匹配幀結(jié)束符,若匹配錯(cuò)誤回到IDLE 狀態(tài),否則在匹配完成后恢復(fù)到IDLE 狀態(tài)。在FS狀態(tài)下,狀態(tài)機(jī)按位匹配幀起始符,若全部匹配,則進(jìn)入DT 狀態(tài),否則,回到RX 狀態(tài)。在DT 狀態(tài)下,當(dāng)檢測(cè)到閑談超時(shí)、結(jié)束符匹配狀態(tài)機(jī)已檢測(cè)到結(jié)束符和檢測(cè)到數(shù)據(jù)幀的目的地址與本機(jī)地址不符,都恢復(fù)到IDLE 狀態(tài),否則繼續(xù)接收數(shù)據(jù)。

        考慮到不同現(xiàn)場(chǎng)總線(xiàn)協(xié)議幀格式不同,無(wú)法對(duì)全部現(xiàn)場(chǎng)總線(xiàn)協(xié)議進(jìn)行地址識(shí)別,因此,本芯片僅支持對(duì)基金會(huì)現(xiàn)場(chǎng)總線(xiàn)(Foundation Fieldbus,簡(jiǎn)稱(chēng)FF)協(xié)議進(jìn)行數(shù)據(jù)幀類(lèi)型識(shí)及與地址識(shí)別,對(duì)于其他符合IEC 1158 標(biāo)準(zhǔn)的現(xiàn)場(chǎng)總線(xiàn)協(xié)議,芯片將數(shù)據(jù)提交給CPU 后由CPU進(jìn)行地址識(shí)別,數(shù)據(jù)幀丟棄與否由CPU 裁決。

        5 關(guān)鍵技術(shù)實(shí)現(xiàn)

        5.1 Manchester 編碼技術(shù)的硬件實(shí)現(xiàn)

        IEC 1158 協(xié)議規(guī)定物理層數(shù)據(jù)需要使用Manchester編碼技術(shù)進(jìn)行編碼及解碼,本文芯片設(shè)計(jì)有全雙工Manchester 編碼及解碼電路,如圖4 所示。采用雙相L Manchester 編碼方式,由8 路并行非門(mén)電路及插值電路負(fù)責(zé)數(shù)據(jù)編碼,單周期可完成1 字節(jié)數(shù)據(jù)編碼工作。16 位采樣電路負(fù)責(zé)對(duì)接收端的數(shù)據(jù)進(jìn)行解碼,單周期可解碼2 字節(jié)Manchester 碼。

        圖4 Manchester 編、解碼電路原理圖

        5.2 CRC 校驗(yàn)的硬件實(shí)現(xiàn)

        現(xiàn)場(chǎng)設(shè)備所處的電磁環(huán)境復(fù)雜,影響現(xiàn)場(chǎng)總線(xiàn)上的數(shù)據(jù)傳輸,導(dǎo)致接收方接收到的數(shù)據(jù)發(fā)生錯(cuò)誤,為了確保接收方能對(duì)數(shù)據(jù)準(zhǔn)確性做出正確的判斷,IEC1158 規(guī)定發(fā)送方需在數(shù)據(jù)之后添加16 位CRC 校驗(yàn)碼。因此,本文芯片設(shè)計(jì)有8 位并行模2 運(yùn)算電路,單周期即可完成1 字節(jié)數(shù)據(jù)的CRC 計(jì)算任務(wù)。為發(fā)送的數(shù)據(jù)計(jì)算16位CRC 校驗(yàn)碼,為接收到的數(shù)據(jù)進(jìn)行CRC 校驗(yàn)。

        5.3 極性糾正

        所謂的極性糾正是指,當(dāng)現(xiàn)場(chǎng)總線(xiàn)以雙絞線(xiàn)作為傳輸介質(zhì)時(shí),芯片有能力通過(guò)偵測(cè)雙絞線(xiàn)上的信號(hào)載波變化判斷現(xiàn)場(chǎng)設(shè)備是否與雙絞線(xiàn)反接,若判斷為反接,芯片須具備對(duì)雙絞線(xiàn)傳輸?shù)臄?shù)據(jù)進(jìn)行實(shí)時(shí)電平糾正的能力,實(shí)現(xiàn)不論現(xiàn)場(chǎng)設(shè)備如何掛載于雙絞線(xiàn)上,設(shè)備都能從總線(xiàn)上正確地接收并解析數(shù)據(jù)。如圖5 所示,左側(cè)為正接,右側(cè)為反接。

        圖5 現(xiàn)場(chǎng)設(shè)備掛載情況示意圖

        當(dāng)現(xiàn)場(chǎng)設(shè)備與現(xiàn)場(chǎng)總線(xiàn)極性反接時(shí),現(xiàn)場(chǎng)設(shè)備從總線(xiàn)上接收到的電平為正接時(shí)的取反,因此,本芯片內(nèi)置極性偵測(cè)電路,當(dāng)偵測(cè)到數(shù)據(jù)幀前導(dǎo)碼為10101010 時(shí)判斷為正接。當(dāng)偵測(cè)到前導(dǎo)碼為01010101 時(shí)判斷為反接,此時(shí)調(diào)整門(mén)控電路,將芯片的數(shù)據(jù)輸入端口接入同步反相電路進(jìn)行極性糾正。

        此外,本文芯片設(shè)置有極性糾正測(cè)試模式寄存器控制位,CPU 可通過(guò)AXI-Lite 總線(xiàn)配置此控制位,使能極性糾正測(cè)試模式,芯片接收到的數(shù)據(jù)將兩次通過(guò)極性糾正電路,模擬反接情況,以便進(jìn)行芯片功能測(cè)試。

        5.4 協(xié)議擴(kuò)展

        對(duì)于符合IEC 1158 規(guī)范的各種現(xiàn)場(chǎng)總線(xiàn)協(xié)議,區(qū)別主要在數(shù)據(jù)鏈路層、應(yīng)用層和用戶(hù)層,而物理層的數(shù)據(jù)編碼方式及傳輸速率均相同。各現(xiàn)場(chǎng)總線(xiàn)協(xié)議在物理層的差異僅在于數(shù)據(jù)幀的特征碼(起始符和結(jié)束符)不同,以及數(shù)據(jù)的長(zhǎng)度不同。為使本芯片通用于符合IEC 1158規(guī)范的各現(xiàn)場(chǎng)總線(xiàn)系統(tǒng),芯片內(nèi)部設(shè)置有可配置的特征碼寄存器。用戶(hù)可根據(jù)所使用的現(xiàn)場(chǎng)總線(xiàn)協(xié)議規(guī)定,配置特征碼以實(shí)現(xiàn)對(duì)不同現(xiàn)場(chǎng)總線(xiàn)協(xié)議的支持,同時(shí)可通過(guò)閑談寄存器配置滿(mǎn)足不同協(xié)議的總線(xiàn)占用時(shí)間要求。

        6 FPGA 原型驗(yàn)證

        驗(yàn)證平臺(tái)硬件選用黑金基于FPGA 芯片的ZYNQ-7015開(kāi)發(fā)板,軟件環(huán)境為Vivado 以及Vivado SDK,圖6 為芯片測(cè)試架構(gòu)圖,芯片運(yùn)行在FPGA 上,CPU 為ARM 處理器,驗(yàn)證所用現(xiàn)場(chǎng)總線(xiàn)協(xié)議為基金會(huì)現(xiàn)場(chǎng)總線(xiàn)協(xié)議(FF)。

        圖6 芯片測(cè)試架構(gòu)

        測(cè)試流程如圖7 所示,左側(cè)為CPU 驅(qū)動(dòng)現(xiàn)場(chǎng)總線(xiàn)芯片發(fā)送數(shù)據(jù)的流程圖,右側(cè)為CPU 等待現(xiàn)場(chǎng)總線(xiàn)芯片中斷信號(hào)進(jìn)行相應(yīng)數(shù)據(jù)處理流程圖。系統(tǒng)啟動(dòng)后,主站及從站CPU 通過(guò)AXI-Lite 總線(xiàn)配置現(xiàn)場(chǎng)總線(xiàn)芯片工作模式,主站CPU 將指令通過(guò)AXI-Full 總線(xiàn)發(fā)送給現(xiàn)場(chǎng)總線(xiàn)芯片并使能發(fā)送,現(xiàn)場(chǎng)總線(xiàn)芯片偵測(cè)到使能信號(hào)后采用流水線(xiàn)模式對(duì)數(shù)據(jù)進(jìn)行數(shù)據(jù)處理并發(fā)送到現(xiàn)場(chǎng)總線(xiàn)上。從站現(xiàn)場(chǎng)總線(xiàn)芯片偵測(cè)到載波后進(jìn)行數(shù)據(jù)解碼等處理后產(chǎn)生中斷信號(hào),CPU 響應(yīng)中斷后通過(guò)AXI-Lite 總線(xiàn)讀取現(xiàn)場(chǎng)總線(xiàn)芯片的中斷類(lèi)型寄存器。若為數(shù)據(jù)就緒中斷,則通過(guò)AXI-Full 總線(xiàn)讀取現(xiàn)場(chǎng)總線(xiàn)新品內(nèi)部的數(shù)據(jù)緩存。從站CPU 進(jìn)行裁決后采用與主站相同的工作流程驅(qū)動(dòng)從站現(xiàn)場(chǎng)總線(xiàn)芯片發(fā)送回復(fù)數(shù)據(jù)。

        圖7 芯片測(cè)試流程圖

        測(cè)試所用協(xié)議為符合IEC 1158 標(biāo)準(zhǔn)的基金會(huì)現(xiàn)場(chǎng)總線(xiàn)(FF)協(xié)議,通過(guò)CPU 配置芯片為內(nèi)部回環(huán)模式后采集到的發(fā)送(主機(jī))與接收(從機(jī))時(shí)序。圖8 為測(cè)試過(guò)程中上位機(jī)軟件的部分打印信息,包括讀取的芯片配置信息、工作模式和發(fā)送(TX)及接收(RX)的數(shù)據(jù)。圖9 為芯片測(cè)試時(shí)抓取的部分波形圖。

        圖8 上位機(jī)打印的測(cè)試過(guò)程信息

        圖9 芯片測(cè)試波形圖

        7 結(jié)論

        本文介紹了一種支持在IEC 1158 現(xiàn)場(chǎng)總線(xiàn)標(biāo)準(zhǔn)范圍內(nèi)進(jìn)行協(xié)議擴(kuò)展的現(xiàn)場(chǎng)總線(xiàn)芯片架構(gòu),擁有AXI 高速CPU 接口、Manchester 編解碼電路、CRC 校驗(yàn)電路、極性偵測(cè)及糾正電路。擁有豐富的控制寄存器及狀態(tài)寄存器,可配置芯片運(yùn)行模式,如中斷屏蔽模式、回環(huán)模式,極性糾正測(cè)試模式等。并基于ZYNQ-7015 開(kāi)發(fā)板進(jìn)行了芯片功能驗(yàn)證,驗(yàn)證結(jié)果顯示本文所設(shè)計(jì)的芯片達(dá)到了設(shè)計(jì)要求。

        猜你喜歡
        狀態(tài)機(jī)極性寄存器
        Lite寄存器模型的設(shè)計(jì)與實(shí)現(xiàn)
        基于有限狀態(tài)機(jī)的交會(huì)對(duì)接飛行任務(wù)規(guī)劃方法
        跟蹤導(dǎo)練(四)
        分簇結(jié)構(gòu)向量寄存器分配策略研究*
        表用無(wú)極性RS485應(yīng)用技術(shù)探討
        一種新型的雙極性脈沖電流源
        高速數(shù)模轉(zhuǎn)換器AD9779/AD9788的應(yīng)用
        FPGA設(shè)計(jì)中狀態(tài)機(jī)安全性研究
        基于反熔絲FPGA的有限狀態(tài)機(jī)加固設(shè)計(jì)
        一種可重構(gòu)線(xiàn)性反饋移位寄存器設(shè)計(jì)
        麻豆成人在线视频| 久久亚洲中文字幕精品一区| 亚洲av久久久噜噜噜噜| 美女扒开内裤让男生桶| 人妻中文字幕不卡精品| 亚洲无毛成人在线视频| 99久久亚洲精品日本无码| 无码一区二区波多野结衣播放搜索| 2021亚洲色中文字幕| av网站免费观看入口| 亚洲人成电影网站色| 国产精品卡一卡二卡三| 亚洲欧美日本人成在线观看 | 偷拍美女上厕所一区二区三区| 内射合集对白在线| 首页动漫亚洲欧美日韩| 久久中文字幕av第二页| 97cp在线视频免费观看| 欧洲熟妇色xxxx欧美老妇多毛| 精品久久久久一区二区国产| 激情在线视频一区二区三区| 国产欧美va欧美va香蕉在线| 四虎影视在线影院在线观看| 国产精品av在线一区二区三区| 国产av一啪一区二区| 白丝爆浆18禁一区二区三区| 亚洲另类自拍丝袜第五页| 国产欧美日本亚洲精品一5区| 精品女厕偷拍视频一区二区| 最新国产福利在线观看精品| 久久国产精品国产精品日韩区 | 俺来也俺去啦最新在线| 日韩美无码一区二区三区| 亚洲天堂亚洲天堂亚洲色图| 免费a级毛片无码av| 欧美成人免费观看国产| 青青草绿色华人播放在线视频 | 一边做一边喷17p亚洲乱妇50p| 99视频一区| 蜜桃av一区二区三区| 久久无码字幕中文久久无码|