Apart from a power button and some status LEDs on the front, the CH3SNAS has the following external interfaces:
- a DC power suppy input
This plug is for the supplied external power supply which is rated at 5 Volt by 3 Amps plus 12 Volt by 3 Amps. This 50 Watt rating suggests that the CH3SNAS uses roughly half of the peak power of high-end laptop. Most of this power will be used by the drives (when these are active).
- Gigabit Ethernet port
This is for connecting the NAS to your local-area network. The port supports 10 Mbit/s, 100 Mbit/s and 1000 Mbit/s ethernet. In practice you are unlikely to see speeds above 200 Mbit/s – likely due to performance limitations of the CH3SNAS.
- a single high-speed (480 Mbit/s) USB 2.0 port
This port is only used to drive a printer. Other peripherals are not supported by the standard software. You cannot use the port to connect the CH3SNAS to a PC which acts as host without drastic software changes (a SAN is not a NAS; USB master/slave distinction; Windows does not support access to Ext2 formatted drives).
The central processor in the CH3SNAS is a Marvell Feroceon 1850 processor core inside Marvell’s Feroceon 88F5182 chip “for Networking and Storage”. This core is compatible with the ARM v5TE instruction set architecture (often informally known as ARM9). Although some web sites state that this processor is an XScale processor, this is not inline with Marvell’s documentation and with the table provided by debug tooling specialist Lauterbach. See also Output of /proc/cpuinfo.
In Linux kernel circles, the chip is often referred to as Orion after internal code name. Marvell has been very active recently to get the mainstream Linux kernel to support this architecture.
This 88F5182 features a general-purpose CPU (the Feroceon), memory interfaces, as well as a dual port SATA controller, two USB ports (one is unused), and the digital circuitry (“MAC”) required for Gigabit Ethernet. Thus if we compare the 88F5182 to a hypothetical single-chip NAS, it lacks memory (which is normal), analog circuitry (“PHY”) needed for the Gigabit Ethernet port and it requires the usual handful of smaller support devices. The 88F5182 also provides PCI and PCI Express support, but neither is utilized in the CH3SNAS.
Gigabit Ethernet Tranceiver
The physical layer for Gigabit Ethernet (as well as 10 and 100 Mbit/s Ethernet) is provided by a separate Marvell 88E1111 chip. This converts (differential) serial signals into lower speed parallel data for further processing by the MAC layer in the 88F5182. The serial input/output pins are not directly connected to the RJ45 connector, but pass via a transformer (“magnetics”). This is probably to accomodate for differences in common mode level between two computers, and possibly to provide a degree of electrical safety.
The CH3SNAS has 64 MBytes of volatile Double Data Rate (DDR) DRAM. The DRAM is not upgradeable as both 256 Mbit Nanya NT5DS16M16CS-6K chips are soldered to the main circuit board.
DRAM is needed to run the software (variables, state, stack). It is also used to buffer data for the various servers (e.g. files to hard disks gets buffered in memory and then sent via Serial ATA drives). It also contains a RAMdisk which behaves like a hard disk, but looses its data when the devices is turned off.
Regardless of whether the CH3SNAS is on or off, a real-time clock chip (the ST M41T80) is powered up from a battery and keeps track of time. This is similar to how PCs work and is needed, for example to execute tasks at predetermined times/dates. Unfortunately, the real-time clock cannot wake up the CH3SNAS at some predetermined time. See Tutorial on NTP-Timesynchronization for information about accuracy of the time function available to software and how to improve that by synchronizing across the network.
The real-time clock is powered by a 3V battery. The battery should last a few years. If you ever find that the NAS ever looses track of time when you turn if off or disconnect the power, you should replace this battery.
Comparison to a PC
No display or sound
If we compare this to what people typically expect in a stand-alone computer, there is a no display or option to connect one (compensated by browser-based configurability), there is no sound output or option to add sound (compensated by a few LEDs) and no direct keyboard or mouse input possible (compensated by running a web browser on a “real” computer when you need to configure the CH3SNAS).
There is also no way to add or extend the memory inside the system. This is normally not needed. But can be critical for advanced users because the embedded software inside the system does not (unlike personal computers)use space on the hard drive as extra “virtual” memory. All software is expected to be fully operational – even if no drives are inserted.
During normal operation, the CH3SNAS has 0.5 or even 1 GBytes of virtual memory. This “swap” space on the hard disks (0.5 GBytes/drive) is used to temporarily store stuff that doesn’t fit into DRAM. This is pretty normal for Linux, but is a bit special because under some conditions (e.g. no drives are available yet) the same software needs to be able to run without virtual memory.
A more fundamental difference between a personal computer and an appliance like the CH3SNAS, is that users expect to be able to easily install new software (e.g. a game) on their personal computer. The CH3SNAS is an embedded computer in the sense that it comes with pre-loaded software, and you are unable to easily add more software: the system is closed and optimized for a particular set of tasks. Fortunately there are ways for advanced users to add more software (see fun_plug within the constraints of the memory limitations.
[ return to CH3SNAS page ]