打印

赛灵思PicoBlaze软核介绍

[复制链接]
3433|41
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
feihong777|  楼主 | 2013-1-5 23:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
PicoBlaze是由Xilinx公司的Ken Chapman设计并维护的一款8bit的微控制器软核,可以嵌入到Cool Runner II、 Virtex-E,Virtex-II(Pro) 和 Spartan3(E)的CPLD以及FPGA中。 首先说一下PicoBlaze这个名字。我们知道:Xilinx主推的32-bit RISC嵌入式软核叫MicroBlaze,非官方有时也可写成uBlaze,用来表示该软核非常之小。Xilinx推出比它更小的软核就是PicoBlaze了。学过电路的人都知道,电容单位里有个量级叫皮法。
也就是pF。这里的p就是Pico-的意思,它表示10的负12次方这样一个数量级。而PicoBlaze这个软核呢,也的确是名符其实。将它实现在XC3S500E的FPGA中,只用到了96个SLICE,也就是只占用到了5%的逻辑资源的样子。
不过麻雀虽小,性能却挺强大的。对于整个指令集,PicoBlaze执行一条指令需要2个时钟周期。即使这样。
在Spartan3E Starter Kit板上以50MHz的时钟为例,PicoBlaze也能达到25MIPS的性能,对于要求不是太高的应用场合。PicoBlaze是一个不错的选择。而且在某索爱手机游戏些特殊的应用场合下。
还可以实现例化多个PicoBlaze软核来达到设计目的。
尽管PicoBlaze的定义是Microcontroller(ug129就是这样写的),但是根据Ken Chapman在PicoBlaze的参考设计里提到的,PicoBlaze实际上是常数码可编程的状态机(KCPSM, short for Konstant Code Programmable State Machine)。巧合的是,我们也可将其称之为Ken Chapman's Programmable State Machine, 以示纪念,呵呵!从它参考设计中附带的PSM代码中可以看到,针对PicoBlaze编写的代码大部分都是由Constant,各个函数段间的跳转以及中断服务例程(ISR, Interrupt Service Routine)构成的。这些代码的执行都是顺序的,尽管这似乎与FPGA能有效执行操作的特点不同。
但是在某些场合。
用PicoBlaze却能够简化设计,而又不失性能。
在Xilinx的官方论坛上,Ken Chapman列具了如下可以采用PicoBlaze的应用场景:
LED flasher (已有参考设计)
PWM control and even generation (KHz PRF for motors and brightness control) (已有参考设计)
Switch monitor.
UART interface and simple command/status terminal (已有参考设计)
LCD character module display interface and control (已有参考设计)
SPI master (i.e. FLASH controller for Spartan-3AN).
I2C master.
Calculator (XUP-San Jose State University)
Audio DSP processor (typically up to 48KHz sample rate and may utilise a hardware multiplier as a peripheral)
DTMF tone telephone dialer including sine wave generation (8KHz sample rate)
System monitoring (e.g. temperature monitor and fan control).
Motor control
Rotary encoder interface (Spartan3E Build-in Demo)
Calculator for frequency synthesizer.
Calculator for filter coefficient generation.
Emulation of a different micro controller (可用来模拟8051,By Roman-Jones,Inc)
PID control.
Mouse/Keyboard interface.
Keypad scanner
Power supply monitoring and control.
Servo control.
Built-in test equipment (on-chip monitor).
Configuration management (ICAP port)
Design Authentication Processor (已有参考设计)
Implementing peripherals for MicroBlaze or PPC.
Interrupt controller for MicroBlaze or PPC.
来看看PicoBlaze做到了什普通发光二极管电流么吧:
在美国纽约的时代广场的JP Morgan Chase大楼,有一块硕大的LED广告屏。这块广告屏在当时(2004年)是世界上最大的高亮解析度的LED显示屏,而驱动这块显示屏的,正是PicoBlaze,整个设计中用到了10块XC2V1000 Virtex-II, 323块XC3S200 Spartan-3, 以及333块XCF00 Platform Flash PROM和3800块XC9572XL72 PLD宏单元。使用到的PicoBlaze的数量更是超过了1000个。
引用设计主管的话:
"The favorite toy in our Xilinx bag-of-tricks is the PicoBlaze processor. We could not have completed the project in the time allowed without extensive use of the PicoBlaze processor. The sign contains an impressive count of more than 1,000 of these embedded processors, with nine different designs.PicoBlaze processors provide efficient logic resource utilization by time-multiplexing logic circuits. The PicoBlaze processor also provides a quick and easy way to develop control functions. The alternative would be to build a custom state machine for each function. The PicoBlaze processor is a programmable state machine, meaning that the state machine is already built; one just has to program it."
Jason Daughenbaugh, Sr Design Engineer, Advanced Electronic Designs (AED)
Application: Large LED display for JP Morgan in Times Square, NY
因此,千万不要因为当今流行32bit的嵌入式CPU而忽视了PicoBlaze这位小兄弟。

相关帖子

