




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第12章NIOSII常用外設(shè)使用第一頁,共103頁。第12章NIOS常用外設(shè)第二頁,共103頁。介紹NiosII處理器常用外圍設(shè)備(Peripherals)內(nèi)核的特點、配置以及軟件編程。這些外設(shè)都是以IP核的形式提供給用戶的,用戶可以根據(jù)實際需要把這些IP核集成到NiosII系統(tǒng)中去。主要介紹:硬件結(jié)構(gòu);內(nèi)核的特性核接口;SOPCBuilder中各內(nèi)核的配置選項;軟件編程。主要內(nèi)容第三頁,共103頁。第12章目錄12.1并行輸入/輸出(PIO)內(nèi)核12.2定時器內(nèi)核12.3CFI(通用Flash)控制器內(nèi)核12.4SDRAM控制器內(nèi)核12.5UART內(nèi)核12.6EPCS控制器內(nèi)核12.7JTAG_UART內(nèi)核12.8SPI內(nèi)核12.9DMA內(nèi)核12.10帶Avalon接口的互斥內(nèi)核12.11帶Avalon接口的郵箱內(nèi)核12.12SystemID內(nèi)核第四頁,共103頁。12.1并行輸入/輸出內(nèi)核并行輸入/輸出內(nèi)核(PIO內(nèi)核①)提供Avalon從控制器端口和通用I/O口②間的存儲器映射接口。PIO內(nèi)核提供簡單的I/O訪問用戶邏輯或外部設(shè)備,例如:控制LED讀取開關(guān)量控制顯示設(shè)備配置并且與片外設(shè)備通信說明:SOPCBuilder中提供了PIO內(nèi)核,可以很容易將PIO內(nèi)核集成到SOPCBuilder生成的系統(tǒng)中。通用I/O端口既連接到片內(nèi)邏輯又連接到外部設(shè)備的FPGAI/O管腳。第五頁,共103頁。12.1并行輸入/輸出內(nèi)核PIO內(nèi)核簡介每個Avalon接口的PIO內(nèi)核可提供32個I/O端口且端口數(shù)可設(shè)置,用戶可以添加一個或多個PIO內(nèi)核。CPU通過I/O寄存器控制I/O端口的行為。I/O口可以配置為輸入、輸出和三態(tài),還可以用來檢測電平事件和邊沿事件。最多32個I/O端口CPU內(nèi)核PIO內(nèi)核寄存器NiosII系統(tǒng)PIO內(nèi)核Pio[31]Pio[30]Pio[29]Pio[3]Pio[2]Pio[1]Pio[0]Pio[7]Pio[6]Pio[5]Pio[4]Pio[3]Pio[2]Pio[1]Pio[0]PIO內(nèi)核端口數(shù)可設(shè)置CPU通過寄存器控制I/O端口行為第六頁,共103頁。12.1并行輸入/輸出內(nèi)核PIO內(nèi)核寄存器描述注:①該寄存器是否存在取決于硬件的配置。如果該寄存器不存在,那么讀寄存器將返回未定義的值,寫寄存器無效。②寫任意值到邊沿捕獲寄存器將清除所有位為0?!阿?/p>
該寄存器是否存在取決于硬件的配置。如果該寄存器不存在,那么讀寄存器將返回未定義的值,寫寄存器無效?!钡谄唔?,共103頁。12.1并行輸入/輸出內(nèi)核雙擊PIO內(nèi)核配置選項第八頁,共103頁。12.1并行輸入/輸出內(nèi)核PIO內(nèi)核配置選項BasicSettings選項卡I/O口寬度:可設(shè)置為1~32的任何整數(shù)值。第九頁,共103頁。12.1并行輸入/輸出內(nèi)核PIO內(nèi)核配置選項BasicSettings選項卡第十頁,共103頁。12.1并行輸入/輸出內(nèi)核
-PIO內(nèi)核配置選項InputOptions選項卡邊沿捕獲寄存器中斷寄存器RisingEdge:上升沿FallingEdge:下降沿EitherEdge:上升或下降沿Level:輸入為高電平且中斷使能,則PIO內(nèi)核產(chǎn)生一個IRQ。Edge:邊沿捕獲寄存器相應(yīng)位為1且中斷使能,則PIO內(nèi)核產(chǎn)生一個IRQ。說明:當(dāng)指定類型的邊沿在輸入端口出現(xiàn)時,邊沿捕獲寄存器對應(yīng)位置1。說明:中斷只有高電平中斷,如果希望低電平時中斷,則需在該I/O輸入引腳前加一個“非”門。第十一頁,共103頁。12.1并行輸入/輸出內(nèi)核PIO內(nèi)核配置選項Simulation選項卡當(dāng)需要對外進(jìn)行仿真時,要設(shè)置simulation選項卡。第十二頁,共103頁。12.1并行輸入/輸出內(nèi)核軟件編程PIO內(nèi)核提供了對硬件進(jìn)行寄存器級訪問的文件。Altera_avalon_pio_regs.h該文件定義了內(nèi)核的寄存器映射并提供硬件設(shè)備訪問宏定義??赏ㄟ^閱讀上述文件以熟悉PIO設(shè)備的軟件訪問方法,但不應(yīng)該修改文件。第十三頁,共103頁。第12章目錄12.1并行輸入/輸出(PIO)內(nèi)核12.2定時器內(nèi)核12.3CFI(通用Flash)控制器內(nèi)核12.4SDRAM控制器內(nèi)核12.5UART內(nèi)核12.6EPCS控制器內(nèi)核12.7JTAG_UART內(nèi)核12.8SPI內(nèi)核12.9DMA內(nèi)核12.10帶Avalon接口的互斥內(nèi)核12.11帶Avalon接口的郵箱內(nèi)核12.12SystemID內(nèi)核第十四頁,共103頁。12.2定時器內(nèi)核定時器掛載在Avanlon總線上的32位定時器,特性如下:兩種計數(shù)模式:單次減1和連續(xù)減1計數(shù)模式;定時器到達(dá)0時產(chǎn)生中斷請求(IRQ);可選擇設(shè)定為看門狗定時器,計算到達(dá)0時復(fù)位系統(tǒng);可選擇輸出周期性脈沖,在定時器計算到達(dá)0時輸出脈沖;可由軟件啟動、停止或復(fù)位定時器;可由軟件使能或屏蔽定時器中斷。定時器內(nèi)核綜述第十五頁,共103頁。12.2定時器內(nèi)核定時器內(nèi)核綜述Avanlon總線從機(jī)接口到內(nèi)核邏輯StatusControlPeriodhPeriodlSnaphSnapl控制邏輯計數(shù)器寄存器文件TimeoutpulseIRQReset數(shù)據(jù)總線地址總線(看門狗)第十六頁,共103頁。12.2定時器內(nèi)核定時器可進(jìn)行的基本操作:Avalon主控制器通過對控制寄存器執(zhí)行不同的寫操作來控制:啟動和停止定時器使能/禁能IRQ指定單次減1計數(shù)或連續(xù)減1計數(shù)模式處理器讀狀態(tài)寄存器獲取當(dāng)前定時器的運(yùn)行信息。處理器可通過寫數(shù)據(jù)到periodl和periodh寄存器來設(shè)定定時器周期。定時器內(nèi)核綜述第十七頁,共103頁。12.2定時器內(nèi)核定時器可進(jìn)行的基本操作如下所述:內(nèi)部計數(shù)器計數(shù)減到0,立即從周期寄存器開始重新裝載。處理器可以通過寫snapl或snaph獲取計數(shù)器的當(dāng)前值。當(dāng)計數(shù)器計數(shù)到達(dá)0時:如果IRQ被使能,則產(chǎn)生一個IRQ(可選的)脈沖發(fā)生器輸出有效持續(xù)一個時鐘周期(可選的)看門狗輸出復(fù)位系統(tǒng)定時器內(nèi)核綜述第十八頁,共103頁。12.2定時器內(nèi)核定時器寄存器描述RUNTOSTOPSTARTCONTITOperiodlPeriodhsnaplsnaph注:*表示該位保留,讀取值未定義。第十九頁,共103頁。12.2定時器內(nèi)核定時器內(nèi)核配置選項Initialperod:用于預(yù)設(shè)硬件生成后的定時器周期,即perodl和periodh寄存器的值。第二十頁,共103頁。12.2定時器內(nèi)核定時器內(nèi)核配置選項Writeableperod:使能:主控制器可通過寫period而改變向下計數(shù)周期。禁能:向下計數(shù)周期由TimeoutPeriod確定,且period寄存器不在硬件中存在。Readablesnapshot:使能:主控制器可讀當(dāng)前向下計數(shù)器的值。禁能:計數(shù)器的狀態(tài)僅通過狀態(tài)寄存器或IRQ信號來檢測。Snap寄存器不在硬件中存在。Start/Stopcontrolbits:使能:主控制可通過寫START和STOP位來啟動和停止定時器。禁能:定時器連續(xù)運(yùn)行。第二十一頁,共103頁。12.2定時器內(nèi)核定時器內(nèi)核配置選項Timeoutpulse:使能:定時器到0時,timeout_pulse輸出一個時鐘周期的高電平。禁能:timeout_out信號不存在。Systemresetontimeout:使能:定時器到0時,resetrequest信號輸出一個時鐘周期的高電平使系統(tǒng)復(fù)位。禁能:resetrequest信號不存在。第二十二頁,共103頁。12.2定時器內(nèi)核Altera為NiosII處理器用戶提供硬件抽象層(HAL)系統(tǒng)庫驅(qū)動程序,允許用戶使用HAL應(yīng)用程序接口(API)函數(shù)來訪問定時器內(nèi)核。HAL系統(tǒng)庫支持系統(tǒng)時鐘驅(qū)動程序時間標(biāo)記驅(qū)動程序軟件文件軟件編程第二十三頁,共103頁。第12章目錄12.1并行輸入/輸出(PIO)內(nèi)核12.2定時器內(nèi)核12.3CFI(通用Flash)控制器內(nèi)核12.4SDRAM控制器內(nèi)核12.5UART內(nèi)核12.6EPCS控制器內(nèi)核12.7JTAG_UART內(nèi)核12.8SPI內(nèi)核12.9DMA內(nèi)核12.10帶Avalon接口的互斥內(nèi)核12.11帶Avalon接口的郵箱內(nèi)核12.12SystemID內(nèi)核第二十四頁,共103頁。12.3CFI控制器內(nèi)核對于NiosII處理器,Altera為CFI控制器提供硬件抽象層(HAL)驅(qū)動程序。驅(qū)動程序提供了遵循CFI接口規(guī)范的Flash存儲器的通用訪問函數(shù)。因此,用戶不需要寫任何代碼就可以訪問遵循CFI接口規(guī)范的Flash器件。CFI控制器內(nèi)核綜述第二十五頁,共103頁。12.3CFI控制器內(nèi)核CFI控制器內(nèi)核綜述片上外設(shè)Avalon三態(tài)橋Avalon主控制器(eg.CPU)MSSAvalon交換構(gòu)架SMMFlash其它ENBFlash儲存器S其它儲存器SShipSelectread_n,write_nShipSelectread_n,write_nSAvalon主控制器接口Avalon從控制器接口AlteraFPGA三態(tài)緩沖器第二十六頁,共103頁。12.3CFI控制器內(nèi)核CFI控制器內(nèi)核設(shè)置CFI控制器框圖Attributes:用于完成Presets、size和BoardInfo這3個選項的設(shè)定。Presets:選擇預(yù)設(shè)好的CFIFlash。Size:地址寬度:Flash地址總線寬度。數(shù)據(jù)寬度:Flash數(shù)據(jù)總線寬度。BoardInfo:用于映射CFI控制器目標(biāo)系統(tǒng)板元件的已知芯片。第二十七頁,共103頁。12.3CFI控制器內(nèi)核CFI控制器內(nèi)核設(shè)置CFI控制器框圖Timing:用于完成時序設(shè)置,包括建立時間、等待周期、保持時間等。Setup:chipselect有效后,read或write信號有效前所需的時間。Wait:每次數(shù)據(jù)傳輸過程中,read或write信號需要保持的時間。Hold:write信號無效后,chipselect信號無效前所需要的時間。Units:用于Setup、Wait和Hold值的時間單位,可以是ns、us、ms和時鐘周期。第二十八頁,共103頁。Avalon主控制器可以直接讀Flash芯片。對于NiosII處理器用戶,Altera提供HAL系統(tǒng)庫驅(qū)動程序和API函數(shù)來支持對Flash存儲器的擦除和寫操作。12.3CFI控制器內(nèi)核軟件編程第二十九頁,共103頁。第12章目錄12.1并行輸入/輸出(PIO)內(nèi)核12.2定時器內(nèi)核12.3CFI(通用Flash)控制器內(nèi)核12.4SDRAM控制器內(nèi)核12.5UART內(nèi)核12.6EPCS控制器內(nèi)核12.7JTAG_UART內(nèi)核12.8SPI內(nèi)核12.9DMA內(nèi)核12.10帶Avalon接口的互斥內(nèi)核12.11帶Avalon接口的郵箱內(nèi)核12.12SystemID內(nèi)核第三十頁,共103頁。12.4SDRAM控制器內(nèi)核SDRAM控制器內(nèi)核提供一個連接片外SDRAM芯片的Avalon接口,并可以同時連接多個SDRAM芯片。SDRAM控制器內(nèi)核具有不同數(shù)據(jù)寬度(8、16、32或64位)、不同內(nèi)存容量和多片選擇等設(shè)置。SDRAM控制器不支持禁能的時鐘模式。SDRAM控制器使cke引腳永久地有效。SDRAM控制器內(nèi)核概述第三十一頁,共103頁。12.4SDRAM控制器內(nèi)核SDRAM控制器內(nèi)核概述PPL(片內(nèi)鎖相環(huán)):通常用于調(diào)整SDRAM控制器內(nèi)核與SDRAM芯片之間的相位差。Avalon三態(tài)橋:SDRAM控制器可與現(xiàn)有三態(tài)橋共用引腳,這用能減少I/O引腳使用,但將降低性能。
fMAX(最高時鐘頻率):目標(biāo)FPGA的系列和整個硬件設(shè)計都會影響硬件設(shè)計可實現(xiàn)的最高時鐘頻率。第三十二頁,共103頁。12.4SDRAM控制器內(nèi)核SDRAM內(nèi)核配置選項可直接選擇預(yù)定義的SDRAM芯片型號,對話框?qū)⒆詣痈淖兿旅鎯蓚€選項卡的值來匹配指定配置。MemoryProfile:用于指定SDRAM的結(jié)構(gòu)。第三十三頁,共103頁。12.4SDRAM控制器內(nèi)核數(shù)據(jù)寬度
允許值:8、16、32、64
默認(rèn)值:32
描述:該值確定dq總線(數(shù)據(jù))和dqm總線(字節(jié)使能)的寬度。具體數(shù)值請查閱SDRAM數(shù)據(jù)手冊。第三十四頁,共103頁。12.4SDRAM控制器內(nèi)核結(jié)構(gòu)設(shè)置-片選允許值:1、2、4、8
默認(rèn)值:1
描述:獨(dú)立芯片的數(shù)目在SDRAM子系統(tǒng)中選擇。通過使用多個片選信號,SDRAM控制器可組合多個SDRAM芯片為一個存儲器子系統(tǒng)。第三十五頁,共103頁。12.4SDRAM控制器內(nèi)核結(jié)構(gòu)設(shè)置-區(qū)允許值:2、4
默認(rèn)值:4
描述:區(qū)的數(shù)目,該值確定連接到SDRAM的ba總線(區(qū)地址)寬度。具體數(shù)值請查閱SDRAM數(shù)據(jù)手冊。第三十六頁,共103頁。12.4SDRAM控制器內(nèi)核地址寬度設(shè)計-行允許值:11、12、13、14
默認(rèn)值:12
描述:行地址位的數(shù)目。該值確定addr總線的寬度。具體數(shù)值請查閱SDRAM數(shù)據(jù)手冊。第三十七頁,共103頁。12.4SDRAM控制器內(nèi)核地址寬度設(shè)計-列允許值:>=8,且小于行的值默認(rèn)值:8
描述:列地址位的數(shù)目。例如,SDRAM排列為4096行、512(29)列,所以列的值為9。具體數(shù)值請查閱SDRAM數(shù)據(jù)手冊。第三十八頁,共103頁。12.4SDRAM控制器內(nèi)核通過三態(tài)橋共用管腳允許值:是、否默認(rèn)值:否描述:當(dāng)設(shè)為No時,所有管腳都專用于SDRAM芯片。當(dāng)設(shè)為Yes時,addr,dq和dqm管腳在系統(tǒng)內(nèi)可與三態(tài)橋共享。第三十九頁,共103頁。12.4SDRAM控制器內(nèi)核包括系統(tǒng)測試臺的功能存儲模塊允許值:是、否默認(rèn)值:是描述:當(dāng)打開選項時,SOPCBuilder創(chuàng)建SDRAM芯片的功能仿真模型。該默認(rèn)的存儲器模型加速創(chuàng)建的過程和檢驗使用SDRAM控制器的系統(tǒng)。第四十頁,共103頁。12.4SDRAM控制器內(nèi)核SDRAM內(nèi)核配置選項Timing:根據(jù)在SDRAM芯片數(shù)據(jù)手冊中提供的參數(shù)來設(shè)置芯片的時序規(guī)范第四十一頁,共103頁。12.4SDRAM控制器內(nèi)核CAS等待時間允許值:1、2、3默認(rèn)值:3
描述:從讀命令到數(shù)據(jù)輸出的等待時間(以時鐘周期計算)。第四十二頁,共103頁。12.4SDRAM控制器內(nèi)核初始化刷新周期允許值:1-8默認(rèn)值:2
描述:復(fù)位后,該值指定SDRAM控制器將執(zhí)行多少個刷新周期作為初始化序列的一部分。第四十三頁,共103頁。12.4SDRAM控制器內(nèi)核每隔一段時間執(zhí)行一個刷新命令允許值:-默認(rèn)值:15.625us
描述:該值指定SDRAM控制器多久刷新一次SDRAM。典型的SDRAM每64ms需要4,096刷新命令,通過每64ms/4,096=15.625us執(zhí)行一個刷新命令來符合這個要求。第四十四頁,共103頁。12.4SDRAM控制器內(nèi)核在初始化前、上電后延時允許值:-默認(rèn)值:100us
描述:從穩(wěn)定的時鐘和電源到SDRAM初始化的延時。第四十五頁,共103頁。12.4SDRAM控制器內(nèi)核刷新命令(t_rfc)的持續(xù)時間允許值:-默認(rèn)值:70ns
描述:自動刷新周期。第四十六頁,共103頁。12.4SDRAM控制器內(nèi)核預(yù)充電命令(t_rp)的持續(xù)時間允許值:-默認(rèn)值:20ns
描述:預(yù)充電命令周期。第四十七頁,共103頁。12.4SDRAM控制器內(nèi)核ACTIVE到READ或WRITE延時允許值:-默認(rèn)值:20ns
描述:ACTIVE到READ或WRITE延時。第四十八頁,共103頁。12.4SDRAM控制器內(nèi)核訪問時間(t_ac)允許值:-默認(rèn)值:5.5ns
描述:時鐘邊沿的訪問時間。該值由CAS的等待時間決定。第四十九頁,共103頁。12.4SDRAM控制器內(nèi)核寫恢復(fù)時間(t_wr,無自動預(yù)充電)允許值:-默認(rèn)值:14ns
描述:如果執(zhí)行了明確的預(yù)充電命令,寫恢復(fù)。該SDRAM控制器總是執(zhí)行明確的預(yù)充電命令。第五十頁,共103頁。12.4SDRAM控制器內(nèi)核當(dāng)通過Avalon接口訪問時,SDRAM控制器操作起來像簡單的SRAM存儲器,沒有可配置的軟件設(shè)置,沒有存儲器映射的寄存器。處理器訪問SDRAM控制器不需要軟件驅(qū)動程序。軟件編程第五十一頁,共103頁。12.4SDRAM控制器內(nèi)核SDRAM應(yīng)用一個帶32位數(shù)據(jù)總線的128MbitSDRAM芯片SDRAM控制器128Mbits16Mbytes32位數(shù)據(jù)寬度SDRAM器件AlteraFPGAAvalon從機(jī)接口到片內(nèi)邏輯addrCtlnCSData(32bit)第五十二頁,共103頁。12.4SDRAM控制器內(nèi)核SDRAM應(yīng)用兩個帶16位數(shù)據(jù)總線的64MbitSDRAM芯片SDRAM控制器64Mbits8Mbytes16位數(shù)據(jù)寬度SDRAM器件AlteraFPGAAvalon從機(jī)接口到片內(nèi)邏輯addrCtlnCSData(32bit)64Mbits8Mbytes16位數(shù)據(jù)寬度SDRAM器件16bit16bit第五十三頁,共103頁。12.4SDRAM控制器內(nèi)核SDRAM應(yīng)用兩個帶32位數(shù)據(jù)總線的128MbitSDRAM芯片SDRAM控制器128Mbits16Mbytes32位數(shù)據(jù)寬度SDRAM器件AlteraFPGAAvalon從機(jī)接口到片內(nèi)邏輯addrCtlnCS[0]Data(32bit)128Mbits16Mbytes32位數(shù)據(jù)寬度SDRAM器件32bit32bitnCS[1]第五十四頁,共103頁。第12章目錄12.1并行輸入/輸出(PIO)內(nèi)核12.2定時器內(nèi)核12.3CFI(通用Flash)控制器內(nèi)核12.4SDRAM控制器內(nèi)核12.5UART內(nèi)核12.6EPCS控制器內(nèi)核12.7JTAG_UART內(nèi)核12.8SPI內(nèi)核12.9DMA內(nèi)核12.10帶Avalon接口的互斥內(nèi)核12.11帶Avalon接口的郵箱內(nèi)核12.12SystemID內(nèi)核第五十五頁,共103頁。12.5UART內(nèi)核UART內(nèi)核(通用異步接收器/發(fā)送器內(nèi)核)執(zhí)行RS-232協(xié)議時序,并提供可調(diào)整的波特率。用戶可配置奇偶校驗位、停止位和數(shù)據(jù)位,以及可選的RTS/CTS流控制信號。內(nèi)核提供一個簡單的Avalon從控制器接口,該接口允許Avalon主控制器(例如NiosII處理器)通過讀寫寄存器與UART內(nèi)核進(jìn)行通訊。UART內(nèi)核綜述第五十六頁,共103頁。12.5UART內(nèi)核UART內(nèi)核綜述UART內(nèi)核的結(jié)構(gòu)框圖波特率除數(shù)接收寄存器發(fā)送寄存器狀態(tài)寄存器數(shù)據(jù)包結(jié)束符控制寄存器移位寄存器移位寄存器clkAddrDataIRQendofpacketdataavailablereadfordatauartclkTXDRXDRTSCTSAvalon總線接口RS232接口第五十七頁,共103頁。12.5UART內(nèi)核RS-232接口發(fā)送邏輯接收邏輯波特率生成UART內(nèi)核綜述第五十八頁,共103頁。12.5UART內(nèi)核UART內(nèi)核的寄存器描述UART內(nèi)核寄存器映射發(fā)送數(shù)據(jù)(txdata)接收數(shù)據(jù)(rxdata)狀態(tài)(status)③控制(control)除數(shù)(divisor)④數(shù)據(jù)包結(jié)束符(endopacket)④第五十九頁,共103頁。12.5UART內(nèi)核UART內(nèi)核配置頁BaudRate:波特率設(shè)置數(shù)據(jù)位設(shè)置流控制流數(shù)據(jù)控制第六十頁,共103頁。12.5UART內(nèi)核HAL系統(tǒng)支持驅(qū)動程序選項Ioctl()操作軟件文件軟件編程第六十一頁,共103頁。第12章目錄12.1并行輸入/輸出(PIO)內(nèi)核12.2定時器內(nèi)核12.3CFI(通用Flash)控制器內(nèi)核12.4SDRAM控制器內(nèi)核12.5UART內(nèi)核12.6EPCS控制器內(nèi)核12.7JTAG_UART內(nèi)核12.8SPI內(nèi)核12.9DMA內(nèi)核12.10帶Avalon接口的互斥內(nèi)核12.11帶Avalon接口的郵箱內(nèi)核12.12SystemID內(nèi)核第六十二頁,共103頁。12.6EPCS控制器內(nèi)核EPCS控制器內(nèi)核綜述AlteraEPCS串行配置器件(EPCS1和EPCS4),它可用于存儲程序代碼、非易失性程序數(shù)據(jù)和FPGA配置數(shù)據(jù)。帶Avalon接口的EPCS設(shè)備控制器內(nèi)核(“EPCS控制器”)允許NiosII系統(tǒng)訪問AlteraEPCS串行配置器件。Altera提供集成到NiosII硬件抽象層(HAL)系統(tǒng)庫的驅(qū)動程序,允許用戶使用HAL應(yīng)用程序接口(API)來讀取和編寫EPCS器件。第六十三頁,共103頁。12.6EPCS控制器內(nèi)核EPCS控制器內(nèi)核綜述EPCS控制器可用于:在EPCS器件中存儲程序代碼。存儲非易失性數(shù)據(jù)。管理FPGA配置數(shù)據(jù)。第六十四頁,共103頁。12.6EPCS控制器內(nèi)核EPCS控制器內(nèi)核綜述EPCS控制器結(jié)構(gòu)框圖Boot-LoaderROMEPCS控制器配置存儲空間通用存儲空間EPCS配置器件Avalon總線NiosIICPU片內(nèi)外設(shè)AlteraFPGA存儲FPGA配置數(shù)據(jù)剩余空間可用于存儲用戶非易失性數(shù)據(jù)。1KB的片內(nèi)存儲器第六十五頁,共103頁。12.6EPCS控制器內(nèi)核軟件編程Altera提供的HALFlash設(shè)備驅(qū)動程序已經(jīng)完全屏蔽了Flash的硬件訪問細(xì)節(jié),訪問EPCSFlash的軟件編程和訪問CFIFlash的軟件編程完全一樣。EPCS控制器提供了硬件的底層接口和HAL驅(qū)動程序。第六十六頁,共103頁。12.6EPCS控制器內(nèi)核軟件編程定義集成到HAL系統(tǒng)庫所需的驅(qū)動程序的頭文件和源文件。Altera_avalon_epcs_flash_controller.h通過直接控制EPCS設(shè)備來進(jìn)行讀寫操作的頭文件和源文件。Altera_avalon_epcs_flash_controller.cepcs_commands.hepcs_commands.c第六十七頁,共103頁。第12章目錄12.1并行輸入/輸出(PIO)內(nèi)核12.2定時器內(nèi)核12.3CFI(通用Flash)控制器內(nèi)核12.4SDRAM控制器內(nèi)核12.5UART內(nèi)核12.6EPCS控制器內(nèi)核12.7JTAG_UART內(nèi)核12.8SPI內(nèi)核12.9DMA內(nèi)核12.10帶Avalon接口的互斥內(nèi)核12.11帶Avalon接口的郵箱內(nèi)核12.12SystemID內(nèi)核第六十八頁,共103頁。12.7JTAG_UART內(nèi)核JTAG_UART內(nèi)核綜述JTAGUART內(nèi)核通過Avalon從控制器接口連接到Avalon總線。JTAGUART內(nèi)核包含2個32位寄存器(數(shù)據(jù)和控制),它們可通過Avalon從控制器端口進(jìn)行存取。Avalon主控制器訪問寄存器來控制內(nèi)核并在JTAG連接上傳輸數(shù)據(jù)。JTAGUART內(nèi)核提供高電平有效的中斷輸出,該輸出在讀FIFO幾乎為滿或?qū)慒IFO幾乎為空時申請一個中斷。有讀寫FIFO也是JTAGUART內(nèi)核與UART內(nèi)核的不同點之一。FIFO可以改善JTAG連接的帶寬。FIFO深度可由用戶設(shè)置。第六十九頁,共103頁。12.7JTAG_UART內(nèi)核JTAG_UART內(nèi)核綜述UART內(nèi)核寄存器映射第七十頁,共103頁。12.7JTAG_UART內(nèi)核JTAG_UART的寄存器描述UART內(nèi)核寄存器映射數(shù)據(jù)控制第七十一頁,共103頁。12.7JTAG_UART內(nèi)核
-JTAG-UART配置選項卡JATG_UART配置選項卡WriteFIFO:寫FIFO設(shè)置ReadFIFO:讀FIFO設(shè)置第七十二頁,共103頁。12.1并行輸入/輸出(PIO)內(nèi)核12.2定時器內(nèi)核12.3CFI(通用Flash)控制器內(nèi)核12.4SDRAM控制器內(nèi)核12.5UART內(nèi)核12.6EPCS控制器內(nèi)核12.7JTAG_UART內(nèi)核12.8SPI內(nèi)核12.9DMA內(nèi)核12.10帶Avalon接口的互斥內(nèi)核12.11帶Avalon接口的郵箱內(nèi)核12.12SystemID內(nèi)核第12章目錄第七十三頁,共103頁。12.8SPI內(nèi)核SPI內(nèi)核綜述SPI內(nèi)核框圖SPI發(fā)送邏輯SPI接收邏輯第七十四頁,共103頁。12.8SPI內(nèi)核SPI內(nèi)核綜述SPI內(nèi)核框圖主控制器模式端口配置第七十五頁,共103頁。12.8SPI內(nèi)核SPI內(nèi)核綜述SPI內(nèi)核框圖從控制器模式端口配置第七十六頁,共103頁。12.8SPI內(nèi)核SPI內(nèi)核的寄存器描述UART內(nèi)核寄存器映射txdatstatuscontrol保留slaveselectrxdata接收數(shù)據(jù)寄存器發(fā)送數(shù)據(jù)寄存器狀態(tài)寄存器控制寄存器從控制器選擇寄存器第七十七頁,共103頁。12.8SPI內(nèi)核
-SPI配置選項卡Master&Slave:主控制器/從控制器設(shè)置GenerateSelectSignals:通用選擇信號SPIClockRate:SPI時鐘率SpecifyDelay:指定延時DataRegister:數(shù)據(jù)寄存器設(shè)置Timing:時序設(shè)置Waveforms:波形顯示第七十八頁,共103頁。12.8SPI內(nèi)核軟件編程Altera提供一個訪問SPI的函數(shù)alt_avalon_spi_command(),該函數(shù)為配置生成主控制器的SPI內(nèi)核提供通用訪問。第七十九頁,共103頁。第12章目錄12.1并行輸入/輸出(PIO)內(nèi)核12.2定時器內(nèi)核12.3CFI(通用Flash)控制器內(nèi)核12.4SDRAM控制器內(nèi)核12.5UART內(nèi)核12.6EPCS控制器內(nèi)核12.7JTAG_UART內(nèi)核12.8SPI內(nèi)核12.9DMA內(nèi)核12.10帶Avalon接口的互斥內(nèi)核12.11帶Avalon接口的郵箱內(nèi)核12.12SystemID內(nèi)核第八十頁,共103頁。12.9DMA內(nèi)核DMA內(nèi)核綜述帶Avalon接口的直接存儲器存取控制器(DMA控制器)替代Avalon主控制器執(zhí)行儲存器對儲存器或者儲存器與IO設(shè)備間的批量數(shù)據(jù)傳輸。當(dāng)DMA控制器執(zhí)行數(shù)據(jù)傳輸任務(wù)時,主控制器可自由執(zhí)行其它并行的任務(wù)。第八十一頁,共103頁。12.9DMA內(nèi)核DMA內(nèi)核綜述DMA控制器結(jié)構(gòu)框圖第八十二頁,共103頁。12.9DMA內(nèi)核DMA寄存器描述DMA控制器結(jié)構(gòu)框圖源地址目的地址長度控制狀態(tài)第八十三頁,共103頁。12.9DMA內(nèi)核
-DMA配置選項卡SPI配置選項卡TransferSize:DMA長度寄存器的寬度BurstTransactions:允許突發(fā)傳輸FIFOImplementation:FIFO的構(gòu)成第八十四頁,共103頁。12.9DMA內(nèi)核
-DMA配置選項卡SPI配置選項卡高級選項第八十五頁,共103頁。12.9DMA內(nèi)核軟件編程Ioctl()操作軟件文件第八十六頁,共103頁。第12章目錄12.1并行輸入/輸出(PIO)內(nèi)核12.2定時器內(nèi)核12.3CFI(通用Flash)控制器內(nèi)核12.4SDRAM控制器內(nèi)核12.5UART內(nèi)核12.6EPCS控制器內(nèi)核12.7JTAG_UART內(nèi)核12.8SPI內(nèi)核12.9DMA內(nèi)核12.10帶Avalon接口的互斥內(nèi)核12.11帶Avalon接口的郵箱內(nèi)核12.12SystemID內(nèi)核第八十七頁,共103頁。12.10帶Avalon接口的互斥內(nèi)核互斥內(nèi)核描述互斥內(nèi)核描述第八十八頁,共103頁。12.10帶Avalon接口的互斥內(nèi)核互斥內(nèi)核配置選項硬件設(shè)計者可利用互斥內(nèi)核的SOPCBuilder配置向?qū)碓O(shè)定內(nèi)核的硬件特性。配置向?qū)峁┝艘韵略O(shè)置:InitialValue-復(fù)位后VALUE字段的初始值。如果InitialValue設(shè)置成非零值,還必須設(shè)定InitialOwner。InitialOwner-復(fù)位后OWNER字段的初始值。當(dāng)InitialOwner被設(shè)定時,此時的互斥體擁有者必須在互斥體被其它擁有者占用之前將互斥體釋放。第八十九頁,共103頁。12.10帶Avalon接口的互斥內(nèi)核軟件編程對于NiosⅡ處理器用戶,Altera提供了可用來訪問互斥內(nèi)核硬件的驅(qū)動程序,利用驅(qū)動程序可以直接對低層的硬件進(jìn)行操作?;コ鈨?nèi)核不能通過HALAPI或ANSIC標(biāo)準(zhǔn)庫來訪問。在NiosⅡ處理器系統(tǒng)中,處理器通過將它的cpuid控制寄存器的值寫入mutex寄存器的OWNER字段來鎖定互斥體。Altera為互斥內(nèi)核提供下列驅(qū)動程序文件:altera_avalon_mutex_regs.haltera_avalon_mutex.haltera_avalon_mutex.c第九十頁,共103頁。12.10帶Avalon接口的互斥內(nèi)核軟件編程硬件互斥體函數(shù)第九十一頁,共103頁。12.1并行輸入/輸出(PIO)內(nèi)核12.2定時器內(nèi)核12.3CFI(通用Flash)控制器內(nèi)核12.4SDRAM控制器內(nèi)核12.5UART內(nèi)核12.6EPCS控制器內(nèi)核12.7JTAG_UART內(nèi)核12.8SPI內(nèi)核12.9DMA內(nèi)核12.10帶Avalon接口的互斥內(nèi)核12.11帶Avalon接口的郵箱內(nèi)核12.12SystemID內(nèi)核第12章目錄第九十二頁,共103頁。12.11帶Avalon接口的郵箱內(nèi)核郵箱內(nèi)核配置選項More<郵箱名稱>Settings選項卡提供以下選項:Memorymodule-指定哪個存儲器用作郵箱緩沖區(qū)。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 四川省成都西蜀實驗重點名校2025屆初三下學(xué)期第18周英語試題考試試題含答案
- 中醫(yī)眼科講解課件
- 湖北工程學(xué)院《專業(yè)論文寫作》2023-2024學(xué)年第二學(xué)期期末試卷
- 遼寧經(jīng)濟(jì)職業(yè)技術(shù)學(xué)院《視覺-語音設(shè)計實訓(xùn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 治安管理處罰培訓(xùn)
- 17025培訓(xùn)課件教學(xué)課件
- 內(nèi)蒙古烏蘭察布市集寧區(qū)2025屆高三5月學(xué)業(yè)能力調(diào)研生物試題試卷含解析
- 江西省贛州市贛縣2025屆三下數(shù)學(xué)期末質(zhì)量跟蹤監(jiān)視試題含解析
- 浙江省杭州市西湖區(qū)保俶塔實驗學(xué)校申花路校區(qū)2024-2025學(xué)年數(shù)學(xué)五年級第二學(xué)期期末經(jīng)典模擬試題含答案
- 南華大學(xué)《植物學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 河南2023年河南省農(nóng)村信用社員工招聘2600人考試參考題庫含答案詳解
- 身體知道答案(珍藏版)
- 安徽省高等學(xué)校質(zhì)量工程項目結(jié)題報告
- GB/T 22795-2008混凝土用膨脹型錨栓型式與尺寸
- GB/T 19851.15-2007中小學(xué)體育器材和場地第15部分:足球門
- GB/T 10095.1-2001漸開線圓柱齒輪精度第1部分:輪齒同側(cè)齒面偏差的定義和允許值
- ICU 呼吸機(jī)相關(guān)性肺炎預(yù)防措施執(zhí)行核查表
- 汽車吊檢測保養(yǎng)記錄
- 市政工程安全臺賬表
- 航天模型的設(shè)計、制作與比賽課件
- 高考倒計時60天課件
評論
0/150
提交評論