差别
这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录 前一修订版 后一修订版 | 前一修订版 | ||
digital_logic_tutorial [2022/03/21 08:44] gongyu [1 我们身处数字逻辑的世界] |
digital_logic_tutorial [2022/03/21 10:36] (当前版本) gongyu [4 组合逻辑及电路实现] |
||
---|---|---|---|
行 3: | 行 3: | ||
### 1 我们身处数字逻辑的世界 | ### 1 我们身处数字逻辑的世界 | ||
- [[why2learndigitalcircuits|我们身处的“数字逻辑”世界]] | - [[why2learndigitalcircuits|我们身处的“数字逻辑”世界]] | ||
- | - 数制及编码 | + | - 数字逻辑世界的信息表征 - 数制及编码 |
* 学习要点: | * 学习要点: | ||
* 了解数制、[[code_system|码制]]的基本概念; | * 了解数制、[[code_system|码制]]的基本概念; | ||
* 掌握常用数制(二进制、八进制、十进制、十六进制)及其转换方法; | * 掌握常用数制(二进制、八进制、十进制、十六进制)及其转换方法; | ||
* 了解常用的二进制码(自然二进制码、循环码、奇偶校验码)及BCD码(8421BCD码、5421BCD码、余3BCD码) | * 了解常用的二进制码(自然二进制码、循环码、奇偶校验码)及BCD码(8421BCD码、5421BCD码、余3BCD码) | ||
- | |||
* 内容: | * 内容: | ||
- [[how2digital|认知世界从识数开始]] | - [[how2digital|认知世界从识数开始]] | ||
行 18: | 行 17: | ||
- [[https://www.electronicshub.org/octal-number-system/|8进制系统]] | - [[https://www.electronicshub.org/octal-number-system/|8进制系统]] | ||
- [[https://www.electronicshub.org/error-correction-and-detection-codes/|纠错和检测代码]] | - [[https://www.electronicshub.org/error-correction-and-detection-codes/|纠错和检测代码]] | ||
- | - [[learn2usefpga|如何使用FPGA]] | ||
- | - [[led|与LED相关的项目]] | ||
- | * 点亮LED - LED的控制及开关、按键的使用 | ||
- | * [[leds_on_stepboard|小脚丫FPGA板上的led及控制资源]] | ||
- | * [[[one_led_on|点亮一颗LED]] | ||
- | * [[multi_leds_on|点亮多颗LED]] | ||
- | * [[leds_on_sw|用开关、按键控制多颗LED]] | ||
- | * [[rgb_led_on_sw|用开关控制三色灯]] | ||
- | * [[led_comblogic|用LED体会组合逻辑]] - 通过不同按键的输入控制不同LED的输出来体会组合逻辑的基本构成 | ||
- | * [[7-seg_disp_verilog|7段数码管显示控制]] - 7段数码管的显示控制原理及支持的组合逻辑功能 | ||
- | * [[hb_led|心跳灯]] - 时序逻辑、计数器 | ||
- | * [[waterfall_led|流水灯]] - 时序逻辑、计数器 | ||
- | * [[breath_led|呼吸灯]] - PWM | ||
- | * [[rgb_led|三色灯]] - PWM | ||
- | * [[traffic_led_verilog|交通灯]] - 状态机 | ||
- | * [[matrix_led|LED阵列]] - FPGA来控制8*8灯板显示字符和图案 | ||
- | ### 2 逻辑代数及基本单元 | + | |
+ | ### 2 逻辑代数及基本数字电路单元 | ||
学习要点:: | 学习要点:: | ||
行 65: | 行 49: | ||
- [[https://www.electronicshub.org/k-map-karnaugh-map/|卡诺图]] | - [[https://www.electronicshub.org/k-map-karnaugh-map/|卡诺图]] | ||
- | ### 3 组合逻辑电路 | + | ### 3. HDL和FPGA |
+ | - [[learn2usefpga|如何使用FPGA]] | ||
+ | - [[led|与LED相关的项目]],在后面的学习中通过不同的案例来实现不同的LED功能 | ||
+ | * 点亮LED - LED的控制及开关、按键的使用 | ||
+ | * [[leds_on_stepboard|小脚丫FPGA板上的led及控制资源]] | ||
+ | * [[[one_led_on|点亮一颗LED]] | ||
+ | * [[multi_leds_on|点亮多颗LED]] | ||
+ | * [[leds_on_sw|用开关、按键控制多颗LED]] | ||
+ | * [[rgb_led_on_sw|用开关控制三色灯]] | ||
+ | * [[led_comblogic|用LED体会组合逻辑]] - 通过不同按键的输入控制不同LED的输出来体会组合逻辑的基本构成 | ||
+ | * [[7-seg_disp_verilog|7段数码管显示控制]] - 7段数码管的显示控制原理及支持的组合逻辑功能 | ||
+ | * [[hb_led|心跳灯]] - 时序逻辑、计数器 | ||
+ | * [[waterfall_led|流水灯]] - 时序逻辑、计数器 | ||
+ | * [[breath_led|呼吸灯]] - PWM | ||
+ | * [[rgb_led|三色灯]] - PWM | ||
+ | * [[traffic_led_verilog|交通灯]] - 状态机 | ||
+ | * [[matrix_led|LED阵列]] - FPGA来控制8*8灯板显示字符和图案 | ||
+ | |||
+ | ### 4 组合逻辑及电路实现 | ||
知识要点: | 知识要点: | ||
* 掌握SSI组合电路的分析方法及双轨输入条件下的设计方法 | * 掌握SSI组合电路的分析方法及双轨输入条件下的设计方法 | ||
行 117: | 行 119: | ||
* 组合逻辑的时序分析 | * 组合逻辑的时序分析 | ||
* [[https://www.electronicshub.org/introduction-to-combinational-logic-circuits/|组合逻辑电路介绍]] | * [[https://www.electronicshub.org/introduction-to-combinational-logic-circuits/|组合逻辑电路介绍]] | ||
+ | * 项目 - 按键控制的7段数码管显示 | ||
- | + | ### 5. 时序逻辑及电路实现 | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | ### 5. 时序逻辑电路 | + | |
- 时序逻辑介绍 | - 时序逻辑介绍 | ||
- 时序逻辑电路概述 | - 时序逻辑电路概述 | ||
行 142: | 行 139: | ||
- [[https://www.electronicshub.org/flip-flop-conversions/|触发器转换]] | - [[https://www.electronicshub.org/flip-flop-conversions/|触发器转换]] | ||
- [[https://www.electronicshub.org/flip-flop-applications/|触发器应用]] | - [[https://www.electronicshub.org/flip-flop-applications/|触发器应用]] | ||
+ | |||
+ | ### 6. 脉冲产生、定时、计数 | ||
+ | * 脉冲/时钟产生 | ||
+ | * LC震荡 | ||
+ | * 555定时器 | ||
+ | * 晶体/晶振 | ||
+ | * 计数器/定时器 | ||
+ | * 分频器 | ||
+ | * 2分频 | ||
+ | * 奇数分频 | ||
+ | * 任意频率 | ||
+ | * 项目 - 用12MHz时钟产生一个可调频率( - 100KHz)、可调占空比(精度为1%)的PWM信号 | ||
+ | * 参考资料 | ||
+ | * [[https://www.electronicshub.org/introduction-to-counters/|Introduction to Digital Counters]] | ||
+ | * [[https://www.electronicshub.org/synchronous-counter/|Synchronous Counters]] | ||
+ | * [[https://www.electronicshub.org/asynchronous-counter/|Asynchronous counters or Ripple counters]] | ||
+ | * [[https://www.electronicshub.org/decade-counterbcd-counter/|BCD or Decade Counter]] | ||
+ | * [[https://www.electronicshub.org/ring-counters-johnson-ring-counter/|Johnson Ring counter]] | ||
+ | * [[https://www.electronicshub.org/ic-4017-decade-counter/|4017 Decade Counter and LED Sequencer]] | ||
+ | |||
+ | ### 7. 状态机和控制 | ||
+ | ### 8. 总线 | ||
+ | * 为什么要总线? | ||
+ | * 并行总线 | ||
+ | * 优点/局限 | ||
+ | * 8位/16位/32位 | ||
+ | * 串行总线 | ||
+ | * 优点/局限 | ||
+ | * 同步/异步、单工/双工 | ||
+ | * 常用总线 | ||
+ | * SPI | ||
+ | * I2C | ||
+ | * UART | ||
+ | * 项目 - 编写同PC通信的UART逻辑 | ||
- | ### 6. 计数器 | + | ### 8. 存储器的应用 |
- | * [[https://www.electronicshub.org/introduction-to-counters/|Introduction to Digital Counters]] | + | * 概述 |
- | * [[https://www.electronicshub.org/synchronous-counter/|Synchronous Counters]] | + | * ROM |
- | * [[https://www.electronicshub.org/asynchronous-counter/|Asynchronous counters or Ripple counters]] | + | * RAM |
- | * [[https://www.electronicshub.org/decade-counterbcd-counter/|BCD or Decade Counter]] | + | * 双端口RAM |
- | * [[https://www.electronicshub.org/ring-counters-johnson-ring-counter/|Johnson Ring counter]] | + | * FIFO |
- | * [[https://www.electronicshub.org/ic-4017-decade-counter/|4017 Decade Counter and LED Sequencer]] | + | * 项目 - 制作一个简单的高速逻辑分析仪,通过UART来显示在电脑屏幕上 |
+ | ### 9. 数字逻辑和模拟世界的连接 | ||
+ | * 概述 | ||
+ | * 参考基准 | ||
+ | * 量化精度 | ||
+ | * 转换速率 | ||
+ | * DAC | ||
+ | * 并行 | ||
+ | * 权电阻 | ||
+ | * R-2R | ||
+ | * 串行 - PWM | ||
+ | * 项目 - 结合PWM+权电阻实现一个高精度/高频率DAC | ||
+ | * ADC | ||
+ | * 并行 | ||
+ | * 串行 - Sigma Delta | ||
+ | * 项目 - 利用比较器+PWM实现ADC功能 | ||
## 数字系统设计部分 | ## 数字系统设计部分 | ||
- | ### 7. 运算方法和运算部件 | + | ### 10. 运算方法和运算部件 |
* 基本运算部件 | * 基本运算部件 | ||
* 定点数运算 | * 定点数运算 | ||
行 162: | 行 208: | ||
* FPGA功能块 | * FPGA功能块 | ||
- | ### 8. 指令系统 | + | ### 11. 指令系统 |
在机器语言程序所运行的计算机硬件和上层软件之间的一座桥梁,是软件和硬件之间接口的完整定义 | 在机器语言程序所运行的计算机硬件和上层软件之间的一座桥梁,是软件和硬件之间接口的完整定义 | ||
* 指令系统概述 | * 指令系统概述 | ||
行 168: | 行 214: | ||
* 指令系统实例 - RISC-V架构 | * 指令系统实例 - RISC-V架构 | ||
- | ### 9. 中央处理器 | + | ### 12. 中央处理器 |
* CPU概述 | * CPU概述 | ||
* 单周期CPU设计 | * 单周期CPU设计 | ||
行 176: | 行 222: | ||
* 高级流水线技术 | * 高级流水线技术 | ||
- | ### 10. 存储器层次结构 | + | ### 13. 存储器层次结构 |
* 存储器概述 | * 存储器概述 | ||
* 主存储器的基本结构 | * 主存储器的基本结构 | ||
行 182: | 行 228: | ||
* 虚拟存储器 | * 虚拟存储器 | ||
- | ### 11. 系统互连与输入、输出 | + | ### 14. 系统互连与输入、输出 |
* 外设与CPU和主存的互连 | * 外设与CPU和主存的互连 | ||
* I/O接口和I/O端口 | * I/O接口和I/O端口 | ||
* 输入、输出控制方式 | * 输入、输出控制方式 | ||
* I/O子系统中的I/O软件 | * I/O子系统中的I/O软件 | ||
- | * Introduction to Sensors and Transducers | + | * 传感器和换能器 |
- | * Position sensors | + | * 位置感知 |
- | * Temperature sensors | + | * 温度感知 |
- | * Light sensors | + | * 光感知 |
- | * InfraRed (IR) sensor (Obsatcle Detection sensor) | + | * 红外传感(障碍物检测) |
- | * Touch sensor | + | * 触摸感知 |
- | * Electromechanical Relay | + | * 继电器 |
- | * Electromechanical Relay-1 | + | * 直流电机 |
- | * Electromechanical Relay-2 | + | * 声音换能 |
- | * DC motors | + | |
- | * Sound Transducers | + | |
### 12. 控制与通信 | ### 12. 控制与通信 | ||
行 208: | 行 252: | ||
#### 控制系统 | #### 控制系统 | ||
- | * Open loop System or Non-feedback system | + | * 开环系统或无反馈系统 |
- | * Closed loop systems or Feedback systems | + | * 闭环系统或反馈系统 |
- | * Negative-feedback-system | + | * 负反馈系统 |
- | * Electronic System | + | * 电子系统 |
- | * Negative Feedback Circuits | + | * 负反馈电路 |
#### 通信系统 | #### 通信系统 |