0 votes
by Phillip Eaton (130 points)

I believe the Pi Zero is ARM6 and I don't see that CPU listed anywhere on the product web pages.

Additionally, my potential application is timing sensitive (hardware emulation) and running on top of Linux has not worked so far, bare metal seems the only option.

I'm interested in what options are available.



1 Answer

+2 votes
by Stephen Pelc (1.2k points)
Pi Zero is ARMv6 (an ARM11 part). ARMvx refers to instruction set, ARMx to silicon generation. ARMv6 has an ARM32 instruction set plus Thumb1. What jitter can you accept in your timing? You may do better to use a multicore CPU, run Linux, and lock out one of the cores for everything except your hard real time code.
by Bart Nelson (150 points)
by Phillip Eaton (130 points)
Thanks for the responses. (I thought I responded months ago, but I guess I never hit Add Comment.)

Anyway, my hardware is now firmed up, it is a Pi Zero (it's provided as-is onto an interface board), but I will not be running Linux unless I can help it, it adds too much complexity for me and an unwanted boot-up time - it's a hobby system.

If I can find a Forth for it, great, if not, I'll probably stick with what's provided i.e. C.
by Wes Brown (160 points)
You can run a reduced function kernel.  People think that Linux introduces a lot of complexity, and that’s not necessarily true.  You can strip down a kernel, run a single process as init — don’t even need a file system if you use an initrd image.