# IEEE754 Floating-Point ALU, in nmigen
This project implements a pipelined IEEE754 floating-point ALU that supports FP16, FP32 and FP64. It is a general-purpose unit that may be used in any project (not limited to one specific processor).
Developed under a Grant from NLnet (http://nlnet.nl), more information may be found at http://libre-soc.org
# Requirements
nmigen
libresoc-nmutil
yosys (latest git repository, required by nmigen)
sfpy (running unit tests). provides python bindings to berkeley softfloat-3
# Building sfpy
The standard sfpy will not work without being modified to the type of IEEE754 FP emulation being tested. This FPU is emulating RISC-V, and there is some weirdness in x86 IEEE754 implementations when it comes to FP16 non-canonical NaNs.
The following modifications are required to the sfpy berkeley-softfloat-3 submodule:
cd /path/to/sfpy/berkeley-softfloat-3 git apply /path/to/ieee754fpu/berkeley-softfloat.patch
The following modifications are required to the sfpy SoftPosit Makefile:
cd /path/to/sfpy/SoftPosit git apply /path/to/ieee754fpu/SoftPosit.patch
# Useful resources
Release files for libresoc-ieee754fpu 0.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| libresoc-ieee754fpu-0.0.1.tar.gz | 186.9 kB | Details |
Release files / libresoc-ieee754fpu-0.0.1.tar.gz
| Download URL | libresoc-ieee754fpu-0.0.1.tar.gz |
|---|---|
| Size | 186.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
898d0c193544b59021ac9552012dd294a0725cc74f9aff763f5554c49ddf997c
|
|
BLAKE2b-256 checksum How to use checksums |
2b3753f6025bf19043f20caf03663c5ff1d454ab27748e96bad0a42555e0c47d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
Python-urllib/3.7
|