As I checked out the latest email on the ARM Linux kernel mailing list, one thread somehow caught my attention: “[PATCH v2 00/10] ARM: NUC900: Add NUC970 SoC support” with the following introduction:
This patch series added Nuvoton new SoC NUC970 development board support, this nuc970 belongs to nuc900 series, but many features are not compatible with old nuc900 SoCs like nuc910, nuc920.
I could not quite remember ever having heard about Nuvoton, and it turns out it’s a fairly recent Taiwan company, founded in 2008 as a spinoff and fully own subsidiary of the better known Winbond Electronics. Their website shows ARM Cortex M0/M4 & 8051 micro-controllers, as well as ARM7 and ARM9 micro-processors, and some other application specific audio and video SoCs. But when I checked for MUC970 I could not find anything on their website, even in NUC900 series page.
But Google came to the rescue and I found NUC970 datasheet and hardware development guide providing more insights into the processor.
Nuvoton NUC970 key features and specifications:
- Core – ARM ARM926EJ-STM processor core @ up to 300 MHz with 16 KB I-cache, 16 KB D-cache, MMU and JTAG interface
- Embedded SRAM and ROM – Supports 56KB SRAM, 16KB Internal Boot ROM (IBR)
- Memory & storage I/F
- External Bus Interface (EBI) for 8/19-bit SRAM and external I/O devices
- DDR SDRAM Controller supporting 16-bit DDR2 up to 150 MHz
- Flash Memory Interface – 8-bit NAND flash, eMMC flash
- Booting modes – USB, eMMC, NAND Flash, SPI Flash
- Ethernet MAC Controller – Up to 2x 10/100M Ethernet MAC controllers with Wake-on-LAN, DMA support
- USB 2.0 Controller – 1x USB 2.0 High-Speed (HS) device/host, 1x USB 2.0 HS host
- I2S Controller – I2S and PCM interfaces
- LCD display controller – 8/9/16/18/24-bit data to connect with 80/68 series MPU type LCD module up to 1024×768 resolution
- Capture (CMOS Sensor Interface) – CCIR601 & CCIR656 interfaces up to 3 megapixels
- 2D Graphic Engine
- JPEG Codec
- Crypto Engine with PRNG, 64-bit, 128-bit, 192-bit and 256-bit key generation, DES, 3DES, AES, SHA/HMAC
- MTP supporting 256-bit programmable memory for key of Crypto functionality
- GDMA (General DMA) – 2x channels GDMA for memory-to-memory data transfer without CPU intervention
- Up to 11x UART
- CAN protocol version 2.0 part A and B up to 1Mbit/s
- Up to 2x SPI controllers, up to 2x I2C controllers
- Up to 8-ch 12-bit SAR ADC with 1M/200K SPS
- KPI – Matrix keyboard interface
- Smart Card Host (SC) compliant with ISO-7816-3 (up to 2x ports)
- Up to 2x 16-bit PWM generators providing 4x PWM outputs
- 5x sets of 32-bit timers with 24-bit up-timer and one 8-bit pre-scale counter
- 4x sets of 32-bit “Enhanced” timers with 24-bit up-timer and one 8-bit pre-scale counter with external pin capture
- Advanced Interrupt Controller – Support 58 interrupt sources, including 8 external interrupt sources
- Watchdog Timer
- Windowed-Watchdog Timer
- Real Time Clock (RTC)
- Power Management
- Power Down, Deep Standby, CPU Standby and Normal Operating modes
- Operating Voltage – 1.2V for core logic, 1.8V for DDR2 SDRAM I/O, 3.3V for normal I/O
- Operating Temperature – -40°C~85°C
- Packages – LQFP 216-pin, LQFP 128-pin
Nuvoton NUC970 is a family of general purpose micro-controllers, with exact part numbers starting with NUC972, NUC973, NUC976, and NUC977. Beside mainline support, which may or may not be complete at this stage, Nuvoton also released a Linux 3.10 + u-boot BSP on Github. Sadly I was not able to find any documentation or pictures about the development board itself.
Anyway, it was still interesting to find out about this company, their micro-controllers and micro-processors, and they might be an option if you have commercial projects in mind requiring this type of platform.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.