element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Single-Board Computers
  • Products
  • Dev Tools
  • Single-Board Computers
  • More
  • Cancel
Single-Board Computers
Forum Arduino: now a Single Board Computer!
  • Blog
  • Forum
  • Documents
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Single-Board Computers to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • Replies 69 replies
  • Subscribers 62 subscribers
  • Views 6876 views
  • Users 0 members are here
  • intel
  • rome
  • makerfaire
  • arduino_tre
  • arm_cortex_a8
  • cortex_a8
  • beaglebone_black
  • sbc
  • embedded
  • tre
  • bbb
  • maker_faire_rome
  • BeagleBone
  • sitara
  • texas_instruments
  • bb_black
  • am335x
  • maker_faire
  • beagle_bone_black
  • arm
  • arduino
  • italy
  • ti
Related

Arduino: now a Single Board Computer!

fustini
fustini over 11 years ago

So I often get annoyed when folks refer to the AVR-based Arduino boards (or even the ARM microcontroller DUE) as a Single Board Computer.  The Yun blurred the lines a bit... but the news today from Maker Faire Rome has the Arduino brand fully in the SBC world now:

 

Arduino Announces new Boards and Collaboration with Intel and T.I.

http://makezine.com/2013/10/03/arduino-announces-two-new-linux-boards/

image

 

coder27 posted about the Intel-based Arduino board, and there is also an upcoming Arduino model based on the TI Sitara (same as in the BeagleBone Black - an ARM Cortex A8).

 

I just read an interview on Make with jkridner about the new Arduino TRE:

 

Talking to Jason Kridner About the new Arduino Tre

http://makezine.com/2013/10/03/talking-to-jason-kridner-about-the-new-arduino-tre/

"The focus is on simplicity. It isn’t just a BeagleBone split in the middle [...] If you know Linux, you’ll be able to come in that way. If you know Arduino, you’ll be able to use the AVR as the system master."

image

 

I'm not sure exactly what this all means, but it is exciting to have more SBC options and the Arduino brand will be an interesting influence on the SBC market.  I do know that I didn't need any coffee to feel wide awake this morning image

 

What is the feeling of our SBC discussion group here?

 

cheers,

drew

  • Sign in to reply
  • Cancel

