




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、流水燈1. 流水燈: 頂層模塊(例化各個(gè)模塊) 分頻模塊(得到固定頻率10HZ)顯示模塊 (隨固定頻率來操作led)2. 代碼設(shè)計(jì):water_led.v module water_led(clk,rst_n,led_data) Clk_design(clk,rst_n,led_en) Led_display(clk,rst_n,led_en)任意分頻ps/2標(biāo)準(zhǔn)接口1) DATA 數(shù)據(jù)信號(hào)2) N.C 不連接3) GND 數(shù)字地4) VCC +5v電源5) CLK 時(shí)鐘信號(hào)6) N.C 不連接2. 幀格式Clk下降沿鎖存 數(shù)據(jù)Data 1bit起始位 8bit數(shù)據(jù)位 1bit校驗(yàn)位 1bit
2、停止位 1bit校驗(yàn)位3. 鍵盤編碼返回值1) 按下或按住 發(fā)送通碼2) 釋放 發(fā)送斷碼3) 掃描碼集 現(xiàn)代的鍵盤默認(rèn)使用第二套掃描碼4. ps/2接口5. 頂成模塊接口定義乘法器1. 組合邏輯設(shè)計(jì) : 電路事先將所有的乘積項(xiàng)計(jì)算出來,再加法運(yùn)算2. 時(shí)序邏輯設(shè)計(jì) : 電路將部分已經(jīng)得到的結(jié)果右移,然后與乘積項(xiàng)相加并保存和值,反復(fù)迭代上述步驟知道計(jì)算出乘積。3. 接口定義串口通信 & 模塊化設(shè)計(jì) 1.接口定義注:Rs232_rx input 2. 模塊化設(shè)計(jì)1) .頂層文件 + 底層文件 頂層文件只作例化 底層文件實(shí)現(xiàn)各個(gè)功能模塊 2) 例化 模塊名 例化名 接口例化 (.clk(cl
3、k), .rst(rst)); 3) 端口沒有與外部接口連接的 即從一個(gè)模塊傳到另一個(gè)模塊 的端口 在頂層模塊中 為Wire型 3. 波特率控制收/發(fā) 發(fā)送模塊 接收模塊 基于Altera Quartus II的模塊化設(shè)計(jì)應(yīng)用 和ISE不一樣,Quartus II代碼的模塊化視圖并不是你把子模塊例化到頂層模塊以后就能馬上在工程代碼窗口看到一個(gè)清晰的層次圖。而是必須在你編譯后才能夠看到層次化的視圖。 我在這里列舉一個(gè)串口通信(實(shí)驗(yàn)10)的實(shí)例: 編寫完該HDL的代碼,還沒有編譯,此時(shí)在Project Navigator窗口中只有頂層模塊my_uart_top。 頂層模塊如下(詳細(xì)的注釋代碼請(qǐng)參考
4、相關(guān)實(shí)驗(yàn)):/module my_uart_top( clk,rst_n, rs232_rx,rs232_tx );input clk;input rst_n;input rs232_rx;output rs232_tx; wire bps_start1,bps_start2;wire clk_bps1,clk_bps2;wire7:0 rx_data;wire rx_int; /speed_select speed_rx( .clk(clk), .rst_n(rst_n), .bps_start(bps_start1), .clk_bps(clk_bps1) ); my_uart_rx my
5、_uart_rx( .clk(clk), .rst_n(rst_n), .rs232_rx(rs232_rx), .rx_data(rx_data), .rx_int(rx_int), .clk_bps(clk_bps1), .bps_start(bps_start1) ); / speed_select speed_tx( .clk(clk), .rst_n(rst_n), .bps_start(bps_start2), .clk_bps(clk_bps2) ); my_uart_tx my_uart_tx( .clk(clk), .rst_n(rst_n), .rx_data(rx_dat
6、a), .rx_int(rx_int), .rs232_tx(rs232_tx), .clk_bps(clk_bps2), .bps_start(bps_start2) );Endmodule 我們一般不在頂層模塊做任何邏輯設(shè)計(jì),哪怕只是一個(gè)邏輯與操作。比較好的設(shè)計(jì)會(huì)明確的區(qū)分每一個(gè)模塊單元。在上面這個(gè)設(shè)計(jì)中,是要實(shí)現(xiàn)一個(gè)串口自收發(fā)通信的功能。具體說就是不斷的檢測串口接收信號(hào)rs232_rx是否有數(shù)據(jù),如果接收到起始位就把數(shù)據(jù)保存,然后再轉(zhuǎn)手把接收到的數(shù)據(jù)通過串口發(fā)送信號(hào)rs232_tx發(fā)回給對(duì)方。即使是這樣一個(gè)還不算太復(fù)雜的功能,如果都堆到一個(gè)模塊里,代碼不僅又臭又長,編寫代碼者如果不理好思
7、路很容易自己就寫暈了,以后維護(hù)起來或者要移植就更難了。所以,模塊化的設(shè)計(jì)勢在必行。上面的代碼把這個(gè)設(shè)計(jì)分成了四個(gè)模塊:1、My_uart_tx:串口數(shù)據(jù)接收模塊;2、Speed_tx:串口數(shù)據(jù)接收時(shí)鐘校準(zhǔn)模塊;3、My_uart_rx:串口數(shù)據(jù)發(fā)送模塊;4、Speed_rx:串口數(shù)據(jù)發(fā)送時(shí)鐘校準(zhǔn)模塊。 如此劃分,層次清晰而且思路明確,寫起代碼來更是游刃有余。先來說模塊例化的一些細(xì)節(jié)吧。就拿speed_select模塊例化來看。第一行的speed_select speed_rx,其中speed_select是要例化的模塊名,是固定的;而speed_rx則是你任意給這個(gè)模塊取的名字,它是用于區(qū)分例
8、化多個(gè)相同的模塊。就如speed_tx和speed_rx兩個(gè)模塊,因?yàn)樗鼈兊倪壿嬙O(shè)計(jì)都是一樣的,所以寫一個(gè)模塊,然后在例化的時(shí)候給個(gè)不同的名稱就可以了。這有點(diǎn)類似軟件設(shè)計(jì)中的子程序調(diào)用,但又有不同,由于硬件設(shè)計(jì)的并行性,這里的邏輯復(fù)制實(shí)際上在最后的硬件上是實(shí)現(xiàn)了兩個(gè)一模一樣的speed_select設(shè)計(jì)原型,可以說它們是完全獨(dú)立的。即便是對(duì)于硬件資源的消耗沒有減少,采用模塊化設(shè)計(jì)以后也能從很大程度上減少設(shè)計(jì)者的重復(fù)勞動(dòng)。 信號(hào)的例化是這樣的.clk(clk),點(diǎn)號(hào)后的clk代表例化模塊內(nèi)部的信號(hào)(是固定的,必須和內(nèi)部的信號(hào)名一致),而括號(hào)內(nèi)的clk則是例化模塊的外部連接,可以例化模塊內(nèi)的信號(hào)名
9、不同。 在編譯后,可以從Project Navigator窗口中看到例化的子模塊: 另外,從Quartus II提供的RTL視圖里,我們能夠更深刻的感受到模塊化帶來的層次感: IIC協(xié)議1,了解 用verilog 實(shí)現(xiàn) iic時(shí)序2. iic : scl sda 3. Start : scl高電平時(shí) 拉低sda 4. 鎖存數(shù)據(jù) : scl 上升沿 5. ACK :應(yīng)答 從機(jī)拉低sda6. STOP : scl高電平時(shí) 拉高 sda 7. Iic通信接口8. 雙向IO inout sda; sda = sda_link ? Sda_r : 1bz; sda_link 輸入輸出控制位 0輸入 高阻
10、 讀時(shí) 賦給某個(gè)寄存器 1輸出 sda_r輸出值內(nèi)部振蕩時(shí)鐘(MAXII)1. osc_ena內(nèi)部晶振 使能信號(hào) 高電平有效 output :osc 晶振13.33MHz 22.22MHz OSC 是經(jīng)過4分頻的時(shí)鐘 頻率:3.3MHz 5.5MHz2. MAXII內(nèi)嵌存儲(chǔ)器 UFM(內(nèi)部晶振 flash) 使用晶振時(shí) 不需要例化UFM 晶振可單獨(dú)使用3. .新建工程 ufm_osc 頂層文件 ufm_osc 配置內(nèi)部振蕩器的宏功能在頂層文件中 例化 模塊代碼示例 仿真 Modelsim1. RTL smulatian 功能仿真 :代碼唄 綜合過 沒有時(shí)序信息 庫:需要文件: 測試腳本.v +
11、 器件文件.v /硬件信息+ modelsim_test.vo /綜合后的網(wǎng)表2. GATE_LEVEL simulatian 時(shí)序仿真 仿真時(shí)序信息 延時(shí)的情況庫: 需要文件 : 額外+.sdo/器件延時(shí)信息 仿真流程(SE版本): 1. 功能仿真 :新建library 添加文件 (3) 編譯 雙擊xxx_test 右鍵添加到波形窗口(add to wave)2. 時(shí)序仿真 :新建工程(new project) 添加文件(add file to project)(modelsim 3+1) 編譯 (compile all) 在庫中雙擊xxx_test 右鍵添加到波形窗口(add to wave) 仿真 注 : 如果不用時(shí)序信息 打開.vo文件 注釋掉 調(diào)用.sdo 的語句 從新編譯 開發(fā)流程 DSS與嵌入式邏輯分析儀的調(diào)用一DSS1. DSS : 直接數(shù)字頻率合成器,DDFS。·DSS是從相位的概念直接合成所需波形的一種頻率合成技術(shù)。·
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 塔城職業(yè)技術(shù)學(xué)院《數(shù)字化建筑設(shè)計(jì)概論》2023-2024學(xué)年第二學(xué)期期末試卷
- 吉林體育學(xué)院《鋼琴即興伴奏(3)》2023-2024學(xué)年第一學(xué)期期末試卷
- 山東省青島市嶗山區(qū)青島第二中學(xué)2025年高考模擬語文試題試卷含解析
- 浙江警察學(xué)院《預(yù)防醫(yī)學(xué)新》2023-2024學(xué)年第二學(xué)期期末試卷
- 承德醫(yī)學(xué)院《文學(xué)創(chuàng)作與實(shí)踐》2023-2024學(xué)年第二學(xué)期期末試卷
- 安徽省六安二中、霍邱一中、金寨一中2025年招生全國統(tǒng)一考試復(fù)習(xí)檢測試題(一)生物試題含解析
- 新疆農(nóng)業(yè)大學(xué)《航天測控技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 山西經(jīng)貿(mào)職業(yè)學(xué)院《大學(xué)體育三》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣州華立科技職業(yè)學(xué)院《文化項(xiàng)目管理》2023-2024學(xué)年第一學(xué)期期末試卷
- 蘇州市職業(yè)大學(xué)《公共空間室內(nèi)設(shè)計(jì)》2023-2024學(xué)年第二學(xué)期期末試卷
- 電力建設(shè)工程施工安全管理導(dǎo)則
- JTG-QB-003-2003公路橋涵標(biāo)準(zhǔn)圖鋼筋混凝土蓋板涵
- 少兒繪畫之《春江水暖鴨先知》
- 2022中醫(yī)醫(yī)院章程(完整版)
- 2020 ACLS-PC-SA課前自我測試試題及答案
- QGDW 1168-2013 輸變電設(shè)備狀態(tài)檢修試驗(yàn)規(guī)程(高清版)
- 10000中國普通人名大全
- 第二代身份證號(hào)碼驗(yàn)證器
- GB_T 229-2020 金屬材料夏比擺錘沖擊試驗(yàn)方法
- 施工組織設(shè)計(jì)雙代號(hào)時(shí)標(biāo)網(wǎng)絡(luò)圖
- 財(cái)政部金融企業(yè)不良資產(chǎn)批量轉(zhuǎn)讓管理辦法(財(cái)金[2012]6號(hào))
評(píng)論
0/150
提交評(píng)論