| My job description: | ||
|
To forward the project, I'm often asked to:
|
||
| Some courses I've designed and held: | ||
| Connecting over clock domains |
Setup/hold, metastability, asynchronous and isochronous inputs, double-clocking, double-buffering, fifos, circular buffers. A structured approach to inter-clock domain communication. Clock: gating, dividing and multiplication. Clock handling and limitations in FPGAs and ASICs. 2 h lecture. | |
|
|
||
| Some things
simulation and synthesis courses do not teach. |
Block- and chip-level design flows. Back-end design flow. Floorplanning and clock tree design. PVT variation space and levels of simulation accuracy. Deep sub-micron delay calculation. Synthesis scripting and setup for successful layout. Basics of static timing analyses. 3 x 2 h lectures. | |
|
|
||
| Verilog workshop | When several design-entry tools are available and engineer
experience vary: the style,
look, feel, testability and error-prone-ness of the code differs a lot even within a
design group.
In this workshop all participants solve the same problem and then we go through all solutions giving (usually) constructive comments. Very efficient way to improve tool usage and enhance understanding of code style issues. Up to 6 h own work + 2 hour workshop. |
|
| VHDL workshop | Same as above but in VHDL. | |
|
|
||
| Understanding Synthesis | Basics of timing analyses, "Cloud diagrams" to improve design understanding. The different phases within the synthesis process. Setting up I/O timing. How to write fast code. Architectural and layout dependant limitations. Synthesis scripting. 2 h lecture. | |
|
|
||
| 101 beautiful uses of LFSRs. | Still under development. Linear Feedback Shift Registers. Maximum length LFSR and its dangers, psuedo-random generator, BIST, encoding, decoding. CRC and error checking. Parallel CRC computation. Encryption and decryption. |
|
| Home | ||