freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

vga圖像顯示控制器設(shè)計報告(存儲版)

2024-10-06 17:34上一頁面

下一頁面
  

【正文】 式相對簡單, CASE語句綜合成為了選擇編碼器。中間一個六位 colorstmp 信號作為緩存,與消隱信號 hen 和 ven相與后輸出給 VGA 接口。 圖 QuartusII 編譯綜合 后各實體占用資源詳表 對各子模塊分析如下。一個顯見的結(jié)論是描述代碼的長度和綜合后的電路形式與資源占用無必然聯(lián)系。如果換用擁有更多邏輯資源的實驗板,可以支持編寫更為復(fù)雜的圖形,如圓形或者是菱形等,所要做的只是給出坐標方程即可。比較好的調(diào)試方法是下載到板上通過 CRT顯示器直接觀察,然后處理相應(yīng)的問題與錯誤。 圖 狀態(tài) S1 仿真波形圖(縱向彩色條幅依次掃過) 圖 S2(純色模式)的仿真波形圖,圖中 SW1和 SW0位置放置相反,故“ 01”實際代表的是 S2 狀態(tài),仿真時將 SW1 設(shè)置為強制高電平, SW0 為強制低電平, SW7~ SW2 作為撥碼開關(guān)的輸入,將其設(shè)置為隨機值,以產(chǎn)生可能的 64 種顏色組合,其跳變周期是 1 秒。 圖 用戶模式 UserMode 狀態(tài)機的仿真 以下再進一步對每個狀態(tài)進行仿真驗證。當(dāng)引入 S0、 S S S3三個獨立的狀態(tài)仿真時,編譯顯示警告信息:“ Warning: Can39。 對關(guān)鍵的模塊進行仿真以后,進一步對系統(tǒng)整體進行仿真驗證。對關(guān)鍵模塊的仿真結(jié)果和分析如下。 hmov = hmovus2。 end if。 else case button is when 01000 = hmovus2 = hmovus2 1。使用 case 語句根據(jù)按鍵選擇運動方向。 的描述。 else if(hmovus1 610) then hmovus1 = 1001011000。 end process。 下面給出 US1子模式的描述。 end process。 else hmovus0 =(others = 39。報告 第 26頁 end process。三個子模塊分別產(chǎn)生三種控制信息,反映在二維坐標變量( hmov, vmov)的變化上,以實現(xiàn)動態(tài)圖像的顯示。 process(scountn) state count button pressed,state changes begin if (rising_edge(scountn)) then case userstate is when us0 = userstate = us1。報告 第 25頁 begin if (clk100hz39。 UserMode 模塊的描述 該模塊采用了有限狀態(tài)機的設(shè)計方法。 50MHz分頻到 100Hz和 1Hz思路一致,設(shè)置計數(shù)器,當(dāng)計數(shù)到 max1=24999999輸出波形即可分頻 1Hz。 end if。 end process。多個模塊用到該計數(shù)值。 下面是調(diào)用 UserMode 模塊得到用戶自定義圖形的描述。 end if。 process(clk25m) state s0 process: horizontal colors begin if(rising_edge(clk25m)) then if hpos 640 and vpos 60 then colors0 = 100100。 end if。 process(clk25m) no color when not in 640*480 begin if(rising_edge(clk25m)) then if((ht 640) or (vt 480)) then henable = 39。 else vsync = 39。 end if。如圖 。 數(shù)字電路綜合 實驗 end if。 type states is (s0,s1,s2,s3)。 圖 是 QuartusII 生成的總體電路圖 ,定義的第二層 5 個模塊均對應(yīng)生成了器件,由于 UserMode 模塊是在 VGAColor 模塊里進行的例化,故系統(tǒng)綜合時將其歸并在了 VGAColor 模塊內(nèi)。 (r0,r1,g0,g1,b0,b1) = colors。 hpos,vpos: in std_logic_vector(9 downto 0)。 ponent vgacolor Generate colors for each mode 數(shù)字電路綜合 實驗 hen,ven: in std_logic。 package vgapackage is ponent clock System clock generator port (clk50m: in std_logic。描述如下。 硬件描述時首先對頂層模塊 VGAController 進行描述。 子模式 US2 是受控運動。 子模式切換時采用了控制按鍵 bt4,需要進行按鍵防抖動設(shè)計。 子模式也采用狀態(tài)機的方式進行設(shè)計。圖 給出了橫彩模式的實現(xiàn)流程圖。報告 第 10頁 如 節(jié)中所述,系統(tǒng)模式設(shè)定為純色模式、橫彩模式、縱彩模式、用戶模式,分別定義為 S0、 S S S3 四種狀態(tài)。 子系統(tǒng)中包括二層和三層設(shè)計中的六個模塊,各模塊間存在信號的傳遞,其中時鐘信號由 Clock 產(chǎn)生,驅(qū)動其他各個模塊,像素位置信號由 PixelCNT 產(chǎn)生,輸出到VGAColor、 VGASig 以及 UserMode 模塊,作為產(chǎn)生顏色圖像信號和掃描同步消隱信號的依據(jù), VGAMode 模塊決定當(dāng)前的模式狀態(tài),輸出當(dāng)前需要顯示的顏色圖像信號。 數(shù)字電路綜合 實驗 輸入:行和列像素位置信號,用戶顏色控制信號 SW2~ SW7。 輸入: 25MHz時鐘信號。根據(jù)當(dāng)前 狀態(tài)選擇 VGAColor 模塊送入的多個顏色圖像信號,發(fā)送給VGA接口 RGB端口。 圖 VGA顯示控制器層次模塊劃分框圖 然后從邏輯上劃分出各層次的具體模塊,分述如下??刂破鞲鶕?jù)用戶的輸入信息,決定工作模式,這里定義為橫彩模式、縱彩模式、純色模式、用戶模式。控制器設(shè)計采用有限狀態(tài)機的方法,詳述于 。報告 第 2頁 第二部分 系統(tǒng)設(shè)計 設(shè)計采用自頂向下( Topdown)的方法。報告中給出了完整的設(shè)計思路和過程,并將系統(tǒng)分模塊進行了詳細的設(shè)計,給出了 VHDL語言描述。實驗的重心放在了顯示控制器的系統(tǒng)層面的設(shè)計,采用了自頂向下的思路進行設(shè)計,系統(tǒng)的核心為有限狀態(tài)機。 數(shù)字電路綜合 實驗 控制器部分是系統(tǒng)的核心部分,負責(zé)協(xié)調(diào)和控制各子模塊的工作。報告 第 4頁 圖 VGA顯示控制器系統(tǒng)結(jié)構(gòu)框圖 VGA 顯示控制器的輸入是用戶控制信息,如顯示模式的切換命令、圖形移動的控制命令等。每個層次可用一個或多個具體模塊加以實現(xiàn)。根據(jù)撥碼開關(guān) SW1 和 SW0 的四種組合選擇各模式,完成狀態(tài)的轉(zhuǎn)移。為 VGAColor 模塊產(chǎn)生顏色和圖像作定位參考。為實現(xiàn) S3 用戶模式下復(fù)雜的用戶圖像輸出,定義了子模塊 UserMode,專門負責(zé)用戶自定義顏色和圖像的產(chǎn)生。 輸出:用戶模式下的顏色圖像信號?,F(xiàn)文字加以敘述如下。 數(shù)字電路綜合 實驗 其中 S0是橫彩模式, S1是縱彩模式,每種模式均有 8種彩色條幅,其實現(xiàn)思路完全一致,差別僅僅在于 S0 根據(jù)列像素信息分割,而 S1 根據(jù)行像素信息分割。實驗中設(shè)計了專門的子模塊 UserMode 加以實現(xiàn)。因而動態(tài)圖形的設(shè)計,關(guān)鍵在于在 US0、 US US2 狀態(tài)下以不同的方式設(shè)法控制( hmov, vmov)的運動方向和速度。報告 第 13頁 用簡化的方案,設(shè)置兩個標志位 borderlr 和 borderud 分別表示左右邊界和上下邊界,可認為設(shè)定邊界為 ’1’時向 hmov 和 vmov 減小方向運動,反之則增大方向運動,當(dāng)?shù)竭_四個邊界中任意邊界時(容易根據(jù) hmov 和 vmov 值判斷),對應(yīng)的 borderlr 或者borderud區(qū)反,這樣就使得色塊反彈了??梢允褂?VHDL語言描述硬件電路了。 總體電路的描述 根據(jù)系統(tǒng)設(shè)計要求,首先定義系統(tǒng)頂層實體,描述輸入輸出端口。 依據(jù)描述思路,定義各模塊接口如下。 sw: in std_logic_vector(1 downto 0)。 end ponent。 ponent usermode Sub mode for user port (clk25m,clk100hz,clk1hz: in std_logic。 bt = (bt4,bt3,bt2,bt1,bt0)。 end arch。 VGAMode 模塊的描述 定義狀態(tài)機的描述如下。 end case。 end case。其中,行同步時序列表如下: 表 21 VGA行同步時序表 根據(jù)時序表,容易確定水平掃描的四個狀態(tài)區(qū),即:行顯示區(qū)( h_video)、行前端消隱區(qū)( h_front)、行同步區(qū)( h_sync)、行后端消隱區(qū)( h_back)。139。039。消隱去描述如下。139。 下面給出橫向條幅的的描述,縱向條幅描述類似。 elsif hpos 640 and vpos 480 then colors0 = 011000。 end process。 行列像素計數(shù)值是顏色和圖形產(chǎn)生和控制的基礎(chǔ)。 end if。 end if。 end process。 end process。 process(clk100hz) Antivibration process 數(shù)字電路綜合 實驗 scountn is signal for changing state scountn = clk100hz and scountmp1 and (not scountmp2)。該色塊為三個子模式 US0、 US US2 所共享。 數(shù)字電路綜合 實驗039。 end if。 end process。 end if。 end if。 這里在硬件實現(xiàn)時遇到了一些阻礙,初始的代碼中沒有在邊界“突變”的描述,即 hmovus1 = 0000101000。 下面是 US2 子模式的描述。 vmovus2 = 0011110000。 end if。 when us2 = vmov = vmovus2。 在 QuartusII 菜單的 Assignments 下的 Settings 中依次指定各個子模塊為 Toplevel Entity,編譯后建立仿真文件,可完成各子模塊的仿真。報告 第 32頁 圖 PixelCNT 模塊仿真圖(行計數(shù) ht 值) 從圖 和圖 不難看出像素計數(shù)值的變化和清零正確,符合 VGA 標準的定義參數(shù)要求。 但進一步細致的仿真讓我發(fā)現(xiàn)了問題的根源。仿真結(jié)果說明狀態(tài)機工作正常。這里 SW 顯示“ 10”是因為仿真中 SW1和 SW0的位置交換了,實際代表的模式是 S1。只要位置信息模塊 PixelCNT和行列同步與消隱信號正常(實際上前述仿真已能夠說明其正確性),即可很容易畫出動態(tài)的圖形。 另外,如果換用其他的實驗板,例如帶有 ROM 和 RAM 的實驗板可以在不修改頂層描述的情況下,增加讀取 RAM 存儲的圖像的模塊,即可實現(xiàn)如漢字顯示和照片顯示的功能。隨著設(shè)計的深入,加上反復(fù)求精的過程磨練,逐步對硬件描述綜合出的實際電路形式有了更多的理解,對延時和資源占用有了初步概念。其余子模塊占用資源數(shù)都是很少的。狀態(tài)的選擇在邏輯器件實現(xiàn)時是 6個選擇器,其 輸入為 S0、 S S2 以及 S3 中的 US0、 US US2 共計 6 種狀態(tài)的六位顏色信號。橫彩和縱彩產(chǎn)生機理一致,由于采用了多分支的 IFELSIF 語句描述,產(chǎn)生的邏輯器件時用比較器判斷位置,利用多路選擇器 MUX選擇寄存器中的固定顏色值輸出。 在 VHDL 語言電 路優(yōu)化設(shè)計當(dāng)中,優(yōu)化主要包括面積優(yōu)化和速度優(yōu)化。 UserMode 模塊負責(zé)產(chǎn)生用戶的定義的動態(tài)圖形。其主要實現(xiàn)邏輯器件是比較器。參看附錄圖 RTL圖。 圖 QuartusII編譯工程后的綜合報告。而真正的重點在于把系統(tǒng)層面的設(shè)計做好,把系統(tǒng)狀態(tài)機設(shè)計完整,系統(tǒng)架構(gòu)清晰,層次明確,穩(wěn)定性好,可擴展和可移植性好,這樣的
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1