84位先进先出FIFO存储器设计文档格式.docx
- 文档编号:18853318
- 上传时间:2023-01-01
- 格式:DOCX
- 页数:9
- 大小:389.66KB
84位先进先出FIFO存储器设计文档格式.docx
《84位先进先出FIFO存储器设计文档格式.docx》由会员分享,可在线阅读,更多相关《84位先进先出FIFO存储器设计文档格式.docx(9页珍藏版)》请在冰豆网上搜索。
5.设计主要代码………………………………………………………04
6.设计结果……………………………………………………………09
7.心得体会……………………………………………………………09
8.参考文献……………………………………………………………10
8*4位先进先出(FIFO)存储器设计
FIFO简介:
FIFO是英文First
In
First
Out
的缩写,是一种先进先出的数据缓存器,他与普通存储器的区别是没有外部读写地址线,这样使用起来非常简单,但缺点就是只能顺序写入数据,顺序的读出数据,其数据地址由内部读写指针自动加1完成,不能像普通存储器那样可以由地址线决定读取或写入某个指定的地址。
1.课程设计目的
了解及掌握先进先出(FIFO)存储器的工作特性及其读写方法。
二.课程设计设备
1.TDN-CM+或TDN-CM++教学实验系统一台。
2.PC微机一台。
3.课程设计原理
1.顶层原理图:
此为8*4的FIFO,在顶层原理图,有三个模块:
控制信号模块、寄存器模块、数据选择器模块都用ABEL语言设计。
2.各信号的功能为:
EMPTY:
FIFO存储器为空标志,高电平有效。
FULL:
FIFO存储器满标志,高电平有效。
RST:
清FIFO存储器为空。
FIFOWR:
FIFO存储器写入信号,低电平有效。
FIFORD:
FIFO存储器读信号,低电平有效。
ID0~ID7:
FIFO存储器输入数据线。
OD0~OD7:
FIFO存储器读出数据线。
各信号后的括号内的数字为本设计在CPLD中定义的相应的管脚号。
3.内部逻辑图:
四.设计操作步骤
1.编写cpld芯片设计程序,按照上述功能要求及管脚说明,进行芯片设计。
2.编译所设计的程序
3.实验连线图接线。
4.具体操作步骤
接线图中OO1、OO2、OOE1、OOE2、OOEE1、OOEE2是六个观察记数的指示灯,其中OO1、OO2是写信号记数,OOE1、OOE2是读信号记数,OOEE1、OOEE2是FIFO中的数据个数。
FULL及EMPTYy是满和空标志灯。
实验时,将SWITCHUNIT单元中的SW-B开关置为“0”,然后拨动系统右下脚的CLR清零开关使读、写信号记数清零。
给INPUTDEVICE单元中置一个数,按动START,此时将该数写入到FIFO中,依次写四次后,FULL满标志置位。
此时再也写不进去;
然后连续按动KK2-读信号,将顺序读出所存的四个数,数据总线显示灯及OUTPUTUNIT单元中的数码管显示所读出的数据。
四个数全部读出后,EMPTYy空标志置位。
检查执行结果是否与理论值一致。
设计接线图如下:
五.设计主要代码
MODULEFIFO
"
INPUT
RST,FIFORD,FIFOWRPIN;
OUTPUT
OEE1,OEE2,FULL,EMPTYPINISTYPE'
COM'
;
OE1,OE2,O2,O1PINISTYPE'
REG'
NODE
W,FLAGGPINISTYPE'
C1,C2,C3,C4PINISTYPE'
OE=[OE2,OE1];
O=[O2,O1];
OEE=[OEE2,OEE1];
EQUATIONS
OE.CLK=FIFORD;
O.CLK=FIFOWR;
OE.AR=!
RST;
O.AR=!
W.CLK=FIFORD;
W.AR=!
RST#(!
FIFOWR);
W:
=1;
FLAGG.CLK=FIFOWR;
FLAGG.AR=W&
(!
FIFORD)#(!
RST)#(OEE==1)&
FIFORD);
FLAGG:
WHENOE==3THENOE:
=0ELSEOE:
=OE+1;
WHENO==3THENO:
=0ELSEO:
=O+1;
OEE=O-OE;
C1=!
FIFOWR&
!
O2&
O1;
C2=!
C3=!
C4=!
EMPTY=(OE==O)&
FLAGG;
FULL=(OE==O)&
END
MODULEMUX4
OE1,OE2,CLKPIN;
D07,D06,D05,D04,D03,D02,D01,D00 PIN;
D17,D16,D15,D14,D13,D12,D11,D10 PIN;
D27,D26,D25,D24,D23,D22,D21,D20 PIN;
D37,D36,D35,D34,D33,D32,D31,D30 PIN;
O7,O6,O5,O4,O3,O2,O1,O0 PIN ISTYPE'
I0=[D07,D06,D05,D04,D03,D02,D01,D00];
I1=[D17,D16,D15,D14,D13,D12,D11,D10];
I2=[D27,D26,D25,D24,D23,D22,D21,D20];
I3=[D37,D36,D35,D34,D33,D32,D31,D30];
OD=[O7,O6,O5,O4,O3,O2,O1,O0];
OD.CLK=!
CLK;
WHENOE==0THENOD:
=I0;
ELSEWHENOE==1 THENOD:
=I1;
ELSEWHENOE==2THENOD:
=I2;
ELSEWHENOE==3THENOD:
=I3;
MODULELS273
CLKPIN;
I7,I6,I5,I4,I3,I2,I1,I0PIN;
O7,O6,O5,O4,O3,O2,O1,O0PINISTYPE'
I=[I7,I6,I5,I4,I3,I2,I1,I0];
O=[O7,O6,O5,O4,O3,O2,O1,O0];
O.CLK=CLK;
O:
=I;
END
MOUDLEfifo
IN7..IN0,RST,FRD,FWRPIN;
OUT7..OUT0,FULL,EMPTY,WRCEPIN;
OO1,OO2,OOE1,OOE2PINISTYPE'
OOEE1,OOEE2PINISTYPE'
C=.C.;
X=.X.;
TEST_VECTORS([IN7..IN0,RST,FRD,FWR]->
[OUT7..OUT0,FULL,EMPTY,WRCE,
OO1,OO2,OOE1,OOE2,OOEE1,OOEE2])
"
清零
@repeat3{[0,0,0,0,0,0,0,0,0,1,1]->
X;
}
写四个数
[0,0,0,0,0,0,0,1,1,1,C]->
[0,0,0,0,0,0,1,1,1,1,C]->
[0,0,0,0,0,1,0,1,1,1,C]->
[0,0,0,0,1,0,0,1,1,1,C]->
读出四个数
[X,X,X,X,X,X,X,X,1,C,1]->
[1,0,0,0,0,0,0,1,1,1,C]->
X
[1,1,0,0,0,0,0,1,1,1,C]->
[1,0,1,0,0,0,0,1,1,1,C]->
[1,0,0,1,0,0,0,1,1,1,C]->
六.设计结果
1.经多次检查无误后,严格按照实验步骤操作,结果与理论值一致.
仿真波形图如下:
七.心得体会
在这一周的课程设计中,由于之前做过相似的实验,所以在一开的实验设计连图时还是很快就完成了,不过在接下来的编写代码的阶段里,出现很大的问题,花费了很多的时间。
好在有老师的耐心细心的指导,一步一步的验证,一点一点的改正。
每一次的运行看到错误都在慢慢的减少,正确的实验结果也在不断的靠近,最终取得了成功。
每一次的课程设计都是自己对所学知识的强化,是一次难得的动手机会。
在课程设计的每一个步骤的执行中,都要认真的反复的去做,因为一个小小的错误都会导致课程设计结果发生巨大的偏差。
完成一个成功的设计,会让自己学会很多很多的东西,并且能够很清楚的看到自己的不足,查补缺漏,继续学习。
通过自己的动手动脑,既增加了知识,又给了我专业知识以及专业技能上的提升,对提高自己的思维能力和操作能力有很大的帮助。
同时我也会更加努力,认真学习,争取在以后的课程中做得更好!
8.参考文献
《计算机组成与体系结构》科学出版社
《计算机组成原理》电子工业出版社
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 84 先进 FIFO 存储器 设计