国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

面向高速數碼印花機的實時圖像數據轉置方法

2014-07-07 01:49:04張立周凡胡銀豐
計算機工程與應用 2014年6期
關鍵詞:印花機分塊印花

張立,周凡,胡銀豐

1.浙江大學數字技術及儀器研究所,杭州 310027

2.海軍駐杭州地區(qū)軍事代表室,杭州 310012

◎理論研究、研發(fā)設計◎

面向高速數碼印花機的實時圖像數據轉置方法

張立1,周凡1,胡銀豐2

1.浙江大學數字技術及儀器研究所,杭州 310027

2.海軍駐杭州地區(qū)軍事代表室,杭州 310012

針對PC無法實時按位轉置大量圖像數據而限制了數碼印花機輸出帶寬和噴印速度的問題,設計了基于PowerPC處理器和Virtex-5系列FPGA的高速數據處理系統,運用FPGA實現了高效轉置運算。為FPGA例化三個獨立的DDR2控制器,通過控制器間的協同工作提高系統輸出帶寬;設計按位轉置單元,將圖像數據分塊轉置,利用DDR2控制器的突發(fā)傳輸高效地讀寫數據。性能測試結果表明FPGA的輸出帶寬高達327 Mb/s,數碼印花機的噴印速度達249 m2/h,相比PC處理系統,在同等條件下性能提升明顯。

數碼印花;圖像數據轉置;實時;噴印速度;現場可編程門陣列(FPGA)

1 引言

數碼印花技術是隨著計算機技術不斷發(fā)展而逐漸形成的一種集機械、計算機電子信息技術為一體的高新技術產品,是將花樣圖案通過數字形式輸入到計算機,通過計算機印花分色描稿系統編輯處理[1],再由印染專用RIP軟件控制噴墨印花系統,將專用色料直接噴印到織物上,形成所需圖案[2]。與傳統印花相比,數碼印花具有免制版、低耗能、低污染[3]、高精度、短周期、個性化等顯著優(yōu)勢[4]。

2000年之前數碼印花技術得到初步發(fā)展,印花分辨率為360~720 dot/inch,但噴印速度低于10 m2/h[5]。2003年ITMA(International Textile Machinery Association,國際紡織機械展覽會)上,處于國際技術領先地位的意大利Reggiani公司推出了DreAM型數碼印花機。DreAM在600 dot/inch×600 dot/inch分辨率、6色噴印時,速度達150 m2/h[6]。美國DuPont公司推出的Artistri 2020,在360 dot/inch×360 dot/inch分辨率、8色噴印時,速度達45 m2/h;荷蘭Stork公司的Sapphire在同等條件下的噴印速度為32 m2/h[7]。2008年國內技術領先的宏華數碼公司推出了DBP-1600型數碼印花機。此機型在360 dot/inch× 360 dot/inch分辨率、8色噴印時,速度僅27.6 m2/h。2010年之前國內數碼印花機的噴印速度普遍在20~50 m2/h[8]。

2009年及以前的數碼印花機大多采用PC來處理圖像數據。在此類數碼印花機中,PC執(zhí)行的任務主要分為兩個部分。第一部分是圖像處理類,包括圖像分色、色域空間轉換、rip軟件柵格化、按位轉置以及傳輸等[9]。原始的彩色圖像經分色、色域轉換、柵格化后得到各基色的點陣圖像。點陣圖像中的像素均為1 bit數據,1表示噴印該基色,0表示不噴印。按位轉置處理是指在點陣圖像送往噴頭前,對其進行矩陣轉置。由于矩陣中的元素均為1 bit數據,故稱作按位轉置。PC所執(zhí)行任務的第二部分是系統控制類,包括噴印缺陷檢測結果處理[10],與運動控制子系統和噴頭控制子系統通訊以實現精確噴印等[11]。除了點陣圖像按位轉置,PC處理的其他事務也消耗了大量的資源,嚴重影響了轉置運算的速度。另外,通用處理器一次運算的位寬為32 bit或64 bit,在對大量1 bit數據進行轉置運算時,其效率十分低下。這兩個因素致使PC只能工作在預先轉置、暫時存儲、按需讀出的不連續(xù)模式,無法實時地轉置和傳輸圖像數據。因而以往采用此類PC處理系統的數碼印花機的輸出帶寬和噴印速度也受到限制,其最高噴印速度不超過150 m2/h[12]。

