Welcome, Guest. Please login or register.

Author Topic: a golden age of Amiga  (Read 27835 times)

Description:

0 Members and 2 Guests are viewing this topic.

Offline bloodline

  • Master Sock Abuser
  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 12113
    • Show only replies by bloodline
    • http://www.troubled-mind.com
Re: a golden age of Amiga
« Reply #104 from previous page: February 08, 2012, 11:10:41 PM »
The big question is "what problem does it solve"... In engineering almost anything is possible, but few things are actually useful :-/

Offline HenryCase

  • Hero Member
  • *****
  • Join Date: Oct 2007
  • Posts: 800
    • Show only replies by HenryCase
Re: a golden age of Amiga
« Reply #105 on: February 08, 2012, 11:19:23 PM »
@Tripitaka
Thank you for your words of support, I'm glad you see the benefits of blurring the boundaries between hardware and software.

Regarding the price, I don't have much control over this, but FPGAs are clearly improving fast when it comes to their price/performance ratio, plus concentrating the processing and storage in a single chip should help decrease costs. To be honest, I say single chip, but there's no reason you have to limit this design to a single chip, it would scale well to multiple chips too, enhancing upgradability no end. Want a bit more processing power? Stick in another memristor FPGA. You still keep the processing power you had before, but now nearly seamlessly enhanced with the capacity you just added.

I hope you will feel free to post any more ideas and feedback you have, and I'd be interested to hear from your software engineer friend too.

Thanks again. :-)
"OS5 is so fast that only Chuck Norris can use it." AeroMan
 

Offline Tripitaka

  • Hero Member
  • *****
  • Join Date: Jun 2005
  • Posts: 1307
    • Show only replies by Tripitaka
    • http://acidapple.com
Re: a golden age of Amiga
« Reply #106 on: February 08, 2012, 11:23:31 PM »
Quote from: bloodline;679897
The big question is "what problem does it solve"... In engineering almost anything is possible, but few things are actually useful :-/


Well in your case you could finish that music your doing on your super duper sound processing computer and then play a game that uses those same sound processing chips for 3D graphics (as they have just been re-written to be graphics processors). Your point is quite valid of course, it is exactly what I would expect a possible financial backer to say. Sometimes however, you can't see how useful something is until you try it. Arthur C Clarke was mocked for suggesting the radio satellite after all.
Falling into a dark and red rage.
 

Offline HenryCase

  • Hero Member
  • *****
  • Join Date: Oct 2007
  • Posts: 800
    • Show only replies by HenryCase
Re: a golden age of Amiga
« Reply #107 on: February 08, 2012, 11:24:47 PM »
Quote from: bloodline;679897
The big question is "what problem does it solve"... In engineering almost anything is possible, but few things are actually useful :-/


What problem do you want it to solve? Computers are programmable devices, you can turn them to anything that can be symbolically represented. Altering the architecture in the way being described allows increased efficiency, enhanced extensibility (both at the hardware and software level), easier maintainability and even potentially lower power draw and lower cost. What's not to like! ;-)
"OS5 is so fast that only Chuck Norris can use it." AeroMan
 

Offline Tripitaka

  • Hero Member
  • *****
  • Join Date: Jun 2005
  • Posts: 1307
    • Show only replies by Tripitaka
    • http://acidapple.com
Re: a golden age of Amiga
« Reply #108 on: February 08, 2012, 11:42:54 PM »
Quote from: HenryCase;679900
@Tripitaka
Thank you for your words of support, I'm glad you see the benefits of blurring the boundaries between hardware and software.

Regarding the price, I don't have much control over this, but FPGAs are clearly improving fast when it comes to their price/performance ratio, plus concentrating the processing and storage in a single chip should help decrease costs. To be honest, I say single chip, but there's no reason you have to limit this design to a single chip, it would scale well to multiple chips too, enhancing upgradability no end. Want a bit more processing power? Stick in another memristor FPGA. You still keep the processing power you had before, but now nearly seamlessly enhanced with the capacity you just added.

I hope you will feel free to post any more ideas and feedback you have, and I'd be interested to hear from your software engineer friend too.

Thanks again. :-)


I'll email my friend your post and see what he says.

