History and Future of RISC-V

History and Future of RISC-V

In 2010, the Berkeley research team aimed to design a CPU. However, Intel’s licensing for x86 was very strict, ARM’s instruction set licensing was expensive, and MIPS, SPARC, and Open Power also required their respective company licenses. With limited options, the Berkeley research team decided to start from scratch to design a new instruction set. … Read more

Common Bus Types Explained

Common Bus Types Explained

Before discussing buses, we should first understand what a bus is. According to the complete definition from Baidu: A bus is a common communication line for transmitting information between various functional components of a computer. It is a transmission line composed of wires, categorized according to the type of information transmitted by the computer. In … Read more

FPGA-Based Multi-Channel UART/SPI Communication System

FPGA-Based Multi-Channel UART/SPI Communication System

1. Design Overview This design implements a multi-channel UART/SPI communication system, capable of one-to-many communication. The system can operate in UART mode or SPI mode. The reason I chose this topic is mainly that my current laboratory needs to write a fast communication system based on UART. This topic can help solidify my previously learned … Read more

Understanding UART, SPI, and I2C Communication Protocols

Understanding UART, SPI, and I2C Communication Protocols

UART, SPI, and I2C are common serial communication methods in embedded development. The underlying communication principles are not difficult, but many beginners struggle to learn them. Today, I will share some common low-level data transmission principles of these communication protocols. 1 UART Serial Communication UART: Universal Asynchronous Receiver/Transmitter. The UART interface is the most commonly … Read more

Realistic Animation Demonstrating I2C, SPI, and UART Communication

Realistic Animation Demonstrating I2C, SPI, and UART Communication

So far, protocols like I2C, SPI, and UART remain the most commonly used communication protocols in electronic embedded devices. In this article, we will analyze these three protocols to provide a clear and intuitive understanding of their functions, advantages, and limitations, supplemented with GIF animations. I2C Protocol I2C is a serial communication protocol commonly used … Read more

Introduction to SPI, UART, and I2C Serial Buses

Introduction to SPI, UART, and I2C Serial Buses

SPI (Serial Peripheral Interface) SPI is a high-speed, full-duplex, synchronous, serial communication bus with a 3-4 wire interface, operating in a master-slave mode, allowing multiple SPI devices to be interconnected. The SPI device that provides the SPI serial clock is the SPI master, while other devices are the SPI slaves. The SPI bus consists of … Read more

Comprehensive Guide to UART, SPI, and I2C Communication Protocols

Comprehensive Guide to UART, SPI, and I2C Communication Protocols

I2C Communication Protocol Basics 3.1 Introduction to Communication I²C (Inter-Integrated Circuit) is a serial communication bus designed by Philips in the early 1980s. It facilitates communication between motherboards, embedded systems, or mobile phones and peripheral devices. Due to its simplicity, it is widely used for communication between microcontrollers and sensor arrays, displays, IoT devices, EEPROMs, … Read more

Guide to Routing and Layout for UART, SPI, and I2C

Guide to Routing and Layout for UART, SPI, and I2C

This is a very basic article translated from PCB Hero. There is also a comparative article about these three buses that you can refer to: https://www.totalphase.com/blog/2021/12/i2c-vs-spi-vs-uart-introduction-and-comparison-similarities-differences/ Differences Between I2C, SPI, and UART and Their Layout Guidelines MCUs from 8-bit to 32-bit will use at least one of these protocols along with GPIO to achieve programmability … Read more

UART Serial Port Debugging Guide

UART Serial Port Debugging Guide

0x00 Introduction Recently, I have been learning about debugging hardware interfaces such as optical modems, routers, and cameras, but I did not make any records. Therefore, I will briefly document the learning process here for future reference. 0x01 Required Tools 1. TTL to USB converter 2. Multimeter 3. TTL to USB converter 4. SecureCRT connection … Read more

Understanding UART, I2C, SPI, and 1-Wire Communication Interfaces

Understanding UART, I2C, SPI, and 1-Wire Communication Interfaces

1. Qiu Qianzhang’s Lightness Skill: UART In the Legend of the Condor Heroes, Qiu Qianzhang says that UART is like my lightness skill, allowing me to float over water to cross rivers. To communicate (cross the river), set up hidden stakes in advance, and during the crossing, maintain a fixed step based on the distance … Read more