For HFT: FPGA notes with potential capabilities thanks to Matlab’s Simulink and HDL Code Generation

(Last Updated On: December 5, 2012)
Learn the Secret

Get  our 2 Free Books

Get these now which land directly to their inbox.
Invalid email address

For HFT: FPGA notes with potential capabilities thanks to Matlab’s Simulink and HDL Code Generation
This stuff will easily overwhelm so join my newsletter for a faster appreciation on what I am doing!!

Current HFT operation are using FPGA so here is some proof with notes:

Some notes about FPGA with job options:
1. It is quite clear there are more jobs for FPGA vs CUDA/GPU. Some example job descriptions according to Dice in the world of finance:
There are no pay rates but believe me FPGA developers are top dogs in HFT shops!

2. Standard make Xilinx maker has some ‘affordable’ level boards for around $100-200.
A $1700 evaluation kit:
Ouch! FPGA is not cheap or easy to develop in. Nor is it easy or is it?

3. FPGA Software development with R and Matlab
Matlab appears to have a solution:
Nothing for R:
I guess another reasons for Matlab. I have verified also there is something called Simulink HDL Code Generation. The help summarizes:
Simulink® HDL Coder™ software lets you generate hardware description language (HDL) code based on Simulink® models and Stateflow® finite-state machines. The coder brings the Model-Based Design approach into the domain of application-specific integrated circuit (ASIC) and field programmable gate array (FPGA) development. Using the coder, system architects and designers can spend more time on fine-tuning algorithms and models through rapid prototyping and experimentation and less time on HDL coding.

Typically, you use a Simulink model to simulate a design intended for realization as an ASIC or FPGA. Once satisfied that the model meets design requirements, you run the Simulink HDL Coder compatibility checker utility to examine model semantics and blocks for HDL code generation compatibility. You then invoke the coder, using either the command line or the graphical user interface. The coder generates VHDL or Verilog code that implements the design embodied in the model.

Usually, you also generate a corresponding test bench. You can use the test bench with HDL simulation tools to drive the generated HDL code and evaluate its behavior. The coder generates scripts that automate the process of compiling and simulating your code in these tools. You can also use EDA Simulator Link™, software from MathWorks® to cosimulate generated HDL entities within a Simulink model.

The test bench feature increases confidence in the correctness of the generated code and saves time spent on test bench implementation. The design and test process is fully iterative. At any point, you can return to the original model, make modifications, and regenerate code.


As far you know some basic assembly (and do not worry the programming doesn’t look like assembly, it is more human), it will help you get used to the idea of moving the data in a efficient way.In the case you want to revise or learn assembly this book is the ideal one.

I havent done VHDL for a long time but i was browsing the other day some really nice affordable PCI-Express FPGA cards with ethernet port,… which in reality is the ideal thing if you want to have the best possible speed.


This $300 card was recommended


NOTE I now post my TRADING ALERTS into my personal FACEBOOK ACCOUNT and TWITTER. Don't worry as I don't post stupid cat videos or what I eat!
This entry was posted in Featured, HFT High Frequency Trading, Matlab, Premium Membership and tagged , , , , , , on by .

About caustic

Hi i there My name is Bryan Downing. I am part of a company called QuantLabs.Net This is specifically a company with a high profile blog about technology, trading, financial, investment, quant, etc. It posts things on how to do job interviews with large companies like Morgan Stanley, Bloomberg, Citibank, and IBM. It also posts different unique tips and tricks on Java, C++, or C programming. It posts about different techniques in learning about Matlab and building models or strategies. There is a lot here if you are into venturing into the financial world like quant or technical analysis. It also discusses the future generation of trading and programming Specialties: C++, Java, C#, Matlab, quant, models, strategies, technical analysis, linux, windows P.S. I have been known to be the worst typist. Do not be offended by it as I like to bang stuff out and put priorty of what I do over typing. Maybe one day I can get a full time copy editor to help out. Do note I prefer videos as they are much easier to produce so check out my many video at