Skip to main content

Cisco ASR9000/NCS55/Cisco 8000 Chips

·1002 words·5 mins
Rory
Author
Rory
Step by step the ladder is ascended

ASR9K
#

CPU
#

这张图涵盖了 ASR9000 全系列板卡的架构以及使用的芯片, 其中最右边一列为 CPU 的类型; 可以看到最初一代和二代板卡使用的都是 PowerPC 的处理器, PowerPC 采用的都是 32 位的指令集, 这也是为什么这两代板卡没法跑在最新的 64 位 XR 系统上的原因。最新的三代采用的都是 Intel 的处理器, 使用以下命令我们可以查看板卡处理器(CPU)的类型:

0/0/CPU0 使用的是四核 E500 型号的 CPU, 0/6/CPU0 采用的是 8 核英特尔 686。

RP/0/RSP0/CPU0:ASR-9910-A#run attach  0/0/cpu0
Tue Sep 14 10:36:44.758 UTC

attach: Starting session 1 to node 0/0/cpu0
#
#
# pidin in
CPU:PPC Release:6.4.0  FreeMem:3593Mb/8192Mb BootTime:Jan 01 00:00:00 UTC 1970
Processor1: 80230020 E500mc Core 1500MHz FPU
Processor2: 80230020 E500mc Core 1500MHz FPU
Processor3: 80230020 E500mc Core 1500MHz FPU
Processor4: 80230020 E500mc Core 1500MHz FPU
#   exi
Terminating attach to node 0/0/cpu0..
RP/0/RSP0/CPU0:ASR-9910-A#run attach  0/6/cpu0
Tue Sep 14 10:45:07.159 UTC

attach: Starting session 1 to node 0/6/cpu0
# pidin in
CPU:X86 Release:6.4.0  FreeMem:18Gb/24Gb BootTime:Jan 01 00:00:50 UTC 2012
Processor1: 197294 Intel 686 F6M14S4 2000MHz FPU
Processor2: 197294 Intel 686 F6M14S4 2000MHz FPU
Processor3: 197294 Intel 686 F6M14S4 2001MHz FPU
Processor4: 197294 Intel 686 F6M14S4 2007MHz FPU
Processor5: 197294 Intel 686 F6M14S4 2007MHz FPU
Processor6: 197294 Intel 686 F6M14S4 1999MHz FPU

下面是在 64bit 系统下查看 CPU 型号的命令:

RP/0/RSP1/CPU0:ASR-9906-B#run
Tue Sep 14 10:50:16.750 UTC
s[xr-vm_node0_RSP1_CPU0:~]$ssh  192.0.12.3
Last login: Wed Jul  7 13:37:52 2021 from 172.0.1.32
[xr-vm_node0_1_CPU0:~]$
[xr-vm_node0_1_CPU0:~]$cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 95
model name      : Intel(R) Atom(TM) CPU C3758 @ 2.20GHz      <<<<<<

NPU and Fabric
#

图示最左侧是 NPU ASIC (network process unit), 我们所说的 cef 表象之类的是存储在这类芯片的 on-chip TCAM 上。

型号分别为 Trident/Typhon/tomahawk/lightspeed/Lightspeed+, 最新一代已经达到 7NM 的工艺。这款芯片也是 CISCO 自研的。

前三代中间有个回形针一样的为 FIA (fabric interface asic)用来连接右侧的 Switch Fabric ASIC, 转发芯片。

最新的两代中虽然没有 FIA 芯片, 但你可以理解位在 NP 上内置类似的功能, 下面两张图显示的是前三代和最新两代 FIA 芯片的位置。

最右侧的织装物为 Switch Fabric, 在 ASR9K 的 LC 中我们也叫它 XBAR, 或者 crossbar, 它与 Fabric 矩阵卡上使用的转发芯片是一样的。

如何去确认 NPU 的型号:
#

Trident/Typhon/tomahawk
#

prm_server_ty 进程,“ty”代表 typhon 板卡

prm_server_to 进程,“to”代表 tomahawk 板卡

RP/0/RSP0/CPU0:ASR-9006-D#show processes location 0/1/cPU0 | in prm
Sun Dec 12 22:19:42.497 kst
309    1    2   16K  10 Receive       11:15:27:0838    0:00:00:0071 prm_verifier
308    1    3   64K  10 Receive        0:00:00:0060    0:00:10:0177 prm_ssmh
308    2    0   64K  8  Receive        0:00:01:0055    0:00:06:0212 prm_ssmh
308    3    3   64K  10 Receive       11:15:29:0540    0:00:00:0000 prm_ssmh
308    4    0   64K  10 Receive        0:00:07:0447    0:00:19:0099 prm_ssmh
308    5    3   64K  10 Receive        0:00:00:0226    0:00:00:0004 prm_ssmh
308    6    3   64K  10 Sigwaitinfo   11:15:27:0074    0:00:00:0000 prm_ssmh
307    1    0  364K  10 Receive        0:00:00:0491    0:02:51:0560 prm_server_ty
307    2    1  364K  10 Receive       11:15:28:0418    0:00:00:0001 prm_server_ty
RP/0/RSP1/CPU0:ASR-9006-J#show processes location 0/1/CPU0 | in prm
Mon Dec 13 07:04:07.435 UTC
308    1    4   16K  10 Receive     1139:54:35:0430    0:00:00:0016 prm_verifier
307    1    5   64K  10 Receive        0:00:00:0044    0:22:59:0614 prm_ssmh
307    2    5   64K  10 Receive        0:00:01:0897    0:20:01:0533 prm_ssmh
307    3    3   64K  10 Receive     1139:54:39:0402    0:00:00:0000 prm_ssmh
307    4    4   64K  10 Receive        0:00:02:0435    0:00:06:0813 prm_ssmh
307    5    0   64K  10 Receive        0:00:00:0740    0:00:00:0041 prm_ssmh
307    6    3   64K  10 Sigwaitinfo 1139:54:35:0736    0:00:00:0000 prm_ssmh
306    1    4  820K  10 Receive        0:00:00:0107    0:00:15:0766 prm_server_to
306    2    2  820K  10 Receive      844:16:33:0421    0:00:00:0000 prm_server_to
306    3    1  820K  10 Receive      844:16:33:0421    0:00:00:0000 prm_server_to

Lightspeed/Lightspeed+
#

ls_prm_svr 进程, ls 代表是 lightspeed 或者 lightspeed+芯片.

RP/0/RSP0/CPU0:ASR-9904-E-eXR#show processes location 0/0/CPU0 | in prm
Mon Dec 13 06:46:22.322 UTC
121    5520    0K  20   Sleeping     punt_lib_prm     0
255    4754    0K  20   Sleeping     prm_verifier     0
255    4957    0K  20   Sleeping     prm_verifier     0
338    4758    0K  20   Sleeping     ls_prm_svr       0
338    5122    0K  20   Sleeping     ls_prm_svr       0
338    5134    0K  20   Sleeping     ls_prm_svr       0
127    6000    0K  20   Sleeping     punt_lib_prm     0
383    5738    0K  20   Sleeping     timing_prm_init  0
372    6673    0K  20   Sleeping     punt_lib_prm     0

进一步判断,需要查看下面的进程"npu_server_lsp" lightspeed+ 会有 npu_server_lsp 这个进程. lightspeed 则没这个进程。

RP/0/RSP1/CPU0:ASR-9006-F#show processes location 0/0/CPU0 | in npu
Mon Dec 13 07:08:48.649 UTC
234    5260    0K  20   Sleeping     npu_server_main  0
234    5673    0K  20   Sleeping     npu_server_lsp   0
234    5687    0K  20   Sleeping     npu_server_lsp   0
234    5695    0K  20   Sleeping     npu_server_gasp  0
234    5939    0K  20   Sleeping     npu_server_main  0
234    6121    0K  20   Sleeping     npu_server_main  0

NCS55
#

CPU
#

NCS55 系列目前使用的 CPU 都是 Intel 的,系统都都是 64bit 的 eXR,使用类似的 命令去查看:

RP/0/RP0/CPU0:NCS-5504-A#run
Mon Dec 13 08:44:47.026 UTC
[xr-vm_node0_RP0_CPU0:~]$
[xr-vm_node0_RP0_CPU0:~]$cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 62
model name      : Intel(R) Xeon(R) CPU E5-2420 v2 @ 2.20GHz
stepping        : 4
microcode       : 0x42d
cpu MHz         : 2201.000
cache size      : 15360 KB
physical id     : 0
siblings        : 12
core id         : 0
cpu cores       : 6
apicid          : 0
initial apicid  : 0
fpu             : yes
fpu_exception   : yes
cpuid level     : 13

NPU and Fabric
#

NCS55/NCS57 系列产品,其中 NPU 和 fabric 的芯片都是 Broadcom 的 DNX 系列:

StrataDNX

使用以下方式确认芯片类型:

RP/0/RP0/CPU0:NCS-5516-A#show controllers npu resources all location 0/0/CPU0
Mon Dec 20 04:30:48.540 UTC
HW Resource Information
    Name                            : lem
    Asic Type                       : Jericho 2

或者:

RP/0/RP0/CPU0:NCS-5516-A#show controller fia diagshell 0 "show unit" location 0/0/CPU0
Thu Jan 13 03:28:07.198 UTC

Node ID: 0/0/CPU0

R/S/I: 0/0/0
Unit 0 chip BCM88690_B1 (current)

再或者

RP/0/RP0/CPU0:NCS-5516-A#show controller fia diagshell 0 "soc" location 0/0/CPU0
Thu Jan 13 03:24:54.251 UTC

Node ID: 0/0/CPU0

R/S/I: 0/0/0
============================================================
|                          Device General Info             |
|   UNIT 0 Driver Control Structure                        |
============================================================
| Chip        | Rev  | Driver      | Family   | Board type |
============================================================
| BCM88690_B1 | 0x12 | BCM88690_B0 | jericho2 | 0x0        |
============================================================
========================
| Device Status        |
========================
| Flags = 0x40203      |
========================
| attached             |
------------------------
| initialized          |
========================
===============================================================================
|                           Device Additional Info                            |
===============================================================================
| Feature  | Values                                                           |
===============================================================================
| CM       | Base=0x7f44d3800000                                              |
-------------------------------------------------------------------------------
| Disabled | reg_flags=0x0 mem_flags=0x0                                      |
-------------------------------------------------------------------------------
| Debug    | SchanOps=1742512993                                              |
-------------------------------------------------------------------------------
| Counter  | int=0us                                                          |
-------------------------------------------------------------------------------
| Timeout  | Schan=300000us MIIM=0(3000000us)                                 |
-------------------------------------------------------------------------------
| Intr     | Total=0 Sc=0 ScErr=0 MMU/ARLErr=0                                |
-------------------------------------------------------------------------------
| PCI      | LinkStat=0 PCIfatal=0 PCIparity=0                                |
-------------------------------------------------------------------------------
| ARL      | ARLdrop=0 ARLmbuf=0 ARLxfer=0 ARLcnt0=0                          |
-------------------------------------------------------------------------------
| DMA      | TableDMA=0 TSLAM-DMA=0                                           |
-------------------------------------------------------------------------------
| Mem      | TMemCmd[BSE]=0 MemCmd[CSE]=0 MemCmd[HSE]=0                       |
-------------------------------------------------------------------------------
| ChipFunc | ChipFunc[0]=0 ChipFunc[1]=0 ChipFunc[2]=0 ChipFunc[3]=0          |
|          | ChipFunc[4]=0                                                    |
-------------------------------------------------------------------------------
| I2C      | I2C=0 MII=0 StatsDMA=0 Desc=0 Chain=0                            |
===============================================================================
RP/0/RP0/CPU0:NCS-5516-A#

同理, 如果你需要查看 fabric 卡的 chip, 也可以使用同样的命令, 但是得在 admin vm 下运行:

sysadmin-vm:0_RP0# show controller sfe diagshell 0 "show unit" location 0/fc0
Thu Jan  13 03:37:22.130 UTC+00:00
Unit 2 chip BCM88790_b0
Unit 1 chip BCM88790_b0
Unit 0 chip BCM88790_b0 (current)