RetroBSD

2.11BSD operating system for microcontrollers
It is currently Mon Jun 24, 2019 7:15 pm

All times are UTC




Post new topic Reply to topic  [ 26 posts ]  Go to page 1, 2  Next
Author Message
 Post subject: OSNews
PostPosted: Wed Aug 20, 2014 5:38 pm 
Committer
User avatar

Joined: Wed Oct 10, 2012 11:01 pm
Posts: 1081
Location: Sunnyvale, CA
RetroBSD project got some public attention. See a note on OSNews: http://www.osnews.com/story/27901/Retro ... controller
Quote:
RetroBSD: Run old BSD Unix on a microcontroller
Modern microcontrollers are becoming quite beefy. The Microchip PIC32 line is actually an implementation of the MIPS32 4K architecture - and with 512K of flash and 128K of RAM you can even run Unix! RetroBSD is a port of BSD 2.11 for the PIC32. You might not be able to run X11, but it is still very useful and a great reminder of how small Unix used to be - and how far it has come.


Top
 Profile  
 
 Post subject: Re: OSNews
PostPosted: Wed Aug 20, 2014 6:29 pm 
Contributor

Joined: Mon Nov 12, 2012 1:34 pm
Posts: 1092
Hi Serge,

Nice. Keeps working well here :).

I gotta get back to work on it. Need to roll up sleeves and make PCB!

Pic32 B+ or similar.

Wiz


Top
 Profile  
 
 Post subject: Re: OSNews
PostPosted: Thu Aug 21, 2014 9:01 pm 

Joined: Thu Aug 21, 2014 8:32 pm
Posts: 3
Hey there,

As the guy who submitted the story to OSNews, glad to help! I have known of RetroBSD for some time now, and thought it was a good time to spread the word a little.

I keep trying to carve out some time to do a ARM port, but sadly I keep finding myself distracted by bright shiny things/life/paying work.

All the best
Jock


Top
 Profile  
 
 Post subject: Re: OSNews
PostPosted: Fri Aug 22, 2014 6:40 pm 

Joined: Tue Aug 19, 2014 2:27 pm
Posts: 10
JockM wrote:
I keep trying to carve out some time to do a ARM port, but sadly I keep finding myself distracted by bright shiny things/life/paying work.


An ARM port would be interesting, but maybe an Arduino would make more sense? It's closer to a PIC32 than an ARM processor(at least as far as I know).


Top
 Profile  
 
 Post subject: Re: OSNews
PostPosted: Fri Aug 22, 2014 6:52 pm 
Committer
User avatar

Joined: Wed Oct 10, 2012 11:01 pm
Posts: 1081
Location: Sunnyvale, CA
Hi Jock and rmiddleton,
JockM wrote:
As the guy who submitted the story to OSNews, glad to help! I have known of RetroBSD for some time now, and thought it was a good time to spread the word a little
Thank you for that: it pushed an interest to the project a bit. :)

Port to ARM would be nice to have. It could help to clean up the system and keep it architecture-agnostic.

rmiddleton wrote:
An ARM port would be interesting, but maybe an Arduino would make more sense? It's closer to a PIC32 than an ARM processor(at least as far as I know).
Do you mean Atmel AVR architecture? Arduino by itself is just a form factor, not cpu. There exist a few pic32-based Arduino boards, capable to run RetroBSD right away, like Olimex Duinomite or chipKIT Max32 with WiFi shield.


Top
 Profile  
 
 Post subject: Re: OSNews
PostPosted: Fri Aug 22, 2014 6:55 pm 
Committer
User avatar

Joined: Wed Oct 10, 2012 11:01 pm
Posts: 1081
Location: Sunnyvale, CA
Hi Wiz,
wiz wrote:
I gotta get back to work on it. Need to roll up sleeves and make PCB!
Pic32 B+ or similar.
How about MZ-based board? ;)
--Serge


Top
 Profile  
 
 Post subject: Re: OSNews
PostPosted: Fri Aug 22, 2014 7:06 pm 
Contributor

Joined: Mon Nov 12, 2012 1:34 pm
Posts: 1092
Hi All,