為解決上述問題,本文提出一種基于嵌入式處理器和高性能FPGA的方案。該系統使用高性能FPGA代替PC完成點陣圖像的按位轉置運算,充分發(fā)揮現場可編程門陣列使用靈活、并行處理能力強的特點,實現了圖像數據的實時轉置和輸出。本系統的輸出帶寬可達327 Mb/s,等同于3臺配置了主頻1.8 GHz酷睿處理器的PC機的處理性能。以本系統為核心的高速數碼印花機在600 dot/inch×600 dot/inch分辨率、8色噴印時,速度可達249 m2/h。相比以往采用PC處理系統的數碼印花機,在同等條件下其性能提升明顯。

2 系統總體架構設計

導帶式數碼印花機噴頭噴印的過程如圖1所示,假設待噴印的基色圖像為8×8的點陣(每一個像素點是1 bit數據)。噴頭的噴嘴一般按列向分布,圖1中的噴頭有4個噴嘴。噴頭按圖中所示方向自左向右運動一次后,噴印出一個4×8的點陣。噴頭噴印的數據依次為{(P1,1)(P2,1)(P3,1)(P4,1)}、{(P1,2)(P2,2)(P3,2)(P4,2)}、…。若將原始圖像按噴頭寬度劃分為若干圖像行(此例中為兩個4×8的點陣),可見數據處理系統送給噴頭的數據不是按圖像行的水平方向依次輸出,而是按圖像行的垂直方向依次輸出。因此,數據處理系統需要分圖像行對原始圖像進行轉置。

圖1 噴頭噴印示意圖

如圖2所示,本系統采用嵌入式PowerPC處理器和Virtex-5系列FPGA完成圖像數據轉置。Virtex-5系列FPGA的1x RapidIO 1.0接口的傳輸帶寬高達3.125 Gb/s[13],可以滿足圖像數據傳輸需求。上位機PC將待噴印的原始圖像劃分為若干圖像行,壓縮后通過千兆以太網發(fā)送給PowerPC。PowerPC接收圖像行,解壓后通過1x RapidIO 1.0高速串行接口發(fā)送給FPGA。FPGA對圖像行進行轉置,完成后發(fā)送到輸出端口。

圖2 系統結構框圖

每個圖像行最大為200 MB,PowerPC外接512 MB DDR2 SDRAM,用以緩存2行圖像。PC下發(fā)給Power-PC以及PowerPC轉發(fā)給FPGA的圖像行是按水平方向傳輸的,而FPGA需要按垂直方向輸出圖像行??梢奆PGA必須接收一個完整的圖像行后,才能對該圖像行進行轉置和輸出。因此,若要實現FPGA連續(xù)輸出已轉置的圖像行,FPGA必須同時處理至少兩個圖像行。即接收一個圖像行的同時,轉置輸出另一個圖像行。在保證輸出連續(xù)的前提下,為獲得更高的輸出帶寬,本設計使FPGA同時處理三個圖像行。為FPGA例化三個獨立的DDR2控制器,每個控制器外接256 MB DDR2 SDRAM,每個DDR2控制器對應一個圖像行,發(fā)揮了FPGA接口豐富、使用靈活的優(yōu)勢。

FPGA的總體架構如圖3所示,RapidIO控制器接收圖像行,經過輸入分配器依次送入三個緩存DDR2,每個DDR2只存儲一個完整的圖像行。為提高DDR2控制器的讀寫效率,將圖像行先劃分為特定大小的圖像塊,再依次傳輸圖像塊到各DDR2對應的轉置器進行轉置。最后,輸出分配器依次輸出三個DDR2里轉置完畢的圖像行到輸出端口。輸入分配器寫入DDR2和輸出分配器讀取DDR2的次序均為DDR2_1、DDR2_2、DDR2_3、再循環(huán)。

圖3 FPGA總體架構圖

各DDR2控制器的工作過程均分為三個階段:第一階段為連續(xù)寫入一行圖像,第二階段為分塊轉置圖像行,第三階段為讀出已轉置圖像行。設三個階段對應的數據處理帶寬分別為νwrite、νrotate和νread。三個DDR2控制器協同工作的過程如圖4所示,且系統的帶寬瓶頸在分塊轉置階段(即νrotate<νwrite且νrotate<νread)。由圖4可見,要使系統達到穩(wěn)定的輸出帶寬νread,必須滿足以下兩個條件:

