How to install SciPy on Apple Silicon (ARM / M1)

It’s possible to install on regular arm64 brew python, you need to compile it yourself. If numpy is already installed (from wheels) you’ll need to uninstall it: pip3 uninstall -y numpy pythran I had to compile numpy, which requires cython and pybind11: pip3 install cython pybind11 Then numpy can be compiled: pip3 install –no-binary :all: … Read more

Explaination of ARM (especifically mobile) Peripherals Addressing and Bus architecture?

A difference between ARM and the x86 is PIO. There are no special instruction on the ARM to access an I/O device. Everything is done through memory mapped I/O. A second difference is the ARM (and RISC in general) has a separate load/store unit(s) that are separate from normal logic. A third difference is that … Read more

Converting Int to Float or Float to Int using Bitwise operations (software floating point)

First, a paper you should consider reading, if you want to understand floating point foibles better: “What Every Computer Scientist Should Know About Floating Point Arithmetic,” http://www.validlab.com/goldberg/paper.pdf And now to some meat. The following code is bare bones, and attempts to produce an IEEE-754 single precision float from an unsigned int in the range 0 … Read more

How to trap unaligned memory access?

Linux can do the fixup for you or warn about the access. You can enable the behavior in /proc/cpu/alignment, see http://www.mjmwired.net/kernel/Documentation/arm/mem_alignment for an explanation of the different values. 0 – Do nothing (default behavior) 1 – Warning in kernel-log with PC and Memory-Address printed. 2 – Fixup error 3 – Warn and Fixup 4 – … Read more

How do I find ARM Linux entry point when it fails to uncompress?

We seem to have ported Das U-Boot successfully. There’s evidence that that is a faulty assumption. Just before calling the kernel, the pointer theKernel is 10008000 and not 10800000. Which version of U-Boot are you using? In both 2012.10 and 2013.04 versions of U-Boot, the variable theKernel is only declared and used by code for … Read more

tech