999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于ARM-FPGA的NURBS插補嵌入式平臺研究

2014-07-07 01:50:34聶明星蔣新華李光煬陳興武朱娜思
計算機工程與應用 2014年6期
關鍵詞:嵌入式信號

聶明星,蔣新華,李光煬,陳興武,朱娜思

1.中南大學信息科學與工程學院,長沙 410083

2.福建工程學院控制與信息技術研究所,福州 350108

基于ARM-FPGA的NURBS插補嵌入式平臺研究

聶明星1,2,蔣新華1,2,李光煬2,陳興武2,朱娜思1

1.中南大學信息科學與工程學院,長沙 410083

2.福建工程學院控制與信息技術研究所,福州 350108

針對非均勻有理B樣條(Non-Uniform Rational B-Spline,NURBS)曲線高速高精加工過程中計算負載高的問題,提出基于ARM-FPGA嵌入式技術的NURBS曲線插補硬件平臺,對硬件平臺結構進行了設計,利用讀寫下降沿同步信號解決ARM與FPGA跨時鐘域總線傳輸問題,自主開發了ARM-FPGA嵌入式硬件平臺。該平臺結構具有小型化、智能化特點,在硬件平臺上經實際測試表明,ARM與FPGA之間數據傳輸穩定可靠,能有效降低單一處理器的計算負載。

非均勻有理B樣條(NURBS);插補器;嵌入式微處理器-現場可編程邏輯陣列(ARM-FPGA);計算負載

1 引言

NURBS曲線以通用的數學表達式將解析圖形和自由形狀統一起來,并且被ISO組織確定為自由型零件和產品的唯一表達形式,事實上已經成為工業CAD幾何造型的標準。NURBS曲線直接插補較傳統大量微小直線段逼近非圓曲線插補具有數據存儲量小、信息完整、速度平滑等許多明顯的優點,容易實現高速高精度,已得到越來越多數控系統的支持。

但是,與NURBS曲線造型技術相比,NURBS曲線插補技術相對比較滯后。傳統的均勻參數插補方法速度波動較大,勻速插補方法誤差難以控制[1];自動調節進給速度插補方法能滿足最大輪廓誤差要求,但是速度的變化可能超過機床的加減速能力[2]。為提高插補精度,最大加速度和加加速度限制算法被引入到NURBS插補中,文獻[3]中利用分段三角函數加減速方法使加加速度柔性變化,避免產生加加速度階躍;文獻[4]在前瞻模塊中對加速度和加加速度超限點進行預處理,再采用S曲線加減速方法對速度進行平滑控制。這些方法雖然在理論上能夠大幅提高NURBS曲線插補的精度,但是也引入了較高的計算負載。

隨著高速高精數控技術的發展,對NURBS插補器提出了更高的要求。文獻[5]中指出高速高精插補周期應在1 ms內,插補時間越短,插補點距越小,零件的加工精度也就越高。由于NURBS曲線采用B樣條基函數分段構造的形式,NURBS曲線點的計算復雜。同時采用泰勒1階或2階級數展開近似法來求取曲線參數時,NURBS一階或二階導[6]計算量也非常大。再加上NURBS非線性變化的曲率對速度的持續影響,使得插補過程中進給速度和加速度的變化可能是非線性的,需進行加減速控制和最大加加速度限制。因此,傳統基于單一處理器的NURBS插補解決方案,面臨較高計算負載和實時性的問題。

為此,本文針對NURBS曲線插補器的運行環境,提出一種基于ARM-FPGA架構的NURBS插補器嵌入式平臺,在此硬件平臺上,第一級粗插補在高性能ARM嵌入式處理器端執行,以Xenomai作為實時操作系統,提供人機界面(HMI)、CNC解釋器、前瞻模塊、通信握手模塊及其他管理模塊的運行環境,完成實時性要求不高的插補預處理等工作;第二級插補在FPGA端完成,執行加減速控制、插補點生成等實時性較強的任務,實現精插補。

2 基于ARM-FPGA的嵌入式平臺結構設計

