WRT1900AC, WRT1900ACS, and WRT3200ACM Routers, SoS ( CPU ), and Hardware
The OpenWRT website provides a plethora of information about the AC Series of Linksys Routers. What they don't do is provide an explanation of what a lot of the technical references on those pages means. Nor should they as they're doing enough as it is (IE, this is not a complaint against them, they do excellent work). But it seems like it would be nice to have it all explained with links to references. The information provided by this article is meant to supplement the information on the OpenWRT website.
SoS (System on a Chip) / CPU for the WRT1900ACS and WRT3200ACM (not the WRT1900AC)
Both the Linksys WRT1900ACS (code name Shelby*) and WRT3200ACM (code name Rango*) use the same SoS (System on a Chip, CPU). The SoS / CPU of the WRT3200ACM has a higher clock speed. This is possibly due to variations in the manufacturing process where some chips are tested able to sustain stable operations at a higher frequency. Marvell cites a top speed of 2.0 GHz. Similar to Intel, the higher speed SoS / CPUs demand a higher price.
- Marvell Armada 385 88F6820 (Technical Brief: Armada 38x Series, Web Site: Armada 38x Series)
- Manufacturer: MVEBU (Marvell Embedded Business Unit)
- Originally Released: ~2015 and ~ 2017
- Arm / ARM v7-A Architecture, Cortex-A Family (32 bit), Cortex-A9 Core
- 1.6 GHz Dual Core CPU, 1 MB L2 Cache (WRT1900ACS)
- 1.866 GHz Dual Core CPU, 1 MB L2 Cache (WRT3200ACM)
- Math Co-processor / FPU (Floating Point Unit) Support: SIMD (Neon), VFPv3 / VFPv3-D32 (including VFPv3-D16, which is inferior to D32)**
- 128 MB Storage (Non Volatile RAM / Flash Memory / NAND) equivalent to a disk drive.***
- 512 MB RAM (Random Access Memory)
- One x4 PCIe 2.0 Ports, Two x1 / Four x1 PCIe 2.0 Ports, 16 bit Local Bus, Three Gb Ethernet Ports, Two USB 3 Ports, One / Three USB 1 Port, Two SATA3 Ports (Technical documentation and website information offers slightly different information)
- OpenWRT OS Path: mvebu/cortexa9/linksys
- Packages: arm_cortex-a9, arm_cortex-a9_neon, arm_cortex_a9-vfpv3, and arm_cortex-a9_vfpv3-d16
* Note: The Shelby, Rango, etc. references are code names assigned by Linksys to their routers and / or circuit boards and / or firmware.
**Note: The original architecture for the Linksys routers (WRT1900AC) was built for the VFPv3 FPU as the predecessor to the WRT1900ACS and WRT3200ACM was the WRT1900AC whose CPU only supported VFPv3 (see this note). However, Marvell added SIMD / Neon FPU support for the WRT1900ASC and WRT3200ACM CPUs. Use the Neon Packages as they will provide better performance in some instances. The WRT1900ACS and WRT3200ACM support all of the various Packages offered by OpenWRT. By default OpenWRT uses the VFPv3-D16 Packages.
***Note: Keep in mind, with space reserved by Linksys on the SoC (Sytem on a Chip), Multiple Flash Partitions, OpenWRT File System, Firmware, etc. out of that 128 MB of storage space, only about 25 MB will be available for the AC and ACS and more than double that for the ACM. After some research, its seems possible to access the "non active" partition, but because of the nice way OpenWRT makes a usable file system read / write, it wouldn't be easy to make it accessible in the same convenient manner. Can anyone say USB 3.0 Flash Drive?