一步一步学做一个CPU——5,分层设计实现一个数码管显示的计数器

 

设计一个7段数码管的控制逻辑电路,用于控制数码管显示,后面他将作为一个子模块添加到我们的顶层设计中。

1, 7段数码管译码电路

Hex

Seg(binary)

0x0

11000000

0x1

11111001

0x2

10100100

0x3

10110000

0x4

10011001

0x5

10010010

0x6

10000010

0x7

11111000

0x8

10000000

0x9

10010000

0xA

10001000

0xB

10000011

0xC

11000110

0xD

10100001

0xE

10000110

0xF

10001110

共阳极数码管编码表

有的同学可能看到真值表就开始画卡诺图了,呵呵,其实可以偷一点懒,看看图中这种实现。

clip_image002

通过使用选择器实现的这种译码电路,完成了一个真值表到电路的转换,并且实现结构清晰,可读性很好。

1, 创建7段数码管的子电路

clip_image004 clip_image006

clip_image008 clip_image010

为设计好的数码管译码电路创建硬件描述语言文件,点击File——>Create/Updata——>Create HDL Design File for Current File。

为设计好的数码管译码电路创建一个封装,点击File——>Create/Updata——>Create Symbol File for Current File,这样我们在顶层设计中就可以调用这个子电路了。

2, 把子电路应用到顶层设计中

clip_image012 clip_image014

添加刚才创建的子电路,点击Assignment——>Settings,在Settings对话框中的Libraries中添加刚才子电路的目录,现在在Symbol中可以看到刚才创建的子电路模块了,我们再添加一个计数器,以及需要的输入输出引脚,完成我们的设计吧。

clip_image016

clip_image018

3, 总结

这个例子主要是联系子电路的创建以及如何将子电路应用到顶层设计中,在复杂设计中,分层设计的方法是必须要掌握的。

至此,QuartusII中的原理图设计的基本操作方法就足够我们使用了,Logisim中所能完成的操作,在QuartusII中都能够对应起来,所以建议后面的设计中,我们来参考课件中的使用Logisim设计简单CPU的方法,对应在QuartusII中实现一个真正的CPU。

由于Logisim是一个仿真软件,使用较QuartusII方便一些,可以先行做实验,然后再用QuartusII实现设计方案。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值