基于單一處理器的NURBS插補器面臨較高計算負載問題,不能很好滿足高速高精加工對實時性的要求。基于ARM-FPGA架構的NURBS插補器平臺,在ARM端處理實時性要求不高的數據預處理功能,實現NURBS曲線粗插補;在FPGA芯片端處理加減速控制、實時插補等實時性較強功能,實現精插補。

如圖1所示,系統平臺由ARM微處理器為核心的管理端和基于FPGA的運動控制端兩部分構成。管理端以ARM微處理器為核心,以Xenomai為實時操作系統,提供人機界面(HMI)、CNC解釋器、前瞻模塊、通信握手模塊及其他管理模塊的運行環境。執行端由高性能FPGA和擴展電路構成,主要完成第二級精插補、伺服控制等任務。

圖1 基于ARM-FPGA的NURBS曲線插補器硬件結構

人機界面提供系統與人的交互接口,方便操作人員使用系統;CNC解釋器讀入NC文件執行詞法分析、語法分析和語義分析,對M、S、T及G功能字進行處理,并把NC代碼中NURBS曲線加工信息存入緩沖區;前瞻模塊完成第一級粗插補,根據插補速率、曲線曲率及輪廓誤差的關系對NURBS曲線進行分段預處理;通信握手模塊負責ARM與FPGA間的指令與粗插補數據的傳輸協調;管理端將第一級插補數據存入FIFO緩沖隊列,包括NURBS曲線次數、控制點權因子、控制頂點、分段曲線起始點、加速減速起點等信息,并通過握手模塊同步FPGA端數據的存取操作。FPGA端完成基于De Boor-Cox的快速遞推算法,加減速控制,實時插補點數據生成等功能,執行第二級精插補。

2.1 硬件方案設計

本文采用ARM嵌入式微處理器和現場可編程邏輯陣列FPGA,利用ARM微處理器的高速運算能力及FPGA強大的邏輯處理能力,以Xenomai作為實時操作系統,構建一個實時性強、穩定性高的硬件平臺。

硬件方案如圖2所示,系統采用主從式結構[7],ARM作為主CPU主要完成人機界面交互、LCD顯示管理、鍵盤管理、內存管理、粗插補、I/O輸入輸出等。FPGA主要完成NURBS曲線加減速控制、插補點實時生成等工作。

圖2 兩級插補器硬件結構

ARM將粗插補數據通過總線與FPGA進行交互,采用16數據位并行總線連接,提高數據傳輸效率。FPGA采用中斷方式進行插補數據的預取,將插補處理后的位置數據送至脈沖密化單元產生驅動脈沖,并將輔助信息送往輸出接口,由伺服系統驅動相應電機完成進給控制。編碼器輸入構成位置閉環控制,零點、限位等I/O輸入通過硬件中斷交由ARM處理。

2.2 ARM芯片與FPGA器件的接口設計

為了能實現ARM和FPGA之間的快速可靠的數據傳輸,借助ARM的EABI擴展外部總線的時序來實現對FPGA的讀寫。ARM采用16位數據線、1位讀控制線、1位寫控制線、1位片選線、1位命令線及1位等待信號線來實現與FPGA之間的接口通訊。接口如圖3所示,nGCS為片選信號,當FPGA被選中,數據使能SDEN信號有效,使能數據Buffer。nWait為總線等待信號,用來延時總線操作。nWE為寫信號。INT為FPGA中斷輸出管腳,通過中斷管腳,ARM可以在中斷程序中讀取FPGA中相應功能寄存器。nOE信號控制Buffer的輸出方向,當nOE為高電平,數據由ARM輸出到FPGA,即進行寫操作;當nOE為低電平,數據由FPGA輸出到ARM方向,進行讀操作。ARM和FPGA之間的接口采用地址和數據線復用方式,通過命令信號cmd的高低來判斷總線上是數據還是地址。

圖3 ARM9與FPGA通訊接口

3 ARM與FPGA跨時鐘域同步機制

3.1 跨時鐘域同步

