Home
Β© 2025 Maktab-e-Digital Systems Lahore
Licensed under the Apache 2.0 License.
Overview
A hardware module that implements the Controller Area Network protocol for reliable serial communication between multiple devices in embedded systems.
Top-Level Block Diagram
Key Features
-
CAN 2.0A/B compliant β Supports standard (11-bit) and extended (29-bit) frames.
-
Multi-master communication with non-destructive arbitration.
-
Accurate bit timing with programmable synchronization segments.
-
Comprehensive error detection β bit, stuff, form, ACK, and CRC errors.
-
Priority and filtering module β Ensures high-priority messages are transmitted first and unwanted frames are ignored.
-
Automatic error handling with active, passive, and bus-off states.
-
Built-in CRC generation and checking for data integrity.
-
Modular design β transmitter, receiver, bit timing, CRC, and error units.
-
ACK slot handling and bit stuffing/destuffing support.
π§© Project Structure
CAB-Bus/
β
βββ docs/ # Project documentation files
| βββimages_design
β βββ home.md
β βββ installation.md
β βββ API_Refernece.md
β βββ contributing.md
β βββ index.md
β
βββ rtl/ # SystemVerilog source code
β βββ can_top_module.sv
β βββ can_transmitter.sv
β βββ can_receiver.sv
β βββ can_timing.sv
β βββ can_crc.sv
β βββ can_error_handling.sv
β βββcan_arbitartion.sv
β βββ can_filtering.sv
β βββcan_tx_priorty.sv
β
βββ tb/ # Testbench and verification
β βββ tb_can_top.sv
β βββ tb_can_transmitter.sv
β βββ tb_can_receiver.sv
β βββ tb_can_timing.sv
β βββ tb_can_error_handler.sv
β βββ tb_can_arbitration.sv
β βββ tb_can_filtering.sv
β βββ tb_can_tx_priorty.sv
β
βββ README.md
Licensing
Licensed under the Apache License 2.0 Copyright Β© 2025 Maktab-e-Digital Systems Lahore