freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于fpga的edk教程(已修改)

2025-07-09 17:37 本頁(yè)面
 

【正文】 第1節(jié) 可配置嵌入式系統(tǒng)(EDK)介紹 基于FPGA的可編程嵌入式開發(fā)系統(tǒng) 嵌入式系統(tǒng)經(jīng)歷了從單片計(jì)算機(jī)、工業(yè)控制計(jì)算機(jī)、集中分布式控制系統(tǒng),進(jìn)而發(fā)展到嵌入式智能平臺(tái)的幾個(gè)發(fā)展階段。從獨(dú)立單機(jī)使用發(fā)展到聯(lián)網(wǎng)設(shè)備。從以模擬電路為主發(fā)展到以數(shù)字電路為主、數(shù)?;旌闲停M(jìn)而進(jìn)入全數(shù)字時(shí)代??偟膩碚f,嵌入式系統(tǒng)向著更高性能、更小體積、更低功耗、更廉價(jià)、無處不在的方向發(fā)展。嵌入式系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)朝著基于芯片,特別是片上可編程系統(tǒng)(SOPC)的方向發(fā)展。 從系統(tǒng)對(duì)上市時(shí)間的要求、可定制特性以及集成度等方面考慮,F(xiàn)PGA在嵌入式系統(tǒng)中獲得廣泛應(yīng)用,已經(jīng)從早期的軍事、通信系統(tǒng)等應(yīng)用擴(kuò)展到低成本消費(fèi)電子類等產(chǎn)品中。目前,F(xiàn)PGA在嵌入式系統(tǒng)中,主要有3種使用方式: 狀態(tài)機(jī)模式:可以無外設(shè)、無總線結(jié)構(gòu)和無實(shí)時(shí)操作系統(tǒng),達(dá)到最低的成本,應(yīng)用于VGA和LCD控制等,根據(jù)用戶設(shè)計(jì)可達(dá)到不同的性能。 單片機(jī)模式:包括一定的外設(shè),可以利用實(shí)時(shí)操作系統(tǒng)和總線結(jié)構(gòu),以中等的成本,應(yīng)用于控制和儀表,達(dá)到中等的性能。 定制嵌入模式:高度集成擴(kuò)充的外設(shè),實(shí)時(shí)操作系統(tǒng)和總線結(jié)構(gòu),達(dá)到高性能,應(yīng)用于網(wǎng)絡(luò)和無線通信等。 采用90nm生產(chǎn)工藝之后,F(xiàn)PGA器件處理能力更強(qiáng),且成本低、功耗少,已取代了相當(dāng)數(shù)量的中小規(guī)模ASIC器件和處理器,使嵌入式系統(tǒng)具備片上系統(tǒng)(SOC)的規(guī)模和動(dòng)態(tài)可編程的能力,具有明顯的優(yōu)勢(shì),成為嵌入式應(yīng)用的主力軍之一。 Xilinx公司的解決方案 1.解決方案 Xilinx公司的嵌入式解決方案以3類RISC結(jié)構(gòu)的微處理器為核心,涵蓋了系統(tǒng)硬件設(shè)計(jì)和軟件調(diào)試的各個(gè)方面。3類嵌入式內(nèi)核分別為:PicoBlaze、MicroBlaze和PowerPC,其中PicoBlaze和MicroBlaze是可裁剪的軟核處理器,PowerPC為硬核處理器。 PicoBlaze是由VHDL語言在早期開發(fā)的小型8位軟處理器內(nèi)核包,用匯編語言編寫的程序經(jīng)過編譯后放入FPGA的塊RAM存儲(chǔ)區(qū),匯編器可在3s內(nèi)編譯完存儲(chǔ)在塊RAM中的程序。 MicroBlaze采用功能強(qiáng)大的32位流水線RISC結(jié)構(gòu),包含32個(gè)32位通用寄存器和一個(gè)可選的32位移位寄存器,時(shí)鐘可達(dá)150MHz,在Virtex 2 Pro以及更高系列的平臺(tái)上,運(yùn)行速度可達(dá)120DMIPs(DhrystoneMIPS),占用資源不到1000個(gè)Slice。 PowerPC是32位PowerPC嵌入式環(huán)境架構(gòu),確定了若干系統(tǒng)參數(shù),用以保證在應(yīng)用程序級(jí)實(shí)現(xiàn)兼容,增加了其設(shè)備擴(kuò)展的靈活性。Xilinx將PowerPC 405處理器內(nèi)核整合到Virtex 2 Pro系列以及更高等級(jí)系列的芯片中,允許該硬IP核能夠深入到FPGA架構(gòu)的任何部位,提供高端嵌入式應(yīng)用的FPGA解決方案。Virtex 4以及Virtex 5系列部分芯片中集成了2~4個(gè)PowerPC405處理器核。 目前使用較多的嵌入式內(nèi)核是MicroBlaze和PowerPC,工作頻率可達(dá)到數(shù)百兆赫茲,還添加了新的浮點(diǎn)單元選項(xiàng),使嵌入式開發(fā)人員可將系統(tǒng)性能提升至軟件仿真速度的百倍以上,非常適合針對(duì)網(wǎng)絡(luò)、電信、數(shù)據(jù)通信、嵌入式和消費(fèi)等市場(chǎng)的產(chǎn)品。 2.開發(fā)工具 嵌入式開發(fā)套件(EDK)是用于設(shè)計(jì)嵌入式可編程系統(tǒng)的全面的解決方案,該套件包括了嵌入式軟件工具(Platform Studio)以及嵌入式 IBM PowerPC硬件處理器核和/或Xilinx MicroBlaze軟處理器核進(jìn)行Xilinx平臺(tái)FPGA設(shè)計(jì)時(shí)所需的技術(shù)文檔和IP。注意:這里嵌入式軟件工具指用來產(chǎn)生、編輯、編譯、鏈接、加載和調(diào)試高級(jí)編程語言(通常是C或C++)代碼的工具,以便在處理器引擎上執(zhí)行。 此外,Xilinx公司提供了大量的硬件平臺(tái)(即評(píng)估板),提供了大量的軟、硬件設(shè)計(jì)參考,使得設(shè)計(jì)人員可以快速了解嵌入式系統(tǒng)的基本操作和大量的IP核的使用方法,并對(duì)其完成評(píng)估,以確定最優(yōu)的設(shè)計(jì)方案。一般來講,最快捷的硬件設(shè)計(jì)方式是,在設(shè)計(jì)系統(tǒng)時(shí)以相應(yīng)的評(píng)估板為母板,然后對(duì)其進(jìn)行必要的修改。 第2節(jié) Xilinx嵌入式開發(fā)系統(tǒng)組成介紹 片內(nèi)微處理器軟核MicroBlaze 1.MicroBlaze體系結(jié)構(gòu) MicroBlaze軟核是一種針對(duì)Xilinx FPGA器件而優(yōu)化的功能強(qiáng)大的32位微處理器,是業(yè)界最快的軟處理器IP核解決方案,支持CoreConnect總線的標(biāo)準(zhǔn)外設(shè)集合,具有兼容性和重復(fù)利用性,最精簡(jiǎn)的核只需要將近400個(gè)Slice。 MicroBlaze軟核內(nèi)部采用RISC架構(gòu)和哈佛結(jié)構(gòu)的32位指令和數(shù)據(jù)總線,內(nèi)部有32個(gè)通用寄存器R0~R2個(gè)特殊寄存器程序指針(PC)和處理器狀態(tài)寄存器(MSR)、1個(gè)ALU單元、1個(gè)移位單元和兩級(jí)中斷響應(yīng)單元等基本模塊,還可具有3/5級(jí)流水線、桶形移位器、內(nèi)存管理/內(nèi)存保護(hù)單元、浮點(diǎn)單元(FPU)、高速緩存、異常處理和調(diào)試邏輯等可根據(jù)性能需求和邏輯區(qū)域成本任意裁剪的高級(jí)特性,極大地?cái)U(kuò)展了MicroBlaze的應(yīng)用范圍。MicroBlaze處理器的內(nèi)核仍在不斷更新中,目前最新版為MicroBlaze ,其內(nèi)部架構(gòu)如圖91所示。 圖91 MicroBlaze內(nèi)部架構(gòu)示意圖 MicroBlaze處理器架構(gòu)均衡了執(zhí)行性能和設(shè)計(jì)尺寸,但由于其最高工作頻率由FPGA芯片提供,所以計(jì)算性能隨處理器配置、實(shí)現(xiàn)工具結(jié)果、目標(biāo)FPGA架構(gòu)和器件速度級(jí)別的不同而不同。表91給出了不同F(xiàn)PGA芯片上的MicroBlaze性能對(duì)比表,其結(jié)果不代表一般嵌入式應(yīng)用的計(jì)算性能。 表91 MicroBlaze內(nèi)核的最大Dhrystone性能 注:DMIPS表示每秒執(zhí)行的Dhrystone指令數(shù)量。2.MicroBlaze的總線接口 CoreConnect是由IBM開發(fā)的片上總線通信鏈,它使多個(gè)芯片核相互連接成為一個(gè)完整的新芯片成為可能。Xilinx以IBM CoreConnect為嵌入式處理器的設(shè)計(jì)基礎(chǔ),具有豐富的接口資源。目前,最新版本的MicroBlaze軟核支持的接口標(biāo)準(zhǔn)有: 帶字節(jié)允許的OPB(Onchip Peripheral Bus,片上外設(shè)總線); 高速的LMB(Local Memory Bus,本地存儲(chǔ)器總線)接口; FSL主從設(shè)備接口; XCL(Xilinx Cache Link,Xilinx緩存鏈路)接口; 與MDM(Microprocessor Debug Module,微處理器調(diào)試模塊)連接的調(diào)試接口。 其中,OPB是對(duì)IBM Core Connect片上總線標(biāo)準(zhǔn)的部分實(shí)現(xiàn),適用于將IP核作為外設(shè)連接到MicroBlaze系統(tǒng)中。LMB用于實(shí)現(xiàn)對(duì)片上的blockRAM的高速訪問。FSL是MicroBlaze軟核特有的一個(gè)基于FIFO的單向鏈路,可以實(shí)現(xiàn)用戶自定義IP核與MicroBlaze內(nèi)部通用寄存器的直接相連;而XCL則是MicroBlaze軟核新增加的,用于實(shí)現(xiàn)對(duì)片外存儲(chǔ)器的高速訪問。MicroBlaze軟核還有專門的調(diào)試接口,通過參數(shù)設(shè)置,開發(fā)人員可以只使用特定應(yīng)用所需要的處理器特性。Xilinx提供了大量的外設(shè)IP Core,可外掛到MicroBlaze的OPB總線上,如DMA單元、以太網(wǎng)MAC層處理器、PCI/PCIe接口、串口以及USB等,如圖92所示。圖92 MicroBlaze支持的外設(shè)接口示意圖 其中,DMA和多端口存儲(chǔ)器控制器是高速接口,OPB屬于低速接口總線,一個(gè)外設(shè)一般不能同時(shí)和這兩類總線相連。以太網(wǎng)MAC控制器模塊之所以和兩類總線連接,是因?yàn)槠淇刂平涌诤蚈PB總線相連,數(shù)據(jù)接口和高速的DMA總線連接。3.MicroBlaze寄存器 1)通用寄存器 MicroBlaze內(nèi)核中的32個(gè)32位的通用寄存器記為R0~R31。寄存器并不是由外部復(fù)位輸入(如reset或debugrst腳)復(fù)位,而是在比特流下載的時(shí)候復(fù)位。通用寄存器的描述如表92所示。 表92 MicroBlaze通用寄存器功能表 2)特殊寄存器 程序指針(PC)寄存器:存儲(chǔ)下一條指令的地址。它可以由一個(gè)MFS指令讀出且不能由MTS指令寫入。當(dāng)使用MFS指令的時(shí)候,將Sa置為00000或rpc將定義PC寄存器。表中內(nèi)容為程序指針執(zhí)行中的指令的地址。也就是說,“mfs r2 rpc” 指令將把mfs指令自己的地址存入R2中。 機(jī)器狀態(tài)寄存器(MSR):包含了處理器的控制和狀態(tài)比特,可以通過MFS指令讀,也可以通過MTS指令或者專用的指令MSRSET、MSRCLR指令寫。當(dāng)對(duì)MSR進(jìn)行讀操作時(shí),bit29作為進(jìn)位位被復(fù)制到bit0位。寫MSR需要一個(gè)時(shí)鐘周期的延時(shí),當(dāng)用MTS指令向MSR寫指令時(shí),在MTS指令執(zhí)行結(jié)束一個(gè)時(shí)鐘周期之后,寫入的值才生效。所有寫入bit0的值將被忽略。當(dāng)使用MTS指令或MFS指令的時(shí)候,將sx置為0001或rmsr被定義為對(duì)MSR的操作。 4.MicroBlaze指令集 MicroBlaze指令字為32位,有A型和B型兩種類型指令。A型指令有兩個(gè)源寄存器和一個(gè)目的寄存器,用以完成寄存器到寄存器間的數(shù)據(jù)運(yùn)算;B型指令有一個(gè)源寄存器、一個(gè)目的寄存器和一個(gè)16位的立即數(shù)(通過在B型指令前加一個(gè)IMM指令可將其擴(kuò)展到32位),可以進(jìn)行寄存器和立即數(shù)間的數(shù)據(jù)運(yùn)算。其指令按功能劃分有邏輯運(yùn)算、算術(shù)運(yùn)算、分支、存儲(chǔ)器讀/寫和特殊指令等。類型A和類型B的指令格式如圖93所示。 圖93(a) 類型A指令格式 圖93(b) 類型B指令格式 圖93 MicroBlaze指令格式 Microblaze指令執(zhí)行的流水線是并行流水線,它分為3級(jí)流水:取指、譯碼和執(zhí)行,如圖94所示。圖94 MicroBlaze的流水線 完整的MicroBlaze指令集見參考文獻(xiàn)[11]。 片內(nèi)微處理器PowerPC 1.PowerPC體系結(jié)構(gòu) PowerPC是由蘋果、IBM和摩托羅拉公司共同開發(fā)的微處理器結(jié)構(gòu),采用精簡(jiǎn)指令計(jì)算架構(gòu)(RISC),并形成了一個(gè)開放的標(biāo)準(zhǔn)。Xilinx芯片中內(nèi)嵌的PowerPC結(jié)構(gòu)經(jīng)過IBM公司優(yōu)化,以較簡(jiǎn)單的、快速的運(yùn)算為基礎(chǔ),促成微處理器在一個(gè)給定的時(shí)鐘速度下執(zhí)行較多的指令,主要包括PowerPC 405系列。PowerPC提供了3個(gè)不同層面的應(yīng)用,從下往上分別是用戶指令集結(jié)構(gòu)(UISA)、虛擬環(huán)境結(jié)構(gòu)(VEA)和操作環(huán)境結(jié)構(gòu)(OEA),各層功能如表93所列。 表93 PowerPC 3層結(jié)構(gòu)的說明 這種層次結(jié)構(gòu)提供了軟件兼容的靈活性。此外,所有的PowerPC都符合UISA規(guī)范,保證PowerPC對(duì)應(yīng)用程序的兼容性,而VEA和OEA則可以有不同版本。Xilinx FPGA芯片中內(nèi)嵌的32位硬PowerPC核,可以實(shí)現(xiàn)高性能嵌入式應(yīng)用。目前,在單片F(xiàn)PGA芯片中可最多集成2個(gè)硬PowerPC核。PowerPC集成了5級(jí)標(biāo)量流水線,具有獨(dú)立的指令緩存和數(shù)據(jù)緩存、1個(gè)JTAG端口、Trace FIFO、多個(gè)定時(shí)器和一個(gè)內(nèi)存管理單元(MMU)。此外,Xilinx的高端器件還集成了輔助處理器單元控制器(APU),可直接控制FPGA架構(gòu)內(nèi)的硬件指令協(xié)處理。PowerPC不占用FPGA內(nèi)部任何邏輯資源,其內(nèi)部架構(gòu)如圖95所示。 圖95 PowerPC硬核的內(nèi)部結(jié)構(gòu)示意圖 2.Power PC總線接口與傳統(tǒng)的總線接口不同,由于Power PC處理器內(nèi)核被嵌入到FPGA芯片中,利用Xilinx的IP植入和主動(dòng)互連技術(shù),幾百個(gè)處理器結(jié)點(diǎn)是直接連接到FPGA的邏輯和存儲(chǔ)器陣列。這種總體植入在硬件/軟件的系統(tǒng)結(jié)構(gòu)中提供了超強(qiáng)的靈活性,可以有效地將復(fù)雜的功能成分在硬件中高速地實(shí)現(xiàn)和在軟件中高度靈活地實(shí)現(xiàn)。這種直接連接的配置克服了利用總線在FPGA和附加外部處理器之間接口的瓶頸。 Power PC處理器也采用CoreConnect技術(shù),可運(yùn)行在100133MHz的高帶寬64位總線。為了使靈活性達(dá)到最大,CoreConnect結(jié)構(gòu)是作為軟IP在FPGA中實(shí)現(xiàn)的。和Microblaze軟核一樣,Power PC也具備LMB和OPB總線,分別用來接口高速和低速外設(shè)到PowerPC處理器。此外,Power PC還具有器件控制寄存器總線,可完成對(duì)通用外設(shè)器件寄存器的訪問。 3.PowerPC寄存器 PowerPC的寄存器可分為通用寄存器、專用寄存器、機(jī)器狀態(tài)寄存器、條件寄存器和芯片控制寄存器5大類,如表94所列。表94 PowerPC寄存器列表 1)通用寄存器 PPC(Power PC的縮寫)有32個(gè)32比特的通用寄存器,可通過加載指令從內(nèi)存中讀取數(shù)值或通過存儲(chǔ)指令將數(shù)值寫入內(nèi)存。所有的計(jì)算指令的操作數(shù)都是通用寄存器,且輸出結(jié)果也都存放于通用寄存器中,所有通用寄存器都可通過軟件代碼訪問。 2)專用寄存器 PPC有豐富的32位專用寄存器,可訪問額外的處理器資源,如計(jì)數(shù)寄存器、連接寄存器、調(diào)試資源、計(jì)數(shù)器、中斷寄存器以及其余寄存器資源等。大多數(shù)專用寄存器是應(yīng)用程序所不能訪問的,只有計(jì)數(shù)器和連接寄存器等少數(shù)專用寄存器能被所有的軟件所訪問。 3)機(jī)器狀態(tài)寄存器 32比特機(jī)器狀態(tài)寄存器(MSR)定義了PowerPC處理器的工作狀態(tài),允許用戶修改。 4)條件寄存器 32位的條件寄存器(CR)可分為8個(gè)區(qū)域(CR0CR7),每區(qū)域包含4個(gè)比特,可用于控制所有的條件分支。算術(shù)指令可配置CR0,比較指令可配置所有的CR數(shù)值。應(yīng)用軟件可訪問所有的CR數(shù)值。 5)芯片控制寄存器 32比特芯片控制寄存器用于配置、控制和讀取外部處理器,雖然芯片控制寄存器不是PPC的一部分,但仍可在特殊軟件中通過mtdcr和mfdcr指令來訪問。 3.PowerPC指令集 PowerPC實(shí)現(xiàn)5級(jí)流水線,包括取指、譯碼、執(zhí)行、寫回、加載寫回。PowerPC的指令包括數(shù)學(xué)運(yùn)算、邏輯運(yùn)算、比較、跳轉(zhuǎn)、中斷等指令,分為B、D、I、M、SC、X、XFX、XL以及XO類型,詳細(xì)的指令集見參考文獻(xiàn)[12]。 PowerPC執(zhí)行指令的速度接近每周期執(zhí)行一條指令,各類指令的典型執(zhí)行速度如表95所列。 表95 PowerPC的指令執(zhí)行周期列表 常用的IP核以及設(shè)備驅(qū)動(dòng) Xilinx在EDK環(huán)境中提供了嵌入式系統(tǒng)中常用的設(shè)備,包括:通用I/O設(shè)備、中斷控制器設(shè)備、定時(shí)器、外部存儲(chǔ)器控制器以及以太網(wǎng)、串口等高、低通信設(shè)備。上述外設(shè)以及外設(shè)驅(qū)動(dòng)都以IP Core的形式給出,便于使用。本節(jié)主要介紹CPU系統(tǒng)所必需的基本外設(shè),如通用I/O、中斷以及外存儲(chǔ)器控制器。 1.通用I/O設(shè)備(GPIO) 1)GPIO結(jié)構(gòu) 通用
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號(hào)-1