沙发
GoldSunMonkey| | 2013-1-5 23:11 | 只看该作者
不错,这个还是不错啊

使用特权

评论回复
板凳
jlass| | 2013-1-6 09:40 | 只看该作者
忽然想知道软核与硬核的区别,有没有人来解释一下。

使用特权

评论回复
地板
qin552011373| | 2013-1-6 12:47 | 只看该作者
GoldSunMonkey 发表于 2013-1-5 23:11
不错,这个还是不错啊

软核与硬核的区别    猴哥回复一下吧  你楼下的

使用特权

评论回复
5
ymind| | 2013-1-6 13:00 | 只看该作者
软核是可综合的,拥有VHDL/Verilog源码的;硬核是网表级的。FPGA和ASIC都这样。

使用特权

评论回复
6
gaochy1126| | 2013-1-6 13:34 | 只看该作者
楼上分享资料先呀

使用特权

评论回复
7
wfbisheng| | 2013-1-6 13:35 | 只看该作者
IP核模块有行为、结构和物理三级不同程度的设计,对应描述功能行为的不同分为三类,即软核(Soft IP Core)、完成结构描述的固核(Firm IP Core)和基于物理描述并经过工艺验证的硬核(Hard IP Core)。    (1)什么是软核?         IP软核通常是用HDL文本形式提交给用户,它经过RTL级设计优化和功能验证,但其中不含有任何具体的物理信息。据此,用户可以综合出正确的门电路级设计网表,并可以进行后续的结构设计,具有很大的灵活性,借助于EDA综合工具可以很容易地与其他外部逻辑电路合成一体,根据各种不同半导体工艺,设计成具有不同性能的器件。软IP内核也称为虚拟组件(VC-VirtualComponent)。       (2)什么是固核?         IP固核的设计程度则是介于软核和硬核之间,除了完成软核所有的设计外,还完成了门级电路综合和时序仿真等设计环节。一般以门级电路网表的形式提供给用户。     (3)什么是硬核?             IP硬核是基于半导体工艺的物理设计,已有固定的拓扑布局和具体工艺,并已经过工艺验证,具有可保证的性能。其提供给用户的形式是电路物理结构掩模版图和全套工艺文件,是可以拿来就用的全套技术。

使用特权

评论回复
8
GoldSunMonkey| | 2013-1-6 23:34 | 只看该作者
qin552011373 发表于 2013-1-6 12:47
软核与硬核的区别    猴哥回复一下吧  你楼下的

软核是用代码写的,
硬核就是FPGA里面包一个ASIC等

使用特权

评论回复
9
jakfens| | 2013-1-7 09:17 | 只看该作者
Micro复杂点还是Pico复杂

使用特权

评论回复
10
GoldSunMonkey| | 2013-1-7 15:01 | 只看该作者
jakfens 发表于 2013-1-7 09:17
Micro复杂点还是Pico复杂

M复杂啊

使用特权

评论回复
11
jakfens| | 2013-1-7 15:16 | 只看该作者
GoldSunMonkey 发表于 2013-1-7 15:01
M复杂啊

果然 M里面太多原语了 看不懂

使用特权

评论回复
12
GoldSunMonkey| | 2013-1-7 15:19 | 只看该作者
jakfens 发表于 2013-1-7 15:16
果然 M里面太多原语了 看不懂

哈哈,你找到M的代码了?

使用特权

评论回复
13
jakfens| | 2013-1-7 16:12 | 只看该作者
GoldSunMonkey 发表于 2013-1-7 15:19
哈哈,你找到M的代码了?

不是免费的么

使用特权

评论回复
14
GoldSunMonkey| | 2013-1-7 20:56 | 只看该作者
jakfens 发表于 2013-1-7 16:12
不是免费的么

但是代码没有公开啊

使用特权

评论回复
15
GoldSunMonkey| | 2013-1-7 20:57 | 只看该作者
jakfens 发表于 2013-1-7 16:12
不是免费的么

难道你找到代码了?

使用特权

评论回复
16
jakfens| | 2013-1-7 21:59 | 只看该作者
GoldSunMonkey 发表于 2013-1-7 20:57
难道你找到代码了?

:lol FAE送的

使用特权

评论回复
17
GoldSunMonkey| | 2013-1-7 22:39 | 只看该作者
;P厉害啊。谁送的啊?

使用特权

评论回复
18
jakfens| | 2013-1-8 09:17 | 只看该作者
GoldSunMonkey 发表于 2013-1-7 22:39
厉害啊。谁送的啊?

反正不是你

使用特权

评论回复
19
GoldSunMonkey| | 2013-1-8 18:57 | 只看该作者
jakfens 发表于 2013-1-8 09:17
反正不是你

:)给我一份呗。亲

使用特权

评论回复
20
jakfens| | 2013-1-9 09:09 | 只看该作者
GoldSunMonkey 发表于 2013-1-8 18:57
给我一份呗。亲

:L 你们安富利给的 你怎么会没

使用特权

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

本版积分规则

132

主题

438

帖子

0

粉丝