Program counterSimply because your address is 16-bit and your data is 8-bit. So you need to load a 16 bit address from 8 bit data bus in 2 clock cycles.
Allen
Wow, it has been almost a week and I dont see much progress in your PC design. Only wild guesses on what the muxes are doing, and speculating how 8 bit data bus can be connected to 16 bit address bus .....I think mux is use for following
low address means - output of multiplexer should (0)
high address means - output of multiplexer should (1)
when address mux is ( 0) then this is end of instruction and pc incremented for next address
when address mux is (1) then execute jmp or branch instruction
I don't understand how does 16 bit address load from 8 bit data bus ?
If there is any link or picture that define reason please attach link
I am really sorry Allen , I don't want to hurt someone. I said, because I want to understand simple PC and then I want to go for complex PC. I will remember. I will never say these word againAnd dont say "Let's forget what we have discussed and just tell me this, this and this". I think that is rude and hurts people who tried to help you.
Allen
I'll be taking a short vacation trip with family next week. After returning, I'll have a 3-week on the job-travelling to a remote town doing installation works. Dont be surprised if I just disappear from the forum for a while.
Allen Allen
I read the datasheet and I looked diagram. Its very tough for me I don't understand because there are timing and control unit , DPTR stack pointer involved in diagramWow, it has been almost a week and I dont see much progress in your PC design. Only wild guesses on what the muxes are doing, and speculating how 8 bit data bus can be connected to 16 bit address bus .....
As for any links for this, sorry no, I dont have any. Your google is as good as mine. I have never taken such a tedious task to design a similar mcu core like the 8051. Even looking at the verilog codes on the open-source code for 8051 gave me lots of headache, not to mention that I just started to learn VHDL on Altera platform. Actually you are more ahead of me as your are using Quartus II while I am still using MAX+II plus.
OK. enough blah-blah-blah. Have you taken my advice and look at the Architecture block of the 8051 on its datasheet? Here's one that I have simplify with MSPaint.... I removed all the unnecessary stuffs and left only the essential blocks for you to implement. I even removed the B register which I think you dont need it. If you can, you can even get rid of the crystal clock and replace with 2 LM555 - one for astable clock pulses and the other for monostable just to step the instructions.
View attachment 78502
I'll be taking a short vacation trip with family next week. After returning, I'll have a 3-week on the job-travelling to a remote town doing installation works. Dont be surprised if I just disappear from the forum for a while.
Allen
i have read it just now. thank you very much ,you help me lots , I don't have word for you ,Did you read your other thread here?
http://forum.allaboutcircuits.com/threads/alu-with-pc-need-help.105475/
Allen
ok I am trying to make that design on proteus software. I have few question.I am also searching . I can't place all component in one sheet. I have to add another sheet. how to connect component from different sheet. how to see different sheet in one paper.I have got a lot of good design ideas from the link pointed by Ian Rogers of ETO here
http://www.bigmessowires.com/2013/08/27/custom-4-bit-cpu-schematic-and-control/
The Architecture is here
View attachment 78625
And the complete schematics is here
View attachment 78626
From this I am going to split your 8-bit ROM data into two halves. 4 bits for instructions and the other 4 bits for Imm data for MOV a,#imm and MOV R1,#imm; OR upper 4 bits of the 12 bit address on the JMP instruction.....
So much for now until I return from my vacation.
Allen
Hello Allen ,Read post #39 of your own thread here
http://forum.allaboutcircuits.com/threads/rom-memory.105066/page-2
I have anticipated that you'd get this problem before you ask.
Allen