打印
[Actel FPGA]

[转帖]针对微控制器应用的FPGA实现2

[复制链接]
1632|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
huzixian|  楼主 | 2009-11-19 14:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  微控制器应用实例
  FPGA的灵活性使其适用于许多微控制器应用,以及包含微控制器的更复杂的设计。
图1:马达控制应用
  像家用电子设备、工业机器人以及正在增长的新兴汽车应用(从GPS、引擎控制到制动系统)这些产品都包括图1、2和3中所示的微控制器。
图2:导航系统应用
图3:片上系统应用
  在马达控制应用中,系统发送和接收来自微控制器的信息,以调整步进电机的速度和方向。来自系统的输入告知微控制器增大或减小马达和控制器的速度,微控制器再依次告知系统马达的实时速度和方向。
  导航系统采用微控制器调整系统的图像显示器,根据微控制器的输入提高或降低分辨率。
  图3中的设计展示了一个片上系统的实现,包括微控制器、外围总线和几种外设功能,以及用于显示寄存器文档、暂存存储器、调用栈、程序计数器、标记和跟踪列表的硬件跟踪调试器。同时还支持微控制器的单步、多步和断点功能。
  片上系统的例子可用来说明设计工具流程和实现(图4)。
图4:片上系统的软件开发流程及硬件开发流程
  微控制器工具和实现
  FPGA微控制器的高效率和紧凑实现使得2280 LUT MachXO器件可用于说明图3中片上系统的设计。
  启动该设计的最简单方法是参考“快速启动指南”或项目向导一步一步地设计FPGA。一旦设计项目创建好,下一步就是编写微控制器程序。C或汇编语言是目前最流行的MCU编程语言。图5显示了用汇编语言编写的I2C Slave程序块。
图5:汇编代码实例
  必须对微控制器的每个单元进行分析以决定要执行的操作。如代码实例所示,I2C写循环具有5种操作:读状态、写器件地址、写数据、写字地址及返回。请注意代码都加上了注释。
  虽然汇编语言的规范在各种MCU上大多是一致的,但设计者还是应该查阅供应商的MCU指令集文档,以了解哪些操作是得到支持的。将汇编源代码转换到ROM初始化文件的汇编程序是由命令行驱动的,和指令集仿真器一样,这可以通过汇编器供应商工具套件获得或者从网上下载。其中有些工具是作为开放源代码工具提供。例如,LatticeMico8微控制器IP(知识产权)就是作为开放源代码提供,这是实现嵌入式微控制器的一种独特有效途径,可使用户拥有最大的灵活性。

相关帖子

沙发
SKH1| | 2009-11-19 22:19 | 只看该作者
唉,怎么又是一个?
哦,接上面的

使用特权

评论回复
板凳
linhai1986| | 2009-11-19 23:55 | 只看该作者
应该是

使用特权

评论回复
地板
xiaoxin1986| | 2009-11-21 08:59 | 只看该作者
恩,挺好,顶一下

使用特权

评论回复
5
llljh| | 2009-11-21 12:44 | 只看该作者
:)

使用特权

评论回复
6
虎虎生威| | 2009-11-21 12:47 | 只看该作者
微控制器工具和实现这部分不错

使用特权

评论回复
7
20801233| | 2009-11-21 18:16 | 只看该作者
挺好的,
学习了。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

262

主题

1534

帖子

2

粉丝