Archive

Posts Tagged ‘mcu’

OnChip Open-V Open Source 32-bit RISC-V Processor Launched on CrowdSupply

November 23rd, 2016 7 comments

Open source hardware gives mostly full control over software and hardware, but there are different levels of openess, with some companies wrongly claiming their product to be open source hardware – with a nice accompanying logo – once they dump some source code somewhere and publish the PDF schematics, while others are doing it right with the release of schematics and PCB layout in source format, as well as software and proper documentation. However even for the latter group, the actual chips are closed source bought directly from silicon vendors or their distributors. So the good news is that you now have the opportunity to bring the meaning of open source hardware to a whole new level thanks to OnChip Open-V 32-bit  processor that is open source, and getting launched on Crowd Supply crowdfunding platform.

open-vOnChip Open-V is based on RISC-V (pronounced “risk-five”), comes with peripherals, and should be competitive against ARM Cortex M0 based micro-controllers. The MCU would also be the first RISC-V chip available on the market.

Open-V chip specifications:

  • Processor – RISC-V ISA version 2.1 @ up to 160 MHz
  • Memory – 8 KB SRAM
  • Clock – 32 KHz – 160 MHz; Two PLLs, user-tunable with muxers and frequency dividers
  • Analog Signals
    • 2x 10-bit ADC channels, each running at up to 10 MS/s
    • 2x 12-bit DAC channels
  • Timers
    • 1x general-purpose 16-bit timer
    • 1x 16-bit watch dog timer (WDT)
  • General Purpose Input/Ouput
    • 16x programmable GPIO pins
    • 2x external interrupts
  • Interfaces
    • SDIO port for example to add a micro SD slot
    • 2x SPI ports, I2C, UART
  • Programming and Testing
    • Built-in debug module for use with gdb and JTAG
    • Programmable PRBS-31/15/7 generator and checker for interconnect testing
  • 1.2 V operation
  • Package – QFN-32
Open-V vs

Open-V vs STM32L0 vs PIC32MX vs SAMD21 vs EFM32Z vs LPC812M vs MSP430F vs  ATMega-328p

You can find the complete OnChip Open-V design, including the RTL (register-transfer level) files for the CPU and peripherals, as well as the development and testing tools in Github, all released under the MIT license. The source can be used to teach silicon designs, debug and correct errors in the chip without asking the vendor, and if you plan to roll your own cut reducing costs by cutting out licensing fees.

Development Board for Open-V RISC-V MCU

Development Board for Open-V RISC-V MCU

Now most people would not be able to do much with just the MCU only, so the company will also develop an Open-V development board with the following specifications:

  • MCU – 32-pin QFN Open-V microcontroller
  • Storage – 32 KB EEPROM, microSD receptacle
  • USB – 1x USB 2.0 controller + micro USB port for power and data
  • Expansion – Breadboard-compatible breakout header pins
  • Debugging – JTAG connector
  • Power – 1.2 V and 3.3 V voltage regulators
  • Dimensions: 55 mm x 30 mm

The board will be programmed with the Arduino IDE, so it should be not harder than programming any Arduino boards, or any platforms using the popular IDE.

However, getting silicon to market is an expensive endeavor, and the only way to bring prices down to to manufacture millions of units. OnChip is starting small with a first target of 70,000 chips, which still converts to a $480,000 funding target. There are several ways to help reach that goal starting with a $49 “Chip Pioneer” reward to get on of the first chips to be manufactured, but the most popular reward is likely to be Open-V development board going for $99. Shipping is free to the US and $7 to the rest of the world. You’ll also have to patient, quite understandably due to the task at hand,  as rewards are only expected to ship in April and May 2018, unless you pledge for one of the most expensive rewards giving access to early chips in May 2017.

Thanks to Nanik the tip.

ARM Introduces Secure Cortex-M23 and Cortex-M33 ARMv8-M MCU Cores, and Bluetooth 5 Cordio Radio IP for IoT Applications

October 26th, 2016 3 comments

ARM TechCon 2016 is now taking place in Santa Clara, California, USA, as ARM has made three announcements for the Internet of Things, the focus of SoftBank going forward, with two ARM Cortex-M ARMv8-M cores integrating ARM TrustZone technology, namely Cortex-M23 low power small footprint core, and Cortex-M33 core with processing power similar to Cortex-M3/M4 cores, as well as Cordio Radio IP for Bluetooth 5 and 802.15.4 connectivity.

