新闻中心

EEPW首页>嵌入式系统>设计应用> 手把手课堂:扩展PowerPC的复数运算指令集

手把手课堂:扩展PowerPC的复数运算指令集

作者: 时间:2011-05-06 来源:电子产品世界 收藏

  复数乘法的定义是,两复数相乘,二者各有一个实值和一个虚值。

本文引用地址://m.amcfsurvey.com/article/119297.htm

(a_R + j a_I, where j*j = -1):
(a_R + j a_I) * (b_R + j b_I) =
(a_R * b_R - a_I * b_I) + j (a_I * b_R + a_
R * b_I)

  为提高效率,复数乘法硬件模块(cmplxmul) 分三级执行乘法运算。这样,便可在这种多周期的实现中仅使用两个乘法器和两个加法器,从而节省硬件资源。图2所示为复数乘法FCM的框图(草图形式)。

  如cmplxmul.vhd中的VHDL代码所示,我们在三个时钟周期中完成复数乘法运算。我们在文件cmplxmul.vhd中实现了用来完成此复数乘法运算的FCM。文件fcmcmul.vhd提供了FCM/APU接口的封装,用来将FCM连接到APU。如我们将在分步指南(请见侧条)中所示,当使用UDI法时,您可以用此封装用作为模板,将自己的FCM连接到APU(“加载存储指令”法需要不同的互连方式)。

  我们用EDK/XPS 10.1.02通过使用ISE® 10.1.02来综合了我们的设计。我们用ModelSim 6.3d SE对设计进行了仿真和测试。

  通过增加专用于硬件加速和协处理的用户定义指令,Virtex-5 FXT器件中所含处理器的APU让嵌入式软件工程师能够以非常高效的方式加速其系统。以本文所述示例设计为起点,您就会发现掌控 APU 易如反掌,让您无需使用专用工具就能大大提高自家设计的性能。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