CuBox hardware specification
Overview
Solid-Run's CuBox can be said to be a low-power desktop class ARM based computer, using the Marvell (88AP510) system-on-chip (SoC) with an ARM v6/v7-compliant superscalar processor core, 2D/3D hardware graphics processing unit, video decoding acceleration hardware and a broad range of uses.
Being just about 2"3 in size, the platform can stream and decode 1080p content, use desktop class interfaces such as KDE or GNOME under Linux, all in less than 3 Watt and less than 1 Watt in standby.
Solid-Run currently supports Linux 2.6.x Kernels or later, and Android 2.2.x Kernels.
Marvell 88AP510 SoC has public specifications and can be found here
Detailed hardware specification
Physical Dimensions
- Approximately: 55mm x 55mm x 42mm (2.17 x 2.17 x 1.65 inches)
- Weight: 91 metric grams (0.2 lb, or 3.2 oz)
Core SoC (System on Chip) and integrated co-processor cores
Marvell Armada 510 (88AP510) ARMv6/ARMv7 SoC in a 55nm BGA process package
- ARM v6/v7-compliant processor core (Marvell's Sheeva PJ4 architecture, superscalar, dual issue CPU processor) clocked at 800MHz
- VFPv3 - Vector Floating Point (VFP) v3 - Single precision and double precision FPU (Floating Point Unit) co-processor
- WMMX / WMMX2 intruction set - Wireless MMX and Wireless MMX2 support (but no NEON support) SIMD extension
- 32KB L1 I-Cache
- 32KB L1 D-Cache
- 512KB L2 cache
- Vivante GC600 2D and 3D capable hardware accelerated graphic engine supporting up to 16MT/sec and 300 MP/sec to WUXGA 24 bpp resolution over these APIs:
- OpenGL ES 2.0 (with full backwards compatibility with OpenGL ES 1.1)
- OpenVG 1.1
- X11 / EXA
- DirectFB 1.4
- EGL 1.4
- 1GB 32-bit DDR3 RAM running at 800MHz (4 Hynix devices H5TQ2G63BFR-H9C [1])
- vMeta HD Video Decoder hardware engine is running at 500MHz and is capable of Full HD 1080p at 30fps decoding H.264, VC-1 and MPEG-2, etc. w
- TrustZone cryptographic engine and security accelerator co-processor supporting AES, DES, 3DES, SHA-1, and MD5
- Two XOR/DMA Engines and PDMA
- PMU (Power Management Unit) engine
- Integrated Real Time Clock (RTC)
External input/output ports, buttons, and interfaces
- HDMI port supporting max 1080p at 50/60 Hz for TV, and max 1600x1200 at 60 Hz for PC (UXGA60)
- HDMI 1.4a
- DVI 1.0 backward compatible
- EIA/CEA-861B
- CEC (HDMI 1.4a)
- HDCP 1.4 (TDA19988AHN and TDA19988AET only)
- HA Audio (4 x I2S-bus or one S/PDIF; audio data rate up to 192 kHz)
- Two High Speed USB Host ports (USB 2.0) supports both host and device modes
- One 10Mbps, 100Mbps, and 1000Mbps Ethernet MAC port ("Gigabit Ethernet") supports Jumbo frame up to 9700 bytes
- One S/PDIF (SPDIF transmitter optical audio) port
- One eSATA I/II port supports port multiplier with integrated SATA II PHY (SATA AHCI 2.0 support at 3Gb/sec)
- Standard IrDA Infra-red receiver for 38KHz based IR controllers (LIRC software support)
- MicroSD SDXC capable slot (supporting up to 64GB microSDXC NAND flash memory) comes with a 2GB card
- MicroUSB USB Device / Console for flashing (so no JTAG required making it "unbrickable" for developers)
- Recovery Button
- LED light indicator when powered-on
- Input power 5mm/2.1mm DC Jack (requires a 5V/2A power supply that is included)
HDMI transmitter by NXP Semiconductors Caen
The CuBox (Marvell Armada 510 - 88AP510 SoC) hardware has integrated TDA998x (TDA19988 or TDA19989) HDMI transmitter by NXP Semiconductors Caen to support HDMI output and CEC (Consumer Electronics Control).
- Sample code with CEC module: https://github.com/rabeeh/linux-2.6.32.9/tree/master/drivers/video/display/nxp
- CEC documentation for developers: http://www.nxp.com/documents/application_note/AN10920.pdf
- Full specifications: http://www.nxp.com/products/audio_video/hdmi/hdmi_transmitters/TDA19988BET.html
- Product overview: http://www.nxp.com/documents/leaflet/75017116.pdf
HDMI transmitter (from NXP) resolution options:
- 4:3 (VGA/XGA 640 to 1600, NOT 'PAL' 768x576)
- 16:9 (HD 720, HD 1080)
- 5:4(..1280x1024), 5:3(1280x768) and a few others..
- (NO 16:10/8:5, 17:9, 3:2 ie. 1440x900 1680x1050.. ratio resolutions)
Display Controller:
- TFT panel support
- Video Graphics Array (VGA) out support with integrated DACs
- HD 1080p maximum resolution
- Parallel interface up to 24-bit RGB
- YCbCr to RGB conversion
- YCbCr 4:4:4, 4:2:2, 4:2:0 input support.
- Color management: brightness, contrast, hue
- Up-scaling and down-scaling support
- Linear horizontal and vertical up-scaling
- Horizontal and vertical mirroring options
- 90 or 270 degree full screen rotation
- Three overlay layers—video, graphics, and cursor
- NOTE: Supports hardware cursor with up to 24-bpp RGB and alpha blending.
- Color palette—three 256 entries (2, 4, 8 bpp) for video and graphics overlay channels
- Alpha blending support for color panels
- Dedicated DMA for data movement between memory and port
- Dual display with independent frame buffers
- SPI controller supports display control
- PWM control
Detailed list of supported resolutions
- 640x350p 85Hz
- 640x400p 85Hz 3:2
- 640x480p 60Hz 72Hz 75Hz 85Hz 4:3
- 720x240p 60Hz
- 720x288p 50Hz
- 720x400p 85Hz
- 720x480i 60Hz 3:2
- 720x480p 60Hz 3:2
- 720x576i 50Hz 5:4
- 720x576p 50Hz 5:4
- 800x600p 60Hz 72Hz 75Hz 85Hz 4:3
- 1024x768i 87Hz 4:3
- 1024x768p 60Hz 70Hz 75Hz 85Hz 4:3
- 1024x864p 75Hz
- 1152x864p 85Hz 4:3
- 1152x960p 60Hz
- 1280x720p 24Hz 25Hz 30Hz 50Hz 60Hz 16:9
- 1280x768p 60Hz 5:3
- 1280x960p 85Hz 4:3
- 1280x1024p 60Hz 75Hz 85Hz 5:4
- 1360x768p 60Hz (16:9)
- 1400x1050p 60Hz 4:3
- 1440x480p 60Hz
- 1440x576p 50Hz
- 1600x1200p 60Hz 4:3
- 1920x1080i 50Hz 60Hz 16:9
- 1920x1080p 24Hz 25Hz 30Hz 50Hz 60Hz 16:9
- 2880x480p 60Hz
- 2880x576p 50Hz
Vivante GC600 graphic engine
Vivante GC600 OpenGL ES 2.0 GPU (Graphics Processing Unit) running at 250MHz (500MHz in shader processing), scalable up to 285 MHz (571 MHz shader) 32-bit AHB interface for register access with 64-bit AXI interface to access external memory by graphics client, and virtual memory support. Supported Screen Resolutions:
- QVGA 320x240
- VGA 640x480
- XGA 1024x768 1024x768
- HD 720p 1280x720
- HD 1080p 1920x1080
2D and 3D GPU features
- Fully featured 3D pipeline
- Unified vertex and pixel/ fragment shader
- Full support for OpenGL ES 2.0 shading language
- Transform, lighting and fixed function texture blending features of OpenGL ES 1.1
- Complete floating point pipeline that generates high quality images
- High quality anti-aliasing with one quarter the memory and processing
- High Dynamic Range (HDR) texture operation; support for eight simultaneous textures
- Point-sample, bi-linear, tri-linear and cubic textures
- Fully featured 2D pipeline
- Bit, stretch, and pattern BLITs
- Fast clear
- Rectangle fill and line primitives
- Mono-expansion for text rendering
- Alpha blending
- 90 degree rotation
- Maximum frame size
- Performance
- 10 million polygons per second
- 200 million pixels per second in depth only mode
- 100 million pixels per second in texture/ color and depth mode
- API support:
- OpenGL ES 2.0
- OpenGL ES 1.1
- OpenVG 1.1
- X11 / EXA
- DirectFB 1.4
- EGL 1.4
- Hardware features
- ScalarMorphic(TM) architecture means less area with no drop in performance
- Ultra-threaded, unified shader maximizes graphics processing speed
- Smallest die area in every GPU class
- Very low power with battery-saving innovations
- Highest graphics performance per sq. mm
- Superior image quality with high-definition detail, MSAA, and high dynamic range
- Depth texturing to enable dynamic shadow generation
- High-definition screen resolutions of HD 1080p and beyond
- Optimized to minimize bandwidth and reduce CPU load
- Simple integration using standard AHB and AMBA AXI bus SoC interconnects
- Unified Shader
- Unified vertex and fragment/pixel shader means no wasted GPU cycle
- Full OpenGL ES 2.0 Shading Language support for unrestricted programmability
- IEEE 32-bit high-precision computing yields more detail, supports long instructions
- Massively parallel multi-threading virtually eliminates graphics pipeline latency
- Fully backward-compatible with all OpenGL ES 1.1 applications
- Texture Mapping
- Texture support includes 2D, Cubic environment, Projective, YUY2, and High Dynamic Range (HDR)
- Point sample, bi-linear, and tri-linear texture filters
- Bump mapping support
- Depth map up to 24-bit
- Compressed texture standards ETC1 and DXT1-DXT5
- Dependent texture operation with high performance
- Supports up to 16 vertex textures and 16 pixel textures simultaneously
- Supports texture size up to 8K x 8K
- Video post-processing and peripherals
- YUV-to-RGB color space conversion
- Color space conversion
- Alpha blending/hardware overlay for up to eight planes/surfaces
- High-quality image and video scaling with 9-tap, 32-phase programmable filter
- Camera preview
- AHB interface
- 256K addressable register space
- 32-bit data bus
- Handles error response for illegal accesses
- Bus speed up to 400MHz in 65LP
- AXI interface
- AMBA AXI protocol-compliant
- 32-bit address bus and 64-bit data bus
- Multiple burst length (8, 16, 32, or 64 bytes)
- High-performance out-of-order / multiple outstanding access
- Supports out-of-order return data from multiple slaves
- Bus speed up to 400MHz in 65LP
- Asynchronous interface to the graphics core
Audio Controller with SPDIF Optical Output Port
- Sony/Philips Digital Interface (S/PDIF)
- Compliant to 60958-1, 60958-3, and IEC61937 specifications
- S/PDIF playback support
- Sample rates of 44.1/48/96 kHz
- 16/20/24-bit depths
vMeta HD Video Decoder hardware engine
Marvell vMeta HD Video Decoder hardware engine running at 500MHz for decoding H.264, VC-1 and MPEG-2, etc. and vMeta engine also support JPEG/PNG/GIF/TIFF/BMP/Animated GIF decoding acceleration up to 50MP/s. A number of containers are also specified as being supported officially, but that is usually a matter of firmware.
The Video Decode (VMeta) unit decodes the compressed Video Elementary Stream (VES) to produce the reconstructed video frames (in YUV422 format) for display or further processing. The input VES and the output frames are stored in DRAM.
The typical VMeta™ operation sequence can be summarized as:
- Demux extracts VES to the buffer inside DRAM.
- CPU sets the DMA to start prefetching VES.
- CPU invokes the vScope block for upper-level stream processing.
- CPU initializes the rest of VMeta, download programs, and initializes VMeta for video decoding.
- vScope performs the lower-level stream processing to generate messages (queued in HBO) for the pixel processing block.
- vCache fetches the reference pixels for the pCube.
- pCube reconstructs the video frames and outputs to DRAM.
Hardware Audio and Video Decoding Codec Formats supported
- Audio formats supported currently:
- MPEG1, MPEG2
- MP3
- WAV
- WMA V9
- LPCM
- AAC
- HE-AAC
- Dolby Digital, Dolby Digital Plus, TrueHD
- DTS Core only
- DTS HD HD high Resolution Audio
- DTS Master Audio
- DTS LBR, DTS Encoder
- Dolby Digital Encoder
- MAT encoder
- Prologic II
- Audio formats to be supported in the future via firmware upgrade:
- Dolby virtual surround/headphone, Dolby volume
- SRS
- Vorbis, FLAC, MIDI
- Video formats supported currently:
- MPEG1, MPEG2
- MPEG4 SP
- MPEG4 ASP (GMC 0,1p)
- VC1 AP
- H.264 up to 4.1
- H.264 level 5 (max bitrate 50Mbps)
- H.264 MVC
- JPEG baseline
- DiVX3.11
- WMA V9
- VP6
- RMVB
- Sorenson H.263
- PNG
- Video formats to be supported in the future via firmware upgrade:
- DV
- JPEG2000
Cryptographic Engines and Security Accelerator (CESA)
The 88AP510 integrates hardware-based cryptographic engines and a security accelerator (CESA). The cryptographic engines and the security accelerator reduce CPU packet processing overhead by performing time-consuming cryptographic operations such as Advanced Encryption Standard (AES), Data Encryption Standard (DES), and Triple Data Encryption Standard (3DES) encryption, as well as Message Digest 5 (MD5) and Secure Hash Algorithm 1 (SHA1) authentication. There are four cryptographic engines that operate independently, one at a time, (one DES encryption/decryption engine, one AES128 encryption engine, one AES128 decryption engine, and one Authentication MD5/SHA engine).
- Hardware implementation of encryption and authentication engines to boost packet processing speed
- Implements AES, DES, and 3DES encryption algorithms
- Implements SHA1 and MD5 authentication algorithms
- Dedicated DMA for data movement between either internal SRAM memory or DDR memory and the engines
XOR DMA Engines
- Two XOR/DMA Engines for a total of four high performance DMA channels
- Supports XOR operation for up to eight source blocks
- Useful for application acceleration:
- RAID XOR offload
- Memcpy / memset acceleration
- Copy to/from user space
- Supports iSCSI CRC-32 calculation

