lpmrom模块的使用.docx
《lpmrom模块的使用.docx》由会员分享,可在线阅读,更多相关《lpmrom模块的使用.docx(7页珍藏版)》请在冰豆网上搜索。
lpmrom模块的使用
LPM_ROM的应用
该模块为逻辑宏模块存储器。
其应用过程如下。
1选择模块
2点击ok后,得到
8bit,32个字空间。
3属性编辑:
可以根据实际需要选择数据宽度和内存的容量,默认是
修改空间和数据属性,Cyclone系列支持最大存储深度4k。
该界面可以选择输出引脚的属性,
需要把hex文件或者mif
Iprr
Next>
AllFil«
address[7.
>dock
ResourceEstitnaift
1M4K
Finish
其中mif文件或者hex文件可以由多种形式生成。
或由多种工具获得,女口Quartus的Text
File编辑器、Matlab等。
完成设置:
KegafizardPlug-Inlanager-LPI_ROI[page6of6]—Submary
Wtothe'Finish'buttoni$pressed,theMegaV/izardPlug-InManager囚illcreatethecheckedfile$inthefollo^iriglistYoumaychoosetoincludeorexcludeafilebycheckingorur»cbecking韶co悴pondingcheckbox^respective^.ThestateofcheckboxeswillberememberedforthenextMegaWizardPlug-InManagersession.
TheMtga^VizardPluginMdnageiwillcreatethwefiesinthedirectar)J:
D:
\altera\quartus51\jgao\
File
|Descriptiori
0Ipm_rom1v
Ipm_rom1inc商Ipm_rom1.cmp0Ipm_rom1.bsf□Ipm_rom1^inst.v3Ipm_rom1_bb.7
Variationfile
AHDLIncludeHie
VHDLCcmponentdeclaratknfile
Quartussymbolfile
Instantiationtemplatefile
Verilog'BlackBos'declarationfile
CocixnentaliDn
Cancel
也册t>
Finish
放置该模块:
pirirml
!
-*7L
—
acWressR.-Ol*
i
r
mst1
t
按照基本操作步骤添加引脚,并进行编译,排除错误。
注意总线形式的引脚设置方法。
Ooiim
Value
.eaten
.tots
.tcacn
.CWtdl
-t卅Cfi
O-W4
Iiph"!
■i'f''■■'i1!
VakK
Loe撕
叫1
Loslioi
PNJ2
LksIbi
吶J"
Loalkn
忖
Localni
PhIJi
L谕1
PNJE.
Lwalioi
PNJ?
Localim
PhIJG
双击引脚标识,修改对话框中的内容,获得总线连接方式。
按照常规的方法建立仿真文件,调入引脚,设置仿真时间,设置信号属性,
注意使用tools/option,修改相应的仿真时间属性,这样才能达到理想的效果。
对仿真文件的输入信号设定仿真值。
QnaE-uJ|-[>:
/»]I*1SV1(liArlai$l/itM/JJIWkF-BIo^LF-■?
-#■「•・]
DRE)t
<3]
47)田b
删
KL1
删
修改地址总线的值
NasterTim«:
19.9he
jldpcintir:
Inters;
n
Mam电
3ps655.35us1.31ms
199ns
1.97R15
I
2.62hx$28ire
[3a
aLD]
Hl]
色⑵
&[3]
iE4]
a[5]
a[5]
订T]田b
b[a]
—
r~
trn
修改时钟周期值:
f*Timsperiod:
Period:
Offset[|伽〒
Dulyc^ctel/i]:
150:
OK|CanedI
修改结果可以得到:
L«ct35in{lca-lilLndc!
THelp
Ml
||Block?
”]锐尹@该尉越•晋帕|鑒得尊Q
H-istAirTinoBiu*
1009us
]D.D7ms
Start
勺|?
ain.tar!
编译成功后,仿真,获得仿真结果:
每个工程文件,应该只有一个波形文件,即.vwf,否则可能仿真失败:
仔细观察仿真结果发现,每输出一次内存的内容,需要两个时钟周期。
特别注意MATLAB生成mif文件的部分:
其程序是:
一下程序可以生成,.mif格式文件数据文件,但是QUARTUSII不能直接使用,还要进行修改。
x=0:
1:
255;
y=round(50*sin(2*pi*x/255))+50;a=[x;y]
fid=fopen('rom.mif,'w');
fprintf(fid,'%d:
%d;\n',a);
fclose(fid);
在数据文件开始部分加入以下程序:
WIDTH=8;
DEPTH=256;ADDRESS_RADIX=DEC;DATA_RADIX=DEC;
CONTENTBEGIN得到:
在结束部分加入结束标识:
END
可以得到:
这样构成的数据文件,.mif可以直接加入到FPGA中
该任务完成