My core synthesized for 100 MHz without effort, including internal memory and peripherals, on a Spartan 6. I didn't attempt to push it harder at the time.
But it depends a lot on the device and synthesis tools, and things attached to the core. So for a fair comparison it's best if you synthesize ...
Search found 31 matches
- Sun Apr 02, 2017 10:38 am
- Forum: Hardware
- Topic: Pipelined 6502
- Replies: 91
- Views: 13725
- Wed Mar 29, 2017 9:31 pm
- Forum: Hardware
- Topic: Pipelined 6502
- Replies: 91
- Views: 13725
Re: Pipelined 6502
@Arlet
Would you like tell us about Fmax of your processor, please?
Would you like tell us about Fmax of your processor, please?
- Wed Mar 29, 2017 3:26 pm
- Forum: Hardware
- Topic: Pipelined 6502
- Replies: 91
- Views: 13725
Re: Pipelined 6502
Hi Manili,
The 6502 address space is small enough that it doesn’t really need caches, the ram in a PLD can be used directly. But if using external ram resources retaining the caches would be a good idea. The long term goals for the project might dictate inclusion / exclusion of caches.
On a clock ...
The 6502 address space is small enough that it doesn’t really need caches, the ram in a PLD can be used directly. But if using external ram resources retaining the caches would be a good idea. The long term goals for the project might dictate inclusion / exclusion of caches.
On a clock ...
- Wed Mar 29, 2017 2:57 pm
- Forum: Hardware
- Topic: Pipelined 6502
- Replies: 91
- Views: 13725
Re: Pipelined 6502
@Dr Jefyll
Thanks for your reply. I didn't understand your problem. Do the following example help you?
One of my tests during this project was Fibonacci series generation test. So here is the Verilog code:
MEM[32814] = `LDY_IME;
MEM[32815] = 8'h07;
MEM[32816] = `LDA_IME;
MEM[32817] = 8'h00 ...
Thanks for your reply. I didn't understand your problem. Do the following example help you?
One of my tests during this project was Fibonacci series generation test. So here is the Verilog code:
MEM[32814] = `LDY_IME;
MEM[32815] = 8'h07;
MEM[32816] = `LDA_IME;
MEM[32817] = 8'h00 ...
- Tue Mar 28, 2017 5:22 am
- Forum: Hardware
- Topic: Pipelined 6502
- Replies: 91
- Views: 13725
Re: Pipelined 6502
Hello guys, it's me again :mrgreen:
This is a big day for me, because I'm releasing a source code of mine in public place. I hope you guys forgive me for the delay between the opening time of the topic and the release time of the code. This is pipelined 6502 source code .
Well ... good news first ...
This is a big day for me, because I'm releasing a source code of mine in public place. I hope you guys forgive me for the delay between the opening time of the topic and the release time of the code. This is pipelined 6502 source code .
Well ... good news first ...
- Tue Oct 25, 2016 6:18 pm
- Forum: Hardware
- Topic: Pipelined 6502
- Replies: 91
- Views: 13725
Re: Pipelined 6502
In my version of ISE it's called "post place & route static timing". But if you enter a timing constraint (basically just the frequency of your input clock), and then generate the design, it should give you an error if it can't meet the timing.
In the menu, there's a Timing Analyzer tool for ...
In the menu, there's a Timing Analyzer tool for ...
- Tue Oct 25, 2016 6:14 pm
- Forum: Hardware
- Topic: Pipelined 6502
- Replies: 91
- Views: 13725
Re: Pipelined 6502
BigEd wrote:
I just did a quick search for "xilinx how to read timing report" and it looks like it would lead to some good reading.
- Tue Oct 25, 2016 6:04 pm
- Forum: Hardware
- Topic: Pipelined 6502
- Replies: 91
- Views: 13725
Re: Pipelined 6502
I'm not sure what stage in the synthesis this is, but for the most accurate result you should set a timing constraint by specifying a clock frequency yourself, and then see if the tools can meet that. If so, you can increase the number until you run into problems.
Without a constraint, you get an ...
Without a constraint, you get an ...
- Tue Oct 25, 2016 6:03 pm
- Forum: Hardware
- Topic: Pipelined 6502
- Replies: 91
- Views: 13725
Re: Pipelined 6502
Is it fast enough for what?! Typically you'd have an application in mind, and you'd iterate on your HDL and your synthesis tactics (maybe your placement tactics) until you get there.
Is there any article/book to read about these things and learn them by doing ? Because I learned to code Verilog ...
Is there any article/book to read about these things and learn them by doing ? Because I learned to code Verilog ...
- Tue Oct 25, 2016 5:38 pm
- Forum: Hardware
- Topic: Pipelined 6502
- Replies: 91
- Views: 13725
Re: Pipelined 6502
Hi all,
I finally decided to use PlanAhead 14.7 to synthesize the core. However the result of synthesis process is varied between 123.24 MHz - 159.5 MHz.
Below is the result of synthesis which targeted Artix-7 + some changes to defaults of PlanAhead synthesis process, like "-ram_style block", "-opt ...
I finally decided to use PlanAhead 14.7 to synthesize the core. However the result of synthesis process is varied between 123.24 MHz - 159.5 MHz.
Below is the result of synthesis which targeted Artix-7 + some changes to defaults of PlanAhead synthesis process, like "-ram_style block", "-opt ...
- Sat Oct 22, 2016 8:16 pm
- Forum: Hardware
- Topic: Pipelined 6502
- Replies: 91
- Views: 13725
Re: Pipelined 6502
Hi all,
After all, I finally found a way to synthesize the core. Does anybody know how to get the report of maximum possible frequency from Quartus II ? I don't have any board/FPGA to test the core but I want to know my processor max clock speed.
Thanks a lot.
P.S. : I'll publish the pre-release ...
After all, I finally found a way to synthesize the core. Does anybody know how to get the report of maximum possible frequency from Quartus II ? I don't have any board/FPGA to test the core but I want to know my processor max clock speed.
Thanks a lot.
P.S. : I'll publish the pre-release ...
- Tue Oct 18, 2016 12:05 pm
- Forum: Hardware
- Topic: Pipelined 6502
- Replies: 91
- Views: 13725
Re: Pipelined 6502
The MCS6500 Family Programming Manual says on page 144: In order to know whether the vector was fetched in response to an interrupt or in response to a BRK instruction, the B flag is stored on the stack, at stack pointer plus 1, containing a one in the break bit position, indicating the interrupt ...
- Tue Oct 18, 2016 11:57 am
- Forum: Hardware
- Topic: Pipelined 6502
- Replies: 91
- Views: 13725
Re: Pipelined 6502
Hi all,
I have done the BRK and RTI instructions. And now I can say implementing other instructions, is somewhat straightforward and I think it's going to be finished until to night. My processor has still no way to handle external interrupts.
Two questions :
- After BRK, should I push B and I ...
I have done the BRK and RTI instructions. And now I can say implementing other instructions, is somewhat straightforward and I think it's going to be finished until to night. My processor has still no way to handle external interrupts.
Two questions :
- After BRK, should I push B and I ...
- Mon Oct 17, 2016 1:25 pm
- Forum: Hardware
- Topic: Pipelined 6502
- Replies: 91
- Views: 13725
Re: Pipelined 6502
In principle you can compare your implementation, after synthesis, for clock speed and gate count, with another implementation such as the large T65 or the small Arlet core. Your core, with the caches, will run with proportionally slower memory than a cacheless core, so you could also compare two ...
- Mon Oct 17, 2016 1:21 pm
- Forum: Hardware
- Topic: Pipelined 6502
- Replies: 91
- Views: 13725
Re: Pipelined 6502
Hi all,
I have done the BRK and RTI instructions. And now I can say implementing other instructions, is somewhat straightforward and I think it's going to be finished until to night. My processor has still no way to handle external interrupts.
Two questions :
- After BRK, should I push B and I flags ...
I have done the BRK and RTI instructions. And now I can say implementing other instructions, is somewhat straightforward and I think it's going to be finished until to night. My processor has still no way to handle external interrupts.
Two questions :
- After BRK, should I push B and I flags ...