p.s.- Good idea Serge. In you opinion, are the bugs in mz manageable? Also, any feature or applications suggestions are most welcome. I am thinking that if you recommend doing it I will get to work?

Arm port? It seems to me that on chip RAM is THE issue.

Just like it was for the first PCs.

The 32mz has 4 times the RAM. It could probably even run an early Linux kernel?

I am not convinced that a ARM port would give any other real advantages? Are any of those chips a lot cheaper for the same RAM than PIC32? "Memory management" or whatever its called that would allow a huge virtual memory space would be real help IMHO so program and data size would no longer be a "will not run" issue, just a speed issue.

wiz


Top
 Profile  
 
 Post subject: Re: OSNews
PostPosted: Fri Aug 22, 2014 8:15 pm 

Joined: Tue Aug 19, 2014 2:27 pm
Posts: 10
vak wrote:
rmiddleton wrote:
An ARM port would be interesting, but maybe an Arduino would make more sense? It's closer to a PIC32 than an ARM processor(at least as far as I know).
Do you mean Atmel AVR architecture?


Oops, you're right. Although it's only 8-bit apparently, so I don't know how well it would work. According to Wikipedia, BSD did run on 16-bit computers, but I'm guessing that's going to be something in the 2.X series of BSD.

As for an ARM port - you probably want to read up a bit on the DTB that Linux uses in order to give the kernel information about what board it is running on. It's much more flexible than the old way of doing it, which was to have headers for each possible board. RetroBSD appears to be doing the same thing at the moment, which clearly won't scale if it is ported to more boards/architectures.


Top
 Profile  
 
 Post subject: Re: OSNews
PostPosted: Fri Aug 22, 2014 8:30 pm 
Contributor
User avatar

Joined: Thu Nov 08, 2012 7:04 am
Posts: 2401
Location: Rapa Nui
You may run Retrobsd on Atmega1284p (from technical point of view) for example - as you can run full Linux on it - when you would accept 15hours boot time for example :D (there is the Linux port available - emulation of ARM on AVR 8bitter).

I think not having the ARM MCU port of Retrobsd is the major issue and a big mistake.
There are ie. Cortex M4 chips with 192 - 256kB of sram available since 2009/10 afaik, with much better HW than pic32 has got (my apology to all hardcore mips fans).
Experts may say whether it is doable technically (the port to ARM), but to ignore the biggest, most dynamic and probably only in the near future relevant 32bit MCU market is not a good approach..
;)

_________________
Pukao Hats Cleaning Services Ltd.


Top
 Profile  
 
 Post subject: Re: OSNews
PostPosted: Fri Aug 22, 2014 9:15 pm 

Joined: Fri May 23, 2014 4:04 pm
Posts: 10
STM32F401RE has I think 512K flash, 96K RAM, and on a dev board they cost something like £8 each in the UK (STM F401RE Nucleo board). Has Ardunio type headers plus its own, the usual mix of i2c/spi/uart etc and a fairly basic but adequate for RetroBSD memory protection unit.

RAM size is going to be a problem - it's not practical to integrate 1MB of RAM onto a low end SoC and most "real world" use cases are quite happy with 32K or less.

Linux will indeed run on the STM32 devices, but only with external RAM added.

Alan


Top
 Profile  
 
 Post subject: Re: OSNews
PostPosted: Fri Aug 22, 2014 9:30 pm 
Contributor
User avatar

Joined: Thu Nov 08, 2012 7:04 am
Posts: 2401
Location: Rapa Nui
The stm32f407 available since ever (ie f4discovery board) has got 192kB of ram for example (and f405/415/407/417).

There are NXP Cortex M4 chips (LPC4320, 30, 50, 70) with up to 282kB of ram.

The newest stm32f427/437/429/439 have got 256kB of ram.

STM32F407 and friends can execute from an external sram, STM32F427 and friends can do sram/sdram as well.

TI: Cortex R5F - 512kB ram, 330MHz
Freescale: Kinetis K63/64 192-256kB ram

