PicoBlaze处理器IPCore的原理与应用
*若用户的程序超过了256条指令,则可以考虑将设计分解为几个过程,每一个过程由一个单独的PicoBlaze模块(每个拥有自己的RAM)完成。在一些设计中,以一个PicoBlaze为主(Master),其它一个或多个PicoBlaze为辅(Slave)。双端口分布式存储器是在处理器间交换数据的一个很好的选择。
*可选择将超过256个指令的程序分解到两个或多个块状RAM中,用一个选择开关来选择存储了要执行的指令的RAM。最简单的是使用一个被一触发器输出控制的二选一选择器来选择RAM,如图3所示。
这种方法的缺点是:二路选择器占用8个slice,且加大了程序执行的延时,降低了程序最大执行速率。一个更好的方法是将二路选择器放到RAM中,一条指令被分别存放在两个512×8的RAM中,用switch信号和8位地址信号组成9位信号,选择要执行的指令。图4列举了一个利用PicoBlaze实现控制四个七段数据管显示的例子,左边两个从0变到99,右边情形相同,变化的间隔均为1s。但同时刻只有一个计数器增加,而选择哪一个计数器增加则由DIP switch输入控制。
图4 PicoBlaze处理器的IP Core应用设计实例
结语
PicoBlaze是一个典型的8位微处理器。与传统的8位MCU相比,它是一个由VHDL实现的软处理器IP Core,可以在各种FPGA和CoolRunnerII CPLD上实现,设计灵活方便;因此,PicoBlaze将在基于可编程逻辑和MCU的应用领域中发挥积极的作用。其较高的处理性能和较少的资源占用,预示其具有更加广泛的应用前景。
Tags:
作者:佚名评论内容只代表网友观点,与本站立场无关!
评论摘要(共 0 条,得分 0 分,平均 0 分)
查看完整评论