Starting from:

$35

CSE4117 Microprocessors Second Project Solved

CSE4117 Microprocessors Second Project 

Question 1: Verilog Part 

 

In the website; 

 

http://www.marmaralectures.com/reference-for-second-project/ 

 

There is code for the Bird CPU, the keypad, 7-segment display, the main module, and the assembler with some missing sections (marked with the remark "to be added"). 

•       Complete the missing sections in the all code given, 

•       Load it into the FPGA kit, 

•       Connect the keypad and the 7-segment monitor to FPGA. 

 

Write an assembly program in Bird which will turn your hardware into a pocket calculator which is capable of adding and multiplying numbers. 

•       # key will act as sum (ie, +) 

•       * key will act as multiplication (ie, *) 

 

There will be no "previlege" in calculations, ie, if you enter 3#2*10 the result will be 50, not 23.  Or, in other words, + and * will have the same privilege. 

 

In your code, you must have at least two function calls, "call addit" and "call mult", to perform addition and multiplication after you finish entering a number and press * or #. 

 

Your calculator must read the numbers from the keypad and display them in decimal on seven segment display.To display your result in decimal, you must write an additional piece of code (Assembly code not in Verilog) to convert your hexadecimal result into decimal (or binary coded decimal, BCD). You must do this in software and NOT in hardware. Some hints on how this can be done is described in the following link: 

https://my.eng.utah.edu/~nmcdonal/Tutorials/BCDTutorial/BCDConversion.html Disregard "BCD conversion in hardware" part. 

 

There is an accompanying video which shows how the system you will build should work. (Note that in this video numbers are hexadecimal but you will implement as decimal) 

 

 

 

             

Question 2: Logisim Part 

You will implement Bird in Logisim.  

 

  

You have;  

--Bird CPU 

--Two 16-bit switchboards, switchboards 1 and 2 

--Two Push Button, PB1 and PB2 

--One 4*7-segment display 

 

Your assembly program will have a variable sum, which is initialized to sum=0 at the start. Then your code will continuously poll the 16- bit switchboards (16-bit pins). 

 

-- If PB1 is pressed, you will read the number from switchboard 1, calculate  sum=sum+(entered number), display new sum on 4*7-segment register. -- If PB2 is pressed, you will read the number from switchboard 2, calculate             sum=sum+(entered number)*(entered number), display new sum on 4*7-segment register. 

 

The numbers must be converted to decimal before displaying. The conversion process must be done in software in a function. 

 

More products