ARM粗插補處理后的數據通過總線與FPGA進行交互,它們之間數據傳輸的正確性和穩定性是嵌入式平臺設計的重點。由于ARM與FPGA有各自的時鐘,數據的傳輸需要跨時鐘域進行。

如圖4所示為典型的異步FIFO緩存同步法,采用環形存儲結構的先進先出存儲器。使用一個雙端口存儲器存放數據,數據發送方在一端寫入數據,接收方在另一端讀出數據,能夠協調好兩個時鐘域的工作,滿足高時鐘頻率的要求。訪問FIFO時不需要地址線,只需要數據線和讀寫控制信號線,且數據地址由內部讀寫指針自動加1完成,因此利用FIFO實現數據的緩存具有接口簡單、讀寫方便的優點。但是,在含有觸發器的電路中往往會出現亞穩態問題,將導致異步FIFO的讀寫地址發生錯誤,產生誤讀或者誤寫。

圖4 異步FIFO結構圖

為此,本文設計一種更為簡單可靠的同步方法,如圖5所示為ARM9 S3C2440讀寫時序圖,HCLK為ARM的總線時鐘,頻率為100 MHz,即時鐘周期為5 ns。當讀信號nOE有效后的一個時鐘周期,讀數據D[31:0](R)在數據總線上準備好,并維持到操作時間Tacc結束;在寫信號nWE的下降沿,寫數據準備好,并維持到操作時間Tacc結束。由此可知,只要以讀寫信號的下降沿作為同步信號,配合Tacc延時4個周期,即可實現數據的穩定讀寫。以寫數據為例,將nWE信號下降沿作為同步信號開始,經過4個周期的延時,實現數據的提取,在第5個時鐘周期,實現數據的分配,將數據送往相應的寄存器中。此時,要求ARM的寫操作Tacc的最小時間間隔為5個周期,即25 ns。

圖5 S3C2440 BANK3讀寫時序圖

具體實現方法為:當片選信號和寫信號有效時,將寫信號進行5個周期的延時,第3個延時的同步信號從總線上獲取數據,第2個和第4個延時信號作為寫數據的緩沖同步,第4個和第5個延時作為將數據送到相對應的寄存器的同步信號。同時,采用命令信號來區分寫的數據是地址還是數據。

3.2 接口驗證

采用Quartus II仿真環境對接口進行驗證,輸入信號按時序要求配置如下:cmd_reg的地址為0x20,status_ reg的地址為0x21,cmd為“1”時表示寫地址,為“0”時表示寫數據。

圖6 接口仿真示意圖

從圖6中可知,當寫信號有效時,數據0x20被寫入了地址為0x21的status_reg中,數據0x30被寫入了地址為0x20的cmd_reg中;當讀信號有效時,總線上給出0x21地址,總線上返回了0x20的數據;當給出0x21的地址時,總線返回了0x30的數據,仿真結果驗證了接口模塊功能的正確性。

4 平臺實現與測試

4.1 平臺實現

本設計采用模塊化設計,將ARM控制器和FPGA設計成核心板模塊,其他的輸入輸出和通信接口,鍵盤掃描、LCD、SD、USB等模塊整合為一塊底板。

為加快開發進度,ARM核心板采用成熟的TQ2440核心板。為滿足數控系統功能性要求和日后擴展需要,對平臺接口作了如下規劃。底板共8個DB25接口,包括伺服軸接口4個、擴展軸接口2個、手搖接口1個、擴展I/O接口2個,操作面板接口采用DB62接插頭。底板右下角為電源模塊,上下邊沿為普通I/O。

FPGA核心板采用2層板,布局如圖7所示;底板作為主要接口,其大小受到了接口規模限制,大小為250 mm× 150 mm,考慮承重在板子四周和中間做了加固定位孔,同時將PCB的板材厚度規定為2 mm,底板布局如圖8所示。

圖7 FPGA核心板PCB

圖8 底板PCB

將layout后的板子交付PCB板生產商制作,圖9為制作完成并進行焊接后的最終成品圖。

4.2 ARM與FPGA數據傳輸測試

