針對FPGA的完全可配置嵌入式32位RISC處理器
Mico32可以用于各種存儲系統,同時(shí)使用內嵌存儲器用于存儲指令和數據。內嵌存儲器可以建立一個(gè)本地哈佛結構,并允許單周期訪(fǎng)問(wèn)指令和數據。對于更大的存儲器需求,處理器通過(guò)一個(gè)仲裁器連接到其他的存儲器模塊或接口。這可以是用FPGA的存儲器資源來(lái)實(shí)現的 “片上”存儲器,或接口至外部存儲器,諸如SSRAM、Flash和DRAM。處理所有訪(fǎng)問(wèn)協(xié)議至外部存儲器的合適接口模塊是由MSB提供的。提供可選的指令和數據高速緩存,能夠配置成各種選擇(高速緩存的大小,高速緩存塊的大小等等)。
通過(guò)一個(gè)開(kāi)放源碼Wishbone總線(xiàn)接口,該處理器連接到各種外圍元件。針對快速周轉周期,圖形用戶(hù)界面可以輕松和快速地創(chuàng )建處理器平臺。除了標準存儲器控制器,這可能包括各種接口,不僅支持I2C、通用IO、定時(shí)器,UART以及SPI,還能支持更復雜的模塊,如PCI接口或TriSpeed以太網(wǎng)MAC。
直接存儲器訪(fǎng)問(wèn)(DMA)控制器是可用的,添加主器件(master)至Wishbone總線(xiàn),以免除處理器的數據傳輸工作。這也允許有DMA功能的外設高效地直接傳輸數據到存儲系統,從而節省了片上總線(xiàn)的帶寬。
除了外圍元件和DMA,用戶(hù)可以自定義仲裁方案??偩€(xiàn)結構產(chǎn)生器支持主器件(master)方和從器件(Slave)方的總線(xiàn)仲裁。如果能夠滿(mǎn)足系統性能的要求,主器件方總線(xiàn)仲裁提供了一個(gè)簡(jiǎn)單的低成本解決方案。然而,如果在設計中有多個(gè)總線(xiàn)主器件和多個(gè)從器件,在任何時(shí)間主器件方總線(xiàn)仲裁限制與單總線(xiàn)主器件通信。在許多設計中,通過(guò)兩個(gè)或兩個(gè)以上的總線(xiàn)主器件同時(shí)與獨立的從器件進(jìn)行通信,從器件方仲裁改進(jìn)了性能。圖3展示了可用的仲裁方案?!?p align="center">
圖3 仲裁方案
用戶(hù)還可以創(chuàng )建自己的基于Wishbone總線(xiàn)的外設元件,然后通過(guò)整合到MSB自動(dòng)連接到總線(xiàn)。因此,LatticeMico32的架構提供了兩種可能性:第一,人們可以創(chuàng )建定制的元件,將它放人MSB中的可用元件列表(圖4)。第二,可以構建出所謂的Passthru元件,可以將Wishbone接口引出到核的外面,因此,用戶(hù)可以在FPGA的其他部分添加任何邏輯塊。
圖4 創(chuàng )建定制的外圍組件
linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)
評論