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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于SOPC技術(shù)的內(nèi)存映射型LCD控制器設(shè)計(jì)

          基于SOPC技術(shù)的內(nèi)存映射型LCD控制器設(shè)計(jì)

          作者: 時(shí)間:2010-03-10 來(lái)源:網(wǎng)絡(luò) 收藏

            2.2 寄存器模塊(register_bank)

            該模塊為Avalon總線從端口設(shè)備,可以通過(guò)NiosⅡ Processor設(shè)置和讀取顯存起始地址、顯示大小、顯示顏色位數(shù)及相關(guān)控制參數(shù)。

            寄存器模塊中共定義了4個(gè)寄存器;顯存起始地址寄存器、顯示參數(shù)寄存器、控制寄存器和狀態(tài)寄存器。各寄存器的讀寫控制、定義及功能描述如表2所示。

          各寄存器的讀寫控制

            其中,顯示參數(shù)寄存器(size)中“色數(shù)”標(biāo)志位,值為1表示8位顏色顯示,值為0表示16位顏色顯示。狀態(tài)寄存器(status)大小為兩位,可與控制寄存器中的中斷位(Interrupt)配合使用,為保留位。控制器寄存器的定義如表3所示。

          控制器寄存器的定義

            2.3 數(shù)據(jù)緩存模塊(line_buffer)

            該模塊設(shè)計(jì)采用了雙口RAM,由MegaWizard Plug-In Manager生成,其存儲(chǔ)空間約為一行數(shù)據(jù)所占的空間,用于暫存顯示數(shù)據(jù)。由于DMA不是直接將顯存中的數(shù)據(jù)傳給時(shí)序發(fā)生器,而在中間使用了雙口RAM做數(shù)據(jù)緩存,這樣DMA和時(shí)序發(fā)生器的讀、寫時(shí)序不必嚴(yán)格對(duì)應(yīng),簡(jiǎn)化了結(jié)構(gòu)設(shè)計(jì)。同時(shí),用于16位彩色顯示時(shí),可通過(guò)數(shù)據(jù)緩存模塊將總線32位的數(shù)據(jù)輸入變?yōu)?6位的數(shù)據(jù)輸出給時(shí)序發(fā)生器;而在8位彩色顯示時(shí),可通過(guò)數(shù)據(jù)緩存模塊將32位輸入變?yōu)?位輸出,實(shí)現(xiàn)了數(shù)據(jù)位數(shù)的轉(zhuǎn)化,方便的時(shí)序發(fā)生器內(nèi)部的數(shù)據(jù)操作。

            2.4 DMA模塊(image_dma)

            該模塊為Avalon總線主端口設(shè)備,它負(fù)責(zé)向Avalon總線提供有效的地址、數(shù)據(jù)和寫請(qǐng)求信號(hào),并在時(shí)鐘上升沿發(fā)起總線傳輸,讀取顯存中的數(shù)據(jù);同時(shí),DMA模塊產(chǎn)生寫數(shù)據(jù)緩存的地址和數(shù)據(jù),將顯示數(shù)據(jù)正確地從顯存?zhèn)魉偷綌?shù)據(jù)緩存。DMA模塊為三狀態(tài)的狀態(tài)機(jī),包括空閑狀態(tài)、傳輸狀態(tài)、等待狀態(tài),各狀態(tài)機(jī)邏輯關(guān)系如圖3所示。

          各狀態(tài)機(jī)邏輯關(guān)系



          關(guān)鍵詞: SOPC 內(nèi)存映射 LCD控制器

          評(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); })();