將FPGA的工程編譯成pof后綴的配置文件,通過usb-blaster下載到FPGA中,完成FPGA相應配置。ARM與FPGA數據傳輸測試,需結合ARM時序編寫linux驅動程序。

圖9 嵌入式平臺成品

為了使Linux驅動對FPGA進行讀寫操作時,在EABI總線上產生圖6的時序,需要對ARM的寄存器進行設置。應配置BWSCON寄存器控制總線上的數據寬度,以及BANKCON3寄存器控制總線上各信號的時序及延時。同時,在設置BANKCON3的時候,Tacc應該大于5個時鐘周期,以保證操作正確性。

在讀寫FPGA時需對FPGA進行地址譯碼,FPGA的基地址為nGCS3,FPGA中的命令線cmd接到ARM的A4地址線。當cmd為“1”時總線上的數據為寄存器地址偏移,當cmd為“0”時總線上的數據為寄存器數據。因此,寫FPGA地址時的地址是0x18000010,寫數據時的地址為0x18000000。讀寫測試程序是先往FPGA地址寫數據,然后再讀出數據,如果讀出的數據跟寫的數據一致,則能驗證數據傳輸的正確性。

部分代碼如下:

將驅動程序編譯后多次運行結果顯示,讀出的數據與寫入的數據一致,驗證了ARM與FPGA之間數據傳輸的正確性。

5 結論

本文針對NURBS插補計算量大,實時性不高的問題,提出基于ARM和FPGA來構建嵌入式硬件平臺,由ARM處理人機交互、CNC解釋器、NURBS曲線插補預處理等工作,完成一級粗插補;由FPGA端執行加減速控制、插補點實時生成等工作,完成第二級精插補。該平臺具有小型化、智能化特點,能有效降低單一處理器計算負載,從而滿足大數據量實時處理要求,提高NURBS插補的實時性。

[1]蓋榮麗,王允森,孫一蘭.樣條曲線插補方法綜述[J].小型微型計算機系統,2012(12):2744-2748.

[2]梁宏斌,王永章,李霞.自動調節進給速度的NURBS插補算法的研究與實現[J].計算機集成制造系統,2006,12(3):428-433.

[3]李思益,羅為.NURBS曲線高速高精度插補及加減速控制方法研究[J].計算機集成制造系統,2008,14(6):1142-1147.

[4]孫玉娥,林滸.基于前瞻算法的高效非均勻有理B樣條曲線插補器[J].計算機集成制造系統,2009,15(10):2029-2033.

[5]黃翔,曾榮,岳伏軍,等.NURBS插補技術在高速加工中的應用研究[J].南京航空航天大學學報,2002,34(1):82-85.

[6]劉宇,戴麗,劉杰,等.泰勒展開NURBS曲線插補算法[J].東北大學學報:自然科學版,2009,30(1):117-120.

[7]田家林,陳利學,寇向輝.基于ARM與FPGA的嵌入式數控系統設計[J].機床與液壓,2007,35(2):93-94.

NIE Mingxing1,2,JIANG Xinhua1,2,LI Guangyang2,CHEN Xingwu2,ZHU Nasi1

1.School of Information Science and Engineering,Central South University,Changsha 410083,China
2.Institute of Control and Information Technology,Fujian University of Technology,Fuzhou 350108,China

This paper proposes an NURBS curve interpolation hardware platform based on ARM-FPGA embedded technology to achieve the purpose of high-speed and high-accuracy motion control.The hardware structure is designed.Then, the cross clock domain problem between ARM and FPGA is solved by using R/W falling edge as synchronization signal. The ARM-FPGA embedded hardware platform is developed independently.The practical test shows that data transfer between ARM and FPGA is reliable,and the proposed architecture would effectively reduce the computational load of NURBS curve interpolation in one single processor.

Non-Uniform Rational B-Spline(NURBS);interpolator;Advanced Reduced instruction set computer Machines-Field Programmable Gate Array(ARM-FPGA);computational load

A

TP391

10.3778/j.issn.1002-8331.1309-0362

NIE Mingxing,JIANG Xinhua,LI Guangyang,et al.Embedded platform of NURBS interpolation based on ARM-FPGA. Computer Engineering and Applications,2014,50(6):261-264.

