《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 單片FPGA圖像預處理系統的設計與實現
單片FPGA圖像預處理系統的設計與實現
王宇舟
摘要: 采用單片FPGA設計與實現圖像處理系統的方法,并對系統硬件進行了分析和設計,對FPGA內電路模塊進行了VHDL建模,在FPGA開發平臺ISE4.1上實現了設計。
Abstract:
Key words :

  摘  要: 采用單片FPGA設計與實現圖像處理系統的方法,并對系統硬件進行了分析和設計,對FPGA內電路模塊進行了VHDL建模,在FPGA開發平臺ISE4.1上實現了設計。

  關鍵詞: FPGA  預處理  VHDL  狀態機

 

  預處理系統是中科院國家天文臺即將立項的國家重大工程項目——空間太陽望遠鏡(Space Solar Telescope,SST)[1][2]科學數據處理單元(Science Data Processing Unit,SDPU)的一個子系統。SDPU的功能是對由觀測儀器采集到的科學數據進行一系列復雜的圖像處理,以滿足天文學者對太陽的分析要求。預處理系統是一個單片的FPGA系統,完成積分、改善圖像質量和偏振測量的分量控制等功能。本文具體介紹了預處理系統在SDPU的位置和功能、硬件設計框圖和接口時序、設計結構及其VHDL建模以及在ISE4.1平臺上實現的設計。

1  預處理系統的位置和功能

1.1 預處理單元在SDPU的位置

  SDPU結構框圖如圖1所示,從圖中可知預處理在其中的位置。SDPU的數據處理過程:CCD把采集到的圖像數據進行A/D轉換后實時地送至預處理單元,預處理單元負責消除圖像的時間相關性(幀間冗余),從而既壓縮數據量又提高信噪比,同時預處理還要進行偏振參數處理;完成了圖像預處理后,把數據存放到海量存儲器中;海量存儲器在接收到離線的壓縮單元的數據申請時,先把壓縮單元處理完成的數據取回,再向壓縮單元送去待處理的數據,壓縮單元對數據的處理主要是除去幀內空間相關性(采用小波算法進行軟件壓縮);經壓縮的數據,每當衛星過頂時由海量存儲器送到下傳單元進行下傳。整個系統由管理機進行協調管理。

 

1.2 預處理系統的功能

  (1)提高信噪比。SDPU各個儀器的信噪比要求各不相同,但都是通過累加多幀連續的極化圖像來改善圖像的質量。各儀器在不同的模式下,積分的幀數亦各不相同,預處理要正確識別和處理。

  (2)壓縮數據量。每日流入預處理的數據量為2506GB,而下傳的容許值僅8GB。因此在SDPU中采用了二級壓縮方法,由DSP進行幀內的空間相關性消除,但圖像壓縮比僅為5:1。預處理單元的壓縮比平均為60:1,主要是消除幀間的時間相關性。

  (3)Stockes參數測量。太陽望遠鏡的主光路中插入了一個偏振分析器,該分析器具有3個可控的元件,通過控制元件狀態可以組合成進行偏振光的Stockes參數各分量的圖像測量:SQ1(左旋分量)、SQ2(右旋分量)、SU1、SU2、SV1、SV2。預處理要正確識別觀測狀態并進行相應的正確處理。

  (4)觀測模式。在圖像的信噪比和物體移動產生的拖影之間選擇了一個折中的解決方案,從而定義了如下3個標準的觀測模式:爆發模式、活動區模式和寧靜態模式。而活動區模式和太陽寧靜態模式是基本爆發模式的多次重復,且有:活動區模式=突發模式×6;寧靜態模式=活動區模式×10。根據不同的觀測模式,預處理有不同的工作行為。

2  預處理系統的硬件設計

  圖1中的預處理實際上是一個預處理陣列,一共有16個通道,因此需要16個預處理模塊,每個通道的預處理設計大致相同。以下給出的是一個通道的設計示例。

