Wiznet makers

ruilixin6

Published August 04, 2026 ©

74 UCC

0 VAR

0 Contests

0 Followers

0 Following

Master Multi‑Pin Single‑Wire Time‑Division Multiplexing: Dive Into Bus Communication Fundamentals

Brief intro to computer BUS: origin from ENIAC, modern bus definition, data‑address‑control buses and master‑slave roles.

COMPONENTS
PROJECT DESCRIPTION

Tweet

1. The Historical Origin of the BUS Bus

Early computers were bulky and had complex wiring, with all data transmitted via physical cables, as shown in the following figure:
The "programs" on the ENIAC were defined by the states of its patch cables and switches, a far cry from the stored-program electronic machines that came later. Once a program was ready to be run, it had to be mechanically set into the machine through manual resetting of plugs and switches. The programmers of the ENIAC were women who had been trained as mathematicians.
 
This is the world's first programmable general-purpose computer, ENIAC, which was born at the Un
This is the world's first programmable general-purpose computer, ENIAC, which was born at the University of Pennsylvania in the US on February 14,1946. ENIAC measures 30.48 meters in length, 6 meters in width and 2.4 meters in height, covering an area of approximately 170 square meters, equipped with 30 operation consoles, weighing 30 long tons, and consisting of 17,468 vacuum tubes, 7,200 crystal diodes, 1,500 relays, 70,000 resistors, 10,000 capacitors, 1,500 contactors and more than 6,000 switches.It can be seen that its wiring is in a mess, which is extremely troublesome for maintenance and repair.
In the subsequent development of computers, people replicated these large bundles of messy cables in parallel onto a common busbar; this parallel wire array with multiple hardware connections is called a "bus", denoted as BUS (the naming of the word BUS is related to the Latin "omnibus", meaning "for all"). They are also referred to as " digit trunk ", named after power buses or busbars. These buses are used to transmit data between the CPU, memory, and input/output devices. There is almost always one dedicated bus for memory, and one or more separate buses for peripheral devices.These are accessed via separate instructions, with completely different timings and protocols.
The definition of BUS in WikLingo:
Neatly arranged wire harnesses

2. Modern Meaning of BUS Bus

In modern computer architecture, a bus (BUS) is a communication system that transfers data between internal components of a computer or between computers. This definition covers all relevant hardware components (wires, optical fibers, etc.) and software, including Communication Protocol. A computer system generally consists of three main parts: the Central Processing Unit (CPU) that processes data, the memory that stores programs and data to be processed, and I/O (Input/Output) devices that act as peripherals for communication with the outside world.The bus is a common circuit responsible for high-speed data transmission among these three components. Take the computers we use as an example: multi-core CPUs, DDR4 SDRAM for memory, Hard Disk Drive, displays, keyboards and mice all communicate with the CPU via the bus.
Bus connection architecture diagram between CPU and external components in a computer system
A computer connects its various components via the system bus, enabling information exchange between the internal components of a microcomputer. Under normal circumstances, the signals provided by the CPU need to pass through bus forming circuits to form the system bus. According to the type of information transmitted, the computer's bus can be divided into data bus, address bus and control bus, which are respectively used to transmit data information, address information and control signals. It can be considered that a computer takes the CPU as the core, with all other components "hanging" on the system bus connected to the CPU.
Connection architecture diagram of CPU, memory and I/O devices

3. Features of the BUS bus

The above is the schematic diagram of DDR3, from which we can see that there are three sets of buses, and each of these three sets is composed of multiple wires.
Going back to the computer example we listed earlier, a single wire connects a corresponding data pin of each device together, so this wire becomes a data line;all devices take turns occupying and controlling this data line to transmit data in a time-division manner, so this data line becomes a data bus; there are multiple such data lines, which form multiple data buses, and multiple data buses are referred to as a group (bundle) of data buses. The definitions of the control bus and address bus are similar.
Architecture Diagram of Computer System Bus and Peripheral Interface Connection
For the central processing unit (CPU) of a computer to control and manage peripheral devices such as memory, display, keyboard, mouse and hard disk, all data lines need to be connected to one common set of lines, all address lines to another set, and all control lines to a third set, which forms the data bus, address bus and control bus respectively, and these three buses are independent of one another.
Each peripheral device takes turns in time-sharing to occupy the data bus and the central processor for data transmission, takes turns in time-sharing to occupy the address bus and the central processor for address transmission, and takes turns in time-sharing to occupy the control bus and the central processor for control signal transmission.
In the scenario of bus communication, the devices participating in communication are clearly divided into two core roles:
Master: A device that actively initiates bus communication requests, responsible for sending requests for address transmission and data transmission, and also holds the control right to occupy the bus; for example, the CPU of the Raspberry Pi Pico acts as the master when communicating with on-chip peripherals such as UART and SPI.
Slave device: A device that passively responds to bus communication requests and never initiates communication on its own; it only performs data interaction with the host after being selected by the host. For example, the UART peripheral of Pico and the external SPI sensor both act as slave devices when communicating with the CPU.
Based on the above content, we can summarize the features of the BUS bus as follows:
A bus is a kind of wire used for interconnection and signal transmission shared by multiple devices;
The bus can be applied to scenarios of one master with multiple slaves, multiple masters with one slave, and multiple masters with multiple slaves;
During bus communication, whether it is a master device or a slave device, only one device can occupy and control the bus to send data externally, and one device can receive data from outside at the same moment, that is, data transmission is carried out in a one-transmit-one-receive mode (certain broadcast information, handshake protocols, etc. may support one-transmit-multiple-receive).
It can be summarized in eight words: multi-pin to one line, time-division to reuse, which means that the pins of the same type of function of multiple devices are interconnected, and each device occupies the bus for data transmission in separate time slots.
Documents
Comments Write