REGISTER | LOGIN
Breaking News
Blog

Programmable Logic Holds the Key to Addressing Device Obsolescence

Giles Peckham
12/19/2017 00:01 AM EST

 8 comments   post a comment
NO RATINGS
View Comments: Newest First | Oldest First | Threaded View
KarlS01
User Rank
Author
Re: Replacing a hard core with an FPGA soft core is no solution
KarlS01   12/21/2017 3:15:31 PM
NO RATINGS
i SAID "However if C was used to program the device, then the FPGA can be designed to run/emulate C source code without having to compile to any ISA/instruction set."     

YOU SAID"Keep everything in software if possible"

We are not really disagreeing. 

I think it is more efficient to program in C and not have to compile to different instruction sets.  It comes down to C statements do a compare and then either continue or go to the non-sequential target and repeat.

Here is what my design is:

3 dual port embedded memories, an ALU, and a comparator.

1) store variables and constants in a 2 port Ram, so 2 can be read in parallel

2) store the operand addresses, a control word, and address of the next control word in pairs of words in a second memory.  

3) store the next sequential control word address and non sequential   

4) start by reading the addresses of the first 2 operands    

read the control word and operands in parallel    

do the operation in parallel with reading the address of the next non-sequential  

either step to the next control word or fetch the non-sequential depending on the   operation.  

5) program it by loading the memories

It is good to have found another hardware designer that appreciates what programs are the heart of flexibility.

Evariste
User Rank
Manager
Re: Replacing a hard core with an FPGA soft core is no solution
Evariste   12/21/2017 1:41:53 PM
NO RATINGS
You want to keep away from FPGAs if possible.  Everything is much harder when you get involved in hardware design.  (I'm an FPGA designer myself.)  Keep everything in software if possible.  A software emulator of an instruction set is inefficient, but probably fast enough considering the pace of Moore's "Law" in the intervening 20 years.

KarlS01
User Rank
Author
Re: Replacing a hard core with an FPGA soft core is no solution
KarlS01   12/21/2017 9:57:11 AM
NO RATINGS
@Evariste:  There have been emulators in the past.  The IBM360/Model 65 emulated the 1401 and 1410 (maybe 7094 also ?) since it was micro-program controlled.  This is different from what I think you have in mind -- BUT -- FPGAs have embedded ROM that can be used in the same way. 

Of course there are potential problems with proprietary ISAs if you want to emulate some processors.  RISC-V because it is open source ISA has a lot of people very excited   However if C was used to program the device, then the FPGA can be designed to run/emulate C source code without having to compile to any ISA/instruction set.    

This approach is a different and better way to use FPGAs.  And of course it can also be used for ASICs because the FPGA itself is an ASIC designed as an FPGA.  

Also C#/Roslyn/Mono have syntax APIs that parse the control and dataflow from the C source code.  All for FREE.

Evariste
User Rank
Manager
Re: Replacing a hard core with an FPGA soft core is no solution
Evariste   12/20/2017 1:26:31 PM
NO RATINGS
By the time a processor becomes obsolete, current processors are so much faster that it might just be easier to use a new processor to emulate the old one.  

KarlS01
User Rank
Author
Re: Replacing a hard core with an FPGA soft core is no solution
KarlS01   12/19/2017 5:28:57 PM
NO RATINGS
@elizabethsimon:  Thanks. I think the article specifically said that micro/pico blaze could be used.  I am pretty sure that the ISA is unique to those soft cores.  Therefore you would have to cope with a different ISA.

elizabethsimon
User Rank
Author
Re: Replacing a hard core with an FPGA soft core is no solution
elizabethsimon   12/19/2017 4:11:00 PM
NO RATINGS
@Karl Actually, there are use cases where this might be a good approach. for instance, The company I work for has products that were designed 20 years ago that we are still building and selling. If/when the processor becomes obsolete, I could see replacing it with a soft core with the same ISA (assuming one available) so that we could continue to run the same firmware. We would have to weigh the development cost of course but the performance hit of a soft core wouldn't be a problem. I'm sure there are applicaions that don't require the fastest possible processor speed where this approach might also apply. Another possibility is using a hard core for the initial design and switching to an equivalent soft core when/if the hard core is no longer available. In both these cases, I'm assuming that a soft core is available such that the ISA would NOT change. If we have to reprogram to an new ISA then I agree that it makes no sense.

KarlS01
User Rank
Author
Replacing a hard core with an FPGA soft core is no solution
KarlS01   12/19/2017 9:39:52 AM
NO RATINGS
Soft core performance typically is an order of magnitude slower than a hardcore.  Also there is the matter of repogramming to a different ISA. This is more marketing hype.

MWagner_MA
User Rank
Author
Managing Obsolescence/Hardware still a challenge
MWagner_MA   12/19/2017 7:23:50 AM
NO RATINGS
Given the pace of change in FPGA's, I don't know if an FPGA will be a panacea for chip obsolescence issues. However, when changes in system design occur for hooking up new peripherals to a design off board, FPGA's can extend the life of a product 5+ years assuming you can get board compatible FPGA's.  Comm channels are what come to mind.  If you use the same electrical interface but have an updated protocol, programmable logic can be a solution.  Another solution is that when devices on SPI or I2C busses go obsolete, FPGA code can get updated to accomodate, even changing protocol if necessary assuming the right pins are connected at the other chip (like an A/D).

Like Us on Facebook
EE Times on Twitter
EE Times Twitter Feed