I remember what started the conversation off now I think about it. At the time we both worked for a DVD Authoring house (I was an Author/Graphic Designer, he was an Author/Sys Admin). We had been using a hardware based MPEG encoder that encoded in about twice realtime, so 3 hours for an average movie. Back then the software based encoders were way too slow. Soon however the software encoders won out over the hardware as CPUs got so damn quick. It only took a couple of years. We thought it was a terrible waste as the hardware encoder was now redundant and had cost a whopping amount of cash. Anyway, we got into talking about what a shame it was that we couldn't re-write the damn chip to do something more useful. It still horrifies me that a full DVD authoring setup back in the early days of DVD cost nearly £200K. sic. That was less than 15 years ago.
Falling into a dark and red rage.
 

Offline Digiman

  • Hero Member
  • *****
  • Join Date: May 2010
  • Posts: 1045
    • Show only replies by Digiman
Re: a golden age of Amiga
« Reply #109 on: February 09, 2012, 12:13:11 AM »
Quote from: bloodline;679897
The big question is "what problem does it solve"... In engineering almost anything is possible, but few things are actually useful :-/


This is true. What is also true though is technology so advanced as A1000 in 1985 takes decades to be accepted. Today we take for granted the multitasking  multimedia OS but before 2000/XP Windows was a joke, a toy OS for accounting nerds and a general public who accepted the limits of Win 95-ME and OS1-9.

Second storage and main storage technology price/performance was 5 years behind the OCS A1000 chipset in 85. Would MP3 players have gone mass market if solid state memory to store the MP3s on was stuck at a max 32mb and transfer speeds of 64kb/sec for years? Exactly.
 

Offline bloodline

  • Master Sock Abuser
  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 12113
    • Show only replies by bloodline
    • http://www.troubled-mind.com
Re: a golden age of Amiga
« Reply #110 on: February 09, 2012, 07:14:12 AM »
My question wasn't meant as a criticism of HenryCase's idea, but more a suggestion to look at the problem from the other direction.

It's really fun to think about the technology, and what you could put together in an interesting way... But really when building a product, you need to find a core, basic need that is unforfilled and then try and meet that need in the simplest cheapest way... :)
« Last Edit: February 09, 2012, 07:16:45 AM by bloodline »
 

Offline Mrs Beanbag

  • Sr. Member
  • ****
  • Join Date: Sep 2011
  • Posts: 455
    • Show only replies by Mrs Beanbag
Re: a golden age of Amiga
« Reply #111 on: February 09, 2012, 12:22:49 PM »
Quote from: HenryCase;679892
Thank you for your ideas Mrs Beanbag.

With regards to FPGAs, you are correct that currently they are often used for rapid prototyping. However, they are occassionally used in commercial products,

I should have said rapid prototyping and low-volume production.  But in either case, the problem is to "make some hardware", to put it simply.  They are not yet thinking outside of the box.  Once the design is put on the chip (by some external device or circuit), it is a constant, so as to behave just like any other special-purpose chip.

Quote
Use of RAM for reconfigurable computers is an interesting idea, but I'm not quite sure how it would work. Could you explain more?

Basically, I'm suggesting that instead of the Look Up Tables (LUTs) being initialised once by some external device, it can configure and reconfigure itself on the fly.  Currently (as I understand it at least) the device has to be turned off, loaded with a design, and then turned on again.  But rather it could load its own design through a DMA channel or suchlike as it goes along.

In fact the Amiga already has an FPGA in it.  It is called the Blitter.  The blitter has three sources which it can combine using any combinatorial logic supplied to it in the Minterms field of its control registers.  This Minterms field then is exactly the same as the LUT in an FPGA's logic cell.  It applies the same LUT to every bit in a 16-bit word at once and then sequentially on word after word, which it pulls in through DMA and writes out again.  Now imagine if it could pull the Minterms in through DMA as well, it would open up all kinds of possibilities.  Then if you could connect lots of blitters together so that they could pipe their outputs to each other, many things become possible.

I've never seen anyone mention this, but you can configure the blitter to do arithmetic addition.  Presumably this is why the fill operation works in descending mode only - it is to propagate the carry bit.

So really using FPGAs isn't so different from the Amiga afterall!

Quote
Yes, I intended the CPU to be programmable in the way you suggest. When you say we could go further than an FPGA design here, what do you have in mind?

What I have in mind is a pipelined scheme where not only the data can be passed down the pipeline, but the functionality as well!  Say for instance you want a processing unit that can perform several different kinds of pipelined operation.  So instead of having a pipeline for each different operation, you can pull the circuits themselves from memory and actually pass the functionality down the one pipeline.
Signature intentionally left blank
 

