(EN) 1. Key Concepts - coffeebrain/Codesign_HW_SW GitHub Wiki
Prerequisites
The following is a list of the concepts that should be familiar to the reader and that will no be explained in this Wiki.
- Basic bash commands.
- Basic knowledge of digital systems.
- Hardware Description Languages (HDL) - Verilog will be used in this guide.
- C/C++ programming language.
- Basic concepts of make y Makefile
1.1 DE0 Nano SoC
The DE0-Nano-SoC board is based on the Cyclone V, which are low-power consumption, low-cost, high-speed and high-bandwidth IC devices integrating an FPGA device with an embedded HPS ARM processor enabling its use in different kinds of projects.
1.2 Boot Stages
The booting process is the sequence that is followed at a system startup when is turned on. Every system has its own boot flow depending on the hardware, operating system and required configuration. This process can be handle from many different devices called boot devices as will be a hard disk drive, a USB, a CD, or even an SD card.
1.3 Linux Kernel
The Linux kernel is a free and open-source, monolithic, modular, multitasking and Unix-like operating system kernel.
1.4 Standard Interfaces
The Standard Interfaces are used in components to interface with Platform Designer interconnect.
1.5 Device Tree
The device tree is a data structure that describes the hardware components of a system in order for the operating system's kernel to get to know, use and manage them. Among this includes the CPUs, memories, buses and peripherals.
1.6 Intellectual Property (IP) components
An IP component is a custom user-defined hardware design block that is intended to be add to Platform Designer system.