some clarification

Forum for anything not suitable for the other forums.

some clarification

Postby adexmont » Wed Jan 14, 2015 9:30 am

i would like to try different fpga settings so i start reading the fpga tutorial... after 10 row i give upprimarily because i need a license and second because are too much steps and are not sure, if some error happen i can't debug in any way.

so, because i'm taking parallella as a smatphone (consume and arm cpu make it more close to a smart phone than a intel p4 or much modern machines)i was suppose to have a sort of flasher for the fpga ... is that possible?

if I get right the fpga is a sort of firmware that can't be affected from what is contained on the micro sd right ?

will you provide a simple way to manage the fpga or you will keep this way to secure the support and stability of the device ?

I gave a shot at the supermega " freertos" that's is free but the tutorial cost 50$ so useless for me and beside the economic fact it's a different concept of what i'm calling OS.

in my searching process i rised from the dust an old site called gnu-hurd looks barely alive that talk about a kernel that isn't monolitic but modular is that suitable for parallella? i know it's not so much supported but maybe it's a good alternative to have epiphany working :P

from what i get (1/10 of what you write maybe) i'm facing a nice device that try to find his market place with an open sourced base aimed to develop embedded propertary world of a sort of that ... like android ... it's opensource but the core is closed, here the core i open and teh rest is licensed so if you want to do something you need to pay for license and be licenserestricted for every project. It's wired

... You can read all my posts and understand my level (not even primary school)

so please forgive me if i'm taking a wrong approach or assumption... if you have time try to explain how to help ... i'm feeling disabled but i think i'm not dumb , ... just lazy :P

thanks again
adexmont
 
Posts: 121
Joined: Thu Oct 24, 2013 12:58 pm

Re: some clarification

Postby sebraa » Wed Jan 14, 2015 3:00 pm

The Zynq contains a dual-core ARM, and some additional FPGA logic, which is used to connect the ARM to the Epiphany chip and does the HDMI stuff as well. An FPGA firmware is usually called "bitstream" and on the Parallella, the bitstream is loaded into the FPGA from the SD card at bootup.

Android is a (more or less) open system. The devices are usually closed. Here, the device is open for you to do whatever you want to use it for. Android, HURD or FreeRTOS might not be the first choices on the Parallella's ARM cores unless you know what you're doing.

I don't really get what you mean with your post, though.
sebraa
 
Posts: 495
Joined: Mon Jul 21, 2014 7:54 pm

Re: some clarification

Postby adexmont » Thu Jan 15, 2015 11:17 am

adexmont
 
Posts: 121
Joined: Thu Oct 24, 2013 12:58 pm

Re: some clarification

Postby timpart » Thu Jan 15, 2015 12:45 pm

timpart
 
Posts: 302
Joined: Mon Dec 17, 2012 3:25 am
Location: UK

Re: some clarification

Postby adexmont » Fri Jan 16, 2015 10:12 am

adexmont
 
Posts: 121
Joined: Thu Oct 24, 2013 12:58 pm

Re: some clarification

Postby sebraa » Fri Jan 16, 2015 1:49 pm

Hi,

I think you are confusing a few terms...
Linux is a kernel only (not a complete operating system!), which forms the basis for many Linux distributions. Same goes for HURD.
Ubuntu is a Linux distribution, that is, a complete operating system using the Linux kernel.
Linaro is a company working with Linux, Ubuntu and many other things to make them work better on embedded hardware (if I'm wrong/misleading here, please correct me).
The Zynq is a chip containing two ARM cores and some FPGA logic.

Linux requires at least 32-bit CPU and a few MB of RAM to run at all. For non-embedded usage (that is, using it in a real operating system) you also want to have an MMU. On the Parallella, the ARM cores do have all of it. The Epiphany chip has neither enough memory nor an MMU, so running Linux on it is impossible. That includes Linux applications as well, because they require a Linux. (For varying degrees of "impossible". Put a lot of work to it and you might get an extremely slow demonstrator.)

So to interact with the Parallella, just use the images provided by Adapteva, and either connect keyboard/mouse/display or connect it to a network and work remotely with e.g. SSH. (The latter is what I do.)

However, there is a lot of (single-core) CPUs out there which have 32 bit, just a few KB of RAM and no MMU - like the Epiphany - and there are many operating systems for them (FreeRTOS, ChibiOS/RT, ...). As far as I know, none of them have been ported to the Epiphany. In my opinion: Unless you know why you need them and know how to port them, don't bother.

The Epiphany chip cannot run on its own. It needs some other world to get code from and to exchange data with. The easiest way is to use the Linux on the ARM chips as the other world. As far as I know, there is no other choices yet.

So to get started, just write a few Linux applications and run them on the ARM cores. It's just an almost-standard Linux you have there.
Then, write a small host program for the ARM, which can talk to the Epiphany, and some Epiphany programs to see what it can do and what it can't do.
Then, when you know the Epiphany reasonably well, think again about operating systems.

Best Regards,
sebraa
sebraa
 
Posts: 495
Joined: Mon Jul 21, 2014 7:54 pm

Re: some clarification

Postby adexmont » Sat Jan 17, 2015 8:45 am

adexmont
 
Posts: 121
Joined: Thu Oct 24, 2013 12:58 pm

Re: some clarification

Postby 9600 » Sat Jan 17, 2015 9:36 am

Andrew Back
User avatar
9600
 
Posts: 997
Joined: Mon Dec 17, 2012 3:25 am

Re: some clarification

Postby adexmont » Sat Jan 17, 2015 10:02 am

adexmont
 
Posts: 121
Joined: Thu Oct 24, 2013 12:58 pm

Re: some clarification

Postby piotr5 » Sun Jan 18, 2015 8:54 am

in that case, why would you need a graphical gui on epiphany?
are you planning to have 1/16 of the screen displaying each gui and 16 mice and keyboards controlling them?
if yes, then you'd likely need some really old gui. maybe geos or the gui from amiga?
they need less memory in-place. windows would use up whole 512KB, all 16 cores' memory, and still require more.
so you could basically run only a single windows 3.0 or rather 2.0 session, single-threaded.
multithreading is costly memorywise. old code isn't reentrant, so each thread must have its own copy....

the real advantage of parallella is in the hardware-side.
attach wahtever analogue signal to AD input and let 16 cores analyze that.
or get some AD of your own and let it flood parallella with input.
or maybe program fpga to perform complicated calculations for you, then process that in epiphany.
for all these applications you need no OS on epiphany...

however, if you do have more than 10 parallella boards connected with e-link and network, then maybe an OS would be nice.
but do you have that? and in which way could an os make use of >160 cores unless for a specialized task (like database)?
and how would you actually make the connections and power-supply without hardware-experience anyway?
piotr5
 
Posts: 230
Joined: Sun Dec 23, 2012 2:48 pm


Return to General Discussion

Who is online

Users browsing this forum: No registered users and 29 guests