Offline HenryCase

  • Hero Member
  • *****
  • Join Date: Oct 2007
  • Posts: 800
    • Show only replies by HenryCase
Re: a golden age of Amiga
« Reply #112 on: February 09, 2012, 09:53:13 PM »
@Tripitaka
Quote from: Tripitaka;679908
We thought it was a terrible waste as the hardware encoder was now redundant and had cost a whopping amount of cash. Anyway, we got into talking about what a shame it was that we couldn't re-write the damn chip to do something more useful.


I agree, it's a shame when dedicated hardware no longer adds value to a system. This is something reconfigurable computing aims to do away with.

@bloodline
Quote
It's really fun to think about the technology, and what you could put together in an interesting way... But really when building a product, you need to find a core, basic need that is unforfilled and then try and meet that need in the simplest cheapest way...


Make no mistake about it, I'm not going for a single niche here, I'm going for general purpose computing. Let's go through the benefits I listed before:

Increased efficiency - Important where performance is key. Whatever tasks need high performance computing could benefit. If you want a single example, think of physics simulations.

Enhanced extensibility (both at the hardware and software level) - Important where you have tasks you have specific niche requirements. This is important in markets that are just beginning, or are too small for large investment. For an example of a market where extensibility could be a benefit, think of home automation.

Easier maintainability - This is just common sense. By keeping the core operating system compact and easier to understand, you increase the number of people that are adept at reasoning about its function. The more accurately that people can build a mental model of how something works, the more adept they will be at using, fixing and enhancing it. Benefits will be felt in all industries where it is used.

(Potentially) lower power draw - The obvious answer is this is important for mobile devices, but it's important for much more than that, for example power draw in servers is also a big concern. Memristor-based FPGAs have a number of ways to reduce power draw. For example, with modern CPUs you hear people talking about 'dark silicon'. Dark silicon is where you have unused sections of your processor, because it's getting increasingly hard to send power the whole chip all of the time. We can use this to our advantage; by switching off the unused chip real estate through use of memristor switches, you can optimise your device for low power draw. Then, when more power is available, you switch the extra circuitry on again.

(Potentially) lower cost - If I really have to explain why this will help this succeed, I really don't know what to say!

With all that said, there are markets I think will adopt earlier than others. The obvious places to look is where FPGAs are already in use, i.e. in embedded systems. Embedded systems are specialised enough that you don't need a large, expansive software ecosystem to build what you need. Plus, the engineers building embedded systems are more attuned to choosing hardware based on its actual merits rather than from any emotional ties.

As the software ecosystem develops, the system will become attractive to more and more markets. However, I'm not going to waste my time imagining what these markets will be, I am confident that people will see the benefits, just need the system to be built so those benefits can be realised. Hope that answers your question.

@Mrs Beanbag
Quote
Currently (as I understand it at least) the device has to be turned off, loaded with a design, and then turned on again.


I quoted this particular text, as I think it shows I've confused you by using the term FPGA. The FPGAs that are possible with memristors do not need to follow the same restrictions that traditional FPGA designs have.

For the conversation to move forward, I think it is absolutely vital that you understand the benefits that memristors could bring.

Firstly, it can make FPGAs reprogrammable on-the fly.

Secondly, it can make FPGAs more efficient.

Thirdly, memristors could potentially replace RAM, as well as long term storage, and processing. Essentially you can get all three in one chip.

Now, I hinted before that there are some issues with memristors replacing RAM at the moment, but considering how new memristors are, I anticipate memristors will be used in RAM in the future, once these challenges are overcome.

If you'd like a shorter introduction to the memristor video I posted before, please watch this video, it's only 6 minutes long, and should help you understand how memristors can change the structure of FPGAs:
http://www.youtube.com/watch?v=rvA5r4LtVnc

@all
Welcome to field any more questions. Also, welcome to hear more feedback, positive or negative. Thanks.
« Last Edit: February 09, 2012, 10:04:38 PM by HenryCase »
"OS5 is so fast that only Chuck Norris can use it." AeroMan
 

Offline Piru

  • \' union select name,pwd--
  • Hero Member
  • *****
  • Join Date: Aug 2002
  • Posts: 6946
    • Show only replies by Piru
    • http://www.iki.fi/sintonen/
