一、ZPUFlex简介
ZPUFlex基于zpu_small核心,但顾名思义,增加了灵活性。与原版zpu_small核心相比,此版本:
- 将包含堆栈和初始程序的双端口块 RAM 移出内核本身,改为指定相同的接口。这使得可以在单个项目中使用多个 ZPU 内核,并让每个内核执行不同的固件。
- 使堆栈/引导ROM的大小可通过泛型选择。同样,如果您想在单个项目中使用具有不同大小ROM的多个实例,这会有所帮助。
- 包括足够多的可选指令的可选硬件实现,可以省略ROM中的仿真异常,从而允许用户在资源使用情况与速度和代码大小之间进行权衡。
- 可以将堆栈重新映射到用户可选择的地址,从而为“真正的”RAM留出低地址空间。
- 可以选择从外部RAM而不是仅引导ROM运行代码,从而可以从SD卡引导或闪存太大而无法放入引导ROM的程序。
下面是ZPUFlex与其它软核的比较
二、HelloWorld例程运行
1、在GitHub下在ZPUDemos,下载地址为GitHub - robinsonb5/ZPUDemos: Tutorial and test projects for the ZPUFlex core.
2、在高云IDE中新建一个FPGA工程