作者:特權同學 軟核雖然很靈活,也很便利,但是畢竟在FPGA中有很多受限之處。性價比低是其一,性能上也不敢與同等水平的處理器相媲美。因此,各大FPGA制造商在繼續降低晶圓工藝的同時,紛紛找來合作伙伴力求在嵌入硬核方面有所作為。曾經鬧得沸沸揚揚的ARM聯手xilinx、INTEL聯手altera……只不過,這些都不是咱們這群芯片級小嘍啰們正真關心的。管他什么Cortex-M0又 MIPS的,我們所關心的是到底哪個架構最實用最便利,還要“物廉價美”。 這種內嵌硬核的FPGA其實就是單片系統解決方案的最終歸宿,但是話說回來,到底FPGA中潛入了什么樣的硬核才算是真正的SOPC?altera一直在主推他們的軟核,從號稱全世界最通用的處理器NIOS II到目前正在炒作的MP32處理器;Xilinx也有軟核MicroBlaze針鋒相對,此外很早就有潛入IBM硬核PowerPC,現在又推出功能強大的Zynq-7000 可擴展式處理平臺。但是,這些都能夠滿足大家的需求嗎?基本上很難。在中低端應用上,北京政府力挺的國產FPGA京微雅格也適時的推出了自己的原創作品 Astro系列CSOC也曾讓特權同學眼前一亮,雖然內嵌的51也能夠跑到100M,只可惜其0.13us的工藝制程決定了FPGA邏輯難有大作為。 圖1 NIOS II架構 圖2 Zynq-7000架構 圖3 Astro架構 其實,單從靈活性上來看,NIOS II絕對占上風,只可惜從某些方面比他還是拼不過硬核。性能是一方面,如果不外擴存儲器,則非常受限于所應用器件的片內存儲器資源。而后面二者,靈活性是有,缺什么外設直接用邏輯搭出來往總線上掛,但問題也和通用的MCU一樣,集成那么些外設在大多數時候是有些浪費了,也許集成10個外設充其量只用了3、 5個,那么剩下的就是多余的,當今節約型社會這叫“浪費”。 因此,特權同學期望的架構如圖4所示。不需要太豐富的外設,畢竟FPGA內嵌硬核的最大利好就是靈活性,因此我們勢必可以將所謂的靈活性發揮到極致。也許這個架構簡單到只要一個能夠跑軟件的“裸核”和必須的調試接口即可,其他所有的外設(包括最小系統運行必須的存儲器接口等姑且都稱作外設)都根據客戶的需求自主架構。說白了,其實這成了一個“CPU+FPGA”的架構了,哈哈,這只是個人的一廂情愿,也許只是個人覺得這樣的架構最適合目前手中的一攬子項目。歡迎大家一起探討…… 圖4 更實用的架構 |