Nios® II C2H 编译器图像旋转设计示例

author-image

作者

Nios II C-to-Hardware 加速编译器(C2H 编译器)图像旋转设计实例演示了 Nios II C2H 编译器如何在硬件中加速图像旋转算法。设计示例包含硬件和软件。

该示例的硬件部分是在 SOPC Builder 中创建,包含了从闪存读取位图图像、在 RAM 中旋转图像、然后将旋转后的图像写入位于同步 SRAM 中的显示帧缓冲区所需的外围设备。硬件设计还包含一个性能计数器来测量旋转算法的速度,以及一个 JTAG UART 来报告测量结果。

该示例的软件部分是一个用 C 语言编写的 Nios II 集成开发环境 (IDE) 项目。该项目包含一个主循环,该循环调用图像旋转函数 360 次,每次迭代都会增加旋转图像的度数。旋转后的输出图像可以选择显示在 Nios II 开发板的 KROS LCD 子卡上。

硬件设计规格

  • 板支持:Nios 开发板,Cyclone® II 版
  • Nios II 内核:Nios II /f,启用调试,4 KB I-缓存,8 KB d-缓存
  • 片上 RAM:12 KB
  • 片外同步 SRAM:1 MB
  • 通用闪存接口 (CFI) 闪存接口:8 MB
  • 紧凑型闪存接口:1
  • SDRAM 控制器:32 MB
  • JTAG UART - 1
  • 计时器:1
  • 彩色液晶控制器:1个
  • 系统 ID 外设:1
  • 性能计数器:1

图 1.Nios II C2H 图像旋转系统框图。

C2H 加速结果

在本例中,C2H 编译器能够加速图像旋转算法,在最快的 Nios II 嵌入式处理器上运行,其运行速度比未优化编译的软件 (-O0) 快 57 倍。与使用完全优化 (-O3) 编译的软件相比,C2H 编译器加速算法的运行速度提高了 24 倍。

使用此设计示例

下载 Nios II C2H 图像旋转设计示例.zip 文件)。

该设计的使用受英特尔® 设计示例许可协议中条款和条件的管理和约束。

.zip 文件包含重现该示例的所有必要硬件和软件文件,以及一个 readme.txt 文件。readme.txt 文件包含关于设计重构的说明。