圖4 三個DDR2控制器協同工作流程圖

3 圖像行轉置方法

FPGA以圖像行為單位轉置待噴印的圖像數據。為高效率地讀寫DDR2,將圖像行劃分為64 bit×64 bit的塊,使一次突發(fā)傳輸的位寬(DDR2控制器的數據位寬為16 bit,突發(fā)長度為4)等于圖像塊的長和寬,均為64 bit。再依次從DDR2讀取圖像塊,送入FPGA內部進行轉置,轉置完成后存回原來的DDR2地址空間。因此,原始圖像行的長和寬必須是64 bit的整數倍,若不是,則填0補足。圖像行塊劃分和分塊轉置的示意圖如圖5所示,按水平坐標軸自左向右,圖像行在DDR2中連續(xù)存儲,存完一行像素再存下一行像素。

圖5 圖像行塊劃分和分塊轉置示意圖

待全部圖像塊轉置完畢,即可從DDR2讀出轉置后的圖像行。設B表示一個已轉置圖像行里第i行、第j列的一個圖像塊,lk表示B的第k行,則DDR2的讀取順序可用偽代碼表示為:

每輸出一個lk都是一次突發(fā)傳輸。按此跳躍地址、突發(fā)傳輸的讀取方式,輸出的數據即為轉置的圖像行。

總之,DDR2中一行圖像的轉置處理分為連續(xù)寫入、分塊讀取、分塊寫入、跳躍讀出四個階段。首先連續(xù)寫入一個完整的圖像行,再分塊讀取到FPGA內部的緩存作轉置處理,然后將轉置完畢的圖像塊回寫到DDR2中的原地址空間,最后跳躍讀出轉置圖像行。DDR2的工作狀態(tài)如圖6所示,本系統還支持旁路功能,若不需要轉置,則直接連續(xù)讀出圖像行。

圖6 DDR2控制器工作狀態(tài)

4 圖像塊轉置方法

FPGA以64 bit×64 bit的圖像塊為單位轉置圖像行,轉置流程如圖7所示。第一步從DDR2依次讀取圖像塊的每一行寫入緩存FIFO(位寬64 bit);第二步讀取FIFO,依次寫入寄存器R1、R2、…、R64(位寬均為64 bit);第三步同時左移一位R1~R64,將移出的最高位組合成一個64 bit的數據寫入Block RAM;經過64次移位和組合,圖像塊數據全部寫入Block RAM;下一步讀取Block RAM寫入緩存FIFO(位寬64 bit);最后讀取FIFO寫入DDR2原地址空間,圖像塊的轉置操作完成。相對于通用處理器,此按位轉置方法發(fā)揮了FPGA并行處理和邏輯運算能力強的優(yōu)勢。

圖7 圖像塊轉置流程

本系統三個DDR2控制器各自擁有獨立的轉置單元,故一共需要192個64 bit的寄存器。這種設計既消耗了大量的FPGA資源,又降低了效率,因為每次開始移位前需要等待64個時鐘周期來從FIFO讀取圖像塊到寄存器組。為節(jié)省資源,本設計里將圖像塊劃分為4個16 bit×64 bit的子矩陣。對每個子矩陣依次進行移位和組合操作,因而只需16個64 bit的寄存器。為提高效率,又額外定義了16個64 bit的寄存器。使一組16×64 bit的寄存器在寫入數據時,另一組在移位、組合。兩組寄存器交替處于寫入或移位組合的狀態(tài),保證待轉置圖像塊數據寫入、移位、組合操作的連續(xù)進行。

待圖像塊全部移位寫入Block RAM,即可從Block RAM讀出轉置的圖像塊。若寫入Block RAM的地址依次為0~255(64×64/16=256),則讀取Block RAM的地址順序如表1所示?;貙慏DR2時,需要將讀取的16 bit數據拼接為64 bit數據。

表1 Block RAM跳躍讀出地址順序

