可編程邏輯業(yè)對微處理器核的報道層出不窮,包括與ARM和MIPS的協(xié)議,這些討論已經持續(xù)了數(shù)年。然而,討論的主題大體上沒什么改變,諸如采用硬核還是軟核?采用供應商的特定標準還是行業(yè)標準?這些核如何用來全方位地支持生態(tài)系統(tǒng)?如何根據(jù)成本、功耗和性能來選擇微處理器?如何根據(jù)應用來選擇核?
嵌入式微處理器的情況也沒有太大的改變:設計人員可以選擇供應商的特定軟核,例如萊迪思的LatticeMico32(圖1)、Altera的Nios II和Xilinx的MicroBlaze(目前沒有供應商提供硬核)。在行業(yè)標準方面,現(xiàn)有ARM公司的軟核和PowerPC硬核。
設計人員對于IP 的優(yōu)點和缺點都十分清楚。供應商特定的軟核提供良好的成本和性能優(yōu)勢,因為它們是針對供應商的特定FPGA而優(yōu)化的。然而,工業(yè)標準的核雖然沒有像軟核那樣有效或節(jié)約成本,但聲稱擁有全方位的支持,以及擁有多年來設計人員所熟悉的用于ASIC或分立處理器設計的工具。不過,像LatticeMico32那樣的軟核在技術上也很有優(yōu)勢(不僅僅擁有核,還有構建平臺的工具),還有可用于任何ARM或MIPS發(fā)布的用FPGA實現(xiàn)的軟核。
傳統(tǒng)理論認為,使用軟核是一種避免微處理器過時的方法,而硬核(相對于軟核而言)具有低成本、低功耗和更高的性能(但不靈活)的特點。然而,通常認為硬核有風險:他們占用了空間,對不需要使用他們的客戶來說增加了成本,如果隨后需要這個硬核能夠提供更高性能的處理,那么很快會出現(xiàn)過時的情況。
人們通常按習慣做事,但是傳統(tǒng)的知識是隨著時代而變化的(或者更確切地說,是隨著技術而變化的)。隨著穩(wěn)步發(fā)展的更小的芯片尺寸,現(xiàn)在FPGA結構之中的硬核和軟核只占用很小的空間,實際上對一個更大的FPGA而言并沒有增加成本。
反復的討論表明,硬核相對于軟核、專門供應商與行業(yè)標準的嵌入式微處理器之間的爭論,目前仍沒有任何明確的“贏家”。
最感興趣的是了解FPGA中處理器的使用已與以下三大類別之一的相同:
● 以前的ASIC /片上系統(tǒng)(SoC)是針對FPGA的。他們的微處理器核的應用是最少的,而且也是最苛刻的。對于SoC而言,功能更強大的核是非常重要的,因為使用現(xiàn)有的軟件應用代碼,可以證明這些將針對行業(yè)標準處理器的硬核。
● 分布式計算。對于這些應用, FPGA將有專門的處理引擎,在電路板上具有與FPGA分開的高速處理器。在這種情況下,F(xiàn)PGA本身并不需要先進的處理器性能。
● 低性能處理。在這些應用中,性能較低的處理器的功能添加至FPGA,會增加一點成本或對成本沒有影響。大多數(shù)在FPGA中使用處理器的應用將繼續(xù)歸為這一類。
可以很肯定地說,目前期望FPGA廠商提供嵌入式微處理器核、工具、外圍設備和其他的IP、互連的IP、參考設計和基于這些核實現(xiàn)平臺的庫(所有這些可縮寫為“處理器的IP”)?傊⑻幚砥骱艘呀洀“可選”到“標準”的FPGA設備,處理器IP的重要性從來沒有像現(xiàn)在那么突出。