基于fpga的曼徹斯特編碼器的設(shè)計(jì)-畢業(yè)設(shè)計(jì)論文正文終稿_第1頁
基于fpga的曼徹斯特編碼器的設(shè)計(jì)-畢業(yè)設(shè)計(jì)論文正文終稿_第2頁
基于fpga的曼徹斯特編碼器的設(shè)計(jì)-畢業(yè)設(shè)計(jì)論文正文終稿_第3頁
基于fpga的曼徹斯特編碼器的設(shè)計(jì)-畢業(yè)設(shè)計(jì)論文正文終稿_第4頁
基于fpga的曼徹斯特編碼器的設(shè)計(jì)-畢業(yè)設(shè)計(jì)論文正文終稿_第5頁
已閱讀5頁,還剩41頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

電子科技大學(xué)畢業(yè)設(shè)計(jì)電子科技大學(xué)畢業(yè)設(shè)計(jì)(論文)題目:基于FPGA的曼徹斯特編碼器的設(shè)計(jì)專業(yè):電子信息工程目錄TOC\o"1-3"\h\u101421緒論141061.1選題的依據(jù)和意義 1149381.2項(xiàng)目研究內(nèi)容和任務(wù) 1234741.3論文內(nèi)容及結(jié)構(gòu) 2301592FPGA原理及開發(fā)工具283472.1FPGA原理 3105282.2QuartusⅡ及開發(fā)語言 4229473曼徹斯特編碼原理316063.11553B數(shù)據(jù)總線 8175653.2曼徹斯特編碼原理 10172064系統(tǒng)總體設(shè)計(jì)182884.1系統(tǒng)設(shè)計(jì)要求 11205124.2系統(tǒng)設(shè)計(jì)思路 11301244.3系統(tǒng)設(shè)計(jì)框圖 1218295系統(tǒng)模塊設(shè)計(jì)188325.1并串轉(zhuǎn)換器的設(shè)計(jì) 13261715.2曼徹斯特編碼器設(shè)計(jì) 14192436系統(tǒng)仿真及結(jié)果分析305796.1并串轉(zhuǎn)換器仿真及結(jié)果分析 19321286.2曼徹斯特編碼器仿真及結(jié)果分析 26138536.3系統(tǒng)總體仿真及結(jié)果分析 29106657結(jié)論及展望 3415815參考文獻(xiàn) 358283致謝 366729附錄A 373121附錄B 41基于FPGA的曼徹斯特編碼器的設(shè)計(jì)摘要電子技術(shù)與航空產(chǎn)業(yè)飛速發(fā)展,已成為我國支柱產(chǎn)業(yè)之一。我國政府高度重視航空航天產(chǎn)業(yè)發(fā)展,“十二五”期間將進(jìn)一步加大政府支持力度,促進(jìn)航空航天產(chǎn)業(yè)快速發(fā)展。在飛機(jī)制造中,航空電子系統(tǒng)是其中重要的組成部分,而航空電子系統(tǒng)中數(shù)據(jù)總線是關(guān)鍵技術(shù)之一。11553B作為一種通用的軍事標(biāo)準(zhǔn)協(xié)議,它對數(shù)據(jù)總線的電氣和協(xié)議特性進(jìn)行嚴(yán)格的規(guī)范和約束,現(xiàn)已廣泛運(yùn)用于航空電子綜合系統(tǒng)。該標(biāo)準(zhǔn)對航空飛機(jī)所需的數(shù)字/命令/響應(yīng),分時(shí)復(fù)用等數(shù)字總線技術(shù)提出了一系列的要求,其中包括數(shù)據(jù)總線的傳輸和協(xié)議格式。本文首先對FPGA和曼徹斯特編碼相關(guān)原理進(jìn)行概述,尤其是航空數(shù)據(jù)總線MIL-STD-1553B。其次是對其系統(tǒng)組成的介紹,本次設(shè)計(jì)主要包括兩大部分,并串轉(zhuǎn)換器、曼徹斯特編碼器。最后著重講述該系統(tǒng)在quartusⅡ軟件下的運(yùn)行和仿真。1553B總線協(xié)議中對傳輸?shù)淖诸愋瓦M(jìn)行了規(guī)范和分類:分別是命令字、狀態(tài)字和數(shù)據(jù)字。本次論文的設(shè)計(jì)主要著重于該協(xié)議總線接口內(nèi)部的曼徹斯特碼編碼器,作為總線接口的重要組成部分,曼徹斯特編碼器擔(dān)負(fù)著碼型編寫、奇偶校驗(yàn)等重要任務(wù),使數(shù)據(jù)能夠以1553B所定義的標(biāo)準(zhǔn)形式在數(shù)據(jù)總線中進(jìn)行傳輸。關(guān)鍵詞:FPGA曼徹斯特編碼1553B總線串并轉(zhuǎn)換電子科技大學(xué)畢業(yè)設(shè)計(jì)PAGE42DesignofManchesterEncoderBasedonFPGAAbstractElectronicsandAviationtechnologyindustrydevelopedrapidly.Ourcountryattachesgreatimportancetothedevelopmentofaerospaceindustry.IntheperiodofTwelfthofFive-YeargovernmentwillsupportfurtherincreaseAviation,itwillPromotetherapiddevelopmentoftheaerospaceindustry.Inaircraftmanufacturing,AvionicsSystemisanimportantpartoftheAviation.Theavionicssystemisthekeytechnologyofdatabus.1553Btakesonekindofmilitarystandard,ithascarriedonthestrictstandardandtherestrainttotheelectricityandtheprotocolcharacteristicofdatabus,andithasalreadywidelyusedintheaviationelectronsystem.ThisstandardproposeaseriesofrequeststothedigitalbustechnologywhichareobligatorytotheaviationairplanenumeraI/Order/response,timesharingmultipleuse,includingdatabusinformationflowandfunctionformat.ThisarticlefirstintroducesabouttheFPGAandManchesterEncoder,especiallyMIL-STD-1553B.Nextistheintroductionofitstwocompositionunit,ItincludingStringandconvertandManchesterEncoder.FhentheonethattoldemphaticallyisquartusⅡofOperationandSimulation,inthe1553B'sprotocol,thewordtypeswhichtransmittedinthe1553Bbushascarriedonthestandardclassification,theyaretheorderword、thestatuswordandthedataword.thedesignforthispapermainlyemphaticallyintheprotocolbusinterfaceinteriorManchestercodeencodegasthebusinterfaceimportantconstituent,theencoderisshoulderingtheparallel\serialIxansformation,thecodecompilation,theparitycheckandsoontheimportanttask,enablesthedataaccordingtothestandardformwhichdefinesby1553Btocarryonthetransmissioninthedatabus.Keywords:FPGAManchesterEncoder1553BStringandconvert1緒論1.1選題的依據(jù)和意義航空航天產(chǎn)業(yè)是國家綜合國力的集中體現(xiàn)和重要標(biāo)志,是國家先進(jìn)制造業(yè)的重要組成部分,是國家科技創(chuàng)新體系的一支重要力量。促進(jìn)航空航天產(chǎn)業(yè)快速發(fā)展。在飛機(jī)制造中,航空電子系統(tǒng)是其中重要的組成部分,而航空電子系統(tǒng)中數(shù)據(jù)總線是關(guān)鍵技術(shù)之一。MIL-STD-1553B是目前廣泛適用于航空電子領(lǐng)域的協(xié)議標(biāo)準(zhǔn),它具有傳輸穩(wěn)定、抗干擾、負(fù)荷輕、速率高等優(yōu)點(diǎn)。其主要被歐美軍方用于軍事系統(tǒng),在戰(zhàn)斗機(jī)、航天設(shè)備、驅(qū)逐艦等軍用設(shè)施上得到了非常多的運(yùn)用和實(shí)踐。為了適應(yīng)現(xiàn)代軍事斗爭的需要,近年來,我國在新型戰(zhàn)斗機(jī)、驅(qū)逐艦的研制中已開始采用1553B標(biāo)準(zhǔn)。但是,由于該標(biāo)準(zhǔn)的核心技術(shù)為歐美公司所壟斷。因此,自主研發(fā)基于MIL-STD-1553B總線標(biāo)準(zhǔn)的協(xié)議芯片及產(chǎn)品具有重要的戰(zhàn)略意義。目前,此類器件在國內(nèi)還較少出現(xiàn),對于整個(gè)1553B體系架構(gòu)的把握尚未形成,我們急需改變這種不利情況。自主研發(fā)1553B相關(guān)產(chǎn)品首先必須解決曼徹斯特碼的編碼、解碼。本文的主要工作就是研究1553B曼徹斯特碼編碼器的設(shè)計(jì)及實(shí)現(xiàn)。曼徹斯特碼編碼器是1553B總線接口中最為重要的器件之一,它直接關(guān)系到總線數(shù)據(jù)能否嚴(yán)格按照MIL-SID-1553B標(biāo)準(zhǔn)協(xié)議來進(jìn)行傳輸,是其三種類型字傳遞的門戶端口器件。本課題設(shè)計(jì)就是基于FPGA的曼徹斯特編碼器的設(shè)計(jì)。1.2項(xiàng)目研究內(nèi)容和任務(wù)本項(xiàng)目主要研究MIL-STD-1553B上的曼徹斯特碼編碼器的軟件設(shè)計(jì)和實(shí)現(xiàn)。技術(shù)上采用FPGA作為硬件平臺,為了使FPGA器件能順利完成曼碼的編碼任務(wù),它應(yīng)該包括這樣幾個(gè)部分:1.并串轉(zhuǎn)換器的設(shè)計(jì)并串轉(zhuǎn)換器的主要工作是將16位由前端輸入的并行數(shù)據(jù)轉(zhuǎn)換為曼徹斯特能夠編碼的串行數(shù)據(jù)。它主要由時(shí)鐘信號、轉(zhuǎn)換使能信號控制。2.曼徹斯特編碼器的設(shè)計(jì)在每個(gè)周期的開頭加同步字頭,數(shù)據(jù)輸入時(shí)間持續(xù)16個(gè)周期,期間對數(shù)據(jù)進(jìn)行編碼。若輸入的數(shù)據(jù)信元為“1”,編碼就通過輸出一個(gè)下降沿來表示,當(dāng)輸入數(shù)據(jù)為“0”時(shí),編碼則輸出一個(gè)上升沿。數(shù)據(jù)位輸入結(jié)束后,編碼器將對輸入的數(shù)據(jù)信元進(jìn)行奇偶校檢,如果在輸入的數(shù)據(jù)信元中“1”的個(gè)數(shù)為奇數(shù),編碼器輸出一個(gè)上升沿,反之若數(shù)據(jù)信元中“1”的個(gè)數(shù)為偶數(shù)則輸出一個(gè)下降沿。3.軟件設(shè)計(jì)的仿真QuartusⅡ借助EDA工具中的編譯器、綜合器、適配器、時(shí)序仿真器和編程器等工具進(jìn)行相應(yīng)的處理,才能使已完成的設(shè)計(jì)在FPGA上進(jìn)行硬件實(shí)現(xiàn)并得到測試結(jié)果。EDA工具有多種途徑完成目標(biāo)系統(tǒng)的輸入,如HDL文本輸入方式、原理圖輸入方式、狀態(tài)圖輸入方式以及混合輸入方式等。相對而言,HDL文本輸入方式是最基本也是最直接的輸入方式。將通過實(shí)例具體介紹基于QuartusII的VHDL文本輸入流程,包括設(shè)計(jì)的輸入、綜合、適配、仿真測試和編程下載等。1.3論文內(nèi)容及結(jié)構(gòu)介紹了FPGA的有關(guān)原理,及它的設(shè)計(jì)流程,vhdl語言的概述等;第三章介紹了曼徹斯特編碼的有關(guān)知識,尤其介紹了1553B數(shù)據(jù)總線;第四章對本文框架進(jìn)行了講述,有設(shè)計(jì)思路的比較和設(shè)計(jì)框圖;第五章介紹了主要的兩大模塊:串并轉(zhuǎn)換模塊和曼徹斯特編碼模塊;第六章對該系統(tǒng)功能進(jìn)行了仿真驗(yàn)證;第七章是對本次設(shè)計(jì)的小結(jié)和展望。2.FPGA原理及開發(fā)工具2.1FPGA原理FPGA(Field-ProgrammableGateArray),即現(xiàn)場可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點(diǎn)。 PIPI IOBIOB圖2.1FPGA的基本結(jié)構(gòu)目前以硬件描述語言(Verilog或VHDL)所完成的電路設(shè)計(jì),可以經(jīng)過簡單的綜合與布局,快速的燒錄至FPGA上進(jìn)行測試,是現(xiàn)代IC設(shè)計(jì)驗(yàn)證的技術(shù)主流。這些可編輯元件可以被用來實(shí)現(xiàn)一些基本的邏輯門電路(比如AND、OR、XOR、NOT)或者更復(fù)雜一些的組合功能比如解碼器或數(shù)學(xué)方程式。在大多數(shù)的FPGA里面,這些可編輯的元件里也包含記憶元件例如觸發(fā)器(Flip-flop)或者其他更加完整的記憶塊。