為進一步提高效率,利用FPGA豐富的Block RAM資源,定義Block RAM的容量為2×256×16 bit。將Block RAM劃分為兩部分,分別為低256地址位和高256地址位。使一個Block RAM在寫入時,另一個在讀取。兩部分Block RAM交替處于寫入或讀取的狀態(tài),保證已轉置圖像塊數據寫入、讀取的連續(xù)進行。

5 性能測試

圖像數據寫入帶寬νwrite和轉置帶寬νrotate是衡量數據處理系統性能的關鍵指標。測試時,先在PC上生成隨機圖像數據,再經游程編碼算法壓縮后[14],通過千兆以太網發(fā)送給PowerPC,最后將PowerPC解壓的圖像數據通過RapidIO接口發(fā)送給FPGA。數據處理系統的具體參數如表2所示。

記錄PowerPC的RapidIO接口發(fā)送完大小為St的圖像數據所用的時間Tw,可計算出νwrite=St/Tw;使用Xilinx公司的EDA軟件ISE 12.4的ChipScope工具,觀測轉置一個64 bit×64 bit圖像塊所用的時間Tr,可計算出νrotate=64×64/Tr。測試結果如表3所示。

表2 數據處理系統參數

表3 寫入帶寬νwrite和轉置帶寬νrotate測試

其中Sl表示一個圖像行的大小,νread_p表示勻速區(qū)間的輸出帶寬,treversal表示勻變速區(qū)間的時長。測試時,數碼印花機的相關參數如表4所示[15]。

表4 數碼印花機參數

按表4中參數測試出數碼印花機的噴印速度νprint高達249 m2/h。由于輸出帶寬一定時,νprint和噴印的分辨率以及基色數成反比,因此在同等條件下,采用本數據處理系統的數碼印花機相對參考文獻[6]中分辨率為600 dot/inch×600 dot/inch、6色噴印、最高印速為150 m2/h的DreAM型數碼印花機,其性能提升了1.2倍;相對參考文獻[12]中分辨率為360 dot/inch×360 dot/inch、8色噴印、印速不超過150 m2/h的各數碼印花機,其性能提升了至少3.6倍。實際印花效果如圖8所示。

圖8 系統數碼印花機的印花樣圖

6 結束語

本文提出了嵌入式PowerPC處理器結合Virtex-5系列高性能FPGA的方案,用以解決數碼印花機中大量點陣圖像數據的實時按位轉置問題。為FPGA外擴出三個獨立的DDR2控制器,通過控制器間的協同工作實現了系統輸出帶寬的最大化。設計出高效的按位轉置單元,減小了轉置帶寬瓶頸的影響。劃分出特定大小的圖像塊,實現了DDR2的高效讀寫。相比以往PC不連續(xù)地轉置和輸出圖像數據,本系統實現了圖像數據的實時轉置和輸出,極大地提高了數碼印花機的輸出帶寬和噴印速度。實驗結果顯示在相同條件下,采用本系統的數碼印花機的性能較PC處理系統顯著提升。隨著更高性能嵌入式眾核處理器和FPGA的出現,本系統可以實現升級。通過進一步提高數據輸出帶寬,更大幅度地提高數碼印花機的噴印速度。

[1]陳浩杰,王金樂.淺析數碼印花技術[J].絲網印刷,2007(11):37-38.

[2]鮑璐.數碼印花與傳統印花[J].絲網印刷,2011(3):22-23.

[3]崔威.數碼印花發(fā)展之路——數碼印花行業(yè)的產業(yè)化[J].絲網印刷,2011(1):30-31.

[4]李明珠,張慶,余逸男.數碼印花的現狀及發(fā)展趨勢[J].染料與染色,2011,48(6):33-34.

[5]凌蓉,陳松,蒲宗耀.紡織品數碼噴墨印花技術及發(fā)展趨勢[J].紡織科技進展,2012(3):2-3.

[6]方泓釗,侯有軍,梁天祥.數碼噴墨印花技術的研究現狀及發(fā)展趨勢[J].印染助劑,2011,28(9):6-7.

[7]Moser L S.ITMA2003 review:textile printing[J].Journal of Textile and Apparel,Technology and Management,2003,3(3):12-14.

[8]中國印染行業(yè)協會.中國數碼噴墨印花產業(yè)現狀與發(fā)展前景[J].紡織服裝周刊,2012(5):30-31.

