Posted by cadsmith on February 17, 2008
“Practical FPGA Programming in C”, Pellerin & Thibault, 2005, 464pp, is a guide to using Impulse C to create FPGAs. Parallel process threads share memory, streams, signals and registers between them to be written/posted by one and read/waited by another. Streams are first-in-first-out (FIFO) buffers. High-level code can be simulated and translated to VHDL & RTL. Each thread becomes a unique process or logic block initialized at start time. This makes it possible to create an embedded testbench to run component unit tests, system evaluations, test generators or simulators in mixed software and hardware. Platform FPGAs have 32-bit processor cores such as Xilinx & PowerPC, or Altera & ARM. Since the C code is untimed, clock synchronization requires editing the HDL. Synthesis tools such as Streams-C and embedded operating systems such as uClinux can be used. Additional news.