《嵌入式硬件技術(shù)實驗指導書》由會員分享,可在線閱讀,更多相關(guān)《嵌入式硬件技術(shù)實驗指導書(12頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、
《 嵌入式硬件技術(shù) 》
???????
實 ?驗 ?指 ?導 ?書
??????
?
??編 寫
??????????適用專業(yè): 通信工程
??????????????????????????
????????????????????????????????????????????????
???????????閩江學院 計算機科學 系
???????2010年 ?9月
前 ??言
???????嵌入式硬件技術(shù)實驗由驗證性實驗一、Quartus II軟件的使用,綜合性實驗二、組合邏輯與時序電路綜合
2、設(shè)計,驗證性實驗三、Protel軟件的使用構(gòu)成,通過實驗應(yīng)達到下列要求:
1.熟習Quartus II軟件的使用。掌握該軟件的用法,包括Verilog HDL語言的編程、仿真、下載等的方法,為后續(xù)的綜合實驗打下基礎(chǔ)。
2.加深對數(shù)字系統(tǒng)中電源、組合邏輯、時序電路各部分原理的理解;熟悉各個功能部件的設(shè)計、分析與仿真;能根據(jù)要求設(shè)計一個數(shù)字系統(tǒng),并在Quartus II軟件上用Verilog HDL語言進行編程設(shè)計、仿真實現(xiàn)、最后下載到CPLD或FPGA開發(fā)板上運行。
3.熟習Protel軟件的使用。掌握該軟件的用法,包括模擬和數(shù)字系統(tǒng)硬件原理圖的繪制、仿真分析、PCB板的設(shè)計與制作等。
3、4.由于這門課程的實驗需要大量的時間練習,但受實驗課時的限制需要學生課外補足(12到20學時),因此要求學生在實驗前先預習實驗內(nèi)容并根據(jù)實驗大綱的說明先期做好實驗的準備(如系統(tǒng)設(shè)計電路草圖、Verilog HDL語言程序等)。
???????本指導書對綜合性實驗只給出設(shè)計的要求和指標不給實驗源代碼,由學生自己設(shè)計、編譯、調(diào)試并運行;通過實驗結(jié)果理解數(shù)字系統(tǒng)硬件的組成、原理與實現(xiàn)方法;在實驗報告中回答思考題。
????
目 ???錄
實驗一 Quartus II軟件的使用 3
實驗二 組合邏輯與時序電路綜合設(shè)計 7
實驗三 P
4、rotel軟件的使用 9
實驗一 Quartus II軟件的使用
實驗學時:2
實驗類型:驗證
實驗要求:必修
一、實驗?zāi)康?
1、掌握Quartus II軟件的用法。
2、熟悉Verilog HDL語言的語法。
3、練習Verilog HDL語言的編程。
4、學會仿真、管腳約束、下載的方法。
二、實驗內(nèi)容
1、熟悉并使用Quartus II軟件
2、閱讀并編譯實驗例程
用Quartus II編譯實驗例程。
3、下載或仿真運行程序并對照實驗源
5、程序閱讀理解實驗結(jié)果的含義。
三、實驗原理、方法和手段
根據(jù)實驗例程,編輯并仿真運行數(shù)字系統(tǒng)中的組合邏輯:加法器、比較器、三態(tài)驅(qū)動器;時序電路:4位計數(shù)器、4 選1 數(shù)據(jù)選擇器、簡單算術(shù)邏輯單元。了解通過硬件描述語言的編程實現(xiàn)單元硬件的功能。通過仿真過程中顯示的狀態(tài)和有關(guān)輸出情況學習組合邏輯與時序電路的原理和實現(xiàn)方法。
四、實驗組織運行要求
根據(jù)本實驗的特點、要求和具體條件,采用以學生自主訓練為主的開放模式組織教學。
重點:用Verilog HDL語言實現(xiàn)組合邏輯與時序電路。
難點:用Verilog HDL語言實現(xiàn)時序電路。
五、實驗條件
具備Windows操作系統(tǒng)、帶有Qu
6、artus II軟件的PC機。
六、實驗步驟
1、閱讀例程源代碼
2、編譯、運行
3、記錄并理解運行顯示的信息
4、回答思考題并撰寫實驗報告
七、思考題
1、 簡單介紹一下串行語句和并行語句的概念。
2、 Verilog HDL語言有哪幾種主要的數(shù)據(jù)類型?可否說明它的簡單用法?。
3、 數(shù)字電路設(shè)計有那幾種層次,可否分別舉個例子?
4、 當前兩種硬件描述語言是什么?
5、 假設(shè)一D觸發(fā)器組的器件 Reg8,輸入信號 Din,輸出信號Qout,位寬8位,時鐘信號Clk,異步復位信號Rst,用于實現(xiàn)對8位數(shù)據(jù)總線的寄存,請描述出module 語句,并畫出電路的示意圖。
7、
6、 在實驗報告中完成問題 1、2、3、4、5的說明。
八、實驗報告
1、實驗預習
???????在實驗前每位同學都需要對本次實驗進行認真的預習,并寫好預習報告,在預習報告中要寫出實驗?zāi)康?、要求,需要用到的儀器設(shè)備、物品資料以及簡要的實驗步驟,形成一個操作提綱。對實驗中的安全注意事項及可能出現(xiàn)的現(xiàn)象等做到心中有數(shù),但這些不要求寫在預習報告中。
????????設(shè)計性實驗要求進入實驗室前寫出實驗方案,并經(jīng)指導教師審閱后實施。
2、實驗記錄
???????學生開始實驗時,應(yīng)該將記錄本放在近旁,將實驗中所做的每一步操作、觀察到的現(xiàn)象和所測得的數(shù)據(jù)及相關(guān)條件如實地記錄下來。
????
8、???實驗記錄中應(yīng)有指導教師的簽名。
3、實驗報告
??????主要內(nèi)容包括對實驗數(shù)據(jù)、實驗中的特殊現(xiàn)象、實驗操作的成敗、實驗的關(guān)鍵點等內(nèi)容進行整理、解釋、分析總結(jié),回答思考題,提出實驗結(jié)論或提出自己的看法。
九、實驗例程
示例[1] 加法器
module addr (a, b, cin, count, sum);
input [2:0] a;
input [2:0] b;
input cin;
output count;
output [2:0] sum;
assign {count,sum} = a +b + cin;
endmodule
示例[2] 比較器
m
9、odule compare (equal,a,b);
input [1:0] a,b; // declare the input signal ;
output equare ; // declare the output signal;
assign equare = (a == b) ? 1:0 ;
/ * if a = b , output 1, otherwise 0;*/
endmodule
示例[3] 三態(tài)驅(qū)動器
module mytri (din, d_en, d_out);
input din;
input d_en;
output d_out;
//
10、 -- Enter your statements here -- //
assign d_out = d_en ? din :'bz;
endmodule
module trist (din, d_en, d_out);
input din;
input d_en;
output d_out;
// -- statements here -- //
mytri u_mytri(din,d_en,d_out);
endmodule
該例描述了一個三態(tài)驅(qū)動器。其中三態(tài)驅(qū)動門在模塊 mytri 中描述,而在模塊trist 中調(diào)用了模塊mytri 。模塊mytri 對trist
11、而言相當于一個已存在的器件,在trist 模塊中對該器件進行實例化,實例化名 u_mytri 。
示例[4] 4位計數(shù)器
module count4(out,reset,clk);
output[3:0] out;
input reset,clk;
reg[3:0] out;
always @(posedge clk)
begin
if (reset) out<=0; //同步復位
else out<=out+1; //計數(shù)
end
endmodule
示例[5] 用case 語句描述的4 選1 數(shù)據(jù)選擇器
module mux4_1(out,in0,in1,
12、in2,in3,sel);
output out;
input in0,in1,in2,in3;
input[1:0] sel;
reg out;
always @(in0 or in1 or in2 or in3 or sel) //敏感信號列表
case(sel)
2'b00: out=in0;
2'b01: out=in1;
2'b10: out=in2;
2'b11: out=in3;
default: out=2'bx;
endcase
endmodule
示例[6] 用always 過程語句描述的簡單算術(shù)邏輯單元
`define add 3'd0
13、
`define minus 3'd1
`define band 3'd2
`define bor 3'd3
`define bnot 3'd4
module alu(out,opcode,a,b);
output[7:0] out;
reg[7:0] out;
input[2:0] opcode; //操作碼
input[7:0] a,b; //操作數(shù)
always@(opcode or a or b) //電平敏感的always 塊
begin
case(opcode)
`add: out = a+b; //加操作
`minus: out = a-b; //減操作
14、
`band: out = a&b; //求與
`bor: out = a|b; //求或
`bnot: out=~a; //求反
default: out=8'hx; //未收到指令時,輸出任意態(tài)
endcase
end
endmodule
實驗二 組合邏輯與時序電路綜合設(shè)計
實驗學時:6
實驗類型:綜合
實驗要求:必修
一、實驗?zāi)康?
1、進一步加深對Quartus II軟件的使用。
2、進一步熟悉用Verilog HDL語言進行編程設(shè)計。
3、練習綜合應(yīng)用一個小型的數(shù)字系統(tǒng)。
二、實驗內(nèi)容
1、根據(jù)要求實現(xiàn)一個簡單的交通燈控
15、制器
要求:
A、每個方向四盞燈(左拐燈、綠燈、黃燈和紅燈)可以控制其亮滅;
B、用兩個LED數(shù)碼管顯示每個方向燈的倒計時顯示時間(左拐燈、綠燈25秒,黃燈6秒,紅燈20秒)。
C、設(shè)置按鍵實現(xiàn)倒計時時間可調(diào)。
2、根據(jù)要求實現(xiàn)一個多功能數(shù)字鐘
要求:
A、 計時功能,顯示分、秒(各倆位)。
B、 系統(tǒng)時鐘為11.05926MHz。
C、 鬧鐘功能,產(chǎn)生鬧鈴音、報時音的時鐘信號其頻率為 1024Hz
D、手動校時功能。
3、自己設(shè)計、編譯、調(diào)試、仿真運行程序并理解實驗中輸入、輸出的含義。
三、實驗原理、方法和手段
交通燈需要一個計時單元用于產(chǎn)生標準的秒脈沖,并對設(shè)定
16、的時間進行計數(shù)。交通燈實驗的核心是控制部分,即要求左拐燈和綠燈亮25秒,接著黃燈亮6秒,最后紅燈亮20秒;當紅燈滅后綠燈點亮,這樣周而復始。LED燈采用動態(tài)顯示。
多功能數(shù)字鐘由秒脈沖發(fā)生電路、計數(shù)定時部分、數(shù)字顯示部分和時鐘調(diào)校部分組成。通過對系統(tǒng)時鐘進行分頻得到1Hz的秒脈沖;LED燈采用動態(tài)顯示;調(diào)教部分可設(shè)置多個按鍵,例如K1、K2、K3分別用于控制計時開始、調(diào)校功能選擇、加1或減1調(diào)整等。
四、實驗組織運行要求
根據(jù)本實驗的特點、要求和具體條件,采用以學生自主訓練為主的開放模式組織教學。
重點:設(shè)計計時單元產(chǎn)生標準的秒脈沖、LED的動態(tài)顯示。
難點:按鍵的設(shè)計。
五、實
17、驗條件
具備Windows操作系統(tǒng)、帶有Quartus II軟件的PC機、DP-MCU/Atera綜合仿真試驗儀。
六、實驗步驟
1、閱讀每個問題的要求。
2、設(shè)計程序并編譯、下載或仿真運行。
3、記錄并理解運行顯示的信息
4、回答思考題并撰寫實驗報告
七、思考題
1、比較LED的靜態(tài)顯示與動態(tài)顯示。
2、總結(jié)計數(shù)器的實現(xiàn)方法。
3、總結(jié)分頻的公式。
4、說明按鍵設(shè)計的方法。
5、在實驗報告中完成問題 1、2、3、4的討論與說明。
八、實驗報告
1、實驗預習
???????在實驗前每位同學都需要對本次實驗進行認真的預習,并寫好預習報告,在預習報告中要寫
18、出實驗?zāi)康?、要求,需要用到的儀器設(shè)備、物品資料以及簡要的實驗步驟,形成一個操作提綱。對實驗中的安全注意事項及可能出現(xiàn)的現(xiàn)象等做到心中有數(shù),但這些不要求寫在預習報告中。
????????設(shè)計性實驗要求進入實驗室前寫出實驗方案,并經(jīng)指導教師審閱后實施。
2、實驗記錄
???????學生開始實驗時,應(yīng)該將記錄本放在近旁,將實驗中所做的每一步操作、觀察到的現(xiàn)象和所測得的數(shù)據(jù)及相關(guān)條件如實地記錄下來。
???????實驗記錄中應(yīng)有指導教師的簽名。
3、實驗報告
??????主要內(nèi)容包括對實驗數(shù)據(jù)、實驗中的特殊現(xiàn)象、實驗操作的成敗、實驗的關(guān)鍵點等內(nèi)容進行整理、解釋、分析總結(jié),回答思考題,提出實
19、驗結(jié)論或提出自己的看法。
實驗三 Protel軟件的使用
實驗學時:4
實驗類型:驗證
實驗要求:必修
一、實驗?zāi)康?
1、掌握Protel軟件的用法。
2、熟悉硬件電路原理圖的繪制。
3、熟悉PCB圖的產(chǎn)生與手工繪制。
4、掌握電路的仿真。
二、實驗內(nèi)容
1、自己查找實驗電路
建議:用電源、單片機及接口電路。
2、繪制例程電路
用Protel軟件繪制實驗電路。
3、產(chǎn)生PCB圖,根據(jù)排版原則,檢查是否需要手工修改。
4、仿真原理電路。
三、實驗原理、方法和手段
根據(jù)實驗例程電路,繪制電路圖并仿真運行以檢查其功能和指標是否能夠?qū)崿F(xiàn)。通過仿真過程中顯示的狀
20、態(tài)和有關(guān)輸出情況學習具體電路的原理和實現(xiàn)方法。
四、實驗組織運行要求
根據(jù)本實驗的特點、要求和具體條件,采用以學生自主訓練為主的開放模式組織教學。
重點:掌握用Protel軟件繪制實驗電路、產(chǎn)生PCB圖,根據(jù)排版原則,檢查是否需要手工修改。
難點:實驗電路的仿真。
五、實驗條件
具備Windows操作系統(tǒng)、帶有Protel軟件的PC機。
六、實驗步驟
1、理解實驗電路
2、繪制原理圖并仿真其功能。
3、記錄并理解仿真中顯示的信息
4、回答思考題并撰寫實驗報告
七、思考題
1、總結(jié)電路圖繪制的技巧。
2、說明產(chǎn)生PCB圖的方法。
3、總結(jié)電路布線的原則。
21、
4、描述仿真中出現(xiàn)的問題及解決的方法。
5、在實驗報告中完成問題 1、2、3、4的討論說明。
八、實驗報告
1、實驗預習
???????在實驗前每位同學都需要對本次實驗進行認真的預習,并寫好預習報告,在預習報告中要寫出實驗?zāi)康?、要求,需要用到的儀器設(shè)備、物品資料以及簡要的實驗步驟,形成一個操作提綱。對實驗中的安全注意事項及可能出現(xiàn)的現(xiàn)象等做到心中有數(shù),但這些不要求寫在預習報告中。
????????設(shè)計性實驗要求進入實驗室前寫出實驗方案,并經(jīng)指導教師審閱后實施。
2、實驗記錄
???????學生開始實驗時,應(yīng)該將記錄本放在近旁,將實驗中所做的每一步操作、觀察到的現(xiàn)象和所測得的數(shù)據(jù)及相關(guān)條件如實地記錄下來。
???????實驗記錄中應(yīng)有指導教師的簽名。
3、實驗報告
?????? 主要內(nèi)容包括對實驗數(shù)據(jù)、實驗中的特殊現(xiàn)象、實驗操作的成敗、實驗的關(guān)鍵點等內(nèi)容進行整理、解釋、分析總結(jié),回答思考題,提出實驗結(jié)論或提出自己的看法。
九、實驗電路
根據(jù)所學過的課程在教材或互聯(lián)網(wǎng)上按大綱的建議查找實驗電路。
12