cortex-m33-m23-vs-cortex-m3-m0

ARM Cortex-M23

Click to Enlarge

Click to Enlarge

ARM Cortex-M23, based on the ARMv8-M baseline architecture, is the smallest and most energy efficient ARM processor with TrustZone security technology,and targets embedded applications requiring both a small footprint, low power, and security. Its power consumption is low enough to be used in batteryless, energy harvesting IoT nodes, and is roughly a third of Cortex-M33 processor size, and offers more than twice its energy efficiency.

Cortex-M23 is a two-stage pipelined processor, software compatible with other processors in the Cortex-M family.

You’ll find more information on ARM Cortex-M23 product page, and related blog post.

ARM Cortex-M33

Click to Enlarge

Click to Enlarge

ARM Cortex-M33, also based on ARMv8-M architecture with Trustzone technology, is the most configurable of all Cortex-M processors, includes FPU, DSP, a co-processor interface, a Memory protection unit (MPU) for task isolation, and ARM claims it “delivers an optimal balance between performance, power, security and productivity”.

The Cortex-M33 processor has an in-order 3-stage pipeline, which reduces system power consumption, and most instructions complete in two stages, while more complex instructions require three. The core also has two AMBA5 AHB5 interfaces: C-AHB and S-AHB, which are symmetric in nature and offer identical performance of instruction and data fetches.

You can visit the products page, and ARM blog post for further details.

ARM Cordio Radio IP

arm-cordio-radio

ARM has also introduced Cordio IP which offers Bluetooth 5 or 802.15.4’s ZigBee or Thread connectivity using ARM RF or 3rd party front-end. The IP supports TSMC 40nm LP/ULP, TSMC 55nm LP/ULP and UMC 55nm ULP manufacturing processes, and three solutions are available with Cordio-B50 with Bluetooth 5 only, Cordio-E154 with 802.15.4 only, and Cordio-C50 with both Bt5 and 802.15.4.

More details can be found on that ARM community blog post.

NXP Unveils MCUXpresso Development Tools for LPC and Kinetis Microcontrollers

October 25th, 2016 No comments

After NXP bought Freescale, you had development tools for Freescale Kinetis MCUs such as Design Studio or Kenetis SDK, and others such as LPCXpresso for NXP LPC microcontrollers. The company has worked to unifying software and tools support between its ARM Cortex-M MCU families, and has now announced MCUXPresso software and tools for both NXP Kinetis and LPC MCUs.

Click to Enlarge

Click to Enlarge

MCUXpresso unifies thousands of Kinetis and LPC microcontrollers under a set of compatible tools including

  • MCUXpresso SDK – Open-source software MISRA-compliant development kit (SDK) with peripherals drivers, wireless & wired connectivity stacks, middleware, real-time OS, getting started guides, API documentation, and application examples.
  • MCUXpresso IDE – Integrated development environment (IDE) for editing, compiling and debugging. It also integrates MCU-specific debugging views, code trace and profiling, multicore debugging, etc… Both free and professional edition of the IDE will be available, and LPCXpressor and previously Freescale Freedom & Tower platforms will be supported.
  • MCUXpresso config tools:
    • An SDK Builder enabling custom-built SDKs for specific MCUs or evaluation boards.
    • A graphical pins tool to assist with routing of internal signals to external pins, and generates ANSI-C source for the MCUXpresso SDK environment.
    • A clocks tool with a graphical representation of the MCU clock tree system, interactive user controls, and assistance with system fine-tuning.
    • A power estimation tool to allow application modeling and assessment of power consumption under user-defined parameters.
MCUXpresso SDK Architecture

MCUXpresso SDK Architecture

The MCUXpresso SDK and config tools will be available around the middle of next month, and beside built-in support for the MCUXpresso IDE, the SDK can also work with IAR Embedded Workbench, ARM Keil  MDK, Atollic TrueSTUDIO, SOMNIUM  DRT, and others. That’s not a bad thing since MCUXpresso IDE will only be released in March 2017.

You’ll find many more details, and download links for the SDK on MCUXpresso page.

What’s the Cheapest MCU? My Try: Holtek HT48R002 8-bit MCU Selling for $0.085

August 3rd, 2016 15 comments