2.1 硬件電路設計框圖

  預處理單元的硬件電路如圖2所示。白色的方框都是預處理單元的邏輯設計,整個系統除了收發器和存儲器,其他的重要功能結構都設計在單片FPGA中(虛框是FPGA的內部)。CCD向預處理送去數據和同步信號,同時管理機給預處理送去觀測模式和觀測狀態等信號。預處理則根據這些信號,完成規定數據處理任務。數據、同步信號和模式狀態信號都是由RS422差分驅動傳送到預處理;預處理對送來的數據進行積分,積分的幀數根據觀測模式的不同,分別是4、40、240幀。積分操作相應需要讀寫存儲器地址生成,積分期間必須把上次積分完成的數據送到海量存儲器中,以便下一次積分時再次使用這段存儲空間,為此設計了數據傳送相應的存儲器訪問邏輯和數據傳送邏輯。內存設計成雙存儲器結構以及積分和數據傳送進行切換的使用方法,因此設計了相應的選擇邏輯。由于16個通道的預處理共享一套總線向海量存儲器傳送數據,因此必須設計一個仲裁電路來進行仲裁,它是用一個狀態機來實現的。狀態機把總線順序判給數據有效的預處理單元進行數據傳送,傳送完成后狀態機回收總線權。

2.2 接口及時序

  預處理主要有4個接口:(1)CCD的數據和同步信號輸入。(2)管理計算機的模式狀態信號的輸入。(3)向海量存儲器送去的數據和同步。(4)接收狀態機的仲裁狀態和授權信號。其中:(4)無法給出規整的時序關系,(3)除多了通道號等標志信號,(3)和(1)基本類似。預處理同CCD的接口及時序圖如圖3所示。信號包括:10位數據din、點同步信號ps、行同步信號ls、幀同步信號fs。

 

 

  管理計算機傳送給預處理的直接命令及時序圖如圖4所示。傳送到預處理的信號有:觀測模式信號Mode、偏振測量的分量信號Segment、系統全局復位信號Reset。

 

  預處理同海量存儲器的接口信號:16位數據、時鐘CLK、行同步ls、幀同步fs、數據有效、通左右旋分量號和道號等。除了后三種信號在1幀圖像內是一個固定電平外,其他信號的時序關系和CCD到預處理的時序關系相同。

3 FPGA的開發

  FPGA的開發過程采用的是top-down的設計方法。首先分模塊對系統進行VHDL建模[3][4][5],建模完成后是編程、驗證和實現。VHDL是標準化的硬件描述語言,利用它進行硬件建模,其系統描述的抽象級別比較高,而且得到幾乎所有商用成熟(COTS)開發平臺和仿真工具的支持,既縮短設計周期,又可減小投資風險。

3.1 VHDL建模

  下面分別介紹各個模塊,并給出各模塊的主要輸入、輸出和大致的邏輯結構和功能。

  (1)積分器:如圖5所示,積分器有2個數據輸入(din、buffdin)、1個數據輸出(addout)和2個控制輸入端(init、adden)。din是來自CCD的數據輸入端,buffdin是內存輸入加法器的數據,addout是加法器的輸出。控制端init是實現存儲單元高6位的清零任務。當init有效時分配器會把CCD送來的數據作為低位數據,高位以零賦值,不經加法器直接送到addout端完成高位清零任務;adden在2個輸入的數據均穩定下來以后使能加法器進行運算。

 

 

  (2)積分地址生成:如圖6所示,積分地址生成的輸入有:點同步ps、行同步ls、幀同步fs和分量信號segment,通過點計數器、行計數器和分量計數器并行生成的積分地址,通過譯碼等邏輯最后產生適合存儲器芯片的地址、片選和讀寫有效信號。

 

 

  (3)送數地址生成:如圖7所示,其輸入是送數時鐘dsclk,利用點計數器、行計數器和幀計數器級聯形式產生12MB(1個bufffer,6個分量共6幀圖像)的數據地址空間,計數器的溢出分別送到命令生成單元和FIFO接口單元。

 

 

  (4)數據和地址選擇邏輯:如圖8所示,控制信號buffsel,用于判決積分和送數操作的buffer號(即A或B);控制信號dir,用于判決是向全加器送去1個輸入數據還是接收全加器的輸出數據(數據方向控制)。

 

 

  (5)狀態機:狀態圖如圖9所示。狀態機用于裁決16個通道中的哪一個通道有權使用海量存儲器的共享數據總線向海量存儲器傳送數據,以時鐘同步來進行狀態的轉換,且狀態是順次轉換的。當輪詢到某個通道時,若數據沒有準備好,則繼續向后輪詢;若該通道的數據就緒,則狀態機把總線權授予該通道,該通道即可以進行數據傳送操作。數據傳送完成以后,狀態機回收總線并繼續順次向后輪詢;狀態采用one-hot編碼方式,當rdy=1時,數據就緒,可以傳送,dsen是可以進行數據傳送的使能信號。若要每單元都能正確地完成積分任務,則必須在30秒內把16個通道都輪詢一周。

 

  (6)命令生成和同步FIFO接口:命令生成模塊集中生成各電路單元所需要的各種命令。同步FIFO接口產生同海量存儲器接口的時鐘、同步信號、數據有效標志、buffer號和通道號標識等信號(由于二者的邏輯散亂無法用圖式給出)。

