關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 基于SOPC適用于不同規格LCOS的控制器設計

        基于SOPC適用于不同規格LCOS的控制器設計

        作者: 時間:2011-01-11 來源:網絡 收藏
        引腳信號的時序關系2



        圖3 引腳信號的時序關系2。

        3.2 參數確定

        在設計通用分辨率的LCOS控制器之前,先要確定某些參數。這些參數包括LCOS的分辨率m×n,LCOS的灰度級2u(一般情況下LCOS的灰度為256),LCOS顯示器的刷新頻率a Hz,信號CP的頻率b MHz等。這些參數由上位機通過串口發送到NIOSⅡ處理器中。根據這些參數,由NIOSⅡ計算得到如下關系:每一幀的周期為 103/a(ms);每一行的周期為106a-1 n-1(us);將一行顯示數據寫入寄存器的時間為m/b (μs);每一行的空時間[106a-1n-1]-[m/b]us),這一項應當不小于0。依據計算后的數據和圖2、圖3所示的信號關系,使用定時器和脈寬調制器(PWM)生成LCOS的邏輯控制信號。同樣在NIOSⅡ中還要完成SRAM 內存的設計,內存的實現是依靠FPGA 中的邏輯門陣列來實現的。設計所遵循的原則是SRAM 的容量能至少裝下完整的2幀數據,即2m×n×2u,一幀數據存儲區用于當前顯示,另一幀數據存儲區同時接收下一幀要顯示的數據,這樣的策略雖然耗費了大量的邏輯門數量,卻可以使低速的存儲器和高速的LCOS顯示器相匹配,同時更好地發揮的速度優勢。

        4 實例設計

        在實際應用中,以256×256分辨率、256灰度級的LCOS為例來設計LCOS控制器。

        首先根據已有的LCOS計算各種參數。對于256×256的LCOS,其刷新頻率為200Hz,時鐘信號CLKB的頻率為20MHz。因此,每一幀的周期為5ms,每一行的周期為19.53μs(相當于391個CLKB時鐘周期時間),將一行顯示數據寫入寄存器的時間為12.8μs(相當于256個CLKB時鐘周期時間),每一行的空時間為6.73μs(相當于135個CLKB時鐘周期時間)。如果設計時發現每一行的空時間小于0,則要提高時鐘信號CLKB的頻率。

        接下來是設計SRAM 存儲器,SRAM 容量的設計原則是能裝下完整的2幀數據,即2×256×256×256就能裝下完整的2幀數據,但為了便于CPU還可以完成其他計算的需要,內存的設計要比2幀數據大一些,這里取3幀數據容量,同時設定固定的區域為顯示緩沖區。

        的數據輸入緩沖區同樣設在該顯示緩沖區域,這樣通過端口輸入的待顯示數據直接存儲在顯示緩沖區域。

        然后是將外部的LCOS顯示器的數據輸入端口作為NIOSⅡ處理器的I/O 映射地址,通過DMA處理,使NIOSⅡ內存的顯示緩沖區以DMA的方式通過AHB總線與LCOS顯示器的數據輸入端口直接輸入。使用DMA和總線的好處是既簡便快速,傳輸又很穩定。

        在QuartusⅡ6.0環境下對NIOSⅡ控制器進行功能仿真測試,仿真的波形如圖4所示。該控制器的時序信號符合設計要求。完成功能仿真后,經過綜合生成門級網表,下載到ALTERA公司Cyclone系列EP1C6Q240C8器件中。

        NIOSⅡ控制器的功能仿真波形

        NIOSⅡ控制器的功能仿真波形

        圖4 NIOSⅡ控制器的功能仿真波形。

        5 結  論

        利用SOPC和USB設計了一種LCOS通用控制器。通常LCOS的價格較高且不能通用,利用本文的方法可以最大限度地降低材料成本和設計成本,并且可以根據應用的需要,通過發送不同的參數適應于不同的LCOS顯示器。由于采用軟核處理器,系統的穩定性稍差一些,并且PDIUSBD12的速度僅為12MB/s。為了提高系統的穩定性,可以使用9 處理器;為了發揮USB2.0 的全速480 MB/s,可以使用新一代CH375USB控制器。這樣就可以使LCOS通用控制器擁有更優秀的性能。


        上一頁 1 2 3 下一頁

        關鍵詞: USB ARM

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 临桂县| 铜山县| 道孚县| 河南省| 金坛市| 金湖县| 应用必备| 昆明市| 德安县| 措勤县| 家居| 长乐市| 贵港市| 威远县| 获嘉县| 宁乡县| 桐柏县| 余江县| 盖州市| 凉城县| 报价| 会宁县| 太白县| 大足县| 汨罗市| 台前县| 扎兰屯市| 镇赉县| 玉门市| 东阿县| 尼玛县| 农安县| 灵山县| 朔州市| 青州市| 康乐县| 无极县| 明水县| 建阳市| 鹤山市| 隆安县|