Slashdot Mirror


Stretch Announces Chip That Rewires Itself On The Fly

tigre writes "CNET News reports on a chip startup call Stretch which produces the S5000, a RISC processor with electronically programmable hardware so that it can add to its instruction set as it deems necessary. Thus it can re-configure itself to behave like a DSP, or a (digital) ASIC, and perform the equivalent of hundreds of instructions in one cycle. Great way to bridge the gap between general-purpose computing and ASICs."

311 comments

  1. Cue Skynet jokes by Anonymous Coward · · Score: 0

    GO!

    1. Re:Cue Skynet jokes by Anonymous Coward · · Score: 0

      "You shall not pass!" LOL! LoTR R0X3NZ Y3R S0X3N5 D00D! WtF?!?!?!?!?!?!? :-\

    2. Re:Cue Skynet jokes by WwWonka · · Score: 5, Funny

      Cue Skynet jokes...GO!

      Sooooo this T800 model Terminator walks into a bar with a poodle under on arm and a basketball under the other...

    3. Re:Cue Skynet jokes by Anonymous Coward · · Score: 0

      Coulrophobia is no laughing matter!!!

    4. Re:Cue Skynet jokes by z0ink · · Score: 1

      The day microsoft writes their own instruction set and starts licenscing their own hardware:

      Sky.NET

      --
      Steal This Sig
    5. Re:Cue Skynet jokes by Lord+Kano · · Score: 1

      When I was a kid I had nightmares about the paradox in the Terminator.

      John Connor grew up in hiding before the big nuclear war. He lived in hiding because his mother knew that Skynet would try to kill him. Skynet wanted to kill John because he would be the leader of the human resistance in the future. John gained the skills to lead the human resistance because of the time he spent in hiding with his mother before the war. If Skynet never tried to kill John, he wouldn't have been concieved in the first place. If by some chance his mother had hooked up with someone other than Kyle Reese and he was fathered by a different man, he wouldn't have had to grow up in hiding learning how to blow things up and wage war.

      So, more likely than not in order to prevent John from becoming the leader of the human resistance, all Skynet would have had to do is leave his mother alone. But, if John had never been concieved or had not grown up to lead the human resistance, Skynet would have never known of him or the fact that it would be better served by ignoring him.

      My head is starting to hurt.

      LK

      --
      "Hi. This is my friend, Jack Shit, and you don't know him." - Lord Kano
    6. Re:Cue Skynet jokes by Anonymous Coward · · Score: 0

      A T800 has decided to go out to a piano concerto, but as things go, ended up killing the pianist. The concert organizer then gets very upset, and asks the T800 what he plans to do to appease the hundreds of angry concert-goers.

      The T800 turns to him and simply says, "I'll be Bach".

    7. Re:Cue Skynet jokes by phoenix.bam! · · Score: 1

      Not only that, but Skynet sent back Arnold to kill John's mother. WHen Arnold was destroyed, his parts were used to build skynet... So skynet HAD to send back Arnold to see it's on creation.

    8. Re:Cue Skynet jokes by Crypto+Gnome · · Score: 1

      Most people make this mistake.

      You can't try to understand temporal anomalies and paradoxes (paradoxi??) by starting from a normal thread of reality and then buggering things up by introducing "the paradox".

      That's the whole point of a paradox. { exhibiting inexplicable or contradictory aspects }

      For those who aren't entirely sure: Here's "the paradox" --> If Skynet never tried to kill John, he wouldn't have been concieved in the first place.

      The Paradox was created by The Temporal Anomaly (SkyNET sending The Terminator back in time to kill John)

      Of course, if you were A Time Lord, you'd understand that fiddling with the past (and sometimes the future) will often lead to Paradoxes (paradoxi??) and generally bugger up causality No End.

      --
      Visit CryptoGnome in his home.
    9. Re:Cue Skynet jokes by Anonymous Coward · · Score: 0
      >Sooooo this T800 model Terminator walks into a bar ...

      Normally I'd say *ouch*, but in this case I think the T800 would dent the bar instead of being knocked unconscious. Now the obvious question is whether he'd drop the poodle or the basketball in favor of the dented bar.

      T800's have pretty good knowledge of weapons, but unless this T800 happened to watch the movie UHF, I doubt he would realize the potential for using a poodle as a projectile weapon. So in short, I predict he would drop the poodle and pick up the bar.

    10. Re:Cue Skynet jokes by Lord+Kano · · Score: 1

      Not only that, but Skynet sent back Arnold to kill John's mother. WHen Arnold was destroyed, his parts were used to build skynet... So skynet HAD to send back Arnold to see it's on creation.

      At the time, that was a problem for me as well, but with Terminator 3 we learn that Skynet WILL be built no matter what we do.

      LK

      --
      "Hi. This is my friend, Jack Shit, and you don't know him." - Lord Kano
    11. Re:Cue Skynet jokes by Lord+Kano · · Score: 1

      Of course, if you were A Time Lord, you'd understand that fiddling with the past (and sometimes the future) will often lead to Paradoxes (paradoxi??) and generally bugger up causality No End.

      I prefer the pseudo geek-chic Paradoxen.

      LK

      --
      "Hi. This is my friend, Jack Shit, and you don't know him." - Lord Kano
  2. OH boy, Transmeta Part II. by Anonymous Coward · · Score: 0, Offtopic

    Je ne se quoi?

    1. Re:OH boy, Transmeta Part II. by Anonymous Coward · · Score: 0

      French nitpick: It's: "Je ne sais quoi." It means, "I don't know what."

      Though I think the phrase you are looking for is "deja vu" (already seen), anyway. It makes more sense with your Subject line.

    2. Re:OH boy, Transmeta Part II. by Anonymous Coward · · Score: 0

      Actually, it means 'I surrender'

    3. Re:OH boy, Transmeta Part II. by adamofgreyskull · · Score: 1

      Je ne sais quoi. 'Tard. :o)

    4. Re:OH boy, Transmeta Part II. by Anonymous Coward · · Score: 0

      Is it true that the French have 200 words for surrender, much like the eskimos have 200 words for snow?

    5. Re:OH boy, Transmeta Part II. by Anonymous Coward · · Score: 0

      I don't know, why don't you tell us once your country has been through 2,000 years of war of various stages?

    6. Re:OH boy, Transmeta Part II. by zero_offset · · Score: 1

      Typo. Try this:

      "Why don't you tell us once your country has lost wars for 2,000 years?"

      --

      Slashdot quality declines as the number of hot grits posts decreases. - Provolt's Law, Apr-09-2005

  3. virus hitting the hardware by KDN · · Score: 5, Insightful

    Can you imagine the virus you could write if you could change the instruction set of the cpu?

    1. Re:virus hitting the hardware by Neil+Blender · · Score: 2, Funny

      Can you imagine the virus you could write if you could change the instruction set of the cpu?

      Uh, no.

    2. Re:virus hitting the hardware by donnyspi · · Score: 1

      ...or if you could tell it to overclock itself? You could melt down someone's PC remotely.

    3. Re:virus hitting the hardware by Tall_Rob · · Score: 0, Offtopic
      Can you imagine the virus you could write if you could change the instruction set of the cpu?


      ObKhanQuote

      It would destroy such instructions in favor of its new matrix.

      /ObKhanQuote :-P

    4. Re:virus hitting the hardware by NanoGator · · Score: 4, Interesting

      "Can you imagine the virus you could write if you could change the instruction set of the cpu?"

      Forgive my ignorance, but why would this be any different than the virus you can write with the general purpose CPUs we have today? You could make the machine unreliable, but that wouldn't make for an effective virus distributing machine.

      --
      "Derp de derp."
    5. Re:virus hitting the hardware by Anonymous Coward · · Score: 0

      Can you imagine the virus you could write if you could change the instruction set of the cpu?

      Yeah, it could convince my Camry a few hundred more horse wouldn't be so bad. . .

    6. Re:virus hitting the hardware by torpor · · Score: 1
      --
      ; -- the corruption of government starts with its secrets. a truly free people keep no secrets. --
    7. Re:virus hitting the hardware by The_Mystic_For_Real · · Score: 1

      You could partially solve this problem by running as a restricted user all the time so that you couldn't change the instruction.

      --

      _____

      Thank you.

    8. Re:virus hitting the hardware by Anonymous Coward · · Score: 0

      Of course, because virus' never get root access to machines...

    9. Re:virus hitting the hardware by torpor · · Score: 1

      well, i could imagine a virus that would run on everything this CPU had in it, plus whatever other (legacy-by-then) CPU's are being 'emulated' in-circuit on it.

      so, yeah, maybe one day my house 'environment control superserver' that comes with its own toaster, microwave, and sextoy fittings, gets a virus off the MegaSupraNet and infests my oric-1 ... well ... i dunno ...

      "... find out what Max Headroom thinks about it, he'll probably know the answer..."

      --
      ; -- the corruption of government starts with its secrets. a truly free people keep no secrets. --
    10. Re:virus hitting the hardware by pmiller396 · · Score: 3, Funny

      > You could make the machine unreliable, but that wouldn't make for an effective virus distributing machine.

      10,000,000 Windows machines can't be wrong!

    11. Re:virus hitting the hardware by Short+Circuit · · Score: 4, Insightful

      Interesting point.

      People developing along similar lines must have means of controlling the new circuitry so that hot spots don't form on the die. Especially if they provide analog capability. It could be too easy to set up a feedback that could really trash that part of the die.

      Which brings up another thought: Do they have an on-board controller that tracks what parts of the die are usable and what aren't? If they do, they can have seriously high production yields.

      In fact, I wouldn't be surprised if such a self-diagnostic utility made its way into modular dies with specialized circuitry. So a processor could run on two AMUs instead of three, and so forth.

    12. Re:virus hitting the hardware by Anonymous Coward · · Score: 0

      While it is a good thing that the company has a compiler for this chip, I really hope they have a good debugger.

      Imagine, if my code doesn't behave the way I want it to, now I need to know if it's a bug in the code or an effect of some previous code that made a subtle change in the hardware.

      This could be as ugly to debug a self modifying code.

    13. Re:virus hitting the hardware by TheGavster · · Score: 1

      There was in fact a virus at one point that targeted certain Intel processors which had a flashable microcode system, whereby the instruction set was built of smaller operations, that could be rearranged through a flash operation if a more efficient system was figured out.

      --
      "Because Science" is one step from "Because old book". Try "Because of my experiment testing my falsifiable assertion".
    14. Re:virus hitting the hardware by It'sYerMam · · Score: 1
      Send out your payload to the contents of a particular book, along with anything gleaned from the harddrive, then sit monitoring/portscanning on the network/internet for a while, before completely melting the system.
      Sitting for another year won't make much difference if its already spread nicely.

      Of course, a much better way of doing things would be to rearrange the hardware to give itself more capacity while cutting off the rest of the computer.
      Think about it: Virus needs a limited number of instructions to run, so why not ditch the floating point unit, excess graphics space and other extraneous parts, converting them into duplicates of instructions the virus requires. This allows it to do multiple mailings/whatever, simultaneously.

      ...Bugger!

      This ignores the opportunities of mutating the CPU into AI entities that get you while you sleep!

      --
      im in ur .sig, writin ur memes.
    15. Re:virus hitting the hardware by AmericanInKiev · · Score: 2, Insightful

      I wouldn't bet on that.

      A Minor change in the instruction set would likely render the OS dysfunctional - and while that would certainly get attention - it would not propogate very well.

      There is a math about viruses which requires them not to kill their hosts, and to do as little damage really as they can bear. Damaging viruses get high priority on fix lists and would get shut down more quickly than less harmful viruses.

      I think a CPU change virus would be a rather self-defeating proposition.

    16. Re:virus hitting the hardware by DebianRcksLindowsLie · · Score: 1

      Can you imagine the virus you could write if you could change the instruction set of the cpu?

      Indeed. If the processor can tell ITSELF how to change, then the code can be put in somewhere.

    17. Re:virus hitting the hardware by sudog · · Score: 1

      Uh.. because with one you can boot to a clean floppy and be assured that a newly-wiped system is completely clean, but there might be no way to extract it from the CPU core itself?

    18. Re:virus hitting the hardware by NanoGator · · Score: 1

      "but there might be no way to extract it from the CPU core itself?"

      Why is it assumed that the CPU doesn't have a reset button like your bios does?

      --
      "Derp de derp."
    19. Re:virus hitting the hardware by Baikala · · Score: 1

      The chip can wire new instructions, or new parallel instruction sets, but not programs.

      If you can write a single instruccion self replicating virus i'll sign as your fan!

      --
      16,777,216 comments ought to be enough for any forum!
    20. Re:virus hitting the hardware by Lemmeoutada+Collecti · · Score: 1

      Doesn't have to be that bad, just wire up an instruction to recursively calculate say PI, or the Fibonacci series, into one location on the die. Think your AMD gets hot? Wait until the die starts melting in one spot only...

      Or alter an instruction creatively. Maybe make the JMP instruction always branch with a call parameter to virus code, loaded in memory. So now ANY JMP loads the virus.

      Or move the location of the most common instructions to the center of the die, defeating the heat dispersion...

      Hmmm... maybe I should write some of these ideas down...

      --

      You can have it fast, accurate, or pretty. Pick any 2.
    21. Re:virus hitting the hardware by po8 · · Score: 1

      Forget virus. I'll take Small Soldiers for 1000, Alex!

    22. Re:virus hitting the hardware by MarcKaw · · Score: 1

      You just did.

      Smile, you're on Slashdot!

    23. Re:virus hitting the hardware by zonker · · Score: 0

      here's my crackpot idea...

      amd should buy these guys and transmeta. then use transmeta's tech to create a lower power chip (than the 80 watt or whatever chips we have now) and use the stretch tech to make it faster (to make up for any lost speed due to lower clocks). ;P

    24. Re:virus hitting the hardware by excessive · · Score: 1
      Forgive mine too - the microcode on the later Pentiums can be updated (Which'll get done at startup by BIOS or Windows/Linux sometime if its needed) at startup.

      The nastiest use of this would be to somehow change the microcode to add instructions to work around ring 0 (It is ring 0? Kernel level?) and gain full access to all the hardware and memory and use this to bypass any security in the OS...

      It looks to me (Not being an expert in these things) that the compiler generates code and something similar to microcode which allows optimisation at 2 levels. (It could add one instruction to do a multiply by a fixed number if this is used often enough in the code)

    25. Re:virus hitting the hardware by builderbob_nz · · Score: 1

      Forgive my ignorance, but why would this be any different than the virus you can write with the general purpose CPUs we have today? You could make the machine unreliable, but that wouldn't make for an effective virus distributing machine.

      Part of my job is removing viruses from the computer, some of which has to be done by hand depending on the virus. I would much prefer to have to remove a virus infecting software than I would hardware (it would probably be much cheaper for the customers too)

      --

      Karma? Hey I just call it as I see it.
    26. Re:virus hitting the hardware by otuz · · Score: 1

      Why is the parent modded down?

  4. New application-speed records to be set... by LostCluster · · Score: 4, Insightful

    If this doesn't rempresent the death of the megahertz as a processor-benchmark standard, I don't know what will...

    Effective application speed was never based on a cycle count alone, because different processors can have better instruction sets for the given application. The main breakthrough here is that this chip leaves "user-definable" space in its instruction set so they can re-optimize the instruction set on the fly. Whatever you're running, its most commonly used functions can almost slide from being code to being "on the chip" and that's sure to speed up the experienced speed.

    Yeah, I know its a /. cliche, but... imagine a cluster of these!

    1. Re:New application-speed records to be set... by Stripe7 · · Score: 4, Interesting

      This looks interesting, at this generation it looks to be dedicated applications. You code for your particular application and use their compiler which restructures the CPU to optimize for that application. What it does not say is if the hardware changes are read/write. If you release a maintenance patch to your application, do you have to swap in a new CPU for optimal performance? If the area is read/write just how many times can you change the CPU instruction set? Can you change the CPU instruction set with something else other than using their compiler? That is using a microcode release that rewrites the CPU. I would not want to load a compiler onto every one of my products.

    2. Re:New application-speed records to be set... by MarcoPon · · Score: 1
      > If this doesn't rempresent the death of the megahertz as a processor-benchmark standard, I don't know what will..

      May be something like this rempresent it also? :)
      The WIZ Processor

      Clockless, only 1 opcode, the registers do the trick! :)

      --

      SeqBox
    3. Re:New application-speed records to be set... by Tailhook · · Score: 1

      If this doesn't rempresent the death of the megahertz as a processor-benchmark standard, I don't know what will...

      Keep trying. This has zero relevance toward misguided attempts to debunk processor cycles as a performance measure.

      Supposedly this device can reconfigure itself to support new instructions. Apply a faster clock and it will reconfigure, or execute the present configuration, that much faster.

      Just because your pet CPU manufacturer doesn't have the capital or expertise to produce the fastest possible device doesn't mean they wouldn't if they could, or that you wouldn't be as happy as a clam if they did. The best course is to divorce yourself from the equation and stop playing favorites. These are electrical devices sold to a market of customers, nothing more. About the only real measure of value is to ratio of computational capacity over cost. The rest is silly fanboy noise.

      --
      Maw! Fire up the karma burner!
    4. Re:New application-speed records to be set... by Anonymous Coward · · Score: 0

      The configuration is read directly from DRAM, so you can change it as often as you like. In fact, you can reconfigure one half while running an instruction in the other half.

      aQazaQa

  5. Beware! by spudthepotatofreak · · Score: 5, Funny

    Give these damn chips awhile to evolve and you'll have borg nanoprobes... Beware the nanoprobes!!

    1. Re:Beware! by Anonymous Coward · · Score: 0

      It's not the nanoprobes I'm afraid of, it's the megaprobes :-)

    2. Re:Beware! by sryx · · Score: 1

      Give these damn chips awhile to evolve and you'll have borg nanoprobes... Beware the nanoprobes!!
      Hey nanoprobes hurt a hell of a lot less than analprobes!
      -Jason

  6. Sure it will.... by WebMasterJoe · · Score: 5, Funny

    And it will ship with a free copy of Duke Nukem Forever, right?

    --
    I really hate signatures, but go to my website.
    1. Re:Sure it will.... by Anonymous Coward · · Score: 1

      ...which you can reconfigure on-the-fly to be Halo!

    2. Re:Sure it will.... by Aldurn · · Score: 1

      Certainly.

      In fact, this chip has already reduced it down to the single instruction:

      dnf

      --
      char sig[120] = "\0"
    3. Re:Sure it will.... by LilGuy · · Score: 1

      I think NOP would better suffice..

      --

      You're nothing; like me.
  7. so does that mean... by hatrisc · · Score: 2, Insightful

    we can have only one standard assembly language? the hell with java if that's the case.

    --
    I write code.
    1. Re:so does that mean... by tuffy · · Score: 5, Informative
      we can have only one standard assembly language?

      That's already here. It's called "C".

      --

      Ita erat quando hic adveni.

    2. Re:so does that mean... by Stile+65 · · Score: 1

      The advantages of Java (and .Net, once Mono comes out) is not just portability but managed code as well, to help you protect from things like buffer overflows. This applies as well to interpreted languages like Perl, Tcl, Python, etc.

      Where I see a real possibility is in taking the JVM/CLR/Parrot/etc. and putting part of THAT functionality on-chip. Imagine your bytecode or interpreted programs running as fast on this platform as a compiled program runs on your run-of-the-mill Intel or AMD processor!

      --
      I claim first use of "Error No. 0B" - or "No. 0B error." It'll be the new ID 10T!
    3. Re:so does that mean... by Liselle · · Score: 1

      While you're at it, to hell with anything that requires maintainence, or is more complex than "Hello World". Speed isn't everything.

      Given the choice between writing all of my programs in assembly, or being thrown face-first down a flight of stairs, I'd have to think about it.

      --
      Auto-reply to ACs: "Truly, you have a dizzying intellect."
    4. Re:so does that mean... by Anonymous Coward · · Score: 0

      Given the choice between writing all of my programs in .NET, or being thrown face-first down a flight of stairs, I'd wouldn't have to think about it.

    5. Re:so does that mean... by Monkelectric · · Score: 1

      If I had mod points, you man, would recieve them all.

      --

      Religion is a gateway psychosis. -- Dave Foley

    6. Re:so does that mean... by sketerpot · · Score: 2, Informative

      There's a cool library called GNU Lightning which will generate machine code at runtime, which is good for JITs and such. It isn't exactly what you're looking for, but it illustrates that having a standard assembly language (or, much more likely, several standard assembly languages!) isn't all that far off.

    7. Re:so does that mean... by sketerpot · · Score: 1

      If you cached JIT compilation (which would probably be a lot easier), I don't think you would find such a pressing need to migrate features to hardware. It's generally easier to do complex things like that in software.

    8. Re:so does that mean... by Anonymous Coward · · Score: 0

      or, you could write one awesome language that does everything java does, and have one language to rule them all which is compiled into one assembly code, which therefore runs on one instruction set, and therefore is awesome.

    9. Re:so does that mean... by hatrisc · · Score: 1

      C, though pretty damn fast isn't portable. java bytecode _IS_ standard (in most cases). The type of standard I was refering too.

      --
      I write code.
    10. Re:so does that mean... by TeraCo · · Score: 1

      Awesome, it turns out .NET has a use after all.

      --
      Not Meta-modding due to apathy.
    11. Re:so does that mean... by nomadic · · Score: 1

      Write once crash everywhere...

    12. Re:so does that mean... by 42forty-two42 · · Score: 1

      C's plenty portable as long as you stick to the standard. Plenty of people don't, though, and that's where unportable C comes from. Of course, without breaking portability you're not going to get much done, beyond mathematical stuff.

  8. Whoa.. by Anonymous Coward · · Score: 5, Funny

    Just imagine a Beowulf Clu...oh. Skynet. Right.

    Let's not do this one.

    1. Re:Whoa.. by Anonymous Coward · · Score: 0

      And they realised that Skynet wasn't just a military system, but had already distributed itself across the world on domestic PCs. And it was called Gator...

  9. Help me! Help me! by Anonymous Coward · · Score: 0

    Cue "The Fly" jokes.

  10. One word . . . by Revolution+9 · · Score: 3, Funny

    cool. -One step closer to Judgement Day

  11. yawn ... by torpor · · Score: 4, Insightful

    ... wake me up when i can buy a thousand of them for $10 a piece ...

    [okay, okay, so it'll be -hell- fun to design codecs and other protocols that can switch their chipset dynamically, yeah, but i'd need 1000's of them deployed to have a real reason to do it...]

    --
    ; -- the corruption of government starts with its secrets. a truly free people keep no secrets. --
    1. Re:yawn ... by Tatarize · · Score: 1

      Wake me when I can buy a thousand of them on one chip for a few hundred bucks. Come on... gimme diamond fabbed, multi-layer, super-scaler, dynamicly reprogrammable cpu.

      Where did I put that android head?

      --

      It is no longer uncommon to be uncommon.
  12. So, do they have Chippy? by Neil+Blender · · Score: 5, Funny

    "I see that you are (insert processor mumbojumbo.) Would you like me to reconfigure my instruction sets?"

  13. Can someone explain? by aiken_d · · Score: 2, Interesting

    How is this different from FPGA's?

    Thanks
    -b

    --
    If I wanted a sig I would have filled in that stupid box.
    1. Re:Can someone explain? by Anonymous Coward · · Score: 0

      How is this different from FPGA's?

      It is fast and cheap.. enuf said.

    2. Re:Can someone explain? by DaHat · · Score: 4, Informative

      For the most part, FPGA's you build its code from scratch, you give it it's identity of how it works, what it does and so on.

      This chip sounds like a hybrid between an FPGA and a run of the mill general purpose RISC processor. Being based on a RISC instruction set, you code for it as you would a normal processor, however if the compiler sees code which could take advantage of having more CPU support, it could add instructions to the FPGA like portion of the chip to enable better throughput.

      The short summery is: FPGA, programmed from scratch. Standard RISC processor: Already has instruction set which you program against.

      This could be quite handy for some of the embedded programming I do.

    3. Re:Can someone explain? by Hektor_Troy · · Score: 1

      As far as I can tell, it is different in that you have essentially an FPGA-like chip on the same core as a regular CPU.

      --
      We do not live in the 21st century. We live in the 20 second century.
    4. Re:Can someone explain? by Valar · · Score: 1

      a FPGA is just a block of logic gates that can be connected after the original manufacture. Typically, they are used to implement simple logic cheaply and easily. This is more of an entire processor designed on a similar principle. I would guess that it includes registers, a clock, bus connection facilities, etc. If anything, this is closer to a CPLD which combines i/o blocks, function cells and interconnection blocks to create somewhat more complicated (and often times sequential, as opposed to combinational) logic.

    5. Re:Can someone explain? by imadork · · Score: 1
      How is this different from FPGA's?

      If I read the article correctly, the difference is in the compiler.

      When you write code for this processor, the compiler would figure out which operations would fit best in reprogrammable logic, then configures the logic and compiles to this custom instruction set all on its own. At runtime, the custom logic is loaded and the program executes.

      A traditional FPGA, while reconfigurable, is normally developed in Verilog or VHDL. Where reconfigurable logic is used in a microprocessor-oriented system, you have two development paths: HDL code for the hardware, and whatever the software goys are using for the software.

      The neat thing about this is that their C compiler is essentially doing the hardware coding.for you. I'm much more interested in the compiler than in the chip itself...

    6. Re:Can someone explain? by satguy · · Score: 1

      FPGA is the name of the physical packaging of the IC ("floating pin grid array"), while this item is an IC that can effectively burn new neural pathways and deploy new instructions in whatever packaging it's put.

    7. Re:Can someone explain? by wronskyMan · · Score: 1

      FPGAs are reprogrammed with internal switches; some of them use actual fuses that are blown/fused to make connections. In any case, they probably do not reconfigure as fast as this chip; in addition, IIRC, FPGAs have a limit to how many times they can be reprogrammed.

      --
      --- You shall know the truth, and the truth shall make you mad- Neal (not Cowboy) Boortz
    8. Re:Can someone explain? by Hast · · Score: 1

      Well it seems rather similar to the Virtex 2 Pro, those have PowerPCs integrated on them. Although they are rather expensive. And while the individual chips may not be all that expensive the boards are.

      All in all it seems like these have a developer environment which helps the user port C/C++ programs to this platform. There has been quite a few of those chips / systems before though. It will be interesting to see if this one can take off the ground where the others have failed.

    9. Re:Can someone explain? by falzer · · Score: 3, Informative

      FPGA in this context means Field Programmable Gate Array.

    10. Re:Can someone explain? by pelgv · · Score: 2, Informative

      FPGA stands for Field Programable Gate Array... and it is a Chip that can be Programed, and Re-Programed... The programations is a low level one... even lower than Micros... you design it for electrical connection between gates...

      dunno where u got that definition...

    11. Re:Can someone explain? by Arroc · · Score: 1

      I assume that the reconfiguration should be able to happen dynamically while the chip is running.

    12. Re:Can someone explain? by uss_valiant · · Score: 1

      while most answers to the question make some valid points, they don't apply to the question :) the answer from imadork (226897) is the only one pointing out the main difference: The new chip from Strech + its compiler translate the functionality of your (c++, ...) code into hardware. A task that has to be done by a hardware description language programmer when targeting FPGA / ASIC. Kind of the holy grail :)

    13. Re:Can someone explain? by bill · · Score: 1
      Actually not all FPGA's use 'switches'. It is true, some FPGAs are based on anti-fuse technology which is essentially is a crosspoint switch. Actel has a several families of these, which are programmed once. These types of FPGAs are actually viewed by many to be the preferred technology for use in some military, high-reliability type environments.

      The other basic FPGA technology is SRAM based. Xilinx, Actel, and Lattice all have SRAM based FPGAs which are reprogrammable electronically. The can be reprogrammed tens of thousands of times - since the Logic cells are based on SRAM memory technology. Some of the newer products, such as Lattice FPGAs, have Flash AND SRAM in the FPGA, which allows dynamic reconfigurations of the FPGA (i.e. a new configuration can be loaded into non-volatile Flash while the FPGA is running).


      The newest FPGAs can reconfigure in a span of microseconds. That means reconfiguring in a few clocks of a megahertz clock signal. Sure it's not instantaneous, but well within the reset ramps of most chips out there. In this regard, the Lattice chips are pretty much instant-on.

    14. Re:Can someone explain? by Phurd+Phlegm · · Score: 1
      When you write code for this processor, the compiler would figure out which operations would fit best in reprogrammable logic, then configures the logic and compiles to this custom instruction set all on its own. At runtime, the custom logic is loaded and the program executes.

      I wonder how this would work in a multiprogrammed environemnt? Can you swap in instructions fast enough to make it reasonable? I assume that there's a different "instruction space" for each process, or some interesting security problems might result.

    15. Re:Can someone explain? by Anonymous Coward · · Score: 0

      Wow, funny how you can be so clueless.

      FPGA = Field Programmable Gate Array

      FPGAs can be programmed to become what amounts to customized ASICs. These days FPGAs are pretty much as fast as ASICs. Obviously you pay a premium in price and PCB real estate.

    16. Re:Can someone explain? by ajlitt · · Score: 1

      Out of what orifice did you pull that definition? FPGA stands for Field Programmable Gate Array. Instead of 'neural pathways', the chip contains a crapload of cells (usually made of a couple of LUTs and some flops and a pile of MUXes) connected within a matrix of interconnects. At the termination of these matrices are the I/O blocks, which connect bits of these functions into the real world. The idea is that each one of these blocks can describe all or part of a logic function, and these functions can be arbitrarily wired together to form a CPU / ASIC / accelerator / whatever. It's a lot more complicated than that to use in practice, since things like propagation delays, clock skew, and amount of resources must be taken into account by both the compiler and the designer, much like in designing an ASIC. So it's not a click-and-drool development cycle, and the FPGA doesn't do any of this reconfiguration on its own (well, most of the time anyway).

    17. Re:Can someone explain? by fpga_guy · · Score: 1
      So as I type this I'm sitting in a session at the Reconfigurable Architectures Workshop.. Two days of papers talking about nothing but this stuff.

      But anyway, I do this for a living, and my first bit of fun was to port the Linux kernel to run on an FPGA-based processor, the Xilinx Microblaze.

      Next step, work I'm doing at the moment, is to map the reconfiguration memory into the Linux device heiracrchy, so I build self-reconfiguring Linux systems. Imagine Arnie in T2 operating on himself, and you're getting the idea.

      Doing it this way, I can type something like

      cat bitstream.bit > /dev/self

      and it causes the fpga-based linux system to partially reconfigure the FPGA itself, swapping in new hardware functionality.

      fun stuff..

  14. more info by morcheeba · · Score: 5, Informative
    NetworkZone has a product review with some more insight. A good quote:

    ...the [300 MHz] Stretch even beats the Intrinsity FastMath processor running at 2 GHz

    Of course, there is no such thing as a universal solution and the Stretch processor does have its limits. One significant area is in "low touch" operations such as network processors. While it can certainly do the relatively simple packet inspection and transformation that switch fabrics and network processors normally handle, it is really much better suited to the heavy-duty calculation- and manipulation-intensive tasks found in "high touch" applications such as video compression. For example, H.263/264 motion estimation is capable of producing very high-quality video from a relatively small bit stream, but requires lots (and lots) of raw processing horsepower. Happily, the Stretch processor is only too happy to oblige, churning out a SAD (sum-absolute difference) operation on a tile-full of pixels for H.263 video in 43 ns (H.264 takes 83 ns).

  15. This is a setback for crypto-land... by LostCluster · · Score: 4, Insightful

    I think we're going to have to move the crypto benchmarks back a step when this tech comes out. Not very many of us have RISC chips that are optimized for MD5 or any of the other popular crypto formulas, but if the typical consumer PC had this technology, we could all effectively have an on-demand RISC for whatever we need at the moment sitting in our PCs.

    In short, the time-to-crack using consumer technologies for almost any form of crypto is about to take a step backwards. It won't "break" anything, but the brute force combinations will be able to be examined in a faster time, meaning higher standards will be needed for the same level of protection you have today.

    Not surprising, these breakthroughs will always keep coming...

    1. Re:This is a setback for crypto-land... by Anonymous Coward · · Score: 0

      Even if this improves the performance of brute-force attacks 1000 fold that will still only reduce the time it takes to brute-force a good key from 5 trillion years to 4 trillion.

    2. Re:This is a setback for crypto-land... by Anonymous Coward · · Score: 0

      shut your face, you stupid karma git. how about i mod my insightful fist in your karma ass?

    3. Re:This is a setback for crypto-land... by jsac · · Score: 2, Insightful

      Luckily it will also immensely speed up encryption times. So, on the whole, probably a gain for the white hats rather than the black hats.

      --
      "The urge to fly from modern systems, instead of moving through them to even greater, fairer things is, I think, an indi
    4. Re:This is a setback for crypto-land... by torpor · · Score: 1


      yeah, i could imagine this being more of a boost for crypto than anything else, actually. if you can dynamically hardware-assist certain parts of your bitstream, changing 'code' and 'data' states not just on one side of a set of registers, but on the other side as well, then it is the beginning of a whole new realm of hard crypto ...

      i have to wonder what sort of instruction sets they've got running... could I, for example, 'emulate' other architectures on it dynamically? I haven't quite penetrated their market-blurbs yet, but it sure would be nice to know what sort of apps and architectures they've already got running ...

      --
      ; -- the corruption of government starts with its secrets. a truly free people keep no secrets. --
    5. Re:This is a setback for crypto-land... by Welsh+Dwarf · · Score: 1

      So? the only reason crypto works at the moment is because cracking is several hundred orders of magnitude slower than encrypting/decrypting.

      Taking more time to encrypt/decrypt isn't a problem (does anyone here notice the differance between 2.5ms and 5ms?) but reducing the crack time by the same proportions means that codes that were built to last years might only last months, or even mere weeks, which is a real problem.

      --
      Ask 8 slackers a question, get 10 awnsers (a citation, but I can't remember from who)
    6. Re:This is a setback for crypto-land... by Jerf · · Score: 3, Insightful

      Along with jsac's comment (more processor power exponentially benefits encryptors, only linearly benefits crackers, on the whole more power means a win for encryptors), I'd like point out this is only a set-back for encyption in-as-much as encryptors claim that their encryption will keep your data safe for all time. Which is to say, at least for the reputable encryptors, this isn't a set back at all.

      If you insist on putting words in their mouth, then yeah, you might consider it a set back. But that's your misunderstanding, not theirs. All reputable encryptors have accounted for Moore's Law in their cost/benefits tradeoffs. Since it doesn't take much encryption power before it requires computers larger then the Universe to crack it via brute force (and since "cracks" on good encryption are really typically just ways of collapsing the search space, not procedures that give immediate answers, often adding more bits will require Universe sized machines, too), this isn't that big a deal for encryption. Push your key size up and be done with it. Even conventional machines can handle that today, it just takes longer.

    7. Re:This is a setback for crypto-land... by fitten · · Score: 1

      ...not really. This thing doesn't do anything that isn't doable today with other parts. This thing just combines a general purpose CPU with an FPGA on a single chip. People have been using FPGAs fed by host CPUs for a long time.

    8. Re:This is a setback for crypto-land... by kasperd · · Score: 1

      Taking more time to encrypt/decrypt isn't a problem (does anyone here notice the differance between 2.5ms and 5ms?) but reducing the crack time by the same proportions means that codes that were built to last years might only last months, or even mere weeks, which is a real problem.

      If we assume this can speed up AES by a factor of two (not unrealistic) or even a factor of ten (I dobut it), it still doesn't mean that what took years to crack before can now be cracked in weeks. If it took two years before, and you can do it ten times faster, it still takes more than two months. But there is another and much more important point. If thise can speed up encryption and decryption, people can switch to a stronger cipher. Say people switch to this new chip to get a factor of two speedup, but at the same time they switch from AES-128 to AES-256 and lose 25% of the performance. Overall this means they will have a speedup of 50% and at the same time a stronger cipher that will take millions of times more work to break. So even if the crackers got a thousand times faster processor, they would still need a thousand times more time to break it.

      --

      Do you care about the security of your wireless mouse?
    9. Re:This is a setback for crypto-land... by Welsh+Dwarf · · Score: 1

      Along with jsac's comment (more processor power exponentially benefits encryptors, only linearly benefits crackers, on the whole more power means a win for encryptors), I'd like point out this is only a set-back for encryption in-as-much as encryptors claim that their encryption will keep your data safe for all time. Which is to say, at least for the reputable encryptors, this isn't a set back at all.

      Forgive my ignorance, but in this case isn't this going to play ageinst encryptors, since encrypting/decrypting is already fairly straight forward, so added optimizations will only provide a marginal gain, whereas for crackers, who have to do extremally heavy computation over a large range of numbers, the possible speed ups are enormous.

      IIRC this technique has been used before, in a proof of concept case, where they found that the easiest solution was just to through an EE at the problem, and use specialized hardware for the crack.

      --
      Ask 8 slackers a question, get 10 awnsers (a citation, but I can't remember from who)
    10. Re:This is a setback for crypto-land... by Jerf · · Score: 2, Interesting

      We do, say, 2048-bit encryption (asymmetric), because it would be "too slow" to do 20480-bit encryption. "Too slow" here is a fuzzy term, but generally speaking, if you're sending an encrypted email you don't want to hit "send" and have it delayed for three weeks while it gets encrypted. There's no real reason we couldn't do it today.

      As computers speed up, both encryption and decryption get faster. However, while adding another 128 bits to 128-bit symmetric cipher may be "free" with newer computers (and eventually will be), the 2^128 multiplicitave increase to the space the decrypters have to search is not free. To increase encryption power, the encryptors merely double their work. (To an approximation; I don't think the work load is strictly linear but it's a lot closer to that then exponential, and that's all that matters.) Meanwhile, for that relatively modest investment in encryption power, the decrypter's jobs got 340,282,366,920,938,463,463,374,607,431,768,211,45 6 times harder.

      This is why, in the relatively near future, we'll all have encryption that is effectively "unbreakable", because no conceivable decrypter could be built that could do the calculations to crack the encryptions, even with the raw materials of the entire Universe.

      Practically speaking, most of us already have damn-near unbreakable encryption today; if you're connecting to a computer with SSH, SSH is most likely the strongest link in your security chain by far; the weak links are the computers on each end of the link, the humans on each end of the link, and possibly the facilities the computers are in. Nobody is going to tap your ssh stream and get any value from the massive decryption effort that would be necessary unless you're trading secrets worth billions.

      Specialized hardware can only gain you a linear speed up, at best, and those calculations for "minimal computer" to crack a given encryption key are not extrapolated from modern computers, they are extrapolated from the maximum computation possible to do, given a finite energy supply. (QM-based computation advocates may wait until they have a large-scale (multi-thousand-qubit) machine to jump in here.)

    11. Re:This is a setback for crypto-land... by Anonymous Coward · · Score: 0

      what about quantum computing?

    12. Re:This is a setback for crypto-land... by Welsh+Dwarf · · Score: 1

      You still have the same problem, Ars Technica has an article on this called The ultimate limits of computers

      In short, what the grandparent is saying is that we will soon be able to encrypt so strongly that even with the entire universe as a computer, you wouldn't be able to get through it in a reasonable timeframe. Also, by then quantum crypto should be fairly commonplace, which solves the problem.

      --
      Ask 8 slackers a question, get 10 awnsers (a citation, but I can't remember from who)
    13. Re:This is a setback for crypto-land... by Anonymous Coward · · Score: 0

      Nobody should be using ciphers that were only built to last years.

      Currently, brute-forcing DES is something that would take years on a single processor (and considerably less on a specialized device, as has been demonstrated). The key length (56 bits) was considered insufficient by knowledgeable people when it was introduced in the 70s.

      The minimum key length of modern symmetric algorithms is 128 bits, which, assuming significant flaws in the algorithm aren't found, cannot conceivably be brute-forced with any forseeable computer. Just the minimum theoretical energy requirements for the computation exceed the mass of the solar system converted directly to energy.

      Asymmetric algorithms are not currently quite as well-off, but improvements like custom hardware will allow us to increase key lengths so that the situation is similar. Just moving from a 32-bit to a 64-bit processor doubles the speed of the multi-precision arithmetic required by these algorithms.

    14. Re:This is a setback for crypto-land... by Alsee · · Score: 1

      While that Ars Technica artical talks about quantum mechanics, it only does so in terms of a classical computer and classical computation. It does NOT address the capabilities of quantum calculations. Assuming we can build and program a suitable quantum computer, it can test every possible password/key simultaneously. Any encryption short of a one-time-pad can conceivably be cracked in linear time.

      Linear time == instantly.

      quantum crypto

      The only 'quantum crypto' I am aware of is actually a quantum communication system. It really only amounts to a method of sending a random one-time-pad across an untappable wire. It's useless for most normal encryption tasks.

      Quantum computers would wipe out all exististing encryption and 'quantum crypto' does not offer any general replacement.

      -

      --
      - - You can't take something off the Internet! That's like trying to take pee out of a swimming pool.
    15. Re:This is a setback for crypto-land... by Alsee · · Score: 1

      Question: How big is the number?
      Answer: Well, Slashdot would shove a space in it.

      -

      --
      - - You can't take something off the Internet! That's like trying to take pee out of a swimming pool.
    16. Re:This is a setback for crypto-land... by Jerf · · Score: 1

      Linear time == instantly.

      Well, linear time == linear time. But I know what you mean.

      The problem is that "Quantum Computing" is, in most people's minds, where Nuclear Power was fifty years ago. The fact is that if you throw enough bits at even conventional encryption, as I understand it, you still can't build even a theoretical QC that can crack the encryption, because I can always push the real solution below the noise limit.

      QC isn't magical. Assuming it works at all, which I think there is stronger reason to doubt then believe*, it still has limits. QC works by running the answers all at once and then filtering the resulting wave for the answer. ("Filter" here has technical meaning.) If you run too large of a problem, you can't "amplify" the correct answer with an acceptably high probability, you're just as likely to get a wrong one. We may need all 20480 bits, or 204,800 bits, but eventually you're going to need a machine that is too large to actually be built to crack it. (Because of the way they works, qubit-based machines have rather firm upper limits to the complexity of a problem any given machine can compute, so even if a theoretical machine could crack our best encryption, it will probably still be the case that no real machine can do it.)

      *: Large qubit machines, that is. I am quite aware small ones have been built and there has been progress in the field but I am of the opinion that we have already hit the point of diminishing returns. A qubit-machine requires too much isolation from the real world to ever be practical in this Universe.

      Now, if you're like a PhD student or something in quantum computing, I welcome correction. But if you're just waving qubits around like a magic wand, please put the wand down and stop worrying that encryption is going to stop working. Besides, qubit-based machines only get us into exponential land, and there are an infinite number of super-exponential functions (using computer science lingo freely). I would be absolutely stunned if quantum computing didn't have a corresponding encryption algorithm it can feasibly implement that quantum computing must then brute force in its own way. That's just the way the complexity domains work; an infinite number of them, and my intution strongly suspects that the encryptors will always have a simpler problem then the decryptors.

    17. Re:This is a setback for crypto-land... by Alsee · · Score: 1

      Yes, as I said Assuming we can build and program a suitable quantum computer. Definitely a non-trivial assumption, but I think we are making good progress.

      In particular they found an excellent quantum error-correction method. It strips noise right out. *If* we can preform a single quantum operation and then make it through an error correction step then we can simply slap them together like we do with transistors. At that point they resemble ordinary bits and ordinary logic gates. You can then build an arbitrarily large QC. The only limit on size would be physical cost.

      super-exponential function

      Yes, but encryption key possibilities are exactly exponential in the number of bits.

      I would be absolutely stunned if quantum computing didn't have a corresponding encryption algorithm

      Interesting idea, but I don't see any apparent way to do so. You're pretty much stuck with an ordinary binary key with an ordinary exponential number of possibilities. A single encryption or decryption operation may take as long as you like, but a QC can still run them in parallel.

      Well, hopefully Santa will bring me a QC for Christmass and I'll tell you how it all works out :)

      -

      --
      - - You can't take something off the Internet! That's like trying to take pee out of a swimming pool.
  16. Keywords in this article. by Anonymous Coward · · Score: 0

    startup call[ed] Stretch

    As soon as Ti or intel start pumping these out I'll jump onboard but with Stretch as my only source...

  17. Anything more? by AtariAmarok · · Score: 4, Funny

    Is this the only technology they managed to salvage from the android's severed hand? Any interesting gears and motors at all?

    --
    Don't blame Durga. I voted for Centauri.
    1. Re:Anything more? by Anonymous Coward · · Score: 0

      Will this do?

    2. Re:Anything more? by Anonymous Coward · · Score: 0

      I don't believe this has anything to do with androids... unless the "RISC" processor is actually a 6502?

  18. How is it possible? by dhasenan · · Score: 5, Insightful

    How can something that normally takes "hundreds of thousands of instructions" be handled in a single instruction? Surely all the same mathematical operations must take place, except for some optimization. Or is it a matter of a certain structure for computation being created in a more permanent fashion rather than being dynamically formed upon demand? Then the operations could be performed in a single cycle. On the other hand, that portion of the processor would become useless to other tasks. Or am I misunderstanding this entirely?

    1. Re:How is it possible? by Professr3 · · Score: 3, Informative

      Say you had to compute a 10000-entry sin/cos table (simple example). The processor would reconfigure itself to perform sin/cos operations in a single cycle (parallel ALUs etc.) and, if there were enough configurable circuits, perhaps multiple sin/cos table entries at once. That's where the speed advantage is - large blocks of repetitious calculations. With a sophisticated enough reprogramming AI, computationally intensive apps like video games could get a huge performance boost.

    2. Re:How is it possible? by Chirs · · Score: 2, Informative

      You hit upon the answer in the latter portion of your post. Most cpus are generalists--they're fast at most things, but aren't optimized for anything. This kind of tech allows you to optimize your cpu for a particular task.

      If you have something that needs to do a simple operation on each member of a large data set, the chip could be configured as many tiny simple cores that are just smart enough to do that operation.

      Or if you needed to do a complicated math function, you could optimize the cpu for that function.

      Of course, it takes a certain amount of time to do the reconfiguration, so it may only pay off for many repetitions or very complex calculations.

    3. Re:How is it possible? by radish · · Score: 2, Informative

      I studied "Custom Computing" as it was called at my university a few years ago. That was based around using FPGAs as the processor, but with the same idea of doing on-the-fly redesign of your hardware to suit the current problem.

      The basic idea is to move problems from the time space (i.e. do X then Y then Z taking T time to do it) to the physical space (i.e. do X next to Y next to Z taking S transistors to do so, but only one cycle). So your simple add operation in a regular microprocessor, which fetches the data and runs them through a generic arithmetic unit before putting the result back somewhere would instead have the load, add and store circuitry "hard coded" in actual transistors.

      It takes some serious mental acrobatics for a programmer like me, which probably led to my not-so-stellar performance in that class ;) But it sure is interesting.

      --

      ---- Den ene knappen er powerknapp, den andre er Bender voice knapp "Bite My Shiny Metal Ass"

    4. Re:How is it possible? by Boogaroo · · Score: 1

      Perhaps they mis-worded it.

      You can do lots of addition/subtraction instructions to get the result of a single multiplication instruction.

      Maybe they meant to say thousands of clock cycles can be reduced to one clock cycle since you can have larger single instructions(i.e. squareroot over pi or something) programmed into the chip that only take one cycle?

    5. Re:How is it possible? by the+morgawr · · Score: 2, Informative

      It's a DSP/RISC processor (basically the same thing) with an on-chip FPGA. If you have some particular algorithm, you can put it on the FPGA to get a solution instead of having to use code. (this is a lot harder to explain then I thought it would be....)

      --
      The policy of the United States is worse than bad---it is insane. -- Ludwig von Mises, Economic Policy(1959)
    6. Re:How is it possible? by Anonymous Coward · · Score: 0

      Macros!

    7. Re:How is it possible? by LostCluster · · Score: 1

      In electrical terms, imagine a processor that has left some of its circuit space with a "This space for rent!" sign posted. Instead of being a hard-wired function like normal, there's a grid of switches that cna be turned on and of in combinations in order to create define a few new processor functions.

      Sure, you have to "call your shot" and define your new function before you can use it, but storing the function inside the chip rather than as code makes it a whole lot faster to use...

    8. Re:How is it possible? by Anonymous Coward · · Score: 0

      How can something that normally takes "hundreds of thousands of instructions" be handled in a single instruction?

      5 + 0 + 0 + 0 + 0 + ... + 0 = 5 <=> 5 + 0 = 5

      Amazing! Not only that, but it works for subtraction too!

      5 - 0 - 0 - 0 - 0 - ... - 0 = 5 <=> 5 - 0 = 5

      What's that? No, pay no mind to multiplication or division. What? You want to work with other numbers? Hey hey, don't look behind there! PAY NO ATTENTION TO THE MAN BEHIND THE CURTAIN!

    9. Re:How is it possible? by Anonymous Coward · · Score: 0

      I think they meant it in a "pipeline" sense (Marketing !!).

      basically, if your pipeline has "x" stages, and you feed it a large number of independent chunks to be processed, the overall time per chunk will be 1 cycle (since processed data will be pumped out every cycle at the output of the pipeline).

      JD

    10. Re:How is it possible? by pelgv · · Score: 1

      By connecting new configurations of logic gates and logic modules. If you need an instruction that needs 4 ALU's (arithmetic logic units) working in parallel and the results of them you need to XOR them. instead of emulating it in software you actually WIRE 4 alus and the outs into a XOR... and then you have a new ELLECTRICAL connection inside the prosesor... a very coool tech!

    11. Re:How is it possible? by Ars-Fartsica · · Score: 1
      The processor would reconfigure itself to perform sin/cos operations in a single cycle (parallel ALUs etc.)

      But this operation must have a cost. There is the analysis required to even determine that the incoming instructions require sin/cos. Then there has to be a lookup into a rule table for how to rewrite the gates to optimize for this. Then that rule needs to be applied. You have to be able to show me that this can all be done faster and cheaper than a x86 at 4Ghz just ramming it through. Maybe it can, but I am skeptical.

    12. Re:How is it possible? by fitten · · Score: 1

      man... unlike those pesky FPGAs where you can... er... wait a minute... :)

    13. Re:How is it possible? by Professr3 · · Score: 1

      I'm assuming there would be a separate control logic section that would make these decisions. Sure, it'll require some overhead, but with good enough predictive algorithms and time for advanced development, it should still provide a significant speed/efficiency increase.

    14. Re:How is it possible? by Mattsson · · Score: 1

      I belive you to be absolutely right.
      But since this is meant to be an embeded cpu, most applications for it will require doing lots and lots of the same operations over and over again.
      So using, say, 60% of the silicon for doing one certain operation a few hundred times faster than what would be possible with a generic cpu at the same clock-speed might not be a waste at all...
      That's what custom hardware does today. But developing custom chips is timeconsuming and expensive compared to doing almost the same thing in software, which is what Stretch allows you to do if I'm not misstaken.

      --
      /.Mattsson - My native language is not English, so please don't whine over linguistic errors. (That's lame anyway...)
    15. Re:How is it possible? by Anonymous Coward · · Score: 0

      I don't know how they get "hundred's of thousands", but here is one where you save about 100 instructions off the top of my head:

      Say I'm doing DES decryption (or encryption, because the two are symmetric). The first step is permute 32 bits of the next 4 bytes of the input stream. This permutation is always done the same way, according to some rules that aren't relevant here. But, say, bit 21 is moved to bit 2. All 32 bits are moved similarly.

      How many instructions does this take on a general purpose processor? Normally, three: A Mask, a shift and an Or. Thats three cycles per bit, 96 cycles per word.

      But shifting bits in hardware in paralel is extremely easy. Wire2 = Wire 21. All bits can be done in parallel if the wires are connected correctly. This is trivial in an FPGA (and I assume in a stretch processor.) So 96 cycles are collapsed into one. Blammo, a 100x speedup on just this one function.

      And this example is just off the top of my head. You can imagine that you could combine this rearrangement with the next step somehow, because you could just have the hardware permutation happen on the way to the next step, effectively cutting the cost of the permutation to nothing at all.

    16. Re:How is it possible? by the_ed_dawg · · Score: 1
      It is just that certain operations have a large amount of parallelism. Check out the spec for DES encryption, for example. Many of the steps require a matrix transformation, where various characters are swapped around but no computations are actually performed on the individual numbers. A reconfigurable architecture could simply wire the bits into the next stage in the proper order, rather than using 64 individual lookups. Effectively, we have converted 64 cycles into 0 cycles. Another example you may want to consider is an FIR filter. Each term is multiplied by a scaling factor and added together to produce a result. With a reconfigurable architecture, you can perform all multiplications in parallel and add them as a tree structure in lg(n) cycles (where n is the number of additions).

      While software may be able to optimize the execution of loops or computations for a given processor, the execution is inevitably sequential in nature, as instructions must be fetched sequentially. A reconfigurable architecture fetches a single instruction and performs many operations at the same time, some of which are more intensive than those available with single-instruction multiple-data (SIMD) processors.

      In short, reconfigurable architectures are useful for doing operations that can be parallelized, which is something that your generic CPU or DSP may not be very good at.

      --
      There are two types of people: those prepared for the zombie apocalypse and those who will be eaten.
    17. Re:How is it possible? by Zordak · · Score: 2, Informative
      There is the analysis required to even determine that the incoming instructions require sin/cos. Then there has to be a lookup into a rule table for how to rewrite the gates to optimize for this. Then that rule needs to be applied. You have to be able to show me that this can all be done faster and cheaper than a x86 at 4Ghz just ramming it through. Maybe it can, but I am skeptical.
      You are making the assumption that all of this is done on the fly. It's not. The compiler would, at compile time, locate candidates for hardware optimization, or the programmer would specify them explicitly. Also, it wouldn't use a "lookup table." It would basically be Verilog or VHDL, which would compile into netlists, which are placed and routed, all as part of the build process. So, the compiled program includes instructions to reconfigure the dynamic portion of the processor. Sure, each reconfiguration has some overhead attached to it, but remember that computers excel at repetitive tasks. You configure, for example, a Laplace transform circuit once, and use it multiple times throughout your program. Since the configurable portion has enough space to handle a number of special instructions, you put your heaviest, most-used instructions in hardware, and you are now doing complex transforms in a handful of cycles instead of hundreds (or more). Remember that executing an instruction in hardware is orders of magnitude faster than doing it in software. So, for sufficiently complex operations, you could realize huge, huge performance gains, even if you had to reconfigure the dynamic instruction every single time. I attended school at a place where some grad students were doing research into this very technology, and although I was a freshman at the time, I knew enough to understand how they could claim significant speed gains.
      --

      Today's Sesame Street was brought to you by the number e.
  19. Hmmmm... by pmbuko · · Score: 1, Funny

    I tried to do something like this once, but I kept running into the problem of differential voltages in the pulse-modulated ion core. I think they must have shunted the positrons through the floating point pathways, thus creating an artificial singularity in which the laws of EE no longer apply.

    1. Re:Hmmmm... by schon · · Score: 5, Funny

      I tried to do something like this once, but I kept running into the problem of differential voltages in the pulse-modulated ion core.

      Ahh - that's easy. You should have routed the ion core voltages through a phase discriminator; would have cleared that right up.

      I think they must have shunted the positrons through the floating point pathways

      No, that would have caused a cascade failure in the deflector array.

    2. Re:Hmmmm... by xoran99 · · Score: 1

      Do I smell prior art? Here, let me be your patent lawyer...

      --

      Karma: Bad (mostly due to all those "In Soviet Russia" jokes)

    3. Re:Hmmmm... by Loki_1929 · · Score: 1

      "No, that would have caused a cascade failure in the deflector array."

      Couldn't we just reverse the shield polarity? That's been a die-hard reliable solution in the past.

      --
      -- "Government is the great fiction through which everybody endeavors to live at the expense of everybody else."
    4. Re:Hmmmm... by d474 · · Score: 1

      "Couldn't we just reverse the shield polarity? That's been a die-hard reliable solution in the past."

      That only works if an inverse phase of quantum array symmetry is acceptable, which is obviously not the case! Were you even thinking?

      --
      Authority questions you. Return the favor.
    5. Re:Hmmmm... by rsadelle · · Score: 1

      And she/he/it should have run a level three diagnostic. Duh.

    6. Re:Hmmmm... by fbform · · Score: 1


      Ahh - that's easy. You should have routed the ion core voltages through a phase discriminator; would have cleared that right up.

      No no and no. Before even considering that step, you should try to reverse the polarity of the tachyon pulse generator.

      Scotty: Capn, she cannae take it much longer!
      Kirk: Reverse the polarity of the tachyon pulse generator!
      Spock: Captain, may I suggest it might be more logical to invert the phase of the technobabble modulator?

      --
      Time flies like an arrow. Fruit flies like a banana.
    7. Re:Hmmmm... by dave420 · · Score: 1

      dude! always start by re-routing the encryptions before you try anything like that, otherwise you'll be in a world of pain!

  20. Finally by Anonymous Coward · · Score: 2, Funny

    I can tell my computer to go fuck itself and it will.

  21. Reduced Benefits for Virtual Machines? by SlipJig · · Score: 3, Insightful

    IANAEE, but I was just wondering if this technology provides greater advantages to unique monolithic apps as opposed to apps targeted for virtual machines such as the JVM or CLR. Those VMs are general-purpose, and maybe apps that run on them would be "invisible" to the hardware reprogrammability... however I don't know how just-in-time native compilation might change that picture. Anyone with knowledge of this stuff care to enlighten?

    --
    Read my keyboard review.
    1. Re:Reduced Benefits for Virtual Machines? by LostCluster · · Score: 1

      Right now, this product isn't meant for PCs quite yet. Basically, the manufacturer instructions are to write your program in standard C, and then run it through their application which will convert the most-used C functions into a RISC instruction for the chip.

      So "virtual machines" is a situation this chip hasn't had to encounter yet. I'm guessing that a PC user would have to throw the switch manually to change which "processor image" is running at any given time...

    2. Re:Reduced Benefits for Virtual Machines? by Anonymous Coward · · Score: 0

      I hope pc or consoles (which are embedded) get this technology soon. Just think, a psx 5 emulator running on a psx 6, or maybe running on a console of similar power!

    3. Re:Reduced Benefits for Virtual Machines? by Anonymous Coward · · Score: 0

      One of the problems with JITs is that the harder a CPU is to optimize for, the worse things get (either by not optimizing well or by increasing JIT overhead).

      This kind of CPU is very hard to optimize for.

  22. Not really new technology by stephenry · · Score: 5, Informative

    It's called DISC, Dynamically Reconfigurable-Set Computer. It's existed for a few years now. If I remember correctly, there is a group at Berkley working in the area and have released a few nice papers on it.

    1. Re:Not really new technology by wed128 · · Score: 2, Insightful

      yea, but a working implementation is a long way from a concept paper...

    2. Re:Not really new technology by Phurd+Phlegm · · Score: 1
      It's called DISC, Dynamically Reconfigurable-Set Computer.

      Apparently acronyms weren't their strong point. First off, what happened to the "R"? Second, where did the "I" come from? "dynamIcally?" "reconfIgurable"?

    3. Re:Not really new technology by Mikkeles · · Score: 1

      Actually: Dynamic Instruction Set Computer

      --
      Great minds think alike; fools seldom differ.
    4. Re:Not really new technology by Anonymous Coward · · Score: 0

      Few nice papers...

      So it hasn't existed?

    5. Re:Not really new technology by swb · · Score: 1

      They reconfigured the acronym after the first pass.

    6. Re:Not really new technology by Anonymous Coward · · Score: 0

      You mean like Raw from the Oxygen project? I remember reading about this a long time ago. Anyone know what state it's in or related work?

    7. Re:Not really new technology by Anonymous Coward · · Score: 0

      hehe if i had a mod point, i'd mod you up

  23. Again? by LostOne · · Score: 1

    At least this one doesn't claim to be bulletproof and be able to adapt to any situation conceivable instantly without loss of information or ability to continue operating. I seem to recall something like that popping up a number of years ago.

    --

    If it works in theory, try something else in practice.
    1. Re:Again? by Doubting+Thomas · · Score: 1

      You're thinking of Starbridge Systems

      --
      Just because it works, doesn't mean it isn't broken.
  24. That reminds me of... by ajiva · · Score: 4, Interesting

    I remember a project where hardware engineers setup a cpu to modify itself until it learned to do a task by itself. It got to the point where the hardware was doing the right thing, but not because the hardware was reconfigured properly, but because the software was using minute naunances in the electricity flowing through to get the job done. Even the hardware designers had no idea how it could possible be working

    1. Re:That reminds me of... by itp · · Score: 4, Interesting

      It was an FPGA, and it wasn't the CPU modifying itself, it was a genetic algorithm designing a circuit that would perform a specific task (differentiate between two different ranges of input signals, IIRC).

      The interesting result was that the circuit designed by the GA didn't use conventional structures, but instead, according to traditional circuit design theory, should not have functioned at all -- dead loops, etc. The behavior and result was tied to the physical FPGA being used to test and give feedback to the GA -- the minute nuances, as you referred to them -- and was not portable to even another instance of the exact same FPGA.

    2. Re:That reminds me of... by bigbigbison · · Score: 4, Interesting

      I remember reading about this in either Popular Science of Discover magazine. I seem to remember that the head researcher took the chips to another building or room to show them off and they didn't work. Then took them back to the room they came from and they worked again. They finally determined that the rooms had slightly different temperature and the chips were so specific to that environment thta changing the temperature even a tiny bit stopped them from working.
      Crazy stuff.

      --
      http://www.popularculturegaming.com -- my blog about the culture of videogame players
    3. Re:That reminds me of... by jcorgan · · Score: 4, Informative
      This was Adrian Thompson's doctoral thesis in 1996.

      He used a Xilinx FPGA and a genetic algorithm (implemented separately) to evolve a circuit which could distinguish (IIRC) two different frequency tones on the input as a logic level output. The "program" was allowed to interconnect the FPGA configurable logic blocks in any old sort of way internally and between CLBs. This would include ways which would cause logic designers to shudder in horror :), and did not include a clock input to the circuit at all.

      The result was a successful circuit that used a relatively small portion of the FPGA. But trying to work out how it was accomplished the tone discrimination was impossible. There were sub-circuits that were isolated from the rest of the circuit but when removed would cause the circuit to fail. Thompson hypothesized that the circuits were taking advantage of "out of band" communication via electromagnetic or thermal influences on adjacent CLBs.

      Furthermore, the circuits turned out to be very specific to the ambient temperature during training and usage, as well as being specific to a particular FPGA used (a working circuit on one would fail on another.)

      In any case it was a fascinating small-scale exploration of what reconfigurable hardware and genetic algorithms could accomplish, when not constrained by the "clock driven sequential logic" paradigm nearly all human engineered circuits use.

      --
      Babies are cute because they have to be.
    4. Re:That reminds me of... by LWATCDR · · Score: 1

      An interesting way around the non repeatable problem would be to use a number of FPGAs and possibly a number of them from differn't model lines and or manufactures. You would only let teh algorithim evolve if it worked on a all the different FPGAs. An alternative would be to evolve them using a simulator.
      It is very interesting to say the least.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    5. Re:That reminds me of... by Anonymous Coward · · Score: 0

      Aha ! now I know why I'm smarter at the pub than at work.

    6. Re:That reminds me of... by grmoc · · Score: 1

      The bad part about simulation is that you don't learn about the kind of genetic mutation that caused this 'answer'.

      I.e. when you simulate, you constrain the evolution to a set of assumptions which may not model the real world..

      The neat part about doing stuff in the real world is that you learn unexpected things..

    7. Re:That reminds me of... by Paul+Komarek · · Score: 1

      ...and the moral is that we shouldn't use genetic algorithms. ;-)

      -Paul Komarek

  25. damn!! by Mastadex · · Score: 2, Funny

    I like to welcome our new reprogrammed overlords...

    --
    A morning without coffee is like something without something else.
  26. errmm... by torpor · · Score: 2, Funny

    ... earth to slashdoid,

    being code to being "on the chip" and that's sure to speed up the experienced speed.


    first, where exactly is code run, if it isn't 'on a chip', and second, what? speed up the experienced speed?

    you mean, as opposed to something like 'pretended speed', which is what i imagine you were using to measure your rapid desire to let your undoubtedly 'speedy' fingers get through your slashdot post without thinking ...

    'experienced speed' indeed...

    --
    ; -- the corruption of government starts with its secrets. a truly free people keep no secrets. --
    1. Re:errmm... by LostCluster · · Score: 1

      first, where exactly is code run, if it isn't 'on a chip', and second, what? speed up the experienced speed?

      When a function is defined in code, you have to use multiple processor cycles to complete the function. However, when the funciton is "on the chip", that entire function can be completed in just one assembly-level call to the processor.

      "Experienced speed" is of course a pseudo-benchmark because it can't be standardized, and its components highly specialized. It's how fast you can complete a set of particular real-world task without having advance knowledge of what the chip is going to be asked to do. It's how fast the system actually "feels" to the user...

    2. Re:errmm... by fitten · · Score: 2, Informative

      When a function is defined in code, you have to use multiple processor cycles to complete the function. However, when the funciton is "on the chip", that entire function can be completed in just one assembly-level call to the processor.

      But you cannot say that one "assembly level call" to the processor will take (even) fewer "processor cycles" to complete. Hint: very few instructions in even today's CPUs take a single clock cycle to execute, most take several, it's just with pipelining, many instructions have a retirement rate of one (or more) per-clock.

      This isn't a silver bullet. In fact, the big deal about this thing is that it combines an FPGA and the processor onto a single chip. Before this, you'd write it all and implement it on a single FPGA, where it would be generally slow/simple for the general purpose part or you'd use an FPGA as a co-processor and feed it with a host CPU.

    3. Re:errmm... by Descartes · · Score: 1

      Hmmm... extra scoop of asshole flakes this morning?

      Seriously, give the guy a break. I thought what he said made perfect sense.

      Your 'pretended speed' is the GHz number versus actual system performance. Ever install Win95 on a system designed to run 98? It's really fast, despite the fact that the same system would crawl running XP.

      The point is that this chip might be able to mop the floor with the chips out now even if they're running at a much higher clock speed.

    4. Re:errmm... by mhatle · · Score: 1

      If you think putting together a processor and an FPGA is revolutionary I think you need to look at Xilinx (Virtex II Pro) and Altera. Both of them have CPU + FPGA combinations. Xilinx is a PowerPC 405 core, Altera is an ARM9 (I think).

      Xilinx also has an FPGA that has enough space to implement a full PowerPC 405 processor.

      This to me indicates more of a simple evolution then revolution...

    5. Re:errmm... by torpor · · Score: 1

      The point is that this chip might be able to mop the floor with the chips out now even if they're running at a much higher clock speed.

      oh, okay, since we're talking 'might', its Totally Okay to say things like 'experienced speed'... yeah.

      sheesh... what sort of goon looks at a CPU and goes 'whats its megahertz', anyway? passé!

      --
      ; -- the corruption of government starts with its secrets. a truly free people keep no secrets. --
    6. Re:errmm... by Short+Circuit · · Score: 1

      I'd like to see it used as a subprocessor, much the same way as GPUs.

    7. Re:errmm... by fitten · · Score: 1

      This to me indicates more of a simple evolution then revolution...

      Yeah... that's what I was trying to say. The thing I saw said that this was the first that combined the two and that was about it. CPU+FPGA co-processing is nothing new.

  27. Sounds good on paper, but... by Anonymous Coward · · Score: 5, Insightful

    ...I sense another Transmeta coming on...

    Yes sure, rewirable chips would be cool for certain applications, but how does one go about making it deal with multiple applications with multiple needs? You'd over load the CPU with a truckload of specialized instructions - which would probably slow it down. Granted, I see uses in things like mobile phones, but for multitasking machines, a 'Jack of all trades' chip is the way to go.

    1. Re:Sounds good on paper, but... by the+morgawr · · Score: 1
      Did you read the article? Do you think that the only users of computing power are multi-tasking machines? This doesn't compeate with Intel; it compeates with TI. It is for EMBEDED products.

      As someone who designed such products, I think the chip has a very good shot at succeeding if it does what it says. In fact it is EXACTLY what I need for several projects.

      Assuming it performs comparable to a TI DSP and costs only slightly more, I can make a cheeper product because I have fewer chips on board (just the stretch instead of a DSP and an FPGA).

      --
      The policy of the United States is worse than bad---it is insane. -- Ludwig von Mises, Economic Policy(1959)
    2. Re:Sounds good on paper, but... by Mattsson · · Score: 1

      And in the article and the website it says that this is an embedded cpu and some of the applications mentioned are, say, video encoders, crypo-engines and such.
      It's not a generic cpu like the transmeta, pentium or athlon and are not meant to be used in the same applications as those types of cpu's.

      --
      /.Mattsson - My native language is not English, so please don't whine over linguistic errors. (That's lame anyway...)
    3. Re:Sounds good on paper, but... by exp(pi*sqrt(163)) · · Score: 2, Informative

      You have OS support. New instructions are a resource that the OS manages. Too many processes want to add their own instructions? Then when a context switch takes place the OS overwrites instructions for the outgoing context with instructions for the new one. Same as managing small amounts of RAM by swapping.

      --
      Doesn't it make you feel good to know that our freedoms are protected by politicans, lawyers and journalists.
  28. not quite accurate summary by ebrandsberg · · Score: 3, Interesting

    From what I gathered, this allows the compiler to create an instruction that can do a lot of work in one instruction, NOT for the processor to decide to create an instruction. Think of it this way, if you know you need to do something like an array multiply many times, the compiler could create an instruction for it, and then use it as needed. The key to this is that the instruction set can be optimized on a program basis, so you don't waste gates on SSE2 instructions if you don't use them, etc.

    This would compare with FPGA's I believe in that most FPGA applications are fixed once loaded, although I know that there was talk about stargate systems on slashdot (http://slashdot.org/article.pl?sid=03/02/15/16292 37&mode=nested&tid=126)
    using FPGA's for general processing before.

    1. Re:not quite accurate summary by Hast · · Score: 1

      FPGAs are not static. They can even be reconfigured during runtime. (Though it takes a lot of time, from the chips point of view.)

      Search around for reconfigureable FPGA and you'll find that there is several projects which does this. I know of three such projects of the top of my head (Stargate, RAW, Mitrion) so I would exactly call the idea new.

    2. Re:not quite accurate summary by aaron_ds · · Score: 1

      Does mean that on windows boxen, a new BLUSCRN command will be added (evolved in)to the instruction set?

  29. someone remind me... by Anonymous Coward · · Score: 0

    what does CNET, RISC, DSP, and ASIC stand for again?

    1. Re:someone remind me... by AKAImBatman · · Score: 1

      CNET

      Don't ask.

      RISC

      Reduced Instruction Set Computer

      DSP

      Digital Signal Processing

      ASIC

      Application-specific integrated circuit

    2. Re:someone remind me... by Anonymous Coward · · Score: 0

      CNET

      Come Now, Einstein was Tough.

      RISC

      Realized It's Simply Complex.

      DSP

      Dumb Slashdot Person.

      ASIC

      All Shit Is Crappy.

  30. Insightful?! by CedgeS · · Score: 2, Funny

    Wow! The virus could execute arbitrary code! Just like if it could choose which of the existing instructions were executed by another processor. The core part of your virus could run faster, maybe in just one clock cycle!

    1. Re:Insightful?! by Gyorg_Lavode · · Score: 1

      How do you detect a virus that has control of the underlying hardware though...

      --
      I do security
    2. Re:Insightful?! by CedgeS · · Score: 4, Interesting
      Easy - Say, the extra instructions are supposed perform a matrix convolution. Call extra instruction 1 with some random matrix. If it doesn't calculate the same thing as a slow version run in the regular RISC part you know extra instruction 1 has in some way failed and needs to be reprogrammed. Your virus software and OS etc should never have special instructions and are always run in the regular RISC part.

      I highly doubt anyone is planning on making PCs with these. They are designed for being a processor in something like a data logging / control system, surveillance video compression, etc. Your system will probably have no need for virus detection any more specific than other more general regression and test suites it will need during operation.

    3. Re:Insightful?! by Short+Circuit · · Score: 2, Interesting

      Reprogrammable processors would be great for PCs as a sort of subprocessor. Games could offload calculations for their physics and AI models. Spreadsheets could offload all sorts of calculations. Mathematics-intensive applications could implement their own random-number generating algorithm.

      In fact, there may be advantages to dumbing down the CPU somewhat. Remove some of the SIMD instructions in favor of applications and libraries implementing more specialized routines in the subprocessor.

    4. Re:Insightful?! by sir_cello · · Score: 1


      It is likely to be a non-cheap time and power cost to rewire the circuit, so it's not really something you'd want to use frequently. There may be other side effects too (e.g. Flash style long-term degredation).

      I'm guessing that this will be more useful for things that only frequently have to rewire. For example, mobile phone that can be used in different countries: cycle into GSM, UMTS or other technology, and on each occasion, install entirely new lower-layer software and baseband features using some degree of rewire.

    5. Re:Insightful?! by Jennifer+E.+Elaan · · Score: 2, Insightful

      Actually, it's almost certainly based on standard SRAM FPGA technology. It's quite cheap in terms of power, and not especially expensive in terms of time, to reprogram, and there is no degredation over time from doing it too often. The only real disadvantage is that it might be entirely possible to create on-die shorts with bad programming data, as it currently is in FPGA's.

    6. Re:Insightful?! by BlueTooth · · Score: 1

      > Spreadsheets could offload all sorts of calculations

      Yes. Faster spreadsheets. We must have faster spreadsheets.

      --
      SPAM
    7. Re:Insightful?! by Grakun · · Score: 1

      > > Spreadsheets could offload all sorts of calculations

      > Yes. Faster spreadsheets. We must have faster spreadsheets.

      It may sound funny, but when/if these are integrated into PCs, I can guarantee that people will be using that tactic to convince accountants, business owners, old people wanting something cheap for their email, etc. into upgrading. If you don't believe me, go to Best Buy and watch as they try and sell you the most bloated system they have for you to use for simple office work. I don't know about you, but I can't remember the last time I needed a DVD burner, flat panel monitor, and 128MB video card for Microsoft Word.

    8. Re:Insightful?! by digitalunity · · Score: 1

      Since you bring it up, I know a few people with 100 year stream flow studies occupying up to 20 GB spread across a handfull of spreadsheets. When they want to run the data past the functions they modelled, this would make a huge difference.

      Don't knock the spreadsheets.

      --
      You can't legislate goodness. Let each to his own destiny, by will of his freely made choices.
    9. Re:Insightful?! by BlueTooth · · Score: 1

      Oh I'm sure they will always sell up the latest and greatest to everyone. But a couple of months ago as I walked out of the store clutching my new Radeon card, I sure wasn't thinking "man, MS word is going to kick ass with this...and the spreadsheets, imagine the spreadsheets"...

      ha.

      --
      SPAM
  31. possibly useful by quelrods · · Score: 1

    It sounds interesting enough that I wouldn't mind buying one to play w/ or port an os to. Their numbers of their 300mhz chip outperforming a 2ghz chips makes sense if the instruction set has been changed for a single purpose. A coworker pointed out that task switching can't be that speedy. So a general purpose chip that can automatically tune itself to a specific purpose is how this comes across. Still, this can be useful.

    --
    :(){ :|:&};:
    1. Re:possibly useful by kasperd · · Score: 1

      A coworker pointed out that task switching can't be that speedy.

      Of course for this to be useful to general purpose machines, switching must be possible. But if you only use this feature for programs that can benefit significantly, and do lazy switching of the state, it might not be that bad after all. Do it kind of like Linux handles FPU instructions.

      --

      Do you care about the security of your wireless mouse?
  32. Interesting points in the article by The_Mystic_For_Real · · Score: 1

    The article seems to imply that it works in manner comparable to having 2 processors. I had a box at home with a dual processor set up, and it had some problems running certain applications and just made things more difficult. It will be interesting to see if this chip works in the same way, as the article seems to say.

    --

    _____

    Thank you.

  33. PLD's have been around for years. by dispater124 · · Score: 2, Informative

    The concept of a programmable hardware device isn't all that new. And the encoding and encryption they talk about speeding up is a typical application of PLD's. High end routers use similar devices to optimize their tables etc. Kuro5shin has a nice article for beginners. http://www.kuro5hin.org/story/2004/2/27/213254/152

    1. Re:PLD's have been around for years. by Anonymous Coward · · Score: 0

      i thought kuro5hin was dead...

  34. FPGA by tttonyyy · · Score: 2, Interesting
    FPGAs have had processor IPs available for a while, which, in theory, can be reprogrammed on the fly. But AFAIK, no-one does this. I doubt this will be any different.

    Hardware manufacturers that need special hardware operations (IE MPEG-2 decoding) use dedicated, custom hardware for large volume production. Dynamically configurable hardware is expensive for large scales production, and small scale production will likely use FPGA for similar effect. I may be sceptical, but I doubt it'll catch on.

    --
    biopowered.co.uk - catalytically cracking triglycerides for home automotive use since 2008. Just say no to big oil!
    1. Re:FPGA by svirre · · Score: 1

      Xilinx and other typical FPGAs are not really designed to reconfigure on the fly. Normally they are loaded once on power-on and stay that way for the duration of their usage.

      CPUs on FPGAs are a bit of an anachronism really, at least the soft cores like the one you pointed to (microblaze), as you could just as well implement your algorithm in hardware rather than make a CPU, which is an incredible slow piece of circuitry, on slow hardware (FPGAs are pretty sluggish compared to standard cell or full custom devices) then run software on it.

      Modern high-end FPGAs do howeer have hard core* (no, not porn) CPUs embedded. F.ex Xilinx vertex 2 pro devices have power-pc cores embedded. These are considerably faster than what you can do on the fpga array itself.

      *) hard cores are fully finished designs allready targeted to a technology. The name differciates them from soft cores which are synthisizable and can be targeted to any technology.

  35. Ummm... by Anonymous Coward · · Score: 0

    wasnt there something like this in the movie hackers?

    1. Re:Ummm... by narcc · · Score: 2, Insightful
  36. hahahahaha ... Worst Math Ever by Anonymous Coward · · Score: 0

    Okay... so you're saying it now takes 5 trillion years, and if you could do it 1000 times as fast, it'll take 4 trillion years...

    LEARN BASIC MATH

    1. Re:hahahahaha ... Worst Math Ever by claar · · Score: 2, Informative

      Well, even if his math was wrong, his point is still valid.. going from 5 trillion years to 5 billion years isn't much different (of course, even 128 bit encryption is currently thought to take much longer than a measly 5 trillion years to brute force).

      Most cryptology systems are purposefully designed to take an absolutely absurd amount of time to crack -- exactly to account for many of these instant 1000 fold improvements.

      --
      I'd give my right arm to be ambidextrous...
  37. Not too different from what's already available... by stienman · · Score: 5, Informative

    This is evolutionary, not revolutionary. Many chipmakers have offered microcontrollers and microprocessors with FPGA on chip. Often it is an extension of the I/O built into the processor, so it's not much different than an external FPGA on the processor bus. Please note that this is NOT like processors that run on the FPGA itself - these are seperate from the FPGA portion of the chip.

    Stretch is different in a few ways:
    It pulls the FPGA closer to the core, so that it can be utilized almost as part of the pipeline. I say almost because of the following statement in the article:
    Inside the chip, the ISEF is coupled to the rest of the circuit by 128-bit buses and has 32 128-bit registers. It runs in parallel with other areas of the processor, effectively becoming a fully reconfigurable co-processor, and can be reprogrammed for new instructions at any time during operation.

    So it's still fairly seperate from the processor core.

    But the core itself is high performance (fast clock, a little faster than the average FPGA) and it has a very fast memory bus (again faster than the average FPGA)

    The downsides are likely to be:
    1) Power cost and dissipation. Since it's a slow clock, the dissipation probably won't be bad, but it's not going into a small portable machine.
    2) Time to reconfigure. This isn't meant to be a general processor with task switching. Context and task switching is going to be expensive and if you plan on running two concurrent tasks which both require special instructions the entire processor will likely perform, on average, much worse than it would without the reconfigurable portion. Unless, of course, the processes were created to use the same set of special instructions so the context switch isn't more expesnsive than it is for today's processors.

    So they are targetting it correctly, it seems. Specialized areas with, in general, only one task/program running at a time. Multimedia players, for example, would be great here. A digital recorder/player would work well if both the encoding and decoding portions of the code were compiled so the special instructions created wouldn't have to be changed for either application to allow playback while recording.

    -Adam

  38. Ok froggy. by Anonymous Coward · · Score: 0

    I ran your "Je ne se quoi?" through the Google translator and I got "I what?".

    WTF are you trying to say you stupid frog?

    1. Re:Ok froggy. by Anonymous Coward · · Score: 0

      "stupid frog"

      Be careful of what you are saying. This guy isn't a frog obviously since what he wrote doesn't mean anything in french.

    2. Re:Ok froggy. by Neil+Blender · · Score: 2, Funny

      Je ne se quoi?

      It means, well, it means... Uh, actually, I don't know quite how to describe it.

    3. Re:Ok froggy. by Anonymous Coward · · Score: 0

      Je ne se quoi

      It is a french expression that means "I don't know what". For example: "This meal is fabulous but, I don't know why." sounds really stupid. However: "This meal is fabulous, it has a certain je ne se quoi" sound like you are a gourmet rendering a professional judgement.

      The french have mastered the abillity to admit that they are clueless and still sound snooty about it.

    4. Re:Ok froggy. by Anonymous Coward · · Score: 0

      It's JE NE SAIS QUOI.
      The last S in SAIS is silent. That shouldn't surprise you, though, because it's not English and none of the familiar rules need apply.
      You use the expression to describe a subtlety, not to sound snooty.

    5. Re:Ok froggy. by Anonymous Coward · · Score: 0

      French people are snooty. Therefore you're snooty if you sound French. Q.E.D.

    6. Re:Ok froggy. by Crypto+Gnome · · Score: 1

      Actually , it's Je ne sais quoi.
      Literally I don't know what.

      --
      Visit CryptoGnome in his home.
  39. How will this affect cross-platform development? by ezraekman · · Score: 3, Interesting

    This sounds vaguely like the dream solution for developers. The article says:

    "It runs in parallel with other areas of the processor, effectively becoming a fully reconfigurable co-processor, and can be reprogrammed for new instructions at any time during operation."

    Does that mean it can handly booting multiple OSes simutaniously? If so, how long before someone writes an app that bridges multiple OSes, allowing the equivalent of emulation, without the emulation? I don't know about the rest of you, but the potential of this chip sounds like a dream come true. And at $35-$100 per chip... it's cheaper than the processor for most systems anyway.

  40. Transmeta by vasqzr · · Score: 1


    Anyone else smell hype and unfulfilled promises?

    How long does this chip take to change itself? How often can it do it?

    Might make for an interesting SMP situation.

  41. The first processor that can? by mrplado · · Score: 5, Informative

    The first processor that can add to its instruction set while operating? I think there were a few microprogrammed processors in the 70s/80s with writable control store that could do exactly that. Anybody remember PERQ workstations? Now this new gadget appears to be able to extend itself by means of an embedded FPGA, instead of plain old microcode, so it's a bit like the Xilinx Virtex II PRO series (PowerPC core with big FPGA on one chip). The really innovative thing is that you don't have to program the FPGA in VHDL or Verilog, but the C++ compiler takes care of that.

    1. Re:The first processor that can? by Phurd+Phlegm · · Score: 1
      I think there were a few microprogrammed processors in the 70s/80s with writable control store that could do exactly that

      The first one I heard about was the PDP-11/60. According to this link, it was introduced in 1977. I'm sure there were others.

    2. Re:The first processor that can? by Anonymous Coward · · Score: 0

      Check out MIT's Oxygen Project:

      h++p://oxygen.lcs.mit.edu/

  42. Well... by Ayanami+Rei · · Score: 3, Informative

    This is basically an FPGA married to a RISC processor. So if you have a bit of RISC code that can be simulated using the FPGA portion, and you have enough spare cells to add it, and it takes 10 clock cycles for the FPGA "user instruction" to dispatch, but it takes 200 to do it outright in the original RISC instructions, then you're experiencing a 20 to 1 speed increase for that bit. You speed up the function without overclocking. Actually what you've done is "trade off".

    He could have posted clearer, if he wasn't trying for first post.

    --
    THIS THING CAN TURN ON A DIME, MACROSSZERO STYLE ALSO FUCK BETA, ~NYORON
    1. Re:Well... by torpor · · Score: 2, Interesting

      i could imagine it no so much as an 'optimization' device, but as a complete 'system-description' protocol machine.

      in other words, i can not only embed codec details in my datastream to you, but at the beginning of it all, i can give you a 'cpu package' that you can use to run my custom codec, perhaps just once...

      what interests me about the S5000 is, what of the S5500, &etc? do they have plans to segragate cores from each other in other ways - say by way of a 'certficate broker' chip, also on-board?

      because if so, this could be a real boon for future media control, as long as the other reasons for this chips success actually are also fruitious, and results in a real market deployment.

      being able to change not just instructions, but what those instructions mean, dynamically over a protected core, would give software a new protection mechanism, is what i'm trying to get at ...

      --
      ; -- the corruption of government starts with its secrets. a truly free people keep no secrets. --
  43. Gaming? by shirai · · Score: 3, Interesting

    One of the best applications for this chip is a programmable Graphics card.

    Imagine the optimizations that you could do for the next release of the Doom engine. They could own the market for GPUs that optimizes itself for specific games. Could be amazing.

    --
    Sunny

    Be my Friend

    1. Re:Gaming? by SmackCrackandPot · · Score: 1

      One of the best applications for this chip is a programmable Graphics card.

      Back in the early 1990's Texas Instrument introduced the TMS34082, which was a vector coprocessor for the TMS34020 2D graphics processor (A 60 MhZ GPU). One of the features of this coprocessor was that it allowed users to add create their own instructions using the existing set of instructions.

      With a bit of custom reprogramming, such a card ( I used a Hercules Graphics Station Card) could support double-buffered 24-bit framebuffers with 4-bit overlay and software Z-buffer. At this time Windows 3.1 only supported 16-bit framebuffers and Intel CPU's were running at 25 Mhz. If TI had upgrading the clock rate at the same rate as Intel CPU's, it would be clocking out at around 8 GHz today.

      The interface software even came with a flight simulator demo which used Quake style BSP tree's (bounding spheres/planes), with all the scene updating/rendering being performed by the graphics processor. The only use for the 80x86 CPU was as an input processor.

    2. Re:Gaming? by agent+oranje · · Score: 1

      Consider what you're saying - to optimize today's high performance 3d games, we should offload the number crunching from a highly specialized, highly optimized graphics processor... to a dynamically-configurable coprocessor. It doesn't sound like too good of an idea when phrased that way - modern graphics hardware was already created as a special-purpose, optimized processor.

      How many uses of a dynamically-configurable processor can you think of for YOUR computer? You already have the CPU, which handles all sorts of fun... you already have the graphics hardware, which is extremely specific in its use... might have MPEG2 decoding in hardware... sound processor... and so on. We already have highly optimized, special-use processors in our machines for a variety of tasks. This chip basically sounds like an FPGA which can be programmed to do a couple things faster when it is absolutely necessary to do so - how often will that be?

      We already have FPGAs... and people who really need to have customizable logic in their machines can already use FPGAs to do what this article claims. This is, by no means, a revolution in processing... It sounds like it's just a processor that tries to emulate hardware that you don't already have.

      --
      -agent oranje.
    3. Re:Gaming? by DigiShaman · · Score: 1

      Good point. Let me count the many specialized processors in my computer.

      1. Intel P4 CPU (2.8Ghz with HT)
      2. ATI Radeon 9800 Pro graphic chip.
      3. EMU 10k CPU in my SBLive! card.
      4. A CPU on on the Adaptec SCSI 160 card.
      5. Broadcom CPU on MB that does TCP/IP checksum offloading at the hardware level.
      6. Host of other controllers on the MB such as chipset and firewire.

      Though, it would be nice to have a PCI card that can be reprogrammed to run SETI@HOME at the hardware level just for fun.

      --
      Life is not for the lazy.
  44. Better article on EETimes by apirkle · · Score: 4, Informative

    There is a much, much better article with lots more detail on EETimes.com.

  45. Woooo by Cr3d3nd0 · · Score: 3, Interesting

    I can just see this processor, mixed with a bit of Mark Tildens analog AI research to really advance Artificial Intelligence. For the uninitiated Mark Tilden discovered that by tying a group of only four or so transistors and sending a regular analog signal through it he could get small robots to walk, and indeed do an amazing number of things, including optimize it's path and even remember it's solution for a small amount of time(about 3 or 4 seconds). Not only that but when given a certain stimulus need (example make them solar powered and have only one are of light they would compete with other bots to gain access to better light. Indeed a lot of the behavior that these little bots produce is so complex and life like that he has spent a long time just documenting behaviour. Now give a set of these bot's circuits the ability to "optimize" the speed of the signal, and a few stimuly and let it play. If the stimulous was for "human approval" some input from a human indicating good or bad.... Heck what do I know, I'm non AI researcher but it always sounded cool to me :-) For more information on Mark Tilden go to BEAM Online

    --
    This is not a sig
    1. Re:Woooo by tallniel · · Score: 1

      This "analog AI research" sounds quite like Braitenberg's "Vehicles". It's interesting stuff, demonstrating that it's much easier to create something that exhibits complex behaviour, than it is to work out how something works by observing its behaviour (complex behaviour may be the result of a complex environment).

  46. Starbridge by Arroc · · Score: 1

    reminds me of Starbridge and this and this previous slashdot stories. I have always been interested in the subject, unfortunately in most of the cases similar products end up as vaporware

  47. ASICS ? by Qbertino · · Score: 0, Offtopic

    I thougt they made sneakers.

    --
    We suffer more in our imagination than in reality. - Seneca
  48. FPGAs in general purpose computing by mhocker · · Score: 1

    AKA Where are they now?

    It's curious. When I was looking at semi companies a few years back, there seemed to be lots of scrappy startups with reconfigurable dreams. I looked at companies that could take c++ code and turn it into silicon, companies that had tools to integrate IP from multiple providers easily, and FPGA producers that wanted to grow beyond the primarily telecom market that they were in.

    The idea was plausible, the market and the VCs (at least in Europe) agreed, and lots of money was thrown at the problem.

    But if I look at this company, I can't help but feel that it's a bit of deja vu.

    Which begs the question, if reconfigurable computing is such a good idea why has it not become as common as the general purpose CPU? I suspect it's because the general purpose CPU is:

    1. cheap
    2. well understood
    3. cheap

    Simply put, it's often cheaper to just write code for one of the myriad existing parts or, in the case that you want to have something that's got a custom core, just have it fabbed.

    Am I missing something here?

  49. even more info by Anonymous Coward · · Score: 2, Informative

    EE Times has an article here. Apparently this chip has a competitor. There's also more details about the chip itself.

    (Anonymous because logging in at work)

  50. The S5000? How about S1 by sweet+cunny+muffin · · Score: 1

    This is a start up. This is their first product. They've called it the S5000. Wtf?

    How about the S1, S0 or something?

    1. Re:The S5000? How about S1 by bhima · · Score: 1

      I supose it is like the checks I got in the US. They gave me checks that started with 1K

      --
      Nothing in the world is more dangerous than sincere ignorance and conscientious stupidity.
  51. FPGAs with embedded PowerPC processors by janolder · · Score: 1
    Better yet, Xilinx also has FPGAs with up to four embedded PowerPC processors. These are the real deal, not IP cores that get compiled into the chip by the engineer. I suppose the difference to the part covered in the story is that the programmable logic can be reprogrammed on the fly, not so with this Xilinx part.

    I do wonder how they deal with heat dissipation. :-)

  52. One piece missing for genetic processing... by 192939495969798999 · · Score: 2, Interesting

    That insanely complicated piece of software that can automatically figure out what it needs the chip to do at any given time for its own survival --
    oh yeah, we have those... PEOPLE! Now, can I get those neural processor connects and graft this thing to my head already?

    --
    stuff |
  53. Sounds like a FPGA to me by nurb432 · · Score: 1

    Nothing radically new..

    The ability to dynamically reprogram on the fly in-circuit sounds cool though.

    --
    ---- Booth was a patriot ----
  54. skynet by enrico_suave · · Score: 0, Offtopic

    looks like we'll have skynet operational anytime now...

    e.

    --
    Build Your Own PVR/HTPC news, reviews, &
  55. Everything old is new again by senahj · · Score: 1

    Or maybe the world is just running out of good project names.
    Project STRETCH
    http://en.wikipedia.org/wiki/IBM_7030

    --
    Wait a minute. Didn't I say that on the other side of the record? I'd better check ...
  56. I don't get it. by Phidoux · · Score: 0

    The chip combines an existing RISC (reduced instruction set computing) architecture with a large reconfigurable area of programmable logic called the Instruction Set Extension Fabric... I don't get it. It seems to me as if what gets put into the "large reconfigurable area" would almost be a macro that would still call the standard instruction set of the RISC processor. So what makes it so much more efficient?

  57. Any More Information? by mykepredko · · Score: 1

    Pretty skimpy blurb - I suspect that the product is either a) vapourware or b) a lot more limited than is discussed in the article.

    From the article, I presume that the processor's microinstruction memory can be updated with special information embedded in the executable file. This is not as unique as you might think: virtually all Intel and AMD processors have the ability to have their microinstruction memory updated during the boot process - this is used up upload microinstruction updates/corrections without requiring a new chip. What's implied in the article's title (note, not in the text), is that this memory can be updated on the fly which, I presume, means that the instruction set changes for each process that is loaded.

    The immediate questions that I have are:

    1. How is this accomplished in a multi-process (ie Linux) operating environment where the op-codes given to the custom instructions in one process are the same as another? Does this mean that the microinstruction memory must be reset during task switch to avoid this problem? What is the task switch latency penalty for this process?

    I suspect that only one process with custom instructions can be run at any one time and this is why the device is designed for embedded applications.

    2. How do you debug these new instructions? Again, I don't read anything about the debugger in the article (part of the "Company's own C/C++ compiler"). I would expect the debugger to be critical to understanding whether or not the custom instructions work the way that is expected.

    I would never consider a part which did not have simulator/emulator support and I don't know of too many people who would either, so this is a pretty important question.

    3. Where is the data showing "performing encryption or digital video processing on blocks of data, can be executed in single clock cycles"?

    In my experience, unless very small blocks of data are being processed, the biggest bottleneck is memory speed/latency, not the number of instruction cycles.

    4. How much space is there in the microinstruction memory for the custom instruction definitions?

    This has implications on the number of custom instructions that can be implemented along with the total number that can be implemented.

    I can see some advantages to having custom instructions optimize specific operations in a single process embedded controller (such as the ones used in a router, in camera video compression and basic cyptography).

    I don't see it being a significant threat to the current Xeon, Opteron or Itanium processored systems.

    myke

    1. Re:Any More Information? by bhima · · Score: 1

      While I won't dissagree with most of what you said. Most processors produced are not meant to compete with "current Xeon, Opteron or Itanium processored systems".

      --
      Nothing in the world is more dangerous than sincere ignorance and conscientious stupidity.
    2. Re:Any More Information? by mykepredko · · Score: 1

      I probably should have said MOT683xx, PowerPC or mobile Pentiums, which seem to be the primary choice for most high-end embedded applications that I am seeing, instead of the big three.

      The CNet article was pretty vague and seemed to imply that the custom instruction capability provided better number crunching capabilities than these traditional server/workstation processors.

      Thanx for pointing this out,

      myke

    3. Re:Any More Information? by NuShrike · · Score: 1

      What's wrong with dropping it into a PCI slot and using it as a coprocessor?

      Say you are running this latest DOOM XIII, and it can take advantage of an outboard coprocessor to do custom math and processing that would take more time by CPU or GPU.

      Or even, put it into a GPU so that it can get get more efficient with the latest driver updates, reprogram itself for DirectX or OpenGL operation, or even program for vertex/pixel shaders?

    4. Re:Any More Information? by bhima · · Score: 1
      Now that I've had a day to think on this...

      Doesn't this sort of sound like the "Cell" stuff that IBM, Sony and Toshiba (I think it was them) marketers were whispering about?

      --
      Nothing in the world is more dangerous than sincere ignorance and conscientious stupidity.
  58. new concept, but not new hardware by Gyorg_Lavode · · Score: 3, Insightful
    The idea of programmable chips is nothing new. Xlinx etc have been doing it for ever. The idea of putting both a standard core w/ a generic instruction set AND a programmable core ont he same chip is very interesting. It will, however, be a niche product. You aren't going to use it in your home computer because your home computer does a broad range of things.

    This will be useful in places that they mentioned. Places where you do a lot of processing that takes many generic instructions but can be translated into a single string of descrete instuctions.

    The more I think about it, this is the direction processors are going. We keep moving processors towards RISC based cores. We keep adding specialized paths for things such as multimedia. Eventually we WILL have half the processor being a purely RISC core and half being programmable hardware for specialized computational intensive instructions. I retract my initial view.

    I do wonder though, what the life is on the hardware side. How many times can you reprogram the hardware before it starts to die. What is the error rate in reprogramming it? What happens when a few programmable transistors die?

    --
    I do security
    1. Re:new concept, but not new hardware by jetmarc · · Score: 1

      > The idea of putting both a standard core w/ a generic instruction set AND a
      > programmable core ont he same chip is very interesting.

      I don't see how this is new. Typically this is called a "SoC" (System On Chip).
      Atmel for example puts their AVR RISC CPU together with their AT40K FPGA on one
      chip. Brand name of this product is "FPSLIC", see http://www.atmel.com/products/FPSLIC/
      ACTEL puts an ARM7 CPU with an FPGA area on one chip, and call it EXCALIBUR.
      There also is an 8051 CPU core with CPLD area around, I forgot who produces
      it. These designes are around since years.

    2. Re:new concept, but not new hardware by BigBadBri · · Score: 1
      You aren't going to use it in your home computer because your home computer does a broad range of things.

      But it's the software application that tells the chip how to reprogram itself - so I can see this technology being embedded in a card for your PC that multiple programs can take advantage of, with a driver that can lock the card to a particular executable while it's running.

      Consider the possibilities - a generic card that can provide fast encryption, DSP, complex geometry, all dependent on the application, and if successful at a low cost compared to ASICs.

      If required, a machine could have multiple cards, independently addressable by different applications.

      It looks good to me, so long as the unit cost can be made realistic.

      --
      oh brave new world, that has such people in it!
  59. This != New by sam_van · · Score: 2, Informative
    I've noticed some folks comparing this to Transmeta. While similar, there are a few more comparable architectures out there.

    Perhaps the most notable (in its conception, at least) was Seymour Cray's attempt at a Pentium Pro core + reprogrammable extensions (via FPGA or the like) at his post-Cray Research company. More recently, IBM licensed PowerPC cores for use by Xilinx. Up to four of those cores get thrown on the die with a Virtex-II FPGA (?); each of the cores has the ability to add opcodes in FPGA land.

    Even more recently was my last company's valiant effort at something similar (and even cooler). RIP, SiliconMobius.

    --
    Thinking of starting a business in Minnesota? Me too! mnsmall.biz
  60. Yes, but... by Anonymous Coward · · Score: 1, Funny

    Can it hammer a six inch spike into a 2x4 with it's penis?

  61. FPGAs and the rest of the acronym zoo. by Christopher+Thomas · · Score: 5, Informative
    How is this different from FPGA's?

    Short answer: FPGAs let you build using basic gates and (very small) lookup tables. This lets you build anything you please, and fully optimize the number of functional units of each type that you have, but has a speed and size penalty.

    This chip is basically a RISC processor with an FPGA-type fabric bolted on as a co-processor, as far as I can tell from the detail-poor press release. By implementing most of the instruction pipeline as fixed, optimized hardware, it runs without any of the penalties of a purely FPGA-based implementation. When you have a number-crunching task that would benefit from a custom logic implementation enough to offset the performance penalty of implementing it in programmable logic blocks, the compiler configures the programmable logic into a suitable coprocessor which is stuck in as an extra branch of the instruction pipeline.

    How much benefit you get from this depends on what you're doing. Modern general-purpose microprocessors have enough vector instructions to handle most DSP-ish tasks without an abysmal speed penalty (just a large size and power penalty over a purely DSP-based implementation). Most computing tasks aren't limited by processing horsepower at all - they're either waiting for memory accesses to complete (even cache accesses are very slow compared to register accesses), or they're waiting for the target address of a branch to be decided (speculation and BTBs don't address this perfectly by a long shot). A reconfigurable processor would suffer from much the same type of problem. While using the programmable logic path for slice processing could remove some of the branching penalties (by following all paths and selecting the desired result), this would be at an even greater area and power cost.

    For specialized applications, it would be quite useful, of course.

    A quick glossary of terms being thrown around, for anyone confused:
    • FPGA - Field Programmable Gate Array.
      This is a combination of lookup tables, sum-of-products combinational logic blocks, and scratch-pad SRAM that you can hook up in nearly arbitrary ways to produce custom circuits at a gate level. Bulky and slow, but good at implementing algorithms efficiently. Configuration information is loaded from a serial PROM chip at startup, letting you change it relatively easily.

    • CPLD - Complex Programmable Logic Device.
      Like an FPGA, but stores configuration information internally, so you need to take out the CPLD and burn it to change configuration instead of re-burning the configuration PROM.

    • PLA/PLD - Programmable Logic Array/Device.
      Little cousin to CPLD. This is what you played with in second or third year. Typically these are just a sum-of-products combinational logic block with a register stuck on the end to latch the output. Useful as glue logic.

    • ASIC - Application-Specific Integrated Circuit.
      This is an integrated circuit that's half-made. A number of gates and registers and so forth have been fabricated on the chip, and the lowest few metal layers have been used for internal routing for these, but you get to define the upper metal layers to form arbitrary connections among these (either as the last fabrication step, or by laser-cutting a pre-fabricated wiring mesh to leave the geometry you want). Works much like a CPLD, but the design is decided at fabrication time and cannot be changed. Faster and less bulky than a CPLD implementation.

    • Standard cell design.
      This is a custom-fabricated integrated circuit that uses cells from a standard library of components, usually automatically placed and routed from a VHDL or Verilog description of what you want the chip to do. Faster than an ASIC if you have good place and route software, but more expensive in small quantities because you're making what amounts to a full custom chip. Design time is much less than a fully custom design would be, though (but verifying that the design description is correct is a royal pain).


    I hope this clears things up for anyone who was confused.
  62. Real World Performance by AhBeeDoi · · Score: 2, Insightful
    Stretch claims that their CPU running at 300MHz has shown superior performance to a 2GHz box. We have no details of their testing and I wonder about the real world performance.

    Natural questions come to mind like how quickly does the chip configure itself to optimize for the application, does the configuration only occur at start of the application, how many chip-configuring applications can it run concurrently, will it optimize for interpreted languages, can some configurations be made "permanent" to accommodate the OS used. I can see how this chip would optimize some specialized tasks, but I don't know if it will run well in an evironment where many different types of tasks are expected to run at the same time.

    Another issue relating to the gaining acceptance is whether Stretch releases specs so that others can write their own compilers. Is Stretch pursuing a pure hardware strategy (not trying to sell compilers, create their own OS, etc)?

  63. Star Bridge Systems already does this. by Myrv · · Score: 1

    well sorta.

    Star Bridge Systems has been selling computers that reconfigure their own logic (with the help of compilers) for about 5 years now. True, their solution isn't a single chip, but the idea of reconfigurable computing is not at all new, and Star Brigdes implementation appears to be even more flexible.

  64. Compelling market proposition? by Ars-Fartsica · · Score: 2, Insightful

    General purpose CPUs are fast, ubiqutous, and cheap. While compelling, this new approach is in no sense a slam-dunk in the market. Stretch will have to show a compelling case why this is a faster and cheaper alternative to the x86 (compatible) hegemony.

  65. Perfect for emulation by arock99 · · Score: 3, Interesting

    Sounds like this would be a perfect processor for emulating consoles such as the SNES, XBOX, GameCube, PS2, etc etc or pretty much any other processor.

  66. He has a point by Ars-Fartsica · · Score: 1

    Any new processing alternative has to show better price/performance than what people can get today. Remember Transmeta? While they have had small successes, by no means have they take considerable share from Intel and AMD.

  67. Variable power usage. by Short+Circuit · · Score: 1

    It better be extremely well engineered, or these new instruction sets might raise the power usage of the processor beyond whatever's in place to provide it, or even to wick it away.

  68. Field Programmable Gate Arrays (FPGAs) by Lust · · Score: 2, Interesting

    This reminds me of Field Programmable Gate Arrays. Can someone explain the difference?

    1. Re:Field Programmable Gate Arrays (FPGAs) by Anonymous Coward · · Score: 0

      the Nero Institute's semiconductor research lab with these kinds of technologies and publishes some good guides for the less informed. Check them out!

    2. Re:Field Programmable Gate Arrays (FPGAs) by Tune · · Score: 1

      I'm not sure, but aren't FPGA like EPROMs in that they're hard to rewire? That is, you need UV light or electrical energy and a lot of time (relatively) to reset a given wiring. This Stretch thingy appears to be able to do on-the-fly rewiring, presumably just a bit more "expensive" as a context switch on a regular cpu.

      Details, anyone?

  69. stop the madness. by twitter · · Score: 2, Insightful
    How do you detect a virus that has control of the underlying hardware though...

    The same way you detect a virus on any machine that has been compromised, with another machine and or a thorough understanding of normal operation and running processes. Nothing new here. Evaluate the harm done by a potential compromise and take steps accordingly.

    There is no practical difference between a hardware and a software compromise and the remedy is the same. Indeed, for critical purposes, there's little difference between a hardware compromise and a simple failure. You should anticipate it and not get burnt. The bottom line is know your shit and be in control when strange things happen.

    Security is a process and must be applied system wide. If you don't have reasonable configuration control, you are already lost. If you run junky closed software that's full of bugs and does not keep track of uid, pid or processes themselves you are always in for a rough ride. The trouble given you there will distract your operators, like it did for the last big blackout. Every piece has to be taken considered in context. It's not hard, it just takes time, organization and judgment.

    I hate how Ludites always look at any new tool and cry out, "look how awful [insert wonderful new power] is!"

    --

    Friends don't help friends install M$ junk.

  70. Based on Tensilica Xtensa technology by Anonymous Coward · · Score: 2, Insightful

    Looking at their brochure, it is based on Tensilica Xtensa technology (www.tensilica.com) which I know has been around for atleast 3 years. Nothing remarkable. Many companies have developed similar products.

  71. Java already does this by Anonymous Coward · · Score: 0

    It takes a normal program and magically morphs it into the least efficient program for the specific CPU you are using via JIT.

  72. Could be used by spammers to defeat computation $$ by wolfbane01 · · Score: 1

    I seem to recall that Microsoft and some other companies were looking at using a complex operation to be computed out before an email were sent to slow down spam operators. Wouldn't this enable those same spammers to dedicate physical hardware towards completing those puzzles in a matter of nanoseconds.

    Back to the drawing board for Old Billy...

  73. I remember that one! by PetoskeyGuy · · Score: 1

    I remember a project where hardware engineers setup a cpu to modify itself until it learned to do a task by itself. It got to the point where the hardware was doing the right thing, but not because the hardware was reconfigured properly, but because the software was using minute naunances in the electricity flowing through to get the job done. Even the hardware designers had no idea how it could possible be working

    Then they let it take control of planes and stuff and eventually it woke up and tried to take over the world and kill everyone and even figured out time travel. It even made several clones of the Governor of California. People saw this as a bad thing, but in the end it was also able to create hyperflexible super hot women. People eventually destroyed it in their ignorance, but that was wrong. They were destroying a tool because of how it was improperly used in the past - instead of mass producing indestructable female love bots.

  74. Wrong direction for CPU again by Anonymous Coward · · Score: 0

    Why can't we just get intel/amd to up the on chip cache to something like 64mb?

    If a p4 2ghz cost around $100, can one with 64mb cache cost only $10 more?

    Further on, can we get a chip with 512mb cache for an extra $100?

    1. Re:Wrong direction for CPU again by Toraz+Chryx · · Score: 1

      Manufacturing limitations mainly, although I wouldn't be entirely surprised to see IBM starting to put edram L3 caches on their dies, as the transistor density is a lot higher than sram and the latency isn't all that far off...

  75. While running windows... by Anonymous Coward · · Score: 0
    This CPU performed the ultimate optimization, collapsing the entire instructions that make of the windows kernel into a single one representing the best possible action to take:



    .START:
    halt;

  76. Help for a n00b. by Paulrothrock · · Score: 2

    What's sky net? Terminator reference? Huh?

    --
    I'm in the hole of the broadband donut.
    1. Re:Help for a n00b. by Dirtside · · Score: 1

      Yeah, Skynet is the self-aware computer system that launches Judgment Day and kills 3 billion people in the Terminator movies. It used advanced artificial intelligence hardware that was able to rewire itself on the fly and thus learn, unlike modern computers. Hence the jokes.

      --
      "Destroy science and religion. Science would re-emerge exactly the same; but not religion." - Penn Jillette, paraphrased
  77. Star Trek by DarkOx · · Score: 0

    Again Star Trek is becoming reality. STTNG had an episode with little robo-tools called Exocomps(sp) they were supposed to be able to build new neural pathways within themselves and become better tools as they practiced with specific tasks.

    Eventually they generated so many pathways they becaume aware, and intelligent. I doubt we have to fear that from chips at this junkture but its comming.

    --
    Repeal the 17th Amendment TODAY! Also Please Read http://www.gnu.org/philosophy/right-to-read.html
  78. Re:Not too different from what's already available by Amorpheus_MMS · · Score: 1

    Time to reconfigure. This isn't meant to be a general processor with task switching. Context and task switching is going to be expensive and if you plan on running two concurrent tasks which both require special instructions the entire processor will likely perform, on average, much worse than it would without the reconfigurable portion. Unless, of course, the processes were created to use the same set of special instructions so the context switch isn't more expesnsive than it is for today's processors.

    May we see the return of co-processors? This could be great for personal computers, to dynamically help the CPU with various tasks...

  79. Been there, done that by TheAncientHacker · · Score: 2, Interesting
    The original design for the Zilog Z-80000 (Not to be confused with the Z80000 that actually shipped and was an enhanced Z8001) was also dynamically self configuring and optimized its execution based on the frequency of use of instructions.

    Of course, that was only a little over 20 years ago.

    FYI: Since somebody is going to ask... The original Z80000 design was killed when Zilog stalled out as a general purpose processor maker and moved into embedded processors after the bugs in the initial run of Z8001 chips and IBM's selection of the Intel 8088.

  80. Crypto on public servers by tepples · · Score: 1

    Taking more time to encrypt/decrypt isn't a problem (does anyone here notice the differance between 2.5ms and 5ms?)

    I for one would notice the difference between 500 users and 250 users on an SSL server. If crypto runs at near wire speed, there goes another argument against using crypto on high-capacity servers.

    1. Re:Crypto on public servers by Welsh+Dwarf · · Score: 1

      Apple meet orange, the whole discussion is about processor speed, and you bring network bandwidth of all things into the equation. It's already been pointed out that network intensive applications are among those that will benefit the least, since the processor isn't the limiting factor. Try running your SSL server with double sized keys, same number of users, you'll get a completely different experience.

      --
      Ask 8 slackers a question, get 10 awnsers (a citation, but I can't remember from who)
    2. Re:Crypto on public servers by tepples · · Score: 1

      Apple meet orange

      No, Apple meet BSD.

      the whole discussion is about processor speed, and you bring network bandwidth of all things into the equation

      That wasn't my point. I'll explain in more detail:

      • BEFORE CRYPTO ACCELERATION: CPU speed for crypto is the limiting factor to SSL speed. Bottleneck discourages use of crypto for static data.
      • AFTER CRYPTO ACCELERATION: Network or application server is the limiting factor to SSL speed. Reduced overhead eliminates the need for "encrypted pages with some unencrypted data".

      A crypto accelerator, one of the applications that others have suggested for this new high-level FPGA, greatly decreases SSL's CPU hit. If each of your servers has a crypto accelerator, you need fewer application servers or SSL proxies to feed the same pipe.

    3. Re:Crypto on public servers by Welsh+Dwarf · · Score: 1

      I'll take that, providing that you can prove that the processor speed is the limiting factor using today's hardware, which considering that harddisk encryption is (relatively) commonplace, and (processor speed)/(network bandwidth) has gone up by an order of magnitude or 2 in recent years, I somehow doubt.

      --
      Ask 8 slackers a question, get 10 awnsers (a citation, but I can't remember from who)
  81. wha?! by MachineShedFred · · Score: 1

    If ever there was an article for one of those goatse guys to post something, THIS would be it.

    I mean come on... stretch?

    I need to die for posting this.

    --
    Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.
  82. Way cool.. by JRHelgeson · · Score: 1

    Does this mean that if I have a process that is caught in an infinite loop, that this processor will reprogram itself to make the infinite loop process even faster?

    --
    Good security is based upon reality and common sense. Common sense is a function of having common knowledge.
  83. The end of the world... by infochuck · · Score: 1

    Isn't this how SkyNet got started?

  84. One mistake: Re:FPGAs and the rest of the by gupg · · Score: 1

    What you have described for ASICs is infact Structured ASICs. ASICs are fully hardwired implementation that are synthesized from scratch - no pre-fabrication etc.

  85. hmm... by hitmark · · Score: 1

    dont know why but i have allways belived that when we have a computer that can reprogram itself it will become a AI sometime in the future, just leave it alone so it can try to prosess the world.

    so, what are we looking at here? the great granparent of skynet or smith?

    --
    comment first, facts later. http://chem.tufts.edu/AnswersInScience/RelativityofWrong.htm
  86. Solution looking for a problem to solve by gupg · · Score: 1

    This a power hungry chip and it is not clear what market it targets.

    Both Tensilica and ARC Tech, offer processors with customizable ISAs. Since most embedded system designers know what the range of applications that will run on the system are, they statically profile these applications and customize the ISA for Tensilica.

    However, it is not clear when one would want to dynamically reconfigure/customize the ISA - why do it dynamically -- especially since it makes the chip much larger (in area), much more power hungry, and more expensive.

    Conceptually very interesting, but are there going to be any big buyers ??

    1. Re:Solution looking for a problem to solve by Hermen · · Score: 1

      One market would be Virus writers and gov. spooks. Instead of modifying the OS, change the processor instructions.

      Through the profit margin would be slim.

  87. Two companies announced similar products today by gupg · · Score: 2, Informative

    It seems Stretch is not the only company that announced such a product today: EE Times article.
    Also, keep in mind, customizable ISAs have been around for a while -- in Tensilica and ARC processors. These guys do it dynamically.

  88. Echoes of GARP by Anonymous Coward · · Score: 0

    See this project, published in 1997, started a few years earlier. Also had a compiler project that targeted it with C code.

  89. Programmable Logic by goodster · · Score: 1

    This is a simple FPGA stuck onto the processor, which is fine. You can make as much logic as you have room for on the FPGA.

    The problem comes in with speed comparisons. The FPGA is NEVER going to be as fast as the logic designed onto the CPU, and it will be larger/more power hungry than the dedicated logic. It'll be more useful for DSP and matrix operations *if* you have enough room on the FPGA and enough cooling to make it worthwhile.

    Otherwise, forget it.

  90. Do it right! by Baikala · · Score: 1

    It would be:

    I, for one, welcome our new self rewirable chip Overlords!

    --
    16,777,216 comments ought to be enough for any forum!
  91. Altera's Nios Processor by cybergibbons · · Score: 2, Interesting

    I'm currently working on modular multiprocessor systems implemented on FPGAs, so this field is something I know something about.

    Altera produce an FPGA with one or more built in ARM processors. This sounds very similar to the Scratch system, but the ARM processors are limited in connection into the fabric of the FPGA by the not particularly fast bus used with the processor. Scratch appear to have made the data transfer rate between the two parts of utmost importance, which is essential in high throughput applications like this.

    Altera have also developed a softcore processor, that is one implemented entirely on an FPGA. It is highly configurable - instructions can be added, cache and memory behavior altered, buses adapted, etc. Coupled with things such as the DSP blocks (trees of multiply accumulates), a 50Mhz processor can process data in a specific task at the same rate as a general purpose processor running at 10 times the speed.

    The work I'm doing is investigating the use of many of these processors on one fpga. Levels of optimisation that cannot be done with conventional multiprocessor systems will be possible. Changing the memory system to deal with specific algoriths, or bus widths between certain processors will allow much better performance.

    Scratch also seems to be making a difference by claiming to have easy to use and working development tools, which is one thing that Altera cannot really claim to have done.

  92. The software by wpiman · · Score: 1
    Like everyone is saying- the hardware here is nothing new. Look at an Altera Nios or a Xilinx Microblaze. You can create custom instructions that act on internal registers within the softcore.

    What is interesting is that the code compiler would do the hardware synthesis at compile time straight from the high level language. This way an mucky muck with a CS degree could program up of of these things.

    It is about time to market. Network processors allow small teams of generic software designers to do the work of large skilled ASIC teams. FPGAs allow board level designers to do the work of large ASIC teams. (power and size penalties for both of these) This is just one step further.

    Nothing breathtaking- but technology is driven by incremental steps.

  93. An example by Dog135 · · Score: 1
    Here's an example that would be greatly helped by this type of chip:
    Original C code:

    for(it=1;(it<=thet)&&(((x1*x1)+(y1*y1))<= 4.0);it++){
    x2=2.0*(x1*y1)+sx;
    y2=((x1*x1)-(y1*y1))+sy;

    x1=x2;
    y1=y2;
    }

    Compiler's interpretation:

    on chip: (each command executed in a single clock cycle)
    _setup:
    reg1=param1;
    reg2=param2;
    reg3=param3;
    reg4=param4;
    _doit:
    reg5=2.0*(reg1*reg2)+reg3;
    reg6=((reg1*reg1)-(reg2*reg2))+reg4;
    reg1=reg5;
    reg2=reg6;
    return ((reg1*reg1)+(reg2*reg2))<=4.0);
    c code:

    _setup(x1,y1,sx,sy);
    for(it=1;(it<thet)& &_doit();it++);
    Just imagine the speed increase!
    --
    "That's so plausible, I can't believe it!" - Leela
  94. yawn... by aggieben · · Score: 1

    I'd say this is pretty old news. FPGAs have been around for quite some time, as well as other reconfigurable device technologies.

    --
    Don't become a regular here, you will become retarded. -- Yoda the Retard
  95. Where's the 'news' here ? by Anonymous Coward · · Score: 0
    I've got a copy of the Digital PDP-7 'Small Computer Handbook' (published back in the 70's) which explains how the programmer can microcode new instructions into the computer.


    How can this be 'news' ?

  96. processor + logic by period3 · · Score: 2, Informative

    Though not the same as this, the Xilinx Vertex II Pro combines an FPGA and PowerPC risc core on the same chip.

    The Altera Excalibur does something similar with an ARM processor core and programmable logic.

    Both of these have been around for a while...

  97. Human Brain by Anonymous Coward · · Score: 0

    The human brain is implemented as a genetic algorithm. It probably runs on all sorts of nuances and things, which won't work if you copy and paste the design into another brain, which make it impossible to understand.

  98. I could have sworn.. by jcr · · Score: 1

    Xilinx was already offering chips that combined a processor core with an FPGA.

    -jcr

    --
    The only title of honor that a tyrant can grant is "Enemy of the State."
  99. Re:Not too different from what's already available by Anonymous Coward · · Score: 0

    It takes 80-100us to reconfigure, and can be divided in half -- one half can be reconfigured while the other half is running. Note that the reconfigurable portion runs at 100MHz while the core runs at 300.

    Although it's hard to imagine an embedded application that would need to have multiple simultaneous tasks with different configurations, I don't think it would be a problem to reconfigure the chip a hundred times per second if need be.

    aQazaQa

  100. Motorola made these 2 years ago by Anonymous Coward · · Score: 0

    An FPGA with a 603 core attached - Motorola has been shipping them for atleast 18 months. I don't remember the series number and I am not going to look it up.

    They also have a 603 core with a specialized matrix computation unit attached.

  101. Reconfigurable by Wargames · · Score: 1

    I want a chip/pc that acts like a Radioshack 1000-in-one electronics kit...only better. I could program a receiver and transmitter, ...and a matter materializer.

    --
    -- Each tock of the Planck clock is a new world and here we are still life. --
  102. Bit-slice microprocessors ? by Anonymous Coward · · Score: 0

    Are you talking about the AMD 2901 bit (4 bit) slice
    CPU's ?

  103. Bit slice CPU's have been around for ages by Anonymous Coward · · Score: 0

    AMD 2901 bit slice CPU was micro-programmable and
    I have know of it at least since early 80's

  104. THREAD CLOSED by Anonymous Coward · · Score: 0



    *** This thread is marked as CLOSED ***
    *** Please move on to another topic ***