Re: a golden age of Amiga
« Reply #113 on: February 09, 2012, 09:59:23 PM »
Quote from: Mrs Beanbag;679953
The blitter has three sources which it can combine using any combinatorial logic supplied to it in the Minterms field of its control registers.  This Minterms field then is exactly the same as the LUT in an FPGA's logic cell.  It applies the same LUT to every bit in a 16-bit word at once and then sequentially on word after word, which it pulls in through DMA and writes out again.  Now imagine if it could pull the Minterms in through DMA as well, it would open up all kinds of possibilities.  Then if you could connect lots of blitters together so that they could pipe their outputs to each other, many things become possible.

I've never seen anyone mention this, but you can configure the blitter to do arithmetic addition.  Presumably this is why the fill operation works in descending mode only - it is to propagate the carry bit.
This has been explored in numerous different things. For example it's possible to create full screen game of life with only blitter (320x256 it reaches 12fps on A500). I have a code lying around doing just that.

Further, it's possible to set copper in "danger mode" (CDANG bit in COPCON) in which it can write more custom registers than normally. When in this mode the copper can program the blitter. Blitter can be used to blit new copper list, which is again activated by the copper. This way it's entirely possible to have arbitrary logic running entirely independent of the main CPU (except for the initialization, and the limitations set by the amount of chip memory). It'd be interesting to hear if anyone has ever attempted to construct such setup.
« Last Edit: February 09, 2012, 10:02:56 PM by Piru »
 

Offline actung_bab

  • Hero Member
  • *****
  • Join Date: Oct 2006
  • Posts: 650
    • Show only replies by actung_bab
Re: a golden age of Amiga
« Reply #114 on: February 09, 2012, 10:56:53 PM »
Quote from: HenryCase;679892
Thank you for your ideas Mrs Beanbag.

With regards to FPGAs, you are correct that currently they are often used for rapid prototyping. However, they are occassionally used in commercial products, and again I must stress that memristors bring a number of advantages to typical FPGAs that will allow the performance to get much closer to fixed function devices. Allow me to explain...

The simple explanation for current FPGAs is that they are organised into code blocks called logic elements. You can see a diagram of one here:
http://www.eecg.toronto.edu/~pc/research/fpga/des/Logic_Element/logic_element.html

Through configuring these logic elements you change the function of FPGAs to fit your needs. However, the architecture is sub-optimal compared to ASICs as the extra bulk required to manage the re-programmability limits their logic density (in other words, ASICs allow circuitry to be simplified).

However, using memristors in FPGAs has the potential to make FPGAs a lot more efficient. There are a few ways to build FPGAs using memristors, but let's first focus on the first way described in the video I shared. The simple way to think about this is that you have two layers in the chip; on one layer you have transistors, on the other layer you have memristors. Memristors act as the wiring between the transistors. They are ideally suited to this. Memristors are electrically controlled variable resisitors that remember their resistance. Increase the resistance high enough and you have a 'blocked' connection. Reduce the resistance and you have an 'open' connection. The circuitry to manage the memristor wiring would be minimal, and the simpler connections would allow more efficient designs to be implemented on FPGAs.

As suggested, this is just one way to implement FPGAs utilising memristors. The other way hinted at in the video was to use implication logic. What has been discovered is that memristors can do logic by themselves, you don't need transistors at all, but you need to use a different form of logic. My knowledge on implication logic is sketchy at the moment, but from what was suggested in the video, the preliminary work done at HP on this indicates that when compiling C code, you end up with smaller binaries using implication logic. It's an area I need to research more, but I should learn to walk before I can run! ;-)

Use of RAM for reconfigurable computers is an interesting idea, but I'm not quite sure how it would work. Could you explain more?



Yes, I intended the CPU to be programmable in the way you suggest. When you say we could go further than an FPGA design here, what do you have in mind?

a understand what your saying on very basic level what is diffrence between fpg
 the simple pic control chips i seen my friend program i know these have very limited storage but seems you can do alot with less , which what your saying .
apart from elagance of working with this whats the practice benifets of this
lower power use.
and chould you use the advanced c who is this diffrent ot a fpg i kinda dont understand what fpg is i know its a progamed aray how does it diffrent from a cpu ?
its been itresting read keep it up

