<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于FPGA的遠(yuǎn)程圖像采集系統(tǒng)設(shè)計(jì)

          基于FPGA的遠(yuǎn)程圖像采集系統(tǒng)設(shè)計(jì)

          作者:張寶利 龔龍慶 田衛(wèi) 方超 西安微電子技術(shù)研究所 時(shí)間:2009-11-09 來源:電子產(chǎn)品世界 收藏

            以采集可見光圖像數(shù)據(jù)為例,上電復(fù)位期間 系統(tǒng)處于states0狀態(tài),狀態(tài)機(jī)用外部輸入的7.375MHz時(shí)鐘同步整個(gè)運(yùn)行過程,圖像的幀、行、圖像數(shù)據(jù)等信號(hào)在同步時(shí)鐘的下降沿跳變,上升沿鎖存。一幀圖像數(shù)據(jù)的大小為512×512bit,并將圖像附帶的參數(shù)信息寫入圖像數(shù)據(jù)后一行(即513行),在幀有效期間(states1、states2、 states3狀態(tài)),CLK 信號(hào)作為行計(jì)數(shù)器的時(shí)鐘,每幀圖像在行有效之前有1行無效圖像信號(hào)(states1), 在states2狀態(tài)下,控制采集一幀中的前512行,在states3狀態(tài)下,采集圖象的參數(shù)信息,將圖像數(shù)據(jù)和狀態(tài)參數(shù)組合為統(tǒng)一的數(shù)據(jù)幀,采集完一幀圖像數(shù)據(jù)后等待下一個(gè)幀同步信號(hào)的到來。在行有效期(stML_High)控制采集一行中的512個(gè)像素點(diǎn)數(shù)據(jù),在CLK信號(hào)的上升沿進(jìn)行計(jì)數(shù), 在數(shù)據(jù)有效期間采集完512個(gè)像素點(diǎn),等待下一個(gè)行同步信號(hào)的到來,按同樣方式對(duì)下一行512像素點(diǎn)數(shù)據(jù)進(jìn)行采集,直至采集完一幀中的512行。

          本文引用地址:http://www.ex-cimer.com/article/99680.htm

            系統(tǒng)仿真

            在該系統(tǒng)中,狀態(tài)機(jī)設(shè)計(jì)是難點(diǎn),圖5是運(yùn)用Active-HDL7.1仿真工具的狀態(tài)機(jī)仿真結(jié)果,仿真時(shí),采用7.375MHz時(shí)鐘同步,狀態(tài)機(jī)啟動(dòng)后,計(jì)數(shù)寄存器里的數(shù)據(jù)遞減,進(jìn)而產(chǎn)生各狀態(tài)轉(zhuǎn)移滿足的條件,以此實(shí)現(xiàn)狀態(tài)機(jī)的翻轉(zhuǎn)。

            在Active-HDL7.1中編寫TestBench文件時(shí),通過向計(jì)數(shù)寄存器寫數(shù),來控制各狀態(tài)所占用的時(shí)間,利用 StartMakeFrame信號(hào)高電平啟動(dòng)狀態(tài)機(jī),各狀態(tài)發(fā)生翻轉(zhuǎn)時(shí),狀態(tài)完成標(biāo)志就產(chǎn)生產(chǎn)生高電平跳變。

            根據(jù)圖5的仿真結(jié)果,可以看出工作正常,所有的邏輯關(guān)系也都驗(yàn)證無誤。



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();