View Single Post
Old 16 February 2011, 17:21   #420
Total Chaos forever!

Samurai_Crow's Avatar
Join Date: Aug 2007
Location: Ft. Collins, CO USA
Age: 42
Posts: 613
Send a message via Yahoo to Samurai_Crow
Originally Posted by NathanTolbert View Post
One thing I would like to ask about, and this from my ignorance about FPGA's but how is it they expect to get 50MHz+ out of an FPGA for their softcore project the N68050, when all of the information I am finding on softcores is that most don't run that fast at all. Is it something to do with the design? I just have millions of questions, and I tried to sign up at their forums to express my support and ask some questions, but I haven't received a response yet.
Most softcores on FPGAs are optimized to take few resources. This is because the primary use of the FPGA in most applications is not to take the place of a high-performance CPU so much as it is to combine two chips into one for a low-cost solution. The ways that the N68050 will be faster are due primarily to two techniques: pipelining, and opcode fusion.

Pipelining works by dividing each instruction into stages such that the next instruction can start before the previous one has completed executing. Opcode fusion recognizes multiple opcodes as being a representation of something that it can execute in one operation without having to modify the instruction set. An example of opcode fusion is move d1,d2; add d3,d2. Although it sits in memory as two opcodes the N'050 will recognize that since they both use the same destination register they will do a d2=d3+d1 operation. Another example is bne label; add d1,d2; label:. Since the branch only skips one opcode it can be converted into a predicated opcode.

I hope this answers some questions and if you private message me the email address you used to sign up for the NatAmi forums, I can send your message along to Peter to check out the forum software.
Samurai_Crow is offline  
Page generated in 0.06180 seconds with 10 queries