Startup Claims C-code To SoC In 8-16 Weeks
eldavojohn writes "Details are really thin, but the EE Times is reporting that Algotochip claims to be sitting on the 'Holy Grail' of SoC design. From the article: '"We can move your designs from algorithms to chips in as little as eight weeks," said Satish Padmanabhan CTO and founder of Algotochip, whose EDA tool directly implements digital chips from C-algorithms.' Padmanabhan is the designer of the first superscalar digital signal processor. His company, interestingly enough, claims to provide a service that consists of a 'suite of software tools that interprets a customers' C-code without their having any knowledge of Algotochip's proprietary technology and tools. The resultant GDSII design, from which an EDA system can produce the file that goes to TSMC, and all of its intellectual property is owned completely by the customer—with no licenses required from Algotochip.' This was presented at this year's Globalpress Electronics Summit. Too good to be true? Or can we expect our ANSI C code to be automagically implemented in a SoC in such a short time?"
C code to SoC.
So, how is this offering from India any different? I could do it in less than 8 to 16 weeks if the customer supplies me the C code to be converted. As in, download/purchase any one of these utilities, run the customer's file through it, and mail it back to them.
Pretty simple.
Weaselmancer
rediculous.
I'm not entirely clear on how it works though. If I give them this:
#include <stdio.h>
int main() {
printf("Hello world!\n");
}
they will convert it into a custom integrated circuit chip with Hello World! silkscreened on the top of it or does the chip actually display "Hello World!" on whatever it is connected to?
for(i = 0; i != 5 ; i++)
{
digit[i] = '0';
if(value >= 80000) { value -= 80000; digit[i] |= 8; }
if(value >= 40000) { value -= 40000; digit[i] |= 4; }
if(value >= 20000) { value -= 20000; digit[i] |= 2; }
if(value >= 10000) { value -= 10000; digit[i] |= 1; }
value = value*8 + value*2;
}
Advantages:
* No divide/mod operator
* Extracts digits from most significant to least significant (if you want to stream out the digits)
* Can be unrolled or pipelined to meet timing / throughput requirements
Sorry about any syntax/typos/errors in the code... it is a comment!