写在前面
本系列文章主要讲解地平线征程2(Journey 2-J2)芯片的相关知识,希望能帮助更多的同学了解和认识征程2(Journey 2-J2)芯片。
若有相关问题,欢迎评论沟通,共同进步。(*^▽^*)
1. 芯片概况
接着上一篇文章讲解,错过的同学可以参考上篇文章。
地平线—征程2(Journey 2-J2)芯片详解(1)-CSDN博客
地平线—征程2(Journey 2-J2)芯片详解(2)-CSDN博客
地平线—征程2(Journey 2-J2)芯片详解(3)-CSDN博客
1.6 内存映射
本部分将从内存映射、内存可视化和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寄存器映射
下表列举了不同子系统的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 |
1.7 产品型号
地平线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产品居多。
本文章是博主花费大量的时间精力进行梳理和总结而成,希望能帮助更多的小伙伴~ 🙏🙏🙏
后续内容将持续更新,敬请期待(*^▽^*)
欢迎大家评论,点赞,收藏→→→