Somebody asked what was the cheapest MCU available on Google+, so I thought it would be fun to find the cheapest one regardless of specifications. It turns out there an older thread with this very question on StackExchange, and at the time (2011) Microchip PIC10F200 8-bit MCU with 256B RAM in SOP-23 package was the cheapest one among the answer, and somehow the price has not changed as it’s still $0.32 per unit for 1k orders.

Holtek_HT48R002Not bad price, but back in the days when I wrote on CD and DVD players, we had some price pressure from customers, so we looked for a cheaper a microcontroller, and ended up using Holtek because of the competitive pricing. We suffered a bit during development due to incomplete documentation, but eventually did the job. Anyway, I went to Holtek website found a “cost effective I/O MCU” category, and HT48R002 appears to be the lower end. I checked the price on 1688.com, and several sellers offer it for as low as 0.56 RMB for 1k orders, which converts to about $0.085 per MCU.

Let’s look what we get for that outrageous price:

  • 8-bit RISC MCU @ 8MHz
  • 1K x 14-bit ROM (OTP)
  • 64 x 8-bit RAM data memory
  • 6x I/O including 1x external interrupt pin, and 1x 8-bit timer
  • Two oscillators –  Internal high speed RC: HIRC; Internal low speed RC: LIRC
  • Low voltage reset function
  • Operating Voltage – 2.3 to 5.5V
  • Package – 8-pin DIP/SOP

HT48R002_Block_Diagram

e-ICE + Adapter Board

e-ICE + Adapter Board

Since this MCU has an OTP (One Time Programming) memory, you’d need an ICE (In-Circuit Emulator) to develop for the micro-controller in assembly, and once you’ve debugged your code, which should not be too complex considering the available RAM and storage, you’d have the factory burn the firmware to the device before or during mass-production. More details including the instruction set can be found in the datasheet.

Do you have other candidates to claim the “cheapest MCU” crown?

Categories: Hardware Tags: holtek, mcu

Samsung JerryScript is a Lightweight Open Source JavaScript Engine for the Internet of Things

August 2nd, 2016 6 comments

In the old days, micro-controller programming was all done in assembly or C, but in recent years higher level languages, included interpreted ones such as Python and JavaScript, have made their ways into MCUs with projects such as MicroPython or Espruino (JS) often running on STMicro STM32 ARM Cortex M micro-controllers, but also other platforms such as ESP8266.

JerryScriptAs I browsed through the Embedded Linux Conference Europe 2016 schedule, I discovered that Samsung worked on it own implementation of a JavaScript engine for the Internet of Things: JerryScript. It is a full implementation of ECMAScript 5.1 standard written in C that can run on micro-controllers with less than 64KB RAM, and less than 200KB storage (160KB footprint with ARM Thumb-2 compilation).

JerryScript is comprised of two main components: Parser and Virtual Machine (VM), with the parser performing translation of input ECMAScript application into byte-code than is then executed by the Virtual Machine that performs interpretation.

 

JerryScript High Level Design

JerryScript High Level Design

Although JerryScript is designed for MCUs, and is said to be running on hundreds of thousands of smartwatches, you can easily build it and try in any machine running Linux:

You can also compile the code for full, compact or minimal implementation, use the C Api to integrate JavaScript support into your program, etc… Many more details can be found on JerryScript website and Github repository. JerryScript is also used in IoT.js framework for the Internet of Things that currently runs on Linux and NuttX RTOS platforms, as well as STM32F4-Discovery + “BB” (Beaglebone Black?) and Raspberry Pi 2, and will soon be ported to Samsung Artik 1 (MIPS), STM32F429-Discovery, STM32F411-Nucleo, and Intel Edison boards.

 

SiFive Introduces Freedom U500 and E500 Open Source RISC-V SoCs

July 12th, 2016 5 comments

Open source used to be a software thing, with the hardware design being kept secret for fear of being copied, but companies such as Texas Instruments realized that from a silicon vendor perspective it would make perfect sense to release open source hardware designs with full schematics, Gerber files and SoM, to allow smaller companies and hobbyists, as well as the education market, normally not having the options to go through standard sales channels and the FAE (Field Application Engineer) support, to experiment with the platform and potentially come up with commercial products. That’s exactly what they did with the Beagleboard community, but there’s still an element that’s closed source, albeit documented: the processor itself.

Freedom U500 Block Diagram

Freedom U500 Block Diagram

But this could change soon, as SiFive, a startup founded by the creators of the free and open RISC-V architecture, has announced two open source SoCs with Freedom U500 processor and Freedom E300 micro-controller.

