基于PCIe的多路串行通信模塊設(shè)計與實現(xiàn)
發(fā)布時間:2017-07-28 14:35
本文關(guān)鍵詞:基于PCIe的多路串行通信模塊設(shè)計與實現(xiàn)
更多相關(guān)文章: PCIe 多路串口 驅(qū)動 流量控制
【摘要】:嵌入式系統(tǒng)具有體積小、價格低廉、功能強大等優(yōu)點,在工控、國防和航天等領(lǐng)域有著廣泛應(yīng)用。在嵌入式系統(tǒng)中,多路數(shù)據(jù)采集是一個重要研究方向。通常多路數(shù)據(jù)采集是通過現(xiàn)場總線從各路傳感器中采集數(shù)據(jù)串行上傳,但是這種做法難以滿足多通道、大批量數(shù)據(jù)的同時傳輸。PCIe(PCI Express)總線的高帶寬和高穩(wěn)定性等特性使得基于PCIe擴展的多路串行通信逐漸成為研究的熱點,由此引出基于PCIe的多路串行通信的設(shè)計概念。本課題源于新一代醫(yī)療監(jiān)護(hù)儀的研制。在該項目中,需要通過各種參數(shù)測量模塊,外接導(dǎo)線和探頭,實時測量人體的心音信號,體溫,血壓等各項生理特征參數(shù),并將測量的數(shù)據(jù)傳回工控機顯示并存儲。本課題既解決了監(jiān)護(hù)儀研制中多路數(shù)據(jù)傳輸?shù)膯栴},所設(shè)計的通信模塊又可以獨立的在類似的場合中應(yīng)用。多路數(shù)據(jù)傳輸時采用的是串口通信方式,考慮到參數(shù)測量模塊的串行接口不帶有流量控制引腳,為保證數(shù)據(jù)的可靠傳輸,在驅(qū)動層添加協(xié)議阻塞工控機與參數(shù)模塊通信,課題研究了協(xié)議的幀格式、差錯檢測和滑動窗口等細(xì)節(jié);探討了硬件框架方案的選擇,采用了OXPCIe958主控芯片,外接8路UART接口芯片的通信卡;深入闡述Linux內(nèi)核中終端設(shè)備層、UART層的架構(gòu)及數(shù)據(jù)流向,參考Linux驅(qū)動規(guī)范編寫硬件驅(qū)動程序,并解決了設(shè)備的并發(fā)控制問題;編寫了應(yīng)用程序串口控制類和界面控制類,采用圖形視圖框架對串口數(shù)據(jù)進(jìn)行顯示,采用SQLITE輕量型數(shù)據(jù)庫進(jìn)行存儲;測試了極限速率下工控機和參數(shù)模塊的CPU利用率和傳輸速率,對該測試結(jié)果進(jìn)行了分析,給出了需要改進(jìn)和確認(rèn)的地方。經(jīng)過長時間測試,測試結(jié)果包括CPU利用率和傳輸速率都滿足指標(biāo)要求,驅(qū)動程序、流量控制協(xié)議正常工作,并且在應(yīng)用層可以對多路數(shù)據(jù)進(jìn)行圖形顯示控制,為工控領(lǐng)域中類似場合提供有力參考。
【關(guān)鍵詞】:PCIe 多路串口 驅(qū)動 流量控制
【學(xué)位授予單位】:哈爾濱工業(yè)大學(xué)
【學(xué)位級別】:碩士
【學(xué)位授予年份】:2015
【分類號】:TH789
【目錄】:
- 摘要4-5
- ABSTRACT5-8
- 第1章緒論8-17
- 1.1 課題研究背景及意義8-11
- 1.2 國內(nèi)外研究現(xiàn)狀分析11-16
- 1.2.1 多路數(shù)據(jù)采集11-13
- 1.2.2 數(shù)據(jù)鏈路層協(xié)議研究13-14
- 1.2.3 PCIe的串行化應(yīng)用14-16
- 1.3 課題研究的主要內(nèi)容16-17
- 第2章流量控制協(xié)議設(shè)計17-31
- 2.1 引言17
- 2.2 流控方案選擇17-18
- 2.3 協(xié)議設(shè)計需求18-19
- 2.4 幀格式及實現(xiàn)19-23
- 2.4.1 協(xié)議幀格式20-22
- 2.4.2 幀格式實現(xiàn)22-23
- 2.5 差錯檢測23-24
- 2.5.1 比特差錯23-24
- 2.5.2 幀丟失24
- 2.6 滑動窗口24-30
- 2.6.1 1比特滑動窗口協(xié)議25
- 2.6.2 選擇重傳協(xié)議25-27
- 2.6.3 鏈路利用率分析27-29
- 2.6.4 滑動窗口機制選擇29-30
- 2.7 超時定時器定時時間設(shè)定30
- 2.8 本章小結(jié)30-31
- 第3章多路串行通信的實現(xiàn)31-42
- 3.1 引言31
- 3.2 硬件平臺簡介31-34
- 3.2.1 系統(tǒng)方案設(shè)計31-33
- 3.2.2 RS422 接口33-34
- 3.3 串行通信在Linux內(nèi)核中的實現(xiàn)機制34-37
- 3.3.1 終端設(shè)備層結(jié)構(gòu)35-36
- 3.3.2 UART層結(jié)構(gòu)36-37
- 3.4 硬件驅(qū)動程序設(shè)計37-40
- 3.4.1 數(shù)據(jù)結(jié)構(gòu)37-38
- 3.4.2 模塊的加載與卸載函數(shù)38
- 3.4.3 發(fā)送和接收數(shù)據(jù)流程38-40
- 3.4.4 并發(fā)控制40
- 3.5 本章小結(jié)40-42
- 第4章應(yīng)用程序設(shè)計及系統(tǒng)調(diào)試42-51
- 4.1 引言42
- 4.2 串行通信的實現(xiàn)42-44
- 4.2.1 串行控制類42-43
- 4.2.2 串行通信類43-44
- 4.3 圖形視圖框架44-45
- 4.4 數(shù)據(jù)存儲45-46
- 4.4.1 創(chuàng)建數(shù)據(jù)庫連接46
- 4.4.2 數(shù)據(jù)庫操作46
- 4.5 系統(tǒng)調(diào)試46-50
- 4.5.1 測試平臺47
- 4.5.2 測試環(huán)境47
- 4.5.3 測試結(jié)果47-49
- 4.5.4 結(jié)果分析49-50
- 4.6 本章小結(jié)50-51
- 結(jié)論51-52
- 參考文獻(xiàn)52-56
- 致謝56
【參考文獻(xiàn)】
中國期刊全文數(shù)據(jù)庫 前1條
1 劉文峰,李程遠(yuǎn),李善平;嵌入式Linux操作系統(tǒng)的研究[J];浙江大學(xué)學(xué)報(工學(xué)版);2004年04期
,本文編號:584565
本文鏈接:http://sikaile.net/kejilunwen/yiqiyibiao/584565.html
最近更新
教材專著