So there are at least 20 available Cortex M4 arm mcus with internal ram >= 192kB.

I would estimate 50 Cortex M4 mcus with >=128kB ram (against 3 mips mcu chips - pic32mx470/695/795F512 with 128kB, with pic32MZ series a dozen more..).

PS: STM32F407 (as an example) - 168MHZ+, 192kB ram, 1MB flash, SDIO (~10x faster access to the sdcard than pic32mx), 32bit FPU, DSP, 12bit (3xsimultaneous) 5MHz ADCs, 12bit DACs, smaller power consumption, and a lot of other nice things inside..

Quote:
Linux will indeed run on the STM32 devices, but only with external RAM added.

uCLinux only, with at least 8MB of external ram..

_________________
Pukao Hats Cleaning Services Ltd.


Top
 Profile  
 
 Post subject: Re: OSNews
PostPosted: Sun Aug 24, 2014 3:42 pm 

Joined: Thu Aug 21, 2014 8:32 pm
Posts: 3
rmiddleton wrote:
vak wrote:
Oops, you're right. Although it's only 8-bit apparently, so I don't know how well it would work. According to Wikipedia, BSD did run on 16-bit computers, but I'm guessing that's going to be something in the 2.X series of BSD.


So in a very theoretical way it might be possible to port to the ATmega2560, since it supports external ram. It is still an 8 bit architecture so to access more than 64K you have to deal with paging registers. Vaguely similar to the PDP-11 which Unix did run on back in the day.

It would not be easy, or practical, but it would be theoreticallydoable.


Top
 Profile  
 
 Post subject: Re: OSNews
PostPosted: Sun Aug 24, 2014 3:55 pm 

Joined: Thu Aug 21, 2014 8:32 pm
Posts: 3
vak wrote:
Hi Jock and rmiddleton,
JockM wrote:
As the guy who submitted the story to OSNews, glad to help! I have known of RetroBSD for some time now, and thought it was a good time to spread the word a little
Thank you for that: it pushed an interest to the project a bit. :)

Port to ARM would be nice to have. It could help to clean up the system and keep it architecture-agnostic.


Of course. I think RetroBSD is very cool project, and have used it as the OS in a couple of prototypes. I have been doing some durability tests (I have a UBW32 that has been calculating factorials and counting reboots.) to help me decide if I could use it as a free alternative OS in some of the larger projects I might do. It is looking good :)

An ARM port would be of a help, since I wouldn't have to consider a single architecture. So as I say, I hope to carve out the time. Lets see if I do. LOL


Top
 Profile  
 
 Post subject: Re: OSNews
PostPosted: Sun Nov 08, 2015 8:13 pm 

Joined: Tue Nov 03, 2015 11:36 am
Posts: 8
It's not Christmas yet, but I'd be very interested in a port to ARM, in particular to the new STM32 F7 Discovery kit. See: http://www.st.com/web/catalog/tools/FM1 ... 8/PF261641

It may not be the cheapest in the world, but it has lots of memory (including massive external RAM and ROM), a TFT display capable of 80x25 characters, a µSD card slot, and Ethernet. At 216 MHz, it should be able to perform extremely well compared to retro machines. Might even be able to run CPU emulators at a usable speed.

A serial connection (USB or LAN) or a keyboard would be all that's needed to use it.

Just dreamin...
-jcw


Top
 Profile  
 
 Post subject: Re: OSNews
PostPosted: Mon Nov 09, 2015 1:38 pm 
Contributor

Joined: Mon Nov 12, 2012 1:34 pm
Posts: 1092
Hi All,

THE big deal seems to be the [fast] RAM size.

Kinda reminds me of the early DOS days. Minimal boot, read OS into RAM, run applications.

The MMU in the MZ...EF and dynamic kernel modules seem to me to be the next big steps.

So I can easily write HUGE applications as long as they don't need everything in RAM an once and the ability to easily add my own drivers, networking, etc. without modifying the OS core. i.e.- I can easily repeat the modify, test development process for both programs and drivers.

Lots of fun :).

Wiz


Top
 Profile  
 
 Post subject: Re: OSNews
