Advanced Search
Search Results
23 total results found
Vivado Simulation and Synthesis Tutorial
1.3 Vivado Tutorial For this tutorial, we will use this code for reference : LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY AND_GATE IS PORT ( A : IN STD_LOGIC; B : IN STD_LOGIC; Y : OUT STD_LOGIC ); END AN...
ModelSim Installation Tutorial
Quartus Prime Installation Tutorial
1.1 Quartus Prime Explanation Intel Quartus Prime is a comprehensive software suite from Intel used for designing, synthesizing, and programming programmable logic devices (PLDs), such as Field-Programmable Gate Arrays (FPGAs) and Complex Programmable Logic D...
Vivado Installation Tutorial
1.1 Vivado Explanation Vivado is an Integrated Design Environment (IDE) developed by Xilinx (now AMD) used for designing, simulating, and implementing digital circuits on FPGAs (Field-Programmable Gate Arrays). It serves as the primary software tool to take a...
ModelSim Simulation Tutorial
Quartus Prime Synthesis Tutorial
1.3 Quartus Prime Tutorial For this tutorial, we will use this code for reference : LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY AND_GATE IS PORT ( A : IN STD_LOGIC; B : IN STD_LOGIC; Y : OUT STD_LOGIC ); ...
1. Introduction to VHDL
1.1 What is VHDL VHDL is an acronym for VHSIC HDL or, more completely, Very High-Speed Integrated Circuit Hardware Description Language. VHDL is a language used to describe hardware, so its writing style cannot be equated with high/low-level programming langu...
2. Dataflow Style in VHDL
2.1 What is Dataflow Style The Dataflow style is built on concurrency because the central idea is to model the system as a set of concurrent operations on signals, which directly reflects the physical reality of hardware. In any integrated circuit, all compon...
1. Understanding Merge Sort
What is Merge Sort? Merge Sort is an efficient, comparison-based sorting algorithm that uses a "divide and conquer" strategy. In simple terms, it repeatedly breaks down a list into several sub-lists until each sub-list contains only one item (which is consider...
2. Merge Sort in C++
This section explains how the "divide and conquer" strategy of Merge Sort is implemented in C++. The logic is split into two primary functions: mergeSort() which handles the recursive division, and merge() which handles the conquering and sorting. The C++ Code...
3. Understanding Quick Sort
What is Quick Sort? Quick Sort is a highly efficient, comparison-based sorting algorithm that also uses a "divide and conquer" strategy. It is one of the most widely used sorting algorithms due to its fast average-case performance. The core idea is to select a...
4. Lomuto Quick Sort in C++
This section explains how the "divide and conquer" strategy of Quick Sort is implemented in C++. The logic is split into two primary functions: quickSort() which handles the recursive division, and partition() which rearranges the array using the popular Lomut...
5. Hoare Quick Sort in C++
This section explains how the "divide and conquer" strategy of Quick Sort is implemented in C++. The logic is split into two primary functions: quickSort() which handles the recursive division, and partition() which rearranges the array using the classic Hoare...
1. Structural Programming in VHDL
1.1 Structural Style Structural Style Programming is an approach in VHDL that allows designers to create digital circuits by using basic components connected to each other to form a more complex system. In this approach, a circuit is represented as a collectio...
2. Generic Map
2.1 Generic Map Explanation A generic map is the process of associating a generic value in an entity with a value in the architecture. Generics are parameters used to configure a component. Some important points: Generic: A parameter to change the characteris...
3. VHDL Modularity
3.1 VHDL Modularity Explanation Example: 4-bit Ripple Carry Adder using 4 Full Adders. A Ripple Carry Adder adds binary numbers with a chained carry. 3.1.1 Stage 1: Full Adder entity Full_Adder is port ( A, B, Cin: in std_logic; Sum, Cout: out std_lo...
4. Array and Type
4.1 Array and Type in VHDL 4.1.1 Array An array is a collection of elements of the same data type. It can be one-dimensional or multi-dimensional. 4.1.2 Type A type is a new data definition. It can be a built-in type (std_logic, integer) or a user-derived type...
1. Introduction: The Role of the Control Unit
1.1 Definition: The Control Unit (CU) is the core component of a computer's Central Processing Unit (CPU) that directs its operation. Often compared to the "brain" or "central nervous system" of the computer, the CU does not execute program instructions itse...
2. The Control Unit Dilemma: Hardwired vs. Microprogrammed
The fundamental problem of generating control signals, introduced in Section 1.0, is solved by two distinct design philosophies. This choice between a "hardwired" and a "microprogrammed" control unit represents a classic engineering trade-off between speed and...
3. Principles of Microprogrammed Control
This section details the core theory of the microprogrammed control unit, the flexible alternative to the hardwired FSM. This approach fundamentally changes the design from a complex, fixed logic circuit to a simple, programmable one. 3.1 Core Concept: The "...