Format of Mini Project Report
Format of Mini Project Report
Bachelor of Technology
in
Electrical Engineering
Submitted by
Shyama Poddar(210091020058)
JSS MAHAVIDYAPEETHA
JSS Academy of Technical Education, Noida
Department Of Electrical Engineering
C-20/1, Sector – 62, Noida- 201301
TABLE OF CONTENTS
Page No.
DECLARATION.......................................................................................................................ii
CERTIFICATE ………............................................................................................................iii
ACKNOWLEDGEMENT…....................................................................................................iv
ABSTRACT…..........................................................................................................................v
INTRODUCTION......................................................................................................................1
i
DECLARATION
I hereby declare that this submission is my own work and that, to the best of my
knowledge and belief, it contains no material previously published or written by
another person nor material which to a substantial extent has been accepted for
the award of any other degree or diploma of the university or other institute of
higher learning except where due acknowledgement has been made in the text.
Signature of Student-:
ii
CERTIFICATE
This is to certify that 5th Semester Mini Project/ Internship Report titled
“Design and Implementation of RAM and 16 Bit ALU using
HDL(Hardware Description Language) ” which is submitted by Shyama
Poddar (2100910200058) in partial fulfillment of the requirement for the award
of degree B. Tech in Department of Electrical Engineering of J.S.S Academy of
Technical Education, Noida, affiliated to Dr. A.P.J. Abdul Kalam University,
Lucknow is a record of the candidates’ own work carried out by them under
my supervision. The matter embodied in this thesis is original and has not been
submitted for the award of any other degree.
Signature of Supervisor
ACKNOWLEDGEMENT
iii
We have made efforts in this project. However, it would not have
been possible without the kind support and help of many
individuals and organizations.I would like to extend my sincere
thanks to all of them.
iv
ABSTRACT
An arithmetic logic unit (ALU) is a digital circuit used to perform arithmetic
and logical operations. It represents the fundamental component of a computer's
CPU.
This project, titled "Design and Implementation of 16-bit RAM and ALU,"
delves into the intricacies of creating a robust and efficient memory and
arithmetic logic unit (ALU) system with a focus on a 16-bit architecture. The
primary objective of this endeavor is to develop a reliable Random Access
Memory (RAM) module and Arithmetic Logic Unit, essential components in
digital computing systems.
v
Introduction
The focus of this project is building an ALU chip and RAM chip starting from a nand
gate. To achieve this basic logic gates will be constructed from the nand gate. Using
these basic logic gates, 16 bit variant of the basic logic gates are constructed along
with multiplexor , demultiplexor and their 16 bit variants. Using all these chips, the
ALU is constructed which is an integral part of the Von Neumann computer
architecture.
1
Block diagram for RAM
2
Combinational Chip Set-1
A typical computer architecture is based on a set of elementary logic gates like And,
Or, Mux, etc., as well as their bit-wise versions And16, Or16, Mux16, etc. (assuming
a 16-bit machine). These gates form the elementary building blocks from which we
will later construct the computer's CPU and RAM.
Circuit Representation:
3
HDL Code:
Circuit Representation:
3. Chip name: Or
Description: Or gate
Functionality: out = 1 if (a == 1 or b == 1)
0 otherwise
HDL Code:
Circuit Representation:
4
4. Chip name: Xor
Description: Xor gate
Functionality: out = not (a == b)
HDL Code:
Circuit Representation:
HDL Code:
5
Circuit Representation:
Circuit Representation:
6
7. Chip name: Not16
Description: 16-bit Not gate
HDL Code:
7
Circuit Representation:
HDL Code:
Circuit Representation:
8
9. Chip name: Or16
Description: 16-bit Or gate
HDL Code:
9
Circuit Representation:
HDL Code:
10
Functionality: * out = a if sel == 00
b if sel == 01
c if sel == 10
d if sel == 11
HDL Code:
Circuit Representation:
HDL Code:
11
Circuit Representation:
Functionality:
HDL Code:
Circuit Representation:
12
14.Chip name: DMux8Way
Circuit Representation:
13
14
Combinational Chip Set-2
HDL Code:
Circuit Representation:
15
2.Chip name: FullAdder
Description: Full Adder
Functionality: Computes the sum of three bits
HDL Code:
Circuit Representation:
16
Description: Arithmetic Logic Unit
Functionality: * Computes one of the following functions:
* x+y, x-y, y-x, 0, 1, -1, x, y, -x, -y, !x, !y,
* x+1, y+1, x-1, y-1, x&y, x|y on two 16-bit inputs,
* according to 6 input bits denoted zx,nx,zy,ny,f,no.
* In addition, the ALU computes two 1-bit outputs:
* if the ALU output == 0, zr is set to 1; otherwise zr is set to 0;
* if the ALU output < 0, ng is set to 1; otherwise ng is set to 0.
*/
HDL Code:
17
Circuit Representation:
18
Sequential Chip Set
19
1.Chip name: Bit
HDL Code:
Circuit Representation:
HDL Code:
20
Circuit Representation:
21
Description: 16-bit / 8-register memory
22
Circuit Representation:
23
HDL Code:
Circuit Representation:
24
25
5.Chip name: RAM512
Functionality: Memory of 512 registers, each 16 bit-wide. Out holds the value:
- stored at the memory location specified by address. If load==1, then
- the in value is loaded into the memory location specified by address
- (the loaded value will be emitted to out from the next time step onward)
HDL Code:
26
Circuit Representation:
27
HDL Code:
Circuit Representation:
28
Description: 16-bit / 16384-register memory
Functionality: Memory of 16K registers, each 16 bit-wide. Out holds the value:
-stored at the memory location specified by address. If load==1, then
-the in value is loaded into the memory location specified by address
(the loaded value will be emitted to out from the next time step onward).
HDL Code:
Circuit Representation:
29
The Elements of Computing Systems: Building a Modern Computer from First Principles :Book by
Noam Nisan and Shimon Schocken
DESIGN AND IMPLEMENTATION OF 8 BIT AND 16 BIT ALU USING VERILOG
LANGUAGE MANIT KANTAWALA Dept. of Electronic & Communication Global Institute of
Technology, Jaipur
A Synthesis Course in Hardware Architecture, Compilers, and Software Engineering :Shimon
Schocken, Noam and Nisan Michal Armoni
30