FPGA采用了邏輯單元陣列LCA(LogicCellArray)這樣一個(gè)新概念,內(nèi)部包括可配置邏輯模塊CLB(ConfigurableLogicBlock)、輸出輸入模塊IOB(InputOutputBlock)和內(nèi)部連線(Interconnect)三個(gè)部分,如圖2.1。FPGA的基本特點(diǎn)主要有:

1.采用FPGA設(shè)計(jì)ASIC電路,用戶不需要投片生產(chǎn),就能得到合用的芯片。

2.FPGA可做其它全定制或半定制ASIC電路的中試樣片。

3.FPGA內(nèi)部有豐富的觸發(fā)器和I/O引腳。

4.FPGA是ASIC電路中設(shè)計(jì)周期最短、開發(fā)費(fèi)用最低、風(fēng)險(xiǎn)最小的器件之一。

5.FPGA采用高速CHMOS工藝,功耗低,可以與CMOS、TTL電平兼容。

可以說,F(xiàn)PGA芯片是小批量系統(tǒng)提高系統(tǒng)集成度、可靠性的最佳選擇之一。目前FPGA的品種很多,有XILINX公司的Virtex系列、TI公司的TPC系列、ALTERA公司的Stratix系列等。

FPGA是由存放在片內(nèi)RAM中的程序來設(shè)置其工作狀態(tài)的,因此,工作時(shí)需要對片內(nèi)的RAM進(jìn)行編程。用戶可以根據(jù)不同的配置模式,采用不同的編程方式。加電時(shí),F(xiàn)PGA芯片將EPROM中數(shù)據(jù)讀入片內(nèi)編程RAM中,配置完成后,F(xiàn)PGA進(jìn)入工作狀態(tài)。掉電后,F(xiàn)PGA恢復(fù)成白片,內(nèi)部邏輯關(guān)系消失,因此,F(xiàn)PGA能夠反復(fù)使用。FPGA的編程無須專用的FPGA編程器,只須用通用的EPROM、PROM編程器即可。當(dāng)需要修改FPGA功能時(shí),只需換一片EPROM即可。這樣,同一片F(xiàn)PGA,不同的編程數(shù)據(jù),可以產(chǎn)生不同的電路功能。因此,F(xiàn)PGA的使用非常靈活。FPGA提供了一種“自頂向下"的全新的設(shè)計(jì)方法。這種設(shè)計(jì)方法首先從系統(tǒng)設(shè)計(jì)入手,在頂層進(jìn)行功能方框圖的劃分和結(jié)構(gòu)設(shè)計(jì),在圖表級進(jìn)行仿真、糾錯(cuò),并用硬件描述語言對高層次的系統(tǒng)行為進(jìn)行描述,在系統(tǒng)級進(jìn)行驗(yàn)證。然后用綜合優(yōu)化工具生成具體門電路的網(wǎng)表,其對應(yīng)的物理實(shí)現(xiàn)級可以是印刷電路板或?qū)S眉呻娐贰S捎谠O(shè)計(jì)的主要仿真和調(diào)試過程是在高層次上完成的,這不僅有利予早期發(fā)現(xiàn)結(jié)構(gòu)設(shè)計(jì)上的錯(cuò)誤,避免設(shè)計(jì)工作的浪費(fèi),而且也減少了邏輯功能仿真的工作量,提高了設(shè)計(jì)的一次成功率。2.2QuartusⅡ及開發(fā)語言QuartusII是Altera公司的綜合性PLD開發(fā)軟件,支持原理圖、VHDL、VerilogHDL以及AHDL(AlteraHardwareDescriptionLanguage)等多種設(shè)計(jì)輸入形式,內(nèi)嵌自有的綜合器以及仿真器,可以完成從設(shè)計(jì)輸入到硬件配置的完整PLD設(shè)計(jì)流程。一、VHDL語言的發(fā)展歷史本次畢業(yè)設(shè)計(jì)就是應(yīng)用VHDL語言,是一種用于數(shù)字電路設(shè)計(jì)的高級語言。VHDL全名是Very-High-SpeedIntegratedCircuitHardwareDescriptionLanguage,誕生于1982年。1987年底,VHDL被IEEE和美國國防部確認(rèn)為標(biāo)準(zhǔn)硬件描述語言。自IEEE公布了VHDL的標(biāo)準(zhǔn)版本,IEEE-1076(簡稱87版)之后,各EDA公司相繼推出了自己的VHDL設(shè)計(jì)環(huán)境,或宣布自己的設(shè)計(jì)工具可以和VHDL接口。此后VHDL在電子設(shè)計(jì)領(lǐng)域得到了廣泛的認(rèn)可,并逐步取代了原有的非標(biāo)準(zhǔn)的硬件描述語言。1993年,IEEE對VHDL進(jìn)行了修訂,從更高的抽象層次和系統(tǒng)描述能力上擴(kuò)展VHDL的內(nèi)容,公布了新版本的VHDL,即IEEE標(biāo)準(zhǔn)的1076-1993版本,(簡稱93版)。現(xiàn)在,VHDL和Verilog作為IEEE的工業(yè)標(biāo)準(zhǔn)硬件描述語言,又得到眾多EDA公司的支持,在電子工程領(lǐng)域,已成為事實(shí)上的通用硬件描述語言。有專家認(rèn)為,在新的世紀(jì)中,VHDL與Verilog語言將承擔(dān)起大部分的數(shù)字系統(tǒng)設(shè)計(jì)任務(wù)。VHDL語言是一種用于電路設(shè)計(jì)的高級語言。它在80年代的后期出現(xiàn)。最初是由美國國防部開發(fā)出來供美軍用來提高設(shè)計(jì)的可靠性和縮減開發(fā)周期的一種使用范圍較小的設(shè)計(jì)語言,它的應(yīng)用主要是應(yīng)用在數(shù)字電路的設(shè)計(jì)中。目前,它在中國的應(yīng)用多數(shù)是用在FPGA/CPLD/EPLD的設(shè)計(jì)中。當(dāng)然在一些實(shí)力較為雄厚的單位,它也被用來設(shè)計(jì)ASIC。二、QuartusII下的FPGA設(shè)計(jì)QuartusII為硬件電路的設(shè)計(jì)提供了很大的方便。FPGA之所以能夠廣泛應(yīng)用于電路設(shè)計(jì)中,就是因?yàn)樗鼈冇惺褂孟喈?dāng)方便的開發(fā)軟件工具包,通過編程工具和軟件的配合使用,對器件芯片可以進(jìn)行流暢的開發(fā)、校驗(yàn)。FPGA特別適用于正向設(shè)計(jì),即從電路原理圖或各種硬件描述語言到芯片成品的設(shè)計(jì),在這些設(shè)計(jì)流程中,設(shè)計(jì)人員對特別底層的硬件知識并不需要特別的了解和掌握,完全可以從功能應(yīng)用出發(fā),根據(jù)任務(wù)需求,自頂向下地進(jìn)行電路設(shè)計(jì)。下面我們來看看FPGA的設(shè)計(jì)流程,QuartusII環(huán)境下的FPGA設(shè)計(jì)過程主要包括5個(gè)步驟:●設(shè)計(jì)輸入運(yùn)用電路原理圖輸入、HDL文本輸入等方式,表達(dá)設(shè)計(jì)思想,指定所用HIGA器件的型號,分配其外部管腳?!窬C合將原理圖、HDL語言等設(shè)計(jì)輸入翻譯成由基本電路邏輯單元組成的連接網(wǎng)表,供布局布線器進(jìn)行實(shí)現(xiàn)?!癫季植季€根據(jù)連接網(wǎng)表文件,進(jìn)行布局布線的分析和優(yōu)化,完成FPGA器件內(nèi)、外的虛擬連接?!穹抡娣抡娣譃楣δ芊抡婧蜁r(shí)序仿真。功能仿真驗(yàn)證電路功能是否符合設(shè)計(jì)要求;時(shí)序仿真包含了延時(shí)信息,能較好反映芯片的工作情況?!窬幊毯团渲贸晒幾g后,將生成的編程文件下載到目標(biāo)FPGA系統(tǒng)中調(diào)試;調(diào)試成功后,燒寫到FPGA的配置芯片中。建立項(xiàng)目文件建立項(xiàng)目文件建立設(shè)計(jì)文件建立設(shè)計(jì)文件原理圖輸入文本輸入原理圖輸入文本輸入有錯(cuò)有錯(cuò)編譯綜合編譯綜合無錯(cuò)無錯(cuò)有錯(cuò)有錯(cuò)軟件仿真軟件仿真無錯(cuò)無錯(cuò)選芯片,映射管腳選芯片,映射管腳無錯(cuò)無錯(cuò)有錯(cuò)編譯下載有錯(cuò)編譯下載實(shí)驗(yàn)成功實(shí)驗(yàn)成功圖2.2軟件開發(fā)流程三、QuartusⅡ的仿真仿真分為功能仿真和時(shí)序仿真。通常,功能仿真用于驗(yàn)證電路的功能是否正確。本次設(shè)計(jì)主要是在quartusⅡ軟件中進(jìn)行功能仿真驗(yàn)證。仿真的一般步驟如下:●新建波形編輯文件;●設(shè)置仿真時(shí)間區(qū)域;●保存文件;●導(dǎo)入欲觀察的信號節(jié)點(diǎn);●編輯激勵(lì)信號;●設(shè)置數(shù)據(jù)格式;●設(shè)置仿真器參數(shù);●啟動(dòng)仿真和觀察仿真結(jié)果。3曼徹斯特編碼原理3.11553B數(shù)據(jù)總線數(shù)據(jù)總線是為不同的系統(tǒng)之間提供數(shù)據(jù)和信息交換的媒介,這就類似于個(gè)人計(jì)算機(jī)和辦公自動(dòng)化系統(tǒng)之間局域網(wǎng)式的互連,MIL-STD-1553B總線協(xié)議是在1978年誕生于美國國防部的,它早前作為的是一種定義了數(shù)據(jù)總線電氣和協(xié)議特性的軍事標(biāo)準(zhǔn)。一、1553B的歷史發(fā)展與應(yīng)用MIL-STD-1553B是一種在航空電子系統(tǒng)中廣泛運(yùn)用的總線協(xié)議,它的全稱是飛機(jī)內(nèi)部時(shí)分命令多路響應(yīng)數(shù)據(jù)總線,它的發(fā)展可以追溯到1968年。美國政府軍事部門經(jīng)過三年的修訂,于1973年8月公布了MIL-STD-1553,這個(gè)內(nèi)部標(biāo)準(zhǔn)的第一個(gè)使用者就是F-16戰(zhàn)斗機(jī)。而美國國防部1975年4月30日所發(fā)布的MIL-STD-1553A就是在此基礎(chǔ)上不斷發(fā)展衍變而來,并為F-16戰(zhàn)斗機(jī)和AH-64AApache直升機(jī)所首先運(yùn)用。在此之后,通過一系列現(xiàn)實(shí)操作所積累起來的經(jīng)驗(yàn),在1553A的基礎(chǔ)上,SAE又加入了許多定義和額外的應(yīng)用能力于其中,這就是1553B標(biāo)準(zhǔn)協(xié)議,它于1978年9月21日由SAE公布,一直沿用至今。不過1553B也在不斷進(jìn)行著一些改動(dòng)。為了將該標(biāo)準(zhǔn)僅僅應(yīng)用于空軍系統(tǒng),1980年美國空軍曾經(jīng)對1553B標(biāo)準(zhǔn)的應(yīng)用選擇實(shí)施了諸多限制,但是工業(yè)界卻普遍認(rèn)為這樣的做法大大低估了1553B的應(yīng)用能力,它應(yīng)該擁有更廣泛的使用權(quán)限。現(xiàn)在的MIL-STD-1553B在軍用航空電子系統(tǒng)中應(yīng)用范圍非常廣泛,比如衛(wèi)星通信系統(tǒng)、國際空間站的空間地址探尋、大規(guī)模交通控制、航空燃料補(bǔ)給等等,甚至包括在了一系列的發(fā)射器和服務(wù)器中,比如飛行器和發(fā)射器的基本接口。除此以外,海軍的艦艇、潛水艇、陸軍的直升機(jī)和坦克,這些都用到了1553B總線協(xié)議;對商業(yè)領(lǐng)域來說,地鐵、產(chǎn)品制造生產(chǎn)線也已運(yùn)用到了該標(biāo)準(zhǔn)協(xié)議。二、1553B數(shù)據(jù)總線規(guī)則1553B總線上的信息是以消息(Message)的形式調(diào)制成曼徹斯特碼進(jìn)行傳輸?shù)摹C織l消息最長由32個(gè)字組成,所有的字分為三類:命令字、數(shù)據(jù)字和狀態(tài)字。每類字的長度為20位,有效信息位是16位,每個(gè)字的前3位為單字的同步字頭,而最后1位是奇偶校驗(yàn)位。有效信息(16位)及奇偶校驗(yàn)位在總線上以曼徹斯特碼的形式進(jìn)行傳輸,傳輸一位的時(shí)間為1S(即碼速率為1MHz)。同步字頭占3位,先正后負(fù)為命令字和狀態(tài)字,先負(fù)后正為數(shù)據(jù)字。在這三種類型的字中,命令字位于每條消息的起始部分,其內(nèi)容規(guī)定了該次傳輸?shù)木唧w要求。1553B總線曼徹斯特碼編碼器的主要功能就是把來自外部的并行二進(jìn)制數(shù)據(jù)轉(zhuǎn)化為1553B總線上傳輸?shù)拇行畔ⅲ⑶覍@些串行數(shù)據(jù)進(jìn)行曼徹斯特碼編碼,再加上同步頭和奇偶校驗(yàn)碼,使之成為能夠以1553B總線協(xié)議所要求的格式在總線中傳輸?shù)臄?shù)據(jù)。0-2位中間3-18位數(shù)據(jù)位19位0-2位中間3-18位數(shù)據(jù)位19位前三位同步字頭中間16位數(shù)據(jù)位最后第20位奇偶校驗(yàn)位圖3.11553B的數(shù)據(jù)格式三、1553B總線的傳輸1553B總線能掛31個(gè)遠(yuǎn)置終端,1553B總線采用指令/響應(yīng)型通信協(xié)議,它有三種終端類型:總線控制器(BC)、遠(yuǎn)程終端(RT)和總線監(jiān)視器(BM);信息格式有BC到RT、RT到BC、RT到RT、廣播方式和系統(tǒng)控制方式;傳輸媒介為屏蔽雙絞線,1553B總線耦合方式有直接耦合和變壓器耦合;1553B總線為多冗余度總線型拓?fù)浣Y(jié)構(gòu),具有雙向傳輸特性,其傳輸速度為1Mbps傳輸方式為半雙工方式,采用曼徹斯特碼進(jìn)行編碼傳輸。采用這種編碼方式是因?yàn)檫m用于變壓器耦合,由于直接耦合不利于終端故障隔離,會因?yàn)橐粋€(gè)終端故障而造成整個(gè)總線網(wǎng)絡(luò)的完全癱瘓,所以其協(xié)議中明確指出不推薦使用直接耦合方式。狀態(tài)字只能由RT發(fā)出,它的內(nèi)容代表RT對BC發(fā)出的有效命令的反饋。BC可以根據(jù)狀態(tài)字的內(nèi)容來決定下一步采取什么樣的操作。數(shù)據(jù)字既可以由BC傳輸?shù)侥砇T,也可以從某RT傳輸至BC,或者從某RT傳輸?shù)搅硪籖T,它的內(nèi)容代表傳輸?shù)臄?shù)據(jù)。1553B總線上消息傳輸?shù)倪^程是:總線控制器向某一終端發(fā)布一個(gè)接收/發(fā)送指令,終端在給定的響應(yīng)時(shí)間范圍內(nèi)發(fā)回一個(gè)狀態(tài)字并執(zhí)行消息的接收/發(fā)送。BC通過驗(yàn)收RT回答的狀態(tài)字來檢驗(yàn)傳輸是否成功并做后續(xù)的操作。消息是構(gòu)成1553B總線通訊的基本單位,如果需要完成一定的功能,就要將多個(gè)消息組織起來,形成一個(gè)新的結(jié)構(gòu)叫做幀(Frame)。完成一個(gè)消息的時(shí)間稱為消息時(shí)間,兩個(gè)消息之間的間隔稱為消息間隔時(shí)間,完成一個(gè)幀的時(shí)間稱為幀時(shí)間。在實(shí)際應(yīng)用中這三種時(shí)間都是可以通過編程設(shè)置的。3.2曼徹斯特編碼原理曼徹斯特編碼,也叫做相位編碼(PE),是一個(gè)同步時(shí)鐘編碼技術(shù),被物理層使用來編碼一個(gè)同步位流的時(shí)鐘和數(shù)據(jù)。在曼徹斯特編碼中,用電壓跳變的相位不同來區(qū)分1和0,即用正的電壓跳變表示0,用負(fù)的電壓跳變表示1。因此,這種編碼也稱為相應(yīng)編碼。由于跳變都發(fā)生在每一個(gè)碼元的中間,接收端可以方便地利用它作為位同步時(shí)鐘,這種編碼也稱為自同步編碼。曼徹斯特編碼電平跳變的規(guī)則是:低電平的中間時(shí)刻跳變表示‘0’,用高電平中間時(shí)刻的跳變表示‘1’,如下圖3.2所示。因而這樣防止時(shí)鐘同步的丟失,或來自低頻率位移在貧乏補(bǔ)償?shù)哪M鏈接位錯(cuò)誤。在這個(gè)技術(shù)下,實(shí)際上的二進(jìn)制數(shù)據(jù)被傳輸通過這個(gè)電纜,不是作為一個(gè)序列的邏輯1或0來發(fā)送的。它具有自同步能力和良好的抗干擾性能。但每一個(gè)碼元都被調(diào)成兩個(gè)電平,所以數(shù)據(jù)傳輸速率只有調(diào)制速率的1/2。下跳為‘1’上跳為‘下跳為‘1’上跳為‘0’圖3.2曼徹斯特編碼下面是一段數(shù)據(jù)串行信號"1000100111",在上圖中可以看出曼徹斯特編碼信號的跳變都發(fā)生在中間時(shí)刻,它按照曼徹斯特的編碼規(guī)則,可以表示"1001100111"。如下圖3.3所示。圖3.3信號的曼徹斯特編碼4系統(tǒng)總體設(shè)計(jì)4.1系統(tǒng)設(shè)計(jì)要求本課題的設(shè)計(jì)要求和技術(shù)指標(biāo):1.MIL-STD-1553B總線上的數(shù)據(jù)以雙相曼徹斯特編碼的方式傳輸。2.編碼器把來自外部的并行二進(jìn)制數(shù)據(jù)轉(zhuǎn)化為串行信息。3.對串行數(shù)據(jù)進(jìn)行曼徹斯特碼編碼,再加上同步頭和奇偶效驗(yàn)位。4.能夠以1553B總線協(xié)議所要求的格式在總線中進(jìn)行傳輸。本畢設(shè)畢業(yè)圓滿的完成了上述任務(wù)。4.2系統(tǒng)設(shè)計(jì)思路根據(jù)系統(tǒng)的設(shè)計(jì)要求,需要解決外部數(shù)據(jù)的并串轉(zhuǎn)換和數(shù)據(jù)編碼問題,而曼徹斯特編碼器是本文的設(shè)計(jì)重點(diǎn),思路如下:發(fā)送數(shù)據(jù)命令在每個(gè)周期的開頭加同步字頭,數(shù)據(jù)輸入時(shí),輸入時(shí)間將持續(xù)16個(gè)編碼周期,若輸入的數(shù)據(jù)信元為“1”,編碼就通過輸出一個(gè)下降沿來表示,當(dāng)輸入數(shù)據(jù)為“0”時(shí),編碼則輸出一個(gè)上升沿。數(shù)據(jù)位輸入結(jié)束后,編碼器將對輸入的數(shù)據(jù)信元進(jìn)行奇偶校檢,如果在輸入的數(shù)據(jù)信元中“1”的個(gè)數(shù)為奇數(shù),編碼器輸出一個(gè)上跳變電平,反之若數(shù)據(jù)信元中“1”的個(gè)數(shù)為偶數(shù)則輸出一個(gè)下跳變電平,如圖4.1所示。發(fā)送數(shù)據(jù)命令檢查周期碼型轉(zhuǎn)換生成同步字頭移位及奇偶校驗(yàn)檢查周期碼型轉(zhuǎn)換生成同步字頭移位及奇偶校驗(yàn)圖4.1編碼器設(shè)計(jì)思路4.3系統(tǒng)設(shè)計(jì)框圖根據(jù)上述系統(tǒng)的設(shè)計(jì)要求,系統(tǒng)主要由兩大模塊組成:并串轉(zhuǎn)換器、曼徹斯特編碼器。在系統(tǒng)外部由16位并行信號線供給,經(jīng)過系統(tǒng)的兩個(gè)模塊后輸出曼徹斯特編碼信號。在信號的編碼方面本設(shè)計(jì)經(jīng)過很多次修改,編碼沒有信號的丟失,并且奇偶校驗(yàn)位的數(shù)據(jù)匹配,完全滿足系統(tǒng)設(shè)計(jì)的四點(diǎn)要求,系統(tǒng)框圖如4.2所示。FPGA系統(tǒng)FPGA系統(tǒng)并行數(shù)據(jù)輸入并行數(shù)據(jù)輸入系統(tǒng)數(shù)據(jù)輸出端曼徹斯特編碼并串轉(zhuǎn)換模塊系統(tǒng)數(shù)據(jù)輸出端曼徹斯特編碼并串轉(zhuǎn)換模塊圖4.2系統(tǒng)原理框圖5系統(tǒng)模塊設(shè)計(jì)5.1并串轉(zhuǎn)換器的設(shè)計(jì)串并轉(zhuǎn)換主要工作是將16位并行數(shù)據(jù)轉(zhuǎn)換為曼徹斯特能夠編碼的串行數(shù)據(jù)。它主要由時(shí)鐘信號、轉(zhuǎn)換使能信號控制。當(dāng)sl信號高電平時(shí)就開始輸出當(dāng)前十六位并行數(shù)據(jù)。它的流程圖如圖5.1所示。開始開始是判斷Sl由低變高電平是判斷Sl由低變高電平否 儲存當(dāng)前輸入數(shù)據(jù)是移16位完成儲存當(dāng)前輸入數(shù)據(jù)是移16位完成否否否判斷結(jié)束否判斷結(jié)束移位否否是判斷結(jié)束是判斷結(jié)束是是結(jié)束結(jié)束圖5.1并串轉(zhuǎn)換流程圖程序代碼如下:libraryieee;useieee.std_logic_1164.all;useieee.std_logic_arith.all;useieee.std_logic_unsigned.all;entityp_to_sisport(sl,clkl:instd_logic; datain:instd_logic_vector(15downto0); q:outstd_logic);endp_to_s;architecturebehavofp_to_sissignaltmpreg:std_logic_vector(15downto0);beginq<=tmpreg(15);process(sl,clkl)begin if(clkl'eventandclkl='1')then if(sl='0')then tmpreg<=datain; else foriin15downto1loop tmpreg(i)<=tmpreg(i-1); endloop; tmpreg(0)<='0'; endif; endif;endprocess;endbehav;在quartusⅡ中生成相應(yīng)的并串轉(zhuǎn)換模塊如圖5.2所示。端口有時(shí)鐘信號、并串轉(zhuǎn)換使能信號、16位并行數(shù)據(jù)輸入端和一位串行數(shù)據(jù)輸出端。圖5.2并串轉(zhuǎn)換器圖5.2曼徹斯特編碼器設(shè)計(jì)曼碼編碼過程可分為三部分:1)檢測編碼周期是否開始,產(chǎn)生同步字頭;2)進(jìn)行輸入數(shù)據(jù)的曼徹斯特編碼3)產(chǎn)生奇偶校驗(yàn)位并對其進(jìn)行編碼,編碼周期結(jié)束。編碼器的設(shè)計(jì)流程如圖5.3所示:當(dāng)使能信號為高電平時(shí),編碼周期開始,當(dāng)同步選擇信號SS為“1”,輸出信號為命令同步,若為“0”,表示輸出信號為數(shù)據(jù)同步,當(dāng)輸入數(shù)據(jù)使能信號send為“1”時(shí),表明允許數(shù)據(jù)輸入,輸入時(shí)間將持續(xù)16個(gè)編碼周期,若輸入的數(shù)據(jù)信元din為“1”,編碼就通過輸出一個(gè)下降沿來表示,當(dāng)輸入數(shù)據(jù)為“0”時(shí),編碼則輸出一個(gè)上升沿。數(shù)據(jù)位輸入結(jié)束后,編碼器將對輸入的數(shù)據(jù)信元進(jìn)行奇偶校檢,如果在輸入的數(shù)據(jù)信元中“1”的個(gè)數(shù)為奇數(shù),編碼器輸出一個(gè)上升沿,反之若數(shù)據(jù)信元中“1”的個(gè)數(shù)為偶數(shù)則輸出一個(gè)下降沿。開始開始'0''0''1'判斷ss'1'判斷ss命令同步數(shù)據(jù)同步命令同步數(shù)據(jù)同步'0''1'判斷din'0''1'判斷din下降沿上升沿下降沿上升沿1的個(gè)數(shù)奇數(shù)偶數(shù)1的個(gè)數(shù)奇數(shù)偶數(shù)下降沿上升沿下降沿上升沿否判斷結(jié)束否判斷結(jié)束是是結(jié)束結(jié)束圖5.3曼徹斯特編碼流程上述的流程圖中ss為同步選擇信號,din為數(shù)據(jù)輸入信號。曼徹斯特編碼器的代碼如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_ARITH.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;EntityencodeiSport(rst:instd_logic;--復(fù)位信號clk:instd_logic;--基準(zhǔn)時(shí)鐘信號ss:instd_logic;--同步選擇信號In_en:instd_logic;--輸入選擇信號Date_in:instd_logic;--編碼信元輸入端Date_out:outstd_logic;en_out:bufferstd_logic);--編碼信元輸出端endencode;ArchitecturebehaveofencodeisSignaltem_register:std_logic_vector(5downto0);Signalcounter:std_logic_vector(5downto0);Signalin_counter:std_logic;Signalbit_temp:std_logic;Signalodd_bit:std_logic;--奇偶校檢信號BeginDate_out<=tem_register(5);process(rst,clk)beginifrst='0'thentem_register<="000000";counter<="000000";in_counter<='0';odd_bit<='0';bit_temp<='0';en_out<='0';--各信號初始化elsif(clk'eventandclk='1')thenifin_en='1'thenifcounter="000000"thenen_out<='0';ifss='1'thentem_register<="111000";--命令同步字產(chǎn)生elsetem_register<="000111";--數(shù)據(jù)同步字產(chǎn)生endif;elsifcounter="100110"thenifodd_bit='1'thentem_register(5)<='0';elsetem_register(5)<='1';endif;elsifcounter="100111"thenifodd_bit='1'thentem_register(5)<='1';elsetem_register(5)<='0';--奇偶校檢的產(chǎn)生endif;elsetem_register(5downto1)<=tem_register(4downto0);ifin_counter='0'thenifdate_in='1'thentem_register(0)<='1';bit_temp<='0';odd_bit<=notodd_bit;elsetem_register(0)<='0';bit_temp<='1';--對輸入數(shù)據(jù)進(jìn)行編碼endif;elsetem_register(0)<=bit_temp;endif;in_counter<=notin_counter;endif;counter<=counter+'1';ifcounter="101000"thencounter<="000000";odd_bit<='0';en_out<='1';endif;endif;endif;endprocess;endbehave;在quartusⅡ中生成相應(yīng)的曼徹斯特編碼器模塊。輸入端口有時(shí)鐘信號、復(fù)位信號、輸入使能信號、串行輸入信號端、和編碼信號輸出端及輸出使能信號。圖5.4曼徹斯特編碼器6系統(tǒng)仿真及結(jié)果分析6.1并串轉(zhuǎn)換器仿真及結(jié)果分析打開QuartusⅡ軟件,新建一個(gè)工程為"encode",如圖6.1所示。圖6.1新建工程文件encode單擊"Finish"按鈕完成"encode"工程的新建。新建完工程文件后,就建立并串轉(zhuǎn)換模塊。選擇"File"→"New"命令或是單擊新建圖標(biāo),在彈出的"New"對話框中選擇"VHDLFile"選項(xiàng),單擊"OK"按鈕,如圖6.2所示。圖6.2新建并串轉(zhuǎn)換VHDL文件新建完VHDL文件以后就開始輸入VHDL代碼,在quartusⅡ中,如下圖6.3所示。圖6.3并串轉(zhuǎn)換VHDL代碼輸入在輸入完代碼以后,就保存當(dāng)前文件,點(diǎn)保存快捷方式,命名為"p_to_s"文件名。下一步就是開始編譯,在編譯前要在"projectnavigator"框中點(diǎn)擊p_to_s的右鍵"setastop-levelEntity"。接下來就是對并串轉(zhuǎn)換進(jìn)行編譯??梢栽趒uartusⅡ中直接點(diǎn)擊編譯快捷方式。結(jié)果如圖6.4所示。圖6.4并串轉(zhuǎn)換編譯結(jié)果工程編譯成功后,必須對其功能和時(shí)序特性進(jìn)行仿真測試,以了解設(shè)計(jì)結(jié)果是否滿足原設(shè)計(jì)要求。QuartusII提供的波形文件為"VectorWaveformFile",即VWF。新建波形文件進(jìn)行仿真,選擇"File"→"New"命令或是單擊新建圖標(biāo),選擇"VectorWaveformFile"項(xiàng)。如下圖6.5所示。 圖6.5新建并串轉(zhuǎn)換的波形文件在向量波形文件的"Name"下方的空白處,雙擊鼠標(biāo)左鍵,彈出"InsertNodeorBus"對話框如圖6.6所示,單擊"NodeFinder"按鈕,彈出"NodeFinder"對話框,如圖6.7所示。

