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

Discussion in 'VHDL' started by lokesh kumar, Jun 21, 2013.

1. ### lokesh kumarGuest

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.
lokesh kumar, Jun 21, 2013

2. ### Rob DoyleGuest

On 6/21/2013 9:10 AM, lokesh kumar wrote:
> 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
> 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.
Rob Doyle, Jun 22, 2013

3. ### Guest

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.
, Jun 24, 2013
4. ### Guest

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 ]
, Jun 25, 2013
5. ### lokesh kumarGuest

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
lokesh kumar, Jul 4, 2013