PostPosted: Mon Nov 09, 2015 2:43 pm 
Contributor
User avatar

Joined: Thu Nov 08, 2012 7:04 am
Posts: 2401
Location: Rapa Nui
The issue with STM32F7 is the ram is spread over several segments - 256k, 64k, 16k, 4k.. Most probably you can only execute out of the 256k one.

_________________
Pukao Hats Cleaning Services Ltd.


Top
 Profile  
 
 Post subject: Re: OSNews
PostPosted: Mon Nov 09, 2015 3:27 pm 

Joined: Tue Nov 03, 2015 11:36 am
Posts: 8
Code can run from external RAM and NOR flash too (but not NAND, IIUC).
There seems to be a 6..8x performance penalty, from what I find when googling.
Perhaps that 8 MB RAM could be configured as really fast swap device?
Anyway... ≥ 240 KB fast internal RAM wouldn't be that bad, would it?

-jcw


Top
 Profile  
 
 Post subject: Re: OSNews
PostPosted: Mon Nov 09, 2015 3:55 pm 
Contributor

Joined: Mon Nov 12, 2012 1:34 pm
Posts: 1092
Hi jcw,

'Not that bad'. I am not sure.... Having a big piece of contiguous RAM seems to be what has proven to work for OEMs time and again.

For drivers, the ability to 'lock' some code in kernel RAM seems also to be required.

All that said, with [much?] work the RAM footprint of the Retro/Lite kernel could probably be reduced quite a bit. Maybe to 1/2.

Essentially that was what was happening in the early days of DOS and Z80 computers. Each bity was 'required', documented, etc. Now big RAM is the rule so writers are MUCH more lazy, etc. This leads to sloppy definitions and usages. And real bugs deeply buried into the OS and its applications.

Just my opinion of course.

I think your idea of porting is interesting and perhaps useful, but probably a VERY BIG job at least right now.

Now given an STM chip with dynamic RAM built-in or easily added we might have some fun.

Along those lines, I am surprised that the dynamic RAM folks don't [as far as I know] have an auto-refreshed chip with a serial interface. That could be pretty useful for swap space and similar uses.

Lots of fun :).

Wiz


Top
 Profile  
 
 Post subject: Re: OSNews
PostPosted: Mon Nov 09, 2015 4:22 pm 
Committer
User avatar

Joined: Thu Oct 11, 2012 8:45 am
Posts: 1801
Location: Room 217, Floor 8, Arm 8, Wheel S7, Mars Base Alpha 3
Quote:
Along those lines, I am surprised that the dynamic RAM folks don't [as far as I know] have an auto-refreshed chip with a serial interface. That could be pretty useful for swap space and similar uses.

Easy enough to knock one up with a PSRAM and a CPLD - just like Pito's 8MB module but using a serial interface instead of parallel...

_________________
Why not visit my shop? http://majenko.co.uk/catalog
Universal IDE: http://uecide.org
"I was trying to find out if it was possible to only eat one Jaffa Cake. I had to abandon the experiment because I ran out of Jaffa Cakes".


Top
 Profile  
 
 Post subject: Re: OSNews
PostPosted: Mon Nov 09, 2015 6:09 pm 
Contributor
User avatar

Joined: Thu Nov 08, 2012 7:04 am
Posts: 2401
Location: Rapa Nui
There are 4Mbit 8pin serial FRAMs and MRAMs available.. 50MHz SPI..
A pity the mchp stuff is quite slow in SPI.
BTW - ARM stuff with external sram/sdram - for the same $$ as for any pic32mx/mz board you may have ARM8-9-20 with 512-1024MB dram and single/dual core @1000MHz running Ubuntu.. inclusive ethernet and fullhd hdmi..
Ie.:
http://store.linksprite.com/pcduino-lit ... rs-ubuntu/
http://store.linksprite.com/pcduino3-nano/
..

_________________
Pukao Hats Cleaning Services Ltd.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 26 posts ]  Go to page 1, 2  Next

All times are UTC


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
cron




Powered by phpBB® Forum Software © phpBB Group

BSD Daemon used with permission