Started designing a single-board computer using the Rabbit 2000 CPU. Planned specs so far:
29.5MHz max clock speed
512KB of flash memory
2MB of RAM
MicroSD card storage
Plenty of GPIO pins
Header for an FTDI adapter

There will of course be expansion headers, so you can add video/keyboard interface capability, or other peripherals based on requirements.

I'm doing a bit of a hack with the RAM. I'm treating the 16-bit RAM as two separate 8-bit RAMs with the CPU's built-in chip-select logic.

The chip-select logic is pretty interesting. It allows you to set what /CS, /WE, and /OE lines are active for each 256KB block of address space, and you can also invert the A18 and A19 lines to map blocks of memory to different address spaces.


A useful example:
On startup, flash is mapped to the first block. You can then remap the first block of RAM to be in the third block of the address space, copy flash to it, and swap that block of RAM to the first block of address space, to seamlessly switch to running your code from RAM without any tricky jumps in the software.

· · Web · 0 · 0 · 0
Sign in to participate in the conversation
Mastodon for Tech Folks

This Mastodon instance is for people interested in technology. Discussions aren't limited to technology, because tech folks shouldn't be limited to technology either!