圖6.6添加端口對話框圖6.7NodeFinder選擇對話框在彈出的圖6.7框中點(diǎn)擊"list"按鈕,再點(diǎn)擊》按鈕,最后點(diǎn)"OK"按鈕。這波形文件的端口都已經(jīng)添加進(jìn)去了。然后就是設(shè)置端口的波形。在編譯之后就是對模塊進(jìn)行仿真,在quartusⅡ軟件中點(diǎn)擊"processing"菜單中的"simulatortool"。然后加載之前創(chuàng)建的波形文件”p_to_s“。在下圖6.8所示圖中點(diǎn)"generatefunctionsimulationnetlist"按鈕。創(chuàng)建完網(wǎng)表文件之后就可以點(diǎn)擊"start"按鈕。圖6.8并串轉(zhuǎn)換simulatortool圖6.9并串轉(zhuǎn)換仿真結(jié)果在圖6.8所示的圖中,仿真運(yùn)行之后就可以點(diǎn)擊report按鈕。結(jié)果如圖6.9所示。圖6.10并串轉(zhuǎn)換結(jié)果分析圖在datain端口中輸入"1101001110100110"十六位的并行數(shù)據(jù)。q為十六位串行數(shù)據(jù)的輸出端,q端高電平為'1',低電平為'0'。從圖中q端的結(jié)果可以讀出q的輸出信號為"1101001110100110",所以并串轉(zhuǎn)換器滿足并串轉(zhuǎn)換的要求。6.2曼徹斯特編碼器仿真及結(jié)果分析在同一個(gè)工程文件下,建立曼徹斯特編碼模塊。選擇"File"→"New"命令或是單擊新建圖標(biāo),在彈出的"New"對話框中選擇"VHDLFile"選項(xiàng),單擊"OK"按鈕,如代碼輸入后如圖6.10所示。圖6.10(a)曼徹斯特編碼器代碼輸入圖6.10(b)曼徹斯特編碼器代碼輸入在輸入完代碼以后,就保存當(dāng)前文件,點(diǎn)保存快捷方式,命名為"encode"文件名。下一步就是開始編譯,結(jié)果如圖6.11所示。圖6.11曼徹斯特編碼器編譯在編譯成功后,必須對其功能和時(shí)序特性進(jìn)行仿真測試,以了解設(shè)計(jì)結(jié)果是否滿足原設(shè)計(jì)要求。新建波形文件進(jìn)行仿真,然后就是添加輸入端口和按照要求對輸入信號進(jìn)行編輯。仿真結(jié)果如圖6.12所示。圖6.12曼徹斯特編碼仿真結(jié)果圖6.13曼徹斯特編碼結(jié)果分析從圖6.13中的結(jié)果可以看出一個(gè)字的長度為20位,date_in的兩個(gè)時(shí)鐘周期電平為一個(gè)數(shù)據(jù)比特,從電平中可以看出輸入為"1101001110100110"。前面3位為同步字頭,111000為同步字頭。而后面的16位數(shù)據(jù)位為"1101001110100110"。因?yàn)閿?shù)據(jù)位有9個(gè)‘1’所以輸出的奇偶校驗(yàn)位為‘0’。上圖中兩個(gè)時(shí)鐘周期為一個(gè)數(shù)據(jù)比特,上跳變?yōu)椤?’,下跳變?yōu)椤?’。從上面分析可以看出設(shè)計(jì)出曼徹斯特編碼器滿足曼徹斯特編碼的要求。6.3系統(tǒng)總體仿真及結(jié)果分析在完成上述的兩個(gè)模塊的仿真和運(yùn)行以后進(jìn)行總體的功能仿真。在并串轉(zhuǎn)換器和曼徹斯特編碼器中分別選擇"File"→"Create/Update"→"CreateSymbolFilesforCurrentFile"編譯文件并為該文件生成模塊文件如圖6.14。圖6.14并串轉(zhuǎn)換器封裝創(chuàng)建結(jié)果然后再新建原理圖文件。選擇"File"→"New"命令或是單擊新建圖標(biāo),在彈出的"New"對話框中選擇"BlockDiagram/SchematicFile"選項(xiàng),單擊"OK"按鈕,圖略。在原理框圖文件的空白處,雙擊鼠標(biāo)左鍵,在彈出的"Symbol"對話框中選擇"Project"→"encode"模塊,如圖6.15所示。單擊"OK"按鈕退出"Symbol"對話框,適當(dāng)位置放置"encode"模塊。同理放入"p_to_s"模塊,如圖6.16所示。圖6.15encode模塊Symbol圖6.16p_to_s模塊Symbol雙擊原理框圖文件的空白處,在彈出的"Symbol"對話框的"Name"文本框中輸入"INPUT",單擊"OK"按鈕退出"Symbol"對話框,在適當(dāng)位置放置INPUT模塊,使用同樣的方法再加入一個(gè)INPUT和OUTPUT模塊。各個(gè)模塊連接如圖6.17所示,保存原理框圖文件為"mancodec.bdf"。圖6.17系統(tǒng)模塊框圖經(jīng)過了原理和代碼的輸入之后,就開始進(jìn)行編譯。首先點(diǎn)擊quartusⅡ中的projectnavigator框中的mancodec.bdf文件圖標(biāo),再點(diǎn)右鍵選擇"setastop-levelentity",再按編譯按鈕。編譯完成后,然后開始新建波形文件。波形文件的結(jié)果如圖6.18所示。編輯波形文件再保存,保存名為"mancodec"。圖6.18系統(tǒng)波形文件輸入圖圖6.19系統(tǒng)仿真SimulatorTool在編譯之后就是對模塊進(jìn)行仿真,在quartusⅡ軟件中點(diǎn)擊"processing"菜單中的"simulatortool"按鈕。然后加載之前創(chuàng)建的波形文件"mancodec"。在圖6.19所示圖中點(diǎn)擊"generatefunctionsimulationnetlist"按鈕。創(chuàng)建完網(wǎng)表文件之后就可以點(diǎn)擊"start"按鈕。圖6.20系統(tǒng)仿真結(jié)果在點(diǎn)擊上圖的"report"按鈕之后就會彈出系統(tǒng)的總體仿真結(jié)果。如圖6.20所示。圖6.21系統(tǒng)輸出結(jié)果分析圖從上圖6.21中的結(jié)果可以看出一個(gè)字的長度為20位,date_in的兩個(gè)時(shí)鐘周期電平為一個(gè)數(shù)據(jù)比特,在datain中有十六位數(shù)據(jù)線。從15位數(shù)據(jù)線到0位它的輸入為"1101001110100110"。前面3位為同步字頭,"111000"為同步字頭。而后面的16位數(shù)據(jù)位為"1101001110100110"。因?yàn)閿?shù)據(jù)位有9個(gè)‘1’所以輸出的奇偶校驗(yàn)位為‘0’。上圖中兩個(gè)時(shí)鐘周期為一個(gè)比特,上跳變?yōu)椤?’,下跳變?yōu)椤?’。從上面分析可以看出設(shè)計(jì)出曼徹斯特編碼器滿足曼徹斯特編碼的要求。7結(jié)論及展望本次設(shè)計(jì)實(shí)現(xiàn)了任務(wù)書中規(guī)定的要求,系統(tǒng)結(jié)構(gòu)包括:并串轉(zhuǎn)換器,曼徹斯特編碼器。滿足了課題規(guī)定中的任務(wù)書的要求。FPGA是我們的一門專業(yè)選修課,本人學(xué)習(xí)這門課程也才半年的時(shí)間,但是在本次畢業(yè)設(shè)計(jì)中學(xué)到了很多知識。在畢設(shè)的過程中,我參考了很多教材和網(wǎng)上的資料。我相信對我以后不管是就業(yè)還是繼續(xù)學(xué)習(xí)深造都有很大影響。目前,1553B總線協(xié)議正被越來越多的軍用與民用客戶所接受。1553B協(xié)議數(shù)據(jù)的曼碼編碼器也因此漸顯其重要性。在接下來的工作中,我們還可以運(yùn)用類似的設(shè)計(jì)思路進(jìn)行曼碼解碼器的開發(fā),使之成為完整的1553B協(xié)議曼徹斯特編/解碼體系結(jié)構(gòu)。致謝時(shí)光飛逝,大學(xué)學(xué)習(xí)生活即將結(jié)束,我也即將走向工作崗位和社會。大學(xué)學(xué)習(xí)生活,它給了我很多難忘的回憶。對知識的渴望讓我付出過很多也得到了很多,曾經(jīng)我也對本專業(yè)產(chǎn)生過懷疑,但是隨著專業(yè)課的學(xué)習(xí)我漸漸發(fā)現(xiàn)我離不開自己從??频奖究埔酪啦簧釋I(yè)。我相信在以后工作的日子里我會走得更遠(yuǎn),對專業(yè)的熱情和執(zhí)著是我一直學(xué)習(xí)的動(dòng)力,在自考的學(xué)習(xí)生活中每當(dāng)我遇到困難時(shí)都有人支持我、幫助我,是同學(xué)和老師的鼓勵(lì)我,在這里我要對他們的表示感謝!我會在未來的工作過程中,以更加優(yōu)秀的成績來答謝這些關(guān)心、幫助和支持我的所有老師、家人、同學(xué)和朋友們。感謝在百忙之中對我的論文進(jìn)行評審并提出寶貴意見的老師們。參考文獻(xiàn)1.徐志軍,EDA技術(shù)與VHDL設(shè)計(jì)[M].北京:電子工業(yè)出版社,20092.潘松、趙敏.EDA技術(shù)及其應(yīng)用[M].北京:科學(xué)出版社,20083.李洪偉等,基于QuartusII的FPGA/CPLD設(shè)計(jì)[M].北京:電子工業(yè)出版社,20064.楊凱,MIL-STD-1553B總線曼徹斯特碼編碼器的設(shè)計(jì)與實(shí)現(xiàn)[D].四川大學(xué),20065.唐劍、王勇,MIL-STD-1553B總線曼徹斯特碼編碼器的CPLD實(shí)現(xiàn)[J].技術(shù)與市場,2008,26.石紅梅、劉泳,采用FPGA實(shí)現(xiàn)1553B總線接口專用芯片設(shè)計(jì)[C].第十三屆全國遙測遙控技術(shù)年會論文,20047.解傳軍、王海濱,基于FPGA的航空總線協(xié)議接口設(shè)計(jì)[J].電子設(shè)計(jì)工程,20098.鄭友泉、現(xiàn)場可編程門陣列[J].世界電子元器件,2005,109.周密,金惠華,李化云.1553B總線協(xié)議IP核設(shè)計(jì)與實(shí)現(xiàn).電子器件,200710.徐欣,于紅旗.基于FPGA的嵌入式系統(tǒng)設(shè)計(jì)[M].北京:機(jī)械。工業(yè)出版社.200511.羅志強(qiáng).航空電子綜合化系統(tǒng)[M].北京:北京航空航天大學(xué)出版社,1990附錄A程序清單A1串并轉(zhuǎn)換:libraryieee;useieee.std_logic_1164.all;useieee.std_logic_arith.all;useieee.std_logic_unsigned.all;entityp_to_sisport(sl,clkl:instd_logic; datain:instd_logic_vector(15downto0); q:outstd_logic);endp_to_s;architecturebehavofp_to_sissignaltmpreg:std_logic_vector(15downto0);beginq<=tmpreg(15);process(sl,clkl)begin if(clkl'eventandclkl='1')then if(sl='0')then tmpreg<=datain; else foriin15downto1loop tmpreg(i)<=tmpreg(i-1); endloop; tmpreg(0)<='0'; endif; endif;endprocess;endbehav;程序清單A2曼徹斯特編碼:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_ARITH.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;EntityencodeiSport(rst:instd_logic;--復(fù)位信號clk:instd_logic;--基準(zhǔn)時(shí)鐘信號ss:instd_logic;--同步選擇信號In_en:instd_logic;--輸入選擇信號Date_in:instd_logic;--編碼信元輸入端Date_out:outstd_logic;en_out:bufferstd_logic);--編碼信元輸出端endencode;ArchitecturebehaveofencodeisSignaltem_register:std_logic_vector(5downto0);Signalcounter:std_logic_vector(5downto0);Signalin_counter:std_logic;Signalbit_temp:std_logic;Signalodd_bit:std_logic;--奇偶校檢信號BeginDate_out<=tem_register(5);process(rst,clk)beginifrst='0'thentem_register<="000000";counter<="000000";in_counter<='0';odd_bit<='0';bit_temp<='0';en_out<='0';--各信號初始化elsif(clk'eventandclk='1')thenifin_en='1'thenifcounter="000000"thenen_out<='0';ifss='1'thentem_register<="111000";--命令同步字產(chǎn)生elsetem_register<="000111";--數(shù)據(jù)同步字產(chǎn)生endif;elsifcounter="100110"thenifodd_bit='1'thentem_register(5)<='0';elsetem_register(5)<='1';endif;elsifcounter="100111"thenifodd_bit='1'thentem_register(5)<='1';elsetem_register(5)<='0';--奇偶校檢的產(chǎn)生endif;elsetem_register(5downto1)<=tem_register(4downto0);ifin_counter='0'thenifdate_in='1'thentem_register(0)<='1';bit_temp<='0';odd_bit<=notodd_bit;elsetem_register(0)<='0';bit_temp<='1';--對輸入數(shù)據(jù)進(jìn)行編碼endif;elsetem_register(0)<=bit_temp;endif;in_counter<=notin_counter;endif;counter<=counter+'1';ifcounter="101000"thencounter<="000000";odd_bit<='0';en_out<='1';endif;endif;endif;endprocess;endbehave;附錄B圖B1頂層原理圖圖B2系統(tǒng)仿真結(jié)果圖基于C8051F單片機(jī)直流電動(dòng)機(jī)反饋控制系統(tǒng)的設(shè)計(jì)與研究基于單片機(jī)的嵌入式Web服務(wù)器的研究MOTOROLA單片機(jī)MC68HC(8)05PV8/A內(nèi)嵌EEPROM的工藝和制程方法及對良率的影響研究基于模糊控制的電阻釬焊單片機(jī)溫度控制系統(tǒng)的研制基于MCS-51系列單片機(jī)的通用控制模塊的研究基于單片機(jī)實(shí)現(xiàn)的供暖系統(tǒng)最佳啟停自校正(STR)調(diào)節(jié)器單片機(jī)控制的二級倒立擺系統(tǒng)的研究基于增強(qiáng)型51系列單片機(jī)的TCP/IP協(xié)議棧的實(shí)現(xiàn)基于單片機(jī)的蓄電池自動(dòng)監(jiān)測系統(tǒng)基于32位嵌入式單片機(jī)系統(tǒng)的圖像采集與處理技術(shù)的研究基于單片機(jī)的作物營養(yǎng)診斷專家系統(tǒng)的研究基于單片機(jī)的交流伺服電機(jī)運(yùn)動(dòng)控制系統(tǒng)研究與開發(fā)基于單片機(jī)的泵管內(nèi)壁硬度測試儀的研制基于單片機(jī)的自動(dòng)找平控制系統(tǒng)研究基于C8051F040單片機(jī)的嵌入式系統(tǒng)開發(fā)基于單片機(jī)的液壓動(dòng)力系統(tǒng)狀態(tài)監(jiān)測儀開發(fā)模糊Smith智能控制方法的研究及其單片機(jī)實(shí)現(xiàn)一種基于單片機(jī)的軸快流CO〈,2〉激光器的手持控制面板的研制基于雙單片機(jī)沖床數(shù)控系統(tǒng)的研究基于CYGNAL單片機(jī)的在線間歇式濁度儀的研制基于單片機(jī)的噴油泵試驗(yàn)臺控制器的研制基于單片機(jī)的軟起動(dòng)器的研究和設(shè)計(jì)基于單片機(jī)控制的高速快走絲電火花線切割機(jī)床短循環(huán)走絲方式研究基于單片機(jī)的機(jī)電產(chǎn)品控制系統(tǒng)開發(fā)基于PIC單片機(jī)的智能手機(jī)充電器基于單片機(jī)的實(shí)時(shí)內(nèi)核設(shè)計(jì)及其應(yīng)用研究基于單片機(jī)的遠(yuǎn)程抄表系統(tǒng)的設(shè)計(jì)與研究基于單片機(jī)的煙氣二氧化硫濃度檢測儀的研制基于微型光譜儀的單片機(jī)系統(tǒng)單片機(jī)系統(tǒng)軟件構(gòu)件開發(fā)的技術(shù)研究基于單片機(jī)的液體點(diǎn)滴速度自動(dòng)檢測儀的研制基于單片機(jī)系統(tǒng)的多功能溫度測量儀的研制基于PIC單片機(jī)的電能采集終端的設(shè)計(jì)和應(yīng)用基于單片機(jī)的光纖光柵解調(diào)儀的研制

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論