Freedom U500 (Unleashed family) platform key specifications:

  • U5 Coreplex with 1 to 8 U54 cores @ 1.6GHz+
  • RV64GC Architecture (64- bit RISC-V)
  • Multicore, Cache Coherency Support
  • High Speed Peripherals: PCIe 3.0, USB3.0, GbE, DDR3/4
  • TSMC 28nm

The SoC supports Linux, and targets applications such as machine learning, storage, and networking.

Freedom E300 Block Diagram

Freedom E300 Block Diagram

Freedom E300 (Everywhere family) platform key specifications:

  • E3 Coreplex
  • RV32IMC/RV32EMC Architecture
  • On chip Flash, OTP, SRAM
  • TSMC 180nm

Three real-time operating systems, including FreeRTOS, have already been ported to Freedom E300 for embedded micro-controllers, IoT, and wearable markets.

Open source SoCs are made to be customizable to match your applications exact needs, instead of picking on existing SoC matching your requirements but with some uneeded features. SiFive also explains that “storage customers talks about custom instructions for bit manipulation so they can use one not 10 instructions for 10x speed up”. But before you get to Silicon, you’d normally ruin and customize the core on FPGA boards and three boards are currently available for development and evaluation:

  • Freedom U500:
  • Freedom E300 – Digilent Arty FPGA development kit powered by Xilinx XC7A35T-L1CSG324I FPGA, with 256 MB RAM, 16 MB flash, and vairous expension ports. Price: $99
Click to Enlarge

Xilinx Virtex-7 FPGA VC707 devkit – Click to Enlarge

You also have detailed documentation about the SoCs, U5 nd U3 coreplex, the development kits, software and tools, as well as developer forums, on SiFive developers website. You can also directly checkout the code and SDK on github.

RISC-V instructions set is royalty-free, so compared to the entry level $40,000 ARM license for startups using Cortex M0 MCU, it should provide some savings. It does not help with manufacturing costs which should remain the same. but SiFive expects that open source SoC could be manufactured through a “moderate” crowdfunding campaign.  I have not been able to figure out SiFive business model yet, unless they plan on selling their own chips too, and/or provide customization services to customers.

Lots more information can be found on Sifive website.

Via EETimes

Fireduino Arduino Compatible Board Features Rockchip RKnanoD Dual Core Cortex-M3 MCU (Crowdfunding)

June 21st, 2016 5 comments

Rockchip RKNanoD dual core Cortex M3 micro-controller was introduced last year for IoT and audio applications, and the Firefly team, known for their FirePrime or Firefly-RK3288 development boards, has designed an Arduino compatible board based on the MCU with lots of audio ports, Arduino headers, and WiFi connectivity.

FireduinoFireduino specifications:

  • MCU – Rockchip RKnanoD dual core ARM Cortex M3 MCU @ up to 250 MHz (system core) / 500 MHz (calculate core) with respectively 640 KB and 384 KB RAM
  • Storage – 4 or 8MB SPI flash + micro SD slot
  • Audio
    • 24-bit/192 KHz audio codec (built in MCU) with HW accelerator for APE, FLAC, OGG, and MP3 audio decoding
    • 1x 3.5mm analog audio jack
    • 2x 3.5mm LINE In jacks
    • 1x On-board microphone
    • DLNA wireless audio support
  • Connectivity – 802.11 b/g/n WiFi via Ampak AP6181 module
  • Expansion
    • Arduino header with I2C, SPI, ADC, GPIO, PWM, UART
    • LCD interface (Intel 8080 mode) up to 400×400 resolution
  • Debugging – Serial console
  • Misc – HYM8563 RTC chip, 2x user LEDs, 1x power LED, buttons (reset, power and upgrade)
  • Power  Supply – 5 to 12V via 5.5/2.1mm DC jack ; 5V via micro USB port
  • Dimensions – 108.8 x 53.4 mm
  • Weight – 37 grams

The board can be programmed with either the Arduino IDE, or FireBlocks, a fork of Scratch visual programming utility.

Rockchip_RKnanoD_Block_Diagram

Rockchip RKNanoD MCU Block Diagram

The board can be used for robotics thanks to its many I/Os, IoT with WiFi connectivity, or for audio applications with the on-chip audio codec and various audio connectors. Some documentation is already available on the Wiki, and a few potential applications are shown in the promo video below.