I rememby freind who was into computers before amiga came out he had amstrad 128
talking about cpus and how many bits make up a byte it stayed with me all this time
Some pople just make this stuff great to learn about , kevin cameron guy on engine design in the same vein , makes complicated eem simple enough for you to want learn more and more
Acthung baby
http://telnet://midnight-blue.dyndns.org
Cnet 4.60 PRO bbs software
Amiga 1200 020 14 mhz mbz 1200 z pcmcia network card 4 meg ram 2 Gb scandisk cf
Amiga 2000 020
Amiga 4000 030 25 mhz broken
Amiga x 4 1200
x 6 Sony Ps 3 Orginal 60 gb 4  port usb 160 gb hd (os 4.1 ready :-)
what can i say i like thse machines
x 3 XBOX 360 1x xbox 360 slim
url=http://avatars.jurko.net][/
 

Offline Mrs Beanbag

  • Sr. Member
  • ****
  • Join Date: Sep 2011
  • Posts: 455
    • Show only replies by Mrs Beanbag
Re: a golden age of Amiga
« Reply #115 on: February 09, 2012, 11:14:43 PM »
Quote from: HenryCase;680011
@Mrs Beanbag

I quoted this particular text, as I think it shows I've confused you by using the term FPGA. The FPGAs that are possible with memristors do not need to follow the same restrictions that traditional FPGA designs have.

For the conversation to move forward, I think it is absolutely vital that you understand the benefits that memristors could bring.

Ok memristors are very exciting, I'll give you that.  I did watch the long video after I composed my previous reply, and it's got me thinking even more.  I need to get my head round this "imaginary current" that you see in passive circuit analysis, because as much as it works, it makes very little sense.  I suspect there is something even more complex going on behind that but when I try to research it it's kind of a brick wall.  I suspect that SU(2) might come into play at some point, and we can start inventing some really weird passives.  But I'm struggling to devise a Lorentz Invariant formulation of Ohm's Law now...

But, what I propose with completely reconfigurable FPGAs is already possible with existing technologies.  In fact now I think about it I reckon it's possible to do it in an FPGA.  META.
Signature intentionally left blank
 

Offline Mrs Beanbag

  • Sr. Member
  • ****
  • Join Date: Sep 2011
  • Posts: 455
    • Show only replies by Mrs Beanbag
Re: a golden age of Amiga
« Reply #116 on: February 09, 2012, 11:19:09 PM »
Quote from: actung_bab;680020
a understand what your saying on very basic level what is diffrence between fpg
 the simple pic control chips i seen my friend program i know these have very limited storage but seems you can do alot with less , which what your saying .
apart from elagance of working with this whats the practice benifets of this
lower power use.

A pic is a normal, simple CPU with some flash ROM on chip.  You just put a program there and it goes.  It is programmed in C or assembly language and runs sequentially, and typically very slowly.  Although in theory you could design one with an ARM core or a x86 core or whatever.  But the ones you can buy are really simple and tiny.

An FPGA can be rewired electronically to be any kind of chip at all.  It doesn't run a program (unless you design a CPU core on it), it simply reroutes data and performs any logical operation you want in any combination or sequence.  So you can make it do specialist tasks, and do umpteen things at once, the only limitation is the number of logic cells.  Ok that's not the only limitation but it will do for explanation's sake.
Signature intentionally left blank
 

Offline HenryCase

  • Hero Member
  • *****
  • Join Date: Oct 2007
  • Posts: 800
    • Show only replies by HenryCase
Re: a golden age of Amiga
« Reply #117 on: February 10, 2012, 06:58:49 AM »
Quote from: Mrs Beanbag;680022
I need to get my head round this "imaginary current" that you see in passive circuit analysis


I'm sorry, what imaginary current are you referring to?

Quote from: Mrs Beanbag;680022

But, what I propose with completely reconfigurable FPGAs is already possible with existing technologies.  In fact now I think about it I reckon it's possible to do it in an FPGA.  META.


