Skip to content
/ CPU Public

This repository contains the design files for a CPU developed in Quartus made with undergraduated students of University of São Paulo

Notifications You must be signed in to change notification settings

A1RT0N/CPU

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Digital Systems CPU Project in Quartus

UNIVERSITY OF SÃO PAULO
INSTITUTE OF MATHEMATICAL AND COMPUTER SCIENCE

Augusto Cavalcante Barbosa Pereira, Ayrton da Costa Ganem Filho, Felipe Volkweis de Oliveira

CPU Work Report - Digital Systems

Table of Contents

  1. INTRODUCTION
  2. CPU COMPONENTS
    1. Register
    2. ALU
    3. ROM
    4. Counter
    5. Control Unit
  3. CPU

1. Introduction

The CPU (central processing unit) is the central processing unit of the computer. It is composed of an 8-bit counter, a ROM, a control unit, an ALU (arithmetic logic unit), and two registers, all associated with a clock.

In the implementation of this project, the clock was applied on the falling edge in the ROM, while on the rising edge was the counter and the registers.

2. CPU Components

2.1 Register

A register is formed by a set of flip flops. In the case of the work, a 4-bit parallel load register was used.

Figure 1. Circuit of a 4-bit parallel load register

Figure 2. Quartus simulation of the register in figure 1

2.2 ALU

Another part of the CPU is the ALU which performs the operations of addition, subtraction, division, and multiplication by 2.

Figure 3. ALU simulation in Quartus

In this case, CONT denotes the ALU operations: 00 is the sum between A and B, 01 is the subtraction between A and B, 10 is the multiplication of A by 2, 11 is the division of A by 2.

2.3 ROM

The next step is the ROM (Read Only Memory). It is responsible for sending the commands to the control unit.

Figure 4. ROM simulation in Quartus

2.4 Counter

Another component of the CPU is the counter, which was used a synchronous 8-bit counter. Its function is to inform at which memory address the CPU is to execute.

Figure 5. 8-bit synchronous counter circuit

Figure 6. Counter simulation in Quartus

2.5 Control Unit

Another important component of the CPU is the Control Unit. It serves to administer all the processes of the CPU (jump, load, etc.).

Figure 7. Control unit circuit

Figure 8. Control unit simulation in Quartus

3. CPU

Thus, using the previously discussed components, we built the CPU presented below.

Figure 9. CPU circuit

Figure 10. CPU simulation

About

This repository contains the design files for a CPU developed in Quartus made with undergraduated students of University of São Paulo

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published