在向一個嵌入式產品設計做出幾年的財力和物力投資之后,你最不愿意聽到的消息就是你所采用的器件已經“生命終止”。在分立的嵌入式處理中,陳舊過時意味著你必須為你的下一個設計轉向采用另外一種處理器,并且完全可能要重新設計你想在市場中保持的現有產品。即使是半導體行業中的巨頭,也并不是總能夠為所有類型的應用找到利用個別分立解決方案的途徑。許多最終產品無法證明采用特定的分立器件是恰當的,因此,隨著時間的推移,甚至長期供應商也會在不合適的時間停止為他們的客戶提供器件支持。
英特爾公司最近宣布他們將退出嵌入式市場。在1970年代,英特爾通過引入8048 μC創造了嵌入式市場,隨后8051μC的普及應用極端火爆。但是,該公司將停止生產8051、251、8096/196、188/186、i960、所有版本的386 (包括386EX)和486,總計起來,大約700種器件型號正在停產。采用基于ASIC的μC/μP (微控制器/微處理器)的客戶預期,其它的供應商也將做出器件過時的宣告,特別是那些最近被私人股權投資公司收購的、要減產特定的μC/μP的供應商,他們可能導致所提供的產品被合并。
大多數設計工程師都關注器件的過時問題,在工業、科學、汽車和醫療市場的工程師對此問題更為關注。因為這些市場的產品生命周期長,基于ASIC的μC/μP可能是開發一個產品的成本極高的方法;因為假如μC/μP停產,那么,它就可能涉及對PCB、軟件接口、板級支持封裝(BSP)開發、驗證、測試和對整個最終產品進行多次質量認證的再一次工程努力。
大多ASIC供應商確實提供諸如最后一次購買(LTB)和硅晶圓購買計劃之類的替代解決方案,但是,兩種選擇的成本都是高昂的。很難預測(更合適的說法是“猜測”)在產品生命周期中需要采購和存儲多少μC/μP,與此同時,庫存管理正試圖避免在貨架上把巨大數量的元器件存放幾個月或幾年。
軟性、靈活的“生命終止”解決方案
當與軟處理IP核相結合時,可編程嵌入式平臺提供獨一無二的優勢。采用一種軟處理IP核及幾個現成的FPGA系列,你可以利用嵌入式行業中范圍廣闊的不同應用的優勢以及跟分立器件市場相關的不確定性。
回避退化風險的一種最佳解決方案是利用在硅器件層上的靈活FPGA構造及具有定制外設的軟IP處理器。賽靈思為英特爾以及其它供應商的生命終止器件提供多種解決方案。
這些解決方案依賴于你現有的軟件代碼基礎。如果它是采用匯編語言編寫的,一種選擇是把代碼與C語言對接;如果這種辦法不可行,你可以試用Xilinx® AllianceCORE?合作伙伴網絡提供的像186和8051一樣成熟的μC/μP IP模塊。這將包括把外設集成到你特定的生命終止器件型號并進行驗證和測試。
? ???Intel 188/186 Features 英特爾188/186功能
MicroBlaze with Memory Controller 具有存儲控制器的MicroBlaze
CPU Static No Cache (12, 20, 25 MHz) CPU靜態沒有高速緩沖存儲器
MicroBlaze CPU Core with 16K Cache (104 MHz) 具有16K高速緩沖存儲器的MicroBlaze CPU核
Clock Generator 時鐘發生器
DCM on Xilinx FPGA 在Xilinx FPGA上的DCM
Two Independent DMA Channels for External Memory and I/O
? ?? ? 用于外部存儲器和I/O的獨立DMA通道
OPB Central DMA Controller OPB中央DMA控制器
Three Programmable 16-Bit Timers 三可編程16位定時器
OPB Timer/Counter (Four)材OPB定時/計數器
Local Bus Controller 本地總線控制器
OPB Bus Interface OPB總線接口
DRAM Refresh Control Unit DRAM刷新控制單元
OPB Memory Controller Interface OPB存儲控制器接口
Programmable Interrupt Controller 可編程中斷控制器OPB Interrupt Controller OPB中斷控制器
Programmable Wait State Generator 可編程等待狀態發生器
State Machine or an OPB Timer/Counter (Included Above) 狀態機或OPB定時器/計數器(包括上面)
Chip Select Logic 片選邏輯
OPB GPIO片上外設總線 (OPB) 通用IO (GPIO)
System-Level Testing Support 系統級測試支持
OPB JTAG UART
如果現有的軟件代碼采用C語言編寫,賽靈思已經在Spartan?、Virtex? FPGAs、PowerPC? μP 32位 RISC嵌入式Virtex FPGA系列以及流行的MicroBlaze? 軟IP處理器中提供了真正的不會過時的解決方案。
MicroBlaze軟處理器是一種具有5級管道執行以減少每條指令占用的時鐘數(CPI)的32位RISC處理器。該產品的供貨已經有5年時間,最新的版本是MicroBlaze v5.0,它是100%二進制向下兼容的。二進制向下兼容性意味著可以運行較老的MicroBlaze版本或不需要軟件對接就能在MicroBlaze v5.0系統上運行以前的代碼。這就確保了基于MicroBlaze的μC設計真正不會過時。隨著未來版本的MicroBlaze軟IP處理器的推出,用戶將不需要考慮任何過時問題就能夠從較新的功能集上獲益。
當對性能進行了配置之后,MicroBlaze v5.0處理器以210 MHz的速度運行在Virtex-5 LX器件上。賽靈思在嵌入式開發工具套件(EDK)包中向客戶免費提供MicroBlaze軟處理器許可證,此外,不存在單位版稅,所以,不論你銷售的是一片或是一百萬片芯片,你都可以擁有你自己特定的MicroBlaze設計。
為了使你能夠開發一種針對你自己應用的特殊、靈活和獨一無二的解決方案,賽靈思已經開發了稱為Platform Studio的集成開發環境(IDE)。Xilinx Platform Studio (XPS) IDE和工具套件被包含在EDK包之中。XPS 提供讓你在系統的軟件和硬件層中定制各種解決方案的真正靈活的工具。XPS的組成部分包括:一套稱為基本系統構建器的快速IP生成工具(BSB);一套基于GNU/GCC的軟件開發工具;一套稱為XMD的處理器除錯引擎;一套稱為SDK的基于Eclipse的軟件開發套件;一套處理IP外設模塊的擴展庫;MicroBlaze 32位RISC處理器。
賽靈思嵌入式處理器獲得了由RTOS(實時操作系統)中間件、除錯和電子系統級(ESL)工具供應商組成的生態系統的支持,他們也將有助于你定制自己的產品。
平臺IP
賽靈思利用MicroBlaze處理器、外設、SDRAM和閃存控制器提供一種等效于“生命終止”器件的設計。這種來自英特爾公司和其它供應商的針對“生命終止”器件的預集成參考設計解決方案被稱為Platform IP,這種解決方案使你能夠快速地開發并部署真正不過時的方案。
例如,對于英特爾公司的186/188XL系列,表1列出了在這些產品上的外設和它們的賽靈思等效IP模塊。
圖1:186/188XL加上等效于CAN控制器的設計例子,該方案的組成部分包括:
?一個Spartan-3E FPGA平臺;
?一個以104 MHz速度運行在Spartan-3器件上的MicroBlaze 32位RISC CPU;
?等效于186/188XL的通用外設;
?內部存儲器SDRAM和閃存控制器;
? CAN (控制器區域網絡)2.0 A/B MAC
這種靈活的系統設計可以減少各種風險,因為你可以把任何將來的要求以新的定制邏輯模塊、DSP、外設或第三方IP的形式添加到FPGA之中。 此外,該系統還可以被方便地重新配置。
在表2中的設計表示的是對FPGA構造的有效使用。賽靈思的Platform IP以參考設計的形式為英特爾公司和無數其它供應商的“生命終止”產品提供解決方案,使你能夠快速地部署針對你的過時器件的解決方案。
Data-Side Local Memory Bus 數據側本地存儲器總線
System Reset 系統復位
JTAG Block JTAG模塊
MicroBlaze Processor MicroBlaze處理器
Instruction LMB 指令LMB
Data LMB 數據LMB
FSL快速單工連接
Interrupt Control Unit 中斷控制單元
DMA 直接存儲器存取
On-Chip Peripheral Bus –片上外設總線 (OPB)
OPB Arbiter OPB仲裁器
Timer/Counter/Watchdog 定時器/計數器/看門狗
Memory Controller & Refresh Control 存儲控制器和刷新控制
Chip Select Unit 芯片選擇單元
USART/Serial USART/串行口
CAN2.0 A/B
Future 將來的需求
FPGA Fabric FPGA構造
表2:針對實例設計的FPGA構造要求。
=====================
? ?? ? Xilinx MicroBlaze Processor with Internal SDRAM Controller
? ?? ?具有內部SDRAM控制器的賽靈思MicroBlaze處理器
Slices 邏輯片
LUT 查找表
FF觸發器
Block 模塊
RAM隨機存取存儲器
MicroBlaze CPU Core with 16K Cache 具有16K高速緩沖存儲器的MicroBlaze CPU核
DCM on Xilinx FPGA 在Xilinx FPGA上的DCM
OPB Central DMA Controller OPB中央DMA控制器
OPB Timer/Counter (Four) OPB定時器/計數器
OPB Bus Interface OPB總線接口
OPB SDRAM Controller OPBSDRAM控制器
OPB Interrupt Controller OPB中斷控制器
State Machine or an OPB Timer/Counter (Included Above) 狀態機或一個OPB定時器/計數器(包括上面的)
OPB GPIO片上外設總線 (OPB) 通用IO (GPIO)
OPB JTAG UART
Peripherals 外設
Internal Memory Controller (SDRAM Controller) 內部存儲控制器(SDRAM控制器)
OPB Interrupt Controller OPB中斷控制器
Flash Controller 閃存控制器
Total Slices, LUT FF, Block RAM Required 總的邏輯片,LUT FF,所需要的模塊RAM
Spartan-3E Family Products Spartan-3E系列產品
XC3S500E
Utilization 利用率
XC3S1200E
Utilization 利用率
XC3S1600E
Utilization 利用率
=========================
結論
所有的芯片制造商都將在某一個時間點對某些產品實施停產,但是,FPGA是可編程、可再編程且可現場升級的。因此,作為一個FPGA用戶,當你為利用成本、密度和功耗趨勢而在FPGA平臺系列上進行代碼移植時,你可以確信你花費多人年所做的軟件開發可以被安全地投資到一個嵌入式目標設計之中,該嵌入式目標設計可以繼續運行同你第一天編制的代碼一樣的軟件代碼,即使它可能正在新的硬件上運行。
賽靈思處理核使客戶能夠有效地利用FPGA構造并有效地管理成本。當MicroBlaze和PicoBlaze 處理器(后者是采用匯編語言編寫的8位參考設計)被嵌入到FPGA構造之中時,通過你現有和配置的穩定的平臺,可以消除處理器過時的問題。隨著Spartan系列到Virtex 系列FPGA的應用范圍向商用和汽車級工業領域的跨越,軟處理器成為防止設計過時的理想解決方案。你不僅僅能夠獲得可編程邏輯所提供的靈活性、一體化和可升級性,而且可以獲得專門滿足你的設計要求而定制的處理器。
MicroBlaze處理器的軟件本質意味著它可以被例示到無數的平臺FPGA器件之中,覆蓋廣泛的器件配置和價格點。完全采用軟處理器核和可定制IP就可以替代你的過時器件。因為MicroBlaze解決方案是軟處理器IP核,你的設計永遠不會因一個處理器芯片的“生命終止”而過時,后續版本將保持100%的二進制向下兼容性。此外,源代碼許可協議是現成的。
英特爾公司最近宣布他們將退出嵌入式市場。在1970年代,英特爾通過引入8048 μC創造了嵌入式市場,隨后8051μC的普及應用極端火爆。但是,該公司將停止生產8051、251、8096/196、188/186、i960、所有版本的386 (包括386EX)和486,總計起來,大約700種器件型號正在停產。采用基于ASIC的μC/μP (微控制器/微處理器)的客戶預期,其它的供應商也將做出器件過時的宣告,特別是那些最近被私人股權投資公司收購的、要減產特定的μC/μP的供應商,他們可能導致所提供的產品被合并。
大多數設計工程師都關注器件的過時問題,在工業、科學、汽車和醫療市場的工程師對此問題更為關注。因為這些市場的產品生命周期長,基于ASIC的μC/μP可能是開發一個產品的成本極高的方法;因為假如μC/μP停產,那么,它就可能涉及對PCB、軟件接口、板級支持封裝(BSP)開發、驗證、測試和對整個最終產品進行多次質量認證的再一次工程努力。
大多ASIC供應商確實提供諸如最后一次購買(LTB)和硅晶圓購買計劃之類的替代解決方案,但是,兩種選擇的成本都是高昂的。很難預測(更合適的說法是“猜測”)在產品生命周期中需要采購和存儲多少μC/μP,與此同時,庫存管理正試圖避免在貨架上把巨大數量的元器件存放幾個月或幾年。
軟性、靈活的“生命終止”解決方案
當與軟處理IP核相結合時,可編程嵌入式平臺提供獨一無二的優勢。采用一種軟處理IP核及幾個現成的FPGA系列,你可以利用嵌入式行業中范圍廣闊的不同應用的優勢以及跟分立器件市場相關的不確定性。
回避退化風險的一種最佳解決方案是利用在硅器件層上的靈活FPGA構造及具有定制外設的軟IP處理器。賽靈思為英特爾以及其它供應商的生命終止器件提供多種解決方案。
這些解決方案依賴于你現有的軟件代碼基礎。如果它是采用匯編語言編寫的,一種選擇是把代碼與C語言對接;如果這種辦法不可行,你可以試用Xilinx® AllianceCORE?合作伙伴網絡提供的像186和8051一樣成熟的μC/μP IP模塊。這將包括把外設集成到你特定的生命終止器件型號并進行驗證和測試。
圖1:設計選項。
? ???Intel 188/186 Features 英特爾188/186功能
MicroBlaze with Memory Controller 具有存儲控制器的MicroBlaze
CPU Static No Cache (12, 20, 25 MHz) CPU靜態沒有高速緩沖存儲器
MicroBlaze CPU Core with 16K Cache (104 MHz) 具有16K高速緩沖存儲器的MicroBlaze CPU核
Clock Generator 時鐘發生器
DCM on Xilinx FPGA 在Xilinx FPGA上的DCM
Two Independent DMA Channels for External Memory and I/O
? ?? ? 用于外部存儲器和I/O的獨立DMA通道
OPB Central DMA Controller OPB中央DMA控制器
Three Programmable 16-Bit Timers 三可編程16位定時器
OPB Timer/Counter (Four)材OPB定時/計數器
Local Bus Controller 本地總線控制器
OPB Bus Interface OPB總線接口
DRAM Refresh Control Unit DRAM刷新控制單元
OPB Memory Controller Interface OPB存儲控制器接口
Programmable Interrupt Controller 可編程中斷控制器OPB Interrupt Controller OPB中斷控制器
Programmable Wait State Generator 可編程等待狀態發生器
State Machine or an OPB Timer/Counter (Included Above) 狀態機或OPB定時器/計數器(包括上面)
Chip Select Logic 片選邏輯
OPB GPIO片上外設總線 (OPB) 通用IO (GPIO)
System-Level Testing Support 系統級測試支持
OPB JTAG UART
如果現有的軟件代碼采用C語言編寫,賽靈思已經在Spartan?、Virtex? FPGAs、PowerPC? μP 32位 RISC嵌入式Virtex FPGA系列以及流行的MicroBlaze? 軟IP處理器中提供了真正的不會過時的解決方案。
MicroBlaze軟處理器是一種具有5級管道執行以減少每條指令占用的時鐘數(CPI)的32位RISC處理器。該產品的供貨已經有5年時間,最新的版本是MicroBlaze v5.0,它是100%二進制向下兼容的。二進制向下兼容性意味著可以運行較老的MicroBlaze版本或不需要軟件對接就能在MicroBlaze v5.0系統上運行以前的代碼。這就確保了基于MicroBlaze的μC設計真正不會過時。隨著未來版本的MicroBlaze軟IP處理器的推出,用戶將不需要考慮任何過時問題就能夠從較新的功能集上獲益。
當對性能進行了配置之后,MicroBlaze v5.0處理器以210 MHz的速度運行在Virtex-5 LX器件上。賽靈思在嵌入式開發工具套件(EDK)包中向客戶免費提供MicroBlaze軟處理器許可證,此外,不存在單位版稅,所以,不論你銷售的是一片或是一百萬片芯片,你都可以擁有你自己特定的MicroBlaze設計。
為了使你能夠開發一種針對你自己應用的特殊、靈活和獨一無二的解決方案,賽靈思已經開發了稱為Platform Studio的集成開發環境(IDE)。Xilinx Platform Studio (XPS) IDE和工具套件被包含在EDK包之中。XPS 提供讓你在系統的軟件和硬件層中定制各種解決方案的真正靈活的工具。XPS的組成部分包括:一套稱為基本系統構建器的快速IP生成工具(BSB);一套基于GNU/GCC的軟件開發工具;一套稱為XMD的處理器除錯引擎;一套稱為SDK的基于Eclipse的軟件開發套件;一套處理IP外設模塊的擴展庫;MicroBlaze 32位RISC處理器。
賽靈思嵌入式處理器獲得了由RTOS(實時操作系統)中間件、除錯和電子系統級(ESL)工具供應商組成的生態系統的支持,他們也將有助于你定制自己的產品。
平臺IP
賽靈思利用MicroBlaze處理器、外設、SDRAM和閃存控制器提供一種等效于“生命終止”器件的設計。這種來自英特爾公司和其它供應商的針對“生命終止”器件的預集成參考設計解決方案被稱為Platform IP,這種解決方案使你能夠快速地開發并部署真正不過時的方案。
例如,對于英特爾公司的186/188XL系列,表1列出了在這些產品上的外設和它們的賽靈思等效IP模塊。
圖1:186/188XL加上等效于CAN控制器的設計例子,該方案的組成部分包括:
?一個Spartan-3E FPGA平臺;
?一個以104 MHz速度運行在Spartan-3器件上的MicroBlaze 32位RISC CPU;
?等效于186/188XL的通用外設;
?內部存儲器SDRAM和閃存控制器;
? CAN (控制器區域網絡)2.0 A/B MAC
這種靈活的系統設計可以減少各種風險,因為你可以把任何將來的要求以新的定制邏輯模塊、DSP、外設或第三方IP的形式添加到FPGA之中。 此外,該系統還可以被方便地重新配置。
在表2中的設計表示的是對FPGA構造的有效使用。賽靈思的Platform IP以參考設計的形式為英特爾公司和無數其它供應商的“生命終止”產品提供解決方案,使你能夠快速地部署針對你的過時器件的解決方案。
圖1:186/188XL加上等效于CAN控制器的設計例子
Instruction-Side Local Memory Bus 指令側本地存儲器總線
Dual-Port Block RAM 雙口模塊RAMData-Side Local Memory Bus 數據側本地存儲器總線
System Reset 系統復位
JTAG Block JTAG模塊
MicroBlaze Processor MicroBlaze處理器
Instruction LMB 指令LMB
Data LMB 數據LMB
FSL快速單工連接
Interrupt Control Unit 中斷控制單元
DMA 直接存儲器存取
On-Chip Peripheral Bus –片上外設總線 (OPB)
OPB Arbiter OPB仲裁器
Timer/Counter/Watchdog 定時器/計數器/看門狗
Memory Controller & Refresh Control 存儲控制器和刷新控制
Chip Select Unit 芯片選擇單元
USART/Serial USART/串行口
CAN2.0 A/B
Future 將來的需求
FPGA Fabric FPGA構造
表2:針對實例設計的FPGA構造要求。
=====================
? ?? ? Xilinx MicroBlaze Processor with Internal SDRAM Controller
? ?? ?具有內部SDRAM控制器的賽靈思MicroBlaze處理器
Slices 邏輯片
LUT 查找表
FF觸發器
Block 模塊
RAM隨機存取存儲器
MicroBlaze CPU Core with 16K Cache 具有16K高速緩沖存儲器的MicroBlaze CPU核
DCM on Xilinx FPGA 在Xilinx FPGA上的DCM
OPB Central DMA Controller OPB中央DMA控制器
OPB Timer/Counter (Four) OPB定時器/計數器
OPB Bus Interface OPB總線接口
OPB SDRAM Controller OPBSDRAM控制器
OPB Interrupt Controller OPB中斷控制器
State Machine or an OPB Timer/Counter (Included Above) 狀態機或一個OPB定時器/計數器(包括上面的)
OPB GPIO片上外設總線 (OPB) 通用IO (GPIO)
OPB JTAG UART
Peripherals 外設
Internal Memory Controller (SDRAM Controller) 內部存儲控制器(SDRAM控制器)
OPB Interrupt Controller OPB中斷控制器
Flash Controller 閃存控制器
Total Slices, LUT FF, Block RAM Required 總的邏輯片,LUT FF,所需要的模塊RAM
Spartan-3E Family Products Spartan-3E系列產品
XC3S500E
Utilization 利用率
XC3S1200E
Utilization 利用率
XC3S1600E
Utilization 利用率
=========================
結論
所有的芯片制造商都將在某一個時間點對某些產品實施停產,但是,FPGA是可編程、可再編程且可現場升級的。因此,作為一個FPGA用戶,當你為利用成本、密度和功耗趨勢而在FPGA平臺系列上進行代碼移植時,你可以確信你花費多人年所做的軟件開發可以被安全地投資到一個嵌入式目標設計之中,該嵌入式目標設計可以繼續運行同你第一天編制的代碼一樣的軟件代碼,即使它可能正在新的硬件上運行。
賽靈思處理核使客戶能夠有效地利用FPGA構造并有效地管理成本。當MicroBlaze和PicoBlaze 處理器(后者是采用匯編語言編寫的8位參考設計)被嵌入到FPGA構造之中時,通過你現有和配置的穩定的平臺,可以消除處理器過時的問題。隨著Spartan系列到Virtex 系列FPGA的應用范圍向商用和汽車級工業領域的跨越,軟處理器成為防止設計過時的理想解決方案。你不僅僅能夠獲得可編程邏輯所提供的靈活性、一體化和可升級性,而且可以獲得專門滿足你的設計要求而定制的處理器。
MicroBlaze處理器的軟件本質意味著它可以被例示到無數的平臺FPGA器件之中,覆蓋廣泛的器件配置和價格點。完全采用軟處理器核和可定制IP就可以替代你的過時器件。因為MicroBlaze解決方案是軟處理器IP核,你的設計永遠不會因一個處理器芯片的“生命終止”而過時,后續版本將保持100%的二進制向下兼容性。此外,源代碼許可協議是現成的。
評論
查看更多