湖南大学电路与电子学 数字电路部分2023年复习纲要

前言

资料本应在期末考前发布,但因为考前繁忙遗忘,故现在补发,供补缓考和来年学习参考。

部分内容引用老师提供的学习资料。感谢胡红平老师、凌纯清老师一学期的辛勤付出。

本资料不得与错误信息混合后二次传播。

本资料纯属个人整理,若有错误,欢迎在评论区或私信指出。

在复习过程中有疑问的,建议积极寻求授课老师的帮助。

最后,祝大家在本门课程中取得理想的成绩。

复习建议

建议分两轮复习。

第一轮:回顾数电部分的全部知识点,浏览PPT和课堂活动、课堂测试、课后作业、小班课题,作条目式知识点总结。

第二轮:根据考纲分类总结归类题目,以历年期末考试题和小班课题目为主,课堂测试题目为辅。本资料满足第二轮复习的需要,若看不懂,请移步学习通课程中心回顾PPT讲义。

若时间紧张,可以只进行第二轮复习,根据不懂的知识点回顾对应的PPT讲义,节约时间。

考纲分析和例题解说

1) CT1:电路题。电路、模电理论、方法,以及功能电路。
2) CT1:时序电路分析。对时序电路进行分析的,强调同步的重要性。
3) CT1:寄存器设计。设计可靠的计数器、移位寄存器。
4) CT2:组合电路设计。列真值表化简或用组合器件设计组合电路。
5) CT2:紧凑真值表与分层、迭代设计。抽象表达与运用分层、迭代设计解决复杂问题。
6) CT2:时序电路设计。通过做状态图或状态机图,设计复杂时序电路。
7) CT2FPGA 应用。对 FPGA 进行配置,实现组合或时序电路。
8) CT3HDL 程序设计。模型机设计中的关键问题。

第一题:模拟电路

例1:[2023第二次小班课 7.1]

解:

知识点:复指数分析法。

常考点另有:运放(同相反相加法器减法器);滤波器(求激励方程幅频响应相频响应截止频率通带增益)等。请自查是否熟知这些概念。

第二题:时序电路分析

例2:[2020期末 6]

注:第三小问答案务必牢记。

例3:[2023第四次小班 6]

解:

解决方法同上。

例4:[2021期末 5]

知识点总结:时序电路的分析(状态方程和输出方程、状态表和状态图、异常的分析)

概念解析:建立时间和保持时间、异常及解决方法。

第三题:寄存器和移位计数器

例5:[2023第四次小班 8]

题目分析:可靠的移位计数器要求尽快自恢复。若进入了冗余状态,就接入Load恢复到最初的状态。若绘制电路比较复杂,可以用逻辑表达式表示。

左侧输入D接初始状态,若Load有效则输入D。

知识点总结:移位计数器、冗余状态、自恢复。

常考点另有:设计跳过某些数的计数器。

例6:[2022年课堂测试第28讲第3题]

解:

例7:[2020 期末 8]

第四题:组合电路设计

例8:[2021期末 3]

注:需 特别留意 “d”也就是无关项在电路化简中的处理。

第五题:紧凑真值表与抽象迭代设计

例9:[第三次小班课 4]

例10:利用2个3-8译码器和逻辑元件设计1个4-16译码器。

https://blog.csdn.net/Python_banana/article/details/102585209

例11:[第四次小班课 1]

注:本节知识考察综合性较强,需要掌握各种常见的元件和设计方法。

第六题:时序电路设计

例12:[2020 期末 4]

例13:[2021 期末4]

注:务必注意区分状态图及对应的状态表和状态机图及对应的状态表,两者在外观上差别很大。请自行整理它们的区别。两个例题都考察状态机图,请自行复习状态图。

状态机图务必记得左上角的input X,Y;output Z; default Z=0。

第七题:FPGA设计

例14:[2021期末 6]

概念解释:

配置位对于一个2-LUT,表示两个选择输入的数据输入。例如,对左上角的2-LUT,配置0111,则输出=ab'+a'b+ab=a+b。若配置0110则输出=a'b+ab'=a异或b。

配置位对于一个MUX,表示输出上面还是下面,配置0则输出上面,配置1则输出下面。

解题方法:对于需求先列出真值表画卡诺图,写输出方程;若存在两个输入关系紧密,出现在两个不同的逻辑表达式(特别注意异或)中,则考虑把它们配置在ab,用2-LUT输出对应的逻辑表达式;可编程逻辑块中自带了异或门、与门、或门,根据需要取用。

注:很多时候这类题目有不止一种解法。

第八题:HDL程序设计与模型机

例15:

module reg_group(we,clk,sr,dr,i,s,d);
input wire we,clk;
input wire [1:0] sr,dr;
input wire [7:0] i;
output wire [7:0] s,d;
reg [7:0] R0,R1,R2,R3;
initial
begin
  {R1,R2}=8'b00000000;
  R0=8'b00000001;
  R3=8'b00000111;
end
assign s=(sr==2'b00)?R0:
         (sr==2'b01)?R1:
         (sr==2'b10)?R2:
         (sr==2'b11)?R3:8'b00000000;
assign d=(dr==2'b00)?R0:
         (dr==2'b01)?R1:
         (dr==2'b10)?R2:
         (dr==2'b11)?R3:8'b00000000;
always@ (negedge clk)
begin
  if(we==1'b1)
  case(dr)
    2'b00: R0<=i;
    2'b01: R1<=i;
    2'b10: R2<=i;
    2'b11: R3<=i;
    default;
  endcase
end
endmodule

//注意:if else 和switch 不可以混合使用,同一.v文件只能使用一种。

//对于任意的if-else语句必须出现else,任意的switch语句必须出现default,否则会出现锁存器。

  • 25
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值