J
Joseph H Allen
Guest
In article <442b7087$0$58081$742ec2ed@news.sonic.net>,
Tommy Thorn <foobar@nowhere.void> wrote:
packet can be treated as a separate thread. With enough buffering it's
feasible to have 16 threads, which conveniently matches the size of Xilinx
SRL16s. A simple micro-engine will run at 200 MHz with this technique, and
ends up being the same physical size as the single-threaded version.
--
/* jhallen@world.std.com (192.74.137.5) */ /* Joseph H. Allen */
int a[1817];main(z,p,q,r){for(p=80;q+p-80;p-=2*a[p])for(z=9;z--q=3&(r=time(0)
+r*57)/7,q=q?q-1?q-2?1-p%79?-1:0%79-77?1:0<1659?79:0>158?-79:0,q?!a[p+q*2
]?a[p+=a[p+=q]=q]=q:0:0;for(;q++-1817printf(q%79?"%c":"%c\n"," #"[!a[q-1]]);}
Tommy Thorn <foobar@nowhere.void> wrote:
I've worked on FPGA based NPs. It is a no-brainer for this case, eachJJ wrote:
I am surprised that we haven't seen alot more native FPGA MTA designs
though,.
In addition to what I mentioned, there's surely more inertia issues and
the complication of multi-threaded software (assuming you can even take
advantage of it).
packet can be treated as a separate thread. With enough buffering it's
feasible to have 16 threads, which conveniently matches the size of Xilinx
SRL16s. A simple micro-engine will run at 200 MHz with this technique, and
ends up being the same physical size as the single-threaded version.
--
/* jhallen@world.std.com (192.74.137.5) */ /* Joseph H. Allen */
int a[1817];main(z,p,q,r){for(p=80;q+p-80;p-=2*a[p])for(z=9;z--q=3&(r=time(0)
+r*57)/7,q=q?q-1?q-2?1-p%79?-1:0%79-77?1:0<1659?79:0>158?-79:0,q?!a[p+q*2
]?a[p+=a[p+=q]=q]=q:0:0;for(;q++-1817printf(q%79?"%c":"%c\n"," #"[!a[q-1]]);}