好文档 - 专业文书写作范文服务资料分享网站

如何使用logisim - 图文

天下 分享 时间: 加入收藏 我要投稿 点赞

经过了这么多繁杂的步骤,我们仅仅完成的是一个简单的与门电路,好在通过这个过程我们只是了解一下FPGA设计的基本过程与简单操作,熟悉了这个流程,以上步骤还是很清楚的,而且实现一个复杂的设计也基本是沿这个过程走的。后面我们用FPGA实现一个CPU也可以这样下载到FPGA芯片当中,这可是一个真正的电路,真正工作的CPU,麻雀虽小五脏俱全,不再是仅仅在电脑上仿真了,你必然会满心欢喜。而且实际中,这样的设计(当然还有一些其他的工作要做),是能够送到工厂中去生产真正的ASIC专用电路,也就是真正的,我们能摸到能使用的CPU,会有这样的一天。 1, 使用MegaWizard添加一个RAM模块。

RAM模块属于原理图设计中一个较为复杂的模块,并非如一个简单的二输入与门那样直接添加就可以了,还有一些参数需要配置和设定。在QuartusII中添加一个类似RAM的复杂模块需要用到MegaWizard,通过使用MegaWizard添加一个RAM模块,可以了解如何用MegaWizard为库提供的模块配置参数。

依然是使用Symbol tool打开添加模块对话框,MagaWizard的模块多数在megafunctions目录下,我们使用的是megafunctions——>storage——>lpm_ram_dq,勾选上Launch MegaWizard Plug-In,OK,打开MegaWizard Plug-In Manager,选择为库文件生成的文件类型,有AHDL语言,VHDL语言和Verilog HDL语言三种选择,根据需要和自己对他们的熟悉程度选择,设定为其生成的目录文件,建议生成到工程所在目录下,并在其名称基础上加上些有意义的后缀。接下来是关于模块具体参数的设定,不同的模块会有所不同,这里请先按照图中的配置方式选择,使用8位容量32个字的RAM,不带有输出口寄存功能。 为了让RAM有一个初始值,我们要为其写个初始化数据文件,下面选中Yes, use this file for the memory content data,并设定好文件路径名称。下一步是生成文件的清单,最后Finish将生成模块添加到设计文件中。

2,添加总线与提取总线上一位数据的方法。

以上是通过MegaWizard添加模块的方法,用相同的方法,我们可以添加lpm_add_sub模块。

本例中涉及到的就是以上两种模块,通过联系和实践,可以测试试验一下其他的模块。 接下来添加输入输出引脚,这个前面介绍过,这里有点不同的是,输出引脚是8位的,这个在命名的时候后面加上[7..0]就表示是个8位的输出,例如fib_res[7..0],如果要用到其中一位就是名字加上下方括号跟标号,例如fib_res[5]。 3,用手动按钮作为时钟信号测试。

实验板上的时钟太快了,不利于我们观察,那就用仿真时学的办法,加一个输入按钮,模拟时钟,按一下,时钟跳一下,于是加了一个输入引脚,用于连接实验板上的按钮开关。输入引脚后面要加一个非门,因为实验板上松开按钮时候输入是高电平,所以用一个非门也就是反相器来取反向。

需要指出的是,用手动按钮做时钟信号来测试是一个权宜的方法,实际的设计中是不推荐的,包括组合电路的输出用做时钟信号都是不好的设计习惯,因为时序电路工作的时钟要求波形稳定,组合逻辑电路中产生波形的毛刺对其工作影响较大,造成错误的数据或不可预测的结果。

4,常量的加入。

由于加入的ram模块至少含有32个字的存储,只需用到其中一个,地址线置零就可以了,每次时钟来临都进行写入操作,那么写入使能始终设为Enable。那么这些常量该怎么设定呢?在原理图设计中,有GND和VCC两个常量,分别代表逻辑1和逻辑0,将他们引入到电路中就可以了,多位数据合并到一条总线上是将各位数据用逗号隔开,添加到总线命名中。

5,让你的电路更加清晰。

前面介绍到,当电路规模愈加复杂时,将各模块直接连接到一起会严重影响其清晰美观,那么推荐的方式是采用网络标识的形式,也可以为GND,VCC添加一个网络标识,把他们改名为b1和b0如图,那么内存地址我们可以写为b0 ,b0, b0, b0,b0。

再把上图整理一下,看看效果是否好一点了。

6,初始化RAM中数据

7,波形仿真工具

这里在学习一下使用QuartusII自带的波形仿真工具,新建一个Vector Waveform File。

在图中位置右击,搜索添加Node和Bus,在Insert Node or Bus框中点击Node Finder按钮,弹出Node Finder框,点击List将所有输入输出节点列出,添加到Selected Nodes中,OK。

选中clk_button,点击工具栏的Overwrite Clock,在Clock框中填好起始时间,结束时间,时钟周期等参数,为其添加一个时钟输入。

如何使用logisim - 图文

经过了这么多繁杂的步骤,我们仅仅完成的是一个简单的与门电路,好在通过这个过程我们只是了解一下FPGA设计的基本过程与简单操作,熟悉了这个流程,以上步骤还是很清楚的,而且实现一个复杂的设计也基本是沿这个过程走的。后面我们用FPGA实现一个CPU也可以这样下载到FPGA芯片当中,这可是一个真正的电路,真正工作的CPU,麻雀虽小五脏俱全,不再是仅仅在电脑上仿真了,你必然会满心欢喜。
推荐度:
点击下载文档文档为doc格式
6d0w02jssh03ypi6btga
领取福利

微信扫码领取福利

微信扫码分享