Creating 16-Bit Sine Table w/ 8-Bit Verilog & Sin Table

  • Thread starter Thread starter david90
  • Start date Start date
  • Tags Tags
    Sin Table
Join the discussion
Registration is free. Ask a follow-up in this thread, or start your own.
3 replies · 10K views
david90
Messages
311
Reaction score
2
How do I use two 8-bit sine table to make one 16-bit sine table?

Here is my 8-bit sine table in verilog

char sintable[256]
for(int i=0;i<256;i++)
sintable=sin(2*pi*i/256)*128


I know I have to somehow use: sin(theta+ delta*theta)

theta would be the first 8-bit and delta*theta would be the last 8 bit. Combine and u get 16-bit.
 
Engineering news on Phys.org
also, how do you convert a sine table to a cosine table? I want to instaniate a sine table module and then somehow convert it into a cosine.
 
david90 said:
How do I use two 8-bit sine table to make one 16-bit sine table?
What are you trying to do? You can't make a 16-bit resolution something out of two 8-bit somethings. Two 8-bit somethings makes a 9-bit something.
 
Well, in radians:
[tex]\sin(\theta)=\cos(\theta-\frac{\pi}{2})[/tex]
So switching between the two isn't that hard.
Of course, you'll have to adjust that to compensate for how many tics you'll be using per quarter arc.