v1.4.0 ReleaseNote
如需Phytium全系CPU的软件适配支持,请联系 linan1284@phytium.com.cn
本项目代码仓库整体共分为两个分支: master 分支:开发分支,用于保存最新的协作开发代码以及bug修复后的代码。其只要求保障新功能基本正确并且能够满足基本的使用需求,并没有经过系统性和复杂条件下的测试。 release 分支:发布分支,包含核心启动代码、芯片外设驱动、用户使用例程和构建的脚本工具。用于保存经过系统性测试的代码并对外发布版本,默认下载此分支的代码。
本项目发布了 Phytium 系列 CPU 的 嵌入式软件开发工具包,包括板级支持包、第三方开源中间件、交叉编译构建工具、及其 Baremetal 参考例程,在支持多平台裸机应用开发的基础上,能够为多种RTOS提供外设驱动和配置构建工具。

本项目的整体设计如下所示,自下而上可以分为平台层、组件层、框架层和应用层。

. ├── standalone.kconfig --> 配置定义 ├── LICENSE --> 版权声明 ├── README.md --> 使用说明 ├── arch │ └── armv8 --> 架构相关 ├── board │ ├── e2000d_demo │ ├── e2000q_demo │ ├── d2000_test │ ├── ft2004_dsk │ ├── phytiumpi_firefly │ ├── pd2308_demo │ ├── pd2408_test_a │ ├── pd2408_test_b │ └── user --> 板级IO复用,初始化和用户定义相关 ├── common │ ├── fprintf.c │ ├── fprintf.h │ ├── fsleep.c │ └── fsleep.h --> 通用方法 ├── doc │ ├── ChangeLog.md --> 修改记录 │ └── reference --> 接口说明文档 ├── drivers │ ├── can │ ├── dma │ ├── ... │ └── watchdog --> 外设驱动 ├── example --> 裸机例程 ├── lib │ ├── Kconfiglib │ └── libc --> 依赖库 ├── scripts ├── soc │ ├── pd1904 | ├── pe220x │ ├── pd2308 │ ├── pd2408 │ ├── ps2316 │ └── pd2008 --> soc平台相关 ├── third-party │ └── letter-shell-3.1 --> 第三方库 ├── tools ├── install.py --> 安装脚本 └── requirements.txt --> python环境依赖组件