The project will be launched in Kickstarter next week (June 27), and the draft page currently shows the board can be had for as low as $15 with an 8GB micro SD card with an “Hello World” pledge, but the normal KS price will be $25, and some rewards with various quantities up to 100 boards are also listed. Delivery is scheduled for September 2016. Since the page is still in draft mode, it’s not possible to check shipping fees for now.

STMicro Unveils Two Low Cost STM32F7 ARM Cortex M7 Development Boards

June 1st, 2016 1 comment

STMicroelectronics introduiced its STM32F7 ARM Cortex M7 micro-controller family in 2014, and they released a $49 STM32F746G discovery board later in 2015. The company has now launched two new low cost development boards with the $23 STM32 Nucleo-144 board based on STM32F767 MCU, and a $79 Discovery Kit powered by STM32F746 MCU with TFT-LCD and MIPI-DSI support.

STM32 Nucleo-144 development board

STM32_Nucleo-144Key feature of NUCLEO-F767ZI board:

  • MCU – STMicro STM32F767ZI ARM Cortex M7 microcontroller @ 216 MHz with FPU, DSP, MMU, 2MB flash, 512 KB SRAM, 16 KB instruction TCM RAM (for critical real-time routines), and 4 KB backup SRAM
  • Connectivity – IEEE-802.3-2002 compliant Ethernet connector
  • USB – 1x micro USB OTG or full speed device
  •  Extension:
    • ST Zio connector including support for Arduino UNO v3 connectivity, and additional signals (A6 to A8, D16 to D72)
    • ST morpho extension pin header footprints for full access to all STM32 I/Os
  • On-board ST-LINK/V2-1 debugger/programmer with SWD connector
  • Misc – 3x user LEDs; USER & RESET push-buttons; 32.768 KHz crystal oscillator
  • Power supply
    • 5V from ST-LINK/V2-1 USB VBUS
    • External power sources: 3.3 V and 7 – 12 V on ST Zio or ST morpho connectors, 5 V on ST morpho connector

The board is ARM mbed enabled, the company provides free software HAL library & software examples, and the development board is  also supported by tools such as IAR, Keil, and GCC-based IDEs.

Hardware and software documentation, as well as links to distributors can be found on the product page.

32F746G-DISCOVERY Board

STM32769I-DISCO

Key features of STM32F769I-DISCO board:

  • MCU – STMicro STM32F769NIH6 ARM Cortex-M7 microcontroller @ 216 MHz with FPU, DSP, MMU,  2MB Flash, 512 KB SRAM, 16 KB instruction TCM RAM (for critical real-time routines), and 4 KB backup SRAM
  • External Memory – 128-Mbit SDRAM
  • External Storage – micro SD slot, 512-Mbit Quad-SPI Flash memory
  • Display – 4″ capacitive touch LCD display with MIPI DSI connector
  • Connectivity – Ethernet connector compliant with IEEE-802.3-2002, WI-FI or Ext-EEP daughterboard connector
  • Audio
    • SAI audio codec
    • 2x audio line jacks, one for input and one for output
    • Stereo speaker outputs
    • 4x ST MEMS microphones on DFSDM inputs
    • 2x S/PDIF RCA input and output connectors
  • USB – 1x micro USB OTG port
  • On-board ST-LINK/V2-1 supporting USB reenumeration capability
  • Expansion – Arduino UNO v3 headers
  • Misc – 2x push buttons (user and reset)
  • Power supply:
    • ST LINK/V2-1
    • USB HS connector
    • 5 V from RJ45 (Power Over Ethernet)
    • 5 V from Arduino or external connector
    • USB charger
    • Power Over Ethernet based on IEEE 802.3af (Powered Device, 48V to 5V, 3W)
    • Power supply output for external applications: 3.3 V or 5 V
Click to Enlarge

Click to Enlarge

The company provide libraries and examples part of the STM32Cube package, and the board is also supported by various integrated development environments: Keil MDK-ARM, IAR EWARM, and GCC-based IDEs (free AC6: SW4STM32, Atollic TrueSTUDIO, …) allowing  development in Linux or Windows operating systems. Like other STMicro boards, STM32F769I-DISCO board is open source hardware, and you can find the hardware design files, as well as software document on the product page, where you’ll also find links to purchase the board.

The company also announced two higher end STM32F7 boards selling for $360: STM32F769I-EVAL & STM32F779I-EVAL.