Top Replies

  • morgaine
    morgaine over 11 years ago +1
    I like the term "bare metal microcontroller" to denote the processors on Arduino AVR and ARM Cortex-M class boards. These contrast strongly with those boards which are based on "application processors…
  • johnbeetem
    johnbeetem over 11 years ago +1
    I have no problem with this use of Single-Board Computer. The earliest SBCs had very simple processors like Intel 8080 or MOS Technology 6502, which didn't have MMUs and didn't address much memory. When…
  • morgaine
    morgaine over 11 years ago +1
    Drew, leaving aside the puzzling situation with Galileo and how it's managing to run its peculiar version of Yocto, the Arduino TRE looks very good indeed! In fact, over the last year and a half, haven…
  • morgaine
    morgaine over 11 years ago in reply to Former Member

    Walt Gribben has just confirmed the existence of an MMU in our sister thread:

     

    Walt Gribben wrote:

     

    theres one big piece of Quark that has been overlooked.  Having worked with Intel architectures for some time now, I'm familiar with the way they write their manuals.  And what isn't there is always more important that what is!

    Actually, Quark does have an MMU, its just not described in the Datasheet.

    The MMU is part of the CPU Core, which is described the Core Hardware Reference Manual and the Core Developer's Manual.   The Quark CPU Core is a complete IA32 implementation,  a little slow but with a few extras for the embedded micro market.  Check out page 20 of the hardware ref, it shows a block diagram of the core.  The three manuals together make up the Quark documentation.  You almost need a monitor for the datasheet, the hardware ref manual printed out and a second monitor for the developers manual to make sense of it all. image

     

    This changes everything, so:

     

    1. Quark does after all have an MMU.
    2. Having an MMU, it is validly called an applications processor.
    3. Having an MMU, it can run full operating systems like Linux with full virtual memory abstraction.
    4. Having an MMU, it does not need to run uClinux (which is for MMU-less microcontrollers).

     

    Phew! image  And once again, thanks Walt!

     

    I'm very glad to hear that!  Things were looking pretty ugly there for a while ...

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • morgaine
    morgaine over 11 years ago in reply to johnbeetem

    And to complete the picture and my (greatly relieved) total reversal, John, there won't be any need for bare-metal programming on the Galileo.  We can happily write bug-ridden code in the cosy abstraction of MMU-protected processes.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • morgaine
    morgaine over 11 years ago in reply to fustini

    Drew Fustini wrote:

     

    I will add to my personal defination that SBC must have MMU image

    You'll be relieved to hear (as I was) that the Quark has one after all, just cloaked in stealth marketing. image

     

    The only remaining worry is the harsh and totally non-open licensing on Intel's software downloads.  That however must be a mistake, because they're not allowed to impose such additional restrictions on top of GPL-licensed software.  It'll probably be removed or changed very rapidly once it's pointed out to them.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • morgaine
    morgaine over 11 years ago in reply to Former Member

    coder27 wrote:

     

    This sounds like it is doing at least some sort of MMU function in translating virtual addresses

    to physical addresses.

     

    Yep, it has enough to run a full O/S.  What's more, in the Hardware Reference Manual, Intel explains:

     

    • On-Chip Memory Management Unit — Address management and memory space
       protection mechanisms maintain the integrity of memory in a multi-tasking and
       virtual memory environment. The memory management unit supports both
       segmentation and paging.

    and

    The memory management unit (MMU) consists of a segmentation unit and a paging
    unit which perform address generation. The segmentation unit translates logical
    addresses and passes them to the paging and cache units on a 32-bit linear address
    bus. Segmentation allows management of the logical address space by providing easy
    relocation of data and code and efficient sharing of global resources.


    The paging mechanism operates beneath segmentation and is transparent to the
    segmentation process. The paging unit translates linear addresses into physical
    addresses, which are passed to the cache on a 20-bit bus. Paging is optional and can be
    disabled by system software. To implement a virtual memory system, the IntelRegistered Quark
    Core supports full restartability for all page and segment faults.


    Memory is organized into one or more variable length segments, each up to four
    Gbytes (232 bytes). A segment can have attributes associated with it that include its
    location, size, type (i.e., stack, code, or data), and protection characteristics. Each task
    on an IntelRegistered Quark Core can have a maximum of 16,381 segments and each are up to
    four Gbytes in size. Thus, each task has a maximum of 64 terabytes (trillion bytes) of
    virtual memory.


    The segmentation unit provides four levels of protection for isolating and protecting
    applications and the operating system from each other. The hardware-enforced
    protection allows the design of systems with a high degree of software integrity.
    The IntelRegistered Quark Core has four modes of operation: Real Address Mode (Real Mode),
    Protected Mode, Virtual Mode (within Protected Mode), and System Management Mode
    (SMM). Real Mode is required primarily to set up the IntelRegistered Quark Core for Protected
    Mode operation.


    Protected Mode provides access to the sophisticated memory management paging and
    privilege capabilities of the processor. Within Protected Mode, software can perform a
    task switch to enter into tasks designated as Virtual 8086 Mode tasks.


    System Management Mode (SMM) provides system designers with a means of adding
    new software-controlled features to their computer products that always operate
    transparently to the operating system (OS) and software applications. SMM is intended
    for use only by system firmware, not by applications software or general purpose
    systems software.

     

    In other words, that's a complete MMU, but bizarrely wasn't even hinted at in the Quark datasheet.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • morgaine
    morgaine over 11 years ago

    We were asking just this week for SBCs with dual NICs for comms applications like firewall/routers.  Well the Galileo has a mini-PCIe slot, so just add a mini PCI-e external NIC like this Syba Mini-PCIe Gigabit Ethernet Card and we have a totally OSHW comms appliance.

     

    nuttcp is ready and waiting. image

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • jeremybarker
    jeremybarker over 11 years ago in reply to morgaine

    The Quark datasheet is singularly unhelpful as to the processor's capabilities because only 1 page giving a 10 bullet-point list is devoted to the processor core. The datasheet is far more concerned with the integrated peripheral devices and other matters unique to this SoC. However you can infer that the processor has paging because the list says that Execute-Disable Page Protecton is supported. Also, as it says it's a Pentium and as all Pentiums have protected mode, it's reasonable to infer that it has the same memory management as any other modern x86 processor.

     

    If you read the Developer's Manual or Hardware Reference Manual it becomes crystal clear that the processor core is a full-feature x86 processor containing all the protected mode / paging features you would expect (and which have been in all x86 processors since the 386).

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • morgaine
    morgaine over 11 years ago in reply to jeremybarker

    Jeremy Barker wrote:

     

    If you read the Developer's Manual or Hardware Reference Manual it becomes crystal clear that the processor core is a full-feature x86 processor containing all the protected mode / paging features you would expect (and which have been in all x86 processors since the 386).

     

    And if you read the whole thread then you'd realize that the Developer's Manual and Hardware Reference Manual didn't come to our attention until Walt Gribben's informative post.

     

    Those two documents aren't linked from Intel's Galileo site under any of its submenus (particularly not in the documents section which lists the Quark SoC Datasheet which would have been the sensible place for them), nor in a very large number of other Intel, Galileo, Arduino and embedded industry sites that describe the board.  This is why Intel's numerous references to microcontroller and to wearables and IoT suggested very strongly that this was a cut-down device with a Pentium inner core but excluding all memory management, and hence was a microcontroller with the x86 instruction set.  That would appeal to many people after all.  The fact that the Quark SoC Datasheet even described a memory region protection feature quite similar to that in Cortex-M3 microcontrollers reinforced that belief.  Not even the Galileo FAQ suggested otherwise --- indeed, it didn't even mention known Linux distros that could be run on the board, which made it possible that uClinux was the only option owing to lack of MMU.  Nothing at all explicitly pointed to an MMU being present.

     

    Armed with your knowledge of the Developer's Manual and Hardware Reference Manual, it's easy to see that this isn't so, but it didn't look that way without that information.  Hindsight is great.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Problemchild
    Problemchild over 11 years ago

    If the SBC becomes significantly more expensive  it has exceeded the value of the Arduino.

    Simply you will want more, also the whole benefit of the Arduino was the Comunity and the fact you can get "drivers" for specific wierd interface.

    are we going to get those with this new widget ?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Problemchild
    Problemchild over 11 years ago in reply to morgaine

    Seems to be very much like those cust down 486 style SOCs that you used to see in routers not  unlike the Nat Semi/AMD Geode.

    So really that cpu isn't too fantastic one way or another ...Much better than an AVR thing though image

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Problemchild
    Problemchild over 11 years ago in reply to morgaine

    Morgane if the only linux this SBC is good for is uC linux maybe we'll have problems getting conventional drivers working for devices such as that GigE PCI-e card.

    This SBC market as certainly become a crowded and complicated place.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
<>
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube