写在前面
本系列文章主要讲解地平线征程2(Journey 2-J2)芯片的相关知识,希望能帮助更多的同学了解和认识征程2(Journey 2-J2)芯片。
若有相关问题,欢迎评论沟通,共同进步。(*^▽^*)
接着上一篇文章讲解,错过的同学可以参考上篇文章。
地平线—征程2(Journey 2-J2)芯片详解(1)-CSDN博客
地平线—征程2(Journey 2-J2)芯片详解(2)-CSDN博客
地平线—征程2(Journey 2-J2)芯片详解(3)-CSDN博客
本部分将从内存映射、内存可视化和APB寄存器映射三个方面来说明。
下表列举了不同模块区域的内存映射地址,如下表所示:
Region |
Start Address |
End Address |
Size |
DDR |
0x0000_0000 |
0x7FFF_FFFF |
2 GB |
SRAM |
0x8000_0000 |
0x8000_FFFF |
64 KB |
Reserved |
0x8001_0000 |
0x8FFF_FFFF |
256 MB - 64 KB |
GIC |
0x9000_0000 |
0x9000_FFFF |
64 KB |
Reserved |
0x9001_0000 |
0x9FFF_FFFF |
256 MB - 64 KB |
APB Registers |
0xA000_0000 |
0xAFFF_FFFF |
256 MB |
QSPI Registers |
0xB000_0000 |
0xB0FF_FFFF |
16 MB |
QSPI XIP |
0xB100_0000 |
0xB1FF_FFFF |
16 MB |
Reserved |
0xB200_0000 |
0xFFFE_FFFF |
1248 MB - 64 KB |
ROM |
0xFFFF_0000 |
0xFFFF_FFFF |
64 KB |
下表列举了不同模块区域的内存可视化,如下表所示:
Region |
Visibility |
|||||
CPU |
BPU |
BIFSPI |
BIFSD |
DMAC |
Others |
|
DDR |
√ |
√ |
√ |
√ |
√ |
√ |
SRAM |
√ |
X |
√ |
√ |
√ |
X |
GIC |
√ |
X |
X |
X |
X |
X |
APB Registers |
√ |
X |
√ |
X |
X |
X |
QSPI Registers |
√ |
X |
√ |
X |
X |
X |
QSPI XIP |
√ |
X |
X |
X |
X |
X |
ROM |
√ |
X |
X |
X |
X |
X |
下表列举了不同子系统的APB寄存器映射,如下表所示:
Subsystem |
Module |
Register Space |
Size |
CPU Subsystem |
CoreSight ROM Table |
0xA000_0xxx |
4 KB |
Cortex A53 Debug APB |
0xA040_0000 ~ 0xA07F_FFFF |
4 MB |
|
CXTSGEN |
0xA080_xxxx |
64 KB |
|
CXTPIU |
0xA081_xxxx |
64 KB |
|
CXCTI |
0xA083_xxxx |
64 KB |
|
CXATBREPLICATOR |
0xA084_xxxx |
64 KB |
|
CXATBFUNNEL |
0xA085_xxxx |
64 KB |
|
CXETB |
0xA086_xxxx |
64 KB |
|
SYSCTRL |
0xA100_0xxx |
4 KB |
|
EFUSE |
0xA100_1xxx |
4 KB |
|
Timer Macro 0 with WatchDog |
0xA100_2xxx |
4 KB |
|
Timer Macro 1 |
0xA100_3xxx |
4 KB |
|
Timer Macro 2 |
0xA100_4xxx |
4 KB |
|
DMAC |
0xA100_5xxx |
4 KB |
|
BIFSPI |
0xA100_6xxx |
4 KB |
|
BIFSD |
0xA100_7xxx |
4 KB |
|
Temperature Sensor |
0xA100_9xxx |
4 KB |
|
DDR Subsystem |
DDR PHY |
0xA200_0000 ~ 0xA2CF_FFFF |
64 KB |
DDR Controller |
0xA2D0_xxxx |
4 KB |
|
Performance Monitor |
0xA2D1_0xxx |
4 KB |
|
BPU Subsystem |
BPU0 |
0xA300_0xxx |
4 KB |
BPU1 |
0xA300_1xxx |
4 KB |
|
VIO Subsystem |
SIF+ISP+IPU+PYM |
0xA400_0xxx |
4 KB |
IAR |
0xA400_1xxx |
4 KB |
|
MIPI CSI Host |
0xA401_2xxx |
4 KB |
|
MIPI CSI Device |
0xA401_3xxx |
4 KB |
|
PERI Subsystem |
UART0 |
0xA500_0xxx |
4 KB |
UART1 |
0xA500_1xxx |
4 KB |
|
UART2 |
0xA500_2xxx |
4 KB |
|
UART3 |
0xA500_3xxx |
4 KB |
|
SPI0 |
0xA500_4xxx |
4 KB |
|
SPI1 |
0xA500_5xxx |
4 KB |
|
SPI2 |
0xA500_6xxx |
4 KB |
|
I2S0 |
0xA500_7xxx |
4 KB |
|
I2S1 |
0xA500_8xxx |
4 KB |
|
I2C0 |
0xA500_9xxx |
4 KB |
|
I2C1 |
0xA500_Axxx |
4 KB |
|
I2C2 |
0xA500_Bxxx |
4 KB |
|
I2C3 |
0xA500_Cxxx |
4 KB |
|
PWM Macro 0 |
0xA500_Dxxx |
4 KB |
|
PWM Macro 1 |
0xA500_Exxx |
4 KB |
|
PWM Macro 2 |
0xA500_Fxxx |
4 KB |
|
SD0 |
0xA501_0xxx |
4 KB |
|
SD1 |
0xA501_1xxx |
4 KB |
|
EMAC Host Controller |
0xA501_4000 ~ 0xA501_5FFF |
8 KB |
|
PMU Subsystem |
PMU Controller |
0xA600_0xxx |
4 KB |
System Counter |
0xA600_1xxx |
4 KB |
|
RTC |
0xA600_2xxx |
4 KB |
|
PADC/GPIO |
0xA600_3xxx |
4 KB |
|
NoC |
APB Timeout Monitor |
0xA700_0xxx |
4 KB |
地平线J2是一个系列的产品,其中包含多种型号,希望同学们可根据产品功能需求进行选型。
J2产品的型号命名如下:
JN:表示征程家族芯片
8:表示为汽车应用产品
2:表示为第二代
A:应用场景1表示宽温度,3表示DMS,7表示ADAS
A:表示工作温度是-40℃~105℃
BG:表示封装为FCBGA
M:表示量产产品
B:表示版本为2.0
目前市场上主流的型号如下表所示:
Part Number |
Package |
Applications |
JN8270ABGM-B |
FCBGA388, 17 x 17 mm, 0.8 mm pitch |
ADAS Applications |
JN8230ABGM-B |
FCBGA388, 17 x 17 mm, 0.8 mm pitch |
DMS Applications |
JN8210ABGM-B |
FCBGA388, 17 x 17 mm, 0.8 mm pitch |
Extended Temperature Applications |
总结:从上面的产品型号也可以看出,J2主要还是应用在ADAS和DMS产品居多。
本文章是博主花费大量的时间精力进行梳理和总结而成,希望能帮助更多的小伙伴~
后续内容将持续更新,敬请期待(*^▽^*)
欢迎大家评论,点赞,收藏→→→