The function of present day FPGA devices is fixed at boot time, how do you intend to get around this? You may be able to get around it using multiple fast booting FPGAs (see article here: http://electronicdesign.com/article/digital/fpgas-boot-in-a-flash15649.aspx ), is that what you intended?
"OS5 is so fast that only Chuck Norris can use it." AeroMan
 

Offline HenryCase

  • Hero Member
  • *****
  • Join Date: Oct 2007
  • Posts: 800
    • Show only replies by HenryCase
Re: a golden age of Amiga
« Reply #118 on: February 10, 2012, 07:31:45 AM »
Quote from: actung_bab;680020
a understand what your saying on very basic level what is diffrence between fpg
 the simple pic control chips i seen my friend program i know these have very limited storage but seems you can do alot with less , which what your saying .
apart from elagance of working with this whats the practice benifets of this
lower power use.
and chould you use the advanced c who is this diffrent ot a fpg i kinda dont understand what fpg is i know its a progamed aray how does it diffrent from a cpu ?
its been itresting read keep it up

I rememby freind who was into computers before amiga came out he had amstrad 128
talking about cpus and how many bits make up a byte it stayed with me all this time
Some pople just make this stuff great to learn about , kevin cameron guy on engine design in the same vein , makes complicated eem simple enough for you to want learn more and more


Thank you for your interest and support actung_bab. :)

With regards to the practical benefits, there are many areas of the system we haven't discussed yet, but the main point I've tried to get across so far is the benefits that come from blurring the lines between hardware and software.

If you'd like to know about the benefits of low power use in particular, as stated before power usage is a concern across the whole computing industry. With regards to the data on lower power draw, we'll have to wait until the FPGAs are built (which is why I said 'potentially' lower power draw), however to give you a ballpark figure, the estimates I've seen say we're looking at 1.5 to 2 times less power usage compared to equivalent transistor-based circuitry.

If you'd like to learn more about memristors, here are two articles worth looking at. One is less technical, the other is more technical. The less technical one:
http://highscalability.com/blog/2010/5/5/how-will-memristors-change-everything.html

The more technical one:
http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CCAQFjAA&url=http%3A%2F%2Fcadlab.cs.ucla.edu%2F~cong%2Fpapers%2Fnano11.pdf&ei=lcc0T9mZBaGh0QXP9-i7Ag&usg=AFQjCNHDb6_yA_Pn6nx6ZEBuYU8MiKI-DA

Hope this has been useful in broadening your understanding. Feel free to ask any further questions you have about this.
"OS5 is so fast that only Chuck Norris can use it." AeroMan
 

Offline Mrs Beanbag

  • Sr. Member
  • ****
  • Join Date: Sep 2011
  • Posts: 455
    • Show only replies by Mrs Beanbag
Re: a golden age of Amiga
« Reply #119 on: February 10, 2012, 11:11:29 AM »
Quote from: HenryCase;680050
I'm sorry, what imaginary current are you referring to?

Well we all know V=IR, right?  Ohm's law.  Well if you let R be a complex number (we write it as Z instead and call it "impedance" rather than resistance) you can model impedance and capacitance as well.  The voltage and current ends up complex as well, of course, which makes no sense, but nevertheless it works.  I don't know what the "impedance" of a memristor would be, I can only surmise that this simple "electronic theory hack" isn't quite up to the task of representing it.  The problem is that it's quite ad hoc, as far as I can tell it's not properly derived from fundamental laws, it's just made up and used because it works.

Quote
The function of present day FPGA devices is fixed at boot time, how do you intend to get around this? You may be able to get around it using multiple fast booting FPGAs (see article here: http://electronicdesign.com/article/digital/fpgas-boot-in-a-flash15649.aspx ), is that what you intended?

You can configure the LUTs to act as register files.  The same LUTs that would normally be used to hold your fixed designs can still be changed internally.  They are Read/Write.  What is needed is a design scheme that would let you do this in a useful way.

Whether our FPGA works on memristors or not, we need a design.  You can't just throw memristors at it and magically it becomes reconfigurable on the fly.  It might be reconfigurable quicker, but it will still have the same limitations.  It's not the SRAM that's the problem.  There are strategies for partial reconfiguration, but they all assume the design being fed in from some outside source.

You can design a DMA controller in an FPGA.  If you can access external memory your design can pump data in and populate its own LUTs.  I think a good analogy might be something like Conway's Game of Life.  (Surprisingly, it is Turing complete!  In fact I'm amused by the idea that given a board large enough, one could simulate John Conway.  But I digress.)  The external bootstrap circuit feeds in a small "agent" that has a DMA and a ruleset, the rest of the unconfigured cells are basically its playground, where it can wander about and pull in design blocks through its DMA and write them to the LUTs surrounding it.  We'd need it to be able to grow and branch and create paths that packets can be sent along.
Signature intentionally left blank