ARM on FPGA
得益于Risc-V的兴起,ARM公司在前几年把m3和m0的内核通过Design_Star的活动给开源了,开发者只需要在ARM网站上注册就可以下载源码或者是IP核来直接调用,目前来看比较完善的有Xilinx和Gowin这两家体验挺好。其中Vivado中开发目前比较广泛及方便。
今天介绍几个基于ARM M0/M3的开源项目。
基于 ARM Cortex-M3 处理器与 FPGA 的实时人脸检测 SOC
https://github.com/WalkerLau/DetectHumanFaces
介绍
项目基于FPGA(Xilinx Spartan7 XC7S50)构建的ARM Cortex-M3软核SoC实现了实时人脸检测,通过CMOS-OV5640 Sensor采集实时图像,经过检测系统后,将添加OSD(人脸方框)的实时图像通过HDMI输出到显示器,同时相关信息(检测时间等信息)通过UART传输到上位机。特点是:
- 速度快:作者为此SOC设计了一个运算加速器,关于此加速器的详细介绍请看:
https://github.com/WalkerLau/DetectHumanFaces/blob/master/TechSpecification.md
- 节省硬件资源:采用低成本的Cortex-M3处理器及FPGA实现。
- 完全可综合
License
MIT license
基于 ARM Cortex-M3 处理器与 FPGA 的车牌识别
https://github.com/Starrynightzyq/Nexys4DDR-ARM-M3-Plate-Recognition
这是一个全国大学生集成电路创新创业大赛项目。
介绍
项目文件树:
.
├── backup
├── docs
│ ├── my
│ ├── nexys4ddr
│ └── 中期
├── hardware
│ └── m3_for_arty_a7
│ ├── block_diagram
│ ├── constraints
│ ├── ip_repo
│ ├── m3_for_arty_a7
│ └── testbench
├── matlab
├── software
│ ├── arm_xilinx_file
│ ├── flash_downloader
│ └── m3_for_arty_a7
│ ├── Build_Keil
│ ├── cmos
│ ├── cmsis
│ ├── gpio
│ ├── iic
│ ├── image
│ ├── main
│ ├── sdk_workspace
│ ├── spi
│ ├── uart
│ └── vdma
├── tools
│ └── 模型车牌生成器
└── vivado
├── Arm_ipi_repository
└── Arm_sw_repository
项目Block:
实物:
基于Cortex-M0的ARM处理器核的无线SOC设计
https://github.com/JefferyLi0903/MMC
介绍
基于国产于安路FPGA的ARM Cortex M0软核收音机SoC系统。
整体架构如下:
详细的设计就不过多介绍了,整个项目的设计文档及架构说明很完整,可以查看下面链接:
https://github.com/JefferyLi0903/MMC/tree/main/docs
基于 Arm Cortex M0 或 M3 内核的 SoC 设计模板
https://github.com/efabless/raptor_soc_template
关于项目不过多介绍了,这个项目是IC项目,本项目提供了 SoC 配置示例,以及一个示例,此示例代表 Efabless 在 X-FAB 180nm 工艺 (XH018) 上流片的演示芯片。演示芯片提供了 SoC 的工作实现,可用于评估功能或构建概念验证。
arm_cortex_m0_xillinx
https://github.com/yedk/arm_cortex_m0_xillinx
最后这个就是一个简易的arm_cortex_m0在AMD Xilinx FPGA上实现的实例,主要是有详细的设计文档。
总结
今天介绍的基于ARM的复杂项目,是“从奢入俭”的顺序,前面几个应用示例,后面几个原理性项目。
关于在FPGA上实现ARM M0/M3的项目推荐大家一个课程+图书,链接如下:
《图书推荐|ARM Cortex-M0 全可编程SoC原理及实现》
最后,还是感谢各个大佬开源的项目,让我们受益匪浅。今天就到这,我是爆肝的碎碎思,期待下期文章与你相见。
原文:OpenFPGA
作者:碎碎思
相关文章推荐
更多FPGA技术干货请关注FPGA 的逻辑技术专栏。欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。