[9]Tyler D J.Textile digital printing technologies[J].Textile Progress,2005,37(4):22-24.

[10]Mei Shunqi,Xu Qiao,Zhang Zhiming,et al.The control system and data transferring format of digital printing device[C]//ICIMA 2010.Wuhan,China:IEEEComputer Society,2010:549-552.

[11]Dehghani A,Jahanshah F,Borman D,et al.Design and engineering challenges for digital ink-jet printing on textiles[J].International Journal of Clothing Science and Technology,2004,16(1):262-273.

[12]張運生.紡織品噴墨印花工藝分析[J].印染,2009,35(3):22-23.

[13]黃亮,劉福巖.基于RapidIO和存儲映射的高速互聯網絡[J].計算機工程,2008,34(14):116-117.

[14]彭喜元,俞洋.基于變游程編碼的測試數據壓縮算法[J].電子學報,2007,35(2):197-201.

[15]Kyocera Corp.Inkjet printheads[EB/OL].[2012-09-12].http:// global.kyocera.com/prdct/tfc/pdf/07_08.pdf.

ZHANG Li1,ZHOU Fan1,HU Yinfeng2

1.Institute of Advanced Digital Technology and Instrument,Zhejiang University,Hangzhou 310027,China
2.The Navy Deputation in Residence of Hangzhou,Hangzhou 310012,China

In general,the output bandwidth and printing speed of digital inkjet printer are limited as PC isn’t capable of transposing large quantities of image data bit-by-bit in real-time.A new high-speed data processing system based on PowerPC processor and Virtex-5 series FPGA is proposed,and a high-efficiency transposition method is achieved by using FPGA. Three independent DDR2 controllers are instantiated inside FPGA and system output bandwidth is improved by the collaborative work among these controllers;bit-by-bit transposition unit is designed,image data is divided into small blocks and these blocks are efficiently read or written through burst transmission of DDR2 controllers.Performance testing results demonstrate that output bandwidth of FPGA is up to 327 Mb/s and printing speed of digital inkjet printer reaches 249 m2/h,which is much faster than PC processing system under the same conditions.

digital printing;image data transposition;real-time;printing speed;Field-Programmable Gate Array(FPGA)

A

TP334.8+8

10.3778/j.issn.1002-8331.1211-0202

ZHANG Li,ZHOU Fan,HU Yinfeng.Real-time image data transposition method for high-speed digital inkjet printer.Computer Engineering and Applications,2014,50(6):35-39.

國家科技支撐計劃項目(No.2009BAF39B03)。

張立(1988—),男,碩士研究生,主要研究領域為嵌入式儀器系統設計;周凡(1978—),男,博士,副教授,主要研究領域為電子信息技術;胡銀豐(1965—),男,高工,主要研究領域為嵌入式系統。E-mail:lizhang528@gmail.com

2012-11-19

2013-01-30

1002-8331(2014)06-0035-05

CNKI網絡優(yōu)先出版:2013-03-19,http://www.cnki.net/kcms/detail/11.2127.TP.20130319.1424.003.html

猜你喜歡
印花機分塊印花
印花派對
EFI Reggiani:新一代單通道紡織品數碼印花機
分塊矩陣在線性代數中的應用
印花蛇
擺線凸輪在織物印花機網框升降機構中的應用
反三角分塊矩陣Drazin逆新的表示
印花游戲
基于自適應中值濾波的分塊壓縮感知人臉識別
印花上裝往上爬讓清新Flora裝扮整個春夏
Coco薇(2015年11期)2015-11-09 12:38:41
基于多分辨率半邊的分塊LOD模型無縫表達
龙里县| 扎兰屯市| 陆河县| 景泰县| 文化| 阜新| 秀山| 云南省| 阿坝县| 泗阳县| 商丘市| 抚顺市| 潼关县| 淮阳县| 若尔盖县| 家居| 华安县| 莱芜市| 岢岚县| 大洼县| 永年县| 垣曲县| 乌海市| 吴忠市| 江安县| 丰城市| 肇源县| 静乐县| 丹棱县| 莱芜市| 崇礼县| 肇庆市| 大兴区| 松江区| 郁南县| 河间市| 邵阳市| 亚东县| 会泽县| 叙永县| 阳西县|