Digital Logic Circuits
Learn how digital circuits select inputs, store state and move data through concepts and hands-on RTL examples.
你将学到什么
- Explain combinational circuits using binary numbers, gates and Boolean algebra
- Calculate adder, comparator and signed arithmetic boundary cases
- Implement a MUX, counter and shift register and compare waveforms
- Complete a small design using state machines, timing constraints and a verification plan
开始之前
可直接在浏览器中阅读概念课程。实验需要 Digital Design Studio 桌面项目及运行权限,已提供源代码和输入文件。
安装与首次启动 ↗课程大纲
- Foundations of digital logic
- Binary and hexadecimal概念
Represent the same value in binary and hexadecimal.
- Gates and truth tables概念
Compare the output rules of AND, OR, NOT and XOR.
- Boolean algebra and De Morgan’s laws概念
Check whether different expressions produce the same output.
- Decoders and enable signals概念
Turn a binary address into one active output.
- Signals and selection
- Bits, signals and ports概念
Identify inputs, outputs and the meaning of one-bit values.
- Specify the selection with a truth table概念
List every input combination and define its expected output.
- The MUX and its observation register概念
Distinguish a combinational output from a sampled output.
- Write and run the RTL
- Describe a MUX with a conditional expression概念
Connect the select signal and data inputs in RTL.
- MUX simulation lab实验
Compare outputs using the provided source and input files.
- Interpret and check
- Input changes and sampling instants概念
Track y and sampled_y before and after a clock edge.
- Test the cases that reveal mistakes概念
Choose cases that reveal reversed selection and sampling errors.
- MUX knowledge check测验
Check your understanding of selection and storage.
- Arithmetic circuits and state
- Half adders and full adders概念
Compute sum and carry separately, then chain them.
- Signed values and overflow概念
Interpret the same bits as unsigned and two’s complement.
- Comparators and boundary conditions概念
Connect equality and magnitude comparisons to boundary tests.
- Flip-flops and clock enable概念
Specify the priority of reset, enable and hold.
- Numbers and time
- Bit width and binary values概念
Read the values and bit positions of a two-bit number.
- Clock edges and state概念
Separate input changes from register updates.
- The counter and synchronous reset概念
Compute the next state from the previous state.
- Update state and run the lab
- Compute the next value from the old value概念
Read nonblocking assignments and reset priority in the code.
- Counter simulation lab实验
Observe incrementing and wraparound after reset.
- Boundaries and debugging
- What follows the maximum value?概念
Calculate addition beyond the register width.
- Diagnose reset and counting errors概念
Check the initial value, reset and first edge in order.
- Counter knowledge check测验
Check bit width and wraparound behavior.
- Bits and data flow
- Vector direction and bit indices概念
Read q[2:0] and identify the positions selected by a slice.
- Read a serial input over time概念
Organize a stream of one-bit inputs into a timeline.
- State changes in a shift register概念
Move the previous bits and insert the new input.
- Concatenation and the lab
- Slices and concatenation概念
Trace how concatenated bits map into the new register.
- Shift-register simulation lab实验
Trace the serial input alongside q.
- Latency and debugging
- Follow a bit to the output概念
Count the edges as one input bit moves through the stages.
- Check direction, reset and input order概念
Use a single-bit pattern to expose reversed connections.
- Shift-register knowledge check测验
Compute the next state using the pre-update value.
- Connect and verify circuits
- Combinational delay and timing budgets概念
Distinguish functional simulation from timing verification.
- Design a small state machine概念
Describe state, input and next state in a transition table.
- Verification plans and failure traces概念
Define expected results for normal, boundary and reset cases.
- Capstone: serial pattern detector概念
Design and check a state machine that detects the pattern 101.