All Projects → jamesbowman → sincos

jamesbowman / sincos

Licence: other
Efficient implementations of the transcendental functions

Programming Languages

forth
179 projects
python
139335 projects - #7 most used programming language
Verilog
626 projects
c
50402 projects - #5 most used programming language

Labels

Projects that are alternatives of or similar to sincos

FpOC
FPGA-based Field Oriented Control (FOC) for driving BLDC/PMSM motor.
Stars: ✭ 138 (+527.27%)
Mutual labels:  verilog
cocotb-bus
Pre-packaged testbenching tools and reusable bus interfaces for cocotb
Stars: ✭ 20 (-9.09%)
Mutual labels:  verilog
OpenLane
OpenLane is an automated RTL to GDSII flow based on several components including OpenROAD, Yosys, Magic, Netgen, Fault and custom methodology scripts for design exploration and optimization.
Stars: ✭ 548 (+2390.91%)
Mutual labels:  verilog
R8051
8051 soft CPU core. 700-lines statements for 111 instructions . Fully synthesizable Verilog-2001 core.
Stars: ✭ 70 (+218.18%)
Mutual labels:  verilog
pcievhost
PCIe (1.0a to 2.0) Virtual host model for verilog
Stars: ✭ 22 (+0%)
Mutual labels:  verilog
ProjectOberon2013
Project Oberon (New Edition 2013) Unofficial Mirror
Stars: ✭ 92 (+318.18%)
Mutual labels:  verilog
rules verilator
Bazel build rules for Verilator
Stars: ✭ 14 (-36.36%)
Mutual labels:  verilog
math
Useful m-scripts for DSP (CIC, FIR, FFT, Fast convolution, Partial Filters etc.)
Stars: ✭ 15 (-31.82%)
Mutual labels:  verilog
usbcorev
A full-speed device-side USB peripheral core written in Verilog.
Stars: ✭ 135 (+513.64%)
Mutual labels:  verilog
Icarus Verilog
This repo contains code snippets written in verilog as part of course Computer Architecture of my university curriculum
Stars: ✭ 28 (+27.27%)
Mutual labels:  verilog
symbolator
HDL symbol generator
Stars: ✭ 123 (+459.09%)
Mutual labels:  verilog
FPGA NTP SERVER
A FPGA implementation of the NTP and NTS protocols
Stars: ✭ 27 (+22.73%)
Mutual labels:  verilog
ruby-vpi
Ruby interface to IEEE 1364-2005 Verilog VPI
Stars: ✭ 15 (-31.82%)
Mutual labels:  verilog
verilog-coding-style
Verilog (SystemVerilog) coding style
Stars: ✭ 36 (+63.64%)
Mutual labels:  verilog
VerilogLanguageExtension
Verilog Language Extension for Visual Studio
Stars: ✭ 16 (-27.27%)
Mutual labels:  verilog
karuta
Karuta HLS Compiler: High level synthesis from prototype based object oriented script language to RTL (Verilog) aiming to be useful for FPGA development.
Stars: ✭ 89 (+304.55%)
Mutual labels:  verilog
tree-sitter-verilog
Verilog grammar for tree-sitter
Stars: ✭ 49 (+122.73%)
Mutual labels:  verilog
shapool-core
FPGA core for SHA256d mining targeting Lattice iCE40 devices.
Stars: ✭ 19 (-13.64%)
Mutual labels:  verilog
wbi2c
Wishbone controlled I2C controllers
Stars: ✭ 25 (+13.64%)
Mutual labels:  verilog
dblclockfft
A configurable C++ generator of pipelined Verilog FFT cores
Stars: ✭ 147 (+568.18%)
Mutual labels:  verilog

sincos

Efficient implementations of the transcendental functions

Build Status

This algorithm is taken from "Math Toolkit for Real-Time Programming" by Jack Crenshaw.

These versions use the adjusted Chebyshev coefficients on p.120.

isin() and icos() are integer sine and cosine functions. The input angle is in Furmans. (A Furman is 1/65536 of a circle. One degree is ~182 Furmans. One radian is ~10430 Furmans.) The result is a 16-bit signed integer, scaled so that -32767 represents -1.0 and +32767 represents +1.0.

Each implementation is followed by a stand alone test case that outputs sin(x) for all x. These should all match the reference in golden. Script testall builds and confirms all implementations.

Currently there are implementaions for:

  • plain C (sincos.c)
  • ANS Forth with 32-bit or 64-bit cells (forth32.fs)
  • Verilog (sincos.v)
  • Arduino processing (sincos.ino)
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].