Welcome
Welcome to cdstahl.orgCategories
-
Recent Posts
- VHDL Procedures
- Exporting Hierarchy from Vivado
- VHDL and Division vs Shifting
- Inferring Multiple BRAMs
- SSH Host-Key Setup
- Numeric_Std vs Std_Logic_Unsigned
- Creative Uses of Addition
- Sandbox, Bit Counting
- Using GIT to Manage Builds
- Mixing LFSRs
- Affine Feedback Shift Register
- Verilog’s Casex Issue
- Linear Regression
- Non-Orthogonal Basis Vectors
- Viterbi Decoder, Traceback
Archives
Meta
Category Archives: FPGA
Another Galois Field Multiply
After completing my Reed-Solomon decoder’s HDL, I decided to see how well it performed. The results weren’t as good as I expected. The limiting path was in the field math. A bit of simple pipelining allowed 250MHz operation on my … Continue reading
Posted in FPGA, Math
Tagged code provided, galois field
Comments Off on Another Galois Field Multiply
Division by Multiplication
Occasionally, a value will need to be divided by a non-power of two. Using the division cores from coregen is an option. Certainly it is a good option if area isn’t a concern but a quick design time is. Another … Continue reading
Posted in FPGA
Comments Off on Division by Multiplication
Functions Vs Scripts
I recently decided to re-write the logic portion of my Reed-Solomon encoder to use VHDL functions instead of script-generated logic. I defined a “permute” function to perform the logic manipulation:
Reed-Solomon Encoder
This article describes how to make a performance optimized Reed-Solomon encoder. The actual encoder is for an full-length, narrow-sense RS code. In this case, the code generated was an code that could allow at least 8 bytes to be corrected, … Continue reading
The Synthesizer Thanks You For Your Opinion
The synthesizer thanks you for your opinion but has decided to go in another direction. The problem of trying to infer a specific implementation. Continue reading
Posted in FPGA
Comments Off on The Synthesizer Thanks You For Your Opinion
Logically Good, Actually Bad
Often, things that sound like they should work well, but actually don’t. This actually is related to one of my rules — “avoid excessively creative code.” In this case, I decided to compare the fancy “carry-lookahead” adder to whatever fabric-based … Continue reading
Posted in FPGA
Comments Off on Logically Good, Actually Bad