基于FPGA的工業(yè)以太網(wǎng)控制器IP核研究與設(shè)計
發(fā)布時間:2021-03-27 00:22
隨著科學(xué)技術(shù)的不斷發(fā)展,以太網(wǎng)技術(shù)已經(jīng)深入到我們?nèi)粘I钪械姆椒矫婷?同時,從以太網(wǎng)技術(shù)延伸出的工業(yè)以太網(wǎng)技術(shù)在工業(yè)自動化系統(tǒng)中扮演著至關(guān)重要的角色。工業(yè)以太網(wǎng)通信環(huán)境具有較大的不確定性,需要針對現(xiàn)場實際使用改變硬件或軟件的設(shè)計。而FPGA具有可靈活配置的特點,使用FPGA設(shè)計工業(yè)以太網(wǎng)控制器正好符合了工業(yè)以太網(wǎng)對系統(tǒng)靈活性的需求。根據(jù)采用FPGA開發(fā)具有高靈活性與高拓展性的工業(yè)以太網(wǎng)控制器的需求以及Zynq良好的發(fā)展前景,本論文基于Xilinx公司Zynq-7000系列FPGA平臺,對工業(yè)以太網(wǎng)控制器的工作原理以及各功能模塊進行分析,采用了軟硬件結(jié)合設(shè)計的方式,提出一套基于FPGA的工業(yè)以太網(wǎng)控制器IP核系統(tǒng)設(shè)計方案,能夠?qū)崿F(xiàn)數(shù)據(jù)發(fā)送與接收的功能。論文首先簡述了TCP/IP協(xié)議族相關(guān)的基礎(chǔ)理論,包括TCP/IP協(xié)議族的分層、CSMA/CD協(xié)議,分析了工業(yè)以太網(wǎng)控制器的工作原理,其中對數(shù)據(jù)發(fā)送與接收的流程進行了詳細的論述。其次,基于CSMA/CD協(xié)議改進了工業(yè)以太網(wǎng)的傳輸實時性。通過對非堅持CSMA/CD中時隙的再分割,提出一種基于工業(yè)以太網(wǎng)的時隙非堅持CSMA/CD算法,并在MATL...
【文章來源】:長春工業(yè)大學(xué)吉林省
【文章頁數(shù)】:78 頁
【學(xué)位級別】:碩士
【部分圖文】:
以太網(wǎng)幀結(jié)構(gòu)
第2章工業(yè)以太網(wǎng)控制器工作原理分析11圖2.2數(shù)據(jù)接收流程圖(1)檢查接收到的數(shù)據(jù)幀長度是否在合理的范圍之內(nèi),如果是信道沖突導(dǎo)致的碎片,則丟棄。正常情況下一幀的長度在64字節(jié)到1518字節(jié)之間。(2)確認(rèn)幀長度有效之后,檢驗幀的目的地址。如果目的地址是本機MAC地址、廣播地址或被認(rèn)可的組播地址,則將數(shù)據(jù)幀留下,準(zhǔn)備進行下一步處理。如果地址不匹配則丟棄。(3)對接收到的數(shù)據(jù)幀進行CRC校驗來驗證完整性。CRC校驗又稱為循環(huán)冗余校驗,它將多項式L代表即將傳輸?shù)臄?shù)據(jù)M(x),從而得到L除以確定的多項式G(x)的余式,即為所需的循環(huán)冗余校驗碼。(4)如果通過了所有驗證,則將幀交給上一層處理。2.2.2流量控制工業(yè)以太網(wǎng)控制器傳輸數(shù)據(jù)時,如果通過某個端口的流量超過了它的數(shù)據(jù)處理能力時,會發(fā)生端口阻塞,此時就需要引入流量控制功能來防止丟鄭流量控制可以通過控制數(shù)據(jù)幀的優(yōu)先順序有效地減小由于網(wǎng)絡(luò)中大量數(shù)據(jù)相近或相同時間到來產(chǎn)生
第2章工業(yè)以太網(wǎng)控制器工作原理分析12的沖擊,從而使得用戶網(wǎng)絡(luò)依然能夠高效而穩(wěn)定的運行。在半雙工工作模式下,目前有兩種方法來進行流量控制。第一種基于CSMA/CD協(xié)議,讓接收緩沖區(qū)與將要到達的幀發(fā)生沖突,這種方法雖然可行,但是存在不利因素[35]。由于CSMA/CD協(xié)議設(shè)置了最高重傳次數(shù)(一般設(shè)置為16次),如果輸入緩沖區(qū)持續(xù)擁塞,當(dāng)沖突次數(shù)超過16次之后,節(jié)點將丟棄該幀,失去了引入流量控制的意義。因此一般采用第二種方法,當(dāng)端口擁塞時延時傳輸,將該幀保留在隊首,讓載波偵聽做出“信道忙”的判斷,且不管時間有多長都不會丟棄該幀,這種方法稱為偽載波技術(shù)。在全雙工工作模式下,接收緩沖區(qū)首先接收到數(shù)據(jù)幀并將其存儲,當(dāng)該緩沖區(qū)中存儲的數(shù)據(jù)幀即將超出其最大存儲至?xí)r,上層協(xié)議將拒絕接收新發(fā)送的數(shù)據(jù)幀并向MAC層發(fā)送流量控制請求。MAC層收到流量控制請求后,向數(shù)據(jù)發(fā)送站點發(fā)出一個暫?刂凄嵲谶@個暫?刂茙幸(guī)定了暫停發(fā)送的時間,數(shù)據(jù)發(fā)送站點在這段時間內(nèi)不得發(fā)送新的數(shù)據(jù)鄭與普通以太網(wǎng)數(shù)據(jù)幀格式不同的是,暫?刂茙话ㄇ皩(dǎo)碼和幀起始符,長度為以太網(wǎng)幀格式的最小長度,即為64字節(jié)。暫停控制幀的格式如圖2.3所示。圖2.3暫?刂茙袷狡渲心康牡刂房梢允俏锢淼刂芬材苁墙M播地址,其為暫?刂茙竭_的地址;源地址則為發(fā)送暫?刂茙军c的地址;長度/類型是0x8808,為暫?刂茙谋A糁担豢刂撇僮鞔a則是0x0001,為暫停控制幀的操作代碼;控制參數(shù)是填充字節(jié)或暫停時間控制參數(shù),其中的暫停時間是2個字節(jié)無符號數(shù),該時間參數(shù)乘以傳送512比特所需時間即為請求暫停的時間。該字段中需要用0填充未使用的字節(jié)以滿足最小幀長的要求;幀校驗序列則是用于判斷CRC校驗接收到的幀是否正確。
本文編號:3102514
【文章來源】:長春工業(yè)大學(xué)吉林省
【文章頁數(shù)】:78 頁
【學(xué)位級別】:碩士
【部分圖文】:
以太網(wǎng)幀結(jié)構(gòu)
第2章工業(yè)以太網(wǎng)控制器工作原理分析11圖2.2數(shù)據(jù)接收流程圖(1)檢查接收到的數(shù)據(jù)幀長度是否在合理的范圍之內(nèi),如果是信道沖突導(dǎo)致的碎片,則丟棄。正常情況下一幀的長度在64字節(jié)到1518字節(jié)之間。(2)確認(rèn)幀長度有效之后,檢驗幀的目的地址。如果目的地址是本機MAC地址、廣播地址或被認(rèn)可的組播地址,則將數(shù)據(jù)幀留下,準(zhǔn)備進行下一步處理。如果地址不匹配則丟棄。(3)對接收到的數(shù)據(jù)幀進行CRC校驗來驗證完整性。CRC校驗又稱為循環(huán)冗余校驗,它將多項式L代表即將傳輸?shù)臄?shù)據(jù)M(x),從而得到L除以確定的多項式G(x)的余式,即為所需的循環(huán)冗余校驗碼。(4)如果通過了所有驗證,則將幀交給上一層處理。2.2.2流量控制工業(yè)以太網(wǎng)控制器傳輸數(shù)據(jù)時,如果通過某個端口的流量超過了它的數(shù)據(jù)處理能力時,會發(fā)生端口阻塞,此時就需要引入流量控制功能來防止丟鄭流量控制可以通過控制數(shù)據(jù)幀的優(yōu)先順序有效地減小由于網(wǎng)絡(luò)中大量數(shù)據(jù)相近或相同時間到來產(chǎn)生
第2章工業(yè)以太網(wǎng)控制器工作原理分析12的沖擊,從而使得用戶網(wǎng)絡(luò)依然能夠高效而穩(wěn)定的運行。在半雙工工作模式下,目前有兩種方法來進行流量控制。第一種基于CSMA/CD協(xié)議,讓接收緩沖區(qū)與將要到達的幀發(fā)生沖突,這種方法雖然可行,但是存在不利因素[35]。由于CSMA/CD協(xié)議設(shè)置了最高重傳次數(shù)(一般設(shè)置為16次),如果輸入緩沖區(qū)持續(xù)擁塞,當(dāng)沖突次數(shù)超過16次之后,節(jié)點將丟棄該幀,失去了引入流量控制的意義。因此一般采用第二種方法,當(dāng)端口擁塞時延時傳輸,將該幀保留在隊首,讓載波偵聽做出“信道忙”的判斷,且不管時間有多長都不會丟棄該幀,這種方法稱為偽載波技術(shù)。在全雙工工作模式下,接收緩沖區(qū)首先接收到數(shù)據(jù)幀并將其存儲,當(dāng)該緩沖區(qū)中存儲的數(shù)據(jù)幀即將超出其最大存儲至?xí)r,上層協(xié)議將拒絕接收新發(fā)送的數(shù)據(jù)幀并向MAC層發(fā)送流量控制請求。MAC層收到流量控制請求后,向數(shù)據(jù)發(fā)送站點發(fā)出一個暫?刂凄嵲谶@個暫?刂茙幸(guī)定了暫停發(fā)送的時間,數(shù)據(jù)發(fā)送站點在這段時間內(nèi)不得發(fā)送新的數(shù)據(jù)鄭與普通以太網(wǎng)數(shù)據(jù)幀格式不同的是,暫?刂茙话ㄇ皩(dǎo)碼和幀起始符,長度為以太網(wǎng)幀格式的最小長度,即為64字節(jié)。暫停控制幀的格式如圖2.3所示。圖2.3暫?刂茙袷狡渲心康牡刂房梢允俏锢淼刂芬材苁墙M播地址,其為暫?刂茙竭_的地址;源地址則為發(fā)送暫?刂茙军c的地址;長度/類型是0x8808,為暫?刂茙谋A糁担豢刂撇僮鞔a則是0x0001,為暫停控制幀的操作代碼;控制參數(shù)是填充字節(jié)或暫停時間控制參數(shù),其中的暫停時間是2個字節(jié)無符號數(shù),該時間參數(shù)乘以傳送512比特所需時間即為請求暫停的時間。該字段中需要用0填充未使用的字節(jié)以滿足最小幀長的要求;幀校驗序列則是用于判斷CRC校驗接收到的幀是否正確。
本文編號:3102514
本文鏈接:http://sikaile.net/shoufeilunwen/xixikjs/3102514.html
最近更新
教材專著