3.2 實現和驗證

  根據文中所建立的模型,本系統的目標芯片選用Xilinx公司10萬門的SpartanII器件,輸入、調試、綜合、仿真、最終實現和器件編程等設計的整個過程都是在Xilinx公司的ISE4.1平臺上進行的。具體步驟如下:

  (1)用VHDL寫出各模塊的RTL描述,對各模塊單獨進行行為和時序仿真。

  (2)當各模塊的仿真都通過以后,分別產生schematic symbol。

  (3)在schematic編輯器里把各模塊連接起來,完成系統的連接。

  (4)對系統進行行為和時序驗證(包括約束設置和一些設置調整)。

  (5)最后是實現和下載,進行硬件與系統級聯調。

4  結  論

  預處理系統的成功設計大大減輕了衛星上科學數據對存儲容量的要求,避免了前端數據處理的瓶頸問題,保證了數據的質量。單片FPGA的設計,使系統具有體積小、重量輕、功耗小等特點。而這些優點一直是航空航天電子系統所追求的目標。本文介紹的設計技術對其他應用系統的設計具有借鑒性。

 

參考文獻

1  中科院國家天文臺SST研究組,德國馬普高層大氣研究所.SST A相報告(第二版).北京:國家天文臺,1997

2  中科院國家天文臺SST研究組,德國航空宇航研究所.SST評估研究報告.北京:國家天文臺,1997

3  北京理工大學ASIC研究所.VHDL語言100例詳解.北京:清華大學出版社,1999

4  Sjoholm S,LindhPL.VHDL for designers.Europe:prentice Hall,1997

5  李廣軍,孟憲元.可編程ASIC設計及應用.成都:電子科技大學出版社,2000

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 韩国成人理伦片免费 | 丁香六月狠狠激情综合基地 | 欧美高大肥妇hdxxxx | 有色视频在线观看 | 国产高清精品入口麻豆 | 欧美在线中文字幕 | 欧美亚洲另类色国产综合 | 香蕉视频首页 | 美女黄色免费看 | 国产在线a视频 | 9久热这里只有精品视频在线观看 | ww亚洲ww在线观看国产 | 亚州激情 | 九九精品久久 | 狠狠色狠狠色综合人人 | 成年看的视频在线观看 | 国产日本久久久久久久久婷婷 | 91在线精品亚洲一区二区 | 国产一区日韩二区欧美三区 | 中文字幕一区二区三 | 日本三级视频 | 欧美专区日韩专区 | 最近最新视频中文字幕4 | 欧美日韩视频在线第一区二区三区 | 亚洲国产精品高清在线一区 | 免费在线色视频 | 黄色在线观看视频 | 午夜久久精品 | 欧美午夜性春猛交 | 欧美亚洲国产激情一区二区 | 亚洲一二三区在线观看 | 一级做a爰全过程免费视频 一级做a爰片鸭王 | 女女同性一区二区三区四区 | 亚洲视频1区 | 国产成人午夜精品5599 | 国产成人免费片在线视频观看 | 久久久久国产精品免费免费 | 色哟哟www网站入口成人学校 | 国产欧美一区二区三区在线 | 欧美日韩一区二区三 | a一级 |