《存儲(chǔ)器實(shí)驗(yàn)報(bào)告》由會(huì)員分享,可在線閱讀,更多相關(guān)《存儲(chǔ)器實(shí)驗(yàn)報(bào)告(9頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、實(shí)驗(yàn)3
存儲(chǔ)器實(shí)驗(yàn)
預(yù)習(xí)實(shí)驗(yàn)報(bào)告
疑問(wèn):
1、 存儲(chǔ)器是干嘛的?
2、 存儲(chǔ)器的讀寫功能如何實(shí)現(xiàn)?
3、 存儲(chǔ)器中的字和位分別表示的是什么?
4、 在定制存儲(chǔ)器的時(shí)候,如何對(duì)它里面的存儲(chǔ)單元賦初始值?
5、 如何實(shí)現(xiàn)連讀?
6、 存儲(chǔ)器的代碼實(shí)現(xiàn)書上有,但如果用原理圖來(lái)做,各個(gè)部分用什么芯片來(lái)實(shí)現(xiàn)?
7、 下載到實(shí)驗(yàn)箱時(shí)如何分配輸入以減少開關(guān)數(shù)?
& 在用地址計(jì)數(shù)器產(chǎn)生地址中的置數(shù)的方法產(chǎn)生地址是如何操作的?
實(shí)驗(yàn)報(bào)告
波形圖:
參數(shù)設(shè)置:
Endtime: 2.0us
Gridsize: 100 .Ons
信號(hào)設(shè)置:
clk_cdu: sw|pc_
2、bus:
m|w|r:
ldar: pc_clr|ld|en:
k:
d: d~result: ar:
時(shí)鐘信號(hào),設(shè)置周期為 100ns占空比為50%。
總線(sw_bus)和地址計(jì)數(shù)器 PC( pc_bus)輸出數(shù)據(jù)控制信號(hào),輸 入,低電平有效,二進(jìn)制。
芯片的片選(m )、讀(w )、寫(r)操作的控制信號(hào),輸入,高電 平有效,二進(jìn)制。
地址寄存器AR的裝載數(shù)據(jù)控制信號(hào),輸入,高電平有效,二進(jìn)制。 地址計(jì)數(shù)器 PC的清零(pc_clr )、裝載(pc_ld )和計(jì)數(shù)使能信號(hào) (pc_en),輸入,低電平有效,二進(jìn)制。
k [7]~ k [0],數(shù)據(jù)輸入端信號(hào),輸入,十六進(jìn)
3、制。
d[7]~d[0],數(shù)據(jù)輸出中間信號(hào),雙向信號(hào),十六進(jìn)制。
d [7] result ~d[0] result,最終的數(shù)據(jù)輸出信號(hào),輸出,八進(jìn)制。
ar[7]~ ar[0],地址寄存器 AR的輸出結(jié)果,輸出,十六進(jìn)制。
pcout:
pcout [7卜pcout [0],地址計(jì)數(shù)器PC的輸出結(jié)果,輸出,十六進(jìn)制。
仿真波形
以在01H單元中寫入EEH的數(shù)據(jù)并讀出為例:
1) 初始狀態(tài):K=OOH,選擇芯片(m=1) , PC保持當(dāng)前的值(pc_clr=1),其余信號(hào)無(wú)效;
2)
4、置數(shù)法產(chǎn)生地址: K=01H t總線(sw_bus=O)宀 PC(pc_clr=1、pc_ld=0、pc_en=1),可以
看到此時(shí)總線上的數(shù)據(jù)為 01H;
3) PC保持:pcen=O,總線上及 pc的值停在01H;
4) PCt ar : PC(sw=1,pc_bus=0) t AR=01H (ldar=1),總線上顯示 01H;
5) 讀取::(sw|pc_bus=11 , m=1、r=1) tAR=E1H , D2H,總線上顯示 E1H, D2H ;
6) EEH 總線:寫入到地址為 01H的單元中(m=1、w=1、r=0),之后并將其內(nèi)容讀取出來(lái) (m=1、w=0、r=1)
5、。
7) 計(jì)數(shù)法產(chǎn)生地址: PC+1 (pc_bus=0、pc_clr=1、pc_ld=1、pc_en=1、w=0、r=0)、PC=02H
tAR(ldar=1)、同時(shí)總線上顯示 PC的值。
8) 讀取地址為 AR=02H所存的數(shù)值(m=1、r=1),總線上出現(xiàn)了短暫的 EEH及C5H。
9) PC 清零:pc_clr=0
10) 連讀 00H, 01H、02H、03H、04H、里面存放的數(shù)據(jù)(pc_bus=1、pc_clr=1、pc_ld=1、pc_en=1、 m=1、r=1、ldar=1),總線上顯示 E1,EE ,F3,C5,00。
結(jié)論:
本實(shí)驗(yàn)的設(shè)計(jì)能存儲(chǔ)器的存儲(chǔ)數(shù)據(jù)以
6、及讀和寫的操作的功能,同時(shí)連續(xù)讀出存入地址
單元中存放的數(shù)據(jù),電路設(shè)計(jì)正確。
二、實(shí)驗(yàn)日志
預(yù)習(xí)疑問(wèn)解答:
1、存儲(chǔ)器是干嘛的?
存儲(chǔ)器的主要功能是存放計(jì)算機(jī)正在執(zhí)行或?qū)⒁獔?zhí)行的程序以及數(shù)據(jù)等信息。 它進(jìn)行讀操作
時(shí)片選信號(hào)有效,讀控制有效;進(jìn)行寫操作時(shí)片選信號(hào)有效,寫控制有效,同時(shí)輸入數(shù)據(jù)。
2、存儲(chǔ)器的讀寫功能如何實(shí)現(xiàn)? 如果用代碼實(shí)現(xiàn)
process (clk, we, din)
begin
if(ris in g_edge(clk)) the n
if (we= the n
RAM(Addr)<=din; 寫操作
End if;
Addr_Reg<=Ad
7、dr;
end if;
end process;
dout<=RAM(Addr_Reg); 讀操作
實(shí)驗(yàn)中是用lpm定制的,原理是一樣的。
3、 存儲(chǔ)器中的字和位分別表示的是什么?
字表示地址的長(zhǎng)度,如果字長(zhǎng)為 M,則地址寄存器的位數(shù)應(yīng)該為 log2M,位表示數(shù)據(jù)的字
長(zhǎng),如果位長(zhǎng)為 N,則數(shù)據(jù)寄存器應(yīng)該為 N位。
4、 在定制存儲(chǔ)器的時(shí)候,如何對(duì)它里面的存儲(chǔ)單元賦初始值?
打開memory initial file 即.mif的文件,直接在對(duì)應(yīng)的位置設(shè)值就可以了。
5、 如何實(shí)現(xiàn)連讀?
這是課后的一個(gè)思考題,答案見下面。
6、存儲(chǔ)器的代碼實(shí)現(xiàn)書上有,但如果用原理圖來(lái)
8、做,各個(gè)部分用什么芯片來(lái)實(shí)現(xiàn)?
AR是用芯片74273(8位帶異步清零的 D觸發(fā)器)來(lái)實(shí)現(xiàn),三態(tài)門輸入是用芯片 74244(八路 輸入三態(tài)緩沖器)來(lái)實(shí)現(xiàn),PC是用芯片74161(4位二進(jìn)制加計(jì)數(shù)器, 帶同步載入,異步清零) 來(lái)實(shí)現(xiàn),存儲(chǔ)器是用lpm定制來(lái)實(shí)現(xiàn)。
7、下載到實(shí)驗(yàn)箱時(shí)如何分配輸入以減少開關(guān)數(shù)?
輸入有sw|pc_bus,m|w|r,Idar, pc_clr|ld|en,k (是8位的),總共17個(gè),實(shí)驗(yàn)箱上只有 16 個(gè)開關(guān),可以直接把 K的高地位搞成兩個(gè)計(jì)數(shù)器,通過(guò)時(shí)鐘信號(hào)控制,直接實(shí)現(xiàn)輸入二位
& 在用地址計(jì)數(shù)器產(chǎn)生地址中的置數(shù)的方法產(chǎn)生地址是如何操作的?
9、
這是74161的功能表:
CLR
LD
PC
CLK
功能
PC
答:
2、如何將
答:
2片512*4bit的RAM構(gòu)成容量為1024*4bit的存儲(chǔ)體?畫出簡(jiǎn)單電路圖?
0
x
x
x
清零
1
0
1
置數(shù)
1
1
1
計(jì)數(shù)加1
1
0
0
x
保持
1
0
0
x
保持
clr|ld|e n=101時(shí)置數(shù),此時(shí)可以通過(guò)總線將想要產(chǎn)生的地址值通過(guò)數(shù)據(jù)輸入端口置數(shù)到 中,再將PC的值保持,打入到 AR中,實(shí)現(xiàn) PC=PC+1,PCt AR。
思考題:
A8
A8~A0
CE
R0M2
D3
10、~D0
OE
A8
9
片選
讀允許
D3~D0
CE
A8~A0
ROM1
OE
D3~D0
1、如何將2片512*4bit的RAM構(gòu)成容量為512*8bit的存儲(chǔ)體?畫出簡(jiǎn)單電路圖?
.--
.-..亠—
gn或…
—ft
74244
?網(wǎng)- T?. 77dl^:
1GH
I A1
1Y1
LA2
1Y2
Ii3
1Y3
144
1Y4
MW
SA1
2Y1
2A2
ZYZ
2A3
ZY3
2A4
?Y*
Ml gr亂日 UF
74273
3、如
11、何修改電路使其能連續(xù)讀出存入地址單元中存放的數(shù) 據(jù)?
答:修改電路如下:
所做的修改:
1)、將地址寄存器 AR和地址計(jì)數(shù)器 PC的數(shù)據(jù)直接相連。
fr=^T pccft^r p^lbr
PI
D1
m
垃
02
03
皿
QJ
D5
Q5
06
M
rtt
aRH
CLK
meH OCTAL D-FF > ■
t- n - -r - r t -a- l r - ■— r ~t ~sr t- f "、 i
k
V;"
2)、將原來(lái)的通過(guò)總線將 PC里的值傳給 AR的三態(tài)門輸入, 改為用來(lái)控制將
12、 PC的值傳到總線,即 pc_bus用來(lái)控制PC里 的值是否傳到總線。
::::
4、如何將原理圖輸入的邏輯電路轉(zhuǎn)換成 HDL的描述語(yǔ)言?
答:打開電路圖,選擇 File Creat/Update Creat HDL Desig n File for Current File,將會(huì)彈出下面的窗口, 選擇HDL的描述語(yǔ) 言。
@ Quaitus-D - 禮酊 bdlli|
盛吐]ETd~ViewProjM ifcMiyrtW&PrMftiiftgTed*SSndOwHelp
CDtfc*-
r目沁?
b衛(wèi)x*
-兇 hew Pr Eject Musa rd..
礦 Qpn 申
13、*cL Obi +J
d仙血衲AXw 叫M □ PnojKL.
Clw Propt!
CfritN cm+o
QjndiuqtsliiTjn
爭(zhēng) ahU^Efi Report - &midioriliAl?dTT5 | ti GUDdMiqiEhs^iMF
Q
5松自 Curd鉀C R^pCi*! 詁Af-
SUS
IIGH
141 w
hl |YJ
bl
|Vi
<3
ZOH
3VI
2AZ
32
TV!
E>p9r%i
Cwffte Symbd 同刖 fcr Oirrert 哄
■j— & a ■
14、mi aid ir4」 tT n - —i
實(shí)驗(yàn)中遇到的問(wèn)題:
1、 在對(duì)存儲(chǔ)器進(jìn)行初始化之后,在波形仿真將其讀出的時(shí)候,所有的結(jié)果都是 00H。
在用lpm定制設(shè)計(jì)參數(shù)的時(shí)候, LPM_FILE的文件名不是./initial_file.mif ,開始不知道
這個(gè)關(guān)系,后來(lái)明白了,原來(lái) lpm存儲(chǔ)器是在 mif文件里面讀取數(shù)據(jù)的。
2、 用代碼實(shí)現(xiàn) PC_AR的時(shí)候,仿真波形上應(yīng)該出現(xiàn) EE的地方為不定值。
據(jù)說(shuō)是代碼的電路設(shè)計(jì)不正確, 后來(lái)?yè)Q成了原理圖來(lái)做, 換了電路圖做之后還是有, 看
了一下書上的波形圖,原來(lái)在那個(gè)地方 d是有輸入的,輸入是 EE。(主要是沒(méi)明白操作的含
15、
義)
3、 仿真時(shí)結(jié)果不正確,應(yīng)該出現(xiàn) 01,02,03的那幾個(gè)地方莫名其妙地冒出來(lái)了 06,07,08
請(qǐng)同學(xué)幫忙看了一下,開始沒(méi)有把計(jì)數(shù)器的值在波形上顯示出來(lái), 后來(lái)把計(jì)數(shù)器的值在
波形上顯示了,發(fā)現(xiàn) PC的值有問(wèn)題,是電路連接問(wèn)題,錯(cuò)誤的電路連接是這樣的:
低位的ENT和ENP應(yīng)該空置,高位的 ENT的輸入是低位的進(jìn)位, ENP接高電平,而
且我的計(jì)數(shù)器的時(shí)鐘信號(hào)也是錯(cuò)誤的,正確的電路應(yīng)該是下面這個(gè):
-
---
74161
LDN
A
P
OA
C
OB
D
QC
EHT
CD
EHP
RCO
CLPN
CLK
i■■三i 性 COUNTER
■ — ? ■ ■ S I S- 1 ■ " ■! I !■ 1
了4 伯 ~1
-Cl LDN
0
QA
;搭ent[衛(wèi)F
0
QB
i - Ecn材
D
Q.C
5 ? pccntT護(hù)
EKT
QD
— >■
ENP
RCC
―[
CLRN
CLK
mstij COUNTER
實(shí)驗(yàn)心得: