CSCE-Project 3 Sequential Chips Solution

$35.00 $29.00

The computer’s main memory, also known as Random Access Memory (RAM), is an addressable sequence of n-bit registers, each designed to hold an n-bit value. In this project you will gradually build a RAM module. This involves two main issues: (i) how to use gate logic to store bits persistently, over time, and (ii) how…

5/5 – (2 votes)

You’ll get a: zip file solution

 

Description

5/5 – (2 votes)

The computer’s main memory, also known as Random Access Memory (RAM), is an addressable sequence of n-bit registers, each designed to hold an n-bit value. In this project you will gradually build a RAM module. This involves two main issues: (i) how to use gate logic to store bits persistently, over time, and (ii) how to use gate logic to locate the memory register (“using the address”) on which we wish to operate. In addition, you will build functions that are constructed with combinational and sequential logic design elements.

Objective

Build all the chips described in the list below.The only building blocks that you can use are primitive DFF gates to start with, and subsequently chips that you will build on top of them, and chips described in earlier projects. To build the RAM chips you need to have some understanding of how a bit and a register works. Details about these will be discussed in the labs to develop a working level understanding of these chips.

Chips

Chips Name:

Description

File Name

RAM8

8 16-bit register memory

RAM8.hdl

RAM64

64 16-bit register memory

RAM64.hdl

RAM512

512 16-bit register memory

RAM512.hdl

PC

16-bit program counter

PC.hdl

Fibonacci

Fibonacci Sequence generator

Fibonacci.hdl

Comments:

  • Program Counter:Design as discussed in class and as presented in the textbook

  • Fibonacci Sequence generator:

The general Fibonacci sequence is a sequence that starts withf0=0 andf1=1 . The next number in the sequence is thesum of the previous two numbers. So the Fibonacci number sequence generated in our circuit will be:

0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89…

Here is the circuit you may use.You need to understand the working of this circuit along with its .tst and .cmp files. Explain the logic as comments in your HDL file.

The ADD operation in the circuit diagram is the addition of the two previous Fibonacci numbers and you can use any 16 bit adder chip for this purpose.

To use this circuit, you have to control these signals, namely,enable1, enable2andmsel.

  • msel=0will select the starting valuesf0andf1of the Fibonacci Sequence

  • msel=1 will keep running the Fibonacci sequence with sum(t+1) ← sum(t) + sum(t-1) ​for clock cyclet

  • enable1=1 or enable2=1activate respective registers byloading the corresponding input values to corresponding register outputs

The test file Fibonacci.tst assigns the values to these control signals.

See how output in the Fibonacci.out file changes while changing those signals.

For each chip, we supply a skeletal .hdl file with a missing implementation part.

In addition, for each chip we supply a .tst script that instructs the hardware simulator how to test it, and .cmp (“compare file”) containing the correct output that this test should generate.

ForFibonacci, we providetwo.tst and .cmp files. Your implementation must pass both the tests.

Contract

When loaded into the supplied Hardware Simulator, your chip design (modified .hdl program), tested on the supplied .tst script, must produce the outputs listed in the supplied .cmp file. If that is not the case, the simulator will let you know.

Resources

The relevant reading for this project is

Chapter 3https://docs.wixstatic.com/ugd/44046b_1801b5682e4d4a67bd05e14235665d8b.pdf Appendix Ahttps://docs.wixstatic.com/ugd/44046b_d715f80dca2a43af926131a52e3d3d90.pdf

Specifically, all the chips described in Chapter 3 should be implemented in the Hardware Description Language (HDL) specified in Appendix A.

The resources that you need for this project are the supplied Hardware Simulator and the files listed above. Download your hdl files from ecampus and replace these files to those stored in your projects/03 directory.

Tips

The Data Flip-Flop (DFF) gate is considered primitive and thus there is no need to build it: when the simulator encounters a DFF chip part in an HDL program, it automatically invokes the built-in tools/builtInChips/DFF.hdl implementation.

Tools

Following is a screenshot of testing a built-in RAM8.hdl chip implementation on the Hardware Simulator:

CSCE-Project 3 Sequential Chips Solution
$35.00 $29.00