Hello! this is my first calculator project in school.
I thought I almost there but..have lots of errors
(attached pictures of my half done or less calculator)
In my calculator I have...
1. numeric key input(0 to 9)
2. BCD encoder(8 outputs, 2 for each bit, ON and OFF)
3. 16bits memory(4 x 4 SR latch, total 16 bits)
4. 16 x full Adder(BCD input so paired by 4)
5. and 4bits input display(included in the program)
and I will need..
1. Logic interface between memory and arithmetic units
(I have only adders now but I will add sub, multi and divider)
2. Timing control in memory
(all 16bits of memory are enabled by any key input, but my memory has input to only first 4bits(LSD), and that 4bits will carry over to the next 4bits(next significant digit), if another enable signal comes in. The problem is this enable signal is not very accurate so sometime datas are mixed up D:
so far..it was introduction of my calculator...and the reason I am asking some help is....(please refer to the picture "HEX error.jpg", 9+9=12! OMG!)
My calculator works fine, until I input some values that required carry out function. Those 16 adders are all connected in series. I tried "4bits input hex to decimal converter" at output but it simply ignored any value more than 9.....did not carry it over to the next set of adders D:
if any more information is needed I will add it.
Thank you!
I thought I almost there but..have lots of errors
(attached pictures of my half done or less calculator)
In my calculator I have...
1. numeric key input(0 to 9)
2. BCD encoder(8 outputs, 2 for each bit, ON and OFF)
3. 16bits memory(4 x 4 SR latch, total 16 bits)
4. 16 x full Adder(BCD input so paired by 4)
5. and 4bits input display(included in the program)
and I will need..
1. Logic interface between memory and arithmetic units
(I have only adders now but I will add sub, multi and divider)
2. Timing control in memory
(all 16bits of memory are enabled by any key input, but my memory has input to only first 4bits(LSD), and that 4bits will carry over to the next 4bits(next significant digit), if another enable signal comes in. The problem is this enable signal is not very accurate so sometime datas are mixed up D:
so far..it was introduction of my calculator...and the reason I am asking some help is....(please refer to the picture "HEX error.jpg", 9+9=12! OMG!)
My calculator works fine, until I input some values that required carry out function. Those 16 adders are all connected in series. I tried "4bits input hex to decimal converter" at output but it simply ignored any value more than 9.....did not carry it over to the next set of adders D:
if any more information is needed I will add it.
Thank you!
Attachments

156.4 KB Views: 25

152.7 KB Views: 21