PD1904 是一款面向桌面应用的高性能通用 4 核处理器。每 2 个核构成 1 个处理器核簇(Cluster),并共享 L2 Cache。主要技术特征如下:
PD2008 是一款面向桌面应用的高性能通用 8 核处理器。每 2 个核构成 1 个处理器核簇(Cluster),并共享 L2 Cache。存储系统包含 Cache 子系统和 DDR,I/O 系统包含 PCIe、高速 IO 子系统、千兆位以太网 GMAC 和低速 IO 子系统,主要技术特征如下,
PD2408 是一款国产自主的处理器芯片,主要适用于笔记本电脑,也可用于独显,低成本台式机。存储系统包含 Cache 子系统和 DDR,I/O 系统包含 PCIe、高速 IO 子系统、千兆位以太网 GMAC 和低速 IO 子系统,主要技术特征如下,
| ai | Platform Supported | Platform Developing | Component |
|---|---|---|---|
| TINYMAIX | PD1904、PE220X、PD2008、PD2308、PS2316 | tinymaix_demo |
| Peripherals | Platform Supported | Platform Developing | Component |
|---|---|---|---|
| Generic Interrupt Controller v3 | PD1904、PE220X、PD2008、PD2308、PS2316、PD2408 | gicv3 | |
| Generic Timer | PD1904、PE220X、PD2008、PD2308、PS2316、PD2408 | generic_timer | |
| UART (PrimeCell PL011) | PD1904、PE220X、PD2008、PD2308、PS2316 | serial | |
| ADC | PE220X | adc | |
| CAN | PD1904、PE220X、PD2008、PD2308 | can/can | |
| DDMA | PE220X、 | seria/ddma | |
| GDMA | PE220X、PD2308、PD2408 | dma/gdma | |
| IOPAD | PE220X、、PD2408 | iopad | |
| IPC | PE220X、 | ipc/semaphore | |
| I2C | PE220X、PD2308、PD2408 | PD1904/PD2008 | i2c |
| I2S | PE220X、PD2308、PD2408 | i2s | |
| PIN | PE220X、PD2008、PD2308 | PD1904/PD2008 | pin |
| QSPI (Nor Flash) | PD1904、PE220X 、PD2008、PD2308、PD2408 | qspi | |
| SPI | PD1904、PE220X 、PD2008、PD2308、PD2408 | spi | |
| TIMER & TACHO | PE220X、PD2308、PD2408 | timer&tacho | |
| MIO | PE220X、 | i2c & serial | |
| SDMMC | PD1904、PD2008 | sd | |
| SDIO | PE220X、PD2308、PD2408 | sd | |
| PCIE RC | PE220X、PD1904、PD2008、PD2308、PS2316 | pcie rc | |
| SATA | PE220X、PD2308、PD2408 | sata/sata_controller | |
| SATA PCIE | PD1904、PE220X、PD2008、PD2308、PD2408 | sata/sata_pcie | |
| PWM | PE220X、PD2308、PD2408 | pwm | |
| WDT | PD1904、PD2008、PE220X、PD2308、PS2316、PD2408 | wdt | |
| USB(Device) | PE220X、PD2408 | usb/usb_device |
| Media | Platform Supported | Platform Developing | Component |
|---|---|---|---|
| DP | PE220X | media_test | |
| LVGL | PE220X | lvgl_demo_test |
| SEC | Platform Supported | Platform Developing | Component |
|---|---|---|---|
| RND | PE220X | PD2408 | trng_test |
| SHA | PE220X | sha_test |
| Network | Platform Supported | Platform Developing | Component |
|---|---|---|---|
| LWIP | PD1904、PD2008、PE220X | lwip_startup | |
| RAW | PD1904、PE220X、PD2008 | raw_api |
| Storage | Platform Supported | Platform Developing | Component |
|---|---|---|---|
| FATFS | PD1904、PE220X、PD2008、PD2308、PD2408 | fatfs | |
| MEMORY_POOL | PD1904、PE220X、PD2008、PD2308、PS2316、PD2408 | memory_pool_test | |
| SFUD | PD1904、PE220X、PD2308、PD2408 | PD2008 | sfud |
| SPIFFS | PD1904、PE220X、PD2308 、PD2408 | PD2008 | spiffs |
| System | Platform Supported | Platform Developing | Component |
|---|---|---|---|
| TEMPLATE | PD1904、PE220X、PD2008、PD2308、PS2316、PD2408 | template_test | |
| AMP_TOOLS | PE220X、PD2308、PD2008、PS2316、PD2408 | amp/amp_tools_example | |
| LIBMETAL | PE220X、PD2008、PD1904、PD2308、PS2316、PD2408 | amp/libmetal_test | |
| AMP | PE220X、PD1904、PD2008、PD2308、PS2316、PD2408 | amp/openamp、amp/openamp_echo_remoteproc_load | |
| PSCI | PD1904、PE220X、PD2008、PD2308、PS2316、PD2408 | arch/armv8/psci、arch/armv8/mmu、arch/armv8/pmu | |
| SCMI | PE220X、PD2308、PD2408 | scmi_mhu | |
| ATOMIC | PD1904、PE220X、PD2008、PD2308、PS2316、PD2408 | atomic | |
| C++ | PD1904、PE220X、PD2008、PD2308、PS2316 | cxx/cryptopp&get-start | |
| SHELL | PD1904、PE220X、PD2008、PD2308、PS2316、PD2408 | letter_shell_test | |
| NESTED INTERRUPT | PD1904、PE220X、PD2008、PD2308、PS2316 | nested_interrupt | |
| CMSIS | PD1904、PE220X、PD2008、PD2308、PS2316 | cmsis | |
| DELAY | PE220X、 | delay | |
| NEWLIB | PD1904、PE220X、PD2008、PD2308、PS2316 | newlib | |
| UNWIND | PD1904、PE220X、PD2008、PD2308、PS2316 | unwind | |
| FJTAG | PE220X | jtag_debugging | |
| ACPI | PD2308 | acpi_devices/acpi_utilities | |
| FDT | PD2308 | fdt_devices | |
| PCI device | Platform Supported | Platform Developing | Component |
| ---------- | ---------------------------------------------- | ------------------- | ---------------------------- |
| E1000 | PD1904、PE220X、PD2008、PD2308、PS2316、PD2408 | example\network\lwip_startup | |
| NVME | PD1904、PE220X、PD2008、PD2308、PS2316、PD2408 | example\peripherals\pcie |
请联系飞腾嵌入式软件部
wangxiaodong1030@phytium.com.cn
liushengming1118@phytium.com.cn