NYU-Processor-Design / nyu-amba

NYU Processor Design Team's interpretation of ARM's AMBA specifications.
Creative Commons Zero v1.0 Universal
1 stars 6 forks source link

NYU AMBA

github codecov

The Advanced Microcontroller Bus Architecture (AMBA) is an open-source standard engineered by ARM. It provides specifications for on-chip interconnection and management of various functional blocks on the SoC.

This repo implements the portions of the AMBA used by the NYU Processor design team, specifically AHB, APB, and an APB Bridge device, following the AMBA 5 specification

toplevel

Advanced High-performance Bus (AHB)

The AHB acts as the backbone of the chip, allowing efficient, fast connections on the chip. It supports multiple bus managers, but we only implement one for now.

Components

Manager

Subordinate

MUX

Decoder

Advanced Peripheral Bus (APB)

The APB is for low-power peripherals, facilitating low-bandwidth access control. It acts as the secondary bus to the AHB, providing interface for peripherals

APB Bridge

Further Reading

Rishyak's notes about each component are in the docs directory.

However, if you prefer to read from source[^note]:

[^note]: There are some mistakes in the documentation, such as misinterpreting the size of a "word" or switching out similar words, so use your best judgement when reading them. It seems like the person got increasingly tired, because these mistakes get worse the further you read.