数字电路设计实战

本文详细介绍了数字电路设计的过程,包括Verilog代码实现、功能仿真、逻辑综合和形式验证四个阶段。设计采用了格雷码和独热码两种编码方式,以及二段式和三段式两种结构。在功能仿真中,使用Modelsim进行验证,确保了设计的逻辑功能正确。逻辑综合使用Design Compiler工具,针对TSMC 65nm GP工艺进行了优化,并分析了面积、功耗和时序报告,验证了设计的可行性。
摘要由CSDN通过智能技术生成

目录:
一.设计要求
二.Verilog 代码
三.功能仿真
四.逻辑综合
五.形式验证

一.设计要求
有限状态机图示
方案设计时,状态编码可以是格雷码、也可以是独热码。 HDL代码设计可以采用二段式、也可以是三段式。采用四种方案:
方案一(格雷码、二段式);方案二(格雷码、三段式);方案三(独热码、二段式);方案一(独热码、三段式)。
请采用这四种方案分别实现, 要求如下:
1、请自定义端口信号,设计并提交图1有限状态机在四种方案下的HDL代码,请注意Code Style。
2,分别给出四种方案下的功能仿真策略和仿真结果。
3,选择合适的工艺,分别完成四种方案下的逻辑综合。请以脚本.tcl形式给出你所加的设计约束条件和该约束条件下的综合结果,注意:报告中不能出现Violation。
4,完成形式验证。

二,verilog 代码
本设计选用摩尔型有限状态机,虽然所消耗的资源有可能比米利型多,但是摩尔型抗干扰能力比米利型强。该状态机端口定义如图2-1所示:
2.1 FSM端口定义

二进制码 格雷码 独热码
S0 2`b00 2b00 4b0001
S1 2`b01 2b01 4b0010
S2 2`b10 2b11 4b0100
S3 2`b11 2b10 41000
  1. 1 二段式

二段式采用两个always块描述,分别描述状态转移和结果输出。结构框图如图2-2所示:

图2-2 二段式FSM的结构框图
上图由两大部分构成,组合逻辑电路和时序逻辑电路。其中,组合逻辑电路实现结果输出的功能,时序逻辑电路实现状态转移的功能,分别对应两个always块语句。

2.1.1 格雷码

二段式格雷编码代码如下:

端口定义如下:

加粗样式
定义输出结果变量和中间变量的数据类型:
在这里插入图片描述
状态转移由时序逻辑电路实现,其代码如下:
在这里插入图片描述
输出由组合逻辑电路实现,其代码如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值