|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
软核与硬核的对比# p( O6 G" ?" \7 z9 s1 \
' Z7 X5 z; h0 p. p$ x: n! a1.性能. {# |' `9 ]( T9 D/ \
+ L" Y$ n: \/ P0 o U9 x ^9 s由于软核没有实现,因此它天生在功能和实现方面比硬核更加灵活。另一方面,硬核开发者可能要花更多的时间来优化他们的硬核,因为它们要在很多设计中使用。因此,这使人们觉得硬核会提供更高的性能。
! \* X6 s. C% j5 c# d8 U0 i. G5 H, B$ n; I5 k& D J0 W
事实上,为那些最先进工艺设计的高端、全定制硬核确实能够提供比软核更好的性能。通过使用锁存、动态逻辑、三态信号、定制存储器等,全定制设计团队能实现比完全静态综合的设计更好的结果。对于需要达到现有工艺和设计技术极限性能的SoC来说,全定制硬核能够更好地满足这些要求。
' g3 `; f% q/ K
* i( W( Z4 w& _" J( x. a9 P然而,如果性能目标在一个软核范围内,那么硬核的优势就无关紧要了。SoC设计团队能够使用软核来满足性能要求,并利用其固有的灵活性优势。而随着工艺技术的进步,软核的最高频率限制也在提高,使它们成为更多SoC设计师的一种选择。在较低时钟频率下,硬核或许具有硅片面积方面的优势。但是情况往往并不是这样。硬核经常简单地使用ASIC的方法进行固化,使之不能提供速度上的优势。在其他情况下,全定制内核不能根据每一代工艺进行重新优化,所以削弱了频率和尺寸上的优势。* J2 |' p1 {0 w1 J, b+ g1 S
; {% \6 N, P1 h
2.技术独立和可移植性
& b) P. J/ Z; Q* x2 I( O
0 i9 n3 g% r- s软核的优势之一是技术独立的,也就是说,Verilog或VHDL不需要使用一种特定的工艺技术或标准的单元库。这意味着同一个IP核能够应用到多种设计中,或现有设计的下一代中。一些软核提供商采用使其内核技术上非独立的设计风格,但是这种方式看不到什么优势。8 Y3 i; |: w. n) }0 [) L
( G& K3 e5 m, x( L' a; J X6 j
另一方面,硬核在技术上是非常特定的。事实上,如果代工厂改变其工艺参数或库,硬核可能就无法正常工作。这就产生了一个风险,因为在工艺参数改变时,IP提供商需要重新对硬核进行验证。( E& \' H( s( }, a( ]( K
& ?; P$ m% c, k9 M+ `( a+ u
硬核能够移植到新的工艺技术,但是重新优化全定制内核的工作既费事又昂贵。对于一些先进的微处理器内核,这可能要花两年或更长的时间。因此,硬核经常根据新的工艺进行光学调整。虽然这一方法既简单又快速,但是它减少了由设计团队针对现有工艺进行全定制优化的许多优势。 y) I. @4 | X$ \, q$ o1 N* \
& Q( V' f$ m) y% J
不仅如此,光学调整同时带来了另一个风险,因为它只能保证新的设计满足设计规则,而不能保证准确的时序或功能,而且重新全面验证经过光学调整的IP核是非常困难的。: ]& C. w1 E: o; @8 K6 f
3 J1 J/ ?7 k* I' q0 Y6 @/ ^
3.速度/面积/功率优化
/ d2 M6 k' j! X
" e6 W7 W/ G/ O! |) q+ T对于要实现的技术来说,硬核通常比可比较的软核运行速度更快。但是即使对于这单种技术来说,硬核也仅仅是针对一组目标而优化。如果目标是在合理的性能上使芯片面积更小,那么对于这种应用来说,为高度可调性能而优化的硬核可能就太大了。) y6 `9 {! t/ m d3 s
2 X% D1 f1 M+ o7 r3 y2 }软核是能够被“应用优化”的。为适合特定的嵌入式SoC设计,时序、面积和功率目标可能需要进行调整。例如:如果SoC使用200MHz的时钟,那么设计运行在250MHz的软IP内核可以改为准确地运行在200MHz上。这在得到更小尺寸和更低功率的同时满足了设计约束。, o6 [* o+ u. j' g2 B
3 I+ h* M( V( _4 J! S8 }( U W
这种应用优化也适用于低层IO时序。软内核的IO约束可以进行调整,以准确配合内核的使用环境。如果硬内核有延迟输出信号,SoC设计师几乎无法改善时序。
) V5 H8 p; u$ u" R0 W. q$ F% t. T# T, d; E' g
如果SoC的速度、面积和功率目标与硬核的目标相符,那么硬核将极具竞争力。但对于大多数设计师来说,软核在为特定的SoC优化方面更具优势。
7 a& {8 w [: w4 ]3 n' ]- b8 n/ p7 N
( T" @+ ?& r2 e: L7 V/ }4.可定制性' r0 z% B: s9 C# h |
* z" d- k( e% ?% U5 H3 l
软核相对硬核还具有另外一个优势:编译时间定制化。这些是实现之前的设计选项。
' u, f' l1 h f+ P& v; x, F% C) c8 j高速缓冲存储器的内存大小就是一种常见的编译时间用户定制项目。根据特定嵌入式应用所需的高速缓冲存储器的大小,软核处理器能够精确地被配置。而硬核在这方面就不能被定制。" c+ T' [8 P/ [- W
# q& g0 ~! v, C2 C/ J另一种在许多软核中应用的定制项目就是指令专用,或选择性支持某种特殊指令。例如,一些SoC可能需要对外部协处理器的支持。然而,在一些不使用这些特性的系统中,多余的硬件可从软核中去掉,以节省面积和功率。
1 A6 j; [% w- W
8 ~6 J0 B& ^1 E2 a6 x3 V! {软核还可以包括实现配置参数。这是一种特殊的编译时间定制,可帮助软核更好地配合SoC团队使用的设计风格。例如,微处理器内核经常通过使用门控时钟电路来实现,但这种时钟不能与某些时钟布线工具很好配合。如果处理器内核可提供一种将所有门控时钟变为相等的多路复用器(MUX)的编译时间设置,SoC团队可使实现更为容易。
% E8 {0 S; W; O! @; Z- }' j' y5 `. t. s1 W
5.易于集成
" v0 ?& I1 b) R, f: j$ K% \# h3 ~: p8 e' T
软核很可能更容易被集成到SoC设计团队使用的流程中,除非内部设计小组已经实现了硬核。其原因是SoC设计团队将在他们认可的IP核周围添加RTL模块。这些内核看上去就像另外的SoC模块,也可像它们一样地实现。
7 X8 H6 l7 K2 ]3 R. A3 t; j$ j4 V6 ~( y8 g1 T- F' A( _7 i1 h7 ]% m
另一方面,硬核看上去更像一个黑匣子RAM,特别是在它采用全定制技术实现时。这意味着硬核提供商将需要为该内核提供更多的黑匣子模型,使SoC设计师能够在其周围设计其模块。这本身就比使用软核更困难。例如,全定制硬核也许没有门级网表。这是因为该设计已经在晶体管级完成,而没有使用逻辑门。但是设计团队可能需要通过背注时序运行门级功能仿真,因为缺少门级网表,这将难以进行。
I" j# d" l/ ]8 u* o; T d |
|