福建省省屬高校專項項目(No.JK2013030);福建省教育廳中青年教師教育科研重點項目(No.JA13210)。

聶明星(1982—),男,博士研究生,講師,主要研究領域為計算機數控技術;蔣新華(1956—),男,教授,博士生導師,主要研究領域為智能控制技術;李光煬(1983—),男,工程師,主要研究領域為嵌入式技術。E-mail:nie_mingxing@163.com

2013-09-24

2013-11-22

1002-8331(2014)06-0261-04

猜你喜歡
嵌入式信號
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
TS系列紅外傳感器在嵌入式控制系統中的應用
電子制作(2019年7期)2019-04-25 13:17:14
孩子停止長個的信號
嵌入式系統通信技術的應用
電子制作(2018年18期)2018-11-14 01:48:16
搭建基于Qt的嵌入式開發平臺
嵌入式軟PLC在電鍍生產流程控制系統中的應用
電鍍與環保(2016年3期)2017-01-20 08:15:32
基于LabVIEW的力加載信號采集與PID控制
一種基于極大似然估計的信號盲抽取算法
Altera加入嵌入式視覺聯盟
主站蜘蛛池模板: 国产精品自在自线免费观看| 国产精品区视频中文字幕| 日韩高清欧美| 亚洲一区二区在线无码| 亚洲欧洲日韩久久狠狠爱| 日韩不卡免费视频| 色色中文字幕| 97久久人人超碰国产精品| 99热线精品大全在线观看| 五月婷婷综合色| 欧美亚洲一区二区三区在线| 青青热久麻豆精品视频在线观看| 久久国产高潮流白浆免费观看| 高清无码手机在线观看| 最新精品国偷自产在线| 亚洲精品片911| 毛片视频网| 国产精品亚洲va在线观看| 亚洲美女AV免费一区| 国产成人在线无码免费视频| 亚洲综合国产一区二区三区| 国产综合日韩另类一区二区| 欧美日韩成人| 欧美日韩国产在线人| 中文字幕丝袜一区二区| 精品亚洲欧美中文字幕在线看| 久久国产精品夜色| 国产丝袜丝视频在线观看| 漂亮人妻被中出中文字幕久久 | 午夜国产理论| 亚洲床戏一区| 亚洲精品中文字幕午夜| 日韩国产一区二区三区无码| 九一九色国产| 欧美综合中文字幕久久| 亚洲狠狠婷婷综合久久久久| 免费中文字幕在在线不卡| 日韩高清一区 | 亚洲电影天堂在线国语对白| 国产成人亚洲日韩欧美电影| 亚洲福利网址| 欧美中文字幕第一页线路一| 无码高潮喷水在线观看| 青青久视频| 亚洲天堂视频在线观看免费| 国产原创演绎剧情有字幕的| 无码丝袜人妻| 成人国产三级在线播放| 久久综合丝袜日本网| 久久免费视频6| 国产激爽大片高清在线观看| 久久精品无码国产一区二区三区| 最近最新中文字幕在线第一页| 色吊丝av中文字幕| 国产综合另类小说色区色噜噜| 国产成人精品在线1区| 99久久精品免费视频| 国产91九色在线播放| 欧美一级99在线观看国产| 国产一级二级三级毛片| 欧美成人二区| 小13箩利洗澡无码视频免费网站| 波多野结衣久久高清免费| 在线欧美国产| 美臀人妻中出中文字幕在线| 婷婷丁香在线观看| 色天天综合久久久久综合片| 91久久天天躁狠狠躁夜夜| 午夜精品福利影院| 五月天香蕉视频国产亚| 欧美亚洲另类在线观看| 精品无码一区二区在线观看| 亚洲精品在线91| 依依成人精品无v国产| 久久一日本道色综合久久| 国产午夜人做人免费视频| 亚洲av无码人妻| 精品国产免费观看一区| 97国产精品视频自在拍| 亚洲日韩精品无码专区| 一级福利视频| 少妇精品在线|