一種基于PCIE總線的改進分散集聚DMA的設計
發(fā)布時間:2019-10-18 10:07
【摘要】:隨著雷達數(shù)據(jù)記錄回放系統(tǒng)對數(shù)據(jù)傳輸速率的要求越來越高,提出了一種基于外設部件高速互連標準(PCIE)總線的多通道分散集聚DMA的改進方法。針對現(xiàn)有分散集聚DMA獲取、更新描述符需要DMA控制器與驅(qū)動頻繁握手的不足,提出了一種通過集中傳輸DMA描述符鏈表給FPGA的方法,基于該方法設計了一種改進的DMA控制器,實現(xiàn)了雷達數(shù)據(jù)的連續(xù)傳輸,并能夠與雷達信號處理系統(tǒng)配合,實現(xiàn)雷達數(shù)據(jù)的流水傳輸與處理。該設計具有良好的穩(wěn)定性,實際測試的數(shù)據(jù)傳輸速率最高能達到1500MB/s,能夠滿足雷達數(shù)據(jù)的高速傳輸。
【圖文】:
據(jù)通道,可以在實際應用中根據(jù)需要實現(xiàn)雷達數(shù)據(jù)的流水傳輸與處理。1現(xiàn)有分散集聚DMA原理因為分散集聚DMA申請的內(nèi)存是物理不連續(xù)的,所以上位機在申請一定大小的內(nèi)存時,會生成描述符鏈表,描述符鏈表中的每一個描述符都指向了一小塊物理連續(xù)的內(nèi)存,描述符中定義了控制狀態(tài)信息和內(nèi)存信息。其中,描述符最后32bit是一個指向下一個描述符的指針,這個指針將各個描述符連接成描述符鏈表,由此就可以映射到整個物理不連續(xù)的內(nèi)存[11]。在傳統(tǒng)分散集聚DMA的傳輸過程中,如圖1所示,首先DMA控制器從驅(qū)動讀取描述符鏈表中的一個描述符并存到描述符引擎中,DMA控制器根據(jù)描述符引擎中的信息完成對應內(nèi)存的數(shù)據(jù)傳輸后,描述符更新引擎將此描述符的更新信息傳到描述符鏈表中,然后描述符引擎通過指向下一個描述符的指針向驅(qū)動獲取下一個描述符的信息,由此進行下一個描述符對應內(nèi)存的數(shù)據(jù)傳輸。此方式在傳輸完成一個描述符對應內(nèi)存的數(shù)據(jù)后,需要等待描述符更新引擎更新描述符信息和描述符引擎讀取下一個描述符的信息,降低了數(shù)據(jù)傳輸?shù)某掷m(xù)性。圖1現(xiàn)有分散集聚DMA示意圖2改進分散集聚DMA設計2.1DMA控制器設計針對驅(qū)動與DMA控制器頻繁握手的不足,本設計在上位機驅(qū)動中對描述符鏈表作了提取處理,由于描述符(32B)中的保留位以及狀態(tài)位等在DMA控制器中是無用信息,因此本設計直接選取了有用的上位機內(nèi)存地址位(8B)和數(shù)據(jù)長度位(4B)發(fā)送至DMA控制器,描述符其他數(shù)據(jù)不再發(fā)送。當DMA控制器初始化以后,驅(qū)動直接將所有描述符的系統(tǒng)地址位和數(shù)據(jù)長度位發(fā)送至描述符引擎,如圖2
示,首先DMA控制器從驅(qū)動讀取描述符鏈表中的一個描述符并存到描述符引擎中,DMA控制器根據(jù)描述符引擎中的信息完成對應內(nèi)存的數(shù)據(jù)傳輸后,,描述符更新引擎將此描述符的更新信息傳到描述符鏈表中,然后描述符引擎通過指向下一個描述符的指針向驅(qū)動獲取下一個描述符的信息,由此進行下一個描述符對應內(nèi)存的數(shù)據(jù)傳輸。此方式在傳輸完成一個描述符對應內(nèi)存的數(shù)據(jù)后,需要等待描述符更新引擎更新描述符信息和描述符引擎讀取下一個描述符的信息,降低了數(shù)據(jù)傳輸?shù)某掷m(xù)性。圖1現(xiàn)有分散集聚DMA示意圖2改進分散集聚DMA設計2.1DMA控制器設計針對驅(qū)動與DMA控制器頻繁握手的不足,本設計在上位機驅(qū)動中對描述符鏈表作了提取處理,由于描述符(32B)中的保留位以及狀態(tài)位等在DMA控制器中是無用信息,因此本設計直接選取了有用的上位機內(nèi)存地址位(8B)和數(shù)據(jù)長度位(4B)發(fā)送至DMA控制器,描述符其他數(shù)據(jù)不再發(fā)送。當DMA控制器初始化以后,驅(qū)動直接將所有描述符的系統(tǒng)地址位和數(shù)據(jù)長度位發(fā)送至描述符引擎,如圖2所示,此后,描述符引擎便不需要與驅(qū)動握手。圖2改進后分散集聚DMA示意圖由于改進后分散集聚DMA是應用在雷達數(shù)據(jù)記錄回放系統(tǒng)中,雷達數(shù)據(jù)量非常大,遠大于一個描述符對應的內(nèi)存(通常4KB),不會出現(xiàn)實際傳輸數(shù)據(jù)小于描述符內(nèi)存的情況,因此不需要更新描述符中實際傳輸數(shù)據(jù)大,F(xiàn)有描述符更新引擎的一個重要作用是當一個描述符對應內(nèi)存完成數(shù)據(jù)傳輸以后,通知驅(qū)動此內(nèi)存可進行數(shù)據(jù)讀取或?qū)懭,可是在分散集聚DMA實際傳輸過程中都是所有描述符對應內(nèi)存完成數(shù)據(jù)傳輸以后,上位機才會對內(nèi)
【作者單位】: 中國科學院電子學研究所;微波成像技術國家重點實驗室;中國科學院大學;
【分類號】:TN957
【圖文】:
據(jù)通道,可以在實際應用中根據(jù)需要實現(xiàn)雷達數(shù)據(jù)的流水傳輸與處理。1現(xiàn)有分散集聚DMA原理因為分散集聚DMA申請的內(nèi)存是物理不連續(xù)的,所以上位機在申請一定大小的內(nèi)存時,會生成描述符鏈表,描述符鏈表中的每一個描述符都指向了一小塊物理連續(xù)的內(nèi)存,描述符中定義了控制狀態(tài)信息和內(nèi)存信息。其中,描述符最后32bit是一個指向下一個描述符的指針,這個指針將各個描述符連接成描述符鏈表,由此就可以映射到整個物理不連續(xù)的內(nèi)存[11]。在傳統(tǒng)分散集聚DMA的傳輸過程中,如圖1所示,首先DMA控制器從驅(qū)動讀取描述符鏈表中的一個描述符并存到描述符引擎中,DMA控制器根據(jù)描述符引擎中的信息完成對應內(nèi)存的數(shù)據(jù)傳輸后,描述符更新引擎將此描述符的更新信息傳到描述符鏈表中,然后描述符引擎通過指向下一個描述符的指針向驅(qū)動獲取下一個描述符的信息,由此進行下一個描述符對應內(nèi)存的數(shù)據(jù)傳輸。此方式在傳輸完成一個描述符對應內(nèi)存的數(shù)據(jù)后,需要等待描述符更新引擎更新描述符信息和描述符引擎讀取下一個描述符的信息,降低了數(shù)據(jù)傳輸?shù)某掷m(xù)性。圖1現(xiàn)有分散集聚DMA示意圖2改進分散集聚DMA設計2.1DMA控制器設計針對驅(qū)動與DMA控制器頻繁握手的不足,本設計在上位機驅(qū)動中對描述符鏈表作了提取處理,由于描述符(32B)中的保留位以及狀態(tài)位等在DMA控制器中是無用信息,因此本設計直接選取了有用的上位機內(nèi)存地址位(8B)和數(shù)據(jù)長度位(4B)發(fā)送至DMA控制器,描述符其他數(shù)據(jù)不再發(fā)送。當DMA控制器初始化以后,驅(qū)動直接將所有描述符的系統(tǒng)地址位和數(shù)據(jù)長度位發(fā)送至描述符引擎,如圖2
示,首先DMA控制器從驅(qū)動讀取描述符鏈表中的一個描述符并存到描述符引擎中,DMA控制器根據(jù)描述符引擎中的信息完成對應內(nèi)存的數(shù)據(jù)傳輸后,,描述符更新引擎將此描述符的更新信息傳到描述符鏈表中,然后描述符引擎通過指向下一個描述符的指針向驅(qū)動獲取下一個描述符的信息,由此進行下一個描述符對應內(nèi)存的數(shù)據(jù)傳輸。此方式在傳輸完成一個描述符對應內(nèi)存的數(shù)據(jù)后,需要等待描述符更新引擎更新描述符信息和描述符引擎讀取下一個描述符的信息,降低了數(shù)據(jù)傳輸?shù)某掷m(xù)性。圖1現(xiàn)有分散集聚DMA示意圖2改進分散集聚DMA設計2.1DMA控制器設計針對驅(qū)動與DMA控制器頻繁握手的不足,本設計在上位機驅(qū)動中對描述符鏈表作了提取處理,由于描述符(32B)中的保留位以及狀態(tài)位等在DMA控制器中是無用信息,因此本設計直接選取了有用的上位機內(nèi)存地址位(8B)和數(shù)據(jù)長度位(4B)發(fā)送至DMA控制器,描述符其他數(shù)據(jù)不再發(fā)送。當DMA控制器初始化以后,驅(qū)動直接將所有描述符的系統(tǒng)地址位和數(shù)據(jù)長度位發(fā)送至描述符引擎,如圖2所示,此后,描述符引擎便不需要與驅(qū)動握手。圖2改進后分散集聚DMA示意圖由于改進后分散集聚DMA是應用在雷達數(shù)據(jù)記錄回放系統(tǒng)中,雷達數(shù)據(jù)量非常大,遠大于一個描述符對應的內(nèi)存(通常4KB),不會出現(xiàn)實際傳輸數(shù)據(jù)小于描述符內(nèi)存的情況,因此不需要更新描述符中實際傳輸數(shù)據(jù)大,F(xiàn)有描述符更新引擎的一個重要作用是當一個描述符對應內(nèi)存完成數(shù)據(jù)傳輸以后,通知驅(qū)動此內(nèi)存可進行數(shù)據(jù)讀取或?qū)懭,可是在分散集聚DMA實際傳輸過程中都是所有描述符對應內(nèi)存完成數(shù)據(jù)傳輸以后,上位機才會對內(nèi)
【作者單位】: 中國科學院電子學研究所;微波成像技術國家重點實驗室;中國科學院大學;
【分類號】:TN957
【相似文獻】
相關期刊論文 前10條
1 張婕;王丹力;;基于上下文的多通道語義融合[J];計算機工程與設計;2007年01期
2 聶守平,劉明,陶純堪,趙琦;并行多通道成像和頻譜分析[J];光電子·激光;1999年05期
3 杭正東;;多通道音頻監(jiān)錄系統(tǒng)的開發(fā)和應用[J];視聽界(廣播電視技術);2008年05期
4 賴濤;董臻;梁甸農(nóng);;多通道/多波束星載SAR實現(xiàn)高分辨寬測繪帶成像綜述[J];遙感信息;2011年01期
5 郭青偉;;多通道廣播監(jiān)測系統(tǒng)[J];遼寧師專學報(自然科學版);2011年01期
6 張青;詹磊;;大型電視節(jié)目多通道采編制作系統(tǒng)設計[J];電視技術;2013年24期
7 謝冬冬;吳俠義;禹衛(wèi)東;;一種多通道星載SAR通道間一致性精確測量方法[J];電子測量與儀器學報;2012年05期
8 李曉妮;王大中;冀振元;;多通道接收系統(tǒng)的補償研究[J];長春大學學報;2007年12期
9 聶波;王緒剛;王宏安;王綱;;手持移動設備中多通道交互的通用開發(fā)框架[J];計算機應用研究;2007年09期
10 胡兵,陳光
本文編號:2551034
本文鏈接:http://sikaile.net/kejilunwen/xinxigongchenglunwen/2551034.html
最近更新
教材專著