# How can I design Galois field 2^m multiplier.

L

#### lokesh kumar

Hi,

I am new to VHDL design. I want to design Galois field 2^m multiplier. First I want to start with Galois field 4 bit multiplier then 8 bit and then m bit multiplier. So please help me out with it.Any suggestion will be helpful.

R

#### Rob Doyle

Hi,

I am new to VHDL design. I want to design Galois field 2^m
multiplier. First I want to start with Galois field 4 bit multiplier
then 8 bit and then m bit multiplier. So please help me out with
it.Any suggestion will be helpful.

I don't know how FPGAs do it... but in software most Galois field
multipliers exponentiate the two terms and then add them.

Exponentiation is a simple lookup table.

Rob.

K

#### kevin.neilson

Do you mean the size of the field is 2^m, i.e. you want to build a multiplier over GF{2^m}? And are you talking about a constant multiplier (i.e., multiplying r*k, where k is a constant)? Probably; this is the type used in something like a Reed-Solomon encoder. If this is what you are doing thereis a simple matrix operation you can use which synthesizes to a bunch of XORs. I forget the exact matrix but I found it in Petersen's book, which isnice concise manual.

K

#### kevin.neilson

I meant Peter Sweeney's book, not Petersen's. Here's that matrix. I don'tknow if it will format properly in this font. This multiplies an input number b (beta) in the polynomial basis by alpha to the ith power, where i isconstant. Beta is a J-bit row vector, where the field is GF{2**J}, and the matrix is JxJ bits. The multiplications are over GF{2}. I hope this makes sense. There's an example in Sweeney. You'll need to make a table of the powers of alpha first so you can populate the matrix.

b*(a**i) =
[ a**(i+J-1) ]
[ ... ]
b*[ a**(i+1) ]
[ a**i ]

L

#### lokesh kumar

Could you please help me to design a code from an algorithm? I found the algorithm but it is a bit confusing for me to design the code as I am new to it.It would be a great help if you have a look on the algorithm and try to help me out with it.Please